ACT Library
Loading...
Searching...
No Matches
Public Attributes | List of all members
act_chp_lang Class Reference

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
 

Detailed Description

Data structure for the chp sub-language body.

Member Data Documentation

◆ 

struct { ... } act_chp_lang::assign

assignment statement id := e

◆ body

struct act_chp_lang* act_chp_lang::body

body to be replicated

fragment body

◆ chan

ActId* act_chp_lang::chan

channel for communication

◆ cmd

list_t* act_chp_lang::cmd

a list of act_chp_lang_t pointers

◆ 

struct { ... } act_chp_lang::comm

used for send/recv

◆ convert

unsigned int act_chp_lang::convert

0 = nothing, 1 = bool(.), 2 = int(.)

◆ e

Expr* act_chp_lang::e

expression on the RHS

expression to be sent

◆ exit_conds

list_t* act_chp_lang::exit_conds

list of exit conditions, Expr * (boolean expr) + char * (ID)

◆ flavor

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(..)

◆ gc

act_chp_gc_t* act_chp_lang::gc

loop or select; also used for a do-loop, where there is exactly one gc

◆ hi

Expr * act_chp_lang::hi

◆ id [1/2]

ActId* act_chp_lang::id

variable on the LHS

the name of the instance

◆ id [2/2]

const char* act_chp_lang::id

loop variable

◆ label

const char* act_chp_lang::label

label for this item, normally NULL

◆ lo

Expr* act_chp_lang::lo

◆ 

struct { ... } act_chp_lang::loop

replication construct

◆ 

struct { ... } act_chp_lang::macro

macro call

◆ name

mstring_t* act_chp_lang::name

function name

the macro name

◆ next

struct act_chp_lang* act_chp_lang::next

next fragment

◆ nextlabel

const char* act_chp_lang::nextlabel

next label

◆ rhs

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

◆ space

void* act_chp_lang::space

this space for rent!

◆ type

int act_chp_lang::type

this is taken from act_chp_lang_type

◆ 

union { ... } act_chp_lang::u

◆ var

ActId* act_chp_lang::var

variable to be assigned


The documentation for this class was generated from the following file: