|
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 - metrics - download
Length: 5120 (0x1400) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Our_Tree, seg_049425
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Our_Value, Ext_String, Lex; use Our_Value, Lex; package body Our_Tree is function Create return Var_Tree is begin return new Node; end Create; procedure Set_Value (Root : in out Var_Tree; Val : Var_Value; Left, Right : out Var_Tree) is begin Set_Value (Root.Value, Val); Left := Root.Left; Right := Root.Right; end Set_Value; function Get_Value (Tree : Var_Tree) return Our_Value.Var_Value is Token : Lex.Token; Local_Boolean : [expression] := Boolean; Local_Integer : [expression] := Integer; Local_String : [expression] := Var_String; Value : Var_Value (Type_Value); Boolean1, Boolean2 : Var_Value (Boolean); Integer1, Integer2 : Var_Value (Integer); String1, String2 : Var_Value (Var_String); begin case Get_Type (Tree.Value) is when Undefined => raise Type_Conflict; when Type_Value => Our_Value.Set_Value (Value, Get_Value (Tree.Value)); return Value; when Type_Token => Token := Get_Value (Tree.Value); case Token is when Identifier => Set_Value (Value, Get_Value (Tree.Right)); return Value; when Non => Set_Value (Boolean1, Get_Value (Tree.Right)); Local_Boolean := Op (Token, Boolean1); Set_Value (Boolean1, Local_Boolean); return Boolean1; when Et => [statement] when Ou => [statement] end case; when Type_Boolean => Boolean1 := Get_Value (Tree.Value); when Type_Integer => Integer1 := Get_Value (Tree.Value); when Type_String => Ext_String.Copy (String1, Get_Value (Tree.Value)); end case; return Tree.Value; end Get_Value; end Our_Tree;
nblk1=4 nid=0 hdr6=8 [0x00] rec0=23 rec1=00 rec2=01 rec3=046 [0x01] rec0=02 rec1=00 rec2=02 rec3=02e [0x02] rec0=1e rec1=00 rec2=03 rec3=040 [0x03] rec0=0e rec1=00 rec2=04 rec3=000 tail 0x21546ab0e865b97d10385 0x42a00088462060003