Path to a configuration file, either a singleton project root, or a longer
list representing a path to an import. The path is a non-empty list that we
build up by prepending relative imports with consProjectConfigPath.
An import can be a URI, such as a stackage cabal.config, but we do not support URIs in the middle of the path, URIs that import other URIs, or URIs that import local files.
List elements are relative to each other but once canonicalized, elements are relative to the directory of the project root.
Constructors
Instances8Eq, Ord, Show, Generic, Binary, Pretty, …
Eq ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathOrd ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathSorts URIs after local file paths and longer file paths after shorter ones as measured by the number of path segments. If still equal, then sorting is lexical.
The project itself, a single element root path, compared to any of the configuration paths it imports, should always sort first. Comparing one project root path against another is done lexically.
For comparison purposes, path separators are normalized to the
buildOSplatform's path separator.Example3 expressions let abFwd = ProjectConfigPath $ "a/b.config" :| []let abBwd = ProjectConfigPath $ "a\\b.config" :| []compare abFwd abBwdEQ
Show ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathGeneric ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathBinary ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathPretty ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathStructured ProjectConfigPathDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPathtype Rep ProjectConfigPath = D1 ('MetaDataDefined in cabal-install-solver-3.16.0.0 · Distribution.Solver.Types.ProjectConfigPath"ProjectConfigPath"
"Distribution.Solver.Types.ProjectConfigPath"
"cabal-install-solver-3.16.0.0-1EUIXvFUry24MkMMJQfegz"
'True) (C1 ('MetaCons"ProjectConfigPath"
'PrefixI 'False) (S1 ('MetaSel 'Nothing 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty FilePath))))