22 #ifndef UTAP_PRETTYPRINTER_H
23 #define UTAP_PRETTYPRINTER_H
37 std::vector<std::string> st;
38 std::stack<std::string> type;
39 std::stack<std::string> array;
40 std::vector<std::string> fields;
41 std::stack<std::ostream *> o;
42 std::set<std::string> types;
44 std::string committed;
46 std::string templateset;
47 int select, guard, sync, update;
53 void indent(std::string &s);
59 uint32_t
position, uint32_t offset, uint32_t line, std::string path);
64 virtual bool isType(
const char *);
82 virtual void declVar(
const char *
id,
bool init);
101 virtual void ifEnd(
bool);
106 virtual void procBegin(
const char* name,
const bool isTA =
true,
107 const std::string type =
"",
const std::string mode =
"");
108 virtual void procState(
const char *
id,
bool hasInvariant);
109 virtual void procState(
const char *
id,
bool hasInvariant,
bool hasExpRate);
117 virtual void procEdgeBegin(
const char *source,
const char *target,
const bool control);
118 virtual void procEdgeBegin(
const char *source,
const char *target,
const bool control,
const char* actname);
119 virtual void procEdgeEnd(
const char *source,
const char *target);
121 virtual void exprId(
const char *
id);
122 virtual void exprNat(int32_t n);
140 virtual void exprDot(
const char *);
148 virtual void exprProba(
bool,
int,
double,
int);
158 virtual void process(
const char *
id);
position_t position
Definition: abstractbuilder.h:48
virtual void typeClock()
Definition: prettyprinter.cpp:146
virtual void structField(const char *name)
Called to declare a field of a structure.
Definition: prettyprinter.cpp:207
Definition: prettyprinter.h:34
virtual void whileEnd()
Definition: prettyprinter.cpp:426
virtual void queryComment(const char *)
Definition: prettyprinter.cpp:1284
virtual void exprForAllEnd(const char *name)
Definition: prettyprinter.cpp:1078
virtual void procStateUrgent(const char *id)
Definition: prettyprinter.cpp:587
virtual void declParameter(const char *name, bool)
Definition: prettyprinter.cpp:321
virtual void queryEnd()
Definition: prettyprinter.cpp:1287
virtual void procStateInit(const char *id)
Definition: prettyprinter.cpp:613
virtual void exprUnary(Constants::kind_t op)
Definition: prettyprinter.cpp:883
virtual void exprPreDecrement()
Definition: prettyprinter.cpp:832
virtual void exprSimulate(int, int, int, bool, int)
Definition: prettyprinter.cpp:1239
virtual void declFuncBegin(const char *name)
Definition: prettyprinter.cpp:344
virtual void blockEnd()
Definition: prettyprinter.cpp:370
virtual void iterationEnd(const char *name)
Definition: prettyprinter.cpp:392
virtual void exprScenario(const char *name)
Definition: prettyprinter.cpp:276
virtual void doWhileEnd()
Definition: prettyprinter.cpp:445
virtual void procEnd()
Definition: prettyprinter.cpp:756
virtual void typeBoundedInt(PREFIX)
Called whenever an integer type with a range is parsed.
Definition: prettyprinter.cpp:127
PrettyPrinter(std::ostream &stream)
Definition: prettyprinter.cpp:62
PREFIX
Definition: builder.h:85
virtual void exprMitlBox(int, int)
Definition: prettyprinter.cpp:1230
virtual void declFuncEnd()
Definition: prettyprinter.cpp:355
virtual void returnStatement(bool hasValue)
Definition: prettyprinter.cpp:505
virtual void procEdgeBegin(const char *source, const char *target, const bool control)
Definition: prettyprinter.cpp:678
virtual void doWhileBegin()
Definition: prettyprinter.cpp:440
virtual void procState(const char *id, bool hasInvariant)
Definition: prettyprinter.cpp:532
virtual void declVar(const char *id, bool init)
Called to when a variable declaration has been parsed.
Definition: prettyprinter.cpp:236
virtual void exprComma()
Definition: prettyprinter.cpp:1053
virtual void typeDouble(PREFIX)
Called whenever a double type is parsed.
Definition: prettyprinter.cpp:119
virtual void exprCallBegin()
Definition: prettyprinter.cpp:790
virtual bool isType(const char *)
Must return true if and only if name is registered in the symbol table as a named type...
Definition: prettyprinter.cpp:88
virtual void queryBegin()
Verification queries.
Definition: prettyprinter.cpp:1278
virtual void exprTernary(Constants::kind_t op)
Definition: prettyprinter.cpp:1023
virtual void typeVoid()
Called whenever a void type is parsed.
Definition: prettyprinter.cpp:156
virtual void exprDeadlock()
Definition: prettyprinter.cpp:1067
virtual void exprProba(bool, int, double, int)
Definition: prettyprinter.cpp:1182
kind_t
Definition: common.h:37
virtual void exprPostIncrement()
Definition: prettyprinter.cpp:817
virtual void instantiationBegin(const char *, size_t, const char *)
Definition: prettyprinter.cpp:1131
virtual void exprSumEnd(const char *name)
Definition: prettyprinter.cpp:1104
virtual void exprCallEnd(uint32_t n)
Definition: prettyprinter.cpp:795
virtual void ifEnd(bool)
Definition: prettyprinter.cpp:461
virtual void done()
Definition: prettyprinter.cpp:1178
synchronisation_t
Definition: common.h:263
virtual void emptyStatement()
Definition: prettyprinter.cpp:378
virtual void declFieldInit(const char *name)
Definition: prettyprinter.cpp:313
virtual void typeChannel(PREFIX)
Called whenever a channel type is parsed.
Definition: prettyprinter.cpp:141
virtual void typeName(PREFIX, const char *type)
Called when a type name has been parsed.
Definition: prettyprinter.cpp:171
virtual void breakStatement()
Definition: prettyprinter.cpp:486
virtual void exprSumBegin(const char *name)
Definition: prettyprinter.cpp:1098
virtual void handleError(std::string)
Definition: prettyprinter.cpp:77
virtual void exprForAllBegin(const char *name)
Definition: prettyprinter.cpp:1072
virtual void exprNat(int32_t n)
Definition: prettyprinter.cpp:773
virtual void beforeUpdate()
Definition: prettyprinter.cpp:1111
virtual void exprProbaQuantitative(int, Constants::kind_t, bool)
Definition: prettyprinter.cpp:1204
virtual void queryFormula(const char *)
Definition: prettyprinter.cpp:1281
virtual void procSync(Constants::synchronisation_t type)
Definition: prettyprinter.cpp:656
Definition: abstractbuilder.h:45
virtual void typeArrayOfType(size_t n)
Called to create an array type.
Definition: prettyprinter.cpp:185
virtual void declInitialiserList(uint32_t num)
Definition: prettyprinter.cpp:264
virtual void procBegin(const char *name, const bool isTA=true, const std::string type="", const std::string mode="")
Definition: prettyprinter.cpp:519
virtual void exprId(const char *id)
Definition: prettyprinter.cpp:768
virtual void exprInlineIf()
Definition: prettyprinter.cpp:1043
virtual void forEnd()
Definition: prettyprinter.cpp:404
virtual void iterationBegin(const char *name)
Definition: prettyprinter.cpp:384
virtual void whileBegin()
Definition: prettyprinter.cpp:420
virtual void exprProba2(bool, int)
Definition: prettyprinter.cpp:1193
virtual void exprExistsBegin(const char *name)
Definition: prettyprinter.cpp:1085
virtual void exprNary(Constants::kind_t op, uint32_t num)
Definition: prettyprinter.cpp:283
virtual void exprPostDecrement()
Definition: prettyprinter.cpp:827
virtual void typeBool(PREFIX)
Called whenever a boolean type is parsed.
Definition: prettyprinter.cpp:103
virtual void exprTrue()
Definition: prettyprinter.cpp:780
virtual void addPosition(uint32_t position, uint32_t offset, uint32_t line, std::string path)
Add mapping from an absolute position to a relative XML element.
Definition: prettyprinter.cpp:71
virtual void blockBegin()
Definition: prettyprinter.cpp:362
virtual void ifBegin()
Definition: prettyprinter.cpp:450
virtual void exprArray()
Definition: prettyprinter.cpp:810
virtual void procSelect(const char *id)
Definition: prettyprinter.cpp:636
virtual void exprMitlDiamond(int, int)
Definition: prettyprinter.cpp:1221
virtual void procUpdate()
Definition: prettyprinter.cpp:673
virtual void process(const char *id)
Definition: prettyprinter.cpp:1159
virtual void typeInt(PREFIX)
Called whenever an integer type is parsed.
Definition: prettyprinter.cpp:111
virtual void procGuard()
Definition: prettyprinter.cpp:651
virtual void instantiationEnd(const char *, size_t, const char *, size_t)
Definition: prettyprinter.cpp:1136
virtual void procEdgeEnd(const char *source, const char *target)
Definition: prettyprinter.cpp:711
virtual void forBegin()
Definition: prettyprinter.cpp:398
virtual void exprAssignment(Constants::kind_t op)
Definition: prettyprinter.cpp:837
virtual void ifElse()
Definition: prettyprinter.cpp:456
virtual void handleWarning(std::string)
Definition: prettyprinter.cpp:82
virtual void typePop()
Pop type at the topof the type stack.
Definition: prettyprinter.cpp:98
virtual void typeStruct(PREFIX prefix, uint32_t n)
Called when a struct-type has been parsed.
Definition: prettyprinter.cpp:190
virtual void exprDot(const char *)
Definition: prettyprinter.cpp:1062
virtual void declTypeDef(const char *name)
Used when a typedef declaration was parsed.
Definition: prettyprinter.cpp:219
virtual void exprExistsEnd(const char *name)
Definition: prettyprinter.cpp:1091
virtual void exprBinary(Constants::kind_t op)
Definition: prettyprinter.cpp:925
virtual void exprPreIncrement()
Definition: prettyprinter.cpp:822
virtual void exprStatement()
Definition: prettyprinter.cpp:498
virtual void typeScalar(PREFIX)
Called whenever a scalar type is parsed.
Definition: prettyprinter.cpp:161
virtual void typeDuplicate()
Duplicate type at the top of the type stack.
Definition: prettyprinter.cpp:93
virtual void continueStatement()
Definition: prettyprinter.cpp:492
virtual void afterUpdate()
Definition: prettyprinter.cpp:1121
virtual void processListEnd()
Definition: prettyprinter.cpp:1172
virtual void procStateCommit(const char *id)
Definition: prettyprinter.cpp:600
virtual void typeArrayOfSize(size_t n)
Called to create an array type.
Definition: prettyprinter.cpp:179
virtual void exprFalse()
Definition: prettyprinter.cpp:785