|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: R T
Length: 1442 (0x5a2)
Types: TextFile
Names: »RULES_ADA«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
└─⟦6f12a12be⟧ »DATA«
└─⟦this⟧
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
└─⟦d65440be7⟧ »DATA«
└─⟦this⟧
with instanceCounter;
separate(expertSystem)
package body ruleManager is
type ruleStateArray is array(contextId, ruleId) of boolean;
ruleState : ruleStateArray := (others=>(others=>FALSE));
function isMasked(context : contextName; rule : ruleId) return boolean is
ctx : contextId := instanceCounter.contextNumber(context);
begin
if rule = 0 then
raise badRule;
end if;
if ctx = 0 then
raise badContext;
end if;
return (ruleState(ctx,rule));
end isMasked;
function isMasked(context : contextid; rule : ruleId) return boolean is
begin
if rule = 0 then
raise badRule;
end if;
if context = 0 then
raise badContext;
end if;
return (ruleState(context,rule));
end isMasked;
procedure mask(context : contextName; rule : ruleId) is
ctx : contextId := instanceCounter.contextNumber(context);
begin
if rule = 0 then
raise badRule;
end if;
if ctx = 0 then
raise badContext;
end if;
ruleState(ctx,rule) := TRUE;
end mask;
procedure unmask(context : contextName; rule : ruleId) is
ctx : contextId := instanceCounter.contextNumber(context);
begin
if rule = 0 then
raise badRule;
end if;
if ctx = 0 then
raise badContext;
end if;
ruleState(ctx,rule) := FALSE;
end unmask;
end ruleManager;