Updated typesystem2 runtime: LogicVariable compatible with terms API, custom constraints

This commit is contained in:
Fedor Isakov 2014-11-26 14:58:01 +01:00
parent 43c21fe5ec
commit 094c4e795e
3 changed files with 374 additions and 14 deletions

View File

@ -9,7 +9,11 @@
<dependencies>
<dependency reexport="false">6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)</dependency>
<dependency reexport="false">6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)</dependency>
<dependency reexport="true">7526e0cf-1ce7-46f8-a555-9eca1e06c23b(jetbrains.mps.unification.tree)</dependency>
</dependencies>
<usedLanguages>
<usedLanguage>f61473f9-130f-42f6-b98d-6c438812c2f6(jetbrains.mps.baseLanguage.unitTest)</usedLanguage>
</usedLanguages>
<usedDevKits>
<usedDevKit>fbc25dd2-5da4-483a-8b19-70928e1b62d7(jetbrains.mps.devkit.general-purpose)</usedDevKit>
<usedDevKit>2677cb18-f558-4e33-bc38-a5139cee06dc(jetbrains.mps.devkit.language-design)</usedDevKit>

View File

@ -6,6 +6,8 @@
<import index="k7g3" modelUID="f:java_stub#6354ebe7-c22a-4a0f-ac54-50b52ab9b065#java.util(JDK/java.util@java_stub)" version="-1" />
<import index="msyo" modelUID="f:java_stub#6ed54515-acc8-4d1e-a16c-9fd6cfe951ea#jetbrains.mps.util(MPS.Core/jetbrains.mps.util@java_stub)" version="-1" />
<import index="neyv" modelUID="f:java_stub#6ed54515-acc8-4d1e-a16c-9fd6cfe951ea#com.google.common.collect(MPS.Core/com.google.common.collect@java_stub)" version="-1" />
<import index="jfki" modelUID="f:java_stub#7526e0cf-1ce7-46f8-a555-9eca1e06c23b#jetbrains.mps.unification(jetbrains.mps.unification@java_stub)" version="-1" />
<import index="ie8e" modelUID="r:ab2605ab-b4bc-4e80-a8ca-19a4a8465c01(jetbrains.mps.unification.tree)" version="-1" />
<import index="tpck" modelUID="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" version="0" implicit="yes" />
<import index="tpee" modelUID="r:00000000-0000-4000-0000-011c895902ca(jetbrains.mps.baseLanguage.structure)" version="5" implicit="yes" />
<root type="tpee.ClassConcept" typeId="tpee.1068390468198" id="8335224865064894913" nodeInfo="ig">
@ -2274,7 +2276,261 @@
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="6135434422633928421" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591485643" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487773" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="name" />
<property name="isFinal" nameId="tpee.1181808852946" value="false" />
<property name="isSynchronized" nameId="tpee.4276006055363816570" value="false" />
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487774" nodeInfo="nn" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487776" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~String" resolveInfo="String" />
</node>
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487777" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591493718" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.LocalMethodCall" typeId="tpee.7812454656619025412" id="7495858862591493717" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="6135434422634157119" resolveInfo="toString" />
</node>
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591495769" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487780" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="copyRecursively" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487781" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="ie8e.1357303818382341941" resolveInfo="ITreePart" />
<node role="parameter" roleId="tpee.1109201940907" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487788" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="jfki.~Var" resolveInfo="Var" />
</node>
</node>
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487783" nodeInfo="nn" />
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487789" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591498527" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.ThisExpression" typeId="tpee.1070475354124" id="7495858862591498526" nodeInfo="nn" />
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591498599" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487792" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="mapRecursively" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7495858862591487793" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="mapper" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487794" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="ie8e.4410561908414143737" resolveInfo="ITreePart.Mapper" />
</node>
</node>
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487795" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="ie8e.1357303818382341941" resolveInfo="ITreePart" />
<node role="parameter" roleId="tpee.1109201940907" type="tpee.WildCardType" typeId="tpee.1171903607971" id="7495858862591487796" nodeInfo="in" />
</node>
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487797" nodeInfo="nn" />
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487802" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591501426" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.ThisExpression" typeId="tpee.1070475354124" id="7495858862591501425" nodeInfo="nn" />
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591501496" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487805" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="isTerm" />
<property name="isFinal" nameId="tpee.1181808852946" value="false" />
<property name="isSynchronized" nameId="tpee.4276006055363816570" value="false" />
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487806" nodeInfo="nn" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.BooleanType" typeId="tpee.1070534644030" id="7495858862591487808" nodeInfo="in" />
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487813" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591487815" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.BooleanConstant" typeId="tpee.1068580123137" id="7495858862591487814" nodeInfo="nn" />
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591504361" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487816" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="asTerm" />
<property name="isFinal" nameId="tpee.1181808852946" value="false" />
<property name="isSynchronized" nameId="tpee.4276006055363816570" value="false" />
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487817" nodeInfo="nn" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487819" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="jfki.~Term" resolveInfo="Term" />
</node>
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487824" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ThrowStatement" typeId="tpee.1164991038168" id="7495858862591510126" nodeInfo="nn">
<node role="throwable" roleId="tpee.1164991057263" type="tpee.GenericNewExpression" typeId="tpee.1145552977093" id="7495858862591510154" nodeInfo="nn">
<node role="creator" roleId="tpee.1145553007750" type="tpee.ClassCreator" typeId="tpee.1212685548494" id="7495858862591541373" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~IllegalStateException%d&lt;init&gt;()" resolveInfo="IllegalStateException" />
</node>
</node>
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591507227" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487827" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="isVar" />
<property name="isFinal" nameId="tpee.1181808852946" value="false" />
<property name="isSynchronized" nameId="tpee.4276006055363816570" value="false" />
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487828" nodeInfo="nn" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.BooleanType" typeId="tpee.1070534644030" id="7495858862591487830" nodeInfo="in" />
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487835" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591545429" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.BooleanConstant" typeId="tpee.1068580123137" id="7495858862591545428" nodeInfo="nn">
<property name="value" nameId="tpee.1068580123138" value="true" />
</node>
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591542523" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487838" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="asVar" />
<property name="isFinal" nameId="tpee.1181808852946" value="false" />
<property name="isSynchronized" nameId="tpee.4276006055363816570" value="false" />
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487839" nodeInfo="nn" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487841" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="jfki.~Var" resolveInfo="Var" />
</node>
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487846" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591545464" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.ThisExpression" typeId="tpee.1070475354124" id="7495858862591545463" nodeInfo="nn" />
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591545520" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="7495858862591487849" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="compareTo" />
<property name="isFinal" nameId="tpee.1181808852946" value="false" />
<property name="isDeprecated" nameId="tpee.1224848525476" value="false" />
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="7495858862591487850" nodeInfo="nn" />
<node role="returnType" roleId="tpee.1068580123133" type="tpee.IntegerType" typeId="tpee.1070534370425" id="7495858862591487852" nodeInfo="in" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7495858862591487853" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="that" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591487859" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="jfki.~Var" resolveInfo="Var" />
</node>
</node>
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591487860" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.IfStatement" typeId="tpee.1068580123159" id="7495858862591552704" nodeInfo="nn">
<node role="ifTrue" roleId="tpee.1068580123161" type="tpee.StatementList" typeId="tpee.1068580123136" id="7495858862591552705" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ReturnStatement" typeId="tpee.1068581242878" id="7495858862591557307" nodeInfo="nn">
<node role="expression" roleId="tpee.1068581517676" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591574814" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.StaticMethodCall" typeId="tpee.1081236700937" id="7495858862591562689" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~String%dvalueOf(java%dlang%dObject)%cjava%dlang%dString" resolveInfo="valueOf" />
<link role="classConcept" roleId="tpee.1144433194310" targetNodeId="e2lb.~String" resolveInfo="String" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591568096" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.ThisExpression" typeId="tpee.1070475354124" id="7495858862591566688" nodeInfo="nn" />
<node role="operation" roleId="tpee.1197027833540" type="tpee.InstanceMethodCallOperation" typeId="tpee.1202948039474" id="7495858862591570414" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~Object%dgetClass()%cjava%dlang%dClass" resolveInfo="getClass" />
</node>
</node>
</node>
<node role="operation" roleId="tpee.1197027833540" type="tpee.InstanceMethodCallOperation" typeId="tpee.1202948039474" id="7495858862591579563" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~String%dcompareTo(java%dlang%dString)%cint" resolveInfo="compareTo" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.StaticMethodCall" typeId="tpee.1081236700937" id="7495858862591585877" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~String%dvalueOf(java%dlang%dObject)%cjava%dlang%dString" resolveInfo="valueOf" />
<link role="classConcept" roleId="tpee.1144433194310" targetNodeId="e2lb.~String" resolveInfo="String" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591590405" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7495858862591590042" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7495858862591487853" resolveInfo="that" />
</node>
<node role="operation" roleId="tpee.1197027833540" type="tpee.InstanceMethodCallOperation" typeId="tpee.1202948039474" id="7495858862591591827" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~Object%dgetClass()%cjava%dlang%dClass" resolveInfo="getClass" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node role="condition" roleId="tpee.1068580123160" type="tpee.NotExpression" typeId="tpee.1081516740877" id="7495858862591552734" nodeInfo="nn">
<node role="expression" roleId="tpee.1081516765348" type="tpee.InstanceOfExpression" typeId="tpee.1081256982272" id="7495858862591553453" nodeInfo="nn">
<node role="classType" roleId="tpee.1081256993305" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591555297" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="6135434422633921345" resolveInfo="LogicVariable" />
</node>
<node role="leftExpression" roleId="tpee.1081256993304" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7495858862591552774" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7495858862591487853" resolveInfo="that" />
</node>
</node>
</node>
</node>
<node role="statement" roleId="tpee.1068581517665" type="tpee.LocalVariableDeclarationStatement" typeId="tpee.1068581242864" id="7495858862591662346" nodeInfo="nn">
<node role="localVariableDeclaration" roleId="tpee.1068581242865" type="tpee.LocalVariableDeclaration" typeId="tpee.1068581242863" id="7495858862591662347" nodeInfo="nr">
<property name="name" nameId="tpck.1169194664001" value="compareName" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.IntegerType" typeId="tpee.1070534370425" id="7495858862591662344" nodeInfo="in" />
<node role="initializer" roleId="tpee.1068431790190" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591662348" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591662349" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.ThisExpression" typeId="tpee.1070475354124" id="7495858862591662350" nodeInfo="nn" />
<node role="operation" roleId="tpee.1197027833540" type="tpee.FieldReferenceOperation" typeId="tpee.1197029447546" id="7495858862591662351" nodeInfo="nn">
<link role="fieldDeclaration" roleId="tpee.1197029500499" targetNodeId="6135434422634153367" resolveInfo="name" />
</node>
</node>
<node role="operation" roleId="tpee.1197027833540" type="tpee.InstanceMethodCallOperation" typeId="tpee.1202948039474" id="7495858862591662352" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="e2lb.~String%dcompareTo(java%dlang%dString)%cint" resolveInfo="compareTo" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591662353" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.ParenthesizedExpression" typeId="tpee.1079359253375" id="7495858862591662354" nodeInfo="nn">
<node role="expression" roleId="tpee.1079359253376" type="tpee.CastExpression" typeId="tpee.1070534934090" id="7495858862591662355" nodeInfo="nn">
<node role="type" roleId="tpee.1070534934091" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591662356" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="6135434422633921345" resolveInfo="LogicVariable" />
</node>
<node role="expression" roleId="tpee.1070534934092" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7495858862591662357" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7495858862591487853" resolveInfo="that" />
</node>
</node>
</node>
<node role="operation" roleId="tpee.1197027833540" type="tpee.FieldReferenceOperation" typeId="tpee.1197029447546" id="7495858862591662358" nodeInfo="nn">
<link role="fieldDeclaration" roleId="tpee.1197029500499" targetNodeId="6135434422634153367" resolveInfo="name" />
</node>
</node>
</node>
</node>
</node>
</node>
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7495858862591629623" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.TernaryOperatorExpression" typeId="tpee.1163668896201" id="7495858862591678107" nodeInfo="nn">
<node role="ifTrue" roleId="tpee.1163668922816" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7495858862591682680" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7495858862591662347" resolveInfo="compareName" />
</node>
<node role="ifFalse" roleId="tpee.1163668934364" type="tpee.ParenthesizedExpression" typeId="tpee.1079359253375" id="7495858862591682753" nodeInfo="nn">
<node role="expression" roleId="tpee.1079359253376" type="tpee.MinusExpression" typeId="tpee.1068581242869" id="7495858862591721225" nodeInfo="nn">
<node role="rightExpression" roleId="tpee.1081773367579" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591738131" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.ParenthesizedExpression" typeId="tpee.1079359253375" id="7495858862591722532" nodeInfo="nn">
<node role="expression" roleId="tpee.1079359253376" type="tpee.CastExpression" typeId="tpee.1070534934090" id="7495858862591722529" nodeInfo="nn">
<node role="type" roleId="tpee.1070534934091" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591732572" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="6135434422633921345" resolveInfo="LogicVariable" />
</node>
<node role="expression" roleId="tpee.1070534934092" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7495858862591735328" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7495858862591487853" resolveInfo="that" />
</node>
</node>
</node>
<node role="operation" roleId="tpee.1197027833540" type="tpee.FieldReferenceOperation" typeId="tpee.1197029447546" id="7495858862591739008" nodeInfo="nn">
<link role="fieldDeclaration" roleId="tpee.1197029500499" targetNodeId="6135434422634153975" resolveInfo="idx" />
</node>
</node>
<node role="leftExpression" roleId="tpee.1081773367580" type="tpee.DotExpression" typeId="tpee.1197027756228" id="7495858862591718271" nodeInfo="nn">
<node role="operand" roleId="tpee.1197027771414" type="tpee.ThisExpression" typeId="tpee.1070475354124" id="7495858862591708192" nodeInfo="nn" />
<node role="operation" roleId="tpee.1197027833540" type="tpee.FieldReferenceOperation" typeId="tpee.1197029447546" id="7495858862591718614" nodeInfo="nn">
<link role="fieldDeclaration" roleId="tpee.1197029500499" targetNodeId="6135434422634153975" resolveInfo="idx" />
</node>
</node>
</node>
</node>
<node role="condition" roleId="tpee.1163668914799" type="tpee.NotEqualsExpression" typeId="tpee.1073239437375" id="7495858862591672456" nodeInfo="nn">
<node role="rightExpression" roleId="tpee.1081773367579" type="tpee.IntegerConstant" typeId="tpee.1068580320020" id="7495858862591677292" nodeInfo="nn">
<property name="value" nameId="tpee.1068580320021" value="0" />
</node>
<node role="leftExpression" roleId="tpee.1081773367580" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7495858862591662359" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7495858862591662347" resolveInfo="compareName" />
</node>
</node>
</node>
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7495858862591485997" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.InstanceMethodDeclaration" typeId="tpee.1068580123165" id="6135434422634157119" nodeInfo="igu">
<property name="isAbstract" nameId="tpee.1178608670077" value="false" />
<property name="name" nameId="tpck.1169194664001" value="toString" />
@ -2336,6 +2592,15 @@
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PrivateVisibility" typeId="tpee.1146644623116" id="6135434422634153976" nodeInfo="nn" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.IntegerType" typeId="tpee.1070534370425" id="6135434422634153978" nodeInfo="in" />
</node>
<node role="implementedInterface" roleId="tpee.1095933932569" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591476202" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="jfki.~Var" resolveInfo="Var" />
</node>
<node role="implementedInterface" roleId="tpee.1095933932569" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591477885" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="ie8e.1357303818382341941" resolveInfo="ITreePart" />
<node role="parameter" roleId="tpee.1109201940907" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7495858862591479710" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="jfki.~Var" resolveInfo="Var" />
</node>
</node>
</root>
</model>

View File

@ -118,19 +118,25 @@
<property name="name" nameId="tpck.1169194664001" value="CustomConstraints" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7340198212831140189" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.StaticMethodDeclaration" typeId="tpee.1081236700938" id="7340198212831140255" nodeInfo="igu">
<property name="name" nameId="tpck.1169194664001" value="type" />
<property name="name" nameId="tpck.1169194664001" value="typeAnchor" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7340198212831140385" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="anchor1" />
<property name="name" nameId="tpck.1169194664001" value="concept" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7340198212831140505" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7340198212831140586" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="anchor2" />
<property name="name" nameId="tpck.1169194664001" value="anchor" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7340198212831140654" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="5173293270661909186" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="typevar" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270661913311" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7340198212831140729" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="args" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.VariableArityType" typeId="tpee.1219920932475" id="7340198212831141216" nodeInfo="in">
@ -152,12 +158,12 @@
<property name="value" nameId="tpee.1070475926801" value="type" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.LocalMethodCall" typeId="tpee.7812454656619025412" id="7340198212831182892" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="7340198212831153397" resolveInfo="toSingleArray" />
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="7340198212831174566" resolveInfo="prepend3" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7340198212831183396" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831140385" resolveInfo="anchor1" />
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831140385" resolveInfo="concept" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7340198212831184305" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831140586" resolveInfo="anchor2" />
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831140586" resolveInfo="anchor" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7340198212831184988" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831140729" resolveInfo="args" />
@ -167,9 +173,94 @@
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="5173293270663520772" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.StaticMethodDeclaration" typeId="tpee.1081236700938" id="5173293270663517767" nodeInfo="igu">
<property name="name" nameId="tpck.1169194664001" value="type" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="5173293270663517768" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="concept" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270663517769" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="5173293270663517772" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="typevar" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270663517773" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="5173293270663517774" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="args" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.VariableArityType" typeId="tpee.1219920932475" id="5173293270663517775" nodeInfo="in">
<node role="componentType" roleId="tpee.1219921048460" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270663517776" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
</node>
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270663517777" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="nc4n.8335224865064895431" resolveInfo="UserConstraint" />
</node>
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="5173293270663517778" nodeInfo="nn" />
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="5173293270663517779" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="5173293270663517780" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.StaticMethodCall" typeId="tpee.1081236700937" id="5173293270663517781" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="nc4n.6135434422634372093" resolveInfo="nary" />
<link role="classConcept" roleId="tpee.1144433194310" targetNodeId="nc4n.8335224865064895431" resolveInfo="UserConstraint" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.StringLiteral" typeId="tpee.1070475926800" id="5173293270663517782" nodeInfo="nn">
<property name="value" nameId="tpee.1070475926801" value="type" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.LocalMethodCall" typeId="tpee.7812454656619025412" id="5173293270663517783" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="7340198212831169644" resolveInfo="prepend2" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="5173293270663517784" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="5173293270663517768" resolveInfo="concept" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="5173293270663517786" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="5173293270663517774" resolveInfo="args" />
</node>
</node>
</node>
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="5173293270662922074" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.StaticMethodDeclaration" typeId="tpee.1081236700938" id="5173293270662918929" nodeInfo="igu">
<property name="name" nameId="tpck.1169194664001" value="typeOf" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="5173293270662918930" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="anchor" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270662918931" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="5173293270662918934" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="type" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270662918935" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
</node>
<node role="returnType" roleId="tpee.1068580123133" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="5173293270662918939" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="nc4n.8335224865064895431" resolveInfo="UserConstraint" />
</node>
<node role="visibility" roleId="tpee.1178549979242" type="tpee.PublicVisibility" typeId="tpee.1146644602865" id="5173293270662918940" nodeInfo="nn" />
<node role="body" roleId="tpee.1068580123135" type="tpee.StatementList" typeId="tpee.1068580123136" id="5173293270662918941" nodeInfo="sn">
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="5173293270662918942" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.StaticMethodCall" typeId="tpee.1081236700937" id="5173293270663096985" nodeInfo="nn">
<link role="baseMethodDeclaration" roleId="tpee.1068499141037" targetNodeId="nc4n.8335224865064895447" resolveInfo="binary" />
<link role="classConcept" roleId="tpee.1144433194310" targetNodeId="nc4n.8335224865064895431" resolveInfo="UserConstraint" />
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.StringLiteral" typeId="tpee.1070475926800" id="5173293270663096986" nodeInfo="nn">
<property name="value" nameId="tpee.1070475926801" value="typeOf" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="5173293270663096987" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="5173293270662918930" resolveInfo="anchor" />
</node>
<node role="actualArgument" roleId="tpee.1068499141038" type="tpee.VariableReference" typeId="tpee.1068498886296" id="5173293270663096988" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="5173293270662918934" resolveInfo="type" />
</node>
</node>
</node>
</node>
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7340198212831151741" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.StaticMethodDeclaration" typeId="tpee.1081236700938" id="7340198212831153397" nodeInfo="igu">
<property name="name" nameId="tpck.1169194664001" value="toSingleArray" />
<property name="name" nameId="tpck.1169194664001" value="prepend1" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7340198212831153972" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="head" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7340198212831153984" nodeInfo="in">
@ -269,9 +360,9 @@
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7340198212831171104" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.StaticMethodDeclaration" typeId="tpee.1081236700938" id="7340198212831169644" nodeInfo="igu">
<property name="name" nameId="tpck.1169194664001" value="toSingleArray" />
<property name="name" nameId="tpck.1169194664001" value="prepend2" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7340198212831169645" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="head" />
<property name="name" nameId="tpck.1169194664001" value="head1" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7340198212831169646" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
@ -330,7 +421,7 @@
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7340198212831169667" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.AssignmentExpression" typeId="tpee.1068498886294" id="7340198212831169668" nodeInfo="nn">
<node role="rValue" roleId="tpee.1068498886297" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7340198212831169669" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831169645" resolveInfo="head" />
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831169645" resolveInfo="head1" />
</node>
<node role="lValue" roleId="tpee.1068498886295" type="tpee.ArrayAccessExpression" typeId="tpee.1173175405605" id="7340198212831169670" nodeInfo="nn">
<node role="index" roleId="tpee.1173175577737" type="tpee.IntegerConstant" typeId="tpee.1068580320020" id="7340198212831169671" nodeInfo="nn">
@ -390,9 +481,9 @@
</node>
<node role="member" roleId="tpee.5375687026011219971" type="tpee.PlaceholderMember" typeId="tpee.1465982738277781862" id="7340198212831176254" nodeInfo="ngu" />
<node role="member" roleId="tpee.5375687026011219971" type="tpee.StaticMethodDeclaration" typeId="tpee.1081236700938" id="7340198212831174566" nodeInfo="igu">
<property name="name" nameId="tpck.1169194664001" value="toSingleArray" />
<property name="name" nameId="tpck.1169194664001" value="prepend3" />
<node role="parameter" roleId="tpee.1068580123134" type="tpee.ParameterDeclaration" typeId="tpee.1068498886292" id="7340198212831174567" nodeInfo="ir">
<property name="name" nameId="tpck.1169194664001" value="head" />
<property name="name" nameId="tpck.1169194664001" value="head1" />
<node role="type" roleId="tpee.5680397130376446158" type="tpee.ClassifierType" typeId="tpee.1107535904670" id="7340198212831174568" nodeInfo="in">
<link role="classifier" roleId="tpee.1107535924139" targetNodeId="e2lb.~Object" resolveInfo="Object" />
</node>
@ -457,7 +548,7 @@
<node role="statement" roleId="tpee.1068581517665" type="tpee.ExpressionStatement" typeId="tpee.1068580123155" id="7340198212831174591" nodeInfo="nn">
<node role="expression" roleId="tpee.1068580123156" type="tpee.AssignmentExpression" typeId="tpee.1068498886294" id="7340198212831174592" nodeInfo="nn">
<node role="rValue" roleId="tpee.1068498886297" type="tpee.VariableReference" typeId="tpee.1068498886296" id="7340198212831174593" nodeInfo="nn">
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831174567" resolveInfo="head" />
<link role="variableDeclaration" roleId="tpee.1068581517664" targetNodeId="7340198212831174567" resolveInfo="head1" />
</node>
<node role="lValue" roleId="tpee.1068498886295" type="tpee.ArrayAccessExpression" typeId="tpee.1173175405605" id="7340198212831174594" nodeInfo="nn">
<node role="index" roleId="tpee.1173175577737" type="tpee.IntegerConstant" typeId="tpee.1068580320020" id="7340198212831174595" nodeInfo="nn">