|
|
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: 8192 (0x2000)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Generic_Expression, seg_04a343
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Alias;
with Output_Stream;
with Slot;
generic
type User_Defined_Operators is (<>);
with function User_Defined_Unary_Evaluate
(Using_Operator : User_Defined_Operators;
Right : Slot.Object) return Slot.Object is <>;
with function User_Defined_Binary_Evaluate
(Using_Operator : User_Defined_Operators;
Left, Right : Slot.Object) return Slot.Object is <>;
with function User_Defined_Image
(Op : User_Defined_Operators) return String is
User_Defined_Operators'Image;
package Generic_Expression is
type Object is private;
Null_Expression : constant Object;
-- primary expression constructors
function Value (For_Object : Slot.Object) return Object;
function Value (For_Integer : Integer) return Object;
function Value (For_Boolean : Boolean) return Object;
function Value (For_Float : Float) return Object;
function Value (For_Character : Character) return Object;
function Value (For_Duration : Duration) return Object;
function Value (For_String : String) return Object;
function Value (For_Alias : Alias.Name) return Object;
-- user defined expression constructors
generic
Operator : User_Defined_Operators;
function Unary_User_Expression (Right : Object) return Object;
generic
Operator : User_Defined_Operators;
function Binary_User_Expression (Left, Right : Object) return Object;
-- general operations
function Evaluate (The_Expression : Object) return Slot.Object;
procedure Put (The_Object : Object; Where : Output_Stream.Object);
package System_Defined_Expression is
function "+" (Left, Right : Object) return Object;
function "-" (Left, Right : Object) return Object;
function "*" (Left, Right : Object) return Object;
function "/" (Left, Right : Object) return Object;
function "&" (Left, Right : Object) return Object;
function "-" (Right : Object) return Object;
function "abs" (Right : Object) return Object;
end System_Defined_Expression;
Illegal_Operation : exception;
private
type Sub_Classes is (Primary, Unary, Binary, Undefined);
type Object_Structure (Sub_Class : Sub_Classes);
type Object is access Object_Structure;
Null_Expression : constant Object := null;
end Generic_Expression;
nblk1=7
nid=5
hdr6=8
[0x00] rec0=1e rec1=00 rec2=01 rec3=022
[0x01] rec0=00 rec1=00 rec2=06 rec3=010
[0x02] rec0=1a rec1=00 rec2=07 rec3=064
[0x03] rec0=12 rec1=00 rec2=03 rec3=000
[0x04] rec0=08 rec1=00 rec2=05 rec3=000
[0x05] rec0=42 rec1=02 rec2=35 rec3=402
[0x06] rec0=9a rec1=d4 rec2=00 rec3=002
tail 0x2174ea6f8866e7fc4d16e 0x42a00088462063c03
Free Block Chain:
0x5: 0000 00 02 03 fc 80 0d 73 73 69 6f 6e 2e 4f 62 6a 65 ┆ ssion.Obje┆
0x2: 0000 00 04 00 10 80 0d 20 72 65 74 75 72 6e 20 45 78 ┆ return Ex┆
0x4: 0000 00 00 03 fc 80 03 73 20 20 03 00 31 20 20 20 20 ┆ s 1 ┆