finos/morphir-elm/6.0.0

NOTE: the latest version is 22.0.2

Formerly Morgan-Stanley/morphir-elm. Search finds this package by either name.

Morphir.IR.QName

Module to work with qualified names. A qualified name is a combination of a module path and a local name.

type QName
= QName Path Name

Type that represents a qualified name.

toTuple : QName -> ( Path, Name )

Turn a qualified name into a tuple.

Get the module path part of a qualified name.

Get the local name part of a qualified name.

Creation

fromName : Path -> Name -> QName

Creates a qualified name.

fromTuple : ( Path, Name ) -> QName

Turn a tuple into a qualified name.

String conversion

toString : (Name -> String) -> (Name -> String) -> String -> QName -> String

Turn a qualified name into a string using the specified path and name conventions.

qname =
    QName.fromTuple
        (Path.fromList
            [ Name.fromList [ "foo", "bar" ]
            , Name.fromList [ "baz" ]
            ]
        , Name.fromList [ "a", "name" ]
        )


toString Name.toTitleCase Name.toCamelCase "." qname
--> "FooBar.Baz.aName"


toString Name.toSnakeCase Name.toSnakeCase "/" qname
--> "foo_bar/baz/a_name"