<<>> <> <> <> <> DIRECTORY CirioTypes USING[BasicTypeInfo, CompilerContext, Node, Type], RefTab USING [Ref]; CNumericTypes: CEDAR DEFINITIONS = BEGIN CC: TYPE = CirioTypes.CompilerContext; BasicTypeInfo: TYPE = CirioTypes.BasicTypeInfo; <> NumericDescriptor: TYPE = REF NumericDescriptorBody; NumericDescriptorBody: TYPE = RECORD[ primary: PrimaryTag, secondary: SecondaryTag _ null, enumerationConstants: RefTab.Ref]; PrimaryTag: TYPE = {signed, unsigned, float, double, longDouble}; SecondaryTag: TYPE = {character, shortInteger, integer, enumeration, longInteger, null}; <<>> CreateNumericType: PROC[desc: NumericDescriptor, cc: CC, bti: BasicTypeInfo] RETURNS[CirioTypes.Type]; <> GetDescriptorFromCNumericType: PUBLIC PROC[type: CirioTypes.Type, cc: CC] RETURNS[NumericDescriptor]; CreateNumericNode: PROC[type: CirioTypes.Type, rep: REF ANY] RETURNS[CirioTypes.Node]; <> END..