There is compiler support for enumerated value types, that map directly to the Phantasma VM enum type.
// NOTE - like other custom types, it is declared outside the scope of a contractenumMyEnum { A =0, B =1, C =2}// if the numbers are sequential, it is ok to ommit them, eg://enum MyEnum { A, B, C}contract test { global state: MyEnum;constructor(owner:address) { state :=MyEnum.B; }publicgetValue():MyEnum {return state; } }