public Type return_type;
id initWithType Type rt;
deferred int namePartsLength;
void initializeOperators;
top_type.
protected void
binop int op_kind
argTypes (Type, Type) (at1, at2)
returnType Type rt;
initializeOperators.
protected void
monop int op_kind
argType Type at1
returnType Type rt;
initializeOperators.
public int operator;
BT_* thing.
public Type arg1;
id
initWithOperator int op
returnType Type rt
argType Type at;
Type arg2;
nil if this is a monop.
Meta meta;
top_type.
int namePartsLength;
tom.OutputStream writeFields tom.OutputStream s;
operator and arg1.
public Type arg2;
id
initWithOperator int op
returnType Type rt
argTypes (Type, Type) (at1, at2);
int namePartsLength;
tom.OutputStream writeFields tom.OutputStream s;
arg2.
Extension ext;
tom.MutableArray name_parts;
tom.MutableArray arguments;
arguments can be
one less than the number of name parts.
tom.MutableDictionary argument_singles;
self and cmd.
public ArgumentTuple return_names;
ArgumentSingle and Variable objects, or nil if
not set.
public mutable Expression postcondition;
public mutable Expression precondition;
id
init Type t
qualifiers int q
extension Extension e;
Extension extension;
ext.
Meta meta;
meta of the extension ext.
int namePartsLength;
void
addNamePart tom.String n
argument: Argument a = nil;
void addArgumentSingle ArgumentSingle a;
void addPrecondition Expression e pre !precondition;
void addPostcondition Expression e pre !postcondition;
void setReturnValueNames ArgumentTuple t;
ArgumentSingle (arg) argumentNamed tom.String name;
Variable localEntityNamed tom.String name;
name, or nil otherwise.
tom.Indexed arguments;
tom.Indexed name_parts;
Expression return_value;
return_names. Do not return a singleton
tuple. The default implementation simply returns nil.