|
|
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: 6144 (0x1800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package Condition, seg_02accb
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Output_Stream;
package Condition is
Max_Term_Count : constant := 5;
subtype Term_Count is Natural range 0 .. Max_Term_Count;
type Object (Count : Term_Count := 0) is private;
type Alias is (A, B, C, D, E, F, G, H, I, J, K, L, M,
N, O, P, Q, R, S, T, U, V, W, X, Y, Z);
-- value condition
function Is_Equal (Value : Integer) return Condition.Object;
function Is_Less (Value : Integer) return Condition.Object;
function Is_Less_Or_Equal (Value : Integer) return Condition.Object;
function Is_Greater (Value : Integer) return Condition.Object;
function Is_Greater_Or_Equal (Value : Integer) return Condition.Object;
function Is_Different (Value : Integer) return Condition.Object;
-- alias condition
function Is_Equal (Value : Alias) return Condition.Object;
function Is_Less (Value : Alias) return Condition.Object; function Is_Less_Or_Equal (Value : Alias) return Condition.Object;
function Is_Greater (Value : Alias) return Condition.Object;
function Is_Greater_Or_Equal (Value : Alias) return Condition.Object;
function Is_Different (Value : Alias) return Condition.Object;
-- miscellaneous condition
function Is_Any return Condition.Object;
function Say_It_Is (Object : Alias) return Condition.Object;
-- others
function "and" (Left, Right : Condition.Object) return Condition.Object;
function Match (Value : Integer; Against : Condition.Object) return Boolean;
procedure Put (The_Condition : Object; Where : Output_Stream.Object);
private
type Operators is (
-- value operators
Is_Equal, Is_Less, Is_Less_Or_Equal,
Is_Greater, Is_Greater_Or_Equal, Is_Different,
-- alias operators
Is_Equal_To_Alias, Is_Less_Than_Alias,
Is_Less_Or_Equal_Than_Alias, Is_Greater_Than_Alias,
Is_Greater_Or_Equal_Than_Alias, Is_Different_Than_Alias,
-- miscellaneous operators
Is_Any, Say_It_Is);
subtype Value_Operators is Operators range Is_Equal .. Is_Different;
subtype Alias_Operators is
Operators range Is_Equal_To_Alias .. Is_Different_Than_Alias;
subtype Miscellaneous_Operators is Operators range Is_Any .. Say_It_Is;
type Term is
record
Operator : Operators;
Operand : Integer;
end record;
type Terms is array (Positive range <>) of Term;
type Object (Count : Term_Count := 0) is
record
Value : Terms (1 .. Count);
end record;
end Condition;
nblk1=5
nid=5
hdr6=6
[0x00] rec0=19 rec1=00 rec2=01 rec3=002
[0x01] rec0=19 rec1=00 rec2=02 rec3=010
[0x02] rec0=1a rec1=00 rec2=03 rec3=000
[0x03] rec0=1c rec1=00 rec2=02 rec3=01c
[0x04] rec0=02 rec1=00 rec2=04 rec3=000
tail 0x21723e79683e565206c14 0x42a00088462063c03
Free Block Chain:
0x5: 0000 00 04 00 12 80 0f 2c 20 49 73 5f 47 72 65 61 74 ┆ , Is_Great┆
0x4: 0000 00 00 00 1c 80 05 63 6f 72 64 3b 05 00 0e 65 6e ┆ cord; en┆