use of cz.cuni.mff.d3s.trupple.parser.identifierstable.types.complex.OrdinalDescriptor in project TrufflePascal by Aspect26.
the class FatalError method SubrangeType.
OrdinalDescriptor SubrangeType() {
OrdinalDescriptor ordinal;
ConstantDescriptor lowerBound = Constant();
Expect(26);
ConstantDescriptor upperBound = Constant();
ordinal = factory.createSimpleOrdinalDescriptor(lowerBound, upperBound);
return ordinal;
}
use of cz.cuni.mff.d3s.trupple.parser.identifierstable.types.complex.OrdinalDescriptor in project TrufflePascal by Aspect26.
the class FatalError method RecordVariantPart.
void RecordVariantPart() {
Expect(23);
OrdinalDescriptor selectorType = RecordVariantSelector();
Expect(13);
List<ConstantDescriptor> caseConstants = RecordVariants();
factory.assertLegalsCaseValues(selectorType, caseConstants);
}
use of cz.cuni.mff.d3s.trupple.parser.identifierstable.types.complex.OrdinalDescriptor in project TrufflePascal by Aspect26.
the class FatalError method Ordinal.
OrdinalDescriptor Ordinal() {
OrdinalDescriptor ordinal;
ordinal = null;
if (isSubrange()) {
ordinal = SubrangeType();
} else if (StartOf(1)) {
TypeDescriptor typeDescriptor = Type();
ordinal = factory.castTypeToOrdinalType(typeDescriptor);
} else
SynErr(66);
return ordinal;
}
Aggregations