immutable class TUP{T1,T2,T3,T4} < $HASH, $STR |
---|
$STR | $HASH | $IS_EQ |
attr t1:T1; |
---|
attr t2:T2; |
---|
attr t3:T3; |
---|
attr t4:T4; |
---|
attr t1:T1; |
---|
attr t2:T2; |
---|
attr t3:T3; |
---|
attr t4:T4; |
---|
create(at1:T1, at2:T2, at3:T3, at4:T4):SAME |
---|
elt_eq(e1,e2:ETP):BOOL .. Included as elt_eq2 |
---|
elt_eq(e1,e2:ETP):BOOL .. Included as elt_eq3 |
---|
elt_eq(e1,e2:ETP):BOOL .. Included as elt_eq4 |
---|
elt_hash(e:$OB):INT .. Included as elt_hash2 |
---|
elt_hash(e:$OB):INT .. Included as elt_hash3 |
---|
elt_hash(e:$OB):INT .. Included as elt_hash4 |
---|
elt_lt(e1,e2:ETP):BOOL .. Included as elt_lt2 |
---|
elt_lt(e1,e2:ETP):BOOL .. Included as elt_lt3 |
---|
elt_lt(e1,e2:ETP):BOOL .. Included as elt_lt4 |
---|
elt_nil:ETP .. Included as elt_nil2 |
---|
elt_nil:ETP .. Included as elt_nil3 |
---|
elt_nil:ETP .. Included as elt_nil4 |
---|
hash:INT |
---|
**** | A simple hash value computed from the hash values of the components. For this to work, these must either be value types which define hash values or reference types. |
is_elt_nil(e:ETP):BOOL .. Included as is_elt_nil2 |
---|
is_elt_nil(e:ETP):BOOL .. Included as is_elt_nil3 |
---|
is_elt_nil(e:ETP):BOOL .. Included as is_elt_nil4 |
---|
is_eq(e:SAME):BOOL |
---|
**** | True if the components of self and `e' are equal. |
is_eq(arg: $OB): BOOL .. Included as is_eq |
---|
**** | Overloaded version of the is_eq routine that works with an argument of any type. If the type of the 'arg' is not the same as they type of 'self' then return false. Otherwise, deletegate to the 'real' is_eq(SAME):BOOL routine |
str: STR |
---|
elt_eq(e1,e2:ETP):BOOL .. Included as elt_eq |
---|
elt_hash(e:$OB):INT .. Included as elt_hash |
---|
elt_lt(e1,e2:ETP):BOOL .. Included as elt_lt |
---|
elt_nil:ETP .. Included as elt_nil |
---|
is_elt_nil(e:ETP):BOOL .. Included as is_elt_nil |
---|