úÎ2¤    None0B       None00Paths are non-empty lists of identifiers in Nix.path # [ident # "yo"]Path [Identifier "yo"]2Any attempt to construct the empty path throws an : path # []-Path *** Exception: Nix paths cannot be empty0Paths can be pretty-printed and parsed with the  class:/simpleParse "foo.\"foo.bar\".bar" :: Maybe PathDJust (Path [Identifier "foo",Identifier "foo.bar",Identifier "bar"])Fmaybe empty disp (simpleParse "foo.\"foo\".\"bar\".bar" :: Maybe Path)foo.foo.bar.bar1\p -> Just (p :: Path) == simpleParse (display p)?Paths are instances of strings and can be implicitly converted::set -XOverloadedStringsdisp $ ("yo.bar" :: Path)yo.bar!disp $ (" yo . bar " :: Path)yo.bar.Freaky quoted identifiers are fine throughout:disp $ path # ["yo","b\"ar"] yo."b\"ar"disp ("\"5ident\"" :: Path)"5ident"-disp $ path # ["5ident","foo.bar","foo\nbar"]"5ident"."foo.bar"."foo\nbar" nUse this isomorphism to construct a path from a list of identifiers, or to access that list for a given path.    None0A 4 represents an identifier that refers to some other .:set -XOverloadedStrings""inherit (foo.bar) abc" :: BindingSBind (Identifier "abc") (Path [Identifier "foo",Identifier "bar",Identifier "abc"])4\b -> Just (b :: Binding) == simpleParse (display b)      None        !"#$%language-nix-2.1Language.Nix.IdentifierLanguage.Nix.PathLanguage.Nix.Binding Language.Nix IdentifieridentPathBinding localName referenceparseSimpleIdentifierparseQuotedIdentifier needsQuotingquotepathbinding$fTextIdentifier$fArbitraryIdentifier$fNFDataIdentifierbaseGHC.ErrerrorCabal-1.18.1.3Distribution.TextText$fArbitraryPath$fIsStringPath $fTextPath $fNFDataPathBindparseAssignment parseInherit$fIsStringBinding $fTextBinding$fArbitraryBinding$fNFDataBinding