package jetbrains.mps.baseLanguage.tuples.typesystem; /*Generated by MPS */ import jetbrains.mps.lang.typesystem.runtime.BaseHelginsDescriptor; import jetbrains.mps.lang.typesystem.runtime.InferenceRule_Runtime; import jetbrains.mps.lang.typesystem.runtime.NonTypesystemRule_Runtime; import jetbrains.mps.lang.typesystem.runtime.SubtypingRule_Runtime; import jetbrains.mps.lang.typesystem.runtime.ComparisonRule_Runtime; import jetbrains.mps.lang.typesystem.runtime.InequationReplacementRule_Runtime; public class TypesystemDescriptor extends BaseHelginsDescriptor { public TypesystemDescriptor() { { InferenceRule_Runtime inferenceRule = new typeof_IndexedTupleLiteral_InferenceRule(); this.myInferenceRules.add(inferenceRule); } { InferenceRule_Runtime inferenceRule = new typeof_IndexedTupleMemberAccessExpression_InferenceRule(); this.myInferenceRules.add(inferenceRule); } { InferenceRule_Runtime inferenceRule = new typeof_NamedTupleComponentAccessOperation_InferenceRule(); this.myInferenceRules.add(inferenceRule); } { InferenceRule_Runtime inferenceRule = new typeof_NamedTupleLiteral_InferenceRule(); this.myInferenceRules.add(inferenceRule); } { NonTypesystemRule_Runtime nonTypesystemRule = new check_NamedTupleDeclaration_extends_NonTypesystemRule(); this.myNonTypesystemRules.add(nonTypesystemRule); } { NonTypesystemRule_Runtime nonTypesystemRule = new check_NamedTupleType_NonTypesystemRule(); this.myNonTypesystemRules.add(nonTypesystemRule); } { NonTypesystemRule_Runtime nonTypesystemRule = new check_TupleComponentIsInScope_NonTypesystemRule(); this.myNonTypesystemRules.add(nonTypesystemRule); } { SubtypingRule_Runtime subtypingRule = new NamedTuple_subtypeOf_extended_SubtypingRule(); this.mySubtypingRules.add(subtypingRule); } { SubtypingRule_Runtime subtypingRule = new NamedTuple_subtypeOf_implemented_interfaces_SubtypingRule(); this.mySubtypingRules.add(subtypingRule); } { SubtypingRule_Runtime subtypingRule = new Tuple_classifier_supertypeOf_indexedTupleType_SubtypingRule(); this.mySubtypingRules.add(subtypingRule); } { SubtypingRule_Runtime subtypingRule = new indexedTupleType_supertypeOf_namedTupleType_SubtypingRule(); this.mySubtypingRules.add(subtypingRule); } { SubtypingRule_Runtime subtypingRule = new namedTupleDeclaration_ClassifierType_subtypeOf_namedTupleType_SubtypingRule(); this.mySubtypingRules.add(subtypingRule); } { SubtypingRule_Runtime subtypingRule = new namedTupleDeclaration_ClassifierType_supertypeOf_namedTupleType_SubtypingRule(); this.mySubtypingRules.add(subtypingRule); } { ComparisonRule_Runtime comparisonRule = new comparable_IndexedTupleType_Object_ComparisonRule(); this.myComparisonRules.add(comparisonRule); } { ComparisonRule_Runtime comparisonRule = new comparable_NamedTupleType_Object_ComparisonRule(); this.myComparisonRules.add(comparisonRule); } { InequationReplacementRule_Runtime eliminationRule = new indexedTuple_assignableTo_indexedTuple_InequationReplacementRule(); this.myInequationReplacementRules.add(eliminationRule); } { InequationReplacementRule_Runtime eliminationRule = new namedTuple_assignableTo_namedTuple_InequationReplacementRule(); this.myInequationReplacementRules.add(eliminationRule); } } }