Module to work with fully-qualified names. A qualified name is a combination of a package path, a module path and a local name.
( Morphir.IR.Path.Path
, Morphir.IR.Path.Path
, Morphir.IR.Name.Name
)
Type that represents a fully-qualified name. The parameters are PackagePath ModulePath Name
fQName : Morphir.IR.Path.Path -> Morphir.IR.Path.Path -> Morphir.IR.Name.Name -> FQName
Create a fully-qualified name.
fromQName : Morphir.IR.Path.Path -> Morphir.IR.QName.QName -> FQName
Create a fully-qualified from a qualified name.
getPackagePath : FQName -> Morphir.IR.Path.Path
Get the package path part of a fully-qualified name.
getModulePath : FQName -> Morphir.IR.Path.Path
Get the module path part of a fully-qualified name.
getLocalName : FQName -> Morphir.IR.Name.Name
Get the local name part of a fully-qualified name.
fqn : String -> String -> String -> FQName
Convenience function to create a fully-qualified name from 3 strings.
toString : FQName -> String
Convert a fully-qualified name to a string
fromString : String -> String -> FQName
Parse a string into a FQName using splitter as the separator between package, module and local names.
fromStringStrict : String -> String -> Result String FQName
Parse a string into a FQName using splitter as the separator between package, module and local names. Fail if it's malformed.