<> <> <> <> DIRECTORY CedarBaseContext, SaffronAG6Def, CedarBaseMisc, ThreeC4Support, SaffronATDef, CedarBaseType; SaffronMakeTypeIntervalImpl: CEDAR PROGRAM IMPORTS CedarBaseMisc, ThreeC4Support EXPORTS SaffronAG6Def= BEGIN OPEN CedarBaseContext, SaffronAG6Def, CedarBaseMisc, ThreeC4Support, SaffronATDef, CedarBaseType; IntervalccProdMakeTypeInterval: PUBLIC PROC[ref: REF ANY, typeIndex: TypeIndex, localContext: LocalContext, ribContext: RibContext, typeGraph: TypeGraph] RETURNS[temp0: TypeNode, temp1: TypeBounds, temp2: LocalContext, temp3: TypeGraph] = BEGIN tree: IntervalNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: IntervalccProdData _ NARROW[tree.data]; [temp0, temp1, temp2, temp3] _ treeData.Bounds.procs.MakeTypeBounds[treeData.Bounds, True[], True[], typeIndex, localContext, ribContext, typeGraph]; END END; IntervalcoProdMakeTypeInterval: PUBLIC PROC[ref: REF ANY, typeIndex: TypeIndex, localContext: LocalContext, ribContext: RibContext, typeGraph: TypeGraph] RETURNS[temp0: TypeNode, temp1: TypeBounds, temp2: LocalContext, temp3: TypeGraph] = BEGIN tree: IntervalNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: IntervalcoProdData _ NARROW[tree.data]; [temp0, temp1, temp2, temp3] _ treeData.Bounds.procs.MakeTypeBounds[treeData.Bounds, True[], False[], typeIndex, localContext, ribContext, typeGraph]; END END; IntervalocProdMakeTypeInterval: PUBLIC PROC[ref: REF ANY, typeIndex: TypeIndex, localContext: LocalContext, ribContext: RibContext, typeGraph: TypeGraph] RETURNS[temp0: TypeNode, temp1: TypeBounds, temp2: LocalContext, temp3: TypeGraph] = BEGIN tree: IntervalNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: IntervalocProdData _ NARROW[tree.data]; [temp0, temp1, temp2, temp3] _ treeData.Bounds.procs.MakeTypeBounds[treeData.Bounds, False[], True[], typeIndex, localContext, ribContext, typeGraph]; END END; IntervalooProdMakeTypeInterval: PUBLIC PROC[ref: REF ANY, typeIndex: TypeIndex, localContext: LocalContext, ribContext: RibContext, typeGraph: TypeGraph] RETURNS[temp0: TypeNode, temp1: TypeBounds, temp2: LocalContext, temp3: TypeGraph] = BEGIN tree: IntervalNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: IntervalooProdData _ NARROW[tree.data]; [temp0, temp1, temp2, temp3] _ treeData.Bounds.procs.MakeTypeBounds[treeData.Bounds, False[], False[], typeIndex, localContext, ribContext, typeGraph]; END END; END..