Safe Haskell | None |
---|---|
Language | Haskell2010 |
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 :: Maybe String -> Module -> IModule
- sugarModule :: IModule -> Module
- desugarEnums :: Declaration -> [Declaration]
- desugarDeclaration :: Declaration -> [IElement]
- sugarDeclaration :: IElement -> Declaration
- desugarClafer :: Clafer -> [IElement]
- getPExpClaferIdent :: Exp -> String
- sugarClafer :: IClafer -> Clafer
- desugarSuper :: Super -> Maybe PExp
- desugarReference :: Reference -> Maybe IReference
- desugarInit :: PosIdent -> Init -> [IElement]
- desugarInitHow :: InitHow -> Bool
- desugarName :: Name -> IExp
- desugarModId :: ModId -> Result
- sugarModId :: String -> ModId
- sugarSuper :: Maybe PExp -> Super
- sugarReference :: Maybe IReference -> Reference
- sugarInitHow :: Bool -> InitHow
- desugarConstraint :: Constraint -> PExp
- desugarAssertion :: Assertion -> PExp
- desugarGoal :: Goal -> IElement
- mkMinimizeMaximizePExp :: Bool -> Span -> Exp -> IElement
- sugarConstraint :: PExp -> Constraint
- sugarAssertion :: PExp -> Assertion
- sugarGoal :: PExp -> Bool -> Goal
- desugarAbstract :: Abstract -> Bool
- sugarAbstract :: Bool -> Abstract
- desugarElements :: Elements -> [IElement]
- sugarElements :: [IElement] -> Elements
- desugarElement :: Element -> [IElement]
- sugarElement :: IElement -> Element
- 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
- sugarExp :: PExp -> Exp
- sugarExp' :: IExp -> Exp
- desugarPath :: PExp -> PExp
- isSetExp :: 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 :: Maybe String -> Module -> IModule Source #
Transform the AST into the intermediate representation (IR)
sugarModule :: IModule -> Module Source #
desugarEnums :: Declaration -> [Declaration] Source #
desugars enumeration to abstract and global singleton features
desugarDeclaration :: Declaration -> [IElement] Source #
desugarClafer :: Clafer -> [IElement] Source #
getPExpClaferIdent :: Exp -> String Source #
sugarClafer :: IClafer -> Clafer Source #
desugarInitHow :: InitHow -> Bool Source #
desugarName :: Name -> IExp Source #
desugarModId :: ModId -> Result Source #
sugarModId :: String -> ModId Source #
sugarInitHow :: Bool -> InitHow Source #
desugarConstraint :: Constraint -> PExp Source #
desugarAssertion :: Assertion -> PExp Source #
desugarGoal :: Goal -> IElement Source #
sugarConstraint :: PExp -> Constraint Source #
sugarAssertion :: PExp -> Assertion Source #
desugarAbstract :: Abstract -> Bool Source #
sugarAbstract :: Bool -> Abstract Source #
desugarElements :: Elements -> [IElement] Source #
sugarElements :: [IElement] -> Elements Source #
desugarElement :: Element -> [IElement] Source #
sugarElement :: IElement -> Element Source #
isOptionalDef :: NCard -> Bool Source #
isExIntegerAst :: ExInteger -> Bool Source #
desugarExInteger :: ExInteger -> Integer Source #
sugarExInteger :: Integer -> ExInteger Source #
desugarExp :: Exp -> PExp Source #
desugarExp' :: Exp -> IExp Source #
desugarPath :: PExp -> PExp Source #
reducePExp :: PExp -> PExp Source #
reduceIExp :: IExp -> IExp Source #
desugarLocId :: LocId -> String Source #
sugarLocId :: String -> LocId Source #
desugarQuant :: Quant -> IQuant Source #
sugarQuant :: IQuant -> Quant Source #