Using Set with Constants 2

Top 

Example code : Using Set with Constants 2

type

 TmyEnumType=(myEnumTypeA=5,myEnumTypeB=2,myEnumTypeC=9);  // (9 - 2)+ 1 = 8 elements

 

const

  myEnumTypeOrder:Array[1..3of TmyEnumType=(myEnumTypeA,myEnumTypeB,myEnumTypeC);

 

procedure TForm1.W3Button6Click(Sender: TObject);

var

 myEnumTypeVariable:TmyEnumType;

 

begin

  for myEnumTypeVariable in myEnumTypeOrder do

     begin

      // This code shows three messages in this secuence: 5, 2, 9

       WriteLn(IntToStr(Ord(myEnumTypeVariable))); // Sample code to show enum integer value

     end;

WriteLn(sLineBreak);

  for myEnumTypeVariable:=Low(TmyEnumType) to High(TmyEnumType) do

     begin

     // This code shows eight messages in this secuence: 2, 3, 4, 5, 6, 7, 8, 9

       WriteLn(IntToStr(Ord(myEnumTypeVariable))); // Sample code to show enum integer value

     end;

end;

5,2,9

2,3,4,5,6,7,8,9

 

JS output:

function W3Button6Click(Self, Sender$13) {

      var myEnumTypeVariable = 0;

      var a$57 = 0;

      for(a$57 = 1;a$57<=3;a$57++) {

         myEnumTypeVariable = myEnumTypeOrder[$Idx(a$57,1,3,"")];

         WriteLn((myEnumTypeVariable).toString());

      }

      WriteLn("\r\n");

      for(myEnumTypeVariable = 2;myEnumTypeVariable<=9;myEnumTypeVariable++) {

         WriteLn((myEnumTypeVariable).toString());

      }

   }

var myEnumTypeOrder = [5,2,9];

var TmyEnumType = { 5:"myEnumTypeA"2:"myEnumTypeB"9:"myEnumTypeC" };