Safe Haskell | None |
---|
Transforms an Abstract Syntax Tree (AST) from Language.Clafer.Front.Absclafer into Intermediate representation (IR) from Language.Clafer.Intermediate.Intclafer of a Clafer model.
- desugarModule :: Module -> IModule
- sugarModule :: IModule -> Module
- desugarEnums :: Declaration -> [Declaration]
- desugarDeclaration :: Declaration -> [IElement]
- sugarDeclaration :: IElement -> Declaration
- desugarClafer :: Clafer -> [IElement]
- sugarClafer :: IClafer -> Clafer
- desugarSuper :: Super -> ISuper
- desugarSuperHow :: SuperHow -> Bool
- desugarInit :: PosIdent -> Init -> [IElement]
- desugarInitHow :: InitHow -> Bool
- desugarName :: Name -> IExp
- desugarModId :: ModId -> Result
- sugarModId :: String -> ModId
- sugarSuper :: ISuper -> Super
- sugarSuperHow :: Bool -> SuperHow
- sugarInitHow :: Bool -> InitHow
- desugarConstraint :: Constraint -> PExp
- desugarSoftConstraint :: SoftConstraint -> PExp
- desugarGoal :: Goal -> PExp
- sugarConstraint :: PExp -> Constraint
- sugarSoftConstraint :: PExp -> SoftConstraint
- sugarGoal :: PExp -> Goal
- desugarAbstract :: Abstract -> Bool
- sugarAbstract :: Bool -> Abstract
- desugarElements :: Elements -> [IElement]
- sugarElements :: [IElement] -> Elements
- desugarElement :: Element -> [IElement]
- sugarElement :: IElement -> Element
- mkArrowConstraint :: Clafer -> [Element]
- isSuperSomeArrow :: Super -> Bool
- isSuperArrow :: SuperHow -> Bool
- desugarGCard :: GCard -> Maybe IGCard
- isOptionalDef :: NCard -> Bool
- isExIntegerAst :: ExInteger -> Bool
- sugarGCard :: Maybe IGCard -> GCard
- desugarCard :: Card -> Maybe Interval
- desugarNCard :: NCard -> (Integer, Integer)
- desugarExInteger :: ExInteger -> Integer
- sugarCard :: Maybe Interval -> Card
- sugarExInteger :: Integer -> ExInteger
- desugarExp :: Exp -> PExp
- desugarExp' :: Exp -> IExp
- desugarOp :: (a -> PExp) -> String -> [a] -> IExp
- desugarSetExp :: SetExp -> PExp
- desugarSetExp' :: SetExp -> IExp
- sugarExp :: PExp -> Exp
- sugarExp' :: IExp -> Exp
- sugarSetExp :: PExp -> SetExp
- sugarSetExp' :: IExp -> SetExp
- desugarPath :: PExp -> PExp
- isSet :: IExp -> Bool
- reducePExp :: PExp -> PExp
- reduceIExp :: IExp -> IExp
- reduceNav :: IExp -> IExp
- desugarDecl :: Bool -> Decl -> IDecl
- sugarDecl :: IDecl -> Decl
- desugarLocId :: LocId -> String
- sugarLocId :: String -> LocId
- desugarQuant :: Quant -> IQuant
- sugarQuant :: IQuant -> Quant
Documentation
desugarModule :: Module -> IModuleSource
Transform the AST into the intermediate representation (IR)
sugarModule :: IModule -> ModuleSource
desugarEnums :: Declaration -> [Declaration]Source
desugars enumeration to abstract and global singleton features
desugarClafer :: Clafer -> [IElement]Source
sugarClafer :: IClafer -> ClaferSource
desugarSuper :: Super -> ISuperSource
desugarSuperHow :: SuperHow -> BoolSource
desugarInit :: PosIdent -> Init -> [IElement]Source
desugarInitHow :: InitHow -> BoolSource
desugarName :: Name -> IExpSource
desugarModId :: ModId -> ResultSource
sugarModId :: String -> ModIdSource
sugarSuper :: ISuper -> SuperSource
sugarSuperHow :: Bool -> SuperHowSource
sugarInitHow :: Bool -> InitHowSource
desugarGoal :: Goal -> PExpSource
desugarAbstract :: Abstract -> BoolSource
sugarAbstract :: Bool -> AbstractSource
desugarElements :: Elements -> [IElement]Source
sugarElements :: [IElement] -> ElementsSource
desugarElement :: Element -> [IElement]Source
mkArrowConstraint :: Clafer -> [Element]Source
isSuperSomeArrow :: Super -> BoolSource
isSuperArrow :: SuperHow -> BoolSource
desugarGCard :: GCard -> Maybe IGCardSource
isOptionalDef :: NCard -> BoolSource
isExIntegerAst :: ExInteger -> BoolSource
sugarGCard :: Maybe IGCard -> GCardSource
desugarCard :: Card -> Maybe IntervalSource
desugarNCard :: NCard -> (Integer, Integer)Source
desugarExInteger :: ExInteger -> IntegerSource
sugarExInteger :: Integer -> ExIntegerSource
desugarExp :: Exp -> PExpSource
desugarExp' :: Exp -> IExpSource
desugarSetExp :: SetExp -> PExpSource
desugarSetExp' :: SetExp -> IExpSource
sugarSetExp :: PExp -> SetExpSource
sugarSetExp' :: IExp -> SetExpSource
desugarPath :: PExp -> PExpSource
reducePExp :: PExp -> PExpSource
reduceIExp :: IExp -> IExpSource
desugarDecl :: Bool -> Decl -> IDeclSource
desugarLocId :: LocId -> StringSource
sugarLocId :: String -> LocIdSource
desugarQuant :: Quant -> IQuantSource
sugarQuant :: IQuant -> QuantSource