ACT Library
|
Data structure for the chp sub-language body. More...
#include <lang.h>
Public Attributes | |
int | type |
this is taken from act_chp_lang_type | |
const char * | label |
label for this item, normally NULL | |
void * | space |
this space for rent! | |
union { | |
struct { | |
ActId * id | |
variable on the LHS More... | |
Expr * e | |
expression on the RHS More... | |
} assign | |
assignment statement id := e More... | |
struct { | |
ActId * chan | |
channel for communication More... | |
ActId * var | |
variable to be assigned More... | |
Expr * e | |
expression to be sent More... | |
unsigned int flavor:2 | |
unsigned int convert:2 | |
0 = nothing, 1 = bool(.), 2 = int(.) More... | |
} comm | |
used for send/recv More... | |
struct { | |
mstring_t * name | |
function name More... | |
list_t * rhs | |
} func | |
currently only used for log(..) More... | |
struct { | |
ActId * id | |
the name of the instance More... | |
mstring_t * name | |
the macro name More... | |
list_t * rhs | |
the argument list, list of Expr * More... | |
} macro | |
macro call More... | |
struct { | |
list_t * cmd | |
a list of act_chp_lang_t pointers More... | |
} semi_comma | |
used for comma and semicolon More... | |
act_chp_gc_t * gc | |
struct { | |
const char * id | |
loop variable More... | |
Expr * lo | |
Expr * hi | |
struct act_chp_lang * body | |
body to be replicated More... | |
} loop | |
replication construct More... | |
struct { | |
const char * nextlabel | |
next label More... | |
list_t * exit_conds | |
struct act_chp_lang * body | |
fragment body More... | |
struct act_chp_lang * next | |
next fragment More... | |
} frag | |
HSE fragments. More... | |
} | u |
Data structure for the chp sub-language body.
struct { ... } act_chp_lang::assign |
assignment statement id := e
struct act_chp_lang* act_chp_lang::body |
body to be replicated
fragment body
ActId* act_chp_lang::chan |
channel for communication
list_t* act_chp_lang::cmd |
a list of act_chp_lang_t pointers
struct { ... } act_chp_lang::comm |
used for send/recv
unsigned int act_chp_lang::convert |
0 = nothing, 1 = bool(.), 2 = int(.)
Expr* act_chp_lang::e |
expression on the RHS
expression to be sent
list_t* act_chp_lang::exit_conds |
list of exit conditions, Expr * (boolean expr) + char * (ID)
unsigned int act_chp_lang::flavor |
0 = blank, 1 = up, 2 = down; used for explicit two-phase CHP
struct { ... } act_chp_lang::frag |
HSE fragments.
struct { ... } act_chp_lang::func |
currently only used for log(..)
act_chp_gc_t* act_chp_lang::gc |
loop or select; also used for a do-loop, where there is exactly one gc
Expr * act_chp_lang::hi |
ActId* act_chp_lang::id |
variable on the LHS
the name of the instance
const char* act_chp_lang::id |
loop variable
const char* act_chp_lang::label |
label for this item, normally NULL
Expr* act_chp_lang::lo |
struct { ... } act_chp_lang::loop |
replication construct
struct { ... } act_chp_lang::macro |
macro call
mstring_t* act_chp_lang::name |
function name
the macro name
struct act_chp_lang* act_chp_lang::next |
next fragment
const char* act_chp_lang::nextlabel |
next label
list_t* act_chp_lang::rhs |
the argument list, list of Expr *
arguments, a list of act_func_arguments
struct { ... } act_chp_lang::semi_comma |
used for comma and semicolon
void* act_chp_lang::space |
this space for rent!
int act_chp_lang::type |
this is taken from act_chp_lang_type
union { ... } act_chp_lang::u |
ActId* act_chp_lang::var |
variable to be assigned