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

update variant lattice after implementing record lattice

parent 3b9a1b5b
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:1d866c7b-0dba-4cdf-a4ef-742ed7f20b7b(RecordTypes_Checker.test.ok_rec_empty)">
<persistence version="9" />
<languages>
<use id="6b642eaa-1043-424a-9e09-49eb41607114" name="RecordTypes" version="0" />
</languages>
<imports>
<import index="oj0p" ref="r:a882191d-3685-4616-b5b1-384cf716b30e(RecordTypes.structure)" />
</imports>
<registry>
<language id="6b642eaa-1043-424a-9e09-49eb41607114" name="RecordTypes">
<concept id="2294833391481651910" name="RecordTypes.structure.RecordType" flags="ng" index="228e09" />
<concept id="7997266186981964043" name="RecordTypes.structure.ModuleElemDef" flags="ng" index="2BHCoM">
<child id="7997266186982065639" name="term" index="2BHfFu" />
</concept>
<concept id="658257277626152307" name="RecordTypes.structure.Record" flags="ng" index="2EAANM" />
<concept id="5790571747095872620" name="RecordTypes.structure.Module" flags="ng" index="1gj3CZ">
<child id="5790571747095872621" name="elems" index="1gj3CY" />
</concept>
<concept id="1894367444356273023" name="RecordTypes.structure.Anno" flags="ng" index="1SCrpo">
<child id="1894367444356273028" name="t" index="1SCrqz" />
<child id="1894367444356273109" name="ty" index="1SCrrM" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
</registry>
<node concept="1gj3CZ" id="5z1Onvss24k">
<property role="TrG5h" value="OkRecEmpty" />
<node concept="2BHCoM" id="5z1Onvss24l" role="1gj3CY">
<property role="TrG5h" value="test" />
<node concept="1SCrpo" id="5z1Onvss24u" role="2BHfFu">
<node concept="2EAANM" id="5z1Onvss24F" role="1SCrqz" />
<node concept="228e09" id="5z1Onvss24K" role="1SCrrM" />
</node>
</node>
</node>
</model>
......@@ -196,6 +196,7 @@
<child id="1068580123134" name="parameter" index="3clF46" />
<child id="1068580123135" name="body" index="3clF47" />
</concept>
<concept id="1068580123152" name="jetbrains.mps.baseLanguage.structure.EqualsExpression" flags="nn" index="3clFbC" />
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
......@@ -204,6 +205,7 @@
<child id="1082485599094" name="ifFalseStatement" index="9aQIa" />
<child id="1068580123160" name="condition" index="3clFbw" />
<child id="1068580123161" name="ifTrue" index="3clFbx" />
<child id="1206060520071" name="elsifClauses" index="3eNLev" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
......@@ -219,6 +221,10 @@
<child id="1068581242865" name="localVariableDeclaration" index="3cpWs9" />
</concept>
<concept id="1068581242863" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" flags="nr" index="3cpWsn" />
<concept id="1206060495898" name="jetbrains.mps.baseLanguage.structure.ElsifClause" flags="ng" index="3eNFk2">
<child id="1206060619838" name="condition" index="3eO9$A" />
<child id="1206060644605" name="statementList" index="3eOfB_" />
</concept>
<concept id="1081516740877" name="jetbrains.mps.baseLanguage.structure.NotExpression" flags="nn" index="3fqX7Q">
<child id="1081516765348" name="expression" index="3fr31v" />
</concept>
......@@ -2575,14 +2581,14 @@
</node>
</node>
</node>
<node concept="3_zGKi" id="$yAo6zMwyE" role="3_zGzd">
<node concept="1xQMsc" id="$yAo6zMxqb" role="3_$9z_" />
<node concept="30Nfyg" id="$yAo6zMycY" role="1dgzf0">
<node concept="1p__ei" id="$yAo6zMyYB" role="30Nf_D">
<node concept="3_JagS" id="$yAo6zMyY_" role="1p__f_">
<node concept="3_zGKi" id="5z1OnvsNfBP" role="3_zGzd">
<node concept="1xQMsc" id="5z1OnvsNiNZ" role="3_$9z_" />
<node concept="30Nfyg" id="5z1OnvsNlWK" role="1dgzf0">
<node concept="1p__ei" id="5z1OnvsNp6t" role="30Nf_D">
<node concept="3_JagS" id="5z1OnvsNp6r" role="1p__f_">
<ref role="3_Jajq" node="$yAo6zIgda" resolve="LType" />
</node>
<node concept="2ZRyFJ" id="$yAo6zMzJQ" role="1p_StM">
<node concept="2ZRyFJ" id="5z1OnvsNse8" role="1p_StM">
<ref role="2ZRyFH" node="$yAo6zIglM" resolve="Any" />
</node>
</node>
......@@ -2601,7 +2607,7 @@
<node concept="2ZQB9c" id="$yAo6zIsHm" role="2eP6Tc">
<ref role="2ZQB93" node="$yAo6zIgda" resolve="LType" />
</node>
<node concept="2kHsid" id="$yAo6zIsLD" role="iwB5b">
<node concept="2kHsid" id="5z1OnvsNcpx" role="iwB5b">
<ref role="2kHsi0" node="$yAo6zIkH9" resolve="glb" />
</node>
</node>
......@@ -3661,7 +3667,7 @@
</node>
<node concept="1VLyuc" id="$yAo6zIUEQ" role="1dv5OJ">
<property role="TrG5h" value="ty" />
<node concept="2kdjtB" id="$yAo6zIUF8" role="1dukDx">
<node concept="2kdjtB" id="75UymJK8HPv" role="1dukDx">
<ref role="2UGuZ7" to="z36t:1Da9ityUTef" resolve="Type" />
</node>
</node>
......@@ -5167,45 +5173,43 @@
</node>
</node>
</node>
<node concept="3clFbJ" id="1ZoSGYurWmA" role="3cqZAp">
<node concept="3clFbS" id="1ZoSGYurWmB" role="3clFbx">
<node concept="3clFbJ" id="1ZoSGYurWmC" role="3cqZAp">
<node concept="3clFbS" id="1ZoSGYurWmJ" role="3clFbx">
<node concept="3cpWs6" id="1ZoSGYurWmK" role="3cqZAp">
<node concept="3clFbT" id="1ZoSGYurWmL" role="3cqZAk" />
</node>
</node>
<node concept="1p__ei" id="1ZoSGYus5er" role="3clFbw">
<node concept="3_JagS" id="1ZoSGYus5eq" role="1p__f_">
<node concept="3clFbJ" id="75UymJJkHK6" role="3cqZAp">
<node concept="3clFbS" id="75UymJJkHK8" role="3clFbx">
<node concept="3cpWs6" id="75UymJJkIjC" role="3cqZAp">
<node concept="3clFbT" id="75UymJJkIC3" role="3cqZAk" />
</node>
</node>
<node concept="3clFbC" id="75UymJJkIeB" role="3clFbw">
<node concept="10Nm6u" id="75UymJJkIiY" role="3uHU7w" />
<node concept="37vLTw" id="75UymJJkI8f" role="3uHU7B">
<ref role="3cqZAo" node="1ZoSGYurWmu" resolve="found" />
</node>
</node>
<node concept="3eNFk2" id="75UymJJkIYA" role="3eNLev">
<node concept="3fqX7Q" id="75UymJJkJlf" role="3eO9$A">
<node concept="1p__ei" id="75UymJJkJlZ" role="3fr31v">
<node concept="3_JagS" id="75UymJJkJlX" role="1p__f_">
<ref role="3_Jajq" node="$yAo6zIgda" resolve="LType" />
</node>
<node concept="1i8UFo" id="1ZoSGYus5zE" role="1p_StM">
<node concept="1i8UFo" id="75UymJJkJmD" role="1p_StM">
<ref role="2RnLXx" node="$yAo6zIgAe" resolve="leq" />
<node concept="2OqwBi" id="1ZoSGYus5Hx" role="2ZRyFy">
<node concept="37vLTw" id="1ZoSGYus5$e" role="2Oq$k0">
<node concept="2OqwBi" id="75UymJJkJwu" role="2ZRyFy">
<node concept="37vLTw" id="75UymJJkJnl" role="2Oq$k0">
<ref role="3cqZAo" node="1ZoSGYurWmm" resolve="entry1" />
</node>
<node concept="liA8E" id="1ZoSGYusiL0" role="2OqNvi">
<node concept="liA8E" id="75UymJJkWJ2" role="2OqNvi">
<ref role="37wK5l" to="33ny:~Map$Entry.getValue():java.lang.Object" resolve="getValue" />
</node>
</node>
<node concept="37vLTw" id="1ZoSGYusiOY" role="2ZRyFy">
<node concept="37vLTw" id="75UymJJkWPO" role="2ZRyFy">
<ref role="3cqZAo" node="1ZoSGYurWmu" resolve="found" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="1ZoSGYurWmM" role="3clFbw">
<node concept="10Nm6u" id="1ZoSGYurWmN" role="3uHU7w" />
<node concept="37vLTw" id="1ZoSGYurWmO" role="3uHU7B">
<ref role="3cqZAo" node="1ZoSGYurWmu" resolve="found" />
</node>
</node>
<node concept="9aQIb" id="1ZoSGYurWmP" role="9aQIa">
<node concept="3clFbS" id="1ZoSGYurWmQ" role="9aQI4">
<node concept="3cpWs6" id="1ZoSGYurWmR" role="3cqZAp">
<node concept="3clFbT" id="1ZoSGYurWmS" role="3cqZAk" />
<node concept="3clFbS" id="75UymJJkIYC" role="3eOfB_">
<node concept="3cpWs6" id="75UymJJkWUL" role="3cqZAp">
<node concept="3clFbT" id="75UymJJkWVu" role="3cqZAk" />
</node>
</node>
</node>
......
......@@ -476,8 +476,14 @@
<dependency className="VariantTypes_Checker.model.Typing_InferQuerySpecification">
<classNode dependClassName="VariantTypes_Checker.model.LType" />
<classNode dependClassName="VariantTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_Infer_WrappedQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_AsLTypeQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_CheckQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_Infer_0_switchCommonQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_LookupQuerySpecification" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Exception" />
<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" />
......@@ -491,12 +497,13 @@
<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.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.aggregations.BoundAggregator" />
<classNode dependClassName="org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.AggregatorConstraint" />
<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" />
......@@ -504,6 +511,7 @@
<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" />
......@@ -535,52 +543,6 @@
<classNode dependClassName="org.inca.core.runtime.plugin.MPSQuerySpecificationHints" />
<classNode extendsClassName="org.inca.core.runtime.plugin.MPSQuerySpecification" />
</dependency>
<dependency className="VariantTypes_Checker.model.Typing_Infer_WrappedQuerySpecification">
<classNode dependClassName="VariantTypes_Checker.model.LType" />
<classNode dependClassName="VariantTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_AsLTypeQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_CheckQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_InferQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_Infer_0_switchCommonQuerySpecification" />
<classNode dependClassName="VariantTypes_Checker.model.Typing_LookupQuerySpecification" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Exception" />
<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" />
<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.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" />
<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 dependClassName="org.inca.data.runtime.plugin.LatticeInputKey" />
<classNode extendsClassName="org.inca.core.runtime.plugin.MPSQuerySpecification" />
</dependency>
<dependency className="VariantTypes_Checker.model.Typing_LookupCaseConditionQuerySpecification">
<classNode dependClassName="VariantTypes_Checker.model.QuerySpecificationHints" />
<classNode dependClassName="java.lang.Class" />
......
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-4nzcpijfivju6eh0cfzixwuwn2aw52x">
<files names="AnalysisResultAccess.java:ConstantDefinitions.java:LType.java:LTypeVariant.java:QuerySpecificationHints.java:Typing_AllvarsQuerySpecification.java:Typing_Allvars_0_switchCommonQuerySpecification.java:Typing_AsLTypeQuerySpecification.java:Typing_AsLTypeVariantQuerySpecification.java:Typing_AsLTypeVariant_0_switchCommonQuerySpecification.java:Typing_AsLTypeVariant_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_LookupCaseConditionQuerySpecification.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_MatchVariantFailureQuerySpecification.java:Typing_MatchVariantFailure_0_switchCommonQuerySpecification.java:Typing_RequiredQuerySpecification.java:Typing_Required_0_switchCommonQuerySpecification.java" />
<product version="3" modelHash="4kxp79ie6tuano8m5di8lm1o72hwz3g">
<files names="AnalysisResultAccess.java:ConstantDefinitions.java:LType.java:LTypeVariant.java:QuerySpecificationHints.java:Typing_AllvarsQuerySpecification.java:Typing_Allvars_0_switchCommonQuerySpecification.java:Typing_AsLTypeQuerySpecification.java:Typing_AsLTypeVariantQuerySpecification.java:Typing_AsLTypeVariant_0_switchCommonQuerySpecification.java:Typing_AsLTypeVariant_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_LookupCaseConditionQuerySpecification.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_MatchVariantFailureQuerySpecification.java:Typing_MatchVariantFailure_0_switchCommonQuerySpecification.java:Typing_RequiredQuerySpecification.java:Typing_Required_0_switchCommonQuerySpecification.java" />
</product>
......@@ -652,21 +652,6 @@ public class LType implements ILatticeOperationProvider<LType.LTypeElement>, IPo
return "aggregator_lub";
}
};
public final IMultisetAggregationOperator<?, ?, ?> aggregator_glb = 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) {
return glb(left, right);
}
})) {
@Override
public String getName() {
return "aggregator_glb";
}
@Override
public String getShortDescription() {
return "aggregator_glb";
}
};
@Override
public boolean isLessOrEqual(final Tuple leftTuple, final Tuple rightTuple) {
......
......@@ -267,11 +267,9 @@ public class LTypeVariant implements ILatticeOperationProvider<LTypeVariant.LTyp
while (it.hasNext()) {
java.util.Map.Entry<String, LType.LTypeElement> entry1 = it.next();
LType.LTypeElement found = map2_a1c0a21.get(entry1.getKey());
if (found != null) {
if (LType.instance().leq(entry1.getValue(), found)) {
return false;
}
} else {
if (found == null) {
return false;
} else if (!(LType.instance().leq(entry1.getValue(), found))) {
return false;
}
}
......@@ -361,21 +359,6 @@ public class LTypeVariant implements ILatticeOperationProvider<LTypeVariant.LTyp
return "aggregator_lub";
}
};
public final IMultisetAggregationOperator<?, ?, ?> aggregator_glb = new AbstractTreeBasedLatticeAggregationOperator<LTypeVariant.LTypeVariantElement>(new AugmentedNodeFactory<LTypeVariant.LTypeVariantElement>(new _FunctionTypes._return_P2_E0<LTypeVariant.LTypeVariantElement, LTypeVariant.LTypeVariantElement, LTypeVariant.LTypeVariantElement>() {
public LTypeVariant.LTypeVariantElement invoke(final LTypeVariant.LTypeVariantElement left, final LTypeVariant.LTypeVariantElement right) {
return glb(left, right);
}
})) {
@Override
public String getName() {
return "aggregator_glb";
}
@Override
public String getShortDescription() {
return "aggregator_glb";
}
};
@Override
public boolean isLessOrEqual(final Tuple leftTuple, final Tuple rightTuple) {
......
......@@ -29,36 +29,36 @@ 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.getProperty(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f721L, 0x9229981a3b8f726L, "label"));
this.conceptFeatures.add(MetaAdapterFactory.getProperty(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f721L, 0x9229981a3b8f72aL, "name"));
this.conceptFeatures.add(MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93f1L, 0x1a4a252762eb93f6L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93faL, 0x1a4a252762eb93ffL, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9312L, 0x1a4a252762eb931bL, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f61cL, 0x9229981a3b8f621L, "matchee"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1fd8e2cf9df802cfL, 0x1fd8e2cf9df802d4L, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f721L, 0x9229981a3b8f731L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1fd8e2cf9df802c6L, 0x1fd8e2cf9df802cbL, "elems"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb92d7L, 0x1a4a252762eb92dcL, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f61cL, 0x9229981a3b8f621L, "matchee"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f61cL, 0x9229981a3b8f62fL, "cases"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f573L, 0x9229981a3b8f58bL, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9378L, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9312L, 0x1a4a252762eb9317L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9399L, "ty2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb934eL, "bound"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9322L, 0x1a4a252762eb9336L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f573L, 0x9229981a3b8f58bL, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9374L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb937fL, 0x1a4a252762eb93d5L, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb937fL, 0x1a4a252762eb9384L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93faL, 0x1a4a252762eb93ffL, "ty"));
this.conceptFeatures.add(MetaAdapterFactory.getReferenceLink(0xb802a05692a24fbcL, 0x902ef8e5004c331fL, 0x7980b687ac7456feL, 0x7980b687ac7456ffL, "parent"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f721L, 0x9229981a3b8f731L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9399L, "ty2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9312L, 0x1a4a252762eb931bL, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9312L, 0x1a4a252762eb9317L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb937fL, 0x1a4a252762eb9384L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb936bL, 0x1a4a252762eb9374L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9322L, 0x1a4a252762eb9336L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9395L, "ty1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x9229981a3b8f61cL, 0x9229981a3b8f62fL, "cases"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb9307L, "t1"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93f1L, 0x1a4a252762eb93f6L, "t"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9302L, 0x1a4a252762eb930bL, "t2"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1fd8e2cf9df802c6L, 0x1fd8e2cf9df802cbL, "elems"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb933aL, 0x1a4a252762eb9352L, "body"));
this.conceptFeatures.add(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb937fL, 0x1a4a252762eb93d5L, "ty"));
this.languages = new HashSet<SLanguage>();
this.languages.add(MetaAdapterFactory.getLanguage(0xb802a05692a24fbcL, 0x902ef8e5004c331fL, "ceab5195-25ea-4f22-9b92-103b95ca8c0c"));
......
......@@ -91,9 +91,9 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__tmp_282 = body.getOrCreateVariableByName("tmp_282");
PVariable var__2490073326117332385 = body.newVirtualVariable();
PVariable var__tmp_281 = body.getOrCreateVariableByName("tmp_281");
PVariable var__match_a0a0u = body.getOrCreateVariableByName("match_a0a0u");
PVariable var__8176999170138675286 = body.newVirtualVariable();
new TypeConstraint(body, Tuples.flatTupleOf(var_ty), new ConceptKey(MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb938fL, "VariantTypes.structure.Type")));
new PositivePatternCall(body, Tuples.flatTupleOf(), Typing_AsLType_0_switchCommonQuerySpecification.instance().getInternalQueryRepresentation());
......@@ -103,7 +103,7 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
@Override
public String getShortDescription() {
return "2490073326117332385";
return "8176999170138675286";
}
@Override
......@@ -116,9 +116,9 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
return LType.Nat.create();
}
}, var__2490073326117332385, false);
new Equality(body, var__tmp_282, var__2490073326117332385);
new Equality(body, var__tmp_282, var_out_1);
}, var__8176999170138675286, false);
new Equality(body, var__tmp_281, var__8176999170138675286);
new Equality(body, var__tmp_281, var_out_1);
SetSequence.fromSet(bodies).addElement(body);
}
......@@ -132,39 +132,39 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__tmp_282 = body.getOrCreateVariableByName("tmp_282");
PVariable var__tmp_283 = body.getOrCreateVariableByName("tmp_283");
PVariable var__tmp_284 = body.getOrCreateVariableByName("tmp_284");
PVariable var__lty2 = body.getOrCreateVariableByName("lty2");
PVariable var__match_b0b0a02 = body.getOrCreateVariableByName("match_b0b0a02");
PVariable var__lty1 = body.getOrCreateVariableByName("lty1");
PVariable var__match_a0b0a02 = body.getOrCreateVariableByName("match_a0b0a02");
PVariable var__2490073326117332444 = body.newVirtualVariable();
PVariable var__ty2 = body.getOrCreateVariableByName("ty2");
PVariable var__ty1 = body.getOrCreateVariableByName("ty1");
PVariable var__match_a1a0u = body.getOrCreateVariableByName("match_a1a0u");
PVariable var__8176999170138675345 = body.newVirtualVariable();
PVariable var__tmp_285 = body.getOrCreateVariableByName("tmp_285");
PVariable var__tmp_286 = body.getOrCreateVariableByName("tmp_286");
PVariable var__tmp_287 = body.getOrCreateVariableByName("tmp_287");
new TypeConstraint(body, Tuples.flatTupleOf(var_ty), new ConceptKey(MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb938fL, "VariantTypes.structure.Type")));
new PositivePatternCall(body, Tuples.flatTupleOf(), Typing_AsLType_0_switchCommonQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__match_a1a0u, var_ty);
new TypeConstraint(body, Tuples.flatTupleOf(var__match_a1a0u), new ConceptKey(MetaAdapterFactory.getConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, "VariantTypes.structure.Fun")));
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__match_a1a0u, var__tmp_283), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9395L, "ty1")));
new Equality(body, var__match_a0b0a02, var__tmp_283);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__match_a1a0u, var__tmp_282), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9395L, "ty1")));
new Equality(body, var__match_a0b0a02, var__tmp_282);
new Equality(body, var__ty1, var__match_a0b0a02);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__match_a1a0u, var__tmp_284), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9399L, "ty2")));
new Equality(body, var__match_b0b0a02, var__tmp_284);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__match_a1a0u, var__tmp_283), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb9390L, 0x1a4a252762eb9399L, "ty2")));
new Equality(body, var__match_b0b0a02, var__tmp_283);
new Equality(body, var__ty2, var__match_b0b0a02);
new PositivePatternCall(body, Tuples.flatTupleOf(var__ty1, var__tmp_285), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__lty1, var__tmp_285);
new PositivePatternCall(body, Tuples.flatTupleOf(var__ty2, var__tmp_286), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__lty2, var__tmp_286);
new PositivePatternCall(body, Tuples.flatTupleOf(var__ty1, var__tmp_284), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__lty1, var__tmp_284);
new PositivePatternCall(body, Tuples.flatTupleOf(var__ty2, var__tmp_285), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__lty2, var__tmp_285);
new ExpressionEvaluation(body, new IExpressionEvaluator() {
@Override
public String getShortDescription() {
return "2490073326117332444";
return "8176999170138675345";
}
@Override
......@@ -177,9 +177,9 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
return LType.Fun.create(((LType.LTypeElement) valueProvider.getValue("lty1")), ((LType.LTypeElement) valueProvider.getValue("lty2")));
}
}, var__2490073326117332444, false);
new Equality(body, var__tmp_287, var__2490073326117332444);
new Equality(body, var__tmp_287, var_out_1);
}, var__8176999170138675345, false);
new Equality(body, var__tmp_286, var__8176999170138675345);
new Equality(body, var__tmp_286, var_out_1);
SetSequence.fromSet(bodies).addElement(body);
}
......@@ -193,11 +193,11 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__2490073326117332478 = body.newVirtualVariable();
PVariable var__vty = body.getOrCreateVariableByName("vty");
PVariable var__tmp_289 = body.getOrCreateVariableByName("tmp_289");
PVariable var__8176999170138675379 = body.newVirtualVariable();
PVariable var__match_a2a0u = body.getOrCreateVariableByName("match_a2a0u");
PVariable var__lty = body.getOrCreateVariableByName("lty");
PVariable var__tmp_287 = body.getOrCreateVariableByName("tmp_287");
PVariable var__tmp_288 = body.getOrCreateVariableByName("tmp_288");
new TypeConstraint(body, Tuples.flatTupleOf(var_ty), new ConceptKey(MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb938fL, "VariantTypes.structure.Type")));
......@@ -205,13 +205,13 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
new Equality(body, var__match_a2a0u, var_ty);
new TypeConstraint(body, Tuples.flatTupleOf(var__match_a2a0u), new ConceptKey(MetaAdapterFactory.getConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1fd8e2cf9df802c6L, "VariantTypes.structure.VariantType")));
new Equality(body, var__vty, var__match_a2a0u);
new PositivePatternCall(body, Tuples.flatTupleOf(var__vty, var__tmp_288), Typing_AsLTypeVariantQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__lty, var__tmp_288);
new PositivePatternCall(body, Tuples.flatTupleOf(var__vty, var__tmp_287), Typing_AsLTypeVariantQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__lty, var__tmp_287);
new ExpressionEvaluation(body, new IExpressionEvaluator() {
@Override
public String getShortDescription() {
return "2490073326117332478";
return "8176999170138675379";
}
@Override
......@@ -224,9 +224,9 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
return LType.Variant.create(((LTypeVariant.LTypeVariantElement) valueProvider.getValue("lty")));
}
}, var__2490073326117332478, false);
new Equality(body, var__tmp_289, var__2490073326117332478);
new Equality(body, var__tmp_289, var_out_1);
}, var__8176999170138675379, false);
new Equality(body, var__tmp_288, var__8176999170138675379);
new Equality(body, var__tmp_288, var_out_1);
SetSequence.fromSet(bodies).addElement(body);
}
......@@ -243,18 +243,18 @@ public final class Typing_AsLTypeQuerySpecification extends MPSQuerySpecificatio
PVariable var__type = body.getOrCreateVariableByName("type");
PVariable var__match_a0d0a02 = body.getOrCreateVariableByName("match_a0d0a02");
PVariable var__tmp_290 = body.getOrCreateVariableByName("tmp_290");
PVariable var__tmp_291 = body.getOrCreateVariableByName("tmp_291");
PVariable var__tmp_289 = body.getOrCreateVariableByName("tmp_289");
PVariable var__match_a3a0u = body.getOrCreateVariableByName("match_a3a0u");
new TypeConstraint(body, Tuples.flatTupleOf(var_ty), new ConceptKey(MetaAdapterFactory.getInterfaceConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb938fL, "VariantTypes.structure.Type")));
new PositivePatternCall(body, Tuples.flatTupleOf(), Typing_AsLType_0_switchCommonQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__match_a3a0u, var_ty);
new TypeConstraint(body, Tuples.flatTupleOf(var__match_a3a0u), new ConceptKey(MetaAdapterFactory.getConcept(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93faL, "VariantTypes.structure.ParensType")));
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__match_a3a0u, var__tmp_290), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93faL, 0x1a4a252762eb93ffL, "ty")));
new Equality(body, var__match_a0d0a02, var__tmp_290);
new TypeConstraint(body, Tuples.staticArityFlatTupleOf(var__match_a3a0u, var__tmp_289), new ConceptFeatureKey(MetaAdapterFactory.getContainmentLink(0x3ace5b6c22d54933L, 0x9217595f2ebf8d6aL, 0x1a4a252762eb93faL, 0x1a4a252762eb93ffL, "ty")));
new Equality(body, var__match_a0d0a02, var__tmp_289);
new Equality(body, var__type, var__match_a0d0a02);
new PositivePatternCall(body, Tuples.flatTupleOf(var__type, var__tmp_291), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__tmp_291, var_out_1);
new PositivePatternCall(body, Tuples.flatTupleOf(var__type, var__tmp_290), Typing_AsLTypeQuerySpecification.instance().getInternalQueryRepresentation());
new Equality(body, var__tmp_290, var_out_1);
SetSequence.fromSet(bodies).addElement(body);
}
......
......@@ -89,14 +89,14 @@ public final class Typing_AsLTypeVariantQuerySpecification extends MPSQuerySpeci
exportedParameters.add(new ExportedParameter(body, var_out_1, p_out_1));
body.setSymbolicParameters(exportedParameters);
PVariable var__2490073326117308852 = body.getOrCreateVariableByName("2490073326117308852");
PVariable var__2490073326117308849 = body.getOrCreateVariableByName("2490073326117308849");
PVariable var__2490073326117308857 = body.newVirtualVariable();