|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 6144 (0x1800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Test_Action_List2, seg_04460d
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Compiler_Action, Dynamic_Value, Dynamic_Node, Text_Io; procedure Test_Action_List2 is Alist : Compiler_Action.Acces_List; D_V1, D_V2, D_V3 : Dynamic_Value.Object; D_A1, D_A2, D_A3 : Compiler_Action.Object; Dnc1 : Dynamic_Node.Object; -- pour une seconde action cond D_V4, D_V5, D_V6 : Dynamic_Value.Object; D_A4, D_A5, D_A6 : Compiler_Action.Object; Dnc2 : Dynamic_Node.Object; -- pour une troisime action cond D_V7, D_V8, D_V9 : Dynamic_Value.Object; D_A7, D_A8, D_A9 : Compiler_Action.Object; Dnc3 : Dynamic_Node.Object; use Dynamic_Node; use Compiler_Action; begin Compiler_Action.Create_Action (D_A1, Compiler_Action.Conditional_Action); -- premiere condition Dynamic_Value.Set_Value (D_V1, True); Dynamic_Node.Create_Value (Dnc1); Dynamic_Node.Set_Value (Dnc1, D_V1); -- bloc vrai Dynamic_Value.Set_Value (D_V2, "si 1 true"); Compiler_Action.Create_Action (D_A2, Write_Action); Compiler_Action.Set_Argument (D_A2, Write_Argument, D_V2); -- bloc faux Dynamic_Value.Set_Value (D_V3, "si 1 false"); Compiler_Action.Create_Action (D_A3, Write_Action); Compiler_Action.Set_Argument (D_A3, Write_Argument, D_V3); -- creation liste action Compiler_Action.Create_List (Alist); Compiler_Action.Set_Argument (D_A1, Condition_Argument, Dnc1); Compiler_Action.Set_Argument (D_A1, True_Component, D_A2); Compiler_Action.Set_Argument (D_A1, False_Component, D_A3); Compiler_Action.Add_Action (Alist, D_A1); -- compiler_action.evaluate(alist); -- compiler_action.execute(alist); -- creation et ajout d'une cond imbrique Compiler_Action.Create_Action (D_A4, Compiler_Action.Conditional_Action); Dynamic_Value.Set_Value (D_V4, True); Dynamic_Node.Create_Value (Dnc2); Dynamic_Node.Set_Value (Dnc2, D_V4); -- bloc vrai Dynamic_Value.Set_Value (D_V5, "si 1.1 true"); Compiler_Action.Create_Action (D_A5, Write_Action); Compiler_Action.Set_Argument (D_A5, Write_Argument, D_V5); -- bloc faux Dynamic_Value.Set_Value (D_V6, "si 1.1 false"); Compiler_Action.Create_Action (D_A6, Write_Action); Compiler_Action.Set_Argument (D_A6, Write_Argument, D_V6); Compiler_Action.Set_Argument (D_A4, Condition_Argument, Dnc2); Compiler_Action.Set_Argument (D_A4, True_Component, D_A5); Compiler_Action.Set_Argument (D_A4, False_Component, D_A6); --** creation d'une 3e action cond Compiler_Action.Create_Action (D_A7, Compiler_Action.Conditional_Action); Dynamic_Value.Set_Value (D_V7, True); Dynamic_Node.Create_Value (Dnc3); Dynamic_Node.Set_Value (Dnc3, D_V7); -- bloc vrai Dynamic_Value.Set_Value (D_V8, "si 1.2 true"); Compiler_Action.Create_Action (D_A8, Write_Action); Compiler_Action.Set_Argument (D_A8, Write_Argument, D_V8); -- bloc faux Dynamic_Value.Set_Value (D_V9, "si 1.2 false"); Compiler_Action.Create_Action (D_A9, Write_Action); Compiler_Action.Set_Argument (D_A9, Write_Argument, D_V9); Compiler_Action.Set_Argument (D_A7, Condition_Argument, Dnc3); Compiler_Action.Set_Argument (D_A7, True_Component, D_A8); Compiler_Action.Set_Argument (D_A7, False_Component, D_A9); --** ajout des composants l'action prcedente Compiler_Action.Set_Argument (D_A1, True_Component, D_A4); Compiler_Action.Set_Argument (D_A1, False_Component, D_A7); -- evaluation exec de la liste Compiler_Action.Evaluate (Alist); Compiler_Action.Execute (Alist); -- condition fausse a executer Dynamic_Value.Set_Value (D_V1, False); -- a voir Compiler_Action.Evaluate (Alist); Compiler_Action.Execute (Alist); end Test_Action_List2;
nblk1=5 nid=5 hdr6=8 [0x00] rec0=20 rec1=00 rec2=01 rec3=034 [0x01] rec0=1c rec1=00 rec2=04 rec3=030 [0x02] rec0=19 rec1=00 rec2=03 rec3=010 [0x03] rec0=1f rec1=00 rec2=02 rec3=000 [0x04] rec0=80 rec1=00 rec2=00 rec3=100 tail 0x215402fe6863e71bd1285 0x42a00088462060003 Free Block Chain: 0x5: 0000 00 00 03 fc 80 11 61 32 2c 77 72 69 74 65 5f 61 ┆ a2,write_a┆