class AM_CHAR_CONST < $AM_CONST
****
Representation of constant CHAR objects. Uses `bval' if the program being compiled uses the same sized characters as the compiler, val otherwise. Can tell by checking whether `val' is void.


Ancestors
$AM_CONST $AM_EXPR $HASH $IS_EQ
$AM $PROG_ERR AM_CONST AM_EXPR
AM



Public


Readable Attributes
attr bval:CHAR;
**** The character, if the compiled program uses the same representation as the compiler.
attr source:SFILE_ID;
**** Information identifying the origin of a node in Sather source. It encodes the file and the character offset of the originating construct.
attr tp_at:$TP;
attr val:INTI;
**** The value of the char, if non-void.

Writable Attributes
attr bval:CHAR;
**** The character, if the compiled program uses the same representation as the compiler.
attr source:SFILE_ID;
**** Information identifying the origin of a node in Sather source. It encodes the file and the character offset of the originating construct.
attr tp_at:$TP;
attr val:INTI;
**** The value of the char, if non-void.

Features
can_invar_opt(prog:PROG):BOOL
copy:$AM_EXPR
create(t:AS_CHAR_LIT_EXPR):SAME
**** Create a new character constant for the tree form `t'. Must change this if the target has a different format.
create(source:SFILE_ID):SAME
**** A new object for the location `source' with default initialization.
hash:INT
is_eq(a:$OB):BOOL
is_neq(a:$OB):BOOL
tp:$TP