rsCTL PVs: process_name.entity_name.
This commit is contained in:
@@ -74,14 +74,16 @@ class BoolContexts
|
||||
Oper oper;
|
||||
BoolContexts *arg[2];
|
||||
std::string name;
|
||||
std::string proc_name;
|
||||
bool tf;
|
||||
|
||||
public:
|
||||
|
||||
BoolContexts(std::string varName)
|
||||
BoolContexts(std::string procName, std::string varName)
|
||||
{
|
||||
oper = BCTX_PV;
|
||||
name = varName;
|
||||
proc_name = procName;
|
||||
arg[0] = nullptr;
|
||||
arg[1] = nullptr;
|
||||
}
|
||||
@@ -167,9 +169,10 @@ class FormRSCTL
|
||||
* @param varName variable name used mostly for printing the variable.
|
||||
* @param varBDD the BDD describing the set where the variable holds.
|
||||
*/
|
||||
FormRSCTL(std::string varName)
|
||||
FormRSCTL(std::string procName, std::string varName)
|
||||
{
|
||||
oper = RSCTL_PV;
|
||||
proc_name = procName;
|
||||
entity_name = varName;
|
||||
arg[0] = nullptr;
|
||||
arg[1] = nullptr;
|
||||
|
||||
@@ -60,6 +60,7 @@ blank [ \t]
|
||||
">" return token::RAB;
|
||||
":" return token::COL;
|
||||
";" return token::SEMICOL;
|
||||
"." return token::DOT;
|
||||
"," return token::COMMA;
|
||||
"->" return token::RARR;
|
||||
"AND" return token::AND;
|
||||
|
||||
@@ -47,7 +47,7 @@ class rsin_driver;
|
||||
%token OPTIONS USE_CTX_AUT USE_CONCENTRATIONS
|
||||
%token REACTIONS INITIALCONTEXTS CONTEXTENTITIES RSCTLFORM
|
||||
%token CONTEXTAUTOMATON STATES INITSTATE TRANSITIONS
|
||||
%token EQ LCB RCB LRB RRB LSB RSB LAB RAB COL SEMICOL COMMA RARR
|
||||
%token EQ LCB RCB LRB RRB LSB RSB LAB RAB COL SEMICOL DOT COMMA RARR
|
||||
%token AND OR XOR IMPLIES NOT
|
||||
%token EX EU EF EG AX AU AF AG E A X U F G EMPTY
|
||||
|
||||
@@ -259,9 +259,10 @@ ctxentity: IDENTIFIER {
|
||||
|
||||
/* formulae */
|
||||
|
||||
bool_contexts: IDENTIFIER {
|
||||
$$ = new BoolContexts(*$1);
|
||||
bool_contexts: IDENTIFIER DOT IDENTIFIER {
|
||||
$$ = new BoolContexts(*$1, *$3);
|
||||
free($1);
|
||||
free($3);
|
||||
}
|
||||
| NOT bool_contexts {
|
||||
$$ = new BoolContexts(BCTX_NOT, $2);
|
||||
@@ -315,9 +316,10 @@ f_entity: IDENTIFIER {
|
||||
}
|
||||
;
|
||||
|
||||
rsctl_form: IDENTIFIER {
|
||||
$$ = new FormRSCTL(*$1);
|
||||
rsctl_form: IDENTIFIER DOT IDENTIFIER {
|
||||
$$ = new FormRSCTL(*$1, *$3);
|
||||
free($1);
|
||||
free($3);
|
||||
}
|
||||
| NOT rsctl_form {
|
||||
$$ = new FormRSCTL(RSCTL_NOT, $2);
|
||||
|
||||
Reference in New Issue
Block a user