Copyright | (c) 2015-2016 Galois Inc. |
---|---|
License | BSD3 |
Maintainer | cryptol@galois.com |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Cryptol.Parser.Name
Description
Documentation
Names that originate in the parser.
Constructors
UnQual !Ident | Unqualified names like |
Qual !ModName !Ident | Qualified names like |
NewName !Pass !Int | Fresh names generated by a pass. |
Instances
Eq PName Source # | |
Ord PName Source # | |
Show PName Source # | |
Generic PName Source # | |
NFData PName Source # | |
Defined in Cryptol.Parser.Name | |
PPName PName Source # | |
Defined in Cryptol.Parser.Name Methods ppNameFixity :: PName -> Maybe (Assoc, Int) Source # ppPrefixName :: PName -> Doc Source # ppInfixName :: PName -> Doc Source # | |
PP PName Source # | |
RemovePatterns [Decl PName] Source # | |
Defined in Cryptol.Parser.NoPat | |
RemovePatterns (Expr PName) Source # | |
Defined in Cryptol.Parser.NoPat | |
RemovePatterns (Module PName) Source # | |
Defined in Cryptol.Parser.NoPat | |
RemovePatterns (Program PName) Source # | |
Defined in Cryptol.Parser.NoPat | |
BindsNames (TParam PName) Source # | Generate the naming environment for a type parameter. |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (Schema PName) Source # | Generate a type renaming environment from the parameters that are bound by this schema. |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (Module PName) Source # | The naming environment for a single module. This is the mapping from unqualified names to fully qualified names with uniques. |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (InModule (PrimType PName)) Source # | |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (InModule (Newtype PName)) Source # | |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (InModule (Bind PName)) Source # | Introduce the name |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (InModule (ParameterFun PName)) Source # | |
Defined in Cryptol.ModuleSystem.NamingEnv Methods namingEnv :: InModule (ParameterFun PName) -> BuildNamingEnv Source # | |
BindsNames (InModule (ParameterType PName)) Source # | |
Defined in Cryptol.ModuleSystem.NamingEnv Methods namingEnv :: InModule (ParameterType PName) -> BuildNamingEnv Source # | |
BindsNames (InModule (Decl PName)) Source # | The naming environment for a single declaration. |
Defined in Cryptol.ModuleSystem.NamingEnv | |
BindsNames (InModule (TopDecl PName)) Source # | |
Defined in Cryptol.ModuleSystem.NamingEnv | |
type Rep PName Source # | |
Defined in Cryptol.Parser.Name type Rep PName = D1 ('MetaData "PName" "Cryptol.Parser.Name" "cryptol-2.8.0-8MjdO3NUDs4I9u4d2J06AM" 'False) (C1 ('MetaCons "UnQual" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Ident)) :+: (C1 ('MetaCons "Qual" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ModName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Ident)) :+: C1 ('MetaCons "NewName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Pass) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)))) |
Passes that can generate fresh names.
Constructors
NoPat | |
MonoValues |
Instances
Eq Pass Source # | |
Ord Pass Source # | |
Show Pass Source # | |
Generic Pass Source # | |
NFData Pass Source # | |
Defined in Cryptol.Parser.Name | |
type Rep Pass Source # | |
Defined in Cryptol.Parser.Name type Rep Pass = D1 ('MetaData "Pass" "Cryptol.Parser.Name" "cryptol-2.8.0-8MjdO3NUDs4I9u4d2J06AM" 'False) (C1 ('MetaCons "NoPat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MonoValues" 'PrefixI 'False) (U1 :: Type -> Type)) |
getModName :: PName -> Maybe ModName Source #
isGeneratedName :: PName -> Bool Source #