Commit f82ad822 authored by André Pacak's avatar André Pacak

check that record type contains the same labels as record term (checking for same length)

parent bd0db9af
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -66,7 +66,7 @@
</node>
<node concept="1JAXSW" id="75UymJIFIuu" role="2EAAKa">
<property role="TrG5h" value="c" />
<node concept="1SCrvP" id="75UymJIFIuR" role="1JAXS8" />
<node concept="1SCrvP" id="6UqcbF4u0HN" role="1JAXS8" />
</node>
</node>
<node concept="228e09" id="75UymJIFIsm" role="1SCrrM">
......
......@@ -8,6 +8,7 @@
<classNode dependClassName="RecordTypes_Checker.model.Typing_LookupFailureQuerySpecification" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_MatchFunFailureQuerySpecification" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_MatchRecordFailureQuerySpecification" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_RecordSameLengthFailureQuerySpecification" />
<classNode dependClassName="io.usethesource.capsule.Map" />
<classNode dependClassName="java.lang.Object" />
<classNode dependClassName="java.lang.String" />
......@@ -873,6 +874,73 @@
<classNode dependClassName="org.inca.core.runtime.plugin.MPSQuerySpecificationHints" />
<classNode extendsClassName="org.inca.core.runtime.plugin.MPSQuerySpecification" />
</dependency>
<dependency className="RecordTypes_Checker.model.Typing_RecordEntriesQuerySpecification">
<classNode dependClassName="RecordTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.lang.SuppressWarnings" />
<classNode dependClassName="java.util.ArrayList" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.HashSet" />
<classNode dependClassName="java.util.List" />
<classNode dependClassName="java.util.Set" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.SetSequence" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.api.ViatraQueryEngine" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.api.scope.QueryScope" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.exception.ViatraQueryException" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.PBody" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.PVariable" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.queries.QueryInitializationException" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.tuple.Tuples" />
<classNode dependClassName="org.inca.core.runtime.plugin.AbstractPQuery" />
<classNode dependClassName="org.inca.core.runtime.plugin.AbstractScope" />
<classNode dependClassName="org.inca.core.runtime.plugin.ConceptFeatureKey" />
<classNode dependClassName="org.inca.core.runtime.plugin.ConceptKey" />
<classNode dependClassName="org.inca.core.runtime.plugin.MPSGenericPatternMatcher" />
<classNode dependClassName="org.inca.core.runtime.plugin.MPSQuerySpecificationHints" />
<classNode extendsClassName="org.inca.core.runtime.plugin.MPSQuerySpecification" />
</dependency>
<dependency className="RecordTypes_Checker.model.Typing_RecordEntryCountQuerySpecification">
<classNode dependClassName="RecordTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_RecordEntriesQuerySpecification" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Integer" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.lang.SuppressWarnings" />
<classNode dependClassName="java.util.ArrayList" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.HashSet" />
<classNode dependClassName="java.util.List" />
<classNode dependClassName="java.util.Set" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.SetSequence" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.api.ViatraQueryEngine" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.api.scope.QueryScope" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.exception.ViatraQueryException" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.context.common.JavaTransitiveInstancesKey" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.PBody" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.PVariable" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.PatternMatchCounter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.queries.QueryInitializationException" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.tuple.Tuples" />
<classNode dependClassName="org.inca.core.runtime.plugin.AbstractPQuery" />
<classNode dependClassName="org.inca.core.runtime.plugin.AbstractScope" />
<classNode dependClassName="org.inca.core.runtime.plugin.ConceptKey" />
<classNode dependClassName="org.inca.core.runtime.plugin.MPSGenericPatternMatcher" />
<classNode dependClassName="org.inca.core.runtime.plugin.MPSQuerySpecificationHints" />
<classNode extendsClassName="org.inca.core.runtime.plugin.MPSQuerySpecification" />
</dependency>
<dependency className="RecordTypes_Checker.model.Typing_RecordSameLengthFailureQuerySpecification">
<classNode dependClassName="RecordTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_RecordSameLengthFailure_0_switchCommonQuerySpecification" />
......@@ -902,6 +970,7 @@
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Inequality" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter" />
......@@ -917,8 +986,13 @@
<dependency className="RecordTypes_Checker.model.Typing_RecordSameLengthFailure_0_switchCommonQuerySpecification">
<classNode dependClassName="RecordTypes_Checker.model.LType" />
<classNode dependClassName="RecordTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_RecordEntryCountQuerySpecification" />
<classNode dependClassName="RecordTypes_Checker.model.Typing_RequiredQuerySpecification" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Exception" />
<classNode dependClassName="java.lang.Integer" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Object" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.lang.SuppressWarnings" />
......@@ -932,10 +1006,14 @@
<classNode dependClassName="org.eclipse.viatra.query.runtime.api.ViatraQueryEngine" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.api.scope.QueryScope" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.exception.ViatraQueryException" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.context.common.JavaTransitiveInstancesKey" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.PBody" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.PVariable" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter" />
......
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-7y1d0oo9x9aaa5olbwqqjva1bksxjb2">
<files names="AnalysisResultAccess.java:ConstantDefinitions.java:LType.java:LTypeRecord.java:QuerySpecificationHints.java:Typing_AllvarsQuerySpecification.java:Typing_Allvars_0_switchCommonQuerySpecification.java:Typing_AsLTypeQuerySpecification.java:Typing_AsLTypeRecordQuerySpecification.java:Typing_AsLTypeRecord_0_switchCommonQuerySpecification.java:Typing_AsLTypeRecord_WrappedQuerySpecification.java:Typing_AsLType_0_switchCommonQuerySpecification.java:Typing_CheckErrorQuerySpecification.java:Typing_CheckQuerySpecification.java:Typing_Check_0_switchCommonQuerySpecification.java:Typing_InferQuerySpecification.java:Typing_Infer_0_switchCommonQuerySpecification.java:Typing_Infer_WrappedQuerySpecification.java:Typing_LookupFailureQuerySpecification.java:Typing_LookupFailure_0_switchCommonQuerySpecification.java:Typing_LookupQuerySpecification.java:Typing_Lookup_0_switchCommonQuerySpecification.java:Typing_MatchFunFailureQuerySpecification.java:Typing_MatchFunFailure_0_switchCommonQuerySpecification.java:Typing_MatchRecordFailureQuerySpecification.java:Typing_MatchRecordFailure_0_switchCommonQuerySpecification.java:Typing_RecordSameLengthFailureQuerySpecification.java:Typing_RecordSameLengthFailure_0_switchCommonQuerySpecification.java:Typing_RequiredQuerySpecification.java:Typing_Required_0_switchCommonQuerySpecification.java" />
<product version="3" modelHash="165kuhqrgdagnnh7kx2dq4c4zapa769">
<files names="AnalysisResultAccess.java:ConstantDefinitions.java:LType.java:LTypeRecord.java:QuerySpecificationHints.java:Typing_AllvarsQuerySpecification.java:Typing_Allvars_0_switchCommonQuerySpecification.java:Typing_AsLTypeQuerySpecification.java:Typing_AsLTypeRecordQuerySpecification.java:Typing_AsLTypeRecord_0_switchCommonQuerySpecification.java:Typing_AsLTypeRecord_WrappedQuerySpecification.java:Typing_AsLType_0_switchCommonQuerySpecification.java:Typing_CheckErrorQuerySpecification.java:Typing_CheckQuerySpecification.java:Typing_Check_0_switchCommonQuerySpecification.java:Typing_InferQuerySpecification.java:Typing_Infer_0_switchCommonQuerySpecification.java:Typing_Infer_WrappedQuerySpecification.java:Typing_LookupFailureQuerySpecification.java:Typing_LookupFailure_0_switchCommonQuerySpecification.java:Typing_LookupQuerySpecification.java:Typing_Lookup_0_switchCommonQuerySpecification.java:Typing_MatchFunFailureQuerySpecification.java:Typing_MatchFunFailure_0_switchCommonQuerySpecification.java:Typing_MatchRecordFailureQuerySpecification.java:Typing_MatchRecordFailure_0_switchCommonQuerySpecification.java:Typing_RecordEntriesQuerySpecification.java:Typing_RecordEntryCountQuerySpecification.java:Typing_RecordSameLengthFailureQuerySpecification.java:Typing_RecordSameLengthFailure_0_switchCommonQuerySpecification.java:Typing_RequiredQuerySpecification.java:Typing_Required_0_switchCommonQuerySpecification.java" />
</product>
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="687u1umiwy49egdujyz1uzx7z9606c7" />
<product version="3" modelHash="-4mpi09misgbbjpj3ednaen24tqdn3i4" />
......@@ -37,6 +37,7 @@ public class AnalysisResultAccess {
final ViatraQueryMatcher<IPatternMatch> evaluatorMatchFunFailure = EnginePool.getMatcher(Typing_MatchFunFailureQuerySpecification.instance(), AbstractScope.from(scope), true, ScatteredTimelyReteBackendFactory.INSTANCE);
final ViatraQueryMatcher<IPatternMatch> evaluatorMatchRecordFailure = EnginePool.getMatcher(Typing_MatchRecordFailureQuerySpecification.instance(), AbstractScope.from(scope), true, ScatteredTimelyReteBackendFactory.INSTANCE);
final ViatraQueryMatcher<IPatternMatch> evaluatorLookupFailure = EnginePool.getMatcher(Typing_LookupFailureQuerySpecification.instance(), AbstractScope.from(scope), true, ScatteredTimelyReteBackendFactory.INSTANCE);
final ViatraQueryMatcher<IPatternMatch> evaluatorRecordSameLengthFailure = EnginePool.getMatcher(Typing_RecordSameLengthFailureQuerySpecification.instance(), AbstractScope.from(scope), true, ScatteredTimelyReteBackendFactory.INSTANCE);
final IPatternMatch tup = evaluatorInfer.newMatch(term, null);
final Set<LType.LTypeElement> inferValues = CodeGenerationHelper.getAllValues(evaluatorInfer, "out_1", tup);
......@@ -44,8 +45,9 @@ public class AnalysisResultAccess {
boolean matchFunFailure = CollectionSequence.fromCollection(evaluatorMatchFunFailure.getAllMatches()).isNotEmpty();
boolean matchRecordFailure = CollectionSequence.fromCollection(evaluatorMatchRecordFailure.getAllMatches()).isNotEmpty();
boolean lookupFailure = CollectionSequence.fromCollection(evaluatorLookupFailure.getAllMatches()).isNotEmpty();
boolean recordSameLengthFailure = CollectionSequence.fromCollection(evaluatorRecordSameLengthFailure.getAllMatches()).isNotEmpty();
if (checkError || matchFunFailure || matchRecordFailure || lookupFailure) {
if (checkError || matchFunFailure || matchRecordFailure || lookupFailure || recordSameLengthFailure) {
return false;
}
......@@ -56,18 +58,18 @@ public class AnalysisResultAccess {
boolean isBotAvailable = SetSequence.fromSet(inferValues).any(new IWhereFilter<LType.LTypeElement>() {
public boolean accept(LType.LTypeElement it) {
{
final Object[] values_a0a0a0t0c = {it};
final Object[] values_a0a0a0v0c = {it};
// declare the local variables for the case matchers
Map<String, Object> case_0_a0a0a0a91a2;
Map<String, Object> case_1_b0a0a0a91a2;
Map<String, Object> case_0_a0a0a0a12a2;
Map<String, Object> case_1_b0a0a0a12a2;
if ((case_0_a0a0a0a91a2 = new SequenceMatcher(matcher_a0a0a0a0t0c).match(values_a0a0a0t0c)) != null) {
if ((case_0_a0a0a0a12a2 = new SequenceMatcher(matcher_a0a0a0a0v0c).match(values_a0a0a0v0c)) != null) {
return true;
} else if ((case_1_b0a0a0a91a2 = new SequenceMatcher(WildCardMatcher.INSTANCE).match(values_a0a0a0t0c)) != null) {
} else if ((case_1_b0a0a0a12a2 = new SequenceMatcher(WildCardMatcher.INSTANCE).match(values_a0a0a0v0c)) != null) {
return false;
} else {
throw new PatternMatcherException(values_a0a0a0t0c);
throw new PatternMatcherException(values_a0a0a0v0c);
}
}
}
......@@ -80,21 +82,21 @@ public class AnalysisResultAccess {
final LType.LTypeElement nonBotAnyValue = SetSequence.fromSet(inferValues).findFirst(new IWhereFilter<LType.LTypeElement>() {
public boolean accept(LType.LTypeElement it) {
{
final Object[] values_a0a0a0x0c = {it};
final Object[] values_a0a0a0z0c = {it};
// declare the local variables for the case matchers
Map<String, Object> case_0_a0a0a0a32a2;
Map<String, Object> case_1_b0a0a0a32a2;
Map<String, Object> case_2_c0a0a0a32a2;
Map<String, Object> case_0_a0a0a0a52a2;
Map<String, Object> case_1_b0a0a0a52a2;
Map<String, Object> case_2_c0a0a0a52a2;
if ((case_0_a0a0a0a32a2 = new SequenceMatcher(matcher_a0a0a0a0x0c).match(values_a0a0a0x0c)) != null) {
if ((case_0_a0a0a0a52a2 = new SequenceMatcher(matcher_a0a0a0a0z0c).match(values_a0a0a0z0c)) != null) {
return false;
} else if ((case_1_b0a0a0a32a2 = new SequenceMatcher(matcher_a1a0a0a0x0c).match(values_a0a0a0x0c)) != null) {
} else if ((case_1_b0a0a0a52a2 = new SequenceMatcher(matcher_a1a0a0a0z0c).match(values_a0a0a0z0c)) != null) {
return false;
} else if ((case_2_c0a0a0a32a2 = new SequenceMatcher(WildCardMatcher.INSTANCE).match(values_a0a0a0x0c)) != null) {
} else if ((case_2_c0a0a0a52a2 = new SequenceMatcher(WildCardMatcher.INSTANCE).match(values_a0a0a0z0c)) != null) {
return true;
} else {
throw new PatternMatcherException(values_a0a0a0x0c);
throw new PatternMatcherException(values_a0a0a0z0c);
}
}
}
......@@ -188,9 +190,9 @@ public class AnalysisResultAccess {
}
}
private static final IDataMatcher matcher_a0a0a0a0t0c = new CompositeMatcher(LType.Bot.class);
private static final IDataMatcher matcher_a0a0a0a0x0c = new CompositeMatcher(LType.Bot.class);
private static final IDataMatcher matcher_a1a0a0a0x0c = new CompositeMatcher(LType.Any.class);
private static final IDataMatcher matcher_a0a0a0a0v0c = new CompositeMatcher(LType.Bot.class);
private static final IDataMatcher matcher_a0a0a0a0z0c = new CompositeMatcher(LType.Bot.class);
private static final IDataMatcher matcher_a1a0a0a0z0c = new CompositeMatcher(LType.Any.class);
private static final IDataMatcher matcher_a0a0e_0 = new CompositeMatcher(LType.Nat.class);
private static final IDataMatcher matcher_a1a0e = new CompositeMatcher(LType.Fun.class);
private static final IDataMatcher matcher_a2a0e_0 = new CompositeMatcher(LType.Record.class, new SimpleMatcher("ltypev"));
......
......@@ -638,6 +638,27 @@ public class LType implements ILatticeOperationProvider<LType.LTypeElement>, IPo
}
}
}
public int recordSize(LType.LTypeElement t) {
{
final Object[] values_a0w = {t};
// declare the local variables for the case matchers
Map<String, Object> case_0_a0a22;
Map<String, Object> case_1_b0a22;
Map<String, Object> case_2_c0a22;
if ((case_0_a0a22 = new SequenceMatcher(matcher_a0a0w).match(values_a0w)) != null) {
LTypeRecord.LTypeRecordElement ty_a0a0a22 = (LTypeRecord.LTypeRecordElement) case_0_a0a22.get("ty");
return LTypeRecord.instance().size(ty_a0a0a22);
} else if ((case_1_b0a22 = new SequenceMatcher(matcher_a1a0w).match(values_a0w)) != null) {
return Integer.MAX_VALUE;
} else if ((case_2_c0a22 = new SequenceMatcher(WildCardMatcher.INSTANCE).match(values_a0w)) != null) {
return Integer.MIN_VALUE;
} else {
throw new PatternMatcherException(values_a0w);
}
}
}
public final IMultisetAggregationOperator<?, ?, ?> aggregator_lub = new AbstractTreeBasedLatticeAggregationOperator<LType.LTypeElement>(new AugmentedNodeFactory<LType.LTypeElement>(new _FunctionTypes._return_P2_E0<LType.LTypeElement, LType.LTypeElement, LType.LTypeElement>() {
public LType.LTypeElement invoke(final LType.LTypeElement left, final LType.LTypeElement right) {
......@@ -731,4 +752,6 @@ public class LType implements ILatticeOperationProvider<LType.LTypeElement>, IPo
private static final IDataMatcher matcher_a1a0s = new CompositeMatcher(LType.Any.class);
private static final IDataMatcher matcher_a0a0u = new CompositeMatcher(LType.Record.class, new SimpleMatcher("ty"));
private static final IDataMatcher matcher_a1a0u = new CompositeMatcher(LType.Any.class);
private static final IDataMatcher matcher_a0a0w = new CompositeMatcher(LType.Record.class, new SimpleMatcher("ty"));
private static final IDataMatcher matcher_a1a0w = new CompositeMatcher(LType.Any.class);
}
......@@ -29,33 +29,33 @@ public final class QuerySpecificationHints extends MPSQuerySpecificationHints {
this.concepts.add(MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x10802efe25aL, "jetbrains.mps.lang.core.structure.BaseConcept"));
this.dataTypes = new HashSet<SDataType>();
this.dataTypes.add(UniqueDataType.from("jetbrains.mps.lang.core.structure.integer"));
this.dataTypes.add(UniqueDataType.from("jetbrains.mps.lang.core.structure.string"));
this.dataTypes.add(UniqueDataType.from("jetbrains.mps.lang.core.structure.integer"));
this.conceptFeatures = new HashSet<SConceptFeature>();
this.conceptFeatures.add(MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9390L, 0x1a4a252762eb9395L, "ty1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, 0x1fd8e2cf9df802cbL, "elems"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb936bL, 0x1a4a252762eb9374L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9302L, 0x1a4a252762eb930bL, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9312L, 0x1a4a252762eb931bL, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb92d7L, 0x1a4a252762eb92dcL, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x9229981a3b8f573L, 0x9229981a3b8f58bL, "entries"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9390L, 0x1a4a252762eb9399L, "ty2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb93faL, 0x1a4a252762eb93ffL, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb937fL, 0x1a4a252762eb9384L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getReferenceLink(0xb802a05692a24fbcL, 0x902ef8e5004c331fL, 0x7980b687ac7456feL, 0x7980b687ac7456ffL, "parent"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb92d7L, 0x1a4a252762eb92dcL, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb937fL, 0x1a4a252762eb9384L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb937fL, 0x1a4a252762eb93d5L, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9312L, 0x1a4a252762eb9317L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x9229981a3b8f61cL, 0x9229981a3b8f621L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x2c4ed3ae43d50d92L, 0x2c4ed3ae43d50da6L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb933aL, 0x1a4a252762eb934eL, "bound"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb936bL, 0x1a4a252762eb9374L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x9229981a3b8f573L, 0x9229981a3b8f58bL, "entries"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9390L, 0x1a4a252762eb9399L, "ty2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, 0x1fd8e2cf9df802cbL, "elems"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802cfL, 0x1fd8e2cf9df802d4L, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9322L, 0x1a4a252762eb9336L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9390L, 0x1a4a252762eb9395L, "ty1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x2c4ed3ae43d50d92L, 0x2c4ed3ae43d50da6L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x9229981a3b8f61cL, 0x9229981a3b8f621L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9312L, 0x1a4a252762eb931bL, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb93f1L, 0x1a4a252762eb93f6L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb9312L, 0x1a4a252762eb9317L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802cfL, 0x1fd8e2cf9df802d4L, "ty"));
this.languages = new HashSet<SLanguage>();
this.languages.add(MetaAdapterFactory.getLanguage(0xb802a05692a24fbcL, 0x902ef8e5004c331fL, "ceab5195-25ea-4f22-9b92-103b95ca8c0c"));
......
......@@ -89,14 +89,14 @@ public final class Typing_AsLTypeRecordQuerySpecification extends MPSQuerySpecif
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__7969736069302798609 = body.newVirtualVariable();
PVariable var__7969736069302798604 = body.getOrCreateVariableByName("7969736069302798604");
PVariable var__7969736069302798601 = body.getOrCreateVariableByName("7969736069302798601");
PVariable var__6395623258575569158 = body.getOrCreateVariableByName("6395623258575569158");
PVariable var__6395623258575569161 = body.getOrCreateVariableByName("6395623258575569161");
PVariable var__6395623258575569166 = body.newVirtualVariable();
new TypeConstraint(body, Tuples.flatTupleOf(var_type), new ConceptKey(MetaAdapterFactory.getConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, "RecordTypes.structure.RecordType")));
new PositivePatternCall(body, Tuples.flatTupleOf(var_type, var__7969736069302798601), Typing_AsLTypeRecord_WrappedQuerySpecification.instance().getInternalQueryRepresentation());
new AggregatorConstraint(new BoundAggregator(LTypeRecord.instance().aggregator_lub, LTypeRecord.LTypeRecordElement.class, LTypeRecord.LTypeRecordElement.class), body, Tuples.flatTupleOf(var_type, var__7969736069302798604), Typing_AsLTypeRecord_WrappedQuerySpecification.instance().getInternalQueryRepresentation(), var__7969736069302798609, 1);
new Equality(body, var_out_1, var__7969736069302798609);
new PositivePatternCall(body, Tuples.flatTupleOf(var_type, var__6395623258575569158), Typing_AsLTypeRecord_WrappedQuerySpecification.instance().getInternalQueryRepresentation());
new AggregatorConstraint(new BoundAggregator(LTypeRecord.instance().aggregator_lub, LTypeRecord.LTypeRecordElement.class, LTypeRecord.LTypeRecordElement.class), body, Tuples.flatTupleOf(var_type, var__6395623258575569161), Typing_AsLTypeRecord_WrappedQuerySpecification.instance().getInternalQueryRepresentation(), var__6395623258575569166, 1);
new Equality(body, var_out_1, var__6395623258575569166);
SetSequence.fromSet(bodies).addElement(body);
}
......
......@@ -93,29 +93,29 @@ public final class Typing_AsLTypeRecord_WrappedQuerySpecification extends MPSQue
body.setSymbolicParameters(exportedParameters);
PVariable var__tmp_250 = body.getOrCreateVariableByName("tmp_250");
PVariable var__tmp_249 = body.getOrCreateVariableByName("tmp_249");
PVariable var__tmp_251 = body.getOrCreateVariableByName("tmp_251");
PVariable var__ty = body.getOrCreateVariableByName("ty");
PVariable var__7969736069302824830 = body.newVirtualVariable();
PVariable var__tmp_246 = body.getOrCreateVariableByName("tmp_246");
PVariable var__tmp_247 = body.getOrCreateVariableByName("tmp_247");
PVariable var__tmp_248 = body.getOrCreateVariableByName("tmp_248");
PVariable var__6395623258575592524 = body.newVirtualVariable();
PVariable var__elem = body.getOrCreateVariableByName("elem");
PVariable var__tmp_252 = body.getOrCreateVariableByName("tmp_252");
PVariable var__l = body.getOrCreateVariableByName("l");
PVariable var__tmp_253 = body.getOrCreateVariableByName("tmp_253");
PVariable var__tmp_254 = body.getOrCreateVariableByName("tmp_254");
new TypeConstraint(body, Tuples.flatTupleOf(var_type), new ConceptKey(MetaAdapterFactory.getConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, "RecordTypes.structure.RecordType")));
new PositivePatternCall(body, Tuples.flatTupleOf(), Typing_AsLTypeRecord_0_switchCommonQuerySpecification.instance().getInternalQueryRepresentation());
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var_type, var__tmp_246), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, 0x1fd8e2cf9df802cbL, "elems")));
new Equality(body, var__elem, var__tmp_246);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__elem, var__tmp_247), new ConceptFeatureKey(MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name")));
new Equality(body, var__l, var__tmp_247);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__elem, var__tmp_248), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802cfL, 0x1fd8e2cf9df802d4L, "ty")));
new PositivePatternCall(body, Tuples.flatTupleOf(var__tmp_248, var__tmp_249), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__ty, var__tmp_249);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var_type, var__tmp_250), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, 0x1fd8e2cf9df802cbL, "elems")));
new Equality(body, var__elem, var__tmp_250);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__elem, var__tmp_251), new ConceptFeatureKey(MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name")));
new Equality(body, var__l, var__tmp_251);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__elem, var__tmp_252), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802cfL, 0x1fd8e2cf9df802d4L, "ty")));
new PositivePatternCall(body, Tuples.flatTupleOf(var__tmp_252, var__tmp_253), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__ty, var__tmp_253);
new ExpressionEvaluation(body, new IExpressionEvaluator() {
@Override
public String getShortDescription() {
return "7969736069302824830";
return "6395623258575592524";
}
@Override
......@@ -128,9 +128,9 @@ public final class Typing_AsLTypeRecord_WrappedQuerySpecification extends MPSQue
return LTypeRecord.instance().singleton((CodeGenerationHelper.demandWrapString(valueProvider.getValue("l"))), ((LType.LTypeElement) valueProvider.getValue("ty")));
}
}, var__7969736069302824830, false);
new Equality(body, var__tmp_250, var__7969736069302824830);
new Equality(body, var__tmp_250, var_out_1);
}, var__6395623258575592524, false);
new Equality(body, var__tmp_254, var__6395623258575592524);
new Equality(body, var__tmp_254, var_out_1);
SetSequence.fromSet(bodies).addElement(body);
}
......@@ -144,8 +144,8 @@ public final class Typing_AsLTypeRecord_WrappedQuerySpecification extends MPSQue
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__tmp_251 = body.getOrCreateVariableByName("tmp_251");
PVariable var__7969736069302824848 = body.newVirtualVariable();
PVariable var__6395623258575592542 = body.newVirtualVariable();
PVariable var__tmp_255 = body.getOrCreateVariableByName("tmp_255");
new TypeConstraint(body, Tuples.flatTupleOf(var_type), new ConceptKey(MetaAdapterFactory.getConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1fd8e2cf9df802c6L, "RecordTypes.structure.RecordType")));
new PositivePatternCall(body, Tuples.flatTupleOf(), Typing_AsLTypeRecord_0_switchCommonQuerySpecification.instance().getInternalQueryRepresentation());
......@@ -153,7 +153,7 @@ public final class Typing_AsLTypeRecord_WrappedQuerySpecification extends MPSQue
@Override
public String getShortDescription() {
return "7969736069302824848";
return "6395623258575592542";
}
@Override
......@@ -166,9 +166,9 @@ public final class Typing_AsLTypeRecord_WrappedQuerySpecification extends MPSQue
return LTypeRecord.instance().empty();
}
}, var__7969736069302824848, false);
new Equality(body, var__tmp_251, var__7969736069302824848);
new Equality(body, var__tmp_251, var_out_1);
}, var__6395623258575592542, false);
new Equality(body, var__tmp_255, var__6395623258575592542);
new Equality(body, var__tmp_255, var_out_1);
SetSequence.fromSet(bodies).addElement(body);
}
......
......@@ -94,23 +94,23 @@ public final class Typing_CheckErrorQuerySpecification extends MPSQuerySpecifica
exportedParameters.add(new ExportedParameter(body, var_out_2, p_out_2));
body.setSymbolicParameters(exportedParameters);
PVariable var__tmp_31 = body.getOrCreateVariableByName("tmp_31");
PVariable var__tmp_30 = body.getOrCreateVariableByName("tmp_30");
PVariable var__6395623258575549270 = body.newConstantVariable(Integer.parseInt("0"));
PVariable var__term = body.getOrCreateVariableByName("term");
PVariable var__tmp_32 = body.getOrCreateVariableByName("tmp_32");
PVariable var__7969736069302822055 = body.newVirtualVariable();
PVariable var__7969736069302778871 = body.newConstantVariable(Integer.parseInt("0"));
PVariable var__6395623258575589737 = body.newVirtualVariable();
PVariable var__tmp_35 = body.getOrCreateVariableByName("tmp_35");
PVariable var__tmp_34 = body.getOrCreateVariableByName("tmp_34");
PVariable var__tmp_36 = body.getOrCreateVariableByName("tmp_36");
new TypeConstraint(body, Tuples.flatTupleOf(var_out_1), new ConceptKey(MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x10802efe25aL, "jetbrains.mps.lang.core.structure.BaseConcept")));
new TypeConstraint(body, Tuples.flatTupleOf(var__term), new ConceptKey(MetaAdapterFactory.getInterfaceConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb92d1L, "RecordTypes.structure.Term")));
new PositivePatternCall(body, Tuples.flatTupleOf(var__term, var__tmp_30), Typing_RequiredQuerySpecification.instance().getInternalQueryRepresentation());
new PositivePatternCall(body, Tuples.flatTupleOf(var__term, var__tmp_34), Typing_RequiredQuerySpecification.instance().getInternalQueryRepresentation());
new NegativePatternCall(body, Tuples.flatTupleOf(var__term), Typing_CheckQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__tmp_31, var__7969736069302778871);
new Equality(body, var__tmp_35, var__6395623258575549270);
new ExpressionEvaluation(body, new IExpressionEvaluator() {
@Override
public String getShortDescription() {
return "7969736069302822055";
return "6395623258575589737";
}
@Override
......@@ -123,11 +123,11 @@ public final class Typing_CheckErrorQuerySpecification extends MPSQuerySpecifica
return String.format("\"check failed\"");
}
}, var__7969736069302822055, false);
new Equality(body, var__tmp_32, var__7969736069302822055);
new Equality(body, var__tmp_31, var_out_0);
}, var__6395623258575589737, false);
new Equality(body, var__tmp_36, var__6395623258575589737);
new Equality(body, var__tmp_35, var_out_0);
new Equality(body, var__term, var_out_1);
new Equality(body, var__tmp_32, var_out_2);
new Equality(body, var__tmp_36, var_out_2);
SetSequence.fromSet(bodies).addElement(body);
}
......
......@@ -89,14 +89,14 @@ public final class Typing_InferQuerySpecification extends MPSQuerySpecification
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__7969736069302798543 = body.getOrCreateVariableByName("7969736069302798543");
PVariable var__7969736069302798551 = body.newVirtualVariable();
PVariable var__7969736069302798546 = body.getOrCreateVariableByName("7969736069302798546");
PVariable var__6395623258575569103 = body.getOrCreateVariableByName("6395623258575569103");
PVariable var__6395623258575569108 = body.newVirtualVariable();
PVariable var__6395623258575569100 = body.getOrCreateVariableByName("6395623258575569100");
new TypeConstraint(body, Tuples.flatTupleOf(var_term), new ConceptKey(MetaAdapterFactory.getInterfaceConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb92d1L, "RecordTypes.structure.Term")));
new PositivePatternCall(body, Tuples.flatTupleOf(var_term, var__7969736069302798543), Typing_Infer_WrappedQuerySpecification.instance().getInternalQueryRepresentation());
new AggregatorConstraint(new BoundAggregator(LType.instance().aggregator_glb, LType.LTypeElement.class, LType.LTypeElement.class), body, Tuples.flatTupleOf(var_term, var__7969736069302798546), Typing_Infer_WrappedQuerySpecification.instance().getInternalQueryRepresentation(), var__7969736069302798551, 1);
new Equality(body, var_out_1, var__7969736069302798551);
new PositivePatternCall(body, Tuples.flatTupleOf(var_term, var__6395623258575569100), Typing_Infer_WrappedQuerySpecification.instance().getInternalQueryRepresentation());
new AggregatorConstraint(new BoundAggregator(LType.instance().aggregator_glb, LType.LTypeElement.class, LType.LTypeElement.class), body, Tuples.flatTupleOf(var_term, var__6395623258575569103), Typing_Infer_WrappedQuerySpecification.instance().getInternalQueryRepresentation(), var__6395623258575569108, 1);
new Equality(body, var_out_1, var__6395623258575569108);
SetSequence.fromSet(bodies).addElement(body);
}
......
......@@ -94,27 +94,27 @@ public final class Typing_LookupFailureQuerySpecification extends MPSQuerySpecif
exportedParameters.add(new ExportedParameter(body, var_out_2, p_out_2));
body.setSymbolicParameters(exportedParameters);
PVariable var__7969736069302794262 = body.newConstantVariable(Integer.parseInt("0"));
PVariable var__7969736069302822028 = body.newVirtualVariable();
PVariable var__match_a0a0a0g = body.getOrCreateVariableByName("match_a0a0a0g");
PVariable var__tmp_31 = body.getOrCreateVariableByName("tmp_31");
PVariable var__tmp_33 = body.getOrCreateVariableByName("tmp_33");
PVariable var__term = body.getOrCreateVariableByName("term");
PVariable var__tmp_32 = body.getOrCreateVariableByName("tmp_32");
PVariable var__6395623258575564795 = body.newConstantVariable(Integer.parseInt("0"));
PVariable var__match_a0a0a0k = body.getOrCreateVariableByName("match_a0a0a0k");
PVariable var__v = body.getOrCreateVariableByName("v");
PVariable var__tmp_28 = body.getOrCreateVariableByName("tmp_28");
PVariable var__tmp_27 = body.getOrCreateVariableByName("tmp_27");
PVariable var__tmp_29 = body.getOrCreateVariableByName("tmp_29");
PVariable var__6395623258575589710 = body.newVirtualVariable();
new TypeConstraint(body, Tuples.flatTupleOf(var_out_1), new ConceptKey(MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x10802efe25aL, "jetbrains.mps.lang.core.structure.BaseConcept")));
new PositivePatternCall(body, Tuples.flatTupleOf(var__term), Typing_LookupFailure_0_switchCommonQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__match_a0a0a0g, var__term);
new TypeConstraint(body, Tuples.flatTupleOf(var__match_a0a0a0g), new ConceptKey(MetaAdapterFactory.getConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb92e0L, "RecordTypes.structure.Var")));
new Equality(body, var__v, var__match_a0a0a0g);
new NegativePatternCall(body, Tuples.flatTupleOf(var__term, var__v, var__tmp_27), Typing_LookupQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__tmp_28, var__7969736069302794262);
new Equality(body, var__match_a0a0a0k, var__term);
new TypeConstraint(body, Tuples.flatTupleOf(var__match_a0a0a0k), new ConceptKey(MetaAdapterFactory.getConcept(0x6b642eaa1043424aL, 0x9e0949eb41607114L, 0x1a4a252762eb92e0L, "RecordTypes.structure.Var")));
new Equality(body, var__v, var__match_a0a0a0k);
new NegativePatternCall(body, Tuples.flatTupleOf(var__term, var__v, var__tmp_31), Typing_LookupQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__tmp_32, var__6395623258575564795);
new ExpressionEvaluation(body, new IExpressionEvaluator() {
@Override
public String getShortDescription() {
return "7969736069302822028";
return "6395623258575589710";
}
@Override
......@@ -127,11 +127,11 @@ public final class Typing_LookupFailureQuerySpecification extends MPSQuerySpecif
return String.format("variable not bound");
}
}, var__7969736069302822028, false);
new Equality(body, var__tmp_29, var__7969736069302822028);
new Equality(body, var__tmp_28, var_out_0);
}, var__6395623258575589710, false);
new Equality(body, var__tmp_33, var__6395623258575589710);
new Equality(body, var__tmp_32, var_out_0);
new Equality(body, var__v, var_out_1);
new Equality(body, var__tmp_29, var_out_2);
new Equality(body, var__tmp_33, var_out_2);