22 #ifndef UTAP_ABSTRACTBUILDER_HH
23 #define UTAP_ABSTRACTBUILDER_HH
42 virtual const char*
what()
const throw() {
return error.c_str(); }
57 virtual bool isType(
const char*);
82 virtual void declVar(
const char* name,
bool init);
111 virtual void procBegin(
const char* name,
const bool isTA =
true,
112 const std::string type =
"",
const std::string mode =
"");
114 virtual void procState(
const char* name,
bool hasInvariant,
bool hasER);
119 virtual void procEdgeBegin(
const char* from,
const char* to,
const bool control,
const char* actname);
120 virtual void procEdgeEnd(
const char* from,
const char* to);
131 virtual void instanceName(
const char* name,
bool templ=
true);
134 virtual void procMessage(
const char* from,
const char* to,
const int loc,
const bool pch);
136 virtual void procCondition(
const std::vector<char*> anchors,
const int loc,
137 const bool pch,
const bool hot);
139 virtual void procLscUpdate(
const char* anchor,
const int loc,
const bool pch);
159 virtual void ifEnd(
bool);
178 virtual void exprId(
const char * varName);
195 virtual void exprDot(
const char *);
205 virtual void declIO(
const char*,
int,
int);
230 const char *,
size_t,
const char *,
size_t);
231 virtual void process(
const char*);
240 virtual void parse(
const char*);
279 virtual void queryFormula(
const char* formula,
const char* location);
position_t position
Definition: abstractbuilder.h:48
virtual void exprForAllDynamicBegin(const char *, const char *)
Definition: abstractbuilder.cpp:786
virtual void exprMITLExistsDynamicBegin(const char *, const char *)
Definition: abstractbuilder.cpp:835
virtual void forEnd()
Definition: abstractbuilder.cpp:361
virtual void procCondition()
Definition: abstractbuilder.cpp:323
virtual void queryComment(const char *comment)
Definition: abstractbuilder.cpp:852
virtual void exprPostDecrement()
Definition: abstractbuilder.cpp:517
virtual void procEdgeEnd(const char *from, const char *to)
Definition: abstractbuilder.cpp:258
virtual void defaultEnd()
Definition: abstractbuilder.cpp:447
virtual void typeDouble(PREFIX)
Called whenever a double type is parsed.
Definition: abstractbuilder.cpp:91
virtual void exprNat(int32_t)
Definition: abstractbuilder.cpp:487
virtual void exprExistsDynamicEnd(const char *name)
Definition: abstractbuilder.cpp:799
virtual void instanceName(const char *name, bool templ=true)
Definition: abstractbuilder.cpp:308
virtual void assertStatement()
Definition: abstractbuilder.cpp:462
virtual void ifBegin()
Definition: abstractbuilder.cpp:396
virtual void procBegin(const char *name, const bool isTA=true, const std::string type="", const std::string mode="")
Definition: abstractbuilder.cpp:216
virtual void exprBuiltinFunction1(Constants::kind_t)
Definition: abstractbuilder.cpp:604
virtual void ganttEntrySelect(const char *id)
Definition: abstractbuilder.cpp:186
virtual void exprDynamicProcessExpr(const char *)
Definition: abstractbuilder.cpp:821
virtual void ganttDeclStart(const char *name)
Definition: abstractbuilder.cpp:166
virtual void declIO(const char *, int, int)
Definition: abstractbuilder.cpp:763
virtual void exprForeachDynamicEnd(const char *name)
Definition: abstractbuilder.cpp:817
virtual void processListEnd()
Definition: abstractbuilder.cpp:697
virtual void exprInlineIf()
Definition: abstractbuilder.cpp:559
virtual void emptyStatement()
Definition: abstractbuilder.cpp:351
virtual void exprForAllEnd(const char *name)
Definition: abstractbuilder.cpp:584
virtual void doWhileEnd()
Definition: abstractbuilder.cpp:391
virtual void exprNary(Constants::kind_t, uint32_t num)
Definition: abstractbuilder.cpp:542
#define comment
Definition: lexer.cc:623
virtual void declDynamicTemplate(std::string)
Dynamic.
Definition: abstractbuilder.cpp:768
virtual void exprPreDecrement()
Definition: abstractbuilder.cpp:522
virtual void caseEnd()
Definition: abstractbuilder.cpp:437
virtual void ganttEntryStart()
Definition: abstractbuilder.cpp:181
virtual void declTypeDef(const char *name)
Used when a typedef declaration was parsed.
Definition: abstractbuilder.cpp:146
virtual void exprMITLForAllDynamicEnd(const char *name)
Definition: abstractbuilder.cpp:831
virtual void exprProbaExpected(int, const char *)
Definition: abstractbuilder.cpp:668
PREFIX
Definition: builder.h:85
virtual void scenario(const char *)
Definition: abstractbuilder.cpp:703
virtual void exprMitlAtom()
Definition: abstractbuilder.cpp:644
virtual void procEdgeBegin(const char *from, const char *to, const bool control, const char *actname)
Definition: abstractbuilder.cpp:252
virtual void declInitialiserList(uint32_t num)
Definition: abstractbuilder.cpp:156
virtual void instantiationBegin(const char *, size_t, const char *)
Definition: abstractbuilder.cpp:683
virtual void setPosition(uint32_t, uint32_t)
Sets the current position.
Definition: abstractbuilder.cpp:60
virtual void forBegin()
Definition: abstractbuilder.cpp:356
virtual void whileEnd()
Definition: abstractbuilder.cpp:381
virtual void returnStatement(bool)
Definition: abstractbuilder.cpp:457
virtual void exprMitlDisj()
Definition: abstractbuilder.cpp:629
virtual void procStateInit(const char *name)
Definition: abstractbuilder.cpp:242
virtual void breakStatement()
Definition: abstractbuilder.cpp:411
virtual void exprMitlFormula()
Definition: abstractbuilder.cpp:614
virtual void exprDot(const char *)
Definition: abstractbuilder.cpp:569
virtual void typeClock(PREFIX)
Called whenever a clock type is parsed.
Definition: abstractbuilder.cpp:106
virtual void ganttDeclEnd()
Definition: abstractbuilder.cpp:176
virtual void structField(const char *name)
Called to declare a field of a structure.
Definition: abstractbuilder.cpp:141
virtual void typeVoid()
Called whenever a void type is parsed.
Definition: abstractbuilder.cpp:111
virtual void ifEnd(bool)
Definition: abstractbuilder.cpp:406
virtual void procSelect(const char *id)
Definition: abstractbuilder.cpp:263
kind_t
Definition: common.h:37
virtual void whileBegin()
Definition: abstractbuilder.cpp:376
virtual void procSync(Constants::synchronisation_t type)
Definition: abstractbuilder.cpp:273
virtual void declFuncEnd()
Definition: abstractbuilder.cpp:211
virtual void exprSync(Constants::synchronisation_t type)
Definition: abstractbuilder.cpp:758
virtual void addChanPriority(char separator)
Definition: abstractbuilder.cpp:738
virtual void defaultChanPriority()
Definition: abstractbuilder.cpp:743
virtual void ifElse()
Definition: abstractbuilder.cpp:401
virtual void exprComma()
Definition: abstractbuilder.cpp:564
virtual void exprProbaQuantitative(int, Constants::kind_t)
Definition: abstractbuilder.cpp:658
virtual void exprMitlConj()
Definition: abstractbuilder.cpp:634
virtual void typeDuplicate()
Duplicate type at the top of the type stack.
Definition: abstractbuilder.cpp:71
virtual void typePop()
Pop type at the topof the type stack.
Definition: abstractbuilder.cpp:76
virtual void property()
Definition: abstractbuilder.cpp:718
virtual void instanceNameBegin(const char *name)
Definition: abstractbuilder.cpp:298
virtual void exprTernary(Constants::kind_t ternaryop, bool firstMissing)
Definition: abstractbuilder.cpp:554
virtual void declVar(const char *name, bool init)
Called to when a variable declaration has been parsed.
Definition: abstractbuilder.cpp:151
virtual void exprExistsBegin(const char *name)
Definition: abstractbuilder.cpp:673
virtual void exprProbaQualitative(int, Constants::kind_t, Constants::kind_t, double)
Definition: abstractbuilder.cpp:653
virtual void exprUnary(Constants::kind_t unaryop)
Definition: abstractbuilder.cpp:532
virtual void exprSumDynamicBegin(const char *, const char *)
Definition: abstractbuilder.cpp:803
virtual void exprSumBegin(const char *name)
Definition: abstractbuilder.cpp:589
synchronisation_t
Definition: common.h:263
virtual void procState(const char *name, bool hasInvariant, bool hasER)
Definition: abstractbuilder.cpp:227
virtual void doWhileBegin()
Definition: abstractbuilder.cpp:386
virtual void ganttDeclSelect(const char *id)
Definition: abstractbuilder.cpp:171
virtual void exprMITLForAllDynamicBegin(const char *, const char *)
Definition: abstractbuilder.cpp:826
virtual void iterationEnd(const char *name)
Definition: abstractbuilder.cpp:371
virtual void exprCallBegin()
Definition: abstractbuilder.cpp:492
virtual void declFieldInit(const char *name)
Definition: abstractbuilder.cpp:161
virtual void exprPreIncrement()
Definition: abstractbuilder.cpp:512
virtual void procLscUpdate()
Definition: abstractbuilder.cpp:331
virtual void exprBinary(Constants::kind_t binaryop)
Definition: abstractbuilder.cpp:537
virtual void procGuard()
Definition: abstractbuilder.cpp:268
virtual void exprScenario(const char *name)
Definition: abstractbuilder.cpp:548
virtual void exprMitlNext()
Definition: abstractbuilder.cpp:639
virtual void exprExistsDynamicBegin(const char *, const char *)
Definition: abstractbuilder.cpp:794
virtual void exprSumDynamicEnd(const char *)
Definition: abstractbuilder.cpp:808
Definition: abstractbuilder.h:35
virtual void exprMitlRelease(int, int)
Definition: abstractbuilder.cpp:624
virtual void beginChanPriority()
Definition: abstractbuilder.cpp:733
virtual void procEnd()
Definition: abstractbuilder.cpp:222
NotSupportedException(const char *err)
Definition: abstractbuilder.h:40
virtual void procProb()
Definition: abstractbuilder.cpp:282
virtual void blockBegin()
Definition: abstractbuilder.cpp:341
virtual void blockEnd()
Definition: abstractbuilder.cpp:346
virtual void typeStruct(PREFIX, uint32_t fields)
Called when a struct-type has been parsed.
Definition: abstractbuilder.cpp:126
virtual void typeChannel(PREFIX)
Called whenever a channel type is parsed.
Definition: abstractbuilder.cpp:101
Definition: abstractbuilder.h:45
virtual void procMessage(const char *from, const char *to, const int loc, const bool pch)
Definition: abstractbuilder.cpp:313
virtual void procStateCommit(const char *name)
Definition: abstractbuilder.cpp:232
virtual void typeBoundedInt(PREFIX)
Called whenever an integer type with a range is parsed.
Definition: abstractbuilder.cpp:96
Definition: position.h:42
virtual void typeInt(PREFIX)
Called whenever an integer type is parsed.
Definition: abstractbuilder.cpp:86
virtual void typeArrayOfSize(size_t)
Called to create an array type.
Definition: abstractbuilder.cpp:131
virtual void typeArrayOfType(size_t)
Called to create an array type.
Definition: abstractbuilder.cpp:136
virtual void ganttEntryEnd()
Definition: abstractbuilder.cpp:191
virtual void procBranchpoint(const char *name)
Definition: abstractbuilder.cpp:247
virtual void done()
Definition: abstractbuilder.cpp:714
virtual void continueStatement()
Definition: abstractbuilder.cpp:416
virtual void afterUpdate()
Definition: abstractbuilder.cpp:728
virtual void iterationBegin(const char *name)
Definition: abstractbuilder.cpp:366
The ParserBuilder interface is used by the parser to output the parsed system.
Definition: builder.h:79
virtual void queryFormula(const char *formula, const char *location)
Definition: abstractbuilder.cpp:849
virtual void exprFalse()
Definition: abstractbuilder.cpp:472
AbstractBuilder()
Definition: abstractbuilder.cpp:56
virtual void exprSumEnd(const char *name)
Definition: abstractbuilder.cpp:594
virtual void exprMitlUntil(int, int)
Definition: abstractbuilder.cpp:619
virtual void exprStatement()
Definition: abstractbuilder.cpp:452
virtual const char * what() const
Definition: abstractbuilder.h:42
virtual void exprSMCControl(int)
Definition: abstractbuilder.cpp:648
virtual void hasPrechart(const bool pch)
Definition: abstractbuilder.cpp:335
virtual void incProcPriority()
Definition: abstractbuilder.cpp:748
virtual void exprExit()
Definition: abstractbuilder.cpp:777
virtual void exprArray()
Definition: abstractbuilder.cpp:502
virtual void switchBegin()
Definition: abstractbuilder.cpp:421
virtual void exprExistsEnd(const char *name)
Definition: abstractbuilder.cpp:678
virtual void exprDouble(double)
Definition: abstractbuilder.cpp:477
virtual ~NotSupportedException()
Definition: abstractbuilder.h:41
virtual void exprSimulate(int, int, int)
Definition: abstractbuilder.cpp:599
virtual void exprForeachDynamicBegin(const char *, const char *)
Definition: abstractbuilder.cpp:812
virtual void procUpdate()
Definition: abstractbuilder.cpp:278
virtual void exprNumOf()
Definition: abstractbuilder.cpp:781
virtual void instanceNameEnd(const char *name, size_t arguments)
Definition: abstractbuilder.cpp:303
virtual void queryBegin()
Verification queries.
Definition: abstractbuilder.cpp:843
virtual void exprTrue()
Definition: abstractbuilder.cpp:467
virtual void exprId(const char *varName)
Definition: abstractbuilder.cpp:482
virtual void instantiationEnd(const char *, size_t, const char *, size_t)
Definition: abstractbuilder.cpp:688
virtual void procStateUrgent(const char *name)
Definition: abstractbuilder.cpp:237
virtual void declProgress(bool)
Guard progress measure declaration.
Definition: abstractbuilder.cpp:196
virtual void declFuncBegin(const char *name)
Definition: abstractbuilder.cpp:206
virtual void typeName(PREFIX, const char *name)
Called when a type name has been parsed.
Definition: abstractbuilder.cpp:121
virtual void exprAssignment(Constants::kind_t op)
Definition: abstractbuilder.cpp:527
virtual void caseBegin()
Definition: abstractbuilder.cpp:431
virtual void defaultBegin()
Definition: abstractbuilder.cpp:442
virtual void switchEnd()
Definition: abstractbuilder.cpp:426
virtual void procInstanceLine()
Definition: abstractbuilder.cpp:293
virtual void exprCallEnd(uint32_t n)
Definition: abstractbuilder.cpp:497
virtual void parse(const char *)
Definition: abstractbuilder.cpp:708
virtual void exprBuiltinFunction2(Constants::kind_t)
Definition: abstractbuilder.cpp:609
virtual void exprMITLExistsDynamicEnd(const char *name)
Definition: abstractbuilder.cpp:839
virtual void procPriority(const char *)
Definition: abstractbuilder.cpp:753
virtual bool isType(const char *)
Must return true if and only if name is registered in the symbol table as a named type...
Definition: abstractbuilder.cpp:66
virtual void process(const char *)
Definition: abstractbuilder.cpp:693
virtual void exprDeadlock()
Definition: abstractbuilder.cpp:574
virtual void exprForAllDynamicEnd(const char *name)
Definition: abstractbuilder.cpp:790
virtual void declParameter(const char *name, bool)
Definition: abstractbuilder.cpp:201
virtual void exprProbaCompare(int, Constants::kind_t, int, Constants::kind_t)
Definition: abstractbuilder.cpp:663
virtual void exprSpawn(int)
Definition: abstractbuilder.cpp:773
virtual void typeScalar(PREFIX)
Called whenever a scalar type is parsed.
Definition: abstractbuilder.cpp:116
virtual void beforeUpdate()
Definition: abstractbuilder.cpp:723
virtual void exprPostIncrement()
Definition: abstractbuilder.cpp:507
virtual void typeBool(PREFIX)
Called whenever a boolean type is parsed.
Definition: abstractbuilder.cpp:81
virtual void queryEnd()
Definition: abstractbuilder.cpp:846
virtual void exprForAllBegin(const char *name)
Definition: abstractbuilder.cpp:579