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

introduction of languages for Products and Records and type checker for...

introduction of languages for Products and Records and type checker for Records including test (not all test cases succeed)
parent f04ae367
......@@ -3,7 +3,10 @@
<component name="MPSProject">
<projectModules>
<modulePath path="$PROJECT_DIR$/languages/NewLanguage/SumTypes.mpl" folder="" />
<modulePath path="$PROJECT_DIR$/languages/ProductTypes/ProductTypes.mpl" folder="" />
<modulePath path="$PROJECT_DIR$/languages/RecordTypes/RecordTypes.mpl" folder="" />
<modulePath path="$PROJECT_DIR$/languages/VariantTypes/VariantTypes.mpl" folder="" />
<modulePath path="$PROJECT_DIR$/solutions/RecordTypes_Checker/RecordTypes_Checker.msd" folder="" />
<modulePath path="$PROJECT_DIR$/solutions/SumTypes_Checker/SumTypes_Checker.msd" folder="." />
<modulePath path="$PROJECT_DIR$/solutions/VariantTypes_Checker/VariantTypes_Checker.msd" folder="" />
</projectModules>
......
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0" encoding="UTF-8"?>
<language namespace="ProductTypes" uuid="85035970-2cea-4190-979b-40e09340050d" languageVersion="0" moduleVersion="0">
<models>
<modelRoot contentPath="${module}" type="default">
<sourceRoot location="models" />
</modelRoot>
</models>
<accessoryModels />
<generators>
<generator alias="main" namespace="ProductTypes#3192721931267750511" uuid="3ccd3fc1-dcd8-4ebe-b078-b09cf06ee011">
<models>
<modelRoot contentPath="${module}/generator/template" type="default">
<sourceRoot location="." />
</modelRoot>
</models>
<external-templates />
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="8" />
<language slang="l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures" version="0" />
<language slang="l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections" version="1" />
<language slang="l:f2801650-65d5-424e-bb1b-463a8781b786:jetbrains.mps.baseLanguage.javadoc" version="2" />
<language slang="l:760a0a8c-eabb-4521-8bfd-65db761a9ba3:jetbrains.mps.baseLanguage.logging" version="0" />
<language slang="l:a247e09e-2435-45ba-b8d2-07e93feba96a:jetbrains.mps.baseLanguage.tuples" version="0" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="1" />
<language slang="l:b401a680-8325-4110-8fd3-84331ff25bef:jetbrains.mps.lang.generator" version="2" />
<language slang="l:d7706f63-9be2-479c-a3da-ae92af1e64d5:jetbrains.mps.lang.generator.generationContext" version="0" />
<language slang="l:289fcc83-6543-41e8-a5ca-768235715ce4:jetbrains.mps.lang.generator.generationParameters" version="0" />
<language slang="l:446c26eb-2b7b-4bf0-9b35-f83fa582753e:jetbrains.mps.lang.modelapi" version="0" />
<language slang="l:3a13115c-633c-4c5c-bbcc-75c4219e9555:jetbrains.mps.lang.quotation" version="0" />
<language slang="l:13744753-c81f-424a-9c1b-cf8943bf4e86:jetbrains.mps.lang.sharedConcepts" version="0" />
<language slang="l:7866978e-a0f0-4cc7-81bc-4d213d9375e1:jetbrains.mps.lang.smodel" version="13" />
<language slang="l:c7fb639f-be78-4307-89b0-b5959c3fa8c8:jetbrains.mps.lang.text" version="0" />
<language slang="l:9ded098b-ad6a-4657-bfd9-48636cfe8bc3:jetbrains.mps.lang.traceable" version="0" />
</languageVersions>
<dependencyVersions>
<module reference="3f233e7f-b8a6-46d2-a57f-795d56775243(Annotations)" version="0" />
<module reference="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" version="0" />
<module reference="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" version="0" />
<module reference="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" version="0" />
<module reference="85035970-2cea-4190-979b-40e09340050d(ProductTypes)" version="0" />
<module reference="3ccd3fc1-dcd8-4ebe-b078-b09cf06ee011(ProductTypes#3192721931267750511)" version="0" />
<module reference="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" version="0" />
</dependencyVersions>
<mapping-priorities />
</generator>
</generators>
<sourcePath />
<dependencies>
<dependency reexport="false">b802a056-92a2-4fbc-902e-f8e5004c331f(org.inca.core)</dependency>
</dependencies>
<languageVersions>
<language slang="l:9d69e719-78c8-4286-90db-fb19c107d049:com.mbeddr.mpsutil.grammarcells" version="0" />
<language slang="l:b4f35ed8-45af-4efa-abe4-00ac26956e69:com.mbeddr.mpsutil.grammarcells.runtimelang" version="0" />
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="8" />
<language slang="l:443f4c36-fcf5-4eb6-9500-8d06ed259e3e:jetbrains.mps.baseLanguage.classifiers" version="0" />
<language slang="l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures" version="0" />
<language slang="l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections" version="1" />
<language slang="l:f2801650-65d5-424e-bb1b-463a8781b786:jetbrains.mps.baseLanguage.javadoc" version="2" />
<language slang="l:760a0a8c-eabb-4521-8bfd-65db761a9ba3:jetbrains.mps.baseLanguage.logging" version="0" />
<language slang="l:a247e09e-2435-45ba-b8d2-07e93feba96a:jetbrains.mps.baseLanguage.tuples" version="0" />
<language slang="l:aee9cad2-acd4-4608-aef2-0004f6a1cdbd:jetbrains.mps.lang.actions" version="4" />
<language slang="l:af65afd8-f0dd-4942-87d9-63a55f2a9db1:jetbrains.mps.lang.behavior" version="2" />
<language slang="l:3f4bc5f5-c6c1-4a28-8b10-c83066ffa4a1:jetbrains.mps.lang.constraints" version="4" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="1" />
<language slang="l:f4ad079d-bc71-4ffb-9600-9328705cf998:jetbrains.mps.lang.descriptor" version="0" />
<language slang="l:18bc6592-03a6-4e29-a83a-7ff23bde13ba:jetbrains.mps.lang.editor" version="12" />
<language slang="l:446c26eb-2b7b-4bf0-9b35-f83fa582753e:jetbrains.mps.lang.modelapi" version="0" />
<language slang="l:d4615e3b-d671-4ba9-af01-2b78369b0ba7:jetbrains.mps.lang.pattern" version="1" />
<language slang="l:3a13115c-633c-4c5c-bbcc-75c4219e9555:jetbrains.mps.lang.quotation" version="0" />
<language slang="l:982eb8df-2c96-4bd7-9963-11712ea622e5:jetbrains.mps.lang.resources" version="2" />
<language slang="l:7866978e-a0f0-4cc7-81bc-4d213d9375e1:jetbrains.mps.lang.smodel" version="13" />
<language slang="l:c72da2b9-7cce-4447-8389-f407dc1158b7:jetbrains.mps.lang.structure" version="7" />
<language slang="l:c7fb639f-be78-4307-89b0-b5959c3fa8c8:jetbrains.mps.lang.text" version="0" />
<language slang="l:9ded098b-ad6a-4657-bfd9-48636cfe8bc3:jetbrains.mps.lang.traceable" version="0" />
<language slang="l:7a5dda62-9140-4668-ab76-d5ed1746f2b2:jetbrains.mps.lang.typesystem" version="1" />
</languageVersions>
<dependencyVersions>
<module reference="3f233e7f-b8a6-46d2-a57f-795d56775243(Annotations)" version="0" />
<module reference="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" version="0" />
<module reference="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" version="0" />
<module reference="1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor)" version="0" />
<module reference="498d89d2-c2e9-11e2-ad49-6cf049e62fe5(MPS.IDEA)" version="0" />
<module reference="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" version="0" />
<module reference="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61(MPS.Platform)" version="0" />
<module reference="85035970-2cea-4190-979b-40e09340050d(ProductTypes)" version="0" />
<module reference="f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)" version="0" />
<module reference="fd392034-7849-419d-9071-12563d152375(jetbrains.mps.baseLanguage.closures)" version="0" />
<module reference="83888646-71ce-4f1c-9c53-c54016f6ad4f(jetbrains.mps.baseLanguage.collections)" version="0" />
<module reference="f2801650-65d5-424e-bb1b-463a8781b786(jetbrains.mps.baseLanguage.javadoc)" version="0" />
<module reference="e39e4a59-8cb6-498e-860e-8fa8361c0d90(jetbrains.mps.baseLanguage.scopes)" version="0" />
<module reference="2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)" version="0" />
<module reference="d936855b-48da-4812-a8a0-2bfddd633ac5(jetbrains.mps.lang.behavior.api)" version="0" />
<module reference="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" version="0" />
<module reference="a9e4c532-c5f5-4bb7-99ef-42abb73bbb70(jetbrains.mps.lang.descriptor.aspects)" version="0" />
<module reference="446c26eb-2b7b-4bf0-9b35-f83fa582753e(jetbrains.mps.lang.modelapi)" version="0" />
<module reference="7866978e-a0f0-4cc7-81bc-4d213d9375e1(jetbrains.mps.lang.smodel)" version="1" />
<module reference="c72da2b9-7cce-4447-8389-f407dc1158b7(jetbrains.mps.lang.structure)" version="0" />
<module reference="9ded098b-ad6a-4657-bfd9-48636cfe8bc3(jetbrains.mps.lang.traceable)" version="0" />
<module reference="b802a056-92a2-4fbc-902e-f8e5004c331f(org.inca.core)" version="0" />
<module reference="bc791f96-4749-4311-a6e4-241e47ca97f9(org.inca.core.util)" version="0" />
</dependencyVersions>
<extendedLanguages />
</language>
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="BehaviorAspectDescriptor.java">
<unit at="11,0,22,0" name="ProductTypes.behavior.BehaviorAspectDescriptor" />
</file>
</root>
</debug-info>
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0" encoding="UTF-8"?>
<checkpoints>
<plan id="AspectCPS">
<checkpoint id="DescriptorClasses" file="aspectcps-descriptorclasses.mps" />
</plan>
</checkpoints>
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068580123140:jetbrains.mps.baseLanguage.structure.ConstructorDeclaration" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068580123155:jetbrains.mps.baseLanguage.structure.ExpressionStatement" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068580123165:jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068581242864:jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068581242878:jetbrains.mps.baseLanguage.structure.ReturnStatement" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1070475587102:jetbrains.mps.baseLanguage.structure.SuperConstructorInvocation" />
<root>
<file name="ConstraintsAspectDescriptor.java">
<unit at="13,0,33,0" name="ProductTypes.constraints.ConstraintsAspectDescriptor" />
</file>
</root>
<root nodeRef="r:df0809dc-3a89-45ff-8535-f76f378580da(ProductTypes.constraints)/2951477311799558508">
<file name="Var_Constraints.java">
<node id="2951477311799558508" at="17,28,18,134" concept="5" />
<node id="2951477311799558508" at="22,84,23,119" concept="3" />
<node id="2951477311799558586" at="26,40,27,20" concept="4" />
<node id="2951477311799558586" at="30,70,31,37" concept="3" />
<node id="2951477311799559064" at="31,37,32,233" concept="4" />
<node id="2951477311799558508" at="34,7,35,22" concept="4" />
<node id="2951477311799558508" at="17,0,20,0" concept="0" trace="Var_Constraints#()V" />
<node id="2951477311799558586" at="25,0,29,0" concept="2" trace="hasOwnValidator#()Z" />
<node id="2951477311799558586" at="29,0,34,0" concept="2" trace="validateValue#(Lorg/jetbrains/mps/openapi/model/SNode;Ljava/lang/String;)Z" />
<node id="2951477311799558586" at="23,119,34,7" concept="1" />
<node id="2951477311799558508" at="21,0,37,0" concept="2" trace="getSpecifiedProperties#()Ljava/util/Map;" />
<scope id="2951477311799558508" at="17,28,18,134" />
<scope id="2951477311799558586" at="26,40,27,20" />
<scope id="2951477311799558586" at="30,70,32,233">
<var name="propertyName" id="2951477311799558586" />
</scope>
<scope id="2951477311799558508" at="17,0,20,0" />
<scope id="2951477311799558586" at="25,0,29,0" />
<scope id="2951477311799558586" at="29,0,34,0">
<var name="node" id="2951477311799558586" />
<var name="propertyValue" id="2951477311799558586" />
</scope>
<scope id="2951477311799558508" at="22,84,35,22">
<var name="properties" id="2951477311799558508" />
</scope>
<scope id="2951477311799558508" at="21,0,37,0" />
<unit id="2951477311799558586" at="24,137,34,5" name="ProductTypes.constraints.Var_Constraints$1" />
<unit id="2951477311799558508" at="16,0,38,0" name="ProductTypes.constraints.Var_Constraints" />
</file>
</root>
<root nodeRef="r:df0809dc-3a89-45ff-8535-f76f378580da(ProductTypes.constraints)/2951477311799627903">
<file name="Let_Constraints.java">
<node id="2951477311799627903" at="17,28,18,134" concept="5" />
<node id="2951477311799627903" at="22,84,23,119" concept="3" />
<node id="2951477311799628656" at="26,40,27,20" concept="4" />
<node id="2951477311799628656" at="30,70,31,37" concept="3" />
<node id="5790571747118569642" at="31,37,32,149" concept="4" />
<node id="2951477311799627903" at="34,7,35,22" concept="4" />
<node id="2951477311799627903" at="17,0,20,0" concept="0" trace="Let_Constraints#()V" />
<node id="2951477311799628656" at="25,0,29,0" concept="2" trace="hasOwnValidator#()Z" />
<node id="2951477311799628656" at="29,0,34,0" concept="2" trace="validateValue#(Lorg/jetbrains/mps/openapi/model/SNode;Ljava/lang/String;)Z" />
<node id="2951477311799628656" at="23,119,34,7" concept="1" />
<node id="2951477311799627903" at="21,0,37,0" concept="2" trace="getSpecifiedProperties#()Ljava/util/Map;" />
<scope id="2951477311799627903" at="17,28,18,134" />
<scope id="2951477311799628656" at="26,40,27,20" />
<scope id="2951477311799628656" at="30,70,32,149">
<var name="propertyName" id="2951477311799628656" />
</scope>
<scope id="2951477311799627903" at="17,0,20,0" />
<scope id="2951477311799628656" at="25,0,29,0" />
<scope id="2951477311799628656" at="29,0,34,0">
<var name="node" id="2951477311799628656" />
<var name="propertyValue" id="2951477311799628656" />
</scope>
<scope id="2951477311799627903" at="22,84,35,22">
<var name="properties" id="2951477311799627903" />
</scope>
<scope id="2951477311799627903" at="21,0,37,0" />
<unit id="2951477311799628656" at="24,137,34,5" name="ProductTypes.constraints.Let_Constraints$1" />
<unit id="2951477311799627903" at="16,0,38,0" name="ProductTypes.constraints.Let_Constraints" />
</file>
</root>
<root nodeRef="r:df0809dc-3a89-45ff-8535-f76f378580da(ProductTypes.constraints)/7618853173233427716">
<file name="Lam_Constraints.java">
<node id="7618853173233427716" at="17,28,18,134" concept="5" />
<node id="7618853173233427716" at="22,84,23,119" concept="3" />
<node id="7618853173233427717" at="26,40,27,20" concept="4" />
<node id="7618853173233427717" at="30,70,31,37" concept="3" />
<node id="7618853173233428196" at="31,37,32,149" concept="4" />
<node id="7618853173233427716" at="34,7,35,22" concept="4" />
<node id="7618853173233427716" at="17,0,20,0" concept="0" trace="Lam_Constraints#()V" />
<node id="7618853173233427717" at="25,0,29,0" concept="2" trace="hasOwnValidator#()Z" />
<node id="7618853173233427717" at="29,0,34,0" concept="2" trace="validateValue#(Lorg/jetbrains/mps/openapi/model/SNode;Ljava/lang/String;)Z" />
<node id="7618853173233427717" at="23,119,34,7" concept="1" />
<node id="7618853173233427716" at="21,0,37,0" concept="2" trace="getSpecifiedProperties#()Ljava/util/Map;" />
<scope id="7618853173233427716" at="17,28,18,134" />
<scope id="7618853173233427717" at="26,40,27,20" />
<scope id="7618853173233427717" at="30,70,32,149">
<var name="propertyName" id="7618853173233427717" />
</scope>
<scope id="7618853173233427716" at="17,0,20,0" />
<scope id="7618853173233427717" at="25,0,29,0" />
<scope id="7618853173233427717" at="29,0,34,0">
<var name="node" id="7618853173233427717" />
<var name="propertyValue" id="7618853173233427717" />
</scope>
<scope id="7618853173233427716" at="22,84,35,22">
<var name="properties" id="7618853173233427716" />
</scope>
<scope id="7618853173233427716" at="21,0,37,0" />
<unit id="7618853173233427717" at="24,137,34,5" name="ProductTypes.constraints.Lam_Constraints$1" />
<unit id="7618853173233427716" at="16,0,38,0" name="ProductTypes.constraints.Lam_Constraints" />
</file>
</root>
</debug-info>
<?xml version="1.0" encoding="UTF-8"?>
<checkpoints>
<plan id="AspectCPS">
<checkpoint id="DescriptorClasses" file="aspectcps-descriptorclasses.mps" />
</plan>
</checkpoints>
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="Language.java">
<unit at="20,0,68,0" name="ProductTypes.Language" />
</file>
</root>
</debug-info>
<?xml version="1.0" encoding="UTF-8"?>
<model ref="00000000-0000-4000-5f02-5beb5f025beb/i:f3fe3e6(checkpoints/ProductTypes.typesystem@descriptorclasses)">
<persistence version="9" />
<attribute name="checkpoint" value="DescriptorClasses" />
<attribute name="generation-plan" value="AspectCPS" />
<languages />
<imports>
<import index="scq9" ref="r:938e5a09-547f-441e-b306-c2a137506ec7(ProductTypes.typesystem)" />
<import index="qurh" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.lang.typesystem.runtime(MPS.Core/)" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1068390468198" name="jetbrains.mps.baseLanguage.structure.ClassConcept" flags="ig" index="312cEu">
<child id="1165602531693" name="superclass" index="1zkMxy" />
</concept>
<concept id="1068580123132" name="jetbrains.mps.baseLanguage.structure.BaseMethodDeclaration" flags="ng" index="3clF44">
<child id="1068580123133" name="returnType" index="3clF45" />
<child id="1068580123135" name="body" index="3clF47" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS" />
<concept id="1068580123140" name="jetbrains.mps.baseLanguage.structure.ConstructorDeclaration" flags="ig" index="3clFbW" />
<concept id="1068581517677" name="jetbrains.mps.baseLanguage.structure.VoidType" flags="in" index="3cqZAl" />
<concept id="1107461130800" name="jetbrains.mps.baseLanguage.structure.Classifier" flags="ng" index="3pOWGL">
<child id="5375687026011219971" name="member" index="jymVt" unordered="true" />
</concept>
<concept id="1107535904670" name="jetbrains.mps.baseLanguage.structure.ClassifierType" flags="in" index="3uibUv">
<reference id="1107535924139" name="classifier" index="3uigEE" />
</concept>
<concept id="1178549954367" name="jetbrains.mps.baseLanguage.structure.IVisible" flags="ng" index="1B3ioH">
<child id="1178549979242" name="visibility" index="1B3o_S" />
</concept>
<concept id="1146644602865" name="jetbrains.mps.baseLanguage.structure.PublicVisibility" flags="nn" index="3Tm1VV" />
</language>
<language id="b401a680-8325-4110-8fd3-84331ff25bef" name="jetbrains.mps.lang.generator">
<concept id="3864140621129707969" name="jetbrains.mps.lang.generator.structure.GeneratorDebug_Mappings" flags="nn" index="39dXUE">
<child id="3864140621129713349" name="labels" index="39e2AI" />
</concept>
<concept id="3864140621129713351" name="jetbrains.mps.lang.generator.structure.GeneratorDebug_NodeMapEntry" flags="nn" index="39e2AG">
<property id="5843998055530255671" name="isNewRoot" index="2mV_xN" />
<child id="3864140621129713365" name="outputNode" index="39e2AY" />
</concept>
<concept id="3864140621129713348" name="jetbrains.mps.lang.generator.structure.GeneratorDebug_LabelEntry" flags="nn" index="39e2AJ">
<property id="3864140621129715945" name="label" index="39e3Y2" />
<child id="3864140621129715947" name="entries" index="39e3Y0" />
</concept>
<concept id="3864140621129713362" name="jetbrains.mps.lang.generator.structure.GeneratorDebug_NodeRef" flags="nn" index="39e2AT">
<reference id="3864140621129713363" name="node" index="39e2AS" />
</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="39dXUE" id="0">
<node concept="39e2AJ" id="1" role="39e2AI">
<property role="39e3Y2" value="descriptorClass" />
<node concept="39e2AG" id="2" role="39e3Y0">
<property role="2mV_xN" value="true" />
<node concept="39e2AT" id="3" role="39e2AY">
<ref role="39e2AS" node="4" resolve="TypesystemDescriptor" />
</node>
</node>
</node>
</node>
<node concept="312cEu" id="4">
<property role="TrG5h" value="TypesystemDescriptor" />
<node concept="3clFbW" id="5" role="jymVt">
<node concept="3clFbS" id="8" role="3clF47" />
<node concept="3Tm1VV" id="9" role="1B3o_S" />
<node concept="3cqZAl" id="a" role="3clF45" />
</node>
<node concept="3Tm1VV" id="6" role="1B3o_S" />
<node concept="3uibUv" id="7" role="1zkMxy">
<ref role="3uigEE" to="qurh:~BaseHelginsDescriptor" resolve="BaseHelginsDescriptor" />
</node>
</node>
</model>
<?xml version="1.0" encoding="UTF-8"?>
<checkpoints>
<plan id="AspectCPS">
<checkpoint id="DescriptorClasses" file="aspectcps-descriptorclasses.mps" />
</plan>
</checkpoints>
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="TypesystemDescriptor.java">
<unit at="7,0,11,0" name="ProductTypes.typesystem.TypesystemDescriptor" />
</file>
</root>
</debug-info>
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="Generator.java">
<unit at="16,0,41,0" name="ProductTypes.Generator" />
</file>
</root>
</debug-info>
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="QueriesGenerated.java">
<unit at="8,0,14,0" name="main.QueriesGenerated" />
</file>
</root>
</debug-info>
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="ProductTypes.Generator">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="jetbrains.mps.smodel.Generator" />
<classNode dependClassName="jetbrains.mps.smodel.language.LanguageRegistry" />
<classNode dependClassName="jetbrains.mps.smodel.language.LanguageRuntime" />
<classNode dependClassName="main.QueriesGenerated" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SLanguage" />
<classNode dependClassName="org.jetbrains.mps.openapi.module.SModuleReference" />
<classNode dependClassName="org.jetbrains.mps.openapi.persistence.PersistenceFacade" />
<classNode extendsClassName="jetbrains.mps.generator.runtime.TemplateModuleInterpreted2" />
</dependency>
</dependenciesRoot>
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="9yqu8zp47nhym7dj9r2onmazr0xcfrs">
<files names="Generator.java" />
</product>
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="main.QueriesGenerated">
<classNode dependClassName="jetbrains.mps.generator.runtime.Generated" />
<classNode extendsClassName="jetbrains.mps.generator.impl.query.QueryProviderBase" />
</dependency>
</dependenciesRoot>
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-arbf0pid07vwrts1ewmb8ria94iinl4">
<files names="QueriesGenerated.java" />
</product>
package ProductTypes;
/*Generated by MPS */
import jetbrains.mps.generator.runtime.TemplateModuleInterpreted2;
import jetbrains.mps.smodel.language.LanguageRegistry;
import jetbrains.mps.smodel.language.LanguageRuntime;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.module.SModuleReference;
import org.jetbrains.mps.openapi.persistence.PersistenceFacade;
import main.QueriesGenerated;
import java.util.Collection;
import org.jetbrains.mps.openapi.language.SLanguage;
import java.util.Arrays;
public class Generator extends TemplateModuleInterpreted2 {
public Generator(LanguageRegistry languageRegistry, LanguageRuntime sourceLanguage, jetbrains.mps.smodel.Generator generator) {
super(languageRegistry, sourceLanguage, generator);
}
@NotNull
@Override
public SModuleReference getModuleReference() {
return PersistenceFacade.getInstance().createModuleReference("3ccd3fc1-dcd8-4ebe-b078-b09cf06ee011(ProductTypes#3192721931267750511)");
}
@Override
protected void fillTemplateModels(TemplateModuleInterpreted2.TemplateModels models) {
models.templates("r:c0813130-f128-444e-96b1-9d2db129baef", QueriesGenerated.class);
}
@Override
public Collection<SLanguage> getTargetLanguages() {