Changeset 03ac869 for libcfa/src/enum.hfa
- Timestamp:
- May 8, 2024, 4:41:33 PM (2 months ago)
- Branches:
- master
- Children:
- 41c8312
- Parents:
- 0843ba6
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/enum.hfa
r0843ba6 r03ac869 7 7 }; 8 8 9 forall(E| Bounded( E, T)) trait Serial {9 forall(E| Bounded(T, E)) trait Serial { 10 10 unsigned fromInstance(E e); 11 11 E fromInt(unsigned i); … … 15 15 16 16 // Opague Enum + TypedEnum 17 forall(E | Serial( E, T)) trait CfaEnum {17 forall(E | Serial(T, E)) trait CfaEnum { 18 18 char * labelE(E e); 19 19 unsigned int posE(E e); 20 20 }; 21 21 22 forall(E | CfaEnum(E, T)) trait TypedEnum {22 forall(E| CfaEnum(T, E)) trait TypedEnum { 23 23 T valueE(E e); 24 24 }; 25 26 forall(E | TypedEnum(E, T)) {27 // comparison28 int ?==?(E l, E r);29 int ?!=?(E l, E r);30 int ?!=?(E l, zero_t);31 int ?<?(E l, E r);32 int ?<=?(E l, E r);33 int ?>?(E l, E r);34 int ?>=?(E l, E r);35 36 // for testing; To be removed37 // char * typeEnumString(E e);38 char * typeEnumString(E e);39 }40 25 } 41 26 27 28 forall(T, E | TypedEnum(T, E)) { 29 // comparison 30 int ?==?(E l, E r); 31 int ?!=?(E l, E r); 32 int ?!=?(E l, zero_t); 33 int ?<?(E l, E r); 34 int ?<=?(E l, E r); 35 int ?>?(E l, E r); 36 int ?>=?(E l, E r); 37 }
Note: See TracChangeset
for help on using the changeset viewer.