RoseWireClassesImpl.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Barth, September 5, 1985 6:37:22 pm PDT
Spreitzer, September 11, 1985 10:03:48 pm PDT
DIRECTORY RoseWireClasses, RoseWireTypes;
RoseWireClassesImpl: CEDAR PROGRAM
IMPORTS
EXPORTS RoseWireClasses =
BEGIN OPEN RoseWireTypes, RoseWireClasses;
boolSuperClass: RoseWireSuperClass ← NEW[RoseWireSuperClassRec ← [
GetType: BoolGetType,
ListFormats: BoolListFormats,
GetFormat: BoolGetFormat,
SelectorOffset: BoolSelectorOffset,
SubType: NIL,
SubClass: NIL,
Bits: BoolBits,
MesaRepresentation: BoolMesaRepresentation,
MesaRepAux: NIL,
CreateUntypedInstance: NIL,
flavor: simple]];
boolClass: RoseWireClass ← NEW[RoseWireClassRec ← [
structure: atom,
dereference: FALSE,
addressContaining: FALSE,
classData: NIL,
super: boolSuperClass]];
boolType: RoseWireType ← NEW[RoseWireTypeRec ← [
class: boolClass,
typeData: NIL,
length: 0,
other: NIL]];
GetBool: PUBLIC PROC RETURNS [RoseWireClass] = {RETURN[boolClass]};
BoolGetType: PROC [rwc: RoseWireClass, wire: Wire] RETURNS [rwt: RoseWireType] = {RETURN[boolType]};
BoolListFormats: PROC [rwt: RoseWireType] RETURNS [lor: LOR] = {ERROR};
BoolGetFormat: PROC [rwt: RoseWireType, formatName: ROPE] RETURNS [format: Format] = {ERROR};
BoolSelectorOffset: PROC [rwt: RoseWireType, select: Selector] RETURNS [dBits: NAT] = {ERROR};
BoolBits: PROC [rwt: RoseWireType] RETURNS [n: INT] = {RETURN[1]};
BoolMesaRepresentation: PROC [rwc: RoseWireClass] RETURNS [mesa: Mesa] = {
mesa ← [mesa: "BOOL"]};
END.