FooRoseDefs.Mesa
Created from behavior class Foo's public wire prototype, having abstract
(FooPublicWire
(record
(fu
(sequence (fubit (atom) ()))
((variableWire TRUE))
)
(bar
(record
(true (atom) ())
(complement (atom) ())
)
((simpleDrive TRUE))
)
)
()
)
Created by Rosemary Translator 4.0.47 of September 19, 1985 9:40:57 pm PDT
Created for Spreitzer.pa
Created at September 19, 1985 9:41:51 pm PDT
Spreitzer, September 19, 1985 10:37:42 pm PDT
FooRoseDefs:
CEDAR
DEFINITIONS = {
FooPublicWireSimple:
TYPE =
MACHINE
DEPENDENT
RECORD [
fu(0:0..31): fuSimple,
fill1(2:0..13): [0 .. 16383],
bar(2:14..15): barSimple
];
fuSimple: TYPE = REF fuSimpleSequence;
fuSimpleSequence: TYPE = RECORD [elts: SEQUENCE length: NAT OF BOOL];
barSimple:
TYPE =
MACHINE
DEPENDENT
RECORD [
true(0:0..0): BOOL,
complement(0:1..1): BOOL
];
FooPublicWireSwitch:
TYPE =
MACHINE
DEPENDENT
RECORD [
fu(0): fuSwitch,
bar(2): barSwitch
];
fuSwitch: TYPE = REF fuSwitchSequence;
fuSwitchSequence: TYPE = RECORD [elts: SEQUENCE length: NAT OF SwitchVal];
SwitchVal: TYPE = RoseBehavior.SwitchVal;
barSwitch:
TYPE =
MACHINE
DEPENDENT
RECORD [
true(0): SwitchVal,
complement(1): SwitchVal
];
FooPublicWireDrive:
TYPE =
MACHINE
DEPENDENT
RECORD [
fu(0:0..3): Drive,
bar(0:4..7): Drive
];
Drive: TYPE = RoseBehavior.Drive;
FooFu, FooBar, FooBarTrue, FooBarComplement: RoseBehavior.PortPath;
}.