Initial commit

This commit is contained in:
2019-12-19 00:49:58 +01:00
commit 35284e1e9a
125 changed files with 26235 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
# Project exclude paths
/languages/dynamicc/classes_gen/

2
.mps/.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
# Default ignored files
/workspace.xml

7
.mps/migration.xml Normal file
View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MigrationProperties">
<entry key="jetbrains.mps.ide.mpsmigration.v191.SaveAllJavaStubMethodRefsToShortForeignFormat" value="executed" />
<entry key="jetbrains.mps.ide.mpsmigration.v191.UpdateJavaStubMethodRefs" value="executed" />
</component>
</project>

6
.mps/misc.xml Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MPSFavoritesManager">
<option name="keepMe" value="true" />
</component>
</project>

9
.mps/modules.xml Normal file
View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MPSProject">
<projectModules>
<modulePath path="$PROJECT_DIR$/languages/dynamicc/dynamicc.mpl" folder="" />
<modulePath path="$PROJECT_DIR$/languages/dynamicc/sandbox/dynamicc.sandbox.msd" folder="" />
</projectModules>
</component>
</project>

View File

@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<language namespace="dynamicc" uuid="a6d9727f-4982-4bf8-abdd-083fea5126ab" languageVersion="0" moduleVersion="0">
<models>
<modelRoot contentPath="${module}" type="default">
<sourceRoot location="models" />
</modelRoot>
</models>
<accessoryModels />
<sourcePath />
<dependencies>
<dependency reexport="false">f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)</dependency>
<dependency reexport="false">1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor)</dependency>
</dependencies>
<languageVersions>
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="9" />
<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:c7d5b9dd-a05f-4be2-bc73-f2e16994cc67:jetbrains.mps.baseLanguage.lightweightdsl" version="1" />
<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:fe9d76d7-5809-45c9-ae28-a40915b4d6ff:jetbrains.mps.lang.checkedName" version="1" />
<language slang="l:3f4bc5f5-c6c1-4a28-8b10-c83066ffa4a1:jetbrains.mps.lang.constraints" version="5" />
<language slang="l:e51810c5-7308-4642-bcb6-469e61b5dd18:jetbrains.mps.lang.constraints.msg.specification" version="0" />
<language slang="l:47257bf3-78d3-470b-89d9-8c3261a61d15:jetbrains.mps.lang.constraints.rules" version="0" />
<language slang="l:5dae8159-ab99-46bb-a40d-0cee30ee7018:jetbrains.mps.lang.constraints.rules.kinds" version="0" />
<language slang="l:134c38d4-e3af-4d9e-b069-1c7df0a4005d:jetbrains.mps.lang.constraints.rules.skeleton" version="0" />
<language slang="l:3ad5badc-1d9c-461c-b7b1-fa2fcd0a0ae7:jetbrains.mps.lang.context" version="0" />
<language slang="l:ea3159bf-f48e-4720-bde2-86dba75f0d34:jetbrains.mps.lang.context.defs" version="0" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="2" />
<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="13" />
<language slang="l:d7a92d38-f7db-40d0-8431-763b0c3c9f20:jetbrains.mps.lang.intentions" version="1" />
<language slang="l:ad93155d-79b2-4759-b10c-55123e763903:jetbrains.mps.lang.messages" version="0" />
<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="2" />
<language slang="l:3a13115c-633c-4c5c-bbcc-75c4219e9555:jetbrains.mps.lang.quotation" version="3" />
<language slang="l:982eb8df-2c96-4bd7-9963-11712ea622e5:jetbrains.mps.lang.resources" version="2" />
<language slang="l:b3551702-269c-4f05-ba61-58060cef4292:jetbrains.mps.lang.rulesAndMessages" 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="17" />
<language slang="l:c72da2b9-7cce-4447-8389-f407dc1158b7:jetbrains.mps.lang.structure" version="9" />
<language slang="l:c7fb639f-be78-4307-89b0-b5959c3fa8c8:jetbrains.mps.lang.text" version="0" />
<language slang="l:b83431fe-5c8f-40bc-8a36-65e25f4dd253:jetbrains.mps.lang.textGen" version="1" />
<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="4" />
</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="a6d9727f-4982-4bf8-abdd-083fea5126ab(dynamicc)" version="0" />
<module reference="f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)" 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="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="9e98f4e2-decf-4e97-bf80-9109e8b759aa(jetbrains.mps.lang.feedback.context)" version="0" />
<module reference="9ded098b-ad6a-4657-bfd9-48636cfe8bc3(jetbrains.mps.lang.traceable)" version="0" />
</dependencyVersions>
<extendedLanguages />
</language>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="Generator.java">
<unit at="16,0,41,0" name="dynamicc.Generator" />
</file>
</root>
</debug-info>

View File

@@ -0,0 +1,9 @@
<?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>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.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>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-bpm0ee6nb36t6cfaj9khqal7bplygta">
<files names="Generator.java" />
</product>

View File

@@ -0,0 +1,8 @@
<?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>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-btjyii8msgjj404d5an7a8uz1do4e8o">
<files names="QueriesGenerated.java" />
</product>

View File

@@ -0,0 +1,40 @@
package dynamicc;
/*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("2f2aeeba-5f76-43cb-9b06-df117bcc8ea2(dynamicc#01)");
}
@Override
protected void fillTemplateModels(TemplateModuleInterpreted2.TemplateModels models) {
models.templates("r:d757e312-acb5-4f30-bea2-4336c46123a4", QueriesGenerated.class);
}
@Override
public Collection<SLanguage> getTargetLanguages() {
SLanguage[] rv = new SLanguage[0];
return Arrays.asList(rv);
}
}

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="Generator.java">
<unit at="16,0,41,0" name="dynamicc.Generator" />
</file>
</root>
</debug-info>

View File

@@ -0,0 +1,13 @@
package main;
/*Generated by MPS */
import jetbrains.mps.generator.runtime.Generated;
import jetbrains.mps.generator.impl.query.QueryProviderBase;
@Generated
public class QueriesGenerated extends QueryProviderBase {
public QueriesGenerated() {
super(1);
}
}

View File

@@ -0,0 +1,9 @@
<?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>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:d757e312-acb5-4f30-bea2-4336c46123a4(main@generator)">
<persistence version="9" />
<languages>
<devkit ref="a2eb3a43-fcc2-4200-80dc-c60110c4862d(jetbrains.mps.devkit.templates)" />
</languages>
<imports>
<import index="zzhx" ref="r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)" />
</imports>
<registry>
<language id="b401a680-8325-4110-8fd3-84331ff25bef" name="jetbrains.mps.lang.generator">
<concept id="1095416546421" name="jetbrains.mps.lang.generator.structure.MappingConfiguration" flags="ig" index="bUwia" />
</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="bUwia" id="3DJOHScciGm">
<property role="TrG5h" value="main" />
</node>
</model>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:42bfd9b7-bcd7-4379-ba2a-6d46b76c5a8d(dynamicc.behavior)">
<persistence version="9" />
<languages>
<use id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel" version="17" />
<use id="af65afd8-f0dd-4942-87d9-63a55f2a9db1" name="jetbrains.mps.lang.behavior" version="2" />
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
</languages>
<imports />
<registry />
</model>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:be166b54-261c-4e81-8aeb-f6dcc0840b63(dynamicc.constraints)">
<persistence version="9" />
<languages>
<use id="5dae8159-ab99-46bb-a40d-0cee30ee7018" name="jetbrains.mps.lang.constraints.rules.kinds" version="0" />
<use id="ea3159bf-f48e-4720-bde2-86dba75f0d34" name="jetbrains.mps.lang.context.defs" version="0" />
<use id="e51810c5-7308-4642-bcb6-469e61b5dd18" name="jetbrains.mps.lang.constraints.msg.specification" version="0" />
<use id="134c38d4-e3af-4d9e-b069-1c7df0a4005d" name="jetbrains.mps.lang.constraints.rules.skeleton" version="0" />
<use id="b3551702-269c-4f05-ba61-58060cef4292" name="jetbrains.mps.lang.rulesAndMessages" version="0" />
<use id="3f4bc5f5-c6c1-4a28-8b10-c83066ffa4a1" name="jetbrains.mps.lang.constraints" version="5" />
<use id="13744753-c81f-424a-9c1b-cf8943bf4e86" name="jetbrains.mps.lang.sharedConcepts" version="0" />
<use id="3ad5badc-1d9c-461c-b7b1-fa2fcd0a0ae7" name="jetbrains.mps.lang.context" version="0" />
<use id="ad93155d-79b2-4759-b10c-55123e763903" name="jetbrains.mps.lang.messages" version="0" />
<devkit ref="00000000-0000-4000-0000-5604ebd4f22c(jetbrains.mps.devkit.aspect.constraints)" />
</languages>
<imports />
<registry />
</model>

View File

@@ -0,0 +1,625 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:3d0f2f87-1890-4bcb-98eb-b93177690091(dynamicc.editor)">
<persistence version="9" />
<languages>
<use id="18bc6592-03a6-4e29-a83a-7ff23bde13ba" name="jetbrains.mps.lang.editor" version="13" />
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
</languages>
<imports>
<import index="tpen" ref="r:00000000-0000-4000-0000-011c895902c3(jetbrains.mps.baseLanguage.editor)" />
<import index="zzhx" ref="r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)" implicit="true" />
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" implicit="true" />
<import index="tpco" ref="r:00000000-0000-4000-0000-011c89590284(jetbrains.mps.lang.core.editor)" implicit="true" />
</imports>
<registry>
<language id="18bc6592-03a6-4e29-a83a-7ff23bde13ba" name="jetbrains.mps.lang.editor">
<concept id="1071666914219" name="jetbrains.mps.lang.editor.structure.ConceptEditorDeclaration" flags="ig" index="24kQdi" />
<concept id="7418278005949660372" name="jetbrains.mps.lang.editor.structure.FontFamilyStyleClassItem" flags="ln" index="2biZxu" />
<concept id="1198489924438" name="jetbrains.mps.lang.editor.structure.CellModel_Block" flags="sg" stub="8104358048506730066" index="b$f91">
<child id="1198489985045" name="header" index="b$u42" />
<child id="1198489993734" name="body" index="b$wch" />
</concept>
<concept id="1140524381322" name="jetbrains.mps.lang.editor.structure.CellModel_ListWithRole" flags="ng" index="2czfm3">
<property id="1140524450557" name="separatorText" index="2czwfO" />
<child id="1140524464360" name="cellLayout" index="2czzBx" />
</concept>
<concept id="1106270571710" name="jetbrains.mps.lang.editor.structure.CellLayout_Vertical" flags="nn" index="2iRkQZ" />
<concept id="1237303669825" name="jetbrains.mps.lang.editor.structure.CellLayout_Indent" flags="nn" index="l2Vlx" />
<concept id="1142886221719" name="jetbrains.mps.lang.editor.structure.QueryFunction_NodeCondition" flags="in" index="pkWqt" />
<concept id="1142886811589" name="jetbrains.mps.lang.editor.structure.ConceptFunctionParameter_node" flags="nn" index="pncrf" />
<concept id="1080736578640" name="jetbrains.mps.lang.editor.structure.BaseEditorComponent" flags="ig" index="2wURMF">
<child id="1080736633877" name="cellModel" index="2wV5jI" />
</concept>
<concept id="1078939183254" name="jetbrains.mps.lang.editor.structure.CellModel_Component" flags="sg" stub="3162947552742194261" index="PMmxH">
<reference id="1078939183255" name="editorComponent" index="PMmxG" />
</concept>
<concept id="1186402211651" name="jetbrains.mps.lang.editor.structure.StyleSheet" flags="ng" index="V5hpn">
<child id="1186402402630" name="styleClass" index="V601i" />
</concept>
<concept id="1186403694788" name="jetbrains.mps.lang.editor.structure.ColorStyleClassItem" flags="ln" index="VaVBg">
<property id="1186403713874" name="color" index="Vb096" />
</concept>
<concept id="1186403751766" name="jetbrains.mps.lang.editor.structure.FontStyleStyleClassItem" flags="ln" index="Vb9p2">
<property id="1186403771423" name="style" index="Vbekb" />
</concept>
<concept id="1186404549998" name="jetbrains.mps.lang.editor.structure.ForegroundColorStyleClassItem" flags="ln" index="VechU" />
<concept id="1186414536763" name="jetbrains.mps.lang.editor.structure.BooleanStyleSheetItem" flags="ln" index="VOi$J">
<property id="1186414551515" name="flag" index="VOm3f" />
</concept>
<concept id="1186414928363" name="jetbrains.mps.lang.editor.structure.SelectableStyleSheetItem" flags="ln" index="VPM3Z" />
<concept id="1186414999511" name="jetbrains.mps.lang.editor.structure.UnderlinedStyleClassItem" flags="ln" index="VQ3r3">
<child id="1221219051630" name="query" index="1mkY_M" />
</concept>
<concept id="1186415722038" name="jetbrains.mps.lang.editor.structure.FontSizeStyleClassItem" flags="ln" index="VSNWy">
<property id="1221209241505" name="value" index="1lJzqX" />
</concept>
<concept id="1233758997495" name="jetbrains.mps.lang.editor.structure.PunctuationLeftStyleClassItem" flags="ln" index="11L4FC" />
<concept id="1233759184865" name="jetbrains.mps.lang.editor.structure.PunctuationRightStyleClassItem" flags="ln" index="11LMrY" />
<concept id="3383245079137382180" name="jetbrains.mps.lang.editor.structure.StyleClass" flags="ig" index="14StLt" />
<concept id="1221062700015" name="jetbrains.mps.lang.editor.structure.QueryFunction_Underlined" flags="in" index="1d0yFN" />
<concept id="1088013125922" name="jetbrains.mps.lang.editor.structure.CellModel_RefCell" flags="sg" stub="730538219795941030" index="1iCGBv">
<child id="1088186146602" name="editorComponent" index="1sWHZn" />
</concept>
<concept id="1381004262292414836" name="jetbrains.mps.lang.editor.structure.ICellStyle" flags="ng" index="1k5N5V">
<reference id="1381004262292426837" name="parentStyleClass" index="1k5W1q" />
</concept>
<concept id="7228435049763093185" name="jetbrains.mps.lang.editor.structure.FontFamilyContainer" flags="ng" index="1rj3mw">
<property id="7228435049763093186" name="family" index="1rj3mz" />
</concept>
<concept id="1088185857835" name="jetbrains.mps.lang.editor.structure.InlineEditorComponent" flags="ig" index="1sVBvm" />
<concept id="1139848536355" name="jetbrains.mps.lang.editor.structure.CellModel_WithRole" flags="ng" index="1$h60E">
<property id="1139852716018" name="noTargetText" index="1$x2rV" />
<property id="1140017977771" name="readOnly" index="1Intyy" />
<property id="1140114345053" name="allowEmptyText" index="1O74Pk" />
<reference id="1140103550593" name="relationDeclaration" index="1NtTu8" />
</concept>
<concept id="1073389214265" name="jetbrains.mps.lang.editor.structure.EditorCellModel" flags="ng" index="3EYTF0">
<child id="1142887637401" name="renderingCondition" index="pqm2j" />
</concept>
<concept id="1073389446423" name="jetbrains.mps.lang.editor.structure.CellModel_Collection" flags="sn" stub="3013115976261988961" index="3EZMnI">
<child id="1106270802874" name="cellLayout" index="2iSdaV" />
<child id="1073389446424" name="childCellModel" index="3EZMnx" />
</concept>
<concept id="1073389577006" name="jetbrains.mps.lang.editor.structure.CellModel_Constant" flags="sn" stub="3610246225209162225" index="3F0ifn">
<property id="1073389577007" name="text" index="3F0ifm" />
</concept>
<concept id="1073389658414" name="jetbrains.mps.lang.editor.structure.CellModel_Property" flags="sg" stub="730538219796134133" index="3F0A7n" />
<concept id="1219418625346" name="jetbrains.mps.lang.editor.structure.IStyleContainer" flags="ng" index="3F0Thp">
<child id="1219418656006" name="styleItem" index="3F10Kt" />
</concept>
<concept id="1073389882823" name="jetbrains.mps.lang.editor.structure.CellModel_RefNode" flags="sg" stub="730538219795960754" index="3F1sOY" />
<concept id="1073390211982" name="jetbrains.mps.lang.editor.structure.CellModel_RefNodeList" flags="sg" stub="2794558372793454595" index="3F2HdR" />
<concept id="1088612959204" name="jetbrains.mps.lang.editor.structure.CellModel_Alternation" flags="sg" stub="8104358048506729361" index="1QoScp">
<property id="1088613081987" name="vertical" index="1QpmdY" />
<child id="1145918517974" name="alternationCondition" index="3e4ffs" />
<child id="1088612958265" name="ifTrueCellModel" index="1QoS34" />
<child id="1088612973955" name="ifFalseCellModel" index="1QoVPY" />
</concept>
<concept id="1166049232041" name="jetbrains.mps.lang.editor.structure.AbstractComponent" flags="ng" index="1XWOmA">
<reference id="1166049300910" name="conceptDeclaration" index="1XX52x" />
</concept>
</language>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
<child id="1197027771414" name="operand" index="2Oq$k0" />
<child id="1197027833540" name="operation" index="2OqNvi" />
</concept>
<concept id="1137021947720" name="jetbrains.mps.baseLanguage.structure.ConceptFunction" flags="in" index="2VMwT0">
<child id="1137022507850" name="body" index="2VODD2" />
</concept>
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
<concept id="1068580123157" name="jetbrains.mps.baseLanguage.structure.Statement" flags="nn" index="3clFbH" />
<concept id="1068580123159" name="jetbrains.mps.baseLanguage.structure.IfStatement" flags="nn" index="3clFbJ">
<child id="1068580123160" name="condition" index="3clFbw" />
<child id="1068580123161" name="ifTrue" index="3clFbx" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068580123137" name="jetbrains.mps.baseLanguage.structure.BooleanConstant" flags="nn" index="3clFbT">
<property id="1068580123138" name="value" index="3clFbU" />
</concept>
<concept id="1068581242878" name="jetbrains.mps.baseLanguage.structure.ReturnStatement" flags="nn" index="3cpWs6">
<child id="1068581517676" name="expression" index="3cqZAk" />
</concept>
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="1177026924588" name="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" flags="nn" index="chp4Y">
<reference id="1177026940964" name="conceptDeclaration" index="cht4Q" />
</concept>
<concept id="7453996997717780434" name="jetbrains.mps.lang.smodel.structure.Node_GetSConceptOperation" flags="nn" index="2yIwOk" />
<concept id="1172326502327" name="jetbrains.mps.lang.smodel.structure.Concept_IsExactlyOperation" flags="nn" index="3O6GUB">
<child id="1206733650006" name="conceptArgument" index="3QVz_e" />
</concept>
<concept id="1138056022639" name="jetbrains.mps.lang.smodel.structure.SPropertyAccess" flags="nn" index="3TrcHB">
<reference id="1138056395725" name="property" index="3TsBF5" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<property id="1193676396447" name="virtualPackage" index="3GE5qa" />
</concept>
<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="24kQdi" id="3DJOHScciGu">
<ref role="1XX52x" to="zzhx:3DJOHScciGt" resolve="Module" />
<node concept="3EZMnI" id="3DJOHScciGw" role="2wV5jI">
<node concept="3F0A7n" id="3DJOHScciGF" role="3EZMnx">
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<node concept="2biZxu" id="3DJOHScclJ8" role="3F10Kt">
<property role="1rj3mz" value="Arial" />
</node>
<node concept="VSNWy" id="3DJOHScclJd" role="3F10Kt">
<property role="1lJzqX" value="32" />
</node>
<node concept="Vb9p2" id="3DJOHScclJl" role="3F10Kt">
<property role="Vbekb" value="g1_k_vY/BOLD" />
</node>
</node>
<node concept="3F0A7n" id="3DJOHScciGL" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:3DJOHScciGD" resolve="module" />
<node concept="2biZxu" id="3DJOHScclJq" role="3F10Kt">
<property role="1rj3mz" value="Arial" />
</node>
<node concept="VSNWy" id="3DJOHScclJv" role="3F10Kt">
<property role="1lJzqX" value="12" />
</node>
<node concept="VechU" id="3DJOHScclJB" role="3F10Kt">
<property role="Vb096" value="fLJRk5_/gray" />
</node>
</node>
<node concept="3F0ifn" id="3DJOHScclJG" role="3EZMnx" />
<node concept="3F2HdR" id="3DJOHScciGV" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:3DJOHScciGT" resolve="statements" />
<node concept="2iRkQZ" id="3DJOHScciGX" role="2czzBx" />
</node>
<node concept="2iRkQZ" id="3DJOHScciGz" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="3DJOHSccPL2">
<property role="3GE5qa" value="Statements.Types" />
<ref role="1XX52x" to="zzhx:3DJOHSccPKN" resolve="Type" />
<node concept="3EZMnI" id="3DJOHSccPL4" role="2wV5jI">
<node concept="1QoScp" id="2rE0H8ESEr9" role="3EZMnx">
<property role="1QpmdY" value="true" />
<node concept="3F0ifn" id="2rE0H8ESEsp" role="1QoS34">
<property role="3F0ifm" value="strong" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="pkWqt" id="2rE0H8ESErc" role="3e4ffs">
<node concept="3clFbS" id="2rE0H8ESEre" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESEsF" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8ESE$x" role="3clFbG">
<node concept="pncrf" id="2rE0H8ESEsE" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ESECb" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKQ" resolve="strong" />
</node>
</node>
</node>
</node>
</node>
<node concept="3F0ifn" id="2rE0H8ESEsu" role="1QoVPY">
<property role="3F0ifm" value="weak" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
</node>
<node concept="PMmxH" id="3DJOHSccPLb" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="3F0A7n" id="3DJOHSccQr$" role="3EZMnx">
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHSccQwn" resolve="TypeName" />
</node>
<node concept="3F0ifn" id="3DJOHSccQsY" role="3EZMnx">
<property role="3F0ifm" value="from" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="1QoScp" id="2rE0H8ERwA1" role="3EZMnx">
<property role="1QpmdY" value="true" />
<node concept="pkWqt" id="2rE0H8ERwA4" role="3e4ffs">
<node concept="3clFbS" id="2rE0H8ERwA6" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ERwJ4" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8ERwXk" role="3clFbG">
<node concept="pncrf" id="2rE0H8ERwJ3" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ERx9A" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERwCu" resolve="is_c_type" />
</node>
</node>
</node>
</node>
</node>
<node concept="1iCGBv" id="2rE0H8ERwBl" role="1QoVPY">
<ref role="1NtTu8" to="zzhx:3DJOHSccPKS" resolve="parent" />
<node concept="1sVBvm" id="2rE0H8ERwBn" role="1sWHZn">
<node concept="3F0A7n" id="2rE0H8ERwBw" role="2wV5jI">
<property role="1Intyy" value="true" />
<property role="1$x2rV" value="unit" />
<property role="1O74Pk" value="true" />
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHSccQwn" resolve="TypeName" />
</node>
</node>
</node>
<node concept="3EZMnI" id="2rE0H8ESWDz" role="1QoS34">
<node concept="3F0ifn" id="2rE0H8ESWEg" role="3EZMnx">
<property role="3F0ifm" value="ctype" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="l2Vlx" id="2rE0H8ESWD$" role="2iSdaV" />
<node concept="VPM3Z" id="2rE0H8ESWD_" role="3F10Kt" />
<node concept="3F0A7n" id="2rE0H8ESWEb" role="3EZMnx">
<property role="1O74Pk" value="true" />
<ref role="1NtTu8" to="zzhx:2rE0H8ERrBM" resolve="c_type" />
<ref role="1k5W1q" node="2rE0H8ETVeF" resolve="ctype" />
</node>
</node>
</node>
<node concept="l2Vlx" id="3DJOHSccPL7" role="2iSdaV" />
</node>
</node>
<node concept="V5hpn" id="3DJOHSccQwm">
<property role="TrG5h" value="Type" />
<node concept="14StLt" id="3DJOHSccQwn" role="V601i">
<property role="TrG5h" value="TypeName" />
<node concept="VechU" id="3DJOHSccQwp" role="3F10Kt">
<property role="Vb096" value="fLwANPt/cyan" />
</node>
<node concept="Vb9p2" id="4mR5_paRshr" role="3F10Kt">
<property role="Vbekb" value="g1_k_vY/BOLD" />
</node>
</node>
</node>
<node concept="24kQdi" id="3DJOHScd2pt">
<property role="3GE5qa" value="Statements" />
<ref role="1XX52x" to="zzhx:3DJOHScd2pi" resolve="NewlineStatement" />
<node concept="3F0ifn" id="3DJOHScd2pv" role="2wV5jI" />
</node>
<node concept="24kQdi" id="3DJOHScd5DY">
<property role="3GE5qa" value="Statements.Variables" />
<ref role="1XX52x" to="zzhx:3DJOHSccPKI" resolve="Variable" />
<node concept="3EZMnI" id="3DJOHScd5E0" role="2wV5jI">
<node concept="PMmxH" id="3DJOHScd5E7" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="3F0A7n" id="3DJOHScd5Ec" role="3EZMnx">
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHScd5Fs" resolve="VariableName" />
</node>
<node concept="3F0ifn" id="3DJOHScdHdr" role="3EZMnx">
<property role="3F0ifm" value=":" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
<node concept="11L4FC" id="3DJOHScdHA5" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="1iCGBv" id="3DJOHScdHaN" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:3DJOHScd5DW" resolve="type" />
<node concept="1sVBvm" id="3DJOHScdHaP" role="1sWHZn">
<node concept="3F0A7n" id="3DJOHScdHaW" role="2wV5jI">
<property role="1Intyy" value="true" />
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHSccQwn" resolve="TypeName" />
</node>
</node>
</node>
<node concept="3F0ifn" id="3DJOHScdIhy" role="3EZMnx">
<property role="3F0ifm" value="?" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
<node concept="pkWqt" id="3DJOHScdIiI" role="pqm2j">
<node concept="3clFbS" id="3DJOHScdIiJ" role="2VODD2">
<node concept="3clFbF" id="3DJOHScdImJ" role="3cqZAp">
<node concept="2OqwBi" id="3DJOHScdIuP" role="3clFbG">
<node concept="pncrf" id="3DJOHScdImI" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHScdIwk" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKL" resolve="optional" />
</node>
</node>
</node>
</node>
</node>
<node concept="11L4FC" id="3DJOHScdWn7" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="3EZMnI" id="2rE0H8EVtaE" role="3EZMnx">
<node concept="VPM3Z" id="2rE0H8EVtaG" role="3F10Kt" />
<node concept="3F0ifn" id="2rE0H8EVtbA" role="3EZMnx">
<property role="3F0ifm" value="=" />
</node>
<node concept="3F1sOY" id="2rE0H8EVtbG" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:2rE0H8EVt29" resolve="assignment" />
</node>
<node concept="l2Vlx" id="2rE0H8EVtaJ" role="2iSdaV" />
<node concept="pkWqt" id="2rE0H8EVtbK" role="pqm2j">
<node concept="3clFbS" id="2rE0H8EVtbL" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVtfL" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8EVtqJ" role="3clFbG">
<node concept="pncrf" id="2rE0H8EVtfK" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EVurq" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EVudq" resolve="showAssignment" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="l2Vlx" id="3DJOHScd5E3" role="2iSdaV" />
</node>
</node>
<node concept="V5hpn" id="3DJOHScd5Fr">
<property role="TrG5h" value="Variable" />
<node concept="14StLt" id="3DJOHScd5Fs" role="V601i">
<property role="TrG5h" value="VariableName" />
<node concept="VechU" id="3DJOHScd5Fu" role="3F10Kt">
<property role="Vb096" value="fLwANPs/magenta" />
</node>
<node concept="VQ3r3" id="3DJOHScd5Fz" role="3F10Kt">
<node concept="1d0yFN" id="3DJOHScd6uL" role="1mkY_M">
<node concept="3clFbS" id="3DJOHScd6uM" role="2VODD2">
<node concept="3clFbJ" id="3DJOHScd6vi" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8ESw7B" role="3clFbw">
<node concept="2OqwBi" id="2rE0H8ESvAd" role="2Oq$k0">
<node concept="pncrf" id="3DJOHScd6zm" role="2Oq$k0" />
<node concept="2yIwOk" id="2rE0H8ESvIb" role="2OqNvi" />
</node>
<node concept="3O6GUB" id="2rE0H8ESwmp" role="2OqNvi">
<node concept="chp4Y" id="2rE0H8ESwqj" role="3QVz_e">
<ref role="cht4Q" to="zzhx:3DJOHScdGZq" resolve="ValVariable" />
</node>
</node>
</node>
<node concept="3clFbS" id="3DJOHScd6vk" role="3clFbx">
<node concept="3cpWs6" id="3DJOHScd6Ws" role="3cqZAp">
<node concept="3clFbT" id="3DJOHScdC4b" role="3cqZAk" />
</node>
</node>
</node>
<node concept="3clFbH" id="3DJOHScd7oD" role="3cqZAp" />
<node concept="3cpWs6" id="3DJOHScd7rc" role="3cqZAp">
<node concept="3clFbT" id="3DJOHScd7wE" role="3cqZAk">
<property role="3clFbU" value="true" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="V5hpn" id="3DJOHScdlH1">
<property role="TrG5h" value="Common" />
<node concept="14StLt" id="3DJOHScdlH2" role="V601i">
<property role="TrG5h" value="Text" />
<node concept="Vb9p2" id="3DJOHScdlH4" role="3F10Kt" />
</node>
</node>
<node concept="24kQdi" id="2rE0H8ETgfR">
<property role="3GE5qa" value="Statements.Variables" />
<ref role="1XX52x" to="zzhx:2rE0H8ETgfE" resolve="FunctionParameter" />
<node concept="3EZMnI" id="2rE0H8ETgfT" role="2wV5jI">
<node concept="3F0A7n" id="2rE0H8ETgg0" role="3EZMnx">
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHScd5Fs" resolve="VariableName" />
</node>
<node concept="3F0ifn" id="2rE0H8ETgg6" role="3EZMnx">
<property role="3F0ifm" value=":" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
<node concept="11L4FC" id="2rE0H8ETggs" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="1iCGBv" id="2rE0H8ETgge" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:3DJOHScd5DW" resolve="type" />
<node concept="1sVBvm" id="2rE0H8ETggg" role="1sWHZn">
<node concept="3F0A7n" id="2rE0H8ETggp" role="2wV5jI">
<property role="1Intyy" value="true" />
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHSccQwn" resolve="TypeName" />
</node>
</node>
</node>
<node concept="l2Vlx" id="2rE0H8ETgfW" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="2rE0H8ETgqO">
<property role="3GE5qa" value="Statements" />
<ref role="1XX52x" to="zzhx:2rE0H8ETgfu" resolve="Function" />
<node concept="b$f91" id="2rE0H8ETgqQ" role="2wV5jI">
<node concept="3F2HdR" id="2rE0H8ETgr5" role="b$wch">
<ref role="1NtTu8" to="zzhx:2rE0H8ETgfx" resolve="statements" />
<node concept="2iRkQZ" id="2rE0H8ETgr7" role="2czzBx" />
</node>
<node concept="3EZMnI" id="2rE0H8ETgrc" role="b$u42">
<node concept="l2Vlx" id="2rE0H8ETgrd" role="2iSdaV" />
<node concept="PMmxH" id="2rE0H8ETgrg" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="3F0A7n" id="2rE0H8ETgrl" role="3EZMnx">
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
</node>
<node concept="3F0ifn" id="2rE0H8ETgrz" role="3EZMnx">
<property role="3F0ifm" value="(" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
<node concept="11L4FC" id="2rE0H8ETgrC" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
<node concept="11LMrY" id="2rE0H8ETgrH" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="3F2HdR" id="2rE0H8ETgrS" role="3EZMnx">
<property role="2czwfO" value="," />
<ref role="1NtTu8" to="zzhx:2rE0H8ETgfz" resolve="parameters" />
<node concept="l2Vlx" id="2rE0H8ETgrU" role="2czzBx" />
</node>
<node concept="3F0ifn" id="2rE0H8ETgsb" role="3EZMnx">
<property role="3F0ifm" value=")" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
<node concept="11L4FC" id="2rE0H8ETgsl" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="3EZMnI" id="2rE0H8ETgsy" role="3EZMnx">
<node concept="VPM3Z" id="2rE0H8ETgs$" role="3F10Kt" />
<node concept="3F0ifn" id="2rE0H8ETgsQ" role="3EZMnx">
<property role="3F0ifm" value=":" />
<ref role="1k5W1q" node="3DJOHScdlH2" resolve="Text" />
<node concept="11L4FC" id="2rE0H8ETgsT" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="1iCGBv" id="2rE0H8ETvUZ" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:2rE0H8ETvji" resolve="returnType" />
<node concept="1sVBvm" id="2rE0H8ETvV1" role="1sWHZn">
<node concept="3F0A7n" id="2rE0H8ETvVG" role="2wV5jI">
<property role="1Intyy" value="true" />
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHSccQwn" resolve="TypeName" />
</node>
</node>
</node>
<node concept="l2Vlx" id="2rE0H8ETgsB" role="2iSdaV" />
<node concept="pkWqt" id="2rE0H8ETgtf" role="pqm2j">
<node concept="3clFbS" id="2rE0H8ETgtg" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ETgxg" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8ETgJw" role="3clFbG">
<node concept="pncrf" id="2rE0H8ETgxf" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETgW5" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ETgtd" resolve="hasReturnType" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="V5hpn" id="2rE0H8ETVeE">
<property role="TrG5h" value="CCode" />
<node concept="14StLt" id="2rE0H8ETVeF" role="V601i">
<property role="TrG5h" value="ctype" />
<node concept="VechU" id="2rE0H8ETVeH" role="3F10Kt">
<property role="Vb096" value="fLwANPq/yellow" />
</node>
<node concept="Vb9p2" id="2rE0H8ETVeM" role="3F10Kt">
<property role="Vbekb" value="g1_k_vY/BOLD" />
</node>
</node>
<node concept="14StLt" id="2rE0H8EU4kn" role="V601i">
<property role="TrG5h" value="c_code_block" />
<node concept="VechU" id="2rE0H8EUfTh" role="3F10Kt">
<property role="Vb096" value="fLwANPq/yellow" />
</node>
<node concept="Vb9p2" id="2rE0H8EU4kE" role="3F10Kt" />
</node>
</node>
<node concept="24kQdi" id="2rE0H8EU4kM">
<property role="3GE5qa" value="Statements" />
<ref role="1XX52x" to="zzhx:2rE0H8EU4kJ" resolve="CCodeBlock" />
<node concept="3EZMnI" id="2rE0H8EVi9Q" role="2wV5jI">
<node concept="PMmxH" id="2rE0H8EVi9X" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="3F0A7n" id="2rE0H8EVia2" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:2rE0H8EU4kK" resolve="code_block" />
<ref role="1k5W1q" node="2rE0H8EU4kn" resolve="c_code_block" />
<node concept="11L4FC" id="4mR5_paQE_K" role="3F10Kt">
<property role="VOm3f" value="true" />
</node>
</node>
<node concept="l2Vlx" id="2rE0H8EVi9T" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="2rE0H8EVrBO">
<property role="3GE5qa" value="Expressions" />
<ref role="1XX52x" to="zzhx:2rE0H8EVrBA" resolve="Cast" />
<node concept="3EZMnI" id="2rE0H8EVrBQ" role="2wV5jI">
<node concept="3F1sOY" id="2rE0H8EVtBs" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:2rE0H8EVtB8" resolve="expression" />
</node>
<node concept="PMmxH" id="2rE0H8EVrCm" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
<ref role="1k5W1q" to="tpen:hgVS8CF" resolve="KeyWord" />
</node>
<node concept="1iCGBv" id="2rE0H8EVrCx" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:2rE0H8EVrBD" resolve="type" />
<node concept="1sVBvm" id="2rE0H8EVrCz" role="1sWHZn">
<node concept="3F0A7n" id="2rE0H8EVrCI" role="2wV5jI">
<property role="1Intyy" value="true" />
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHSccQwn" resolve="TypeName" />
</node>
</node>
</node>
<node concept="l2Vlx" id="2rE0H8EVrBT" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="2rE0H8EVt0Y">
<property role="3GE5qa" value="Statements" />
<ref role="1XX52x" to="zzhx:2rE0H8EVt0K" resolve="Assignment" />
<node concept="3EZMnI" id="2rE0H8EVt10" role="2wV5jI">
<node concept="3F2HdR" id="4mR5_paRMPS" role="3EZMnx">
<property role="2czwfO" value="," />
<ref role="1NtTu8" to="zzhx:4mR5_paRMPJ" resolve="variables" />
<node concept="l2Vlx" id="4mR5_paRMPV" role="2czzBx" />
</node>
<node concept="PMmxH" id="2rE0H8EVt1o" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
</node>
<node concept="3F2HdR" id="4mR5_paRMQa" role="3EZMnx">
<property role="2czwfO" value="," />
<ref role="1NtTu8" to="zzhx:2rE0H8EVt0N" resolve="expression" />
<node concept="l2Vlx" id="4mR5_paRMQd" role="2czzBx" />
</node>
<node concept="l2Vlx" id="2rE0H8EVt13" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="2rE0H8EVKbv">
<property role="3GE5qa" value="Expressions" />
<ref role="1XX52x" to="zzhx:2rE0H8EVKbk" resolve="VariableAccess" />
<node concept="1iCGBv" id="2rE0H8EVKbx" role="2wV5jI">
<ref role="1NtTu8" to="zzhx:2rE0H8EVKbl" resolve="variable" />
<node concept="1sVBvm" id="2rE0H8EVKbz" role="1sWHZn">
<node concept="3F0A7n" id="2rE0H8EVKbE" role="2wV5jI">
<property role="1Intyy" value="true" />
<ref role="1NtTu8" to="tpck:h0TrG11" resolve="name" />
<ref role="1k5W1q" node="3DJOHScd5Fs" resolve="VariableName" />
</node>
</node>
</node>
</node>
<node concept="24kQdi" id="2rE0H8EWdEH">
<property role="3GE5qa" value="Statements" />
<ref role="1XX52x" to="zzhx:2rE0H8EWdEo" resolve="SingleLineComment" />
<node concept="3EZMnI" id="2rE0H8EWdEJ" role="2wV5jI">
<node concept="PMmxH" id="2rE0H8EWdEQ" role="3EZMnx">
<ref role="PMmxG" to="tpco:2wZex4PafBj" resolve="alias" />
<ref role="1k5W1q" to="tpen:hshO_Yc" resolve="Comment" />
</node>
<node concept="3F0A7n" id="2rE0H8EWdEV" role="3EZMnx">
<ref role="1NtTu8" to="zzhx:2rE0H8EWdEp" resolve="comment" />
<ref role="1k5W1q" to="tpen:hshO_Yc" resolve="Comment" />
</node>
<node concept="l2Vlx" id="2rE0H8EWdEM" role="2iSdaV" />
</node>
</node>
<node concept="24kQdi" id="4mR5_paTml$">
<property role="3GE5qa" value="Expressions" />
<ref role="1XX52x" to="zzhx:4mR5_paTmlx" resolve="Int10LiteralConcept" />
<node concept="3F0A7n" id="4mR5_paTmlA" role="2wV5jI">
<ref role="1NtTu8" to="zzhx:4mR5_paTmly" resolve="literal" />
<ref role="1k5W1q" to="tpen:hshT4rC" resolve="NumericLiteral" />
</node>
</node>
</model>

View File

@@ -0,0 +1,523 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)">
<persistence version="9" />
<languages>
<use id="d7a92d38-f7db-40d0-8431-763b0c3c9f20" name="jetbrains.mps.lang.intentions" version="1" />
<use id="c7d5b9dd-a05f-4be2-bc73-f2e16994cc67" name="jetbrains.mps.baseLanguage.lightweightdsl" version="1" />
<use id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage" version="9" />
<devkit ref="fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)" />
</languages>
<imports>
<import index="6bz1" ref="r:d3905048-7598-4a84-931a-cbbcbcda146d(jetbrains.mps.lang.intentions.methods)" />
<import index="cj4x" ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224/java:jetbrains.mps.openapi.editor(MPS.Editor/)" />
<import index="zzhx" ref="r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)" implicit="true" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1215693861676" name="jetbrains.mps.baseLanguage.structure.BaseAssignmentExpression" flags="nn" index="d038R">
<child id="1068498886297" name="rValue" index="37vLTx" />
<child id="1068498886295" name="lValue" index="37vLTJ" />
</concept>
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
<child id="1197027771414" name="operand" index="2Oq$k0" />
<child id="1197027833540" name="operation" index="2OqNvi" />
</concept>
<concept id="1137021947720" name="jetbrains.mps.baseLanguage.structure.ConceptFunction" flags="in" index="2VMwT0">
<child id="1137022507850" name="body" index="2VODD2" />
</concept>
<concept id="1070475926800" name="jetbrains.mps.baseLanguage.structure.StringLiteral" flags="nn" index="Xl_RD">
<property id="1070475926801" name="value" index="Xl_RC" />
</concept>
<concept id="1068498886294" name="jetbrains.mps.baseLanguage.structure.AssignmentExpression" flags="nn" index="37vLTI" />
<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>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068580123137" name="jetbrains.mps.baseLanguage.structure.BooleanConstant" flags="nn" index="3clFbT">
<property id="1068580123138" name="value" index="3clFbU" />
</concept>
<concept id="1081516740877" name="jetbrains.mps.baseLanguage.structure.NotExpression" flags="nn" index="3fqX7Q">
<child id="1081516765348" name="expression" index="3fr31v" />
</concept>
<concept id="1081773326031" name="jetbrains.mps.baseLanguage.structure.BinaryOperation" flags="nn" index="3uHJSO">
<child id="1081773367579" name="rightExpression" index="3uHU7w" />
<child id="1081773367580" name="leftExpression" index="3uHU7B" />
</concept>
</language>
<language id="d7a92d38-f7db-40d0-8431-763b0c3c9f20" name="jetbrains.mps.lang.intentions">
<concept id="1192794744107" name="jetbrains.mps.lang.intentions.structure.IntentionDeclaration" flags="ig" index="2S6QgY" />
<concept id="1192794782375" name="jetbrains.mps.lang.intentions.structure.DescriptionBlock" flags="in" index="2S6ZIM" />
<concept id="1192795771125" name="jetbrains.mps.lang.intentions.structure.IsApplicableBlock" flags="in" index="2SaL7w" />
<concept id="1192795911897" name="jetbrains.mps.lang.intentions.structure.ExecuteBlock" flags="in" index="2Sbjvc" />
<concept id="1192796902958" name="jetbrains.mps.lang.intentions.structure.ConceptFunctionParameter_node" flags="nn" index="2Sf5sV" />
<concept id="2522969319638091381" name="jetbrains.mps.lang.intentions.structure.BaseIntentionDeclaration" flags="ig" index="2ZfUlf">
<property id="2522969319638091386" name="isAvailableInChildNodes" index="2ZfUl0" />
<reference id="2522969319638198290" name="forConcept" index="2ZfgGC" />
<child id="2522969319638198291" name="executeFunction" index="2ZfgGD" />
<child id="2522969319638093995" name="isApplicableFunction" index="2ZfVeh" />
<child id="2522969319638093993" name="descriptionFunction" index="2ZfVej" />
</concept>
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="1138056022639" name="jetbrains.mps.lang.smodel.structure.SPropertyAccess" flags="nn" index="3TrcHB">
<reference id="1138056395725" name="property" index="3TsBF5" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<property id="1193676396447" name="virtualPackage" index="3GE5qa" />
</concept>
<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="2S6QgY" id="3DJOHSccQAw">
<property role="TrG5h" value="MakeStrong" />
<property role="3GE5qa" value="Statements.Types" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKN" resolve="Type" />
<node concept="2S6ZIM" id="3DJOHSccQAx" role="2ZfVej">
<node concept="3clFbS" id="3DJOHSccQAy" role="2VODD2">
<node concept="3clFbF" id="3DJOHSccQGB" role="3cqZAp">
<node concept="Xl_RD" id="3DJOHSccQGA" role="3clFbG">
<property role="Xl_RC" value="Make Strong" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="3DJOHSccQAz" role="2ZfgGD">
<node concept="3clFbS" id="3DJOHSccQA$" role="2VODD2">
<node concept="3clFbF" id="3DJOHSccRLm" role="3cqZAp">
<node concept="37vLTI" id="3DJOHSccRNG" role="3clFbG">
<node concept="3clFbT" id="3DJOHSccRRZ" role="37vLTx">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="3DJOHSccRLT" role="37vLTJ">
<node concept="2Sf5sV" id="3DJOHSccRLl" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHSccRMN" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKQ" resolve="strong" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="3DJOHSccQIb" role="2ZfVeh">
<node concept="3clFbS" id="3DJOHSccQIc" role="2VODD2">
<node concept="3clFbF" id="3DJOHSccQMh" role="3cqZAp">
<node concept="3clFbC" id="3DJOHSccRxh" role="3clFbG">
<node concept="3clFbT" id="3DJOHSccRKv" role="3uHU7w" />
<node concept="2OqwBi" id="3DJOHSccR00" role="3uHU7B">
<node concept="2Sf5sV" id="3DJOHSccQMg" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHSccR8O" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKQ" resolve="strong" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="3DJOHSccRWb">
<property role="TrG5h" value="MakeWeak" />
<property role="3GE5qa" value="Statements.Types" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKN" resolve="Type" />
<node concept="2S6ZIM" id="3DJOHSccRWc" role="2ZfVej">
<node concept="3clFbS" id="3DJOHSccRWd" role="2VODD2">
<node concept="3clFbF" id="3DJOHSccS1j" role="3cqZAp">
<node concept="Xl_RD" id="3DJOHSccS1i" role="3clFbG">
<property role="Xl_RC" value="Make Weak" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="3DJOHSccRWe" role="2ZfgGD">
<node concept="3clFbS" id="3DJOHSccRWf" role="2VODD2">
<node concept="3clFbF" id="3DJOHSccTa2" role="3cqZAp">
<node concept="37vLTI" id="3DJOHSccTO2" role="3clFbG">
<node concept="3clFbT" id="3DJOHSccTOv" role="37vLTx" />
<node concept="2OqwBi" id="3DJOHSccThY" role="37vLTJ">
<node concept="2Sf5sV" id="3DJOHSccTa1" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHSccTqK" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKQ" resolve="strong" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="3DJOHSccS74" role="2ZfVeh">
<node concept="3clFbS" id="3DJOHSccS75" role="2VODD2">
<node concept="3clFbF" id="3DJOHSccSba" role="3cqZAp">
<node concept="3clFbC" id="3DJOHSccSTX" role="3clFbG">
<node concept="3clFbT" id="3DJOHSccT9b" role="3uHU7w">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="3DJOHSccSoC" role="3uHU7B">
<node concept="2Sf5sV" id="3DJOHSccSb9" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHSccSxw" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKQ" resolve="strong" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="3DJOHScdrdW">
<property role="TrG5h" value="MakeNullable" />
<property role="2ZfUl0" value="true" />
<property role="3GE5qa" value="Statements.Variables" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKI" resolve="Variable" />
<node concept="2S6ZIM" id="3DJOHScdrdX" role="2ZfVej">
<node concept="3clFbS" id="3DJOHScdrdY" role="2VODD2">
<node concept="3clFbF" id="3DJOHScdrja" role="3cqZAp">
<node concept="Xl_RD" id="3DJOHScdrsj" role="3clFbG">
<property role="Xl_RC" value="Make Nullable" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="3DJOHScdrdZ" role="2ZfgGD">
<node concept="3clFbS" id="3DJOHScdre0" role="2VODD2">
<node concept="3clFbF" id="3DJOHScds$X" role="3cqZAp">
<node concept="37vLTI" id="3DJOHScdtgu" role="3clFbG">
<node concept="3clFbT" id="3DJOHScdthb" role="37vLTx">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="3DJOHScdsHO" role="37vLTJ">
<node concept="2Sf5sV" id="3DJOHScds$W" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHScdsS2" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKL" resolve="optional" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="3DJOHScdruk" role="2ZfVeh">
<node concept="3clFbS" id="3DJOHScdrul" role="2VODD2">
<node concept="3clFbF" id="3DJOHScdryQ" role="3cqZAp">
<node concept="3clFbC" id="3DJOHScdsgx" role="3clFbG">
<node concept="3clFbT" id="3DJOHScdsvJ" role="3uHU7w" />
<node concept="2OqwBi" id="3DJOHScdrL6" role="3uHU7B">
<node concept="2Sf5sV" id="3DJOHScdryP" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHScdrVu" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKL" resolve="optional" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="3DJOHScdtln">
<property role="TrG5h" value="MakeNonNullable" />
<property role="2ZfUl0" value="true" />
<property role="3GE5qa" value="Statements.Variables" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKI" resolve="Variable" />
<node concept="2S6ZIM" id="3DJOHScdtlo" role="2ZfVej">
<node concept="3clFbS" id="3DJOHScdtlp" role="2VODD2">
<node concept="3clFbF" id="3DJOHScdtq_" role="3cqZAp">
<node concept="Xl_RD" id="3DJOHScdtq$" role="3clFbG">
<property role="Xl_RC" value="Make Non-Nullable" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="3DJOHScdtlq" role="2ZfgGD">
<node concept="3clFbS" id="3DJOHScdtlr" role="2VODD2">
<node concept="3clFbF" id="3DJOHScduzF" role="3cqZAp">
<node concept="37vLTI" id="3DJOHScdvc7" role="3clFbG">
<node concept="3clFbT" id="3DJOHScdvcO" role="37vLTx" />
<node concept="2OqwBi" id="3DJOHScduH3" role="37vLTJ">
<node concept="2Sf5sV" id="3DJOHScdu$d" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHScduRh" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKL" resolve="optional" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="3DJOHScdtxk" role="2ZfVeh">
<node concept="3clFbS" id="3DJOHScdtxl" role="2VODD2">
<node concept="3clFbF" id="3DJOHScdt_q" role="3cqZAp">
<node concept="3clFbC" id="3DJOHScdujl" role="3clFbG">
<node concept="3clFbT" id="3DJOHScduyz" role="3uHU7w">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="3DJOHScdtKo" role="3uHU7B">
<node concept="2Sf5sV" id="3DJOHScdt_p" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHScdtUG" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHSccPKL" resolve="optional" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="2rE0H8ESAbT">
<property role="TrG5h" value="UseTypeFromC" />
<property role="3GE5qa" value="Statements.Types" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKN" resolve="Type" />
<node concept="2S6ZIM" id="2rE0H8ESAbU" role="2ZfVej">
<node concept="3clFbS" id="2rE0H8ESAbV" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESAh1" role="3cqZAp">
<node concept="Xl_RD" id="2rE0H8ESAh0" role="3clFbG">
<property role="Xl_RC" value="Use Type from C" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="2rE0H8ESAbW" role="2ZfgGD">
<node concept="3clFbS" id="2rE0H8ESAbX" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESB60" role="3cqZAp">
<node concept="37vLTI" id="2rE0H8ESBBw" role="3clFbG">
<node concept="3clFbT" id="2rE0H8ESBFN" role="37vLTx">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="2rE0H8ESB8c" role="37vLTJ">
<node concept="2Sf5sV" id="2rE0H8ESB5Z" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ESBiW" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERwCu" resolve="is_c_type" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="2rE0H8ESAnh" role="2ZfVeh">
<node concept="3clFbS" id="2rE0H8ESAni" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESArn" role="3cqZAp">
<node concept="3fqX7Q" id="2rE0H8ESAXV" role="3clFbG">
<node concept="2OqwBi" id="2rE0H8ESAXX" role="3fr31v">
<node concept="2Sf5sV" id="2rE0H8ESAXY" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ESAXZ" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERwCu" resolve="is_c_type" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="2rE0H8ESBJZ">
<property role="TrG5h" value="NotUseTypeFromC" />
<property role="3GE5qa" value="Statements.Types" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKN" resolve="Type" />
<node concept="2S6ZIM" id="2rE0H8ESBK0" role="2ZfVej">
<node concept="3clFbS" id="2rE0H8ESBK1" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESBP7" role="3cqZAp">
<node concept="Xl_RD" id="2rE0H8ESBP6" role="3clFbG">
<property role="Xl_RC" value="Don't Use Type from C" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="2rE0H8ESBK2" role="2ZfgGD">
<node concept="3clFbS" id="2rE0H8ESBK3" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESCm9" role="3cqZAp">
<node concept="37vLTI" id="2rE0H8ESCEp" role="3clFbG">
<node concept="3clFbT" id="2rE0H8ESCEQ" role="37vLTx" />
<node concept="2OqwBi" id="2rE0H8ESCmr" role="37vLTJ">
<node concept="2Sf5sV" id="2rE0H8ESCm8" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ESCnG" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERwCu" resolve="is_c_type" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="2rE0H8ESBVQ" role="2ZfVeh">
<node concept="3clFbS" id="2rE0H8ESBVR" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ESBZW" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8ESC7M" role="3clFbG">
<node concept="2Sf5sV" id="2rE0H8ESBZV" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ESClt" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERwCu" resolve="is_c_type" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="2rE0H8ETh2m">
<property role="TrG5h" value="AddReturnType" />
<property role="3GE5qa" value="Statements" />
<ref role="2ZfgGC" to="zzhx:2rE0H8ETgfu" resolve="Function" />
<node concept="2S6ZIM" id="2rE0H8ETh2n" role="2ZfVej">
<node concept="3clFbS" id="2rE0H8ETh2o" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ETh7w" role="3cqZAp">
<node concept="Xl_RD" id="2rE0H8ETh7v" role="3clFbG">
<property role="Xl_RC" value="Add Return Type" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="2rE0H8ETh2p" role="2ZfgGD">
<node concept="3clFbS" id="2rE0H8ETh2q" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EThLB" role="3cqZAp">
<node concept="37vLTI" id="2rE0H8ETi9t" role="3clFbG">
<node concept="3clFbT" id="2rE0H8ETidK" role="37vLTx">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="2rE0H8EThLT" role="37vLTJ">
<node concept="2Sf5sV" id="2rE0H8EThLA" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EThNa" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ETgtd" resolve="hasReturnType" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="2rE0H8EThdh" role="2ZfVeh">
<node concept="3clFbS" id="2rE0H8EThdi" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EThho" role="3cqZAp">
<node concept="3fqX7Q" id="2rE0H8EThhm" role="3clFbG">
<node concept="2OqwBi" id="2rE0H8EThwr" role="3fr31v">
<node concept="2Sf5sV" id="2rE0H8EThi5" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EThIO" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ETgtd" resolve="hasReturnType" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="2rE0H8ETijW">
<property role="TrG5h" value="RemoveReturnType" />
<property role="3GE5qa" value="Statements" />
<ref role="2ZfgGC" to="zzhx:2rE0H8ETgfu" resolve="Function" />
<node concept="2S6ZIM" id="2rE0H8ETijX" role="2ZfVej">
<node concept="3clFbS" id="2rE0H8ETijY" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ETip4" role="3cqZAp">
<node concept="Xl_RD" id="2rE0H8ETip3" role="3clFbG">
<property role="Xl_RC" value="Remove Return Type" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="2rE0H8ETijZ" role="2ZfgGD">
<node concept="3clFbS" id="2rE0H8ETik0" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ETiTj" role="3cqZAp">
<node concept="37vLTI" id="2rE0H8ETjwS" role="3clFbG">
<node concept="3clFbT" id="2rE0H8ETjxl" role="37vLTx" />
<node concept="2OqwBi" id="2rE0H8ETj1T" role="37vLTJ">
<node concept="2Sf5sV" id="2rE0H8ETiTi" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETjcb" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ETgtd" resolve="hasReturnType" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="2rE0H8ETirA" role="2ZfVeh">
<node concept="3clFbS" id="2rE0H8ETirB" role="2VODD2">
<node concept="3clFbF" id="2rE0H8ETivG" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8ETiHW" role="3clFbG">
<node concept="2Sf5sV" id="2rE0H8ETivF" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETiSB" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ETgtd" resolve="hasReturnType" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="2rE0H8EVuCR">
<property role="3GE5qa" value="Statements.Variables" />
<property role="TrG5h" value="AddAssignment" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKI" resolve="Variable" />
<node concept="2S6ZIM" id="2rE0H8EVuCS" role="2ZfVej">
<node concept="3clFbS" id="2rE0H8EVuCT" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVuId" role="3cqZAp">
<node concept="Xl_RD" id="2rE0H8EVuIc" role="3clFbG">
<property role="Xl_RC" value="Add Assignment" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="2rE0H8EVuCU" role="2ZfgGD">
<node concept="3clFbS" id="2rE0H8EVuCV" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVvpL" role="3cqZAp">
<node concept="37vLTI" id="2rE0H8EVvYc" role="3clFbG">
<node concept="3clFbT" id="2rE0H8EVvYD" role="37vLTx">
<property role="3clFbU" value="true" />
</node>
<node concept="2OqwBi" id="2rE0H8EVvqk" role="37vLTJ">
<node concept="2Sf5sV" id="2rE0H8EVvpK" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EVv_R" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EVudq" resolve="showAssignment" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="2rE0H8EVuPr" role="2ZfVeh">
<node concept="3clFbS" id="2rE0H8EVuPs" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVuTy" role="3cqZAp">
<node concept="3fqX7Q" id="2rE0H8EVuTw" role="3clFbG">
<node concept="2OqwBi" id="2rE0H8EVv8S" role="3fr31v">
<node concept="2Sf5sV" id="2rE0H8EVuXP" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EVvmY" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EVudq" resolve="showAssignment" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2S6QgY" id="2rE0H8EVw2P">
<property role="3GE5qa" value="Statements.Variables" />
<property role="TrG5h" value="RemoveAssignment" />
<ref role="2ZfgGC" to="zzhx:3DJOHSccPKI" resolve="Variable" />
<node concept="2S6ZIM" id="2rE0H8EVw2Q" role="2ZfVej">
<node concept="3clFbS" id="2rE0H8EVw2R" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVw7X" role="3cqZAp">
<node concept="Xl_RD" id="2rE0H8EVw7W" role="3clFbG">
<property role="Xl_RC" value="Remove Assignment" />
</node>
</node>
</node>
</node>
<node concept="2Sbjvc" id="2rE0H8EVw2S" role="2ZfgGD">
<node concept="3clFbS" id="2rE0H8EVw2T" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVw_6" role="3cqZAp">
<node concept="37vLTI" id="2rE0H8EVwT3" role="3clFbG">
<node concept="3clFbT" id="2rE0H8EVwVK" role="37vLTx" />
<node concept="2OqwBi" id="2rE0H8EVw_o" role="37vLTJ">
<node concept="2Sf5sV" id="2rE0H8EVw_5" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EVwAm" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EVudq" resolve="showAssignment" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2SaL7w" id="2rE0H8EVw92" role="2ZfVeh">
<node concept="3clFbS" id="2rE0H8EVw93" role="2VODD2">
<node concept="3clFbF" id="2rE0H8EVwd8" role="3cqZAp">
<node concept="2OqwBi" id="2rE0H8EVwo6" role="3clFbG">
<node concept="2Sf5sV" id="2rE0H8EVwd7" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EVwyq" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EVudq" resolve="showAssignment" />
</node>
</node>
</node>
</node>
</node>
</node>
</model>

View File

@@ -0,0 +1,315 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)">
<persistence version="9" />
<languages>
<use id="c72da2b9-7cce-4447-8389-f407dc1158b7" name="jetbrains.mps.lang.structure" version="9" />
<devkit ref="78434eb8-b0e5-444b-850d-e7c4ad2da9ab(jetbrains.mps.devkit.aspect.structure)" />
</languages>
<imports>
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" implicit="true" />
</imports>
<registry>
<language id="c72da2b9-7cce-4447-8389-f407dc1158b7" name="jetbrains.mps.lang.structure">
<concept id="1082978164218" name="jetbrains.mps.lang.structure.structure.DataTypeDeclaration" flags="ng" index="AxPO6">
<property id="7791109065626895363" name="datatypeId" index="3F6X1D" />
</concept>
<concept id="1082978499127" name="jetbrains.mps.lang.structure.structure.ConstrainedDataTypeDeclaration" flags="ng" index="Az7Fb">
<property id="1083066089218" name="constraint" index="FLfZY" />
</concept>
<concept id="1169125787135" name="jetbrains.mps.lang.structure.structure.AbstractConceptDeclaration" flags="ig" index="PkWjJ">
<property id="6714410169261853888" name="conceptId" index="EcuMT" />
<property id="4628067390765956802" name="abstract" index="R5$K7" />
<property id="5092175715804935370" name="conceptAlias" index="34LRSv" />
<child id="1071489727083" name="linkDeclaration" index="1TKVEi" />
<child id="1071489727084" name="propertyDeclaration" index="1TKVEl" />
</concept>
<concept id="1169127622168" name="jetbrains.mps.lang.structure.structure.InterfaceConceptReference" flags="ig" index="PrWs8">
<reference id="1169127628841" name="intfc" index="PrY4T" />
</concept>
<concept id="1071489090640" name="jetbrains.mps.lang.structure.structure.ConceptDeclaration" flags="ig" index="1TIwiD">
<property id="1096454100552" name="rootable" index="19KtqR" />
<reference id="1071489389519" name="extends" index="1TJDcQ" />
<child id="1169129564478" name="implements" index="PzmwI" />
</concept>
<concept id="1071489288299" name="jetbrains.mps.lang.structure.structure.PropertyDeclaration" flags="ig" index="1TJgyi">
<property id="241647608299431129" name="propertyId" index="IQ2nx" />
<reference id="1082985295845" name="dataType" index="AX2Wp" />
</concept>
<concept id="1071489288298" name="jetbrains.mps.lang.structure.structure.LinkDeclaration" flags="ig" index="1TJgyj">
<property id="1071599776563" name="role" index="20kJfa" />
<property id="1071599893252" name="sourceCardinality" index="20lbJX" />
<property id="1071599937831" name="metaClass" index="20lmBu" />
<property id="241647608299431140" name="linkId" index="IQ2ns" />
<reference id="1071599976176" name="target" index="20lvS9" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<property id="1193676396447" name="virtualPackage" index="3GE5qa" />
</concept>
<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="1TIwiD" id="3DJOHScciGr">
<property role="EcuMT" value="4210816027743824667" />
<property role="TrG5h" value="Statement" />
<property role="R5$K7" value="true" />
<property role="3GE5qa" value="Statements" />
<ref role="1TJDcQ" to="tpck:gw2VY9q" resolve="BaseConcept" />
</node>
<node concept="1TIwiD" id="3DJOHScciGt">
<property role="EcuMT" value="4210816027743824669" />
<property role="TrG5h" value="Module" />
<property role="19KtqR" value="true" />
<ref role="1TJDcQ" to="tpck:gw2VY9q" resolve="BaseConcept" />
<node concept="PrWs8" id="3DJOHScciGB" role="PzmwI">
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />
</node>
<node concept="1TJgyi" id="3DJOHScciGD" role="1TKVEl">
<property role="IQ2nx" value="4210816027743824681" />
<property role="TrG5h" value="module" />
<ref role="AX2Wp" to="tpck:fKAOsGN" resolve="string" />
</node>
<node concept="1TJgyj" id="3DJOHScciGT" role="1TKVEi">
<property role="IQ2ns" value="4210816027743824697" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="statements" />
<property role="20lbJX" value="fLJekj5/_0__n" />
<ref role="20lvS9" node="3DJOHScciGr" resolve="Statement" />
</node>
</node>
<node concept="1TIwiD" id="3DJOHSccPKI">
<property role="EcuMT" value="4210816027743968302" />
<property role="TrG5h" value="Variable" />
<property role="R5$K7" value="true" />
<property role="3GE5qa" value="Statements.Variables" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
<node concept="PrWs8" id="3DJOHSccPKJ" role="PzmwI">
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />
</node>
<node concept="1TJgyi" id="3DJOHSccPKL" role="1TKVEl">
<property role="IQ2nx" value="4210816027743968305" />
<property role="TrG5h" value="optional" />
<ref role="AX2Wp" to="tpck:fKAQMTB" resolve="boolean" />
</node>
<node concept="1TJgyi" id="3DJOHScdHdS" role="1TKVEl">
<property role="IQ2nx" value="4210816027744195448" />
<property role="TrG5h" value="showType" />
<ref role="AX2Wp" to="tpck:fKAQMTB" resolve="boolean" />
</node>
<node concept="1TJgyi" id="2rE0H8EVudq" role="1TKVEl">
<property role="IQ2nx" value="2804056819678176090" />
<property role="TrG5h" value="showAssignment" />
<ref role="AX2Wp" to="tpck:fKAQMTB" resolve="boolean" />
</node>
<node concept="1TJgyj" id="3DJOHScd5DW" role="1TKVEi">
<property role="IQ2ns" value="4210816027744033404" />
<property role="20kJfa" value="type" />
<property role="20lbJX" value="fLJekj4/_1" />
<ref role="20lvS9" node="3DJOHSccPKN" resolve="Type" />
</node>
<node concept="1TJgyj" id="2rE0H8EVt29" role="1TKVEi">
<property role="IQ2ns" value="2804056819678171273" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="assignment" />
<ref role="20lvS9" node="3DJOHSce2GO" resolve="Expression" />
</node>
</node>
<node concept="1TIwiD" id="3DJOHSccPKN">
<property role="EcuMT" value="4210816027743968307" />
<property role="TrG5h" value="Type" />
<property role="34LRSv" value="type" />
<property role="3GE5qa" value="Statements.Types" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
<node concept="PrWs8" id="3DJOHSccPKO" role="PzmwI">
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />
</node>
<node concept="1TJgyi" id="3DJOHSccPKQ" role="1TKVEl">
<property role="IQ2nx" value="4210816027743968310" />
<property role="TrG5h" value="strong" />
<ref role="AX2Wp" to="tpck:fKAQMTB" resolve="boolean" />
</node>
<node concept="1TJgyi" id="2rE0H8ERrBM" role="1TKVEl">
<property role="IQ2nx" value="2804056819677116914" />
<property role="TrG5h" value="c_type" />
<ref role="AX2Wp" to="tpck:fKAOsGN" resolve="string" />
</node>
<node concept="1TJgyi" id="2rE0H8ERwCu" role="1TKVEl">
<property role="IQ2nx" value="2804056819677137438" />
<property role="TrG5h" value="is_c_type" />
<ref role="AX2Wp" to="tpck:fKAQMTB" resolve="boolean" />
</node>
<node concept="1TJgyj" id="3DJOHSccPKS" role="1TKVEi">
<property role="IQ2ns" value="4210816027743968312" />
<property role="20kJfa" value="parent" />
<ref role="20lvS9" node="3DJOHSccPKN" resolve="Type" />
</node>
</node>
<node concept="1TIwiD" id="3DJOHScd2pi">
<property role="EcuMT" value="4210816027744020050" />
<property role="TrG5h" value="NewlineStatement" />
<property role="3GE5qa" value="Statements" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
</node>
<node concept="1TIwiD" id="3DJOHScd5DV">
<property role="EcuMT" value="4210816027744033403" />
<property role="TrG5h" value="VarVariable" />
<property role="34LRSv" value="var" />
<property role="3GE5qa" value="Statements.Variables" />
<ref role="1TJDcQ" node="3DJOHSccPKI" resolve="Variable" />
</node>
<node concept="1TIwiD" id="3DJOHScdGZq">
<property role="EcuMT" value="4210816027744194522" />
<property role="TrG5h" value="ValVariable" />
<property role="34LRSv" value="val" />
<property role="3GE5qa" value="Statements.Variables" />
<ref role="1TJDcQ" node="3DJOHSccPKI" resolve="Variable" />
</node>
<node concept="1TIwiD" id="3DJOHSce2GO">
<property role="EcuMT" value="4210816027744283444" />
<property role="TrG5h" value="Expression" />
<property role="R5$K7" value="true" />
<property role="3GE5qa" value="Expressions" />
<ref role="1TJDcQ" to="tpck:gw2VY9q" resolve="BaseConcept" />
</node>
<node concept="1TIwiD" id="2rE0H8ETgfu">
<property role="EcuMT" value="2804056819677594590" />
<property role="TrG5h" value="Function" />
<property role="34LRSv" value="fun" />
<property role="3GE5qa" value="Statements" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
<node concept="1TJgyj" id="2rE0H8ETgfz" role="1TKVEi">
<property role="IQ2ns" value="2804056819677594595" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="parameters" />
<property role="20lbJX" value="fLJekj5/_0__n" />
<ref role="20lvS9" node="2rE0H8ETgfE" resolve="FunctionParameter" />
</node>
<node concept="PrWs8" id="2rE0H8ETgfv" role="PzmwI">
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />
</node>
<node concept="1TJgyj" id="2rE0H8ETgfx" role="1TKVEi">
<property role="IQ2ns" value="2804056819677594593" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="statements" />
<property role="20lbJX" value="fLJekj5/_0__n" />
<ref role="20lvS9" node="3DJOHScciGr" resolve="Statement" />
</node>
<node concept="1TJgyi" id="2rE0H8ETgtd" role="1TKVEl">
<property role="IQ2nx" value="2804056819677595469" />
<property role="TrG5h" value="hasReturnType" />
<ref role="AX2Wp" to="tpck:fKAQMTB" resolve="boolean" />
</node>
<node concept="1TJgyj" id="2rE0H8ETvji" role="1TKVEi">
<property role="IQ2ns" value="2804056819677656274" />
<property role="20kJfa" value="returnType" />
<ref role="20lvS9" node="3DJOHSccPKN" resolve="Type" />
</node>
</node>
<node concept="1TIwiD" id="2rE0H8ETgfE">
<property role="EcuMT" value="2804056819677594602" />
<property role="TrG5h" value="FunctionParameter" />
<property role="3GE5qa" value="Statements.Variables" />
<ref role="1TJDcQ" node="3DJOHSccPKI" resolve="Variable" />
<node concept="PrWs8" id="2rE0H8ETgfF" role="PzmwI">
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />
</node>
</node>
<node concept="1TIwiD" id="2rE0H8EU4kJ">
<property role="EcuMT" value="2804056819677807919" />
<property role="TrG5h" value="CCodeBlock" />
<property role="3GE5qa" value="Statements" />
<property role="34LRSv" value="$" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
<node concept="1TJgyi" id="2rE0H8EU4kK" role="1TKVEl">
<property role="IQ2nx" value="2804056819677807920" />
<property role="TrG5h" value="code_block" />
<ref role="AX2Wp" to="tpck:fKAOsGN" resolve="string" />
</node>
</node>
<node concept="1TIwiD" id="2rE0H8EVrBA">
<property role="EcuMT" value="2804056819678165478" />
<property role="TrG5h" value="Cast" />
<property role="34LRSv" value="as" />
<property role="3GE5qa" value="Expressions" />
<ref role="1TJDcQ" node="3DJOHSce2GO" resolve="Expression" />
<node concept="1TJgyj" id="2rE0H8EVrBD" role="1TKVEi">
<property role="IQ2ns" value="2804056819678165481" />
<property role="20kJfa" value="type" />
<property role="20lbJX" value="fLJekj4/_1" />
<ref role="20lvS9" node="3DJOHSccPKN" resolve="Type" />
</node>
<node concept="1TJgyj" id="2rE0H8EVtB8" role="1TKVEi">
<property role="IQ2ns" value="2804056819678173640" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="expression" />
<property role="20lbJX" value="fLJekj4/_1" />
<ref role="20lvS9" node="3DJOHSce2GO" resolve="Expression" />
</node>
</node>
<node concept="1TIwiD" id="2rE0H8EVt0K">
<property role="EcuMT" value="2804056819678171184" />
<property role="TrG5h" value="Assignment" />
<property role="34LRSv" value="=" />
<property role="3GE5qa" value="Statements" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
<node concept="1TJgyj" id="2rE0H8EVt0N" role="1TKVEi">
<property role="IQ2ns" value="2804056819678171187" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="expression" />
<property role="20lbJX" value="fLJekj6/_1__n" />
<ref role="20lvS9" node="3DJOHSce2GO" resolve="Expression" />
</node>
<node concept="1TJgyj" id="4mR5_paRMPJ" role="1TKVEi">
<property role="IQ2ns" value="5023508469234216303" />
<property role="20lmBu" value="fLJjDmT/aggregation" />
<property role="20kJfa" value="variables" />
<property role="20lbJX" value="fLJekj6/_1__n" />
<ref role="20lvS9" node="2rE0H8EVKbk" resolve="VariableAccess" />
</node>
</node>
<node concept="1TIwiD" id="2rE0H8EVKbk">
<property role="EcuMT" value="2804056819678249684" />
<property role="3GE5qa" value="Expressions" />
<property role="TrG5h" value="VariableAccess" />
<ref role="1TJDcQ" node="3DJOHSce2GO" resolve="Expression" />
<node concept="1TJgyj" id="2rE0H8EVKbl" role="1TKVEi">
<property role="IQ2ns" value="2804056819678249685" />
<property role="20kJfa" value="variable" />
<property role="20lbJX" value="fLJekj4/_1" />
<ref role="20lvS9" node="3DJOHSccPKI" resolve="Variable" />
</node>
</node>
<node concept="1TIwiD" id="2rE0H8EWdEo">
<property role="EcuMT" value="2804056819678370456" />
<property role="3GE5qa" value="Statements" />
<property role="TrG5h" value="SingleLineComment" />
<property role="34LRSv" value="//" />
<ref role="1TJDcQ" node="3DJOHScciGr" resolve="Statement" />
<node concept="1TJgyi" id="2rE0H8EWdEp" role="1TKVEl">
<property role="IQ2nx" value="2804056819678370457" />
<property role="TrG5h" value="comment" />
<ref role="AX2Wp" to="tpck:fKAOsGN" resolve="string" />
</node>
</node>
<node concept="Az7Fb" id="4mR5_paTmlw">
<property role="3F6X1D" value="5023508469234623840" />
<property role="3GE5qa" value="Expressions" />
<property role="TrG5h" value="Int10Literal" />
<property role="FLfZY" value="\d" />
</node>
<node concept="1TIwiD" id="4mR5_paTmlx">
<property role="EcuMT" value="5023508469234623841" />
<property role="3GE5qa" value="Expressions" />
<property role="TrG5h" value="Int10LiteralConcept" />
<ref role="1TJDcQ" node="3DJOHSce2GO" resolve="Expression" />
<node concept="1TJgyi" id="4mR5_paTmly" role="1TKVEl">
<property role="IQ2nx" value="5023508469234623842" />
<property role="TrG5h" value="literal" />
<ref role="AX2Wp" node="4mR5_paTmlw" resolve="Int10Literal" />
</node>
</node>
</model>

View File

@@ -0,0 +1,837 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:61fa01a8-6fd5-4f18-a0d4-64952ec092d3(dynamicc.textGen)">
<persistence version="9" />
<languages>
<use id="b83431fe-5c8f-40bc-8a36-65e25f4dd253" name="jetbrains.mps.lang.textGen" version="1" />
<devkit ref="fa73d85a-ac7f-447b-846c-fcdc41caa600(jetbrains.mps.devkit.aspect.textgen)" />
</languages>
<imports>
<import index="zzhx" ref="r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)" implicit="true" />
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" implicit="true" />
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" implicit="true" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1082485599095" name="jetbrains.mps.baseLanguage.structure.BlockStatement" flags="nn" index="9aQIb">
<child id="1082485599096" name="statements" index="9aQI4" />
</concept>
<concept id="1239714755177" name="jetbrains.mps.baseLanguage.structure.AbstractUnaryNumberOperation" flags="nn" index="2$Kvd9">
<child id="1239714902950" name="expression" index="2$L3a6" />
</concept>
<concept id="1154032098014" name="jetbrains.mps.baseLanguage.structure.AbstractLoopStatement" flags="nn" index="2LF5Ji">
<child id="1154032183016" name="body" index="2LFqv$" />
</concept>
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
<child id="1197027771414" name="operand" index="2Oq$k0" />
<child id="1197027833540" name="operation" index="2OqNvi" />
</concept>
<concept id="1137021947720" name="jetbrains.mps.baseLanguage.structure.ConceptFunction" flags="in" index="2VMwT0">
<child id="1137022507850" name="body" index="2VODD2" />
</concept>
<concept id="1070475926800" name="jetbrains.mps.baseLanguage.structure.StringLiteral" flags="nn" index="Xl_RD">
<property id="1070475926801" name="value" index="Xl_RC" />
</concept>
<concept id="1081236700937" name="jetbrains.mps.baseLanguage.structure.StaticMethodCall" flags="nn" index="2YIFZM">
<reference id="1144433194310" name="classConcept" index="1Pybhc" />
</concept>
<concept id="1070534370425" name="jetbrains.mps.baseLanguage.structure.IntegerType" flags="in" index="10Oyi0" />
<concept id="1068431474542" name="jetbrains.mps.baseLanguage.structure.VariableDeclaration" flags="ng" index="33uBYm">
<child id="1068431790190" name="initializer" index="33vP2m" />
</concept>
<concept id="1068498886296" name="jetbrains.mps.baseLanguage.structure.VariableReference" flags="nn" index="37vLTw">
<reference id="1068581517664" name="variableDeclaration" index="3cqZAo" />
</concept>
<concept id="4972933694980447171" name="jetbrains.mps.baseLanguage.structure.BaseVariableDeclaration" flags="ng" index="19Szcq">
<child id="5680397130376446158" name="type" index="1tU5fm" />
</concept>
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
<concept id="1068580123159" name="jetbrains.mps.baseLanguage.structure.IfStatement" flags="nn" index="3clFbJ">
<child id="1082485599094" name="ifFalseStatement" index="9aQIa" />
<child id="1068580123160" name="condition" index="3clFbw" />
<child id="1068580123161" name="ifTrue" index="3clFbx" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068580320020" name="jetbrains.mps.baseLanguage.structure.IntegerConstant" flags="nn" index="3cmrfG">
<property id="1068580320021" name="value" index="3cmrfH" />
</concept>
<concept id="1068581242875" name="jetbrains.mps.baseLanguage.structure.PlusExpression" flags="nn" index="3cpWs3" />
<concept id="1068581242863" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" flags="nr" index="3cpWsn" />
<concept id="1081506762703" name="jetbrains.mps.baseLanguage.structure.GreaterThanExpression" flags="nn" index="3eOSWO" />
<concept id="1081506773034" name="jetbrains.mps.baseLanguage.structure.LessThanExpression" flags="nn" index="3eOVzh" />
<concept id="1204053956946" name="jetbrains.mps.baseLanguage.structure.IMethodCall" flags="ng" index="1ndlxa">
<reference id="1068499141037" name="baseMethodDeclaration" index="37wK5l" />
<child id="1068499141038" name="actualArgument" index="37wK5m" />
</concept>
<concept id="1081773326031" name="jetbrains.mps.baseLanguage.structure.BinaryOperation" flags="nn" index="3uHJSO">
<child id="1081773367579" name="rightExpression" index="3uHU7w" />
<child id="1081773367580" name="leftExpression" index="3uHU7B" />
</concept>
<concept id="1214918800624" name="jetbrains.mps.baseLanguage.structure.PostfixIncrementExpression" flags="nn" index="3uNrnE" />
<concept id="1144230876926" name="jetbrains.mps.baseLanguage.structure.AbstractForStatement" flags="nn" index="1DupvO">
<child id="1144230900587" name="variable" index="1Duv9x" />
</concept>
<concept id="1144231330558" name="jetbrains.mps.baseLanguage.structure.ForStatement" flags="nn" index="1Dw8fO">
<child id="1144231399730" name="condition" index="1Dwp0S" />
<child id="1144231408325" name="iteration" index="1Dwrff" />
</concept>
<concept id="1163668896201" name="jetbrains.mps.baseLanguage.structure.TernaryOperatorExpression" flags="nn" index="3K4zz7">
<child id="1163668914799" name="condition" index="3K4Cdx" />
<child id="1163668922816" name="ifTrue" index="3K4E3e" />
<child id="1163668934364" name="ifFalse" index="3K4GZi" />
</concept>
</language>
<language id="b83431fe-5c8f-40bc-8a36-65e25f4dd253" name="jetbrains.mps.lang.textGen">
<concept id="8931911391946696733" name="jetbrains.mps.lang.textGen.structure.ExtensionDeclaration" flags="in" index="9MYSb" />
<concept id="1237305208784" name="jetbrains.mps.lang.textGen.structure.NewLineAppendPart" flags="ng" index="l8MVK" />
<concept id="1237305334312" name="jetbrains.mps.lang.textGen.structure.NodeAppendPart" flags="ng" index="l9hG8">
<child id="1237305790512" name="value" index="lb14g" />
</concept>
<concept id="1237305491868" name="jetbrains.mps.lang.textGen.structure.CollectionAppendPart" flags="ng" index="l9S2W">
<property id="1237306003719" name="separator" index="lbP0B" />
<property id="1237983969951" name="withSeparator" index="XA4eZ" />
<child id="1237305945551" name="list" index="lbANJ" />
</concept>
<concept id="1237305557638" name="jetbrains.mps.lang.textGen.structure.ConstantStringAppendPart" flags="ng" index="la8eA">
<property id="1237305576108" name="value" index="lacIc" />
</concept>
<concept id="1237306079178" name="jetbrains.mps.lang.textGen.structure.AppendOperation" flags="nn" index="lc7rE">
<child id="1237306115446" name="part" index="lcghm" />
</concept>
<concept id="1233670071145" name="jetbrains.mps.lang.textGen.structure.ConceptTextGenDeclaration" flags="ig" index="WtQ9Q">
<reference id="1233670257997" name="conceptDeclaration" index="WuzLi" />
<child id="1233749296504" name="textGenBlock" index="11c4hB" />
<child id="7991274449437422201" name="extension" index="33IsuW" />
</concept>
<concept id="1233748055915" name="jetbrains.mps.lang.textGen.structure.NodeParameter" flags="nn" index="117lpO" />
<concept id="1233749247888" name="jetbrains.mps.lang.textGen.structure.GenerateTextDeclaration" flags="in" index="11bSqf" />
</language>
<language id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="1177026924588" name="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" flags="nn" index="chp4Y">
<reference id="1177026940964" name="conceptDeclaration" index="cht4Q" />
</concept>
<concept id="7453996997717780434" name="jetbrains.mps.lang.smodel.structure.Node_GetSConceptOperation" flags="nn" index="2yIwOk" />
<concept id="1172326502327" name="jetbrains.mps.lang.smodel.structure.Concept_IsExactlyOperation" flags="nn" index="3O6GUB">
<child id="1206733650006" name="conceptArgument" index="3QVz_e" />
</concept>
<concept id="1138056022639" name="jetbrains.mps.lang.smodel.structure.SPropertyAccess" flags="nn" index="3TrcHB">
<reference id="1138056395725" name="property" index="3TsBF5" />
</concept>
<concept id="1138056143562" name="jetbrains.mps.lang.smodel.structure.SLinkAccess" flags="nn" index="3TrEf2">
<reference id="1138056516764" name="link" index="3Tt5mk" />
</concept>
<concept id="1138056282393" name="jetbrains.mps.lang.smodel.structure.SLinkListAccess" flags="nn" index="3Tsc0h">
<reference id="1138056546658" name="link" index="3TtcxE" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<property id="1193676396447" name="virtualPackage" index="3GE5qa" />
</concept>
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
<language id="83888646-71ce-4f1c-9c53-c54016f6ad4f" name="jetbrains.mps.baseLanguage.collections">
<concept id="1162935959151" name="jetbrains.mps.baseLanguage.collections.structure.GetSizeOperation" flags="nn" index="34oBXx" />
<concept id="1225711141656" name="jetbrains.mps.baseLanguage.collections.structure.ListElementAccessExpression" flags="nn" index="1y4W85">
<child id="1225711182005" name="list" index="1y566C" />
<child id="1225711191269" name="index" index="1y58nS" />
</concept>
</language>
</registry>
<node concept="WtQ9Q" id="3DJOHSceaKB">
<ref role="WuzLi" to="zzhx:3DJOHScciGt" resolve="Module" />
<node concept="9MYSb" id="3DJOHSceaKC" role="33IsuW">
<node concept="3clFbS" id="3DJOHSceaKD" role="2VODD2">
<node concept="3clFbF" id="3DJOHSceaPi" role="3cqZAp">
<node concept="Xl_RD" id="3DJOHSceaPh" role="3clFbG">
<property role="Xl_RC" value="c" />
</node>
</node>
</node>
</node>
<node concept="11bSqf" id="3DJOHSceaWQ" role="11c4hB">
<node concept="3clFbS" id="3DJOHSceaWR" role="2VODD2">
<node concept="lc7rE" id="3DJOHScebhC" role="3cqZAp">
<node concept="la8eA" id="3DJOHScebic" role="lcghm">
<property role="lacIc" value="/*" />
</node>
<node concept="l9hG8" id="3DJOHScebjz" role="lcghm">
<node concept="2OqwBi" id="3DJOHScebmX" role="lb14g">
<node concept="117lpO" id="3DJOHScebks" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHScebop" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:3DJOHScciGD" resolve="module" />
</node>
</node>
</node>
<node concept="la8eA" id="3DJOHScebpP" role="lcghm">
<property role="lacIc" value="*/" />
</node>
</node>
<node concept="lc7rE" id="3DJOHScebrK" role="3cqZAp">
<node concept="l8MVK" id="3DJOHScebsM" role="lcghm" />
<node concept="l8MVK" id="3DJOHSceelU" role="lcghm" />
</node>
<node concept="lc7rE" id="3DJOHSceaXF" role="3cqZAp">
<node concept="l9S2W" id="3DJOHSceaY1" role="lcghm">
<node concept="2OqwBi" id="3DJOHSceb6_" role="lbANJ">
<node concept="117lpO" id="3DJOHSceaYp" role="2Oq$k0" />
<node concept="3Tsc0h" id="3DJOHScebeJ" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:3DJOHScciGT" resolve="statements" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="3DJOHScebt7">
<property role="3GE5qa" value="Statements.Types" />
<ref role="WuzLi" to="zzhx:3DJOHSccPKN" resolve="Type" />
<node concept="11bSqf" id="3DJOHScebt8" role="11c4hB">
<node concept="3clFbS" id="3DJOHScebt9" role="2VODD2">
<node concept="lc7rE" id="3DJOHScebtu" role="3cqZAp">
<node concept="la8eA" id="3DJOHScebw0" role="lcghm">
<property role="lacIc" value="typedef" />
</node>
<node concept="la8eA" id="3DJOHScegAB" role="lcghm">
<property role="lacIc" value=" " />
</node>
<node concept="l9hG8" id="3DJOHScebx7" role="lcghm">
<node concept="2OqwBi" id="3DJOHScebFr" role="lb14g">
<node concept="117lpO" id="3DJOHSceby0" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHSceiJ$" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="3DJOHScegEF" role="lcghm">
<property role="lacIc" value=" " />
</node>
<node concept="l9hG8" id="2rE0H8ETRV8" role="lcghm">
<node concept="3K4zz7" id="2rE0H8ETSnZ" role="lb14g">
<node concept="2OqwBi" id="2rE0H8ETSqq" role="3K4E3e">
<node concept="117lpO" id="2rE0H8ETSpd" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETSrW" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERrBM" resolve="c_type" />
</node>
</node>
<node concept="2OqwBi" id="2rE0H8ETTyu" role="3K4GZi">
<node concept="2OqwBi" id="2rE0H8ETSVd" role="2Oq$k0">
<node concept="117lpO" id="2rE0H8ETSst" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8ETSZf" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:3DJOHSccPKS" resolve="parent" />
</node>
</node>
<node concept="3TrcHB" id="2rE0H8ETT$r" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
<node concept="2OqwBi" id="2rE0H8ETRZK" role="3K4Cdx">
<node concept="117lpO" id="2rE0H8ETRWw" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETS1y" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ERwCu" resolve="is_c_type" />
</node>
</node>
</node>
</node>
<node concept="la8eA" id="3DJOHScefDs" role="lcghm">
<property role="lacIc" value=";" />
</node>
<node concept="l8MVK" id="3DJOHScehvX" role="lcghm" />
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="3DJOHScec9w">
<property role="3GE5qa" value="Statements.Variables" />
<ref role="WuzLi" to="zzhx:3DJOHSccPKI" resolve="Variable" />
<node concept="11bSqf" id="3DJOHScecwi" role="11c4hB">
<node concept="3clFbS" id="3DJOHScecwj" role="2VODD2">
<node concept="lc7rE" id="3DJOHScecwC" role="3cqZAp">
<node concept="l9hG8" id="4mR5_paRDnC" role="lcghm">
<node concept="3K4zz7" id="4mR5_paRGKX" role="lb14g">
<node concept="Xl_RD" id="4mR5_paRGMx" role="3K4E3e">
<property role="Xl_RC" value="const " />
</node>
<node concept="Xl_RD" id="4mR5_paRGSj" role="3K4GZi">
<property role="Xl_RC" value="" />
</node>
<node concept="2OqwBi" id="4mR5_paREJw" role="3K4Cdx">
<node concept="2OqwBi" id="4mR5_paRDMN" role="2Oq$k0">
<node concept="117lpO" id="4mR5_paRDuZ" role="2Oq$k0" />
<node concept="2yIwOk" id="4mR5_paRErl" role="2OqNvi" />
</node>
<node concept="3O6GUB" id="4mR5_paRGpy" role="2OqNvi">
<node concept="chp4Y" id="4mR5_paRGxA" role="3QVz_e">
<ref role="cht4Q" to="zzhx:3DJOHScdGZq" resolve="ValVariable" />
</node>
</node>
</node>
</node>
</node>
<node concept="l9hG8" id="3DJOHScecwY" role="lcghm">
<node concept="2OqwBi" id="3DJOHScecM_" role="lb14g">
<node concept="2OqwBi" id="3DJOHScec$G" role="2Oq$k0">
<node concept="117lpO" id="3DJOHScecxQ" role="2Oq$k0" />
<node concept="3TrEf2" id="3DJOHScecAz" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:3DJOHScd5DW" resolve="type" />
</node>
</node>
<node concept="3TrcHB" id="3DJOHScecYu" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="3DJOHScegyp" role="lcghm">
<property role="lacIc" value=" " />
</node>
<node concept="l9hG8" id="3DJOHSced2c" role="lcghm">
<node concept="2OqwBi" id="3DJOHSced47" role="lb14g">
<node concept="117lpO" id="3DJOHSced3_" role="2Oq$k0" />
<node concept="3TrcHB" id="3DJOHSced5z" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="l9hG8" id="2rE0H8EWue9" role="lcghm">
<node concept="3K4zz7" id="2rE0H8EWuSh" role="lb14g">
<node concept="3cpWs3" id="2rE0H8EWuVr" role="3K4E3e">
<node concept="2OqwBi" id="2rE0H8EWv5H" role="3uHU7w">
<node concept="117lpO" id="2rE0H8EWuY_" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8EWvfi" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVt29" resolve="assignment" />
</node>
</node>
<node concept="Xl_RD" id="2rE0H8EWuTv" role="3uHU7B">
<property role="Xl_RC" value=" = " />
</node>
</node>
<node concept="Xl_RD" id="2rE0H8EWvfX" role="3K4GZi">
<property role="Xl_RC" value="" />
</node>
<node concept="2OqwBi" id="2rE0H8EWunK" role="3K4Cdx">
<node concept="117lpO" id="2rE0H8EWug0" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EWuxO" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EVudq" resolve="showAssignment" />
</node>
</node>
</node>
</node>
<node concept="la8eA" id="3DJOHScef$j" role="lcghm">
<property role="lacIc" value=";" />
</node>
<node concept="l8MVK" id="3DJOHSceh_3" role="lcghm" />
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="3DJOHSceemj">
<property role="3GE5qa" value="Statements" />
<ref role="WuzLi" to="zzhx:3DJOHScd2pi" resolve="NewlineStatement" />
<node concept="11bSqf" id="3DJOHSceemk" role="11c4hB">
<node concept="3clFbS" id="3DJOHSceeml" role="2VODD2">
<node concept="lc7rE" id="3DJOHSceemE" role="3cqZAp">
<node concept="l8MVK" id="3DJOHSceen0" role="lcghm" />
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8ETCSw">
<property role="3GE5qa" value="Statements" />
<ref role="WuzLi" to="zzhx:2rE0H8ETgfu" resolve="Function" />
<node concept="11bSqf" id="2rE0H8ETCSx" role="11c4hB">
<node concept="3clFbS" id="2rE0H8ETCSy" role="2VODD2">
<node concept="lc7rE" id="2rE0H8ETCSR" role="3cqZAp">
<node concept="l9hG8" id="2rE0H8ETCTd" role="lcghm">
<node concept="3K4zz7" id="2rE0H8ETON8" role="lb14g">
<node concept="2OqwBi" id="2rE0H8ETP05" role="3K4E3e">
<node concept="2OqwBi" id="2rE0H8ETOVo" role="2Oq$k0">
<node concept="117lpO" id="2rE0H8ETOOm" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8ETOXd" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8ETvji" resolve="returnType" />
</node>
</node>
<node concept="3TrcHB" id="2rE0H8ETP2e" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
<node concept="Xl_RD" id="2rE0H8ETP6Q" role="3K4GZi">
<property role="Xl_RC" value="void" />
</node>
<node concept="2OqwBi" id="2rE0H8ETD3W" role="3K4Cdx">
<node concept="117lpO" id="2rE0H8ETCU5" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETDe0" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8ETgtd" resolve="hasReturnType" />
</node>
</node>
</node>
</node>
<node concept="la8eA" id="2rE0H8ETLly" role="lcghm">
<property role="lacIc" value=" " />
</node>
</node>
<node concept="lc7rE" id="2rE0H8ETLon" role="3cqZAp">
<node concept="l9hG8" id="2rE0H8ETLpK" role="lcghm">
<node concept="2OqwBi" id="2rE0H8ETLyQ" role="lb14g">
<node concept="117lpO" id="2rE0H8ETLr6" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETLGU" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="2rE0H8ETLIN" role="lcghm">
<property role="lacIc" value="(" />
</node>
<node concept="l9S2W" id="2rE0H8ETLLu" role="lcghm">
<property role="XA4eZ" value="true" />
<property role="lbP0B" value=", " />
<node concept="2OqwBi" id="2rE0H8ETLNi" role="lbANJ">
<node concept="117lpO" id="2rE0H8ETLMK" role="2Oq$k0" />
<node concept="3Tsc0h" id="2rE0H8ETLOa" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:2rE0H8ETgfz" resolve="parameters" />
</node>
</node>
</node>
<node concept="la8eA" id="2rE0H8ETLUr" role="lcghm">
<property role="lacIc" value=") {" />
</node>
<node concept="l8MVK" id="2rE0H8ETLXW" role="lcghm" />
</node>
<node concept="lc7rE" id="2rE0H8ETMa9" role="3cqZAp">
<node concept="l9S2W" id="2rE0H8ETMcc" role="lcghm">
<node concept="2OqwBi" id="2rE0H8ETMjY" role="lbANJ">
<node concept="117lpO" id="2rE0H8ETMd2" role="2Oq$k0" />
<node concept="3Tsc0h" id="2rE0H8ETMtu" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:2rE0H8ETgfx" resolve="statements" />
</node>
</node>
</node>
</node>
<node concept="lc7rE" id="2rE0H8ETMy2" role="3cqZAp">
<node concept="la8eA" id="2rE0H8ETM$h" role="lcghm">
<property role="lacIc" value="}" />
</node>
<node concept="l8MVK" id="2rE0H8ETMA6" role="lcghm" />
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8ETP93">
<property role="3GE5qa" value="Statements.Variables" />
<ref role="WuzLi" to="zzhx:2rE0H8ETgfE" resolve="FunctionParameter" />
<node concept="11bSqf" id="2rE0H8ETP94" role="11c4hB">
<node concept="3clFbS" id="2rE0H8ETP95" role="2VODD2">
<node concept="lc7rE" id="2rE0H8ETP9q" role="3cqZAp">
<node concept="l9hG8" id="2rE0H8ETP9K" role="lcghm">
<node concept="2OqwBi" id="2rE0H8ETPBZ" role="lb14g">
<node concept="2OqwBi" id="2rE0H8ETPlf" role="2Oq$k0">
<node concept="117lpO" id="2rE0H8ETPaC" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8ETPwT" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:3DJOHScd5DW" resolve="type" />
</node>
</node>
<node concept="3TrcHB" id="2rE0H8ETPGb" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="2rE0H8ETPJK" role="lcghm">
<property role="lacIc" value=" " />
</node>
<node concept="l9hG8" id="2rE0H8ETPLv" role="lcghm">
<node concept="2OqwBi" id="2rE0H8ETPVg" role="lb14g">
<node concept="117lpO" id="2rE0H8ETPMT" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8ETQ6U" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8EU4l3">
<property role="3GE5qa" value="Statements" />
<ref role="WuzLi" to="zzhx:2rE0H8EU4kJ" resolve="CCodeBlock" />
<node concept="11bSqf" id="2rE0H8EU4l4" role="11c4hB">
<node concept="3clFbS" id="2rE0H8EU4l5" role="2VODD2">
<node concept="lc7rE" id="2rE0H8EU4lq" role="3cqZAp">
<node concept="l8MVK" id="2rE0H8EU4IA" role="lcghm" />
<node concept="l9hG8" id="2rE0H8EU4lK" role="lcghm">
<node concept="2OqwBi" id="2rE0H8EU4tP" role="lb14g">
<node concept="117lpO" id="2rE0H8EU4mC" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EU4Az" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EU4kK" resolve="code_block" />
</node>
</node>
</node>
<node concept="l8MVK" id="2rE0H8EU4DP" role="lcghm" />
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8EVrCL">
<property role="3GE5qa" value="Expressions" />
<ref role="WuzLi" to="zzhx:2rE0H8EVrBA" resolve="Cast" />
<node concept="11bSqf" id="2rE0H8EVrCM" role="11c4hB">
<node concept="3clFbS" id="2rE0H8EVrCN" role="2VODD2">
<node concept="lc7rE" id="2rE0H8EVrD8" role="3cqZAp">
<node concept="la8eA" id="2rE0H8EVrDu" role="lcghm">
<property role="lacIc" value="((" />
</node>
<node concept="l9hG8" id="2rE0H8EVrEA" role="lcghm">
<node concept="2OqwBi" id="2rE0H8EVs5P" role="lb14g">
<node concept="2OqwBi" id="2rE0H8EVrOF" role="2Oq$k0">
<node concept="117lpO" id="2rE0H8EVrFv" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8EVrXp" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVrBD" resolve="type" />
</node>
</node>
<node concept="3TrcHB" id="2rE0H8EVs7S" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="2rE0H8EVsbu" role="lcghm">
<property role="lacIc" value=") " />
</node>
<node concept="l9hG8" id="2rE0H8EVtTo" role="lcghm">
<node concept="2OqwBi" id="2rE0H8EVu2W" role="lb14g">
<node concept="117lpO" id="2rE0H8EVtUO" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8EVu4o" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVtB8" resolve="expression" />
</node>
</node>
</node>
<node concept="la8eA" id="2rE0H8EVsZ8" role="lcghm">
<property role="lacIc" value=")" />
</node>
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8EVKbH">
<property role="3GE5qa" value="Expressions" />
<ref role="WuzLi" to="zzhx:2rE0H8EVKbk" resolve="VariableAccess" />
<node concept="11bSqf" id="2rE0H8EVKbI" role="11c4hB">
<node concept="3clFbS" id="2rE0H8EVKbJ" role="2VODD2">
<node concept="lc7rE" id="2rE0H8EVKc4" role="3cqZAp">
<node concept="l9hG8" id="2rE0H8EVKcq" role="lcghm">
<node concept="2OqwBi" id="2rE0H8EVKLq" role="lb14g">
<node concept="2OqwBi" id="2rE0H8EVKkv" role="2Oq$k0">
<node concept="117lpO" id="2rE0H8EVKdi" role="2Oq$k0" />
<node concept="3TrEf2" id="2rE0H8EVKtd" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVKbl" resolve="variable" />
</node>
</node>
<node concept="3TrcHB" id="2rE0H8EVKXj" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8EVL03">
<property role="3GE5qa" value="Statements" />
<ref role="WuzLi" to="zzhx:2rE0H8EVt0K" resolve="Assignment" />
<node concept="11bSqf" id="2rE0H8EVL04" role="11c4hB">
<node concept="3clFbS" id="2rE0H8EVL05" role="2VODD2">
<node concept="3clFbJ" id="4mR5_paRZFx" role="3cqZAp">
<node concept="3clFbS" id="4mR5_paRZFz" role="3clFbx">
<node concept="lc7rE" id="4mR5_paSc9l" role="3cqZAp">
<node concept="la8eA" id="4mR5_paSc9H" role="lcghm">
<property role="lacIc" value="while(0) {" />
</node>
<node concept="l8MVK" id="4mR5_paScaA" role="lcghm" />
</node>
<node concept="lc7rE" id="4mR5_paSceF" role="3cqZAp">
<node concept="l9hG8" id="4mR5_paScf9" role="lcghm">
<node concept="2OqwBi" id="4mR5_paSfjO" role="lb14g">
<node concept="2OqwBi" id="4mR5_paSeS_" role="2Oq$k0">
<node concept="2OqwBi" id="4mR5_paSeA6" role="2Oq$k0">
<node concept="1y4W85" id="4mR5_paSerH" role="2Oq$k0">
<node concept="3cmrfG" id="4mR5_paSev6" role="1y58nS">
<property role="3cmrfH" value="0" />
</node>
<node concept="2OqwBi" id="4mR5_paScoL" role="1y566C">
<node concept="117lpO" id="4mR5_paScg1" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paScxv" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
</node>
<node concept="3TrEf2" id="4mR5_paSeJX" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVKbl" resolve="variable" />
</node>
</node>
<node concept="3TrEf2" id="4mR5_paSf7b" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:3DJOHScd5DW" resolve="type" />
</node>
</node>
<node concept="3TrcHB" id="4mR5_paSfBS" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSfGG" role="lcghm">
<property role="lacIc" value=" __assignment_temp[" />
</node>
<node concept="l9hG8" id="4mR5_paSfM5" role="lcghm">
<node concept="2YIFZM" id="4mR5_paSZah" role="lb14g">
<ref role="1Pybhc" to="wyt6:~String" resolve="String" />
<ref role="37wK5l" to="wyt6:~String.valueOf(int)" resolve="valueOf" />
<node concept="2OqwBi" id="4mR5_paT1p1" role="37wK5m">
<node concept="2OqwBi" id="4mR5_paSZoZ" role="2Oq$k0">
<node concept="117lpO" id="4mR5_paSZbJ" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paSZy9" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
<node concept="34oBXx" id="4mR5_paT39d" role="2OqNvi" />
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSn_o" role="lcghm">
<property role="lacIc" value="];" />
</node>
<node concept="l8MVK" id="4mR5_paSnFi" role="lcghm" />
</node>
<node concept="1Dw8fO" id="4mR5_paSt3n" role="3cqZAp">
<node concept="3uNrnE" id="4mR5_paSyMz" role="1Dwrff">
<node concept="37vLTw" id="4mR5_paSyM_" role="2$L3a6">
<ref role="3cqZAo" node="4mR5_paSt3q" resolve="i" />
</node>
</node>
<node concept="3clFbS" id="4mR5_paSt3p" role="2LFqv$">
<node concept="lc7rE" id="4mR5_paSyO9" role="3cqZAp">
<node concept="la8eA" id="4mR5_paSyOx" role="lcghm">
<property role="lacIc" value="__assignment_temp[" />
</node>
<node concept="l9hG8" id="4mR5_paSyR3" role="lcghm">
<node concept="2YIFZM" id="4mR5_paT4oT" role="lb14g">
<ref role="1Pybhc" to="wyt6:~String" resolve="String" />
<ref role="37wK5l" to="wyt6:~String.valueOf(int)" resolve="valueOf" />
<node concept="37vLTw" id="4mR5_paT4qN" role="37wK5m">
<ref role="3cqZAo" node="4mR5_paSt3q" resolve="i" />
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSzM8" role="lcghm">
<property role="lacIc" value="] = " />
</node>
<node concept="l9hG8" id="4mR5_paSzNb" role="lcghm">
<node concept="1y4W85" id="4mR5_paSKZB" role="lb14g">
<node concept="37vLTw" id="4mR5_paSL2K" role="1y58nS">
<ref role="3cqZAo" node="4mR5_paSt3q" resolve="i" />
</node>
<node concept="2OqwBi" id="4mR5_paSHWp" role="1y566C">
<node concept="117lpO" id="4mR5_paSHNA" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paSI5q" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:2rE0H8EVt0N" resolve="expression" />
</node>
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSAJL" role="lcghm">
<property role="lacIc" value=";" />
</node>
<node concept="l8MVK" id="4mR5_paSASN" role="lcghm" />
</node>
</node>
<node concept="3cpWsn" id="4mR5_paSt3q" role="1Duv9x">
<property role="TrG5h" value="i" />
<node concept="10Oyi0" id="4mR5_paSt6j" role="1tU5fm" />
<node concept="3cmrfG" id="4mR5_paStgH" role="33vP2m">
<property role="3cmrfH" value="0" />
</node>
</node>
<node concept="3eOVzh" id="4mR5_paStOk" role="1Dwp0S">
<node concept="2OqwBi" id="4mR5_paSwmd" role="3uHU7w">
<node concept="2OqwBi" id="4mR5_paSudg" role="2Oq$k0">
<node concept="117lpO" id="4mR5_paStOO" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paSulv" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
<node concept="34oBXx" id="4mR5_paSy7u" role="2OqNvi" />
</node>
<node concept="37vLTw" id="4mR5_paSt6O" role="3uHU7B">
<ref role="3cqZAo" node="4mR5_paSt3q" resolve="i" />
</node>
</node>
</node>
<node concept="1Dw8fO" id="4mR5_paSB2q" role="3cqZAp">
<node concept="3clFbS" id="4mR5_paSB2s" role="2LFqv$">
<node concept="lc7rE" id="4mR5_paSGGK" role="3cqZAp">
<node concept="l9hG8" id="4mR5_paSL3I" role="lcghm">
<node concept="2OqwBi" id="4mR5_paTdGV" role="lb14g">
<node concept="2OqwBi" id="4mR5_paSNuI" role="2Oq$k0">
<node concept="1y4W85" id="4mR5_paSNkl" role="2Oq$k0">
<node concept="37vLTw" id="4mR5_paSNnI" role="1y58nS">
<ref role="3cqZAo" node="4mR5_paSB2t" resolve="i" />
</node>
<node concept="2OqwBi" id="4mR5_paSLbl" role="1y566C">
<node concept="117lpO" id="4mR5_paSL4$" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paSLk3" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
</node>
<node concept="3TrEf2" id="4mR5_paSNCP" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVKbl" resolve="variable" />
</node>
</node>
<node concept="3TrcHB" id="4mR5_paTew_" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSOgT" role="lcghm">
<property role="lacIc" value=" = __assignment_temp[" />
</node>
<node concept="l9hG8" id="4mR5_paSOjy" role="lcghm">
<node concept="2YIFZM" id="4mR5_paT5td" role="lb14g">
<ref role="1Pybhc" to="wyt6:~String" resolve="String" />
<ref role="37wK5l" to="wyt6:~String.valueOf(int)" resolve="valueOf" />
<node concept="37vLTw" id="4mR5_paT5uI" role="37wK5m">
<ref role="3cqZAo" node="4mR5_paSB2t" resolve="i" />
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSPos" role="lcghm">
<property role="lacIc" value="];" />
</node>
<node concept="l8MVK" id="4mR5_paSPr3" role="lcghm" />
</node>
</node>
<node concept="3cpWsn" id="4mR5_paSB2t" role="1Duv9x">
<property role="TrG5h" value="i" />
<node concept="10Oyi0" id="4mR5_paSB7M" role="1tU5fm" />
<node concept="3cmrfG" id="4mR5_paSB8H" role="33vP2m">
<property role="3cmrfH" value="0" />
</node>
</node>
<node concept="3eOVzh" id="4mR5_paSBGW" role="1Dwp0S">
<node concept="2OqwBi" id="4mR5_paSEk_" role="3uHU7w">
<node concept="2OqwBi" id="4mR5_paSC5S" role="2Oq$k0">
<node concept="117lpO" id="4mR5_paSBHs" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paSCe7" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
<node concept="34oBXx" id="4mR5_paSG5Q" role="2OqNvi" />
</node>
<node concept="37vLTw" id="4mR5_paSB9p" role="3uHU7B">
<ref role="3cqZAo" node="4mR5_paSB2t" resolve="i" />
</node>
</node>
<node concept="3uNrnE" id="4mR5_paSGFa" role="1Dwrff">
<node concept="37vLTw" id="4mR5_paSGFc" role="2$L3a6">
<ref role="3cqZAo" node="4mR5_paSB2t" resolve="i" />
</node>
</node>
</node>
<node concept="lc7rE" id="4mR5_paScbg" role="3cqZAp">
<node concept="la8eA" id="4mR5_paSccQ" role="lcghm">
<property role="lacIc" value="}" />
</node>
<node concept="l8MVK" id="4mR5_paScdY" role="lcghm" />
</node>
</node>
<node concept="3eOSWO" id="4mR5_paS4sC" role="3clFbw">
<node concept="3cmrfG" id="4mR5_paS4sI" role="3uHU7w">
<property role="3cmrfH" value="1" />
</node>
<node concept="2OqwBi" id="4mR5_paS1y0" role="3uHU7B">
<node concept="2OqwBi" id="4mR5_paRZOH" role="2Oq$k0">
<node concept="117lpO" id="4mR5_paRZGZ" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paRZXF" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
<node concept="34oBXx" id="4mR5_paS34F" role="2OqNvi" />
</node>
</node>
<node concept="9aQIb" id="4mR5_paS4$b" role="9aQIa">
<node concept="3clFbS" id="4mR5_paS4$c" role="9aQI4">
<node concept="lc7rE" id="4mR5_paS4_A" role="3cqZAp">
<node concept="l9hG8" id="4mR5_paS4_W" role="lcghm">
<node concept="2OqwBi" id="4mR5_paS99y" role="lb14g">
<node concept="2OqwBi" id="4mR5_paS8MT" role="2Oq$k0">
<node concept="1y4W85" id="4mR5_paS8c_" role="2Oq$k0">
<node concept="3cmrfG" id="4mR5_paS8FT" role="1y58nS">
<property role="3cmrfH" value="0" />
</node>
<node concept="2OqwBi" id="4mR5_paS4H_" role="1y566C">
<node concept="117lpO" id="4mR5_paS4AO" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paS4Qj" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:4mR5_paRMPJ" resolve="variables" />
</node>
</node>
</node>
<node concept="3TrEf2" id="4mR5_paS8WK" role="2OqNvi">
<ref role="3Tt5mk" to="zzhx:2rE0H8EVKbl" resolve="variable" />
</node>
</node>
<node concept="3TrcHB" id="4mR5_paS9m8" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paS9qM" role="lcghm">
<property role="lacIc" value=" = " />
</node>
<node concept="l9hG8" id="4mR5_paS9tD" role="lcghm">
<node concept="1y4W85" id="4mR5_paSbu7" role="lb14g">
<node concept="3cmrfG" id="4mR5_paSbzg" role="1y58nS">
<property role="3cmrfH" value="0" />
</node>
<node concept="2OqwBi" id="4mR5_paS9Ai" role="1y566C">
<node concept="117lpO" id="4mR5_paS9vx" role="2Oq$k0" />
<node concept="3Tsc0h" id="4mR5_paS9J0" role="2OqNvi">
<ref role="3TtcxE" to="zzhx:2rE0H8EVt0N" resolve="expression" />
</node>
</node>
</node>
</node>
<node concept="la8eA" id="4mR5_paSbT$" role="lcghm">
<property role="lacIc" value=";" />
</node>
<node concept="l8MVK" id="4mR5_paSbY3" role="lcghm" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="WtQ9Q" id="2rE0H8EWdEZ">
<ref role="WuzLi" to="zzhx:2rE0H8EWdEo" resolve="SingleLineComment" />
<node concept="11bSqf" id="2rE0H8EWdF0" role="11c4hB">
<node concept="3clFbS" id="2rE0H8EWdF1" role="2VODD2">
<node concept="lc7rE" id="2rE0H8EWdFm" role="3cqZAp">
<node concept="la8eA" id="2rE0H8EWdFG" role="lcghm">
<property role="lacIc" value="// " />
</node>
<node concept="l9hG8" id="2rE0H8EWdG_" role="lcghm">
<node concept="2OqwBi" id="2rE0H8EWdOG" role="lb14g">
<node concept="117lpO" id="2rE0H8EWdHu" role="2Oq$k0" />
<node concept="3TrcHB" id="2rE0H8EWdXq" role="2OqNvi">
<ref role="3TsBF5" to="zzhx:2rE0H8EWdEp" resolve="comment" />
</node>
</node>
</node>
<node concept="l8MVK" id="2rE0H8EWe0H" role="lcghm" />
</node>
</node>
</node>
</node>
</model>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:897464a2-297e-4911-a833-ae0a7fa4af2f(dynamicc.typesystem)">
<persistence version="9" />
<languages>
<use id="7a5dda62-9140-4668-ab76-d5ed1746f2b2" name="jetbrains.mps.lang.typesystem" version="4" />
<devkit ref="00000000-0000-4000-0000-1de82b3a4936(jetbrains.mps.devkit.aspect.typesystem)" />
</languages>
<imports />
<registry />
</model>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<solution name="dynamicc.sandbox" uuid="f366f77d-8713-4eb0-a1bb-3a3d96ca77ae" moduleVersion="0" compileInMPS="true">
<models>
<modelRoot contentPath="${module}" type="default">
<sourceRoot location="models" />
</modelRoot>
</models>
<sourcePath />
<languageVersions>
<language slang="l:a6d9727f-4982-4bf8-abdd-083fea5126ab:dynamicc" version="0" />
<language slang="l:ceab5195-25ea-4f22-9b92-103b95ca8c0c:jetbrains.mps.lang.core" version="2" />
</languageVersions>
<dependencyVersions>
<module reference="f366f77d-8713-4eb0-a1bb-3a3d96ca77ae(dynamicc.sandbox)" version="0" />
</dependencyVersions>
</solution>

View File

@@ -0,0 +1,181 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:d64bb4b5-c2b0-4ab8-b07f-9658be70d39d(dynamicc.sandbox)">
<persistence version="9" />
<languages>
<use id="a6d9727f-4982-4bf8-abdd-083fea5126ab" name="dynamicc" version="0" />
</languages>
<imports />
<registry>
<language id="a6d9727f-4982-4bf8-abdd-083fea5126ab" name="dynamicc">
<concept id="2804056819677807919" name="dynamicc.structure.CCodeBlock" flags="ng" index="c0$vX">
<property id="2804056819677807920" name="code_block" index="c0$vy" />
</concept>
<concept id="2804056819678249684" name="dynamicc.structure.VariableAccess" flags="ng" index="c1g06">
<reference id="2804056819678249685" name="variable" index="c1g07" />
</concept>
<concept id="2804056819678171184" name="dynamicc.structure.Assignment" flags="ng" index="c1Xby">
<child id="2804056819678171187" name="expression" index="c1Xbx" />
<child id="5023508469234216303" name="variables" index="fq3GT" />
</concept>
<concept id="2804056819677594590" name="dynamicc.structure.Function" flags="ng" index="c3K4c">
<property id="2804056819677595469" name="hasReturnType" index="c3Kmv" />
<reference id="2804056819677656274" name="returnType" index="c3Zo0" />
<child id="2804056819677594595" name="parameters" index="c3K4L" />
<child id="2804056819677594593" name="statements" index="c3K4N" />
</concept>
<concept id="2804056819677594602" name="dynamicc.structure.FunctionParameter" flags="ng" index="c3K4S" />
<concept id="2804056819678370456" name="dynamicc.structure.SingleLineComment" flags="ng" index="c6Hxa">
<property id="2804056819678370457" name="comment" index="c6Hxb" />
</concept>
<concept id="4210816027744194522" name="dynamicc.structure.ValVariable" flags="ng" index="QmhO4" />
<concept id="4210816027744033403" name="dynamicc.structure.VarVariable" flags="ng" index="QmSy_" />
<concept id="4210816027744020050" name="dynamicc.structure.NewlineStatement" flags="ng" index="QmZic" />
<concept id="4210816027743968307" name="dynamicc.structure.Type" flags="ng" index="Qn8VH">
<property id="2804056819677137438" name="is_c_type" index="cd0zc" />
<property id="2804056819677116914" name="c_type" index="cdVGw" />
<property id="4210816027743968310" name="strong" index="Qn8VC" />
</concept>
<concept id="4210816027743968302" name="dynamicc.structure.Variable" flags="ng" index="Qn8VK">
<property id="2804056819678176090" name="showAssignment" index="c1Y68" />
<property id="4210816027743968305" name="optional" index="Qn8VJ" />
<reference id="4210816027744033404" name="type" index="QmSyy" />
<child id="2804056819678171273" name="assignment" index="c1X9r" />
</concept>
<concept id="4210816027743824669" name="dynamicc.structure.Module" flags="ng" index="QnJB3">
<property id="4210816027743824681" name="module" index="QnJBR" />
<child id="4210816027743824697" name="statements" index="QnJBB" />
</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="QnJB3" id="3DJOHSccOlj">
<property role="TrG5h" value="TestModule" />
<property role="QnJBR" value="This is an example module" />
<node concept="Qn8VH" id="2rE0H8ESENH" role="QnJBB">
<property role="TrG5h" value="byte8" />
<property role="cd0zc" value="true" />
<property role="cdVGw" value="uint8_t" />
<property role="Qn8VC" value="true" />
</node>
<node concept="Qn8VH" id="2rE0H8ET2h3" role="QnJBB">
<property role="TrG5h" value="byte16" />
<property role="cd0zc" value="true" />
<property role="cdVGw" value="uint16_t" />
<property role="Qn8VC" value="true" />
</node>
<node concept="Qn8VH" id="2rE0H8ET6qM" role="QnJBB">
<property role="Qn8VC" value="true" />
<property role="cd0zc" value="true" />
<property role="TrG5h" value="string" />
<property role="cdVGw" value="char*" />
</node>
<node concept="QmZic" id="2rE0H8ESENN" role="QnJBB" />
<node concept="QmSy_" id="3DJOHScdcni" role="QnJBB">
<property role="TrG5h" value="test" />
<property role="Qn8VJ" value="true" />
<ref role="QmSyy" node="2rE0H8ET2h3" resolve="byte16" />
</node>
<node concept="QmhO4" id="2rE0H8ESvqO" role="QnJBB">
<property role="TrG5h" value="test2" />
<property role="c1Y68" value="true" />
<ref role="QmSyy" node="2rE0H8ESENH" resolve="byte8" />
<node concept="c1g06" id="2rE0H8EWxT1" role="c1X9r">
<ref role="c1g07" node="3DJOHScdcni" resolve="test" />
</node>
</node>
<node concept="QmZic" id="2rE0H8ETvj6" role="QnJBB" />
<node concept="c3K4c" id="2rE0H8ETviW" role="QnJBB">
<property role="TrG5h" value="testFunction" />
<property role="c3Kmv" value="true" />
<ref role="c3Zo0" node="2rE0H8ET2h3" resolve="byte16" />
<node concept="QmSy_" id="4mR5_paRZqN" role="c3K4N">
<property role="TrG5h" value="a" />
<ref role="QmSyy" node="2rE0H8ESENH" resolve="byte8" />
</node>
<node concept="QmSy_" id="4mR5_paRZr9" role="c3K4N">
<property role="TrG5h" value="b" />
<ref role="QmSyy" node="2rE0H8ESENH" resolve="byte8" />
</node>
<node concept="QmSy_" id="4mR5_paTmkB" role="c3K4N">
<property role="TrG5h" value="c" />
<ref role="QmSyy" node="2rE0H8ESENH" resolve="byte8" />
</node>
<node concept="c3K4S" id="2rE0H8ETvjg" role="c3K4L">
<property role="TrG5h" value="param1" />
<ref role="QmSyy" node="2rE0H8ET2h3" resolve="byte16" />
</node>
<node concept="c3K4S" id="2rE0H8EVrBn" role="c3K4L">
<property role="TrG5h" value="param2" />
<ref role="QmSyy" node="2rE0H8ET2h3" resolve="byte16" />
</node>
<node concept="c6Hxa" id="2rE0H8EWtn9" role="c3K4N">
<property role="c6Hxb" value="this is unchecked inline C code" />
</node>
<node concept="c0$vX" id="2rE0H8EUfSY" role="c3K4N">
<property role="c0$vy" value="a += 5;" />
</node>
<node concept="c0$vX" id="4mR5_paRDax" role="c3K4N">
<property role="c0$vy" value="a = 4;" />
</node>
<node concept="c1Xby" id="4mR5_paRZry" role="c3K4N">
<node concept="c1g06" id="4mR5_paRZrU" role="c1Xbx">
<ref role="c1g07" node="4mR5_paRZr9" resolve="b" />
</node>
<node concept="c1g06" id="4mR5_paRZs0" role="c1Xbx">
<ref role="c1g07" node="4mR5_paRZqN" resolve="a" />
</node>
<node concept="c1g06" id="4mR5_paTml4" role="c1Xbx">
<ref role="c1g07" node="4mR5_paTmkB" resolve="c" />
</node>
<node concept="c1g06" id="4mR5_paRZrK" role="fq3GT">
<ref role="c1g07" node="4mR5_paRZqN" resolve="a" />
</node>
<node concept="c1g06" id="4mR5_paTmlf" role="fq3GT">
<ref role="c1g07" node="4mR5_paTmkB" resolve="c" />
</node>
<node concept="c1g06" id="4mR5_paTmlq" role="fq3GT">
<ref role="c1g07" node="4mR5_paRZr9" resolve="b" />
</node>
</node>
<node concept="c1Xby" id="4mR5_paRZsg" role="c3K4N">
<node concept="c1g06" id="4mR5_paRZsA" role="c1Xbx">
<ref role="c1g07" node="2rE0H8ETvjg" resolve="param1" />
</node>
<node concept="c1g06" id="4mR5_paRZsz" role="fq3GT">
<ref role="c1g07" node="3DJOHScdcni" resolve="test" />
</node>
</node>
</node>
</node>
<node concept="QnJB3" id="2rE0H8ETgf0">
<property role="TrG5h" value="Types" />
<property role="QnJBR" value="a.b.types" />
<node concept="c6Hxa" id="2rE0H8EWxSU" role="QnJBB">
<property role="c6Hxb" value="define types that are directly borrowed from C99" />
</node>
<node concept="Qn8VH" id="2rE0H8ETgf1" role="QnJBB">
<property role="cd0zc" value="true" />
<property role="Qn8VC" value="true" />
<property role="TrG5h" value="int8" />
<property role="cdVGw" value="int8_t" />
</node>
<node concept="Qn8VH" id="2rE0H8ETgf6" role="QnJBB">
<property role="Qn8VC" value="true" />
<property role="cd0zc" value="true" />
<property role="TrG5h" value="int16" />
<property role="cdVGw" value="int16_t" />
</node>
<node concept="QmZic" id="2rE0H8ETgfo" role="QnJBB" />
<node concept="Qn8VH" id="2rE0H8ETgfe" role="QnJBB">
<property role="Qn8VC" value="true" />
<property role="cd0zc" value="true" />
<property role="TrG5h" value="uint8" />
<property role="cdVGw" value="uint8_t" />
</node>
</node>
</model>

View File

@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot />

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-2hssg3vy9xv64dxsyrw1lqkevdjze90">
<files names="TestModule.c:Types.c" />
</product>

View File

@@ -0,0 +1,18 @@
/*This is an example module*/
typedef byte8 uint8_t;
typedef byte16 uint16_t;
typedef string char*;
byte16 test;
const byte8 test2 = test;
byte16 testFunction(byte16 param1, byte16 param2) {
const byte8 a;
// this is unchecked inline C code
a += 5;
a = 4;
test = ((byte16) test2);
}

View File

@@ -0,0 +1,7 @@
/*a.b.types*/
// define types that are directly borrowed from C99
typedef int8 int8_t;
typedef int16 int16_t;
typedef uint8 uint8_t;

View File

@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2" />

View File

@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot />

View File

@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="8s71qfjcraawo6lhgq0b9lskfrijy9l" />

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.constraints.ConstraintsAspectDescriptor">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConstraintsDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.base.BaseConstraintsDescriptor" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode extendsClassName="jetbrains.mps.smodel.runtime.BaseConstraintsAspectDescriptor" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-9mwdx4ws8jx9cqb3ohb053vtjvf0u9l">
<files names="ConstraintsAspectDescriptor.java" />
</product>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.Language">
<classNode dependClassName="dynamicc.editor.EditorAspectDescriptorImpl" />
<classNode dependClassName="dynamicc.intentions.IntentionsDescriptor" />
<classNode dependClassName="dynamicc.structure.ConceptPresentationAspectImpl" />
<classNode dependClassName="dynamicc.structure.StructureAspectDescriptor" />
<classNode dependClassName="dynamicc.textGen.TextGenAspectDescriptor" />
<classNode dependClassName="java.lang.Class" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="jetbrains.mps.openapi.editor.descriptor.EditorAspectDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionAspectDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.SLanguageId" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConceptPresentationAspect" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ILanguageAspect" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.StructureAspectDescriptor" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenAspectDescriptor" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SLanguage" />
<classNode extendsClassName="jetbrains.mps.smodel.language.LanguageRuntime" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,666 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.editor.Assignment_Editor">
<classNode dependClassName="dynamicc.editor.Assignment_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Assignment_EditorBuilder_a">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.RefNodeListHandler" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.RefNodeListHandlerElementKeyMap" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellProviders.AbstractCellListHandler" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.CCodeBlock_Editor">
<classNode dependClassName="dynamicc.editor.CCodeBlock_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.CCodeBlock_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.CCode_StyleSheet.c_code_blockStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.CCode_StyleSheet">
<classNode dependClassName="java.lang.Deprecated" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.AbstractStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSColors" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSFonts" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.StyleRegistry" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
</dependency>
<dependency className="dynamicc.editor.Cast_Editor">
<classNode dependClassName="dynamicc.editor.Cast_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Cast_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.Type_StyleSheet.TypeNameStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.CellUtil" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSmart" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SingleRoleCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.util.Computable" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.Common_StyleSheet">
<classNode dependClassName="java.lang.Deprecated" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.AbstractStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSFonts" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
</dependency>
<dependency className="dynamicc.editor.EditorAspectDescriptorImpl">
<classNode dependClassName="dynamicc.editor.Assignment_Editor" />
<classNode dependClassName="dynamicc.editor.CCodeBlock_Editor" />
<classNode dependClassName="dynamicc.editor.Cast_Editor" />
<classNode dependClassName="dynamicc.editor.FunctionParameter_Editor" />
<classNode dependClassName="dynamicc.editor.FunctionParameter_SubstituteMenu" />
<classNode dependClassName="dynamicc.editor.Function_Editor" />
<classNode dependClassName="dynamicc.editor.Int10LiteralConcept_Editor" />
<classNode dependClassName="dynamicc.editor.Module_Editor" />
<classNode dependClassName="dynamicc.editor.NewlineStatement_Editor" />
<classNode dependClassName="dynamicc.editor.SingleLineComment_Editor" />
<classNode dependClassName="dynamicc.editor.Type_Editor" />
<classNode dependClassName="dynamicc.editor.VariableAccess_Editor" />
<classNode dependClassName="dynamicc.editor.VariableAccess_SubstituteMenu" />
<classNode dependClassName="dynamicc.editor.Variable_Editor" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.lang.smodel.ConceptSwitchIndex" />
<classNode dependClassName="jetbrains.mps.lang.smodel.ConceptSwitchIndexBuilder" />
<classNode dependClassName="jetbrains.mps.openapi.editor.descriptor.ConceptEditor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.descriptor.SubstituteMenu" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.MetaIdFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.EditorAspectDescriptorBase" />
</dependency>
<dependency className="dynamicc.editor.FunctionParameter_Editor">
<classNode dependClassName="dynamicc.editor.FunctionParameter_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.FunctionParameter_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.Common_StyleSheet.TextStyleClass" />
<classNode dependClassName="dynamicc.editor.Type_StyleSheet.TypeNameStyleClass" />
<classNode dependClassName="dynamicc.editor.Variable_StyleSheet.VariableNameStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.CellUtil" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfoSmartReferenceDecorator" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Error" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.util.Computable" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.FunctionParameter_SubstituteMenu">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.ArrayList" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.List" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.ConceptMenusPart" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.EditorMenuDescriptorBase" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.MenuPart" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.substitute.ConstraintsFilteringSubstituteMenuPartDecorator" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.substitute.DefaultSubstituteMenuLookup" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.substitute.ReferenceScopeSubstituteMenuPart" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuItem" />
<classNode dependClassName="jetbrains.mps.smodel.ConceptDescendantsCache" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.smodel.language.LanguageRegistry" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase" />
</dependency>
<dependency className="dynamicc.editor.Function_Editor">
<classNode dependClassName="dynamicc.editor.Function_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Function_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.Common_StyleSheet.TextStyleClass" />
<classNode dependClassName="dynamicc.editor.Type_StyleSheet.TypeNameStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.CellUtil" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.RefNodeListHandler" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.RefNodeListHandlerElementKeyMap" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.BlockCells" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSFonts" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Horizontal" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Vertical" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellProviders.AbstractCellListHandler" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.util.Computable" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.Int10LiteralConcept_Editor">
<classNode dependClassName="dynamicc.editor.Int10LiteralConcept_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Int10LiteralConcept_EditorBuilder_a">
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.NumericLiteralStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.Module_Editor">
<classNode dependClassName="dynamicc.editor.Module_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Module_EditorBuilder_a">
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.RefNodeListHandler" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSColors" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSFonts" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Vertical" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellProviders.AbstractCellListHandler" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.StyleRegistry" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.NewlineStatement_Editor">
<classNode dependClassName="dynamicc.editor.NewlineStatement_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.NewlineStatement_EditorBuilder_a">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.SingleLineComment_Editor">
<classNode dependClassName="dynamicc.editor.SingleLineComment_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.SingleLineComment_EditorBuilder_a">
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.CommentStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.Type_Editor">
<classNode dependClassName="dynamicc.editor.Type_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Type_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.CCode_StyleSheet.ctypeStyleClass" />
<classNode dependClassName="dynamicc.editor.Type_StyleSheet.TypeNameStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.CellUtil" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.util.Computable" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.Type_StyleSheet">
<classNode dependClassName="java.lang.Deprecated" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.AbstractStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSColors" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSFonts" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.StyleRegistry" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
</dependency>
<dependency className="dynamicc.editor.VariableAccess_Editor">
<classNode dependClassName="dynamicc.editor.VariableAccess_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.VariableAccess_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.Variable_StyleSheet.VariableNameStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.CellUtil" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfoSmartReferenceDecorator" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Error" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.util.Computable" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.VariableAccess_SubstituteMenu">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.ArrayList" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.List" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.ConceptMenusPart" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.EditorMenuDescriptorBase" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.MenuPart" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.substitute.ConstraintsFilteringSubstituteMenuPartDecorator" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.substitute.DefaultSubstituteMenuLookup" />
<classNode dependClassName="jetbrains.mps.lang.editor.menus.substitute.ReferenceScopeSubstituteMenuPart" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuItem" />
<classNode dependClassName="jetbrains.mps.smodel.ConceptDescendantsCache" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.smodel.language.LanguageRegistry" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase" />
</dependency>
<dependency className="dynamicc.editor.Variable_Editor">
<classNode dependClassName="dynamicc.editor.Variable_EditorBuilder_a" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.nodeEditor.DefaultNodeEditor" />
</dependency>
<dependency className="dynamicc.editor.Variable_EditorBuilder_a">
<classNode dependClassName="dynamicc.editor.Common_StyleSheet.TextStyleClass" />
<classNode dependClassName="dynamicc.editor.Type_StyleSheet.TypeNameStyleClass" />
<classNode dependClassName="dynamicc.editor.Variable_StyleSheet.VariableNameStyleClass" />
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Objects" />
<classNode dependClassName="jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.CellUtil" />
<classNode dependClassName="jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSmart" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleImpl" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.IWhereFilter" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.editor.cellProviders.SingleRoleCellProvider" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.EditorManager" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Collection" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Constant" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.EditorCell_Property" />
<classNode dependClassName="jetbrains.mps.nodeEditor.cells.SPropertyAccessor" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.CellActionType" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation" />
<classNode dependClassName="jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.update.AttributeKind" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.util.Computable" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder" />
</dependency>
<dependency className="dynamicc.editor.Variable_StyleSheet">
<classNode dependClassName="java.lang.Deprecated" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.AbstractStyleClass" />
<classNode dependClassName="jetbrains.mps.editor.runtime.style.StyleAttributes" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SConceptOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.nodeEditor.MPSColors" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.editor.cells.EditorCell" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.Style" />
<classNode dependClassName="jetbrains.mps.openapi.editor.style.StyleRegistry" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="hsx4w4aubb5z8yawz3mevvdfg0w0jo">
<files names="Assignment_Editor.java:Assignment_EditorBuilder_a.java:CCodeBlock_Editor.java:CCodeBlock_EditorBuilder_a.java:CCode_StyleSheet.java:Cast_Editor.java:Cast_EditorBuilder_a.java:Common_StyleSheet.java:EditorAspectDescriptorImpl.java:FunctionParameter_Editor.java:FunctionParameter_EditorBuilder_a.java:FunctionParameter_SubstituteMenu.java:Function_Editor.java:Function_EditorBuilder_a.java:Int10LiteralConcept_Editor.java:Int10LiteralConcept_EditorBuilder_a.java:Module_Editor.java:Module_EditorBuilder_a.java:NewlineStatement_Editor.java:NewlineStatement_EditorBuilder_a.java:SingleLineComment_Editor.java:SingleLineComment_EditorBuilder_a.java:Type_Editor.java:Type_EditorBuilder_a.java:Type_StyleSheet.java:VariableAccess_Editor.java:VariableAccess_EditorBuilder_a.java:VariableAccess_SubstituteMenu.java:Variable_Editor.java:Variable_EditorBuilder_a.java:Variable_StyleSheet.java" />
</product>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-8z4filarcgqm65qsum9yir3ddd1easd">
<files names="Language.java" />
</product>

View File

@@ -0,0 +1,209 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.intentions.AddAssignment_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.AddReturnType_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.IntentionsDescriptor">
<classNode dependClassName="dynamicc.intentions.AddAssignment_Intention" />
<classNode dependClassName="dynamicc.intentions.AddReturnType_Intention" />
<classNode dependClassName="dynamicc.intentions.MakeNonNullable_Intention" />
<classNode dependClassName="dynamicc.intentions.MakeNullable_Intention" />
<classNode dependClassName="dynamicc.intentions.MakeStrong_Intention" />
<classNode dependClassName="dynamicc.intentions.MakeWeak_Intention" />
<classNode dependClassName="dynamicc.intentions.NotUseTypeFromC_Intention" />
<classNode dependClassName="dynamicc.intentions.RemoveAssignment_Intention" />
<classNode dependClassName="dynamicc.intentions.RemoveReturnType_Intention" />
<classNode dependClassName="dynamicc.intentions.UseTypeFromC_Intention" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.HashMap" />
<classNode dependClassName="java.util.Map" />
<classNode dependClassName="jetbrains.mps.lang.smodel.ConceptSwitchIndex" />
<classNode dependClassName="jetbrains.mps.lang.smodel.ConceptSwitchIndexBuilder" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.MetaIdFactory" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.annotations.Nullable" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionAspectDescriptor" />
</dependency>
<dependency className="dynamicc.intentions.MakeNonNullable_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.MakeNullable_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.MakeStrong_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.MakeWeak_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.NotUseTypeFromC_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.RemoveAssignment_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.RemoveReturnType_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
<dependency className="dynamicc.intentions.UseTypeFromC_Intention">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="java.util.Collections" />
<classNode dependClassName="jetbrains.mps.intentions.AbstractIntentionExecutable" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.openapi.editor.EditorContext" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionDescriptor" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.IntentionExecutable" />
<classNode dependClassName="jetbrains.mps.openapi.intentions.Kind" />
<classNode dependClassName="jetbrains.mps.smodel.SNodePointer" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.intentions.AbstractIntentionDescriptor" />
<classNode extendsClassName="jetbrains.mps.openapi.intentions.IntentionFactory" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-6ihu7pq7swczi50d3gjufomc1y77va1">
<files names="AddAssignment_Intention.java:AddReturnType_Intention.java:IntentionsDescriptor.java:MakeNonNullable_Intention.java:MakeNullable_Intention.java:MakeStrong_Intention.java:MakeWeak_Intention.java:NotUseTypeFromC_Intention.java:RemoveAssignment_Intention.java:RemoveReturnType_Intention.java:UseTypeFromC_Intention.java" />
</product>

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.structure.ConceptPresentationAspectImpl">
<classNode dependClassName="dynamicc.structure.LanguageConceptSwitch" />
<classNode dependClassName="dynamicc.structure.StructureAspectDescriptor" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConceptPresentation" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConceptPresentationBuilder" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.StructureAspectDescriptor" />
<classNode dependClassName="org.jetbrains.annotations.Nullable" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode extendsClassName="jetbrains.mps.smodel.runtime.ConceptPresentationAspectBase" />
</dependency>
<dependency className="dynamicc.structure.LanguageConceptSwitch">
<classNode dependClassName="jetbrains.mps.lang.smodel.LanguageConceptIndex" />
<classNode dependClassName="jetbrains.mps.lang.smodel.LanguageConceptIndexBuilder" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.SConceptId" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
</dependency>
<dependency className="dynamicc.structure.StructureAspectDescriptor">
<classNode dependClassName="dynamicc.structure.LanguageConceptSwitch" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.util.Arrays" />
<classNode dependClassName="java.util.Collection" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.MetaIdFactory" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.PrimitiveTypeId" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.ids.SConceptId" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConceptDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConstrainedStringDatatypeDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.ConstrainedStringDatatypeDescriptorImpl" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.DataTypeDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.StructureAspectDescriptor" />
<classNode dependClassName="jetbrains.mps.smodel.runtime.impl.ConceptDescriptorBuilder2" />
<classNode dependClassName="org.jetbrains.annotations.Nullable" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode extendsClassName="jetbrains.mps.smodel.runtime.BaseStructureAspectDescriptor" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="9fyv03ngotovpg76x6n9cj0n0o42bs8">
<files names="ConceptPresentationAspectImpl.java:LanguageConceptSwitch.java:StructureAspectDescriptor.java" />
</product>

View File

@@ -0,0 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.textGen.Assignment_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.ListSequence" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.CCodeBlock_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.Cast_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.FunctionParameter_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.Function_TextGen">
<classNode dependClassName="java.lang.Iterable" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.internal.collections.runtime.Sequence" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.Module_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.NewlineStatement_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.SingleLineComment_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.TextGenAspectDescriptor">
<classNode dependClassName="dynamicc.structure.LanguageConceptSwitch" />
<classNode dependClassName="dynamicc.textGen.Assignment_TextGen" />
<classNode dependClassName="dynamicc.textGen.CCodeBlock_TextGen" />
<classNode dependClassName="dynamicc.textGen.Cast_TextGen" />
<classNode dependClassName="dynamicc.textGen.FunctionParameter_TextGen" />
<classNode dependClassName="dynamicc.textGen.Function_TextGen" />
<classNode dependClassName="dynamicc.textGen.Module_TextGen" />
<classNode dependClassName="dynamicc.textGen.NewlineStatement_TextGen" />
<classNode dependClassName="dynamicc.textGen.SingleLineComment_TextGen" />
<classNode dependClassName="dynamicc.textGen.Type_TextGen" />
<classNode dependClassName="dynamicc.textGen.VariableAccess_TextGen" />
<classNode dependClassName="dynamicc.textGen.Variable_TextGen" />
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="java.lang.String" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenDescriptor" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenModelOutline" />
<classNode dependClassName="org.jetbrains.annotations.NotNull" />
<classNode dependClassName="org.jetbrains.annotations.Nullable" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SAbstractConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.model.SNode" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenAspectBase" />
</dependency>
<dependency className="dynamicc.textGen.Type_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.VariableAccess_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
<dependency className="dynamicc.textGen.Variable_TextGen">
<classNode dependClassName="java.lang.Override" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SConceptOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations" />
<classNode dependClassName="jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations" />
<classNode dependClassName="jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory" />
<classNode dependClassName="jetbrains.mps.text.impl.TextGenSupport" />
<classNode dependClassName="jetbrains.mps.text.rt.TextGenContext" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SConcept" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SContainmentLink" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SProperty" />
<classNode dependClassName="org.jetbrains.mps.openapi.language.SReferenceLink" />
<classNode extendsClassName="jetbrains.mps.text.rt.TextGenDescriptorBase" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-epr4bmdau599fua3n2g71nkgwh6twa1">
<files names="Assignment_TextGen.java:CCodeBlock_TextGen.java:Cast_TextGen.java:FunctionParameter_TextGen.java:Function_TextGen.java:Module_TextGen.java:NewlineStatement_TextGen.java:SingleLineComment_TextGen.java:TextGenAspectDescriptor.java:Type_TextGen.java:VariableAccess_TextGen.java:Variable_TextGen.java" />
</product>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<dependenciesRoot>
<dependency className="dynamicc.typesystem.TypesystemDescriptor">
<classNode extendsClassName="jetbrains.mps.lang.typesystem.runtime.BaseHelginsDescriptor" />
</dependency>
</dependenciesRoot>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<product version="3" modelHash="-3bmz3xhfwd1dz5wphbw5k0zm2kar2ti">
<files names="TypesystemDescriptor.java" />
</product>

View File

@@ -0,0 +1,66 @@
package dynamicc;
/*Generated by MPS */
import jetbrains.mps.smodel.language.LanguageRuntime;
import jetbrains.mps.smodel.adapter.ids.SLanguageId;
import java.util.Collection;
import org.jetbrains.mps.openapi.language.SLanguage;
import jetbrains.mps.smodel.runtime.ILanguageAspect;
import jetbrains.mps.openapi.editor.descriptor.EditorAspectDescriptor;
import dynamicc.editor.EditorAspectDescriptorImpl;
import jetbrains.mps.openapi.intentions.IntentionAspectDescriptor;
import dynamicc.intentions.IntentionsDescriptor;
import jetbrains.mps.smodel.runtime.StructureAspectDescriptor;
import jetbrains.mps.smodel.runtime.ConceptPresentationAspect;
import dynamicc.structure.ConceptPresentationAspectImpl;
import jetbrains.mps.text.rt.TextGenAspectDescriptor;
public class Language extends LanguageRuntime {
private final SLanguageId myId;
public Language() {
myId = SLanguageId.deserialize("a6d9727f-4982-4bf8-abdd-083fea5126ab");
}
@Override
public String getNamespace() {
return "dynamicc";
}
@Override
public int getVersion() {
return 0;
}
public SLanguageId getId() {
return myId;
}
@Override
protected void fillExtendedLanguages(Collection<SLanguage> extendedLanguages) {
}
@Override
protected <T extends ILanguageAspect> T createAspect(Class<T> aspectClass) {
// AP: legacy part, must be migrated from switch: please use lang.descriptor mapping label
if (aspectClass == EditorAspectDescriptor.class) {
return aspectClass.cast(new EditorAspectDescriptorImpl());
}
if (aspectClass == IntentionAspectDescriptor.class) {
return aspectClass.cast(new IntentionsDescriptor());
}
if (aspectClass == StructureAspectDescriptor.class) {
return aspectClass.cast(new dynamicc.structure.StructureAspectDescriptor());
}
if (aspectClass == ConceptPresentationAspect.class) {
return aspectClass.cast(new ConceptPresentationAspectImpl());
}
if (aspectClass == TextGenAspectDescriptor.class) {
return aspectClass.cast(new dynamicc.textGen.TextGenAspectDescriptor());
}
return null;
}
}

View File

@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2" />

View File

@@ -0,0 +1,19 @@
package dynamicc.constraints;
/*Generated by MPS */
import jetbrains.mps.smodel.runtime.BaseConstraintsAspectDescriptor;
import jetbrains.mps.smodel.runtime.ConstraintsDescriptor;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.smodel.runtime.base.BaseConstraintsDescriptor;
public class ConstraintsAspectDescriptor extends BaseConstraintsAspectDescriptor {
public ConstraintsAspectDescriptor() {
}
@Override
public ConstraintsDescriptor getConstraints(SAbstractConcept concept) {
SAbstractConcept cncpt = concept;
return new BaseConstraintsDescriptor(concept);
}
}

View File

@@ -0,0 +1,160 @@
<?xml version="1.0" encoding="UTF-8"?>
<model ref="00000000-0000-4000-5f02-5beb5f025beb/i:ffd89fd(checkpoints/dynamicc.constraints@descriptorclasses)">
<persistence version="9" />
<attribute name="checkpoint" value="DescriptorClasses" />
<attribute name="generation-plan" value="AspectCPS" />
<languages />
<imports>
<import index="hqi2" ref="r:be166b54-261c-4e81-8aeb-f6dcc0840b63(dynamicc.constraints)" />
<import index="ze1i" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel.runtime(MPS.Core/)" />
<import index="79pl" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.smodel.runtime.base(MPS.Core/)" />
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1465982738277781862" name="jetbrains.mps.baseLanguage.structure.PlaceholderMember" flags="ng" index="2tJIrI" />
<concept id="1188207840427" name="jetbrains.mps.baseLanguage.structure.AnnotationInstance" flags="nn" index="2AHcQZ">
<reference id="1188208074048" name="annotation" index="2AI5Lk" />
</concept>
<concept id="1188208481402" name="jetbrains.mps.baseLanguage.structure.HasAnnotation" flags="ng" index="2AJDlI">
<child id="1188208488637" name="annotation" index="2AJF6D" />
</concept>
<concept id="1145552977093" name="jetbrains.mps.baseLanguage.structure.GenericNewExpression" flags="nn" index="2ShNRf">
<child id="1145553007750" name="creator" index="2ShVmc" />
</concept>
<concept id="1068390468198" name="jetbrains.mps.baseLanguage.structure.ClassConcept" flags="ig" index="312cEu">
<child id="1165602531693" name="superclass" index="1zkMxy" />
</concept>
<concept id="1068498886296" name="jetbrains.mps.baseLanguage.structure.VariableReference" flags="nn" index="37vLTw">
<reference id="1068581517664" name="variableDeclaration" index="3cqZAo" />
</concept>
<concept id="1068498886292" name="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" flags="ir" index="37vLTG" />
<concept id="4972933694980447171" name="jetbrains.mps.baseLanguage.structure.BaseVariableDeclaration" flags="ng" index="19Szcq">
<child id="5680397130376446158" name="type" index="1tU5fm" />
</concept>
<concept id="1068580123132" name="jetbrains.mps.baseLanguage.structure.BaseMethodDeclaration" flags="ng" index="3clF44">
<property id="1181808852946" name="isFinal" index="DiZV1" />
<child id="1068580123133" name="returnType" index="3clF45" />
<child id="1068580123134" name="parameter" index="3clF46" />
<child id="1068580123135" name="body" index="3clF47" />
</concept>
<concept id="1068580123165" name="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" flags="ig" index="3clFb_">
<property id="1178608670077" name="isAbstract" index="1EzhhJ" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068580123140" name="jetbrains.mps.baseLanguage.structure.ConstructorDeclaration" flags="ig" index="3clFbW" />
<concept id="1068581242878" name="jetbrains.mps.baseLanguage.structure.ReturnStatement" flags="nn" index="3cpWs6">
<child id="1068581517676" name="expression" index="3cqZAk" />
</concept>
<concept id="1068581517677" name="jetbrains.mps.baseLanguage.structure.VoidType" flags="in" index="3cqZAl" />
<concept id="1204053956946" name="jetbrains.mps.baseLanguage.structure.IMethodCall" flags="ng" index="1ndlxa">
<reference id="1068499141037" name="baseMethodDeclaration" index="37wK5l" />
<child id="1068499141038" name="actualArgument" index="37wK5m" />
</concept>
<concept id="1212685548494" name="jetbrains.mps.baseLanguage.structure.ClassCreator" flags="nn" index="1pGfFk" />
<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="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel">
<concept id="6677504323281689838" name="jetbrains.mps.lang.smodel.structure.SConceptType" flags="in" index="3bZ5Sz" />
<concept id="5944356402132808749" name="jetbrains.mps.lang.smodel.structure.ConceptSwitchStatement" flags="nn" index="1_3QMa">
<child id="6039268229365417680" name="defaultBlock" index="1prKM_" />
<child id="5944356402132808752" name="expression" index="1_3QMn" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1133920641626" name="jetbrains.mps.lang.core.structure.BaseConcept" flags="ng" index="2VYdi">
<property id="1193676396447" name="virtualPackage" index="3GE5qa" />
</concept>
<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="312cEu" id="0">
<property role="TrG5h" value="ConstraintsAspectDescriptor" />
<property role="3GE5qa" value="Constraints" />
<node concept="3uibUv" id="1" role="1zkMxy">
<ref role="3uigEE" to="ze1i:~BaseConstraintsAspectDescriptor" resolve="BaseConstraintsAspectDescriptor" />
</node>
<node concept="3Tm1VV" id="2" role="1B3o_S" />
<node concept="3clFbW" id="3" role="jymVt">
<node concept="3cqZAl" id="6" role="3clF45" />
<node concept="3Tm1VV" id="7" role="1B3o_S" />
<node concept="3clFbS" id="8" role="3clF47" />
</node>
<node concept="2tJIrI" id="4" role="jymVt" />
<node concept="3clFb_" id="5" role="jymVt">
<property role="1EzhhJ" value="false" />
<property role="TrG5h" value="getConstraints" />
<property role="DiZV1" value="false" />
<node concept="2AHcQZ" id="9" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
<node concept="3Tm1VV" id="a" role="1B3o_S" />
<node concept="3uibUv" id="b" role="3clF45">
<ref role="3uigEE" to="ze1i:~ConstraintsDescriptor" resolve="ConstraintsDescriptor" />
</node>
<node concept="37vLTG" id="c" role="3clF46">
<property role="TrG5h" value="concept" />
<node concept="3bZ5Sz" id="e" role="1tU5fm" />
</node>
<node concept="3clFbS" id="d" role="3clF47">
<node concept="1_3QMa" id="f" role="3cqZAp">
<node concept="37vLTw" id="h" role="1_3QMn">
<ref role="3cqZAo" node="c" resolve="concept" />
</node>
<node concept="3clFbS" id="i" role="1prKM_" />
</node>
<node concept="3cpWs6" id="g" role="3cqZAp">
<node concept="2ShNRf" id="j" role="3cqZAk">
<node concept="1pGfFk" id="k" role="2ShVmc">
<ref role="37wK5l" to="79pl:~BaseConstraintsDescriptor.&lt;init&gt;(org.jetbrains.mps.openapi.language.SAbstractConcept)" resolve="BaseConstraintsDescriptor" />
<node concept="37vLTw" id="l" role="37wK5m">
<ref role="3cqZAo" node="c" resolve="concept" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="39dXUE" id="m">
<node concept="39e2AJ" id="n" role="39e2AI">
<property role="39e3Y2" value="aspectDescriptorClass" />
<node concept="39e2AG" id="o" role="39e3Y0">
<property role="2mV_xN" value="true" />
<node concept="39e2AT" id="p" role="39e2AY">
<ref role="39e2AS" node="0" resolve="ConstraintsAspectDescriptor" />
</node>
</node>
</node>
</node>
</model>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<checkpoints>
<plan id="AspectCPS">
<checkpoint id="DescriptorClasses" file="aspectcps-descriptorclasses.mps" />
</plan>
</checkpoints>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<debug-info version="2">
<root>
<file name="ConstraintsAspectDescriptor.java">
<unit at="10,0,20,0" name="dynamicc.constraints.ConstraintsAspectDescriptor" />
</file>
</root>
</debug-info>

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Assignment_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Assignment_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,215 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.nodeEditor.cellProviders.AbstractCellListHandler;
import jetbrains.mps.lang.editor.cellProviders.RefNodeListHandler;
import org.jetbrains.mps.openapi.language.SContainmentLink;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode;
import jetbrains.mps.lang.editor.cellProviders.RefNodeListHandlerElementKeyMap;
import jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Assignment_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Assignment_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_qrfxcf_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createRefNodeList_0());
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createRefNodeList_1());
return editorCell;
}
private EditorCell createRefNodeList_0() {
AbstractCellListHandler handler = new variablesListHandler_qrfxcf_a0(myNode, getEditorContext());
EditorCell_Collection editorCell = handler.createCells(new CellLayout_Indent(), false);
editorCell.setCellId("refNodeList_variables");
editorCell.setSRole(handler.getElementSRole());
return editorCell;
}
private static class variablesListHandler_qrfxcf_a0 extends RefNodeListHandler {
@NotNull
private SNode myNode;
public variablesListHandler_qrfxcf_a0(SNode ownerNode, EditorContext context) {
super(context, false);
myNode = ownerNode;
}
@NotNull
public SNode getNode() {
return myNode;
}
public SContainmentLink getSLink() {
return LINKS.variables$hrz_;
}
public SAbstractConcept getChildSConcept() {
return CONCEPTS.VariableAccess$Q8;
}
public EditorCell createNodeCell(SNode elementNode) {
EditorCell elementCell = getUpdateSession().updateChildNodeCell(elementNode);
installElementCellActions(elementNode, elementCell, false);
return elementCell;
}
public EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(variablesListHandler_qrfxcf_a0.this.getNode(), LINKS.variables$hrz_));
try {
EditorCell emptyCell = null;
emptyCell = super.createEmptyCell();
installElementCellActions(null, emptyCell, true);
setCellContext(emptyCell);
return emptyCell;
} finally {
getCellFactory().popCellContext();
}
}
public void installElementCellActions(SNode elementNode, EditorCell elementCell, boolean isEmptyCell) {
if (elementCell.getUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET) == null) {
elementCell.putUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET, AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET);
if (elementNode != null) {
elementCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
elementCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
elementCell.addKeyMap(new RefNodeListHandlerElementKeyMap(this, ","));
}
if (elementCell.getSubstituteInfo() == null || elementCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
elementCell.setSubstituteInfo((isEmptyCell ? new SEmptyContainmentSubstituteInfo(elementCell) : new SChildSubstituteInfo(elementCell)));
}
}
}
@Override
public EditorCell createSeparatorCell(SNode prevNode, SNode nextNode) {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), getNode(), ",");
editorCell.setSelectable(false);
Style style = new StyleImpl();
style.set(StyleAttributes.LAYOUT_CONSTRAINT, "");
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(prevNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
editorCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(prevNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
return editorCell;
}
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
return editorCell;
}
private EditorCell createRefNodeList_1() {
AbstractCellListHandler handler = new expressionListHandler_qrfxcf_c0(myNode, getEditorContext());
EditorCell_Collection editorCell = handler.createCells(new CellLayout_Indent(), false);
editorCell.setCellId("refNodeList_expression");
editorCell.setSRole(handler.getElementSRole());
return editorCell;
}
private static class expressionListHandler_qrfxcf_c0 extends RefNodeListHandler {
@NotNull
private SNode myNode;
public expressionListHandler_qrfxcf_c0(SNode ownerNode, EditorContext context) {
super(context, false);
myNode = ownerNode;
}
@NotNull
public SNode getNode() {
return myNode;
}
public SContainmentLink getSLink() {
return LINKS.expression$jjgu;
}
public SAbstractConcept getChildSConcept() {
return CONCEPTS.Expression$BS;
}
public EditorCell createNodeCell(SNode elementNode) {
EditorCell elementCell = getUpdateSession().updateChildNodeCell(elementNode);
installElementCellActions(elementNode, elementCell, false);
return elementCell;
}
public EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(expressionListHandler_qrfxcf_c0.this.getNode(), LINKS.expression$jjgu));
try {
EditorCell emptyCell = null;
emptyCell = super.createEmptyCell();
installElementCellActions(null, emptyCell, true);
setCellContext(emptyCell);
return emptyCell;
} finally {
getCellFactory().popCellContext();
}
}
public void installElementCellActions(SNode elementNode, EditorCell elementCell, boolean isEmptyCell) {
if (elementCell.getUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET) == null) {
elementCell.putUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET, AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET);
if (elementNode != null) {
elementCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
elementCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
elementCell.addKeyMap(new RefNodeListHandlerElementKeyMap(this, ","));
}
if (elementCell.getSubstituteInfo() == null || elementCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
elementCell.setSubstituteInfo((isEmptyCell ? new SEmptyContainmentSubstituteInfo(elementCell) : new SChildSubstituteInfo(elementCell)));
}
}
}
@Override
public EditorCell createSeparatorCell(SNode prevNode, SNode nextNode) {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), getNode(), ",");
editorCell.setSelectable(false);
Style style = new StyleImpl();
style.set(StyleAttributes.LAYOUT_CONSTRAINT, "");
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(prevNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
editorCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(prevNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
return editorCell;
}
}
private static final class LINKS {
/*package*/ static final SContainmentLink variables$hrz_ = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aedd030L, 0x45b716564adf2d6fL, "variables");
/*package*/ static final SContainmentLink expression$jjgu = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aedd030L, 0x26ea02d22aedd033L, "expression");
}
private static final class CONCEPTS {
/*package*/ static final SConcept VariableAccess$Q8 = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L, "dynamicc.structure.VariableAccess");
/*package*/ static final SConcept Expression$BS = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c382b34L, "dynamicc.structure.Expression");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class CCodeBlock_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new CCodeBlock_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,106 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import dynamicc.editor.CCode_StyleSheet.c_code_blockStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class CCodeBlock_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public CCodeBlock_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_xdyk7_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createProperty_0());
return editorCell;
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.code_block$Mrpb;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no code_block>");
editorCell.setCellId("property_code_block");
Style style = new StyleImpl();
new c_code_blockStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private static final class PROPS {
/*package*/ static final SProperty code_block$Mrpb = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae8452fL, 0x26ea02d22ae84530L, "code_block");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
}
}

View File

@@ -0,0 +1,61 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.editor.runtime.style.AbstractStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.openapi.editor.style.StyleRegistry;
import jetbrains.mps.nodeEditor.MPSColors;
import jetbrains.mps.nodeEditor.MPSFonts;
public class CCode_StyleSheet {
/**
*
* @deprecated Since MPS 3.5 use generated StyleClass
*/
@Deprecated
public static void apply_ctype(Style style, EditorCell editorCell) {
SNode node = (editorCell == null ? null : editorCell.getSNode());
EditorContext editorContext = (editorCell == null ? null : editorCell.getContext());
new ctypeStyleClass(editorContext, node).apply(style, editorCell);
}
/**
*
* @deprecated Since MPS 3.5 use generated StyleClass
*/
@Deprecated
public static void apply_c_code_block(Style style, EditorCell editorCell) {
SNode node = (editorCell == null ? null : editorCell.getSNode());
EditorContext editorContext = (editorCell == null ? null : editorCell.getContext());
new c_code_blockStyleClass(editorContext, node).apply(style, editorCell);
}
public static class ctypeStyleClass extends AbstractStyleClass {
public ctypeStyleClass(EditorContext editorContext, SNode node) {
super(editorContext, node);
}
@Override
public void apply(Style style, EditorCell editorCell) {
style.set(StyleAttributes.TEXT_COLOR, StyleRegistry.getInstance().getSimpleColor(MPSColors.yellow));
style.set(StyleAttributes.FONT_STYLE, MPSFonts.BOLD);
}
}
public static class c_code_blockStyleClass extends AbstractStyleClass {
public c_code_blockStyleClass(EditorContext editorContext, SNode node) {
super(editorContext, node);
}
@Override
public void apply(Style style, EditorCell editorCell) {
style.set(StyleAttributes.TEXT_COLOR, StyleRegistry.getInstance().getSimpleColor(MPSColors.yellow));
style.set(StyleAttributes.FONT_STYLE, MPSFonts.PLAIN);
}
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Cast_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Cast_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,238 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.lang.editor.cellProviders.SingleRoleCellProvider;
import org.jetbrains.mps.openapi.language.SContainmentLink;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSmart;
import jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass;
import org.jetbrains.mps.openapi.language.SReferenceLink;
import jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider;
import jetbrains.mps.util.Computable;
import jetbrains.mps.editor.runtime.impl.CellUtil;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import dynamicc.editor.Type_StyleSheet.TypeNameStyleClass;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Cast_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Cast_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_ba7vhy_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createRefNode_0());
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createRefCell_0());
return editorCell;
}
private EditorCell createRefNode_0() {
SingleRoleCellProvider provider = new expressionSingleRoleHandler_ba7vhy_a0(myNode, LINKS.expression$nPT1, getEditorContext());
return provider.createCell();
}
private static class expressionSingleRoleHandler_ba7vhy_a0 extends SingleRoleCellProvider {
@NotNull
private SNode myNode;
public expressionSingleRoleHandler_ba7vhy_a0(SNode ownerNode, SContainmentLink containmentLink, EditorContext context) {
super(containmentLink, context);
myNode = ownerNode;
}
@Override
@NotNull
public SNode getNode() {
return myNode;
}
protected EditorCell createChildCell(SNode child) {
EditorCell editorCell = getUpdateSession().updateChildNodeCell(child);
editorCell.setAction(CellActionType.DELETE, new CellAction_DeleteSmart(getNode(), LINKS.expression$nPT1, child));
editorCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteSmart(getNode(), LINKS.expression$nPT1, child));
installCellInfo(child, editorCell, false);
return editorCell;
}
private void installCellInfo(SNode child, EditorCell editorCell, boolean isEmpty) {
if (editorCell.getSubstituteInfo() == null || editorCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
editorCell.setSubstituteInfo((isEmpty ? new SEmptyContainmentSubstituteInfo(editorCell) : new SChildSubstituteInfo(editorCell)));
}
if (editorCell.getSRole() == null) {
editorCell.setSRole(LINKS.expression$nPT1);
}
}
@Override
protected EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(getNode(), LINKS.expression$nPT1));
try {
EditorCell editorCell = super.createEmptyCell();
editorCell.setCellId("empty_expression");
installCellInfo(null, editorCell, true);
setCellContext(editorCell);
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
protected String getNoTargetText() {
return "<no expression>";
}
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
return editorCell;
}
private EditorCell createRefCell_0() {
final SReferenceLink referenceLink = LINKS.type$LtG9;
SReferenceCellProvider provider = new SReferenceCellProvider(getNode(), referenceLink, getEditorContext()) {
protected EditorCell createReferenceCell(final SNode targetNode) {
EditorCell cell = getUpdateSession().updateReferencedNodeCell(new Computable<EditorCell>() {
public EditorCell compute() {
return new Inline_Builder0(getEditorContext(), getNode(), targetNode).createCell();
}
}, targetNode, LINKS.type$LtG9);
CellUtil.setupIDeprecatableStyles(targetNode, cell);
setSemanticNodeToCells(cell, getNode());
installDeleteActions_notnull(cell);
return cell;
}
};
provider.setNoTargetText("<no type>");
EditorCell editorCell = provider.createCell();
if (editorCell.getSRole() == null) {
editorCell.setReferenceCell(true);
editorCell.setSRole(LINKS.type$LtG9);
}
editorCell.setSubstituteInfo(new SReferenceSubstituteInfo(editorCell, referenceLink));
Iterable<SNode> referenceAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.LinkAttribute$7j);
Iterable<SNode> currentReferenceAttributes = Sequence.fromIterable(referenceAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(LinkAttribute__BehaviorDescriptor.getLink_id1avfQ4BEFo6.invoke(it), referenceLink);
}
});
if (Sequence.fromIterable(currentReferenceAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentReferenceAttributes).first(), AttributeKind.REFERENCE, editorCell);
} else
return editorCell;
}
/*package*/ static class Inline_Builder0 extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
private SNode myReferencingNode;
/*package*/ Inline_Builder0(@NotNull EditorContext context, SNode referencingNode, @NotNull SNode node) {
super(context);
myReferencingNode = referencingNode;
myNode = node;
}
/*package*/ EditorCell createCell() {
return createProperty_0();
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, true, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
new TypeNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
}
private static final class LINKS {
/*package*/ static final SContainmentLink expression$nPT1 = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aedb9e6L, 0x26ea02d22aedd9c8L, "expression");
/*package*/ static final SReferenceLink type$LtG9 = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aedb9e6L, 0x26ea02d22aedb9e9L, "type");
}
private static final class CONCEPTS {
/*package*/ static final SConcept LinkAttribute$7j = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da51L, "jetbrains.mps.lang.core.structure.LinkAttribute");
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
}
private static final class PROPS {
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
}
}

View File

@@ -0,0 +1,36 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.editor.runtime.style.AbstractStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.nodeEditor.MPSFonts;
public class Common_StyleSheet {
/**
*
* @deprecated Since MPS 3.5 use generated StyleClass
*/
@Deprecated
public static void apply_Text(Style style, EditorCell editorCell) {
SNode node = (editorCell == null ? null : editorCell.getSNode());
EditorContext editorContext = (editorCell == null ? null : editorCell.getContext());
new TextStyleClass(editorContext, node).apply(style, editorCell);
}
public static class TextStyleClass extends AbstractStyleClass {
public TextStyleClass(EditorContext editorContext, SNode node) {
super(editorContext, node);
}
@Override
public void apply(Style style, EditorCell editorCell) {
style.set(StyleAttributes.FONT_STYLE, MPSFonts.PLAIN);
}
}
}

View File

@@ -0,0 +1,67 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.EditorAspectDescriptorBase;
import org.jetbrains.annotations.NotNull;
import java.util.Collection;
import jetbrains.mps.openapi.editor.descriptor.ConceptEditor;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import java.util.Collections;
import jetbrains.mps.openapi.editor.descriptor.SubstituteMenu;
import jetbrains.mps.lang.smodel.ConceptSwitchIndex;
import jetbrains.mps.lang.smodel.ConceptSwitchIndexBuilder;
import jetbrains.mps.smodel.adapter.ids.MetaIdFactory;
public class EditorAspectDescriptorImpl extends EditorAspectDescriptorBase {
@NotNull
public Collection<ConceptEditor> getDeclaredEditors(SAbstractConcept concept) {
SAbstractConcept cncpt = ((SAbstractConcept) concept);
switch (conceptIndex.index(cncpt)) {
case 0:
return Collections.<ConceptEditor>singletonList(new Assignment_Editor());
case 1:
return Collections.<ConceptEditor>singletonList(new CCodeBlock_Editor());
case 2:
return Collections.<ConceptEditor>singletonList(new Cast_Editor());
case 3:
return Collections.<ConceptEditor>singletonList(new Function_Editor());
case 4:
return Collections.<ConceptEditor>singletonList(new FunctionParameter_Editor());
case 5:
return Collections.<ConceptEditor>singletonList(new Int10LiteralConcept_Editor());
case 6:
return Collections.<ConceptEditor>singletonList(new Module_Editor());
case 7:
return Collections.<ConceptEditor>singletonList(new NewlineStatement_Editor());
case 8:
return Collections.<ConceptEditor>singletonList(new SingleLineComment_Editor());
case 9:
return Collections.<ConceptEditor>singletonList(new Type_Editor());
case 10:
return Collections.<ConceptEditor>singletonList(new Variable_Editor());
case 11:
return Collections.<ConceptEditor>singletonList(new VariableAccess_Editor());
default:
}
return Collections.<ConceptEditor>emptyList();
}
@NotNull
@Override
public Collection<SubstituteMenu> getDeclaredDefaultSubstituteMenus(SAbstractConcept concept) {
SAbstractConcept cncpt = concept;
switch (conceptIndex1.index(cncpt)) {
case 0:
return Collections.<SubstituteMenu>singletonList(new FunctionParameter_SubstituteMenu());
case 1:
return Collections.<SubstituteMenu>singletonList(new VariableAccess_SubstituteMenu());
default:
}
return Collections.<SubstituteMenu>emptyList();
}
private static final ConceptSwitchIndex conceptIndex = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aedd030L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae8452fL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aedb9e6L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503eaL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x45b716564ae56561L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c312b1dL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c342652L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22af0da98L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L)).seal();
private static final ConceptSwitchIndex conceptIndex1 = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503eaL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L)).seal();
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class FunctionParameter_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new FunctionParameter_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,219 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import dynamicc.editor.Variable_StyleSheet.VariableNameStyleClass;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
import dynamicc.editor.Common_StyleSheet.TextStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import org.jetbrains.mps.openapi.language.SReferenceLink;
import jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider;
import jetbrains.mps.util.Computable;
import jetbrains.mps.editor.runtime.impl.CellUtil;
import jetbrains.mps.nodeEditor.cells.EditorCell_Error;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfoSmartReferenceDecorator;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo;
import jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor;
import dynamicc.editor.Type_StyleSheet.TypeNameStyleClass;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class FunctionParameter_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public FunctionParameter_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_r9vhx9_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createProperty_0());
editorCell.addEditorCell(createConstant_0());
editorCell.addEditorCell(createRefCell_0());
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
new VariableNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, ":");
editorCell.setCellId("Constant_r9vhx9_b0");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefCell_0() {
final SReferenceLink referenceLink = LINKS.type$YYfM;
SReferenceCellProvider provider = new SReferenceCellProvider(getNode(), referenceLink, getEditorContext()) {
protected EditorCell createReferenceCell(final SNode targetNode) {
EditorCell cell = getUpdateSession().updateReferencedNodeCell(new Computable<EditorCell>() {
public EditorCell compute() {
return new Inline_Builder0(getEditorContext(), getNode(), targetNode).createCell();
}
}, targetNode, LINKS.type$YYfM);
CellUtil.setupIDeprecatableStyles(targetNode, cell);
setSemanticNodeToCells(cell, getNode());
installDeleteActions_notnull_smartReference(cell);
return cell;
}
@Override
protected EditorCell createErrorCell(String error) {
EditorCell_Error cell = new EditorCell_Error(getEditorContext(), getNode(), error, true);
cell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(getNode(), CellAction_DeleteNode.DeleteDirection.FORWARD));
cell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(getNode(), CellAction_DeleteNode.DeleteDirection.BACKWARD));
return cell;
}
};
provider.setNoTargetText("<no type>");
EditorCell editorCell = provider.createCell();
if (editorCell.getSRole() == null) {
editorCell.setReferenceCell(true);
editorCell.setSRole(LINKS.type$YYfM);
}
editorCell.setSubstituteInfo(new SReferenceSubstituteInfoSmartReferenceDecorator(new SReferenceSubstituteInfo(editorCell, referenceLink)));
Iterable<SNode> referenceAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.LinkAttribute$7j);
Iterable<SNode> currentReferenceAttributes = Sequence.fromIterable(referenceAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(LinkAttribute__BehaviorDescriptor.getLink_id1avfQ4BEFo6.invoke(it), referenceLink);
}
});
if (Sequence.fromIterable(currentReferenceAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentReferenceAttributes).first(), AttributeKind.REFERENCE, editorCell);
} else
return editorCell;
}
/*package*/ static class Inline_Builder0 extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
private SNode myReferencingNode;
/*package*/ Inline_Builder0(@NotNull EditorContext context, SNode referencingNode, @NotNull SNode node) {
super(context);
myReferencingNode = referencingNode;
myNode = node;
}
/*package*/ EditorCell createCell() {
return createProperty_1();
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
private EditorCell createProperty_1() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, true, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name1");
Style style = new StyleImpl();
new TypeNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
}
private static final class PROPS {
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
/*package*/ static final SConcept LinkAttribute$7j = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da51L, "jetbrains.mps.lang.core.structure.LinkAttribute");
}
private static final class LINKS {
/*package*/ static final SReferenceLink type$YYfM = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x3a6fd2de0c345a7cL, "type");
}
}

View File

@@ -0,0 +1,97 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
import jetbrains.mps.lang.editor.menus.MenuPart;
import jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuItem;
import jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuContext;
import java.util.ArrayList;
import jetbrains.mps.lang.editor.menus.substitute.ConstraintsFilteringSubstituteMenuPartDecorator;
import jetbrains.mps.lang.editor.menus.EditorMenuDescriptorBase;
import jetbrains.mps.smodel.SNodePointer;
import jetbrains.mps.lang.editor.menus.substitute.ReferenceScopeSubstituteMenuPart;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.lang.editor.menus.ConceptMenusPart;
import java.util.Collection;
import jetbrains.mps.smodel.ConceptDescendantsCache;
import jetbrains.mps.lang.editor.menus.substitute.DefaultSubstituteMenuLookup;
import jetbrains.mps.smodel.language.LanguageRegistry;
import org.jetbrains.mps.openapi.language.SConcept;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SReferenceLink;
public class FunctionParameter_SubstituteMenu extends SubstituteMenuBase {
@NotNull
@Override
protected List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> getParts(final SubstituteMenuContext _context) {
List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> result = new ArrayList<MenuPart<SubstituteMenuItem, SubstituteMenuContext>>();
result.add(new ConstraintsFilteringSubstituteMenuPartDecorator(new SMP_ReferenceScope_w5syfn_a(), CONCEPTS.FunctionParameter$AW));
result.add(new SMP_Subconcepts_w5syfn_b());
return result;
}
@NotNull
@Override
public List<SubstituteMenuItem> createMenuItems(@NotNull SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("default substitute menu for FunctionParameter. Generated from implicit smart reference attribute.", new SNodePointer("r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)", "2804056819677594602")));
try {
return super.createMenuItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
public class SMP_ReferenceScope_w5syfn_a extends ReferenceScopeSubstituteMenuPart {
public SMP_ReferenceScope_w5syfn_a() {
// that cast is needed for prevent the users from https://youtrack.jetbrains.com/issue/MPS-29051
super((SAbstractConcept) CONCEPTS.FunctionParameter$AW, LINKS.type$YYfM);
}
@NotNull
@Override
public List<SubstituteMenuItem> createItems(SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("reference scope substitute menu part", null));
try {
return super.createItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
}
public class SMP_Subconcepts_w5syfn_b extends ConceptMenusPart<SubstituteMenuItem, SubstituteMenuContext> {
protected Collection getConcepts(final SubstituteMenuContext _context) {
return ConceptDescendantsCache.getInstance().getDirectDescendants(CONCEPTS.FunctionParameter$AW);
}
@NotNull
@Override
public List<SubstituteMenuItem> createItems(SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("include menus for all the direct subconcepts of " + "FunctionParameter", null));
try {
return super.createItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
@Override
protected Collection<SubstituteMenuItem> createItemsForConcept(SubstituteMenuContext context, SAbstractConcept concept) {
return context.createItems(new DefaultSubstituteMenuLookup(LanguageRegistry.getInstance(context.getEditorContext().getRepository()), concept));
}
}
private static final class CONCEPTS {
/*package*/ static final SConcept FunctionParameter$AW = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503eaL, "dynamicc.structure.FunctionParameter");
}
private static final class LINKS {
/*package*/ static final SReferenceLink type$YYfM = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x3a6fd2de0c345a7cL, "type");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Function_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Function_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,472 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Vertical;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.nodeEditor.BlockCells;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Horizontal;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import dynamicc.editor.Common_StyleSheet.TextStyleClass;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
import jetbrains.mps.nodeEditor.cellProviders.AbstractCellListHandler;
import jetbrains.mps.lang.editor.cellProviders.RefNodeListHandler;
import org.jetbrains.mps.openapi.language.SContainmentLink;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode;
import jetbrains.mps.lang.editor.cellProviders.RefNodeListHandlerElementKeyMap;
import jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import org.jetbrains.mps.openapi.language.SReferenceLink;
import jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider;
import jetbrains.mps.util.Computable;
import jetbrains.mps.editor.runtime.impl.CellUtil;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo;
import jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor;
import dynamicc.editor.Type_StyleSheet.TypeNameStyleClass;
import jetbrains.mps.nodeEditor.MPSFonts;
import jetbrains.mps.nodeEditor.cells.EditorCell_Indent;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Function_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Function_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Vertical());
editorCell.setCellId("Collection_y1p9lm_a");
editorCell.setBig(true);
setCellContext(editorCell);
Style style = new StyleImpl();
style.set(StyleAttributes.SELECTABLE, false);
editorCell.getStyle().putAll(style);
editorCell.addEditorCell(createCollection_1());
editorCell.addEditorCell(createCollection_4());
if (nodeCondition_y1p9lm_a2a()) {
editorCell.addEditorCell(createConstant_4());
}
return editorCell;
}
private boolean nodeCondition_y1p9lm_a2a() {
return BlockCells.useBraces();
}
private EditorCell createCollection_1() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Horizontal());
editorCell.setCellId("Collection_y1p9lm_a0");
Style style = new StyleImpl();
style.set(StyleAttributes.SELECTABLE, false);
editorCell.getStyle().putAll(style);
editorCell.addEditorCell(createCollection_2());
if (nodeCondition_y1p9lm_a1a0()) {
editorCell.addEditorCell(createConstant_3());
}
return editorCell;
}
private boolean nodeCondition_y1p9lm_a1a0() {
return BlockCells.useBraces();
}
private EditorCell createCollection_2() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_y1p9lm_a0a");
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createProperty_0());
editorCell.addEditorCell(createConstant_0());
editorCell.addEditorCell(createRefNodeList_0());
editorCell.addEditorCell(createConstant_1());
if (nodeCondition_y1p9lm_a5a0a()) {
editorCell.addEditorCell(createCollection_3());
}
return editorCell;
}
private boolean nodeCondition_y1p9lm_a5a0a() {
return SPropertyOperations.getBoolean(myNode, PROPS.hasReturnType$GLJn);
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "(");
editorCell.setCellId("Constant_y1p9lm_c0a0");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
style.set(StyleAttributes.PUNCTUATION_RIGHT, true);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefNodeList_0() {
AbstractCellListHandler handler = new parametersListHandler_y1p9lm_d0a0(myNode, getEditorContext());
EditorCell_Collection editorCell = handler.createCells(new CellLayout_Indent(), false);
editorCell.setCellId("refNodeList_parameters");
editorCell.setSRole(handler.getElementSRole());
return editorCell;
}
private static class parametersListHandler_y1p9lm_d0a0 extends RefNodeListHandler {
@NotNull
private SNode myNode;
public parametersListHandler_y1p9lm_d0a0(SNode ownerNode, EditorContext context) {
super(context, false);
myNode = ownerNode;
}
@NotNull
public SNode getNode() {
return myNode;
}
public SContainmentLink getSLink() {
return LINKS.parameters$DodW;
}
public SAbstractConcept getChildSConcept() {
return CONCEPTS.FunctionParameter$AW;
}
public EditorCell createNodeCell(SNode elementNode) {
EditorCell elementCell = getUpdateSession().updateChildNodeCell(elementNode);
installElementCellActions(elementNode, elementCell, false);
return elementCell;
}
public EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(parametersListHandler_y1p9lm_d0a0.this.getNode(), LINKS.parameters$DodW));
try {
EditorCell emptyCell = null;
emptyCell = super.createEmptyCell();
installElementCellActions(null, emptyCell, true);
setCellContext(emptyCell);
return emptyCell;
} finally {
getCellFactory().popCellContext();
}
}
public void installElementCellActions(SNode elementNode, EditorCell elementCell, boolean isEmptyCell) {
if (elementCell.getUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET) == null) {
elementCell.putUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET, AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET);
if (elementNode != null) {
elementCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
elementCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
elementCell.addKeyMap(new RefNodeListHandlerElementKeyMap(this, ","));
}
if (elementCell.getSubstituteInfo() == null || elementCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
elementCell.setSubstituteInfo((isEmptyCell ? new SEmptyContainmentSubstituteInfo(elementCell) : new SChildSubstituteInfo(elementCell)));
}
}
}
@Override
public EditorCell createSeparatorCell(SNode prevNode, SNode nextNode) {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), getNode(), ",");
editorCell.setSelectable(false);
Style style = new StyleImpl();
style.set(StyleAttributes.LAYOUT_CONSTRAINT, "");
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(prevNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
editorCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(prevNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
return editorCell;
}
}
private EditorCell createConstant_1() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, ")");
editorCell.setCellId("Constant_y1p9lm_e0a0");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createCollection_3() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_y1p9lm_f0a0");
Style style = new StyleImpl();
style.set(StyleAttributes.SELECTABLE, false);
editorCell.getStyle().putAll(style);
editorCell.addEditorCell(createConstant_2());
editorCell.addEditorCell(createRefCell_0());
return editorCell;
}
private EditorCell createConstant_2() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, ":");
editorCell.setCellId("Constant_y1p9lm_a5a0a");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefCell_0() {
final SReferenceLink referenceLink = LINKS.returnType$OMq5;
SReferenceCellProvider provider = new SReferenceCellProvider(getNode(), referenceLink, getEditorContext()) {
protected EditorCell createReferenceCell(final SNode targetNode) {
EditorCell cell = getUpdateSession().updateReferencedNodeCell(new Computable<EditorCell>() {
public EditorCell compute() {
return new Inline_Builder0(getEditorContext(), getNode(), targetNode).createCell();
}
}, targetNode, LINKS.returnType$OMq5);
CellUtil.setupIDeprecatableStyles(targetNode, cell);
setSemanticNodeToCells(cell, getNode());
installDeleteActions_nullable_reference(cell);
return cell;
}
};
provider.setNoTargetText("<no returnType>");
EditorCell editorCell = provider.createCell();
if (editorCell.getSRole() == null) {
editorCell.setReferenceCell(true);
editorCell.setSRole(LINKS.returnType$OMq5);
}
editorCell.setSubstituteInfo(new SReferenceSubstituteInfo(editorCell, referenceLink));
Iterable<SNode> referenceAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.LinkAttribute$7j);
Iterable<SNode> currentReferenceAttributes = Sequence.fromIterable(referenceAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(LinkAttribute__BehaviorDescriptor.getLink_id1avfQ4BEFo6.invoke(it), referenceLink);
}
});
if (Sequence.fromIterable(currentReferenceAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentReferenceAttributes).first(), AttributeKind.REFERENCE, editorCell);
} else
return editorCell;
}
/*package*/ static class Inline_Builder0 extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
private SNode myReferencingNode;
/*package*/ Inline_Builder0(@NotNull EditorContext context, SNode referencingNode, @NotNull SNode node) {
super(context);
myReferencingNode = referencingNode;
myNode = node;
}
/*package*/ EditorCell createCell() {
return createProperty_1();
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
private EditorCell createProperty_1() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, true, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name1");
Style style = new StyleImpl();
new TypeNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
}
private EditorCell createConstant_3() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "{");
editorCell.setCellId("Constant_y1p9lm_b0a");
Style style = new StyleImpl();
style.set(StyleAttributes.MATCHING_LABEL, "brace");
style.set(StyleAttributes.INDENT_LAYOUT_NO_WRAP, true);
style.set(StyleAttributes.FONT_STYLE, MPSFonts.PLAIN);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createCollection_4() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Horizontal());
editorCell.setCellId("Collection_y1p9lm_b0");
Style style = new StyleImpl();
style.set(StyleAttributes.SELECTABLE, false);
editorCell.getStyle().putAll(style);
editorCell.addEditorCell(createIndentCell_0());
editorCell.addEditorCell(createRefNodeList_1());
return editorCell;
}
private EditorCell createIndentCell_0() {
EditorCell_Indent editorCell = new EditorCell_Indent(getEditorContext(), myNode);
return editorCell;
}
private EditorCell createRefNodeList_1() {
AbstractCellListHandler handler = new statementsListHandler_y1p9lm_b1a(myNode, getEditorContext());
EditorCell_Collection editorCell = handler.createCells(new CellLayout_Vertical(), false);
editorCell.setCellId("refNodeList_statements");
editorCell.setSRole(handler.getElementSRole());
return editorCell;
}
private static class statementsListHandler_y1p9lm_b1a extends RefNodeListHandler {
@NotNull
private SNode myNode;
public statementsListHandler_y1p9lm_b1a(SNode ownerNode, EditorContext context) {
super(context, false);
myNode = ownerNode;
}
@NotNull
public SNode getNode() {
return myNode;
}
public SContainmentLink getSLink() {
return LINKS.statements$DocY;
}
public SAbstractConcept getChildSConcept() {
return CONCEPTS.Statement$k3;
}
public EditorCell createNodeCell(SNode elementNode) {
EditorCell elementCell = getUpdateSession().updateChildNodeCell(elementNode);
installElementCellActions(elementNode, elementCell, false);
return elementCell;
}
public EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(statementsListHandler_y1p9lm_b1a.this.getNode(), LINKS.statements$DocY));
try {
EditorCell emptyCell = null;
emptyCell = super.createEmptyCell();
installElementCellActions(null, emptyCell, true);
setCellContext(emptyCell);
return emptyCell;
} finally {
getCellFactory().popCellContext();
}
}
public void installElementCellActions(SNode elementNode, EditorCell elementCell, boolean isEmptyCell) {
if (elementCell.getUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET) == null) {
elementCell.putUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET, AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET);
if (elementNode != null) {
elementCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
elementCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
}
if (elementCell.getSubstituteInfo() == null || elementCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
elementCell.setSubstituteInfo((isEmptyCell ? new SEmptyContainmentSubstituteInfo(elementCell) : new SChildSubstituteInfo(elementCell)));
}
}
}
}
private EditorCell createConstant_4() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "}");
editorCell.setCellId("Constant_y1p9lm_c0");
Style style = new StyleImpl();
style.set(StyleAttributes.MATCHING_LABEL, "brace");
style.set(StyleAttributes.INDENT_LAYOUT_NO_WRAP, true);
style.set(StyleAttributes.FONT_STYLE, MPSFonts.PLAIN);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private static final class PROPS {
/*package*/ static final SProperty hasReturnType$GLJn = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL, 0x26ea02d22ae5074dL, "hasReturnType");
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
/*package*/ static final SConcept FunctionParameter$AW = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503eaL, "dynamicc.structure.FunctionParameter");
/*package*/ static final SConcept LinkAttribute$7j = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da51L, "jetbrains.mps.lang.core.structure.LinkAttribute");
/*package*/ static final SConcept Statement$k3 = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c312b1bL, "dynamicc.structure.Statement");
}
private static final class LINKS {
/*package*/ static final SContainmentLink parameters$DodW = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL, 0x26ea02d22ae503e3L, "parameters");
/*package*/ static final SReferenceLink returnType$OMq5 = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL, 0x26ea02d22ae5f4d2L, "returnType");
/*package*/ static final SContainmentLink statements$DocY = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL, 0x26ea02d22ae503e1L, "statements");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Int10LiteralConcept_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Int10LiteralConcept_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,87 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.NumericLiteralStyleClass;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Int10LiteralConcept_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Int10LiteralConcept_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createProperty_0();
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.literal$n0d0;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no literal>");
editorCell.setCellId("property_literal");
editorCell.setBig(true);
setCellContext(editorCell);
Style style = new StyleImpl();
new NumericLiteralStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private static final class PROPS {
/*package*/ static final SProperty literal$n0d0 = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x45b716564ae56561L, 0x45b716564ae56562L, "literal");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Module_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Module_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,214 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Vertical;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.nodeEditor.MPSFonts;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.openapi.editor.style.StyleRegistry;
import jetbrains.mps.nodeEditor.MPSColors;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
import jetbrains.mps.nodeEditor.cellProviders.AbstractCellListHandler;
import jetbrains.mps.lang.editor.cellProviders.RefNodeListHandler;
import org.jetbrains.mps.openapi.language.SContainmentLink;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode;
import jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Module_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Module_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Vertical());
editorCell.setCellId("Collection_iuuvkg_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createProperty_0());
editorCell.addEditorCell(createProperty_1());
editorCell.addEditorCell(createConstant_0());
editorCell.addEditorCell(createRefNodeList_0());
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
style.set(StyleAttributes.FONT_FAMILY, "Arial");
style.set(StyleAttributes.FONT_SIZE, 32);
style.set(StyleAttributes.FONT_STYLE, MPSFonts.BOLD);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createProperty_1() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.module$HXDb;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no module>");
editorCell.setCellId("property_module");
Style style = new StyleImpl();
style.set(StyleAttributes.FONT_FAMILY, "Arial");
style.set(StyleAttributes.FONT_SIZE, 12);
style.set(StyleAttributes.TEXT_COLOR, StyleRegistry.getInstance().getSimpleColor(MPSColors.gray));
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "");
editorCell.setCellId("Constant_iuuvkg_c0");
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefNodeList_0() {
AbstractCellListHandler handler = new statementsListHandler_iuuvkg_d0(myNode, getEditorContext());
EditorCell_Collection editorCell = handler.createCells(new CellLayout_Vertical(), false);
editorCell.setCellId("refNodeList_statements");
editorCell.setSRole(handler.getElementSRole());
return editorCell;
}
private static class statementsListHandler_iuuvkg_d0 extends RefNodeListHandler {
@NotNull
private SNode myNode;
public statementsListHandler_iuuvkg_d0(SNode ownerNode, EditorContext context) {
super(context, false);
myNode = ownerNode;
}
@NotNull
public SNode getNode() {
return myNode;
}
public SContainmentLink getSLink() {
return LINKS.statements$HXV6;
}
public SAbstractConcept getChildSConcept() {
return CONCEPTS.Statement$k3;
}
public EditorCell createNodeCell(SNode elementNode) {
EditorCell elementCell = getUpdateSession().updateChildNodeCell(elementNode);
installElementCellActions(elementNode, elementCell, false);
return elementCell;
}
public EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(statementsListHandler_iuuvkg_d0.this.getNode(), LINKS.statements$HXV6));
try {
EditorCell emptyCell = null;
emptyCell = super.createEmptyCell();
installElementCellActions(null, emptyCell, true);
setCellContext(emptyCell);
return emptyCell;
} finally {
getCellFactory().popCellContext();
}
}
public void installElementCellActions(SNode elementNode, EditorCell elementCell, boolean isEmptyCell) {
if (elementCell.getUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET) == null) {
elementCell.putUserObject(AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET, AbstractCellListHandler.ELEMENT_CELL_ACTIONS_SET);
if (elementNode != null) {
elementCell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.FORWARD));
elementCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(elementNode, CellAction_DeleteNode.DeleteDirection.BACKWARD));
}
if (elementCell.getSubstituteInfo() == null || elementCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
elementCell.setSubstituteInfo((isEmptyCell ? new SEmptyContainmentSubstituteInfo(elementCell) : new SChildSubstituteInfo(elementCell)));
}
}
}
}
private static final class PROPS {
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
/*package*/ static final SProperty module$HXDb = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c312b1dL, 0x3a6fd2de0c312b29L, "module");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
/*package*/ static final SConcept Statement$k3 = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c312b1bL, "dynamicc.structure.Statement");
}
private static final class LINKS {
/*package*/ static final SContainmentLink statements$HXV6 = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c312b1dL, 0x3a6fd2de0c312b39L, "statements");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class NewlineStatement_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new NewlineStatement_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,39 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
/*package*/ class NewlineStatement_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public NewlineStatement_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createConstant_0();
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "");
editorCell.setCellId("Constant_3uehh4_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.setDefaultText("");
return editorCell;
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class SingleLineComment_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new SingleLineComment_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,103 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.CommentStyleClass;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class SingleLineComment_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public SingleLineComment_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_5ng77o_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createProperty_0());
return editorCell;
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
Style style = new StyleImpl();
new CommentStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.comment$tyN0;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no comment>");
editorCell.setCellId("property_comment");
Style style = new StyleImpl();
new CommentStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private static final class PROPS {
/*package*/ static final SProperty comment$tyN0 = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22af0da98L, 0x26ea02d22af0da99L, "comment");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Type_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Type_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,313 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import dynamicc.editor.Type_StyleSheet.TypeNameStyleClass;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import dynamicc.editor.CCode_StyleSheet.ctypeStyleClass;
import org.jetbrains.mps.openapi.language.SReferenceLink;
import jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider;
import jetbrains.mps.util.Computable;
import jetbrains.mps.editor.runtime.impl.CellUtil;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo;
import jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Type_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Type_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_a1nfgp_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createAlternation_0());
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createProperty_0());
editorCell.addEditorCell(createConstant_2());
editorCell.addEditorCell(createAlternation_1());
return editorCell;
}
private EditorCell createAlternation_0() {
boolean alternationCondition = true;
alternationCondition = nodeCondition_a1nfgp_a0a();
EditorCell editorCell = null;
if (alternationCondition) {
editorCell = createConstant_0();
} else {
editorCell = createConstant_1();
}
return editorCell;
}
private boolean nodeCondition_a1nfgp_a0a() {
return SPropertyOperations.getBoolean(myNode, PROPS.strong$_PED);
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "strong");
editorCell.setCellId("Constant_a1nfgp_a0a");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createConstant_1() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "weak");
editorCell.setCellId("Constant_a1nfgp_a0a_0");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
new TypeNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createConstant_2() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "from");
editorCell.setCellId("Constant_a1nfgp_d0");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createAlternation_1() {
boolean alternationCondition = true;
alternationCondition = nodeCondition_a1nfgp_a4a();
EditorCell editorCell = null;
if (alternationCondition) {
editorCell = createCollection_1();
} else {
editorCell = createRefCell_0();
}
return editorCell;
}
private boolean nodeCondition_a1nfgp_a4a() {
return SPropertyOperations.getBoolean(myNode, PROPS.is_c_type$8cPw);
}
private EditorCell createCollection_1() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_a1nfgp_a4a");
Style style = new StyleImpl();
style.set(StyleAttributes.SELECTABLE, false);
editorCell.getStyle().putAll(style);
editorCell.addEditorCell(createConstant_3());
editorCell.addEditorCell(createProperty_1());
return editorCell;
}
private EditorCell createConstant_3() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "ctype");
editorCell.setCellId("Constant_a1nfgp_a0e0");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createProperty_1() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.c_type$EO9Y;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, true), myNode);
editorCell.setDefaultText("<no c_type>");
editorCell.setCellId("property_c_type");
Style style = new StyleImpl();
new ctypeStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createRefCell_0() {
final SReferenceLink referenceLink = LINKS.parent$_PFB;
SReferenceCellProvider provider = new SReferenceCellProvider(getNode(), referenceLink, getEditorContext()) {
protected EditorCell createReferenceCell(final SNode targetNode) {
EditorCell cell = getUpdateSession().updateReferencedNodeCell(new Computable<EditorCell>() {
public EditorCell compute() {
return new Inline_Builder0(getEditorContext(), getNode(), targetNode).createCell();
}
}, targetNode, LINKS.parent$_PFB);
CellUtil.setupIDeprecatableStyles(targetNode, cell);
setSemanticNodeToCells(cell, getNode());
installDeleteActions_nullable_reference(cell);
return cell;
}
};
provider.setNoTargetText("<no parent>");
EditorCell editorCell = provider.createCell();
if (editorCell.getSRole() == null) {
editorCell.setReferenceCell(true);
editorCell.setSRole(LINKS.parent$_PFB);
}
editorCell.setSubstituteInfo(new SReferenceSubstituteInfo(editorCell, referenceLink));
Iterable<SNode> referenceAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.LinkAttribute$7j);
Iterable<SNode> currentReferenceAttributes = Sequence.fromIterable(referenceAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(LinkAttribute__BehaviorDescriptor.getLink_id1avfQ4BEFo6.invoke(it), referenceLink);
}
});
if (Sequence.fromIterable(currentReferenceAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentReferenceAttributes).first(), AttributeKind.REFERENCE, editorCell);
} else
return editorCell;
}
/*package*/ static class Inline_Builder0 extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
private SNode myReferencingNode;
/*package*/ Inline_Builder0(@NotNull EditorContext context, SNode referencingNode, @NotNull SNode node) {
super(context);
myReferencingNode = referencingNode;
myNode = node;
}
/*package*/ EditorCell createCell() {
return createProperty_2();
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
private EditorCell createProperty_2() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, true, true), myNode);
editorCell.setDefaultText("unit");
editorCell.setCellId("property_name1");
Style style = new StyleImpl();
new TypeNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
}
private static final class PROPS {
/*package*/ static final SProperty strong$_PED = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x3a6fd2de0c335c36L, "strong");
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
/*package*/ static final SProperty is_c_type$8cPw = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x26ea02d22ade0a1eL, "is_c_type");
/*package*/ static final SProperty c_type$EO9Y = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x26ea02d22addb9f2L, "c_type");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
/*package*/ static final SConcept LinkAttribute$7j = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da51L, "jetbrains.mps.lang.core.structure.LinkAttribute");
}
private static final class LINKS {
/*package*/ static final SReferenceLink parent$_PFB = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x3a6fd2de0c335c38L, "parent");
}
}

View File

@@ -0,0 +1,39 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.editor.runtime.style.AbstractStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.openapi.editor.style.StyleRegistry;
import jetbrains.mps.nodeEditor.MPSColors;
import jetbrains.mps.nodeEditor.MPSFonts;
public class Type_StyleSheet {
/**
*
* @deprecated Since MPS 3.5 use generated StyleClass
*/
@Deprecated
public static void apply_TypeName(Style style, EditorCell editorCell) {
SNode node = (editorCell == null ? null : editorCell.getSNode());
EditorContext editorContext = (editorCell == null ? null : editorCell.getContext());
new TypeNameStyleClass(editorContext, node).apply(style, editorCell);
}
public static class TypeNameStyleClass extends AbstractStyleClass {
public TypeNameStyleClass(EditorContext editorContext, SNode node) {
super(editorContext, node);
}
@Override
public void apply(Style style, EditorCell editorCell) {
style.set(StyleAttributes.TEXT_COLOR, StyleRegistry.getInstance().getSimpleColor(MPSColors.cyan));
style.set(StyleAttributes.FONT_STYLE, MPSFonts.BOLD);
}
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class VariableAccess_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new VariableAccess_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,177 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import org.jetbrains.mps.openapi.language.SReferenceLink;
import jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider;
import jetbrains.mps.util.Computable;
import jetbrains.mps.editor.runtime.impl.CellUtil;
import jetbrains.mps.nodeEditor.cells.EditorCell_Error;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.nodeEditor.cellActions.CellAction_DeleteNode;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfoSmartReferenceDecorator;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import dynamicc.editor.Variable_StyleSheet.VariableNameStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class VariableAccess_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public VariableAccess_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_o6rpi_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createRefCell_0());
return editorCell;
}
private EditorCell createRefCell_0() {
final SReferenceLink referenceLink = LINKS.variable$5yW0;
SReferenceCellProvider provider = new SReferenceCellProvider(getNode(), referenceLink, getEditorContext()) {
protected EditorCell createReferenceCell(final SNode targetNode) {
EditorCell cell = getUpdateSession().updateReferencedNodeCell(new Computable<EditorCell>() {
public EditorCell compute() {
return new Inline_Builder0(getEditorContext(), getNode(), targetNode).createCell();
}
}, targetNode, LINKS.variable$5yW0);
CellUtil.setupIDeprecatableStyles(targetNode, cell);
setSemanticNodeToCells(cell, getNode());
installDeleteActions_notnull_smartReference(cell);
return cell;
}
@Override
protected EditorCell createErrorCell(String error) {
EditorCell_Error cell = new EditorCell_Error(getEditorContext(), getNode(), error, true);
cell.setAction(CellActionType.DELETE, new CellAction_DeleteNode(getNode(), CellAction_DeleteNode.DeleteDirection.FORWARD));
cell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteNode(getNode(), CellAction_DeleteNode.DeleteDirection.BACKWARD));
return cell;
}
};
provider.setNoTargetText("<no variable>");
EditorCell editorCell = provider.createCell();
if (editorCell.getSRole() == null) {
editorCell.setReferenceCell(true);
editorCell.setSRole(LINKS.variable$5yW0);
}
editorCell.setSubstituteInfo(new SReferenceSubstituteInfoSmartReferenceDecorator(new SReferenceSubstituteInfo(editorCell, referenceLink)));
Iterable<SNode> referenceAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.LinkAttribute$7j);
Iterable<SNode> currentReferenceAttributes = Sequence.fromIterable(referenceAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(LinkAttribute__BehaviorDescriptor.getLink_id1avfQ4BEFo6.invoke(it), referenceLink);
}
});
if (Sequence.fromIterable(currentReferenceAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentReferenceAttributes).first(), AttributeKind.REFERENCE, editorCell);
} else
return editorCell;
}
/*package*/ static class Inline_Builder0 extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
private SNode myReferencingNode;
/*package*/ Inline_Builder0(@NotNull EditorContext context, SNode referencingNode, @NotNull SNode node) {
super(context);
myReferencingNode = referencingNode;
myNode = node;
}
/*package*/ EditorCell createCell() {
return createProperty_0();
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, true, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
new VariableNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.AUTO_DELETABLE, true);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
}
private static final class LINKS {
/*package*/ static final SReferenceLink variable$5yW0 = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L, 0x26ea02d22aef02d5L, "variable");
}
private static final class CONCEPTS {
/*package*/ static final SConcept LinkAttribute$7j = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da51L, "jetbrains.mps.lang.core.structure.LinkAttribute");
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
}
private static final class PROPS {
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
}
}

View File

@@ -0,0 +1,97 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.menus.substitute.SubstituteMenuBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
import jetbrains.mps.lang.editor.menus.MenuPart;
import jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuItem;
import jetbrains.mps.openapi.editor.menus.substitute.SubstituteMenuContext;
import java.util.ArrayList;
import jetbrains.mps.lang.editor.menus.substitute.ConstraintsFilteringSubstituteMenuPartDecorator;
import jetbrains.mps.lang.editor.menus.EditorMenuDescriptorBase;
import jetbrains.mps.smodel.SNodePointer;
import jetbrains.mps.lang.editor.menus.substitute.ReferenceScopeSubstituteMenuPart;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.lang.editor.menus.ConceptMenusPart;
import java.util.Collection;
import jetbrains.mps.smodel.ConceptDescendantsCache;
import jetbrains.mps.lang.editor.menus.substitute.DefaultSubstituteMenuLookup;
import jetbrains.mps.smodel.language.LanguageRegistry;
import org.jetbrains.mps.openapi.language.SConcept;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SReferenceLink;
public class VariableAccess_SubstituteMenu extends SubstituteMenuBase {
@NotNull
@Override
protected List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> getParts(final SubstituteMenuContext _context) {
List<MenuPart<SubstituteMenuItem, SubstituteMenuContext>> result = new ArrayList<MenuPart<SubstituteMenuItem, SubstituteMenuContext>>();
result.add(new ConstraintsFilteringSubstituteMenuPartDecorator(new SMP_ReferenceScope_pws7q4_a(), CONCEPTS.VariableAccess$Q8));
result.add(new SMP_Subconcepts_pws7q4_b());
return result;
}
@NotNull
@Override
public List<SubstituteMenuItem> createMenuItems(@NotNull SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("default substitute menu for VariableAccess. Generated from implicit smart reference attribute.", new SNodePointer("r:0137df68-fadf-4334-b96f-dbc443ca6ded(dynamicc.structure)", "2804056819678249684")));
try {
return super.createMenuItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
public class SMP_ReferenceScope_pws7q4_a extends ReferenceScopeSubstituteMenuPart {
public SMP_ReferenceScope_pws7q4_a() {
// that cast is needed for prevent the users from https://youtrack.jetbrains.com/issue/MPS-29051
super((SAbstractConcept) CONCEPTS.VariableAccess$Q8, LINKS.variable$5yW0);
}
@NotNull
@Override
public List<SubstituteMenuItem> createItems(SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("reference scope substitute menu part", null));
try {
return super.createItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
}
public class SMP_Subconcepts_pws7q4_b extends ConceptMenusPart<SubstituteMenuItem, SubstituteMenuContext> {
protected Collection getConcepts(final SubstituteMenuContext _context) {
return ConceptDescendantsCache.getInstance().getDirectDescendants(CONCEPTS.VariableAccess$Q8);
}
@NotNull
@Override
public List<SubstituteMenuItem> createItems(SubstituteMenuContext context) {
context.getEditorMenuTrace().pushTraceInfo();
context.getEditorMenuTrace().setDescriptor(new EditorMenuDescriptorBase("include menus for all the direct subconcepts of " + "VariableAccess", null));
try {
return super.createItems(context);
} finally {
context.getEditorMenuTrace().popTraceInfo();
}
}
@Override
protected Collection<SubstituteMenuItem> createItemsForConcept(SubstituteMenuContext context, SAbstractConcept concept) {
return context.createItems(new DefaultSubstituteMenuLookup(LanguageRegistry.getInstance(context.getEditorContext().getRepository()), concept));
}
}
private static final class CONCEPTS {
/*package*/ static final SConcept VariableAccess$Q8 = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L, "dynamicc.structure.VariableAccess");
}
private static final class LINKS {
/*package*/ static final SReferenceLink variable$5yW0 = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L, 0x26ea02d22aef02d5L, "variable");
}
}

View File

@@ -0,0 +1,14 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.nodeEditor.DefaultNodeEditor;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.openapi.editor.EditorContext;
import org.jetbrains.mps.openapi.model.SNode;
public class Variable_Editor extends DefaultNodeEditor {
public EditorCell createEditorCell(EditorContext editorContext, SNode node) {
return new Variable_EditorBuilder_a(editorContext, node).createCell();
}
}

View File

@@ -0,0 +1,322 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.editor.runtime.descriptor.AbstractEditorBuilder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import jetbrains.mps.nodeEditor.cells.EditorCell_Collection;
import jetbrains.mps.nodeEditor.cellLayout.CellLayout_Indent;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.editor.runtime.style.StyleImpl;
import jetbrains.mps.baseLanguage.editor.BaseLanguageStyle_StyleSheet.KeyWordStyleClass;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.openapi.editor.menus.transformation.SPropertyInfo;
import jetbrains.mps.nodeEditor.cells.EditorCell_Property;
import jetbrains.mps.nodeEditor.cells.SPropertyAccessor;
import dynamicc.editor.Variable_StyleSheet.VariableNameStyleClass;
import jetbrains.mps.nodeEditor.cellMenu.SPropertySubstituteInfo;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.AttributeOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.IAttributeDescriptor;
import jetbrains.mps.internal.collections.runtime.Sequence;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import java.util.Objects;
import jetbrains.mps.lang.core.behavior.PropertyAttribute__BehaviorDescriptor;
import jetbrains.mps.nodeEditor.EditorManager;
import jetbrains.mps.openapi.editor.update.AttributeKind;
import jetbrains.mps.nodeEditor.cells.EditorCell_Constant;
import dynamicc.editor.Common_StyleSheet.TextStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import org.jetbrains.mps.openapi.language.SReferenceLink;
import jetbrains.mps.lang.editor.cellProviders.SReferenceCellProvider;
import jetbrains.mps.util.Computable;
import jetbrains.mps.editor.runtime.impl.CellUtil;
import jetbrains.mps.nodeEditor.cellMenu.SReferenceSubstituteInfo;
import jetbrains.mps.lang.core.behavior.LinkAttribute__BehaviorDescriptor;
import dynamicc.editor.Type_StyleSheet.TypeNameStyleClass;
import jetbrains.mps.lang.editor.cellProviders.SingleRoleCellProvider;
import org.jetbrains.mps.openapi.language.SContainmentLink;
import jetbrains.mps.openapi.editor.cells.CellActionType;
import jetbrains.mps.editor.runtime.impl.cellActions.CellAction_DeleteSmart;
import jetbrains.mps.openapi.editor.cells.DefaultSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SEmptyContainmentSubstituteInfo;
import jetbrains.mps.nodeEditor.cellMenu.SChildSubstituteInfo;
import jetbrains.mps.openapi.editor.menus.transformation.SNodeLocation;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import org.jetbrains.mps.openapi.language.SConcept;
/*package*/ class Variable_EditorBuilder_a extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
public Variable_EditorBuilder_a(@NotNull EditorContext context, @NotNull SNode node) {
super(context);
myNode = node;
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
/*package*/ EditorCell createCell() {
return createCollection_0();
}
private EditorCell createCollection_0() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_pfjbyg_a");
editorCell.setBig(true);
setCellContext(editorCell);
editorCell.addEditorCell(createComponent_0());
editorCell.addEditorCell(createProperty_0());
editorCell.addEditorCell(createConstant_0());
editorCell.addEditorCell(createRefCell_0());
if (nodeCondition_pfjbyg_a4a()) {
editorCell.addEditorCell(createConstant_1());
}
if (nodeCondition_pfjbyg_a5a()) {
editorCell.addEditorCell(createCollection_1());
}
return editorCell;
}
private boolean nodeCondition_pfjbyg_a4a() {
return SPropertyOperations.getBoolean(myNode, PROPS.optional$_PtY);
}
private boolean nodeCondition_pfjbyg_a5a() {
return SPropertyOperations.getBoolean(myNode, PROPS.showAssignment$Lo_7);
}
private EditorCell createComponent_0() {
EditorCell editorCell = getCellFactory().createEditorComponentCell(myNode, "jetbrains.mps.lang.core.editor.alias");
Style style = new StyleImpl();
new KeyWordStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
return editorCell;
}
private EditorCell createProperty_0() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, false, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name");
Style style = new StyleImpl();
new VariableNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
private EditorCell createConstant_0() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, ":");
editorCell.setCellId("Constant_pfjbyg_c0");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefCell_0() {
final SReferenceLink referenceLink = LINKS.type$YYfM;
SReferenceCellProvider provider = new SReferenceCellProvider(getNode(), referenceLink, getEditorContext()) {
protected EditorCell createReferenceCell(final SNode targetNode) {
EditorCell cell = getUpdateSession().updateReferencedNodeCell(new Computable<EditorCell>() {
public EditorCell compute() {
return new Inline_Builder0(getEditorContext(), getNode(), targetNode).createCell();
}
}, targetNode, LINKS.type$YYfM);
CellUtil.setupIDeprecatableStyles(targetNode, cell);
setSemanticNodeToCells(cell, getNode());
installDeleteActions_notnull(cell);
return cell;
}
};
provider.setNoTargetText("<no type>");
EditorCell editorCell = provider.createCell();
if (editorCell.getSRole() == null) {
editorCell.setReferenceCell(true);
editorCell.setSRole(LINKS.type$YYfM);
}
editorCell.setSubstituteInfo(new SReferenceSubstituteInfo(editorCell, referenceLink));
Iterable<SNode> referenceAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.LinkAttribute$7j);
Iterable<SNode> currentReferenceAttributes = Sequence.fromIterable(referenceAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(LinkAttribute__BehaviorDescriptor.getLink_id1avfQ4BEFo6.invoke(it), referenceLink);
}
});
if (Sequence.fromIterable(currentReferenceAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentReferenceAttributes).first(), AttributeKind.REFERENCE, editorCell);
} else
return editorCell;
}
/*package*/ static class Inline_Builder0 extends AbstractEditorBuilder {
@NotNull
private SNode myNode;
private SNode myReferencingNode;
/*package*/ Inline_Builder0(@NotNull EditorContext context, SNode referencingNode, @NotNull SNode node) {
super(context);
myReferencingNode = referencingNode;
myNode = node;
}
/*package*/ EditorCell createCell() {
return createProperty_1();
}
@NotNull
@Override
public SNode getNode() {
return myNode;
}
private EditorCell createProperty_1() {
getCellFactory().pushCellContext();
try {
final SProperty property = PROPS.name$tAp1;
getCellFactory().setPropertyInfo(new SPropertyInfo(myNode, property));
EditorCell_Property editorCell = EditorCell_Property.create(getEditorContext(), new SPropertyAccessor(myNode, property, true, false), myNode);
editorCell.setDefaultText("<no name>");
editorCell.setCellId("property_name1");
Style style = new StyleImpl();
new TypeNameStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
editorCell.getStyle().putAll(style);
editorCell.setSubstituteInfo(new SPropertySubstituteInfo(editorCell, property));
setCellContext(editorCell);
Iterable<SNode> propertyAttributes = SNodeOperations.ofConcept(AttributeOperations.getAttributeList(myNode, new IAttributeDescriptor.AllAttributes()), CONCEPTS.PropertyAttribute$jT);
Iterable<SNode> currentPropertyAttributes = Sequence.fromIterable(propertyAttributes).where(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return Objects.equals(PropertyAttribute__BehaviorDescriptor.getProperty_id1avfQ4BBzOo.invoke(it), property);
}
});
if (Sequence.fromIterable(currentPropertyAttributes).isNotEmpty()) {
EditorManager manager = EditorManager.getInstanceFromContext(getEditorContext());
return manager.createNodeRoleAttributeCell(Sequence.fromIterable(currentPropertyAttributes).first(), AttributeKind.PROPERTY, editorCell);
} else
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
}
private EditorCell createConstant_1() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "?");
editorCell.setCellId("Constant_pfjbyg_e0");
Style style = new StyleImpl();
new TextStyleClass(getEditorContext(), getNode()).apply(style, editorCell);
style.set(StyleAttributes.PUNCTUATION_LEFT, true);
editorCell.getStyle().putAll(style);
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createCollection_1() {
EditorCell_Collection editorCell = new EditorCell_Collection(getEditorContext(), myNode, new CellLayout_Indent());
editorCell.setCellId("Collection_pfjbyg_f0");
Style style = new StyleImpl();
style.set(StyleAttributes.SELECTABLE, false);
editorCell.getStyle().putAll(style);
editorCell.addEditorCell(createConstant_2());
editorCell.addEditorCell(createRefNode_0());
return editorCell;
}
private EditorCell createConstant_2() {
EditorCell_Constant editorCell = new EditorCell_Constant(getEditorContext(), myNode, "=");
editorCell.setCellId("Constant_pfjbyg_a5a");
editorCell.setDefaultText("");
return editorCell;
}
private EditorCell createRefNode_0() {
SingleRoleCellProvider provider = new assignmentSingleRoleHandler_pfjbyg_b5a(myNode, LINKS.assignment$vZlr, getEditorContext());
return provider.createCell();
}
private static class assignmentSingleRoleHandler_pfjbyg_b5a extends SingleRoleCellProvider {
@NotNull
private SNode myNode;
public assignmentSingleRoleHandler_pfjbyg_b5a(SNode ownerNode, SContainmentLink containmentLink, EditorContext context) {
super(containmentLink, context);
myNode = ownerNode;
}
@Override
@NotNull
public SNode getNode() {
return myNode;
}
protected EditorCell createChildCell(SNode child) {
EditorCell editorCell = getUpdateSession().updateChildNodeCell(child);
editorCell.setAction(CellActionType.DELETE, new CellAction_DeleteSmart(getNode(), LINKS.assignment$vZlr, child));
editorCell.setAction(CellActionType.BACKSPACE, new CellAction_DeleteSmart(getNode(), LINKS.assignment$vZlr, child));
installCellInfo(child, editorCell, false);
return editorCell;
}
private void installCellInfo(SNode child, EditorCell editorCell, boolean isEmpty) {
if (editorCell.getSubstituteInfo() == null || editorCell.getSubstituteInfo() instanceof DefaultSubstituteInfo) {
editorCell.setSubstituteInfo((isEmpty ? new SEmptyContainmentSubstituteInfo(editorCell) : new SChildSubstituteInfo(editorCell)));
}
if (editorCell.getSRole() == null) {
editorCell.setSRole(LINKS.assignment$vZlr);
}
}
@Override
protected EditorCell createEmptyCell() {
getCellFactory().pushCellContext();
getCellFactory().setNodeLocation(new SNodeLocation.FromParentAndLink(getNode(), LINKS.assignment$vZlr));
try {
EditorCell editorCell = super.createEmptyCell();
editorCell.setCellId("empty_assignment");
installCellInfo(null, editorCell, true);
setCellContext(editorCell);
return editorCell;
} finally {
getCellFactory().popCellContext();
}
}
protected String getNoTargetText() {
return "<no assignment>";
}
}
private static final class PROPS {
/*package*/ static final SProperty optional$_PtY = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x3a6fd2de0c335c31L, "optional");
/*package*/ static final SProperty showAssignment$Lo_7 = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x26ea02d22aede35aL, "showAssignment");
/*package*/ static final SProperty name$tAp1 = MetaAdapterFactory.getProperty(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, 0x110396ec041L, "name");
}
private static final class CONCEPTS {
/*package*/ static final SConcept PropertyAttribute$jT = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da56L, "jetbrains.mps.lang.core.structure.PropertyAttribute");
/*package*/ static final SConcept LinkAttribute$7j = MetaAdapterFactory.getConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x2eb1ad060897da51L, "jetbrains.mps.lang.core.structure.LinkAttribute");
}
private static final class LINKS {
/*package*/ static final SReferenceLink type$YYfM = MetaAdapterFactory.getReferenceLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x3a6fd2de0c345a7cL, "type");
/*package*/ static final SContainmentLink assignment$vZlr = MetaAdapterFactory.getContainmentLink(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x26ea02d22aedd089L, "assignment");
}
}

View File

@@ -0,0 +1,53 @@
package dynamicc.editor;
/*Generated by MPS */
import jetbrains.mps.openapi.editor.style.Style;
import jetbrains.mps.openapi.editor.cells.EditorCell;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.editor.runtime.style.AbstractStyleClass;
import jetbrains.mps.editor.runtime.style.StyleAttributes;
import jetbrains.mps.openapi.editor.style.StyleRegistry;
import jetbrains.mps.nodeEditor.MPSColors;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SConceptOperations;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SNodeOperations;
import org.jetbrains.mps.openapi.language.SConcept;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public class Variable_StyleSheet {
/**
*
* @deprecated Since MPS 3.5 use generated StyleClass
*/
@Deprecated
public static void apply_VariableName(Style style, EditorCell editorCell) {
SNode node = (editorCell == null ? null : editorCell.getSNode());
EditorContext editorContext = (editorCell == null ? null : editorCell.getContext());
new VariableNameStyleClass(editorContext, node).apply(style, editorCell);
}
public static class VariableNameStyleClass extends AbstractStyleClass {
public VariableNameStyleClass(EditorContext editorContext, SNode node) {
super(editorContext, node);
}
@Override
public void apply(Style style, EditorCell editorCell) {
style.set(StyleAttributes.TEXT_COLOR, StyleRegistry.getInstance().getSimpleColor(MPSColors.magenta));
style.set(StyleAttributes.UNDERLINED, _StyleParameter_QueryFunction_pptb9q_a1a());
}
private boolean _StyleParameter_QueryFunction_pptb9q_a1a() {
if (SConceptOperations.isExactly(SNodeOperations.asSConcept(SNodeOperations.getConcept(getNode())), CONCEPTS.ValVariable$HQ)) {
return false;
}
return true;
}
}
private static final class CONCEPTS {
/*package*/ static final SConcept ValVariable$HQ = MetaAdapterFactory.getConcept(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c36cfdaL, "dynamicc.structure.ValVariable");
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class AddAssignment_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public AddAssignment_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "2804056819678177847"));
}
@Override
public String getPresentation() {
return "AddAssignment";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return !(SPropertyOperations.getBoolean(node, PROPS.showAssignment$Lo_7));
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Add Assignment";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.showAssignment$Lo_7, true);
}
@Override
public IntentionDescriptor getDescriptor() {
return AddAssignment_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty showAssignment$Lo_7 = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x26ea02d22aede35aL, "showAssignment");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class AddReturnType_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public AddReturnType_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "2804056819677597846"));
}
@Override
public String getPresentation() {
return "AddReturnType";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return !(SPropertyOperations.getBoolean(node, PROPS.hasReturnType$GLJn));
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Add Return Type";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.hasReturnType$GLJn, true);
}
@Override
public IntentionDescriptor getDescriptor() {
return AddReturnType_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty hasReturnType$GLJn = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL, 0x26ea02d22ae5074dL, "hasReturnType");
}
}

View File

@@ -0,0 +1,85 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionAspectDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Map;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import java.util.HashMap;
import org.jetbrains.annotations.Nullable;
import java.util.Collection;
import org.jetbrains.annotations.NotNull;
import java.util.Arrays;
import jetbrains.mps.lang.smodel.ConceptSwitchIndex;
import jetbrains.mps.lang.smodel.ConceptSwitchIndexBuilder;
import jetbrains.mps.smodel.adapter.ids.MetaIdFactory;
public final class IntentionsDescriptor extends AbstractIntentionAspectDescriptor {
private static final IntentionFactory[] EMPTY_ARRAY = new IntentionFactory[0];
private Map<SAbstractConcept, IntentionFactory[]> myCached = new HashMap<SAbstractConcept, IntentionFactory[]>();
public IntentionsDescriptor() {
}
@Nullable
public Collection<IntentionFactory> getIntentions(@NotNull SAbstractConcept concept) {
if (myCached.containsKey(concept)) {
return Arrays.asList(myCached.get(concept));
}
IntentionFactory[] intentions = EMPTY_ARRAY;
SAbstractConcept cncpt = concept;
switch (conceptIndex.index(cncpt)) {
case 0:
if (true) {
// concept
intentions = new IntentionFactory[2];
intentions[0] = new AddReturnType_Intention();
intentions[1] = new RemoveReturnType_Intention();
}
break;
case 1:
if (true) {
// concept
intentions = new IntentionFactory[4];
intentions[0] = new MakeStrong_Intention();
intentions[1] = new MakeWeak_Intention();
intentions[2] = new UseTypeFromC_Intention();
intentions[3] = new NotUseTypeFromC_Intention();
}
break;
case 2:
if (true) {
// concept
intentions = new IntentionFactory[4];
intentions[0] = new MakeNullable_Intention();
intentions[1] = new MakeNonNullable_Intention();
intentions[2] = new AddAssignment_Intention();
intentions[3] = new RemoveAssignment_Intention();
}
break;
default:
}
myCached.put(concept, intentions);
return Arrays.asList(intentions);
}
@NotNull
@Override
public Collection<IntentionFactory> getAllIntentions() {
IntentionFactory[] rv = new IntentionFactory[10];
rv[0] = new MakeStrong_Intention();
rv[1] = new MakeWeak_Intention();
rv[2] = new MakeNullable_Intention();
rv[3] = new MakeNonNullable_Intention();
rv[4] = new UseTypeFromC_Intention();
rv[5] = new NotUseTypeFromC_Intention();
rv[6] = new AddReturnType_Intention();
rv[7] = new RemoveReturnType_Intention();
rv[8] = new AddAssignment_Intention();
rv[9] = new RemoveAssignment_Intention();
return Arrays.asList(rv);
}
private static final ConceptSwitchIndex conceptIndex = new ConceptSwitchIndexBuilder().put(MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L), MetaIdFactory.conceptId(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL)).seal();
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class MakeNonNullable_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public MakeNonNullable_Intention() {
super(Kind.NORMAL, true, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "4210816027744130391"));
}
@Override
public String getPresentation() {
return "MakeNonNullable";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.optional$_PtY) == true;
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Make Non-Nullable";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.optional$_PtY, false);
}
@Override
public IntentionDescriptor getDescriptor() {
return MakeNonNullable_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty optional$_PtY = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x3a6fd2de0c335c31L, "optional");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class MakeNullable_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public MakeNullable_Intention() {
super(Kind.NORMAL, true, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "4210816027744121724"));
}
@Override
public String getPresentation() {
return "MakeNullable";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.optional$_PtY) == false;
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Make Nullable";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.optional$_PtY, true);
}
@Override
public IntentionDescriptor getDescriptor() {
return MakeNullable_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty optional$_PtY = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x3a6fd2de0c335c31L, "optional");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class MakeStrong_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public MakeStrong_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "4210816027743971744"));
}
@Override
public String getPresentation() {
return "MakeStrong";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.strong$_PED) == false;
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Make Strong";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.strong$_PED, true);
}
@Override
public IntentionDescriptor getDescriptor() {
return MakeStrong_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty strong$_PED = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x3a6fd2de0c335c36L, "strong");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class MakeWeak_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public MakeWeak_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "4210816027743977227"));
}
@Override
public String getPresentation() {
return "MakeWeak";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.strong$_PED) == true;
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Make Weak";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.strong$_PED, false);
}
@Override
public IntentionDescriptor getDescriptor() {
return MakeWeak_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty strong$_PED = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x3a6fd2de0c335c36L, "strong");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class NotUseTypeFromC_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public NotUseTypeFromC_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "2804056819677428735"));
}
@Override
public String getPresentation() {
return "NotUseTypeFromC";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.is_c_type$8cPw);
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Don't Use Type from C";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.is_c_type$8cPw, false);
}
@Override
public IntentionDescriptor getDescriptor() {
return NotUseTypeFromC_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty is_c_type$8cPw = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x26ea02d22ade0a1eL, "is_c_type");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class RemoveAssignment_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public RemoveAssignment_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "2804056819678183605"));
}
@Override
public String getPresentation() {
return "RemoveAssignment";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.showAssignment$Lo_7);
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Remove Assignment";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.showAssignment$Lo_7, false);
}
@Override
public IntentionDescriptor getDescriptor() {
return RemoveAssignment_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty showAssignment$Lo_7 = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c2eL, 0x26ea02d22aede35aL, "showAssignment");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class RemoveReturnType_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public RemoveReturnType_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "2804056819677603068"));
}
@Override
public String getPresentation() {
return "RemoveReturnType";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return SPropertyOperations.getBoolean(node, PROPS.hasReturnType$GLJn);
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Remove Return Type";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.hasReturnType$GLJn, false);
}
@Override
public IntentionDescriptor getDescriptor() {
return RemoveReturnType_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty hasReturnType$GLJn = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22ae503deL, 0x26ea02d22ae5074dL, "hasReturnType");
}
}

View File

@@ -0,0 +1,69 @@
package dynamicc.intentions;
/*Generated by MPS */
import jetbrains.mps.intentions.AbstractIntentionDescriptor;
import jetbrains.mps.openapi.intentions.IntentionFactory;
import java.util.Collection;
import jetbrains.mps.openapi.intentions.IntentionExecutable;
import jetbrains.mps.openapi.intentions.Kind;
import jetbrains.mps.smodel.SNodePointer;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.openapi.editor.EditorContext;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SPropertyOperations;
import java.util.Collections;
import jetbrains.mps.intentions.AbstractIntentionExecutable;
import jetbrains.mps.openapi.intentions.IntentionDescriptor;
import org.jetbrains.mps.openapi.language.SProperty;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public final class UseTypeFromC_Intention extends AbstractIntentionDescriptor implements IntentionFactory {
private Collection<IntentionExecutable> myCachedExecutable;
public UseTypeFromC_Intention() {
super(Kind.NORMAL, false, new SNodePointer("r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)", "2804056819677422329"));
}
@Override
public String getPresentation() {
return "UseTypeFromC";
}
@Override
public boolean isApplicable(final SNode node, final EditorContext editorContext) {
if (!(isApplicableToNode(node, editorContext))) {
return false;
}
return true;
}
private boolean isApplicableToNode(final SNode node, final EditorContext editorContext) {
return !(SPropertyOperations.getBoolean(node, PROPS.is_c_type$8cPw));
}
@Override
public boolean isSurroundWith() {
return false;
}
public Collection<IntentionExecutable> instances(final SNode node, final EditorContext context) {
if (myCachedExecutable == null) {
myCachedExecutable = Collections.<IntentionExecutable>singletonList(new IntentionImplementation());
}
return myCachedExecutable;
}
/*package*/ final class IntentionImplementation extends AbstractIntentionExecutable {
public IntentionImplementation() {
}
@Override
public String getDescription(final SNode node, final EditorContext editorContext) {
return "Use Type from C";
}
@Override
public void execute(final SNode node, final EditorContext editorContext) {
SPropertyOperations.assign(node, PROPS.is_c_type$8cPw, true);
}
@Override
public IntentionDescriptor getDescriptor() {
return UseTypeFromC_Intention.this;
}
}
private static final class PROPS {
/*package*/ static final SProperty is_c_type$8cPw = MetaAdapterFactory.getProperty(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x3a6fd2de0c335c33L, 0x26ea02d22ade0a1eL, "is_c_type");
}
}

View File

@@ -0,0 +1,747 @@
<?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/1068390468200:jetbrains.mps.baseLanguage.structure.FieldDeclaration" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068580123159:jetbrains.mps.baseLanguage.structure.IfStatement" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068580123165:jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1068581242878:jetbrains.mps.baseLanguage.structure.ReturnStatement" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1070462154015:jetbrains.mps.baseLanguage.structure.StaticFieldDeclaration" />
<concept fqn="c:f3061a53-9226-4cc5-a443-f952ceaf5816/1070475587102:jetbrains.mps.baseLanguage.structure.SuperConstructorInvocation" />
<root>
<file name="IntentionsDescriptor.java">
<unit at="18,0,86,0" name="dynamicc.intentions.IntentionsDescriptor" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/2804056819677422329">
<file name="IntentionsDescriptor.java">
<node id="2804056819677422329" at="47,51,48,55" concept="1" />
<node id="2804056819677422329" at="75,44,76,41" concept="1" />
</file>
<file name="UseTypeFromC_Intention.java">
<node id="2804056819677422329" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="2804056819677422329" at="22,35,23,134" concept="7" />
<node id="2804056819677422329" at="26,35,27,26" concept="5" />
<node id="2804056819677422329" at="31,53,32,19" concept="5" />
<node id="2804056819677422329" at="33,5,34,16" concept="5" />
<node id="2804056819677423319" at="36,91,37,73" concept="5" />
<node id="2804056819677422329" at="40,35,41,17" concept="5" />
<node id="2804056819677422329" at="44,37,45,105" concept="1" />
<node id="2804056819677422329" at="46,5,47,30" concept="5" />
<node id="2804056819677422657" at="53,87,54,31" concept="5" />
<node id="2804056819677426048" at="57,78,58,67" concept="1" />
<node id="2804056819677422329" at="61,48,62,41" concept="5" />
<node id="2804056819677422329" at="67,0,68,0" concept="6" trace="is_c_type$8cPw" />
<node id="2804056819677422329" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="2804056819677422329" at="22,0,25,0" concept="0" trace="UseTypeFromC_Intention#()V" />
<node id="2804056819677422329" at="30,84,33,5" concept="3" />
<node id="2804056819677422329" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="2804056819677422329" at="43,99,46,5" concept="3" />
<node id="2804056819677422329" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="2804056819677422329" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="2804056819677422329" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="2804056819677422329" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="2804056819677422329" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="2804056819677422329" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="2804056819677422329" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="2804056819677422329" at="50,38,50,38" />
<scope id="2804056819677422329" at="22,35,23,134" />
<scope id="2804056819677422329" at="26,35,27,26" />
<scope id="2804056819677422329" at="31,53,32,19" />
<scope id="2804056819677423058" at="36,91,37,73" />
<scope id="2804056819677422329" at="40,35,41,17" />
<scope id="2804056819677422329" at="44,37,45,105" />
<scope id="2804056819677422331" at="53,87,54,31" />
<scope id="2804056819677422333" at="57,78,58,67" />
<scope id="2804056819677422329" at="61,48,62,41" />
<scope id="2804056819677422329" at="50,0,52,0" />
<scope id="2804056819677422329" at="22,0,25,0" />
<scope id="2804056819677422329" at="36,0,39,0">
<var name="editorContext" id="2804056819677422329" />
<var name="node" id="2804056819677422329" />
</scope>
<scope id="2804056819677422329" at="25,0,29,0" />
<scope id="2804056819677422329" at="30,84,34,16" />
<scope id="2804056819677422329" at="39,0,43,0" />
<scope id="2804056819677422329" at="43,99,47,30" />
<scope id="2804056819677422329" at="52,0,56,0">
<var name="editorContext" id="2804056819677422329" />
<var name="node" id="2804056819677422329" />
</scope>
<scope id="2804056819677422329" at="56,0,60,0">
<var name="editorContext" id="2804056819677422329" />
<var name="node" id="2804056819677422329" />
</scope>
<scope id="2804056819677422329" at="60,0,64,0" />
<scope id="2804056819677422329" at="43,0,49,0">
<var name="context" id="2804056819677422329" />
<var name="node" id="2804056819677422329" />
</scope>
<scope id="2804056819677422329" at="29,0,36,0">
<var name="editorContext" id="2804056819677422329" />
<var name="node" id="2804056819677422329" />
</scope>
<unit id="2804056819677422329" at="66,0,69,0" name="dynamicc.intentions.UseTypeFromC_Intention$PROPS" />
<unit id="2804056819677422329" at="49,0,65,0" name="dynamicc.intentions.UseTypeFromC_Intention$IntentionImplementation" />
<unit id="2804056819677422329" at="20,0,70,0" name="dynamicc.intentions.UseTypeFromC_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/2804056819677428735">
<file name="IntentionsDescriptor.java">
<node id="2804056819677428735" at="48,55,49,58" concept="1" />
<node id="2804056819677428735" at="76,41,77,44" concept="1" />
</file>
<file name="NotUseTypeFromC_Intention.java">
<node id="2804056819677428735" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="2804056819677428735" at="22,38,23,134" concept="7" />
<node id="2804056819677428735" at="26,35,27,29" concept="5" />
<node id="2804056819677428735" at="31,53,32,19" concept="5" />
<node id="2804056819677428735" at="33,5,34,16" concept="5" />
<node id="2804056819677429756" at="36,91,37,70" concept="5" />
<node id="2804056819677428735" at="40,35,41,17" concept="5" />
<node id="2804056819677428735" at="44,37,45,105" concept="1" />
<node id="2804056819677428735" at="46,5,47,30" concept="5" />
<node id="2804056819677429063" at="53,87,54,37" concept="5" />
<node id="2804056819677431177" at="57,78,58,68" concept="1" />
<node id="2804056819677428735" at="61,48,62,44" concept="5" />
<node id="2804056819677428735" at="67,0,68,0" concept="6" trace="is_c_type$8cPw" />
<node id="2804056819677428735" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="2804056819677428735" at="22,0,25,0" concept="0" trace="NotUseTypeFromC_Intention#()V" />
<node id="2804056819677428735" at="30,84,33,5" concept="3" />
<node id="2804056819677428735" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="2804056819677428735" at="43,99,46,5" concept="3" />
<node id="2804056819677428735" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="2804056819677428735" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="2804056819677428735" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="2804056819677428735" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="2804056819677428735" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="2804056819677428735" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="2804056819677428735" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="2804056819677428735" at="50,38,50,38" />
<scope id="2804056819677428735" at="22,38,23,134" />
<scope id="2804056819677428735" at="26,35,27,29" />
<scope id="2804056819677428735" at="31,53,32,19" />
<scope id="2804056819677429495" at="36,91,37,70" />
<scope id="2804056819677428735" at="40,35,41,17" />
<scope id="2804056819677428735" at="44,37,45,105" />
<scope id="2804056819677428737" at="53,87,54,37" />
<scope id="2804056819677428739" at="57,78,58,68" />
<scope id="2804056819677428735" at="61,48,62,44" />
<scope id="2804056819677428735" at="50,0,52,0" />
<scope id="2804056819677428735" at="22,0,25,0" />
<scope id="2804056819677428735" at="36,0,39,0">
<var name="editorContext" id="2804056819677428735" />
<var name="node" id="2804056819677428735" />
</scope>
<scope id="2804056819677428735" at="25,0,29,0" />
<scope id="2804056819677428735" at="30,84,34,16" />
<scope id="2804056819677428735" at="39,0,43,0" />
<scope id="2804056819677428735" at="43,99,47,30" />
<scope id="2804056819677428735" at="52,0,56,0">
<var name="editorContext" id="2804056819677428735" />
<var name="node" id="2804056819677428735" />
</scope>
<scope id="2804056819677428735" at="56,0,60,0">
<var name="editorContext" id="2804056819677428735" />
<var name="node" id="2804056819677428735" />
</scope>
<scope id="2804056819677428735" at="60,0,64,0" />
<scope id="2804056819677428735" at="43,0,49,0">
<var name="context" id="2804056819677428735" />
<var name="node" id="2804056819677428735" />
</scope>
<scope id="2804056819677428735" at="29,0,36,0">
<var name="editorContext" id="2804056819677428735" />
<var name="node" id="2804056819677428735" />
</scope>
<unit id="2804056819677428735" at="66,0,69,0" name="dynamicc.intentions.NotUseTypeFromC_Intention$PROPS" />
<unit id="2804056819677428735" at="49,0,65,0" name="dynamicc.intentions.NotUseTypeFromC_Intention$IntentionImplementation" />
<unit id="2804056819677428735" at="20,0,70,0" name="dynamicc.intentions.NotUseTypeFromC_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/2804056819677597846">
<file name="AddReturnType_Intention.java">
<node id="2804056819677597846" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="2804056819677597846" at="22,36,23,134" concept="7" />
<node id="2804056819677597846" at="26,35,27,27" concept="5" />
<node id="2804056819677597846" at="31,53,32,19" concept="5" />
<node id="2804056819677597846" at="33,5,34,16" concept="5" />
<node id="2804056819677598808" at="36,91,37,77" concept="5" />
<node id="2804056819677597846" at="40,35,41,17" concept="5" />
<node id="2804056819677597846" at="44,37,45,105" concept="1" />
<node id="2804056819677597846" at="46,5,47,30" concept="5" />
<node id="2804056819677598176" at="53,87,54,31" concept="5" />
<node id="2804056819677600871" at="57,78,58,71" concept="1" />
<node id="2804056819677597846" at="61,48,62,42" concept="5" />
<node id="2804056819677597846" at="67,0,68,0" concept="6" trace="hasReturnType$GLJn" />
<node id="2804056819677597846" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="2804056819677597846" at="22,0,25,0" concept="0" trace="AddReturnType_Intention#()V" />
<node id="2804056819677597846" at="30,84,33,5" concept="3" />
<node id="2804056819677597846" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="2804056819677597846" at="43,99,46,5" concept="3" />
<node id="2804056819677597846" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="2804056819677597846" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="2804056819677597846" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="2804056819677597846" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="2804056819677597846" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="2804056819677597846" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="2804056819677597846" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="2804056819677597846" at="50,38,50,38" />
<scope id="2804056819677597846" at="22,36,23,134" />
<scope id="2804056819677597846" at="26,35,27,27" />
<scope id="2804056819677597846" at="31,53,32,19" />
<scope id="2804056819677598546" at="36,91,37,77" />
<scope id="2804056819677597846" at="40,35,41,17" />
<scope id="2804056819677597846" at="44,37,45,105" />
<scope id="2804056819677597848" at="53,87,54,31" />
<scope id="2804056819677597850" at="57,78,58,71" />
<scope id="2804056819677597846" at="61,48,62,42" />
<scope id="2804056819677597846" at="50,0,52,0" />
<scope id="2804056819677597846" at="22,0,25,0" />
<scope id="2804056819677597846" at="36,0,39,0">
<var name="editorContext" id="2804056819677597846" />
<var name="node" id="2804056819677597846" />
</scope>
<scope id="2804056819677597846" at="25,0,29,0" />
<scope id="2804056819677597846" at="30,84,34,16" />
<scope id="2804056819677597846" at="39,0,43,0" />
<scope id="2804056819677597846" at="43,99,47,30" />
<scope id="2804056819677597846" at="52,0,56,0">
<var name="editorContext" id="2804056819677597846" />
<var name="node" id="2804056819677597846" />
</scope>
<scope id="2804056819677597846" at="56,0,60,0">
<var name="editorContext" id="2804056819677597846" />
<var name="node" id="2804056819677597846" />
</scope>
<scope id="2804056819677597846" at="60,0,64,0" />
<scope id="2804056819677597846" at="43,0,49,0">
<var name="context" id="2804056819677597846" />
<var name="node" id="2804056819677597846" />
</scope>
<scope id="2804056819677597846" at="29,0,36,0">
<var name="editorContext" id="2804056819677597846" />
<var name="node" id="2804056819677597846" />
</scope>
<unit id="2804056819677597846" at="66,0,69,0" name="dynamicc.intentions.AddReturnType_Intention$PROPS" />
<unit id="2804056819677597846" at="49,0,65,0" name="dynamicc.intentions.AddReturnType_Intention$IntentionImplementation" />
<unit id="2804056819677597846" at="20,0,70,0" name="dynamicc.intentions.AddReturnType_Intention" />
</file>
<file name="IntentionsDescriptor.java">
<node id="2804056819677597846" at="37,47,38,56" concept="1" />
<node id="2804056819677597846" at="77,44,78,42" concept="1" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/2804056819677603068">
<file name="IntentionsDescriptor.java">
<node id="2804056819677603068" at="38,56,39,59" concept="1" />
<node id="2804056819677603068" at="78,42,79,45" concept="1" />
</file>
<file name="RemoveReturnType_Intention.java">
<node id="2804056819677603068" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="2804056819677603068" at="22,39,23,134" concept="7" />
<node id="2804056819677603068" at="26,35,27,30" concept="5" />
<node id="2804056819677603068" at="31,53,32,19" concept="5" />
<node id="2804056819677603068" at="33,5,34,16" concept="5" />
<node id="2804056819677603820" at="36,91,37,74" concept="5" />
<node id="2804056819677603068" at="40,35,41,17" concept="5" />
<node id="2804056819677603068" at="44,37,45,105" concept="1" />
<node id="2804056819677603068" at="46,5,47,30" concept="5" />
<node id="2804056819677603396" at="53,87,54,34" concept="5" />
<node id="2804056819677605459" at="57,78,58,72" concept="1" />
<node id="2804056819677603068" at="61,48,62,45" concept="5" />
<node id="2804056819677603068" at="67,0,68,0" concept="6" trace="hasReturnType$GLJn" />
<node id="2804056819677603068" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="2804056819677603068" at="22,0,25,0" concept="0" trace="RemoveReturnType_Intention#()V" />
<node id="2804056819677603068" at="30,84,33,5" concept="3" />
<node id="2804056819677603068" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="2804056819677603068" at="43,99,46,5" concept="3" />
<node id="2804056819677603068" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="2804056819677603068" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="2804056819677603068" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="2804056819677603068" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="2804056819677603068" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="2804056819677603068" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="2804056819677603068" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="2804056819677603068" at="50,38,50,38" />
<scope id="2804056819677603068" at="22,39,23,134" />
<scope id="2804056819677603068" at="26,35,27,30" />
<scope id="2804056819677603068" at="31,53,32,19" />
<scope id="2804056819677603559" at="36,91,37,74" />
<scope id="2804056819677603068" at="40,35,41,17" />
<scope id="2804056819677603068" at="44,37,45,105" />
<scope id="2804056819677603070" at="53,87,54,34" />
<scope id="2804056819677603072" at="57,78,58,72" />
<scope id="2804056819677603068" at="61,48,62,45" />
<scope id="2804056819677603068" at="50,0,52,0" />
<scope id="2804056819677603068" at="22,0,25,0" />
<scope id="2804056819677603068" at="36,0,39,0">
<var name="editorContext" id="2804056819677603068" />
<var name="node" id="2804056819677603068" />
</scope>
<scope id="2804056819677603068" at="25,0,29,0" />
<scope id="2804056819677603068" at="30,84,34,16" />
<scope id="2804056819677603068" at="39,0,43,0" />
<scope id="2804056819677603068" at="43,99,47,30" />
<scope id="2804056819677603068" at="52,0,56,0">
<var name="editorContext" id="2804056819677603068" />
<var name="node" id="2804056819677603068" />
</scope>
<scope id="2804056819677603068" at="56,0,60,0">
<var name="editorContext" id="2804056819677603068" />
<var name="node" id="2804056819677603068" />
</scope>
<scope id="2804056819677603068" at="60,0,64,0" />
<scope id="2804056819677603068" at="43,0,49,0">
<var name="context" id="2804056819677603068" />
<var name="node" id="2804056819677603068" />
</scope>
<scope id="2804056819677603068" at="29,0,36,0">
<var name="editorContext" id="2804056819677603068" />
<var name="node" id="2804056819677603068" />
</scope>
<unit id="2804056819677603068" at="66,0,69,0" name="dynamicc.intentions.RemoveReturnType_Intention$PROPS" />
<unit id="2804056819677603068" at="49,0,65,0" name="dynamicc.intentions.RemoveReturnType_Intention$IntentionImplementation" />
<unit id="2804056819677603068" at="20,0,70,0" name="dynamicc.intentions.RemoveReturnType_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/2804056819678177847">
<file name="AddAssignment_Intention.java">
<node id="2804056819678177847" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="2804056819678177847" at="22,36,23,134" concept="7" />
<node id="2804056819678177847" at="26,35,27,27" concept="5" />
<node id="2804056819678177847" at="31,53,32,19" concept="5" />
<node id="2804056819678177847" at="33,5,34,16" concept="5" />
<node id="2804056819678178914" at="36,91,37,78" concept="5" />
<node id="2804056819678177847" at="40,35,41,17" concept="5" />
<node id="2804056819678177847" at="44,37,45,105" concept="1" />
<node id="2804056819678177847" at="46,5,47,30" concept="5" />
<node id="2804056819678178189" at="53,87,54,30" concept="5" />
<node id="2804056819678180977" at="57,78,58,72" concept="1" />
<node id="2804056819678177847" at="61,48,62,42" concept="5" />
<node id="2804056819678177847" at="67,0,68,0" concept="6" trace="showAssignment$Lo_7" />
<node id="2804056819678177847" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="2804056819678177847" at="22,0,25,0" concept="0" trace="AddAssignment_Intention#()V" />
<node id="2804056819678177847" at="30,84,33,5" concept="3" />
<node id="2804056819678177847" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="2804056819678177847" at="43,99,46,5" concept="3" />
<node id="2804056819678177847" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="2804056819678177847" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="2804056819678177847" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="2804056819678177847" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="2804056819678177847" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="2804056819678177847" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="2804056819678177847" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="2804056819678177847" at="50,38,50,38" />
<scope id="2804056819678177847" at="22,36,23,134" />
<scope id="2804056819678177847" at="26,35,27,27" />
<scope id="2804056819678177847" at="31,53,32,19" />
<scope id="2804056819678178652" at="36,91,37,78" />
<scope id="2804056819678177847" at="40,35,41,17" />
<scope id="2804056819678177847" at="44,37,45,105" />
<scope id="2804056819678177849" at="53,87,54,30" />
<scope id="2804056819678177851" at="57,78,58,72" />
<scope id="2804056819678177847" at="61,48,62,42" />
<scope id="2804056819678177847" at="50,0,52,0" />
<scope id="2804056819678177847" at="22,0,25,0" />
<scope id="2804056819678177847" at="36,0,39,0">
<var name="editorContext" id="2804056819678177847" />
<var name="node" id="2804056819678177847" />
</scope>
<scope id="2804056819678177847" at="25,0,29,0" />
<scope id="2804056819678177847" at="30,84,34,16" />
<scope id="2804056819678177847" at="39,0,43,0" />
<scope id="2804056819678177847" at="43,99,47,30" />
<scope id="2804056819678177847" at="52,0,56,0">
<var name="editorContext" id="2804056819678177847" />
<var name="node" id="2804056819678177847" />
</scope>
<scope id="2804056819678177847" at="56,0,60,0">
<var name="editorContext" id="2804056819678177847" />
<var name="node" id="2804056819678177847" />
</scope>
<scope id="2804056819678177847" at="60,0,64,0" />
<scope id="2804056819678177847" at="43,0,49,0">
<var name="context" id="2804056819678177847" />
<var name="node" id="2804056819678177847" />
</scope>
<scope id="2804056819678177847" at="29,0,36,0">
<var name="editorContext" id="2804056819678177847" />
<var name="node" id="2804056819678177847" />
</scope>
<unit id="2804056819678177847" at="66,0,69,0" name="dynamicc.intentions.AddAssignment_Intention$PROPS" />
<unit id="2804056819678177847" at="49,0,65,0" name="dynamicc.intentions.AddAssignment_Intention$IntentionImplementation" />
<unit id="2804056819678177847" at="20,0,70,0" name="dynamicc.intentions.AddAssignment_Intention" />
</file>
<file name="IntentionsDescriptor.java">
<node id="2804056819678177847" at="57,58,58,56" concept="1" />
<node id="2804056819678177847" at="79,45,80,42" concept="1" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/2804056819678183605">
<file name="IntentionsDescriptor.java">
<node id="2804056819678183605" at="58,56,59,59" concept="1" />
<node id="2804056819678183605" at="80,42,81,45" concept="1" />
</file>
<file name="RemoveAssignment_Intention.java">
<node id="2804056819678183605" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="2804056819678183605" at="22,39,23,134" concept="7" />
<node id="2804056819678183605" at="26,35,27,30" concept="5" />
<node id="2804056819678183605" at="31,53,32,19" concept="5" />
<node id="2804056819678183605" at="33,5,34,16" concept="5" />
<node id="2804056819678184264" at="36,91,37,75" concept="5" />
<node id="2804056819678183605" at="40,35,41,17" concept="5" />
<node id="2804056819678183605" at="44,37,45,105" concept="1" />
<node id="2804056819678183605" at="46,5,47,30" concept="5" />
<node id="2804056819678183933" at="53,87,54,33" concept="5" />
<node id="2804056819678185798" at="57,78,58,73" concept="1" />
<node id="2804056819678183605" at="61,48,62,45" concept="5" />
<node id="2804056819678183605" at="67,0,68,0" concept="6" trace="showAssignment$Lo_7" />
<node id="2804056819678183605" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="2804056819678183605" at="22,0,25,0" concept="0" trace="RemoveAssignment_Intention#()V" />
<node id="2804056819678183605" at="30,84,33,5" concept="3" />
<node id="2804056819678183605" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="2804056819678183605" at="43,99,46,5" concept="3" />
<node id="2804056819678183605" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="2804056819678183605" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="2804056819678183605" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="2804056819678183605" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="2804056819678183605" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="2804056819678183605" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="2804056819678183605" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="2804056819678183605" at="50,38,50,38" />
<scope id="2804056819678183605" at="22,39,23,134" />
<scope id="2804056819678183605" at="26,35,27,30" />
<scope id="2804056819678183605" at="31,53,32,19" />
<scope id="2804056819678184003" at="36,91,37,75" />
<scope id="2804056819678183605" at="40,35,41,17" />
<scope id="2804056819678183605" at="44,37,45,105" />
<scope id="2804056819678183607" at="53,87,54,33" />
<scope id="2804056819678183609" at="57,78,58,73" />
<scope id="2804056819678183605" at="61,48,62,45" />
<scope id="2804056819678183605" at="50,0,52,0" />
<scope id="2804056819678183605" at="22,0,25,0" />
<scope id="2804056819678183605" at="36,0,39,0">
<var name="editorContext" id="2804056819678183605" />
<var name="node" id="2804056819678183605" />
</scope>
<scope id="2804056819678183605" at="25,0,29,0" />
<scope id="2804056819678183605" at="30,84,34,16" />
<scope id="2804056819678183605" at="39,0,43,0" />
<scope id="2804056819678183605" at="43,99,47,30" />
<scope id="2804056819678183605" at="52,0,56,0">
<var name="editorContext" id="2804056819678183605" />
<var name="node" id="2804056819678183605" />
</scope>
<scope id="2804056819678183605" at="56,0,60,0">
<var name="editorContext" id="2804056819678183605" />
<var name="node" id="2804056819678183605" />
</scope>
<scope id="2804056819678183605" at="60,0,64,0" />
<scope id="2804056819678183605" at="43,0,49,0">
<var name="context" id="2804056819678183605" />
<var name="node" id="2804056819678183605" />
</scope>
<scope id="2804056819678183605" at="29,0,36,0">
<var name="editorContext" id="2804056819678183605" />
<var name="node" id="2804056819678183605" />
</scope>
<unit id="2804056819678183605" at="66,0,69,0" name="dynamicc.intentions.RemoveAssignment_Intention$PROPS" />
<unit id="2804056819678183605" at="49,0,65,0" name="dynamicc.intentions.RemoveAssignment_Intention$IntentionImplementation" />
<unit id="2804056819678183605" at="20,0,70,0" name="dynamicc.intentions.RemoveAssignment_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/4210816027743971744">
<file name="IntentionsDescriptor.java">
<node id="4210816027743971744" at="45,47,46,53" concept="1" />
<node id="4210816027743971744" at="71,53,72,39" concept="1" />
</file>
<file name="MakeStrong_Intention.java">
<node id="4210816027743971744" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="4210816027743971744" at="22,33,23,134" concept="7" />
<node id="4210816027743971744" at="26,35,27,24" concept="5" />
<node id="4210816027743971744" at="31,53,32,19" concept="5" />
<node id="4210816027743971744" at="33,5,34,16" concept="5" />
<node id="4210816027743972497" at="36,91,37,76" concept="5" />
<node id="4210816027743971744" at="40,35,41,17" concept="5" />
<node id="4210816027743971744" at="44,37,45,105" concept="1" />
<node id="4210816027743971744" at="46,5,47,30" concept="5" />
<node id="4210816027743972135" at="53,87,54,27" concept="5" />
<node id="4210816027743976534" at="57,78,58,64" concept="1" />
<node id="4210816027743971744" at="61,48,62,39" concept="5" />
<node id="4210816027743971744" at="67,0,68,0" concept="6" trace="strong$_PED" />
<node id="4210816027743971744" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="4210816027743971744" at="22,0,25,0" concept="0" trace="MakeStrong_Intention#()V" />
<node id="4210816027743971744" at="30,84,33,5" concept="3" />
<node id="4210816027743971744" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="4210816027743971744" at="43,99,46,5" concept="3" />
<node id="4210816027743971744" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="4210816027743971744" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="4210816027743971744" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="4210816027743971744" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="4210816027743971744" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="4210816027743971744" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="4210816027743971744" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="4210816027743971744" at="50,38,50,38" />
<scope id="4210816027743971744" at="22,33,23,134" />
<scope id="4210816027743971744" at="26,35,27,24" />
<scope id="4210816027743971744" at="31,53,32,19" />
<scope id="4210816027743972236" at="36,91,37,76" />
<scope id="4210816027743971744" at="40,35,41,17" />
<scope id="4210816027743971744" at="44,37,45,105" />
<scope id="4210816027743971746" at="53,87,54,27" />
<scope id="4210816027743971748" at="57,78,58,64" />
<scope id="4210816027743971744" at="61,48,62,39" />
<scope id="4210816027743971744" at="50,0,52,0" />
<scope id="4210816027743971744" at="22,0,25,0" />
<scope id="4210816027743971744" at="36,0,39,0">
<var name="editorContext" id="4210816027743971744" />
<var name="node" id="4210816027743971744" />
</scope>
<scope id="4210816027743971744" at="25,0,29,0" />
<scope id="4210816027743971744" at="30,84,34,16" />
<scope id="4210816027743971744" at="39,0,43,0" />
<scope id="4210816027743971744" at="43,99,47,30" />
<scope id="4210816027743971744" at="52,0,56,0">
<var name="editorContext" id="4210816027743971744" />
<var name="node" id="4210816027743971744" />
</scope>
<scope id="4210816027743971744" at="56,0,60,0">
<var name="editorContext" id="4210816027743971744" />
<var name="node" id="4210816027743971744" />
</scope>
<scope id="4210816027743971744" at="60,0,64,0" />
<scope id="4210816027743971744" at="43,0,49,0">
<var name="context" id="4210816027743971744" />
<var name="node" id="4210816027743971744" />
</scope>
<scope id="4210816027743971744" at="29,0,36,0">
<var name="editorContext" id="4210816027743971744" />
<var name="node" id="4210816027743971744" />
</scope>
<unit id="4210816027743971744" at="66,0,69,0" name="dynamicc.intentions.MakeStrong_Intention$PROPS" />
<unit id="4210816027743971744" at="49,0,65,0" name="dynamicc.intentions.MakeStrong_Intention$IntentionImplementation" />
<unit id="4210816027743971744" at="20,0,70,0" name="dynamicc.intentions.MakeStrong_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/4210816027743977227">
<file name="IntentionsDescriptor.java">
<node id="4210816027743977227" at="46,53,47,51" concept="1" />
<node id="4210816027743977227" at="72,39,73,37" concept="1" />
</file>
<file name="MakeWeak_Intention.java">
<node id="4210816027743977227" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="4210816027743977227" at="22,31,23,134" concept="7" />
<node id="4210816027743977227" at="26,35,27,22" concept="5" />
<node id="4210816027743977227" at="31,53,32,19" concept="5" />
<node id="4210816027743977227" at="33,5,34,16" concept="5" />
<node id="4210816027743978186" at="36,91,37,75" concept="5" />
<node id="4210816027743977227" at="40,35,41,17" concept="5" />
<node id="4210816027743977227" at="44,37,45,105" concept="1" />
<node id="4210816027743977227" at="46,5,47,30" concept="5" />
<node id="4210816027743977555" at="53,87,54,25" concept="5" />
<node id="4210816027743982210" at="57,78,58,65" concept="1" />
<node id="4210816027743977227" at="61,48,62,37" concept="5" />
<node id="4210816027743977227" at="67,0,68,0" concept="6" trace="strong$_PED" />
<node id="4210816027743977227" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="4210816027743977227" at="22,0,25,0" concept="0" trace="MakeWeak_Intention#()V" />
<node id="4210816027743977227" at="30,84,33,5" concept="3" />
<node id="4210816027743977227" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="4210816027743977227" at="43,99,46,5" concept="3" />
<node id="4210816027743977227" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="4210816027743977227" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="4210816027743977227" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="4210816027743977227" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="4210816027743977227" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="4210816027743977227" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="4210816027743977227" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="4210816027743977227" at="50,38,50,38" />
<scope id="4210816027743977227" at="22,31,23,134" />
<scope id="4210816027743977227" at="26,35,27,22" />
<scope id="4210816027743977227" at="31,53,32,19" />
<scope id="4210816027743977925" at="36,91,37,75" />
<scope id="4210816027743977227" at="40,35,41,17" />
<scope id="4210816027743977227" at="44,37,45,105" />
<scope id="4210816027743977229" at="53,87,54,25" />
<scope id="4210816027743977231" at="57,78,58,65" />
<scope id="4210816027743977227" at="61,48,62,37" />
<scope id="4210816027743977227" at="50,0,52,0" />
<scope id="4210816027743977227" at="22,0,25,0" />
<scope id="4210816027743977227" at="36,0,39,0">
<var name="editorContext" id="4210816027743977227" />
<var name="node" id="4210816027743977227" />
</scope>
<scope id="4210816027743977227" at="25,0,29,0" />
<scope id="4210816027743977227" at="30,84,34,16" />
<scope id="4210816027743977227" at="39,0,43,0" />
<scope id="4210816027743977227" at="43,99,47,30" />
<scope id="4210816027743977227" at="52,0,56,0">
<var name="editorContext" id="4210816027743977227" />
<var name="node" id="4210816027743977227" />
</scope>
<scope id="4210816027743977227" at="56,0,60,0">
<var name="editorContext" id="4210816027743977227" />
<var name="node" id="4210816027743977227" />
</scope>
<scope id="4210816027743977227" at="60,0,64,0" />
<scope id="4210816027743977227" at="43,0,49,0">
<var name="context" id="4210816027743977227" />
<var name="node" id="4210816027743977227" />
</scope>
<scope id="4210816027743977227" at="29,0,36,0">
<var name="editorContext" id="4210816027743977227" />
<var name="node" id="4210816027743977227" />
</scope>
<unit id="4210816027743977227" at="66,0,69,0" name="dynamicc.intentions.MakeWeak_Intention$PROPS" />
<unit id="4210816027743977227" at="49,0,65,0" name="dynamicc.intentions.MakeWeak_Intention$IntentionImplementation" />
<unit id="4210816027743977227" at="20,0,70,0" name="dynamicc.intentions.MakeWeak_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/4210816027744121724">
<file name="IntentionsDescriptor.java">
<node id="4210816027744121724" at="55,47,56,55" concept="1" />
<node id="4210816027744121724" at="73,37,74,41" concept="1" />
</file>
<file name="MakeNullable_Intention.java">
<node id="4210816027744121724" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="4210816027744121724" at="22,35,23,133" concept="7" />
<node id="4210816027744121724" at="26,35,27,26" concept="5" />
<node id="4210816027744121724" at="31,53,32,19" concept="5" />
<node id="4210816027744121724" at="33,5,34,16" concept="5" />
<node id="4210816027744123062" at="36,91,37,78" concept="5" />
<node id="4210816027744121724" at="40,35,41,17" concept="5" />
<node id="4210816027744121724" at="44,37,45,105" concept="1" />
<node id="4210816027744121724" at="46,5,47,30" concept="5" />
<node id="4210816027744122058" at="53,87,54,29" concept="5" />
<node id="4210816027744127293" at="57,78,58,66" concept="1" />
<node id="4210816027744121724" at="61,48,62,41" concept="5" />
<node id="4210816027744121724" at="67,0,68,0" concept="6" trace="optional$_PtY" />
<node id="4210816027744121724" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="4210816027744121724" at="22,0,25,0" concept="0" trace="MakeNullable_Intention#()V" />
<node id="4210816027744121724" at="30,84,33,5" concept="3" />
<node id="4210816027744121724" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="4210816027744121724" at="43,99,46,5" concept="3" />
<node id="4210816027744121724" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="4210816027744121724" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="4210816027744121724" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="4210816027744121724" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="4210816027744121724" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="4210816027744121724" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="4210816027744121724" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="4210816027744121724" at="50,38,50,38" />
<scope id="4210816027744121724" at="22,35,23,133" />
<scope id="4210816027744121724" at="26,35,27,26" />
<scope id="4210816027744121724" at="31,53,32,19" />
<scope id="4210816027744122773" at="36,91,37,78" />
<scope id="4210816027744121724" at="40,35,41,17" />
<scope id="4210816027744121724" at="44,37,45,105" />
<scope id="4210816027744121726" at="53,87,54,29" />
<scope id="4210816027744121728" at="57,78,58,66" />
<scope id="4210816027744121724" at="61,48,62,41" />
<scope id="4210816027744121724" at="50,0,52,0" />
<scope id="4210816027744121724" at="22,0,25,0" />
<scope id="4210816027744121724" at="36,0,39,0">
<var name="editorContext" id="4210816027744121724" />
<var name="node" id="4210816027744121724" />
</scope>
<scope id="4210816027744121724" at="25,0,29,0" />
<scope id="4210816027744121724" at="30,84,34,16" />
<scope id="4210816027744121724" at="39,0,43,0" />
<scope id="4210816027744121724" at="43,99,47,30" />
<scope id="4210816027744121724" at="52,0,56,0">
<var name="editorContext" id="4210816027744121724" />
<var name="node" id="4210816027744121724" />
</scope>
<scope id="4210816027744121724" at="56,0,60,0">
<var name="editorContext" id="4210816027744121724" />
<var name="node" id="4210816027744121724" />
</scope>
<scope id="4210816027744121724" at="60,0,64,0" />
<scope id="4210816027744121724" at="43,0,49,0">
<var name="context" id="4210816027744121724" />
<var name="node" id="4210816027744121724" />
</scope>
<scope id="4210816027744121724" at="29,0,36,0">
<var name="editorContext" id="4210816027744121724" />
<var name="node" id="4210816027744121724" />
</scope>
<unit id="4210816027744121724" at="66,0,69,0" name="dynamicc.intentions.MakeNullable_Intention$PROPS" />
<unit id="4210816027744121724" at="49,0,65,0" name="dynamicc.intentions.MakeNullable_Intention$IntentionImplementation" />
<unit id="4210816027744121724" at="20,0,70,0" name="dynamicc.intentions.MakeNullable_Intention" />
</file>
</root>
<root nodeRef="r:b14ad5f6-81de-4f61-953c-64e0ee8829d9(dynamicc.intentions)/4210816027744130391">
<file name="IntentionsDescriptor.java">
<node id="4210816027744130391" at="56,55,57,58" concept="1" />
<node id="4210816027744130391" at="74,41,75,44" concept="1" />
</file>
<file name="MakeNonNullable_Intention.java">
<node id="4210816027744130391" at="21,0,22,0" concept="2" trace="myCachedExecutable" />
<node id="4210816027744130391" at="22,38,23,133" concept="7" />
<node id="4210816027744130391" at="26,35,27,29" concept="5" />
<node id="4210816027744130391" at="31,53,32,19" concept="5" />
<node id="4210816027744130391" at="33,5,34,16" concept="5" />
<node id="4210816027744131418" at="36,91,37,77" concept="5" />
<node id="4210816027744130391" at="40,35,41,17" concept="5" />
<node id="4210816027744130391" at="44,37,45,105" concept="1" />
<node id="4210816027744130391" at="46,5,47,30" concept="5" />
<node id="4210816027744130725" at="53,87,54,33" concept="5" />
<node id="4210816027744135403" at="57,78,58,67" concept="1" />
<node id="4210816027744130391" at="61,48,62,44" concept="5" />
<node id="4210816027744130391" at="67,0,68,0" concept="6" trace="optional$_PtY" />
<node id="4210816027744130391" at="50,0,52,0" concept="0" trace="IntentionImplementation#()V" />
<node id="4210816027744130391" at="22,0,25,0" concept="0" trace="MakeNonNullable_Intention#()V" />
<node id="4210816027744130391" at="30,84,33,5" concept="3" />
<node id="4210816027744130391" at="36,0,39,0" concept="4" trace="isApplicableToNode#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<node id="4210816027744130391" at="43,99,46,5" concept="3" />
<node id="4210816027744130391" at="25,0,29,0" concept="4" trace="getPresentation#()Ljava/lang/String;" />
<node id="4210816027744130391" at="39,0,43,0" concept="4" trace="isSurroundWith#()Z" />
<node id="4210816027744130391" at="52,0,56,0" concept="4" trace="getDescription#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/lang/String;" />
<node id="4210816027744130391" at="56,0,60,0" concept="4" trace="execute#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)V" />
<node id="4210816027744130391" at="60,0,64,0" concept="4" trace="getDescriptor#()Ljetbrains/mps/openapi/intentions/IntentionDescriptor;" />
<node id="4210816027744130391" at="43,0,49,0" concept="4" trace="instances#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Ljava/util/Collection;" />
<node id="4210816027744130391" at="29,0,36,0" concept="4" trace="isApplicable#(Lorg/jetbrains/mps/openapi/model/SNode;Ljetbrains/mps/openapi/editor/EditorContext;)Z" />
<scope id="4210816027744130391" at="50,38,50,38" />
<scope id="4210816027744130391" at="22,38,23,133" />
<scope id="4210816027744130391" at="26,35,27,29" />
<scope id="4210816027744130391" at="31,53,32,19" />
<scope id="4210816027744131157" at="36,91,37,77" />
<scope id="4210816027744130391" at="40,35,41,17" />
<scope id="4210816027744130391" at="44,37,45,105" />
<scope id="4210816027744130393" at="53,87,54,33" />
<scope id="4210816027744130395" at="57,78,58,67" />
<scope id="4210816027744130391" at="61,48,62,44" />
<scope id="4210816027744130391" at="50,0,52,0" />
<scope id="4210816027744130391" at="22,0,25,0" />
<scope id="4210816027744130391" at="36,0,39,0">
<var name="editorContext" id="4210816027744130391" />
<var name="node" id="4210816027744130391" />
</scope>
<scope id="4210816027744130391" at="25,0,29,0" />
<scope id="4210816027744130391" at="30,84,34,16" />
<scope id="4210816027744130391" at="39,0,43,0" />
<scope id="4210816027744130391" at="43,99,47,30" />
<scope id="4210816027744130391" at="52,0,56,0">
<var name="editorContext" id="4210816027744130391" />
<var name="node" id="4210816027744130391" />
</scope>
<scope id="4210816027744130391" at="56,0,60,0">
<var name="editorContext" id="4210816027744130391" />
<var name="node" id="4210816027744130391" />
</scope>
<scope id="4210816027744130391" at="60,0,64,0" />
<scope id="4210816027744130391" at="43,0,49,0">
<var name="context" id="4210816027744130391" />
<var name="node" id="4210816027744130391" />
</scope>
<scope id="4210816027744130391" at="29,0,36,0">
<var name="editorContext" id="4210816027744130391" />
<var name="node" id="4210816027744130391" />
</scope>
<unit id="4210816027744130391" at="66,0,69,0" name="dynamicc.intentions.MakeNonNullable_Intention$PROPS" />
<unit id="4210816027744130391" at="49,0,65,0" name="dynamicc.intentions.MakeNonNullable_Intention$IntentionImplementation" />
<unit id="4210816027744130391" at="20,0,70,0" name="dynamicc.intentions.MakeNonNullable_Intention" />
</file>
</root>
</debug-info>

View File

@@ -0,0 +1,146 @@
package dynamicc.structure;
/*Generated by MPS */
import jetbrains.mps.smodel.runtime.ConceptPresentationAspectBase;
import jetbrains.mps.smodel.runtime.ConceptPresentation;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.smodel.runtime.ConceptPresentationBuilder;
public class ConceptPresentationAspectImpl extends ConceptPresentationAspectBase {
private ConceptPresentation props_Assignment;
private ConceptPresentation props_CCodeBlock;
private ConceptPresentation props_Cast;
private ConceptPresentation props_Expression;
private ConceptPresentation props_Function;
private ConceptPresentation props_FunctionParameter;
private ConceptPresentation props_Int10LiteralConcept;
private ConceptPresentation props_Module;
private ConceptPresentation props_NewlineStatement;
private ConceptPresentation props_SingleLineComment;
private ConceptPresentation props_Statement;
private ConceptPresentation props_Type;
private ConceptPresentation props_ValVariable;
private ConceptPresentation props_VarVariable;
private ConceptPresentation props_Variable;
private ConceptPresentation props_VariableAccess;
@Override
@Nullable
public ConceptPresentation getDescriptor(SAbstractConcept c) {
StructureAspectDescriptor structureDescriptor = (StructureAspectDescriptor) myLanguageRuntime.getAspect(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.class);
switch (structureDescriptor.internalIndex(c)) {
case LanguageConceptSwitch.Assignment:
if (props_Assignment == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.rawPresentation("=");
props_Assignment = cpb.create();
}
return props_Assignment;
case LanguageConceptSwitch.CCodeBlock:
if (props_CCodeBlock == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.rawPresentation("$");
props_CCodeBlock = cpb.create();
}
return props_CCodeBlock;
case LanguageConceptSwitch.Cast:
if (props_Cast == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.rawPresentation("as");
props_Cast = cpb.create();
}
return props_Cast;
case LanguageConceptSwitch.Expression:
if (props_Expression == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_Expression = cpb.create();
}
return props_Expression;
case LanguageConceptSwitch.Function:
if (props_Function == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByName();
props_Function = cpb.create();
}
return props_Function;
case LanguageConceptSwitch.FunctionParameter:
if (props_FunctionParameter == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByName();
props_FunctionParameter = cpb.create();
}
return props_FunctionParameter;
case LanguageConceptSwitch.Int10LiteralConcept:
if (props_Int10LiteralConcept == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.rawPresentation("Int10LiteralConcept");
props_Int10LiteralConcept = cpb.create();
}
return props_Int10LiteralConcept;
case LanguageConceptSwitch.Module:
if (props_Module == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByName();
props_Module = cpb.create();
}
return props_Module;
case LanguageConceptSwitch.NewlineStatement:
if (props_NewlineStatement == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.rawPresentation("NewlineStatement");
props_NewlineStatement = cpb.create();
}
return props_NewlineStatement;
case LanguageConceptSwitch.SingleLineComment:
if (props_SingleLineComment == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.rawPresentation("//");
props_SingleLineComment = cpb.create();
}
return props_SingleLineComment;
case LanguageConceptSwitch.Statement:
if (props_Statement == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_Statement = cpb.create();
}
return props_Statement;
case LanguageConceptSwitch.Type:
if (props_Type == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByName();
props_Type = cpb.create();
}
return props_Type;
case LanguageConceptSwitch.ValVariable:
if (props_ValVariable == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByName();
props_ValVariable = cpb.create();
}
return props_ValVariable;
case LanguageConceptSwitch.VarVariable:
if (props_VarVariable == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByName();
props_VarVariable = cpb.create();
}
return props_VarVariable;
case LanguageConceptSwitch.Variable:
if (props_Variable == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
props_Variable = cpb.create();
}
return props_Variable;
case LanguageConceptSwitch.VariableAccess:
if (props_VariableAccess == null) {
ConceptPresentationBuilder cpb = new ConceptPresentationBuilder();
cpb.presentationByReference(0xa6d9727f49824bf8L, 0xabdd083fea5126abL, 0x26ea02d22aef02d4L, 0x26ea02d22aef02d5L, "variable", "", "");
props_VariableAccess = cpb.create();
}
return props_VariableAccess;
}
return null;
}
}

Some files were not shown because too many files have changed in this diff Show More