rsCTL PVs: process_name.entity_name.

This commit is contained in:
Artur Meski
2018-04-14 22:10:56 +01:00
parent d8398085aa
commit 30b62c88c6
3 changed files with 13 additions and 7 deletions

View File

@@ -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;

View File

@@ -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;

View File

@@ -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);