language-eiffel-0.1.2: Parser and pretty printer for the Eiffel language.

Safe HaskellNone

Language.Eiffel.Syntax

Documentation

type ClasBody exp = AbsClas (RoutineBody exp) expSource

type ClasI exp = AbsClas (RoutineBody exp) expSource

data AbsClas body exp Source

Instances

(Eq body, Eq exp) => Eq (AbsClas body exp) 
(Show body, Show exp) => Show (AbsClas body exp) 
(Binary body_1627432068, Binary exp_1627432069) => Binary (AbsClas body_1627432068 exp_1627432069) 
(NFData body_1627432068, NFData exp_1627432069) => NFData (AbsClas body_1627432068 exp_1627432069) 

data FeatureMap body exp Source

Instances

(Eq body, Eq exp) => Eq (FeatureMap body exp) 
(Show body, Show exp) => Show (FeatureMap body exp) 
(Binary body_1627432066, Binary exp_1627432067) => Binary (FeatureMap body_1627432066 exp_1627432067) 
(NFData body_1627432066, NFData exp_1627432067) => NFData (FeatureMap body_1627432066 exp_1627432067) 

data ExportedFeature feat Source

Constructors

ExportedFeature 

Fields

_exportClass :: Set Text
 
_exportFeat :: !feat
 

Instances

Eq feat => Eq (ExportedFeature feat) 
Ord feat => Ord (ExportedFeature feat) 
Show feat => Show (ExportedFeature feat) 
Binary feat_1627431960 => Binary (ExportedFeature feat_1627431960) 
NFData feat_1627431960 => NFData (ExportedFeature feat_1627431960) 

data SomeFeature body exp Source

Constructors

SomeRoutine (AbsRoutine body exp) 
SomeAttr (Attribute exp) 
SomeConst (Constant exp) 

Instances

(Eq body, Eq exp) => Eq (SomeFeature body exp) 
(Ord body, Ord exp) => Ord (SomeFeature body exp) 
(Show body, Show exp) => Show (SomeFeature body exp) 
(Binary body_1627431958, Binary exp_1627431959) => Binary (SomeFeature body_1627431958 exp_1627431959) 
(NFData body_1627431958, NFData exp_1627431959) => NFData (SomeFeature body_1627431958 exp_1627431959) 
Feature (SomeFeature body expr) expr 

data FeatureClause body exp Source

Constructors

FeatureClause 

Fields

exportNames :: [ClassName]
 
routines :: [AbsRoutine body exp]
 
attributes :: [Attribute exp]
 
constants :: [Constant exp]
 

Instances

(Eq body, Eq exp) => Eq (FeatureClause body exp) 
(Show body, Show exp) => Show (FeatureClause body exp) 
(Binary body_1627431956, Binary exp_1627431957) => Binary (FeatureClause body_1627431956 exp_1627431957) 
(NFData body_1627431956, NFData exp_1627431957) => NFData (FeatureClause body_1627431956 exp_1627431957) 

data Contract exp Source

Constructors

Contract 

Instances

Eq exp => Eq (Contract exp) 
Ord exp => Ord (Contract exp) 
Show exp => Show (Contract exp) 
Binary exp_1627431954 => Binary (Contract exp_1627431954) 
NFData exp_1627431954 => NFData (Contract exp_1627431954) 

data AbsRoutine body exp Source

Instances

(Eq body, Eq exp) => Eq (AbsRoutine body exp) 
(Ord body, Ord exp) => Ord (AbsRoutine body exp) 
(Show body, Show exp) => Show (AbsRoutine body exp) 
(Binary body_1627431952, Binary exp_1627431953) => Binary (AbsRoutine body_1627431952 exp_1627431953) 
(NFData body_1627431952, NFData exp_1627431953) => NFData (AbsRoutine body_1627431952 exp_1627431953) 
Feature (AbsRoutine body expr) expr 
ClassFeature (AbsRoutine body expr) body expr 

data RoutineBody exp Source

Instances

Eq exp => Eq (RoutineBody exp) 
Ord exp => Ord (RoutineBody exp) 
Show exp => Show (RoutineBody exp) 
NFData exp_1627431951 => NFData (RoutineBody exp_1627431951) 

data Attribute exp Source

Constructors

Attribute 

Instances

Eq exp => Eq (Attribute exp) 
Ord exp => Ord (Attribute exp) 
Show exp => Show (Attribute exp) 
Binary exp_1627431950 => Binary (Attribute exp_1627431950) 
NFData exp_1627431950 => NFData (Attribute exp_1627431950) 
Feature (Attribute expr) expr 
ClassFeature (Attribute expr) body expr 

data Constant exp Source

Constructors

Constant 

Fields

constFroz :: Bool
 
constDecl :: Decl
 
constVal :: exp
 

Instances

Eq exp => Eq (Constant exp) 
Ord exp => Ord (Constant exp) 
Show exp => Show (Constant exp) 
Binary exp_1627431949 => Binary (Constant exp_1627431949) 
NFData exp_1627431949 => NFData (Constant exp_1627431949) 
Feature (Constant expr) expr 
ClassFeature (Constant expr) body expr 

data ROp Source

Constructors

Lte 
Lt 
Eq 
TildeEq 
Neq 
TildeNeq 
Gt 
Gte 

Instances

data UnOp Source

Constructors

Not 
Neg 
Old 

data Quant Source

Constructors

All 
Some 

commaSepShow :: Show a => [a] -> [Char]Source

argsShow :: Show a => [a] -> [Char]Source

data Decl Source

Constructors

Decl 

Fields

declName :: Text
 
declType :: Typ
 

data Proc Source

Constructors

Dot 
Proc 

Fields

unProcGen :: Text
 

data AbsStmt a Source

Instances

Eq a => Eq (AbsStmt a) 
Ord a => Ord (AbsStmt a) 
Show a => Show (AbsStmt a) 
Binary a_1627431947 => Binary (AbsStmt a_1627431947) 
NFData a_1627431947 => NFData (AbsStmt a_1627431947) 

data ElseIfPart a Source

Constructors

ElseIfPart a (PosAbsStmt a) 

Instances

Eq a => Eq (ElseIfPart a) 
Ord a => Ord (ElseIfPart a) 
Show a => Show (ElseIfPart a) 
Binary a_1627431946 => Binary (ElseIfPart a_1627431946) 
NFData a_1627431946 => NFData (ElseIfPart a_1627431946) 

braced :: Show a => Maybe a -> [Char]Source

showCase :: (Show a, Show a1) => (a, a1) -> [Char]Source

data Clause a Source

Constructors

Clause 

Fields

clauseName :: Maybe Text
 
clauseExpr :: a
 

Instances

Eq a => Eq (Clause a) 
Ord a => Ord (Clause a) 
Show a => Show (Clause a) 
Binary a_1627431927 => Binary (Clause a_1627431927) 
NFData a_1627431927 => NFData (Clause a_1627431927) 

data Note Source

Constructors

Note 

exportFeat :: forall feat feat. Lens (ExportedFeature feat) (ExportedFeature feat) feat featSource

fmRoutines :: forall body exp body. Lens (FeatureMap body exp) (FeatureMap body exp) (Map Text (ExportedFeature (AbsRoutine body exp))) (Map Text (ExportedFeature (AbsRoutine body exp)))Source

fmConsts :: forall body exp. Lens' (FeatureMap body exp) (Map Text (ExportedFeature (Constant exp)))Source

fmAttrs :: forall body exp. Lens' (FeatureMap body exp) (Map Text (ExportedFeature (Attribute exp)))Source