stan-0.0.1.0: Haskell STatic ANalyser
Copyright(c) 2020 Kowainik
LicenseMPL-2.0
MaintainerKowainik <xrom.xkov@gmail.com>
Safe HaskellNone
LanguageHaskell2010

Stan.NameMeta

Description

Data types and functions for working with meta information.

Synopsis

Documentation

data NameMeta Source #

Meta information about function/type.

Instances

Instances details
Eq NameMeta Source # 
Instance details

Defined in Stan.NameMeta

Show NameMeta Source # 
Instance details

Defined in Stan.NameMeta

Pretty show

prettyShowNameMeta :: NameMeta -> Text Source #

Pretty show NameMeta in the following format: package/module/name.

Comparison with Name

compareNames :: NameMeta -> Name -> Bool Source #

Check if NameMeta is identical to Name.

hieMatchNameMeta Source #

Arguments

:: NameMeta

Name meta info

-> (Identifier, IdentifierDetails TypeIndex)

HIE identifier

-> Bool 

Check whether HIE Identifier with details is a given NameMeta.

hieFindIdentifier :: NameMeta -> HieAST TypeIndex -> Maybe NameMeta Source #

Check if the given HieAST node is identifier equal to the given NameMeta.

Smart constructors

baseNameFrom :: Text -> ModuleName -> NameMeta infix 8 Source #

Create NameMeta for a function from the base package and a given ModuleName. module.

mkBaseListMeta :: Text -> NameMeta Source #

Create NameMeta for a function from the base package and the GHC.List module.

mkBaseOldListMeta :: Text -> NameMeta Source #

Create NameMeta for a function from the base package and the Data.OldList module.

mkBaseFoldableMeta :: Text -> NameMeta Source #

Create NameMeta for a function from the base package and the Data.Foldable module.

unorderedNameFrom :: Text -> ModuleName -> NameMeta infix 8 Source #

Create NameMeta for a function from the unordered-containers package and a given ModuleName module.

textNameFrom :: Text -> ModuleName -> NameMeta infix 8 Source #

Create NameMeta for a function from the text package and a given ModuleName module.

ghcPrimNameFrom :: Text -> ModuleName -> NameMeta infix 8 Source #

Create NameMeta for a function from the ghc-prim package and a given ModuleName module.

primTypeMeta :: Text -> NameMeta Source #

NameMeta for primitive types.