ACT Library
|
Used to represent the built-in ACT Paramterized chan(foo) type or chan(foo,foo) bi-directional/exchange channel. More...
#include <types.h>
Public Member Functions | |
InstType * | datatype () const |
InstType * | acktype () const |
int | isBiDirectional () |
Public Member Functions inherited from Type | |
Type () | |
~Type () | |
constructor | |
virtual const char * | getName ()=0 |
destructor | |
virtual Type * | Expand (ActNamespace *ns, Scope *s, int nt, inst_param *ip)=0 |
virtual int | isEqual (const Type *t) const =0 |
Private Member Functions | |
const char * | getName () |
Chan * | Expand (ActNamespace *ns, Scope *s, int nt, inst_param *u) |
int | isEqual (const Type *t) const |
Private Attributes | |
const char * | name |
the string name for the type | |
InstType * | p |
data type for expanded channel | |
InstType * | ack |
second data type for exchange channel | |
Friends | |
class | TypeFactory |
Additional Inherited Members | |
Public Types inherited from Type | |
enum | direction { NONE = 0 , IN = 1 , OUT = 2 , INOUT = 3 , OUTIN = 4 } |
Static Public Member Functions inherited from Type | |
static void | Init () |
static const char * | dirstring (direction d) |
Used to represent the built-in ACT Paramterized chan(foo) type or chan(foo,foo) bi-directional/exchange channel.
|
inline |
|
inline |
|
privatevirtual |
Expand the channel type. The number of tempate parameters is either 1 (normal channel) or 2 (bi-directional/exchange channel).
ns | is the namespace |
s | is the scope |
nt | is the number of template parameters |
u | holds type parameters |
Implements Type.
|
privatevirtual |
Implements Type.
|
inline |
|
privatevirtual |
Implements Type.
|
friend |
|
private |
second data type for exchange channel
|
private |
the string name for the type
|
private |
data type for expanded channel