cryptol-2.8.0: Cryptol: The Language of Cryptography
Copyright(c) 2015-2016 Galois Inc.
LicenseBSD3
Maintainercryptol@galois.com
Stabilityprovisional
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

Cryptol.Parser.Name

Description

 
Synopsis

Documentation

data PName Source #

Names that originate in the parser.

Constructors

UnQual !Ident

Unqualified names like x, Foo, or +.

Qual !ModName !Ident

Qualified names like Foo::bar or module::!.

NewName !Pass !Int

Fresh names generated by a pass.

Instances

Instances details
Eq PName Source # 
Instance details

Defined in Cryptol.Parser.Name

Methods

(==) :: PName -> PName -> Bool Source #

(/=) :: PName -> PName -> Bool Source #

Ord PName Source # 
Instance details

Defined in Cryptol.Parser.Name

Show PName Source # 
Instance details

Defined in Cryptol.Parser.Name

Generic PName Source # 
Instance details

Defined in Cryptol.Parser.Name

Associated Types

type Rep PName :: Type -> Type Source #

Methods

from :: PName -> Rep PName x Source #

to :: Rep PName x -> PName Source #

NFData PName Source # 
Instance details

Defined in Cryptol.Parser.Name

Methods

rnf :: PName -> () Source #

PPName PName Source # 
Instance details

Defined in Cryptol.Parser.Name

PP PName Source # 
Instance details

Defined in Cryptol.Parser.Name

Methods

ppPrec :: Int -> PName -> Doc Source #

RemovePatterns [Decl PName] Source # 
Instance details

Defined in Cryptol.Parser.NoPat

RemovePatterns (Expr PName) Source # 
Instance details

Defined in Cryptol.Parser.NoPat

RemovePatterns (Module PName) Source # 
Instance details

Defined in Cryptol.Parser.NoPat

RemovePatterns (Program PName) Source # 
Instance details

Defined in Cryptol.Parser.NoPat

BindsNames (TParam PName) Source #

Generate the naming environment for a type parameter.

Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (Schema PName) Source #

Generate a type renaming environment from the parameters that are bound by this schema.

Instance details

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.

Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (PrimType PName)) Source # 
Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (Newtype PName)) Source # 
Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (Bind PName)) Source #

Introduce the name

Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (ParameterFun PName)) Source # 
Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (ParameterType PName)) Source # 
Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (Decl PName)) Source #

The naming environment for a single declaration.

Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

BindsNames (InModule (TopDecl PName)) Source # 
Instance details

Defined in Cryptol.ModuleSystem.NamingEnv

type Rep PName Source # 
Instance details

Defined in Cryptol.Parser.Name

data Pass Source #

Passes that can generate fresh names.

Constructors

NoPat 
MonoValues 

Instances

Instances details
Eq Pass Source # 
Instance details

Defined in Cryptol.Parser.Name

Methods

(==) :: Pass -> Pass -> Bool Source #

(/=) :: Pass -> Pass -> Bool Source #

Ord Pass Source # 
Instance details

Defined in Cryptol.Parser.Name

Show Pass Source # 
Instance details

Defined in Cryptol.Parser.Name

Generic Pass Source # 
Instance details

Defined in Cryptol.Parser.Name

Associated Types

type Rep Pass :: Type -> Type Source #

Methods

from :: Pass -> Rep Pass x Source #

to :: Rep Pass x -> Pass Source #

NFData Pass Source # 
Instance details

Defined in Cryptol.Parser.Name

Methods

rnf :: Pass -> () Source #

type Rep Pass Source # 
Instance details

Defined in Cryptol.Parser.Name

type Rep Pass = D1 ('MetaData "Pass" "Cryptol.Parser.Name" "cryptol-2.8.0-11Z6ZaBuQbo1UTYpHYMeUg" 'False) (C1 ('MetaCons "NoPat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MonoValues" 'PrefixI 'False) (U1 :: Type -> Type))