Safe Haskell | None |
---|
Support for dealing with unique IDs (UIDs), fully- and least-partially qualified names.
- type QName = String
- type FQName = String
- type PQName = String
- data QNameMaps
- type UID = String
- deriveQNameMaps :: IModule -> QNameMaps
- getUIDs :: QNameMaps -> QName -> [UID]
- getFQName :: QNameMaps -> UID -> Maybe FQName
- getLPQName :: QNameMaps -> UID -> Maybe PQName
- getQNameUIDTriples :: QNameMaps -> [(FQName, PQName, UID)]
Documentation
fully-qualified name, must begin with :: | e.g., `::Person::name`, `::Company::Department::chair`
partially-qualified name, must not begin with ::
| e.g., `Person::name`, chair
deriveQNameMaps :: IModule -> QNameMapsSource
derive maps between fully-, partially-qualified names, and UIDs
getUIDs :: QNameMaps -> QName -> [UID]Source
get the UID of a clafer given a fully qualifed name or potentially many UIDs given a partially qualified name
getFQName :: QNameMaps -> UID -> Maybe FQNameSource
get the fully-qualified name of a clafer given its UID
getLPQName :: QNameMaps -> UID -> Maybe PQNameSource
get the least-partially-qualified name of a clafer given its UID