camfort-1.2.0: CamFort - Cambridge Fortran infrastructure
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.Fortran.Model.Vars

Description

Defines a strongly-typed representation of Fortran variables.

Synopsis

Variables

data FortranVar a where Source #

A variable representing a value of type a. Contains a D a as proof that the type has a corresponding Fortran type, and the variable name.

Constructors

FortranVar :: D a -> NamePair -> FortranVar a 

Instances

Instances details
VerifiableVar FortranVar Source # 
Instance details

Defined in Language.Fortran.Model.Vars

Associated Types

type VarKey FortranVar #

type VarSym FortranVar :: Type -> Type #

type VarEnv FortranVar #

Pretty1 FortranVar Source # 
Instance details

Defined in Language.Fortran.Model.Vars

Methods

pretty1 :: forall (a :: k). FortranVar a -> String #

prettys1Prec :: forall (a :: k). Int -> FortranVar a -> ShowS #

type VarEnv FortranVar Source # 
Instance details

Defined in Language.Fortran.Model.Vars

type VarKey FortranVar Source # 
Instance details

Defined in Language.Fortran.Model.Vars

type VarSym FortranVar Source # 
Instance details

Defined in Language.Fortran.Model.Vars

Names

data NamePair Source #

A NamePair represents the name of some part of a Fortran program, including the human-readable source name and the unique name.

Constructors

NamePair 

Instances

Instances details
Show NamePair Source # 
Instance details

Defined in Language.Fortran.Model.Vars

Eq NamePair Source # 
Instance details

Defined in Language.Fortran.Model.Vars

Ord NamePair Source # 
Instance details

Defined in Language.Fortran.Model.Vars

Pretty NamePair Source #

The pretty version of a NamePair is its source name.

Instance details

Defined in Language.Fortran.Model.Vars

newtype SourceName Source #

Newtype wrapper for source-level variable names.

Constructors

SourceName 

Fields

newtype UniqueName Source #

Newtype wrapper for unique variable names.

Constructors

UniqueName 

Fields