Hets - the Heterogeneous Tool Set
Copyright(c) Christian Maeder and Uni Bremen 2006
LicenseGPLv2 or higher, see LICENSE.txt
MaintainerChristian.Maeder@dfki.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe

CASL.ToDoc

Description

Pretty printing data types of BASIC_SPEC

Synopsis

Documentation

printBASIC_SPEC :: FormExtension f => (b -> Doc) -> (s -> Doc) -> BASIC_SPEC b s f -> Doc Source #

printTheoryFormula :: FormExtension f => Named (FORMULA f) -> Doc Source #

print a formula as a sentence

pluralS_symb_list :: SYMB_KIND -> [a] -> String Source #

pluralS :: ListCheck a => a -> String Source #

pluralS checks nested lists via the class ListCheck to decide if a plural s should be appended.

appendS :: [a] -> String Source #

isJunct :: FORMULA f -> Bool Source #

printInfix Source #

Arguments

:: Bool

attach separator to right argument?

-> ([Doc] -> Doc)

combinator for two docs

-> Doc 
-> Doc 
-> Doc

left, separator and right arguments

-> Doc 

class ListCheck a where Source #

a helper class for calculating the pluralS of e.g. ops

Methods

innerList :: a -> [()] Source #

Instances

Instances details
ListCheck Id Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: Id -> [()] Source #

ListCheck Token Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: Token -> [()] Source #

ListCheck VAR_DECL Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: VAR_DECL -> [()] Source #

ListCheck CHANNEL_DECL Source # 
Instance details

Defined in CspCASL.Print_CspCASL

Methods

innerList :: CHANNEL_DECL -> [()] Source #

ListCheck FplOpItem Source # 
Instance details

Defined in Fpl.As

Methods

innerList :: FplOpItem -> [()] Source #

ListCheck FplSortItem Source # 
Instance details

Defined in Fpl.As

Methods

innerList :: FplSortItem -> [()] Source #

ListCheck a => ListCheck [a] Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: [a] -> [()] Source #

ListCheck a => ListCheck (Annoted a) Source #

an instance of ListCheck for Annoted stuff

Instance details

Defined in CASL.ToDoc

Methods

innerList :: Annoted a -> [()] Source #

ListCheck (PRED_ITEM f) Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: PRED_ITEM f -> [()] Source #

ListCheck (OP_ITEM f) Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: OP_ITEM f -> [()] Source #

ListCheck (SORT_ITEM f) Source # 
Instance details

Defined in CASL.ToDoc

Methods

innerList :: SORT_ITEM f -> [()] Source #

class (GetRange f, Pretty f) => FormExtension f where Source #

Minimal complete definition

Nothing

Methods

isQuantifierLike :: f -> Bool Source #

prefixExt :: f -> Doc -> Doc Source #

Instances

Instances details
FormExtension () Source # 
Instance details

Defined in CASL.ToDoc

Methods

isQuantifierLike :: () -> Bool Source #

prefixExt :: () -> Doc -> Doc Source #

FormExtension C_FORMULA Source # 
Instance details

Defined in CoCASL.Print_AS

FormExtension DL_FORMULA Source # 
Instance details

Defined in CASL_DL.Print_AS

FormExtension ConstraintFORMULA Source # 
Instance details

Defined in ConstraintCASL.StaticAna

FormExtension CspSen Source # 
Instance details

Defined in CspCASL.SignCSP

FormExtension EM_FORMULA Source # 
Instance details

Defined in ExtModal.Print_AS

FormExtension TermExt Source # 
Instance details

Defined in Fpl.As

FormExtension H_FORMULA Source # 
Instance details

Defined in Hybrid.Print_AS

FormExtension M_FORMULA Source # 
Instance details

Defined in Modal.Print_AS

FormExtension VSEforms Source # 
Instance details

Defined in VSE.As

FormExtension a => FormExtension (Ranged a) Source # 
Instance details

Defined in VSE.As

Methods

isQuantifierLike :: Ranged a -> Bool Source #

prefixExt :: Ranged a -> Doc -> Doc Source #

Orphan instances

Pretty SYMB_OR_MAP Source # 
Instance details

Pretty TYPE Source # 
Instance details

Methods

pretty :: TYPE -> Doc Source #

pretties :: [TYPE] -> Doc Source #

Pretty SYMB Source # 
Instance details

Methods

pretty :: SYMB -> Doc Source #

pretties :: [SYMB] -> Doc Source #

Pretty SYMB_KIND Source # 
Instance details

Pretty SYMB_MAP_ITEMS Source # 
Instance details

Pretty SYMB_ITEMS Source # 
Instance details

Pretty OP_SYMB Source # 
Instance details

Pretty PRED_SYMB Source # 
Instance details

Pretty VAR_DECL Source # 
Instance details

Pretty COMPONENTS Source # 
Instance details

Pretty ALTERNATIVE Source # 
Instance details

Pretty DATATYPE_DECL Source # 
Instance details

Pretty PRED_TYPE Source # 
Instance details

Pretty OP_HEAD Source # 
Instance details

Pretty OP_TYPE Source # 
Instance details

FormExtension f => Pretty (TERM f) Source # 
Instance details

Methods

pretty :: TERM f -> Doc Source #

pretties :: [TERM f] -> Doc Source #

FormExtension f => Pretty (FORMULA f) Source # 
Instance details

Methods

pretty :: FORMULA f -> Doc Source #

pretties :: [FORMULA f] -> Doc Source #

FormExtension f => Pretty (PRED_ITEM f) Source # 
Instance details

FormExtension f => Pretty (OP_ATTR f) Source # 
Instance details

Methods

pretty :: OP_ATTR f -> Doc Source #

pretties :: [OP_ATTR f] -> Doc Source #

FormExtension f => Pretty (OP_ITEM f) Source # 
Instance details

Methods

pretty :: OP_ITEM f -> Doc Source #

pretties :: [OP_ITEM f] -> Doc Source #

FormExtension f => Pretty (SORT_ITEM f) Source # 
Instance details

(Pretty s, FormExtension f) => Pretty (SIG_ITEMS s f) Source # 
Instance details

Methods

pretty :: SIG_ITEMS s f -> Doc Source #

pretties :: [SIG_ITEMS s f] -> Doc Source #

(Pretty b, Pretty s, FormExtension f) => Pretty (BASIC_ITEMS b s f) Source # 
Instance details

Methods

pretty :: BASIC_ITEMS b s f -> Doc Source #

pretties :: [BASIC_ITEMS b s f] -> Doc Source #

(Pretty b, Pretty s, FormExtension f) => Pretty (BASIC_SPEC b s f) Source # 
Instance details

Methods

pretty :: BASIC_SPEC b s f -> Doc Source #

pretties :: [BASIC_SPEC b s f] -> Doc Source #