clafer-0.4.5: Compiles Clafer models to other formats: Alloy, JavaScript, JSON, HTML, Dot.

Safe HaskellSafe
LanguageHaskell2010

Language.Clafer.Front.PrintClafer

Documentation

type Doc = [ShowS] -> [ShowS] Source #

class Print a where Source #

Minimal complete definition

prt

Methods

prt :: Int -> a -> Doc Source #

prtList :: Int -> [a] -> Doc Source #

Instances

Print Char Source # 

Methods

prt :: Int -> Char -> Doc Source #

prtList :: Int -> [Char] -> Doc Source #

Print Double Source # 

Methods

prt :: Int -> Double -> Doc Source #

prtList :: Int -> [Double] -> Doc Source #

Print Integer Source # 

Methods

prt :: Int -> Integer -> Doc Source #

prtList :: Int -> [Integer] -> Doc Source #

Print LocId Source # 

Methods

prt :: Int -> LocId -> Doc Source #

prtList :: Int -> [LocId] -> Doc Source #

Print ModId Source # 

Methods

prt :: Int -> ModId -> Doc Source #

prtList :: Int -> [ModId] -> Doc Source #

Print EnumId Source # 

Methods

prt :: Int -> EnumId -> Doc Source #

prtList :: Int -> [EnumId] -> Doc Source #

Print Quant Source # 

Methods

prt :: Int -> Quant -> Doc Source #

prtList :: Int -> [Quant] -> Doc Source #

Print Decl Source # 

Methods

prt :: Int -> Decl -> Doc Source #

prtList :: Int -> [Decl] -> Doc Source #

Print Exp Source # 

Methods

prt :: Int -> Exp -> Doc Source #

prtList :: Int -> [Exp] -> Doc Source #

Print Name Source # 

Methods

prt :: Int -> Name -> Doc Source #

prtList :: Int -> [Name] -> Doc Source #

Print ExInteger Source # 

Methods

prt :: Int -> ExInteger -> Doc Source #

prtList :: Int -> [ExInteger] -> Doc Source #

Print NCard Source # 

Methods

prt :: Int -> NCard -> Doc Source #

prtList :: Int -> [NCard] -> Doc Source #

Print Card Source # 

Methods

prt :: Int -> Card -> Doc Source #

prtList :: Int -> [Card] -> Doc Source #

Print GCard Source # 

Methods

prt :: Int -> GCard -> Doc Source #

prtList :: Int -> [GCard] -> Doc Source #

Print InitHow Source # 

Methods

prt :: Int -> InitHow -> Doc Source #

prtList :: Int -> [InitHow] -> Doc Source #

Print Init Source # 

Methods

prt :: Int -> Init -> Doc Source #

prtList :: Int -> [Init] -> Doc Source #

Print Reference Source # 

Methods

prt :: Int -> Reference -> Doc Source #

prtList :: Int -> [Reference] -> Doc Source #

Print Super Source # 

Methods

prt :: Int -> Super -> Doc Source #

prtList :: Int -> [Super] -> Doc Source #

Print Element Source # 

Methods

prt :: Int -> Element -> Doc Source #

prtList :: Int -> [Element] -> Doc Source #

Print Elements Source # 

Methods

prt :: Int -> Elements -> Doc Source #

prtList :: Int -> [Elements] -> Doc Source #

Print Abstract Source # 

Methods

prt :: Int -> Abstract -> Doc Source #

prtList :: Int -> [Abstract] -> Doc Source #

Print Goal Source # 

Methods

prt :: Int -> Goal -> Doc Source #

prtList :: Int -> [Goal] -> Doc Source #

Print Assertion Source # 

Methods

prt :: Int -> Assertion -> Doc Source #

prtList :: Int -> [Assertion] -> Doc Source #

Print Constraint Source # 
Print Clafer Source # 

Methods

prt :: Int -> Clafer -> Doc Source #

prtList :: Int -> [Clafer] -> Doc Source #

Print Declaration Source # 
Print Module Source # 

Methods

prt :: Int -> Module -> Doc Source #

prtList :: Int -> [Module] -> Doc Source #

Print PosChoco Source # 

Methods

prt :: Int -> PosChoco -> Doc Source #

prtList :: Int -> [PosChoco] -> Doc Source #

Print PosAlloy Source # 

Methods

prt :: Int -> PosAlloy -> Doc Source #

prtList :: Int -> [PosAlloy] -> Doc Source #

Print PosBlockComment Source # 
Print PosLineComment Source # 
Print PosIdent Source # 

Methods

prt :: Int -> PosIdent -> Doc Source #

prtList :: Int -> [PosIdent] -> Doc Source #

Print PosString Source # 

Methods

prt :: Int -> PosString -> Doc Source #

prtList :: Int -> [PosString] -> Doc Source #

Print PosReal Source # 

Methods

prt :: Int -> PosReal -> Doc Source #

prtList :: Int -> [PosReal] -> Doc Source #

Print PosDouble Source # 

Methods

prt :: Int -> PosDouble -> Doc Source #

prtList :: Int -> [PosDouble] -> Doc Source #

Print PosInteger Source # 
Print a => Print [a] Source # 

Methods

prt :: Int -> [a] -> Doc Source #

prtList :: Int -> [[a]] -> Doc Source #

prPrec :: Int -> Int -> Doc -> Doc Source #