Browse Source

Added new connection patterns to metamodel. Updated editors. Bug

correction in MWE2 generation scripts of XText editors.
master
Arnaud Dieumegard 6 years ago
parent
commit
3bf1aadfd6
  1. 7
      eclipse/features/com.irtsaintexupery.pseim.feature/feature.xml
  2. 8
      eclipse/plugins/com.irtsaintexupery.pseim.edit/plugin.properties
  3. 17
      eclipse/plugins/com.irtsaintexupery.pseim/model/pseim.ecore
  4. 9
      eclipse/plugins/com.irtsaintexupery.pseim/model/pseim.genmodel
  5. 1055
      eclipse/plugins/com.irtsaintexupery.pseim/model/seim.aird
  6. 220
      eclipse/plugins/com.irtsaintexupery.pseim/src-gen/com/irtsaintexupery/pseim/pseim/LinkType.java
  7. 2
      eclipse/plugins/com.irtsaintexupery.pseim/src-gen/com/irtsaintexupery/pseim/pseim/impl/PseimFactoryImpl.java
  8. 9
      eclipse/plugins/com.irtsaintexupery.pseim/src-gen/com/irtsaintexupery/pseim/pseim/impl/PseimPackageImpl.java
  9. 48
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPattern.g
  10. 36
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPattern.tokens
  11. 441
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPatternLexer.java
  12. 1297
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPatternParser.java
  13. BIN
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/Pattern.xtextbin
  14. 62
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPattern.g
  15. 16
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPattern.tokens
  16. 375
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPatternLexer.java
  17. 192
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPatternParser.java
  18. 20
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/serializer/PatternSemanticSequencer.java
  19. 82
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/services/PatternGrammarAccess.java
  20. 4
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src/com/irtsaintexupery/xtext/pseim/GeneratePattern.mwe2
  21. 4
      eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src/com/irtsaintexupery/xtext/pseim/Pattern.xtext
  22. 22
      eclipse/plugins/com.irtsaintexupery.xtext.pseim/src-gen/com/irtsaintexupery/xtext/serializer/PseimSemanticSequencer.java
  23. 8
      eclipse/plugins/com.irtsaintexupery.xtext.pseim/src/com/irtsaintexupery/xtext/GeneratePseim.mwe2

7
eclipse/features/com.irtsaintexupery.pseim.feature/feature.xml

@ -361,4 +361,11 @@ version(s), and exceptions or additional permissions here}."
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.irtsaintexupery.sirius.pseim"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
</feature> </feature>

8
eclipse/plugins/com.irtsaintexupery.pseim.edit/plugin.properties

@ -103,3 +103,11 @@ _UI_PatternPortDirection_UNSPECIFIED_literal = UNSPECIFIED
_UI_PatternPortDirection_IN_literal = IN _UI_PatternPortDirection_IN_literal = IN
_UI_PatternPortDirection_OUT_literal = OUT _UI_PatternPortDirection_OUT_literal = OUT
_UI_PatternPortDirection_INOUT_literal = INOUT _UI_PatternPortDirection_INOUT_literal = INOUT
_UI_LinkType_SHIFTC_literal = SHIFTC
_UI_LinkType_JOINC_literal = JOINC
_UI_LinkType_JOINP_literal = JOINP
_UI_LinkType_FORKC_literal = FORKC
_UI_LinkType_FORKP_literal = FORKP
_UI_LinkType_SHIFTP_literal = SHIFTP
_UI_LinkType_FLATTENC_literal = FLATTENC
_UI_LinkType_LAST_literal = LAST

17
eclipse/plugins/com.irtsaintexupery.pseim/model/pseim.ecore

@ -67,11 +67,18 @@
eType="ecore:EClass seim.ecore#//PropertyHolder"/> eType="ecore:EClass seim.ecore#//PropertyHolder"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="LinkType"> <eClassifiers xsi:type="ecore:EEnum" name="LinkType">
<eLiterals name="TRANSPOSE"/> <eLiterals name="TRANSPOSE" value="4"/>
<eLiterals name="IDENTITY" value="1"/> <eLiterals name="IDENTITY"/>
<eLiterals name="SHIFT" value="2"/> <eLiterals name="SHIFTC" value="9"/>
<eLiterals name="FIRST" value="3"/> <eLiterals name="FIRST" value="1"/>
<eLiterals name="ROTATE" value="4"/> <eLiterals name="ROTATE" value="3"/>
<eLiterals name="JOINC" value="7"/>
<eLiterals name="JOINP" value="8"/>
<eLiterals name="FORKC" value="5"/>
<eLiterals name="FORKP" value="6"/>
<eLiterals name="SHIFTP" value="10"/>
<eLiterals name="FLATTENC" value="11"/>
<eLiterals name="LAST" value="2"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PatternComponent" eSuperTypes="#//MultiplicityElement #//IdentifiedElement seim.ecore#//Component"> <eClassifiers xsi:type="ecore:EClass" name="PatternComponent" eSuperTypes="#//MultiplicityElement #//IdentifiedElement seim.ecore#//Component">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">

9
eclipse/plugins/com.irtsaintexupery.pseim/model/pseim.genmodel

@ -39,9 +39,16 @@
<genEnums typeSafeEnumCompatible="false" ecoreEnum="pseim.ecore#//LinkType"> <genEnums typeSafeEnumCompatible="false" ecoreEnum="pseim.ecore#//LinkType">
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/TRANSPOSE"/> <genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/TRANSPOSE"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/IDENTITY"/> <genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/IDENTITY"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/SHIFT"/> <genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/SHIFTC"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/FIRST"/> <genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/FIRST"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/ROTATE"/> <genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/ROTATE"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/JOINC"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/JOINP"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/FORKC"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/FORKP"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/SHIFTP"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/FLATTENC"/>
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//LinkType/LAST"/>
</genEnums> </genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="pseim.ecore#//PatternPortDirection"> <genEnums typeSafeEnumCompatible="false" ecoreEnum="pseim.ecore#//PatternPortDirection">
<genEnumLiterals ecoreEnumLiteral="pseim.ecore#//PatternPortDirection/UNSPECIFIED"/> <genEnumLiterals ecoreEnumLiteral="pseim.ecore#//PatternPortDirection/UNSPECIFIED"/>

1055
eclipse/plugins/com.irtsaintexupery.pseim/model/seim.aird

File diff suppressed because it is too large Load Diff

220
eclipse/plugins/com.irtsaintexupery.pseim/src-gen/com/irtsaintexupery/pseim/pseim/LinkType.java

@ -36,7 +36,7 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
TRANSPOSE(0, "TRANSPOSE", "TRANSPOSE"), TRANSPOSE(4, "TRANSPOSE", "TRANSPOSE"),
/** /**
* The '<em><b>IDENTITY</b></em>' literal object. * The '<em><b>IDENTITY</b></em>' literal object.
@ -46,18 +46,17 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
IDENTITY(1, "IDENTITY", "IDENTITY"), IDENTITY(0, "IDENTITY", "IDENTITY"),
/** /**
* The '<em><b>SHIFT</b></em>' literal object. * The '<em><b>SHIFTC</b></em>' literal object.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @see #SHIFT_VALUE * @see #SHIFTC_VALUE
* @generated * @generated
* @ordered * @ordered
*/ */
SHIFT(2, "SHIFT", "SHIFT"), SHIFTC(9, "SHIFTC", "SHIFTC"),
/** /**
* The '<em><b>FIRST</b></em>' literal object. * The '<em><b>FIRST</b></em>' literal object.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
@ -66,7 +65,7 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
FIRST(3, "FIRST", "FIRST"), FIRST(1, "FIRST", "FIRST"),
/** /**
* The '<em><b>ROTATE</b></em>' literal object. * The '<em><b>ROTATE</b></em>' literal object.
@ -76,7 +75,70 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
ROTATE(4, "ROTATE", "ROTATE"); ROTATE(3, "ROTATE", "ROTATE"),
/**
* The '<em><b>JOINC</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #JOINC_VALUE
* @generated
* @ordered
*/
JOINC(7, "JOINC", "JOINC"),
/**
* The '<em><b>JOINP</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #JOINP_VALUE
* @generated
* @ordered
*/
JOINP(8, "JOINP", "JOINP"),
/**
* The '<em><b>FORKC</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FORKC_VALUE
* @generated
* @ordered
*/
FORKC(5, "FORKC", "FORKC"),
/**
* The '<em><b>FORKP</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FORKP_VALUE
* @generated
* @ordered
*/
FORKP(6, "FORKP", "FORKP"),
/**
* The '<em><b>SHIFTP</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SHIFTP_VALUE
* @generated
* @ordered
*/
SHIFTP(10, "SHIFTP", "SHIFTP"),
/**
* The '<em><b>FLATTENC</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FLATTENC_VALUE
* @generated
* @ordered
*/
FLATTENC(11, "FLATTENC", "FLATTENC"),
/**
* The '<em><b>LAST</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LAST_VALUE
* @generated
* @ordered
*/
LAST(2, "LAST", "LAST");
/** /**
* The '<em><b>TRANSPOSE</b></em>' literal value. * The '<em><b>TRANSPOSE</b></em>' literal value.
@ -91,7 +153,7 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
public static final int TRANSPOSE_VALUE = 0; public static final int TRANSPOSE_VALUE = 4;
/** /**
* The '<em><b>IDENTITY</b></em>' literal value. * The '<em><b>IDENTITY</b></em>' literal value.
@ -106,22 +168,22 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
public static final int IDENTITY_VALUE = 1; public static final int IDENTITY_VALUE = 0;
/** /**
* The '<em><b>SHIFT</b></em>' literal value. * The '<em><b>SHIFTC</b></em>' literal value.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <p> * <p>
* If the meaning of '<em><b>SHIFT</b></em>' literal object isn't clear, * If the meaning of '<em><b>SHIFTC</b></em>' literal object isn't clear,
* there really should be more of a description here... * there really should be more of a description here...
* </p> * </p>
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @see #SHIFT * @see #SHIFTC
* @model * @model
* @generated * @generated
* @ordered * @ordered
*/ */
public static final int SHIFT_VALUE = 2; public static final int SHIFTC_VALUE = 9;
/** /**
* The '<em><b>FIRST</b></em>' literal value. * The '<em><b>FIRST</b></em>' literal value.
@ -136,7 +198,7 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
public static final int FIRST_VALUE = 3; public static final int FIRST_VALUE = 1;
/** /**
* The '<em><b>ROTATE</b></em>' literal value. * The '<em><b>ROTATE</b></em>' literal value.
@ -151,7 +213,112 @@ public enum LinkType implements Enumerator {
* @generated * @generated
* @ordered * @ordered
*/ */
public static final int ROTATE_VALUE = 4; public static final int ROTATE_VALUE = 3;
/**
* The '<em><b>JOINC</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>JOINC</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #JOINC
* @model
* @generated
* @ordered
*/
public static final int JOINC_VALUE = 7;
/**
* The '<em><b>JOINP</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>JOINP</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #JOINP
* @model
* @generated
* @ordered
*/
public static final int JOINP_VALUE = 8;
/**
* The '<em><b>FORKC</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>FORKC</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #FORKC
* @model
* @generated
* @ordered
*/
public static final int FORKC_VALUE = 5;
/**
* The '<em><b>FORKP</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>FORKP</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #FORKP
* @model
* @generated
* @ordered
*/
public static final int FORKP_VALUE = 6;
/**
* The '<em><b>SHIFTP</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>SHIFTP</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #SHIFTP
* @model
* @generated
* @ordered
*/
public static final int SHIFTP_VALUE = 10;
/**
* The '<em><b>FLATTENC</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>FLATTENC</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #FLATTENC
* @model
* @generated
* @ordered
*/
public static final int FLATTENC_VALUE = 11;
/**
* The '<em><b>LAST</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>LAST</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #LAST
* @model
* @generated
* @ordered
*/
public static final int LAST_VALUE = 2;
/** /**
* An array of all the '<em><b>Link Type</b></em>' enumerators. * An array of all the '<em><b>Link Type</b></em>' enumerators.
@ -159,7 +326,8 @@ public enum LinkType implements Enumerator {
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
private static final LinkType[] VALUES_ARRAY = new LinkType[] { TRANSPOSE, IDENTITY, SHIFT, FIRST, ROTATE, }; private static final LinkType[] VALUES_ARRAY = new LinkType[] { TRANSPOSE, IDENTITY, SHIFTC, FIRST, ROTATE, JOINC,
JOINP, FORKC, FORKP, SHIFTP, FLATTENC, LAST, };
/** /**
* A public read-only list of all the '<em><b>Link Type</b></em>' enumerators. * A public read-only list of all the '<em><b>Link Type</b></em>' enumerators.
@ -219,12 +387,26 @@ public enum LinkType implements Enumerator {
return TRANSPOSE; return TRANSPOSE;
case IDENTITY_VALUE: case IDENTITY_VALUE:
return IDENTITY; return IDENTITY;
case SHIFT_VALUE: case SHIFTC_VALUE:
return SHIFT; return SHIFTC;
case FIRST_VALUE: case FIRST_VALUE:
return FIRST; return FIRST;
case ROTATE_VALUE: case ROTATE_VALUE:
return ROTATE; return ROTATE;
case JOINC_VALUE:
return JOINC;
case JOINP_VALUE:
return JOINP;
case FORKC_VALUE:
return FORKC;
case FORKP_VALUE:
return FORKP;
case SHIFTP_VALUE:
return SHIFTP;
case FLATTENC_VALUE:
return FLATTENC;
case LAST_VALUE:
return LAST;
} }
return null; return null;
} }

2
eclipse/plugins/com.irtsaintexupery.pseim/src-gen/com/irtsaintexupery/pseim/pseim/impl/PseimFactoryImpl.java

@ -13,8 +13,6 @@
package com.irtsaintexupery.pseim.pseim.impl; package com.irtsaintexupery.pseim.pseim.impl;
import com.irtsaintexupery.pseim.pseim.*; import com.irtsaintexupery.pseim.pseim.*;
import com.irtsaintexupery.pseim.seim.Model;
import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EDataType; import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EObject;

9
eclipse/plugins/com.irtsaintexupery.pseim/src-gen/com/irtsaintexupery/pseim/pseim/impl/PseimPackageImpl.java

@ -705,9 +705,16 @@ public class PseimPackageImpl extends EPackageImpl implements PseimPackage {
initEEnum(linkTypeEEnum, LinkType.class, "LinkType"); initEEnum(linkTypeEEnum, LinkType.class, "LinkType");
addEEnumLiteral(linkTypeEEnum, LinkType.TRANSPOSE); addEEnumLiteral(linkTypeEEnum, LinkType.TRANSPOSE);
addEEnumLiteral(linkTypeEEnum, LinkType.IDENTITY); addEEnumLiteral(linkTypeEEnum, LinkType.IDENTITY);
addEEnumLiteral(linkTypeEEnum, LinkType.SHIFT); addEEnumLiteral(linkTypeEEnum, LinkType.SHIFTC);
addEEnumLiteral(linkTypeEEnum, LinkType.FIRST); addEEnumLiteral(linkTypeEEnum, LinkType.FIRST);
addEEnumLiteral(linkTypeEEnum, LinkType.ROTATE); addEEnumLiteral(linkTypeEEnum, LinkType.ROTATE);
addEEnumLiteral(linkTypeEEnum, LinkType.JOINC);
addEEnumLiteral(linkTypeEEnum, LinkType.JOINP);
addEEnumLiteral(linkTypeEEnum, LinkType.FORKC);
addEEnumLiteral(linkTypeEEnum, LinkType.FORKP);
addEEnumLiteral(linkTypeEEnum, LinkType.SHIFTP);
addEEnumLiteral(linkTypeEEnum, LinkType.FLATTENC);
addEEnumLiteral(linkTypeEEnum, LinkType.LAST);
initEEnum(patternPortDirectionEEnum, PatternPortDirection.class, "PatternPortDirection"); initEEnum(patternPortDirectionEEnum, PatternPortDirection.class, "PatternPortDirection");
addEEnumLiteral(patternPortDirectionEEnum, PatternPortDirection.UNSPECIFIED); addEEnumLiteral(patternPortDirectionEEnum, PatternPortDirection.UNSPECIFIED);

48
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPattern.g

@ -378,9 +378,51 @@ rule__LinkType__Alternatives
) )
| |
( (
{ before(grammarAccess.getLinkTypeAccess().getSHIFTEnumLiteralDeclaration_4()); } { before(grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4()); }
('-{Shift}->') ('-{ShiftC}->')
{ after(grammarAccess.getLinkTypeAccess().getSHIFTEnumLiteralDeclaration_4()); } { after(grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5()); }
('-{ShiftP}->')
{ after(grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6()); }
('-{FlattenC}->')
{ after(grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7()); }
('-{ForkC}->')
{ after(grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8()); }
('-{ForkP}->')
{ after(grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9()); }
('-{JoinC}->')
{ after(grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10()); }
('-{JoinP}->')
{ after(grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10()); }
)
|
(
{ before(grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11()); }
('-{Last}->')
{ after(grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11()); }
) )
; ;
finally { finally {

36
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPattern.tokens

@ -1,22 +1,29 @@
'('=21 '('=28
')'=22 ')'=29
','=23 ','=30
'-{First}->'=17 '-{First}->'=17
'-{FlattenC}->'=21
'-{ForkC}->'=22
'-{ForkP}->'=23
'-{Identity}->'=16 '-{Identity}->'=16
'-{JoinC}->'=24
'-{JoinP}->'=25
'-{Last}->'=26
'-{Rotate}->'=18 '-{Rotate}->'=18
'-{Shift}->'=19 '-{ShiftC}->'=19
'-{ShiftP}->'=20
'-{Transpose}->'=15 '-{Transpose}->'=15
'.'=29 '.'=36
'['=27 '['=34
']'=28 ']'=35
'component'=26 'component'=33
'in'=12 'in'=12
'inout'=14 'inout'=14
'out'=13 'out'=13
'pattern'=20 'pattern'=27
'unspec'=11 'unspec'=11
'{'=24 '{'=31
'}'=25 '}'=32
RULE_ANY_OTHER=10 RULE_ANY_OTHER=10
RULE_ID=4 RULE_ID=4
RULE_INT=5 RULE_INT=5
@ -43,3 +50,10 @@ T__26=26
T__27=27 T__27=27
T__28=28 T__28=28
T__29=29 T__29=29
T__30=30
T__31=31
T__32=32
T__33=33
T__34=34
T__35=35
T__36=36

441
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPatternLexer.java

@ -20,10 +20,17 @@ public class InternalPatternLexer extends Lexer {
public static final int T__17=17; public static final int T__17=17;
public static final int T__18=18; public static final int T__18=18;
public static final int T__11=11; public static final int T__11=11;
public static final int T__33=33;
public static final int T__12=12; public static final int T__12=12;
public static final int T__34=34;
public static final int T__13=13; public static final int T__13=13;
public static final int T__35=35;
public static final int T__14=14; public static final int T__14=14;
public static final int T__36=36;
public static final int EOF=-1; public static final int EOF=-1;
public static final int T__30=30;
public static final int T__31=31;
public static final int T__32=32;
public static final int RULE_ID=4; public static final int RULE_ID=4;
public static final int RULE_WS=9; public static final int RULE_WS=9;
public static final int RULE_ANY_OTHER=10; public static final int RULE_ANY_OTHER=10;
@ -226,10 +233,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__19; int _type = T__19;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:19:7: ( '-{Shift}->' ) // InternalPattern.g:19:7: ( '-{ShiftC}->' )
// InternalPattern.g:19:9: '-{Shift}->' // InternalPattern.g:19:9: '-{ShiftC}->'
{ {
match("-{Shift}->"); match("-{ShiftC}->");
} }
@ -247,10 +254,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__20; int _type = T__20;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:20:7: ( 'pattern' ) // InternalPattern.g:20:7: ( '-{ShiftP}->' )
// InternalPattern.g:20:9: 'pattern' // InternalPattern.g:20:9: '-{ShiftP}->'
{ {
match("pattern"); match("-{ShiftP}->");
} }
@ -268,10 +275,11 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__21; int _type = T__21;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:21:7: ( '(' ) // InternalPattern.g:21:7: ( '-{FlattenC}->' )
// InternalPattern.g:21:9: '(' // InternalPattern.g:21:9: '-{FlattenC}->'
{ {
match('('); match("-{FlattenC}->");
} }
@ -288,10 +296,11 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__22; int _type = T__22;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:22:7: ( ')' ) // InternalPattern.g:22:7: ( '-{ForkC}->' )
// InternalPattern.g:22:9: ')' // InternalPattern.g:22:9: '-{ForkC}->'
{ {
match(')'); match("-{ForkC}->");
} }
@ -308,10 +317,11 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__23; int _type = T__23;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:23:7: ( ',' ) // InternalPattern.g:23:7: ( '-{ForkP}->' )
// InternalPattern.g:23:9: ',' // InternalPattern.g:23:9: '-{ForkP}->'
{ {
match(','); match("-{ForkP}->");
} }
@ -328,10 +338,11 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__24; int _type = T__24;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:24:7: ( '{' ) // InternalPattern.g:24:7: ( '-{JoinC}->' )
// InternalPattern.g:24:9: '{' // InternalPattern.g:24:9: '-{JoinC}->'
{ {
match('{'); match("-{JoinC}->");
} }
@ -348,10 +359,11 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__25; int _type = T__25;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:25:7: ( '}' ) // InternalPattern.g:25:7: ( '-{JoinP}->' )
// InternalPattern.g:25:9: '}' // InternalPattern.g:25:9: '-{JoinP}->'
{ {
match('}'); match("-{JoinP}->");
} }
@ -368,10 +380,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__26; int _type = T__26;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:26:7: ( 'component' ) // InternalPattern.g:26:7: ( '-{Last}->' )
// InternalPattern.g:26:9: 'component' // InternalPattern.g:26:9: '-{Last}->'
{ {
match("component"); match("-{Last}->");
} }
@ -389,10 +401,11 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__27; int _type = T__27;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:27:7: ( '[' ) // InternalPattern.g:27:7: ( 'pattern' )
// InternalPattern.g:27:9: '[' // InternalPattern.g:27:9: 'pattern'
{ {
match('['); match("pattern");
} }
@ -409,10 +422,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__28; int _type = T__28;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:28:7: ( ']' ) // InternalPattern.g:28:7: ( '(' )
// InternalPattern.g:28:9: ']' // InternalPattern.g:28:9: '('
{ {
match(']'); match('(');
} }
@ -429,10 +442,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__29; int _type = T__29;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:29:7: ( '.' ) // InternalPattern.g:29:7: ( ')' )
// InternalPattern.g:29:9: '.' // InternalPattern.g:29:9: ')'
{ {
match('.'); match(')');
} }
@ -444,15 +457,156 @@ public class InternalPatternLexer extends Lexer {
} }
// $ANTLR end "T__29" // $ANTLR end "T__29"
// $ANTLR start "T__30"
public final void mT__30() throws RecognitionException {
try {
int _type = T__30;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:30:7: ( ',' )
// InternalPattern.g:30:9: ','
{
match(',');
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__30"
// $ANTLR start "T__31"
public final void mT__31() throws RecognitionException {
try {
int _type = T__31;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:31:7: ( '{' )
// InternalPattern.g:31:9: '{'
{
match('{');
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__31"
// $ANTLR start "T__32"
public final void mT__32() throws RecognitionException {
try {
int _type = T__32;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:32:7: ( '}' )
// InternalPattern.g:32:9: '}'
{
match('}');
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__32"
// $ANTLR start "T__33"
public final void mT__33() throws RecognitionException {
try {
int _type = T__33;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:33:7: ( 'component' )
// InternalPattern.g:33:9: 'component'
{
match("component");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__33"
// $ANTLR start "T__34"
public final void mT__34() throws RecognitionException {
try {
int _type = T__34;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:34:7: ( '[' )
// InternalPattern.g:34:9: '['
{
match('[');
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__34"
// $ANTLR start "T__35"
public final void mT__35() throws RecognitionException {
try {
int _type = T__35;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:35:7: ( ']' )
// InternalPattern.g:35:9: ']'
{
match(']');
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__35"
// $ANTLR start "T__36"
public final void mT__36() throws RecognitionException {
try {
int _type = T__36;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:36:7: ( '.' )
// InternalPattern.g:36:9: '.'
{
match('.');
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__36"
// $ANTLR start "RULE_ID" // $ANTLR start "RULE_ID"
public final void mRULE_ID() throws RecognitionException { public final void mRULE_ID() throws RecognitionException {
try { try {
int _type = RULE_ID; int _type = RULE_ID;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1867:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) // InternalPattern.g:1909:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
// InternalPattern.g:1867:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* // InternalPattern.g:1909:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
{ {
// InternalPattern.g:1867:11: ( '^' )? // InternalPattern.g:1909:11: ( '^' )?
int alt1=2; int alt1=2;
int LA1_0 = input.LA(1); int LA1_0 = input.LA(1);
@ -461,7 +615,7 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt1) { switch (alt1) {
case 1 : case 1 :
// InternalPattern.g:1867:11: '^' // InternalPattern.g:1909:11: '^'
{ {
match('^'); match('^');
@ -479,7 +633,7 @@ public class InternalPatternLexer extends Lexer {
recover(mse); recover(mse);
throw mse;} throw mse;}
// InternalPattern.g:1867:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* // InternalPattern.g:1909:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
loop2: loop2:
do { do {
int alt2=2; int alt2=2;
@ -528,10 +682,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_INT; int _type = RULE_INT;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1869:10: ( ( '0' .. '9' )+ ) // InternalPattern.g:1911:10: ( ( '0' .. '9' )+ )
// InternalPattern.g:1869:12: ( '0' .. '9' )+ // InternalPattern.g:1911:12: ( '0' .. '9' )+
{ {
// InternalPattern.g:1869:12: ( '0' .. '9' )+ // InternalPattern.g:1911:12: ( '0' .. '9' )+
int cnt3=0; int cnt3=0;
loop3: loop3:
do { do {
@ -545,7 +699,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt3) { switch (alt3) {
case 1 : case 1 :
// InternalPattern.g:1869:13: '0' .. '9' // InternalPattern.g:1911:13: '0' .. '9'
{ {
matchRange('0','9'); matchRange('0','9');
@ -577,10 +731,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_STRING; int _type = RULE_STRING;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1871:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) ) // InternalPattern.g:1913:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
// InternalPattern.g:1871:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) // InternalPattern.g:1913:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
{ {
// InternalPattern.g:1871:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) // InternalPattern.g:1913:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
int alt6=2; int alt6=2;
int LA6_0 = input.LA(1); int LA6_0 = input.LA(1);
@ -598,10 +752,10 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt6) { switch (alt6) {
case 1 : case 1 :
// InternalPattern.g:1871:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' // InternalPattern.g:1913:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
{ {
match('\"'); match('\"');
// InternalPattern.g:1871:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* // InternalPattern.g:1913:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
loop4: loop4:
do { do {
int alt4=3; int alt4=3;
@ -617,7 +771,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt4) { switch (alt4) {
case 1 : case 1 :
// InternalPattern.g:1871:21: '\\\\' . // InternalPattern.g:1913:21: '\\\\' .
{ {
match('\\'); match('\\');
matchAny(); matchAny();
@ -625,7 +779,7 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 2 : case 2 :
// InternalPattern.g:1871:28: ~ ( ( '\\\\' | '\"' ) ) // InternalPattern.g:1913:28: ~ ( ( '\\\\' | '\"' ) )
{ {
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume(); input.consume();
@ -650,10 +804,10 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 2 : case 2 :
// InternalPattern.g:1871:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' // InternalPattern.g:1913:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
{ {
match('\''); match('\'');
// InternalPattern.g:1871:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* // InternalPattern.g:1913:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
loop5: loop5:
do { do {
int alt5=3; int alt5=3;
@ -669,7 +823,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt5) { switch (alt5) {
case 1 : case 1 :
// InternalPattern.g:1871:54: '\\\\' . // InternalPattern.g:1913:54: '\\\\' .
{ {
match('\\'); match('\\');
matchAny(); matchAny();
@ -677,7 +831,7 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 2 : case 2 :
// InternalPattern.g:1871:61: ~ ( ( '\\\\' | '\\'' ) ) // InternalPattern.g:1913:61: ~ ( ( '\\\\' | '\\'' ) )
{ {
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume(); input.consume();
@ -720,12 +874,12 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_ML_COMMENT; int _type = RULE_ML_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1873:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) // InternalPattern.g:1915:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
// InternalPattern.g:1873:19: '/*' ( options {greedy=false; } : . )* '*/' // InternalPattern.g:1915:19: '/*' ( options {greedy=false; } : . )* '*/'
{ {
match("/*"); match("/*");
// InternalPattern.g:1873:24: ( options {greedy=false; } : . )* // InternalPattern.g:1915:24: ( options {greedy=false; } : . )*
loop7: loop7:
do { do {
int alt7=2; int alt7=2;
@ -750,7 +904,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt7) { switch (alt7) {
case 1 : case 1 :
// InternalPattern.g:1873:52: . // InternalPattern.g:1915:52: .
{ {
matchAny(); matchAny();
@ -780,12 +934,12 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_SL_COMMENT; int _type = RULE_SL_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1875:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) // InternalPattern.g:1917:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
// InternalPattern.g:1875:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? // InternalPattern.g:1917:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
{ {
match("//"); match("//");
// InternalPattern.g:1875:24: (~ ( ( '\\n' | '\\r' ) ) )* // InternalPattern.g:1917:24: (~ ( ( '\\n' | '\\r' ) ) )*
loop8: loop8:
do { do {
int alt8=2; int alt8=2;
@ -798,7 +952,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt8) { switch (alt8) {
case 1 : case 1 :
// InternalPattern.g:1875:24: ~ ( ( '\\n' | '\\r' ) ) // InternalPattern.g:1917:24: ~ ( ( '\\n' | '\\r' ) )
{ {
if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
input.consume(); input.consume();
@ -818,7 +972,7 @@ public class InternalPatternLexer extends Lexer {
} }
} while (true); } while (true);
// InternalPattern.g:1875:40: ( ( '\\r' )? '\\n' )? // InternalPattern.g:1917:40: ( ( '\\r' )? '\\n' )?
int alt10=2; int alt10=2;
int LA10_0 = input.LA(1); int LA10_0 = input.LA(1);
@ -827,9 +981,9 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt10) { switch (alt10) {
case 1 : case 1 :
// InternalPattern.g:1875:41: ( '\\r' )? '\\n' // InternalPattern.g:1917:41: ( '\\r' )? '\\n'
{ {
// InternalPattern.g:1875:41: ( '\\r' )? // InternalPattern.g:1917:41: ( '\\r' )?
int alt9=2; int alt9=2;
int LA9_0 = input.LA(1); int LA9_0 = input.LA(1);
@ -838,7 +992,7 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt9) { switch (alt9) {
case 1 : case 1 :
// InternalPattern.g:1875:41: '\\r' // InternalPattern.g:1917:41: '\\r'
{ {
match('\r'); match('\r');
@ -870,10 +1024,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_WS; int _type = RULE_WS;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1877:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) // InternalPattern.g:1919:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
// InternalPattern.g:1877:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ // InternalPattern.g:1919:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
{ {
// InternalPattern.g:1877:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ // InternalPattern.g:1919:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
int cnt11=0; int cnt11=0;
loop11: loop11:
do { do {
@ -927,8 +1081,8 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_ANY_OTHER; int _type = RULE_ANY_OTHER;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:1879:16: ( . ) // InternalPattern.g:1921:16: ( . )
// InternalPattern.g:1879:18: . // InternalPattern.g:1921:18: .
{ {
matchAny(); matchAny();
@ -943,8 +1097,8 @@ public class InternalPatternLexer extends Lexer {
// $ANTLR end "RULE_ANY_OTHER" // $ANTLR end "RULE_ANY_OTHER"
public void mTokens() throws RecognitionException { public void mTokens() throws RecognitionException {
// InternalPattern.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) // InternalPattern.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
int alt12=26; int alt12=33;
alt12 = dfa12.predict(input); alt12 = dfa12.predict(input);
switch (alt12) { switch (alt12) {
case 1 : case 1 :
@ -1081,49 +1235,98 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 20 : case 20 :
// InternalPattern.g:1:124: RULE_ID // InternalPattern.g:1:124: T__30
{ {
mRULE_ID(); mT__30();
} }
break; break;
case 21 : case 21 :
// InternalPattern.g:1:132: RULE_INT // InternalPattern.g:1:130: T__31
{ {
mRULE_INT(); mT__31();
} }
break; break;
case 22 : case 22 :
// InternalPattern.g:1:141: RULE_STRING // InternalPattern.g:1:136: T__32
{ {
mRULE_STRING(); mT__32();
} }
break; break;
case 23 : case 23 :
// InternalPattern.g:1:153: RULE_ML_COMMENT // InternalPattern.g:1:142: T__33
{ {
mRULE_ML_COMMENT(); mT__33();
} }
break; break;
case 24 : case 24 :
// InternalPattern.g:1:169: RULE_SL_COMMENT // InternalPattern.g:1:148: T__34
{ {
mRULE_SL_COMMENT(); mT__34();
} }
break; break;
case 25 : case 25 :
// InternalPattern.g:1:185: RULE_WS // InternalPattern.g:1:154: T__35
{ {
mRULE_WS(); mT__35();
} }
break; break;
case 26 : case 26 :
// InternalPattern.g:1:193: RULE_ANY_OTHER // InternalPattern.g:1:160: T__36
{
mT__36();
}
break;
case 27 :
// InternalPattern.g:1:166: RULE_ID
{
mRULE_ID();
}
break;
case 28 :
// InternalPattern.g:1:174: RULE_INT
{
mRULE_INT();
}
break;
case 29 :
// InternalPattern.g:1:183: RULE_STRING
{
mRULE_STRING();
}
break;
case 30 :
// InternalPattern.g:1:195: RULE_ML_COMMENT
{
mRULE_ML_COMMENT();
}
break;
case 31 :
// InternalPattern.g:1:211: RULE_SL_COMMENT
{
mRULE_SL_COMMENT();
}
break;
case 32 :
// InternalPattern.g:1:227: RULE_WS
{
mRULE_WS();
}
break;
case 33 :
// InternalPattern.g:1:235: RULE_ANY_OTHER
{ {
mRULE_ANY_OTHER(); mRULE_ANY_OTHER();
@ -1137,17 +1340,17 @@ public class InternalPatternLexer extends Lexer {
protected DFA12 dfa12 = new DFA12(this); protected DFA12 dfa12 = new DFA12(this);
static final String DFA12_eotS = static final String DFA12_eotS =
"\1\uffff\3\30\1\26\1\30\5\uffff\1\30\3\uffff\1\26\2\uffff\3\26\2\uffff\1\30\1\uffff\1\55\1\30\1\uffff\1\30\5\uffff\1\30\10\uffff\2\30\1\uffff\1\70\5\uffff\4\30\1\uffff\3\30\1\100\2\30\1\103\1\uffff\2\30\1\uffff\1\106\1\30\1\uffff\1\30\1\111\1\uffff"; "\1\uffff\3\30\1\26\1\30\5\uffff\1\30\3\uffff\1\26\2\uffff\3\26\2\uffff\1\30\1\uffff\1\55\1\30\1\uffff\1\30\5\uffff\1\30\10\uffff\2\30\1\uffff\1\72\7\uffff\4\30\6\uffff\3\30\1\112\3\uffff\2\30\1\120\4\uffff\2\30\6\uffff\1\132\1\30\3\uffff\1\30\1\135\1\uffff";
static final String DFA12_eofS = static final String DFA12_eofS =
"\112\uffff"; "\136\uffff";
static final String DFA12_minS = static final String DFA12_minS =
"\1\0\2\156\1\165\1\173\1\141\5\uffff\1\157\3\uffff\1\101\2\uffff\2\0\1\52\2\uffff\1\163\1\uffff\1\60\1\164\1\106\1\164\5\uffff\1\155\10\uffff\1\160\1\165\1\uffff\1\60\5\uffff\1\164\1\160\1\145\1\164\1\uffff\1\145\1\157\1\143\1\60\1\162\1\156\1\60\1\uffff\1\156\1\145\1\uffff\1\60\1\156\1\uffff\1\164\1\60\1\uffff"; "\1\0\2\156\1\165\1\173\1\141\5\uffff\1\157\3\uffff\1\101\2\uffff\2\0\1\52\2\uffff\1\163\1\uffff\1\60\1\164\1\106\1\164\5\uffff\1\155\10\uffff\1\160\1\165\1\uffff\1\60\2\uffff\1\151\1\uffff\1\150\1\157\1\uffff\1\164\1\160\1\145\1\164\3\uffff\1\162\2\151\1\145\1\157\1\143\1\60\1\153\1\146\1\156\1\162\1\156\1\60\1\uffff\1\103\1\164\1\103\1\156\1\145\3\uffff\1\103\2\uffff\1\60\1\156\3\uffff\1\164\1\60\1\uffff";
static final String DFA12_maxS = static final String DFA12_maxS =
"\1\uffff\2\156\1\165\1\173\1\141\5\uffff\1\157\3\uffff\1\172\2\uffff\2\uffff\1\57\2\uffff\1\163\1\uffff\1\172\1\164\1\124\1\164\5\uffff\1\155\10\uffff\1\160\1\165\1\uffff\1\172\5\uffff\1\164\1\160\1\145\1\164\1\uffff\1\145\1\157\1\143\1\172\1\162\1\156\1\172\1\uffff\1\156\1\145\1\uffff\1\172\1\156\1\uffff\1\164\1\172\1\uffff"; "\1\uffff\2\156\1\165\1\173\1\141\5\uffff\1\157\3\uffff\1\172\2\uffff\2\uffff\1\57\2\uffff\1\163\1\uffff\1\172\1\164\1\124\1\164\5\uffff\1\155\10\uffff\1\160\1\165\1\uffff\1\172\2\uffff\1\157\1\uffff\1\150\1\157\1\uffff\1\164\1\160\1\145\1\164\3\uffff\1\162\2\151\1\145\1\157\1\143\1\172\1\153\1\146\1\156\1\162\1\156\1\172\1\uffff\1\120\1\164\1\120\1\156\1\145\3\uffff\1\120\2\uffff\1\172\1\156\3\uffff\1\164\1\172\1\uffff";
static final String DFA12_acceptS = static final String DFA12_acceptS =
"\6\uffff\1\13\1\14\1\15\1\16\1\17\1\uffff\1\21\1\22\1\23\1\uffff\1\24\1\25\3\uffff\1\31\1\32\1\uffff\1\24\4\uffff\1\13\1\14\1\15\1\16\1\17\1\uffff\1\21\1\22\1\23\1\25\1\26\1\27\1\30\1\31\2\uffff\1\2\1\uffff\1\5\1\6\1\7\1\10\1\11\4\uffff\1\3\7\uffff\1\4\2\uffff\1\1\2\uffff\1\12\2\uffff\1\20"; "\6\uffff\1\22\1\23\1\24\1\25\1\26\1\uffff\1\30\1\31\1\32\1\uffff\1\33\1\34\3\uffff\1\40\1\41\1\uffff\1\33\4\uffff\1\22\1\23\1\24\1\25\1\26\1\uffff\1\30\1\31\1\32\1\34\1\35\1\36\1\37\1\40\2\uffff\1\2\1\uffff\1\5\1\6\1\uffff\1\10\2\uffff\1\20\4\uffff\1\3\1\7\1\13\15\uffff\1\4\5\uffff\1\1\1\14\1\15\1\uffff\1\16\1\17\2\uffff\1\11\1\12\1\21\2\uffff\1\27";
static final String DFA12_specialS = static final String DFA12_specialS =
"\1\1\21\uffff\1\2\1\0\66\uffff}>"; "\1\1\21\uffff\1\2\1\0\112\uffff}>";
static final String[] DFA12_transitionS = { static final String[] DFA12_transitionS = {
"\11\26\2\25\2\26\1\25\22\26\1\25\1\26\1\22\4\26\1\23\1\6\1\7\2\26\1\10\1\4\1\16\1\24\12\21\7\26\32\20\1\14\1\26\1\15\1\17\1\20\1\26\2\20\1\13\5\20\1\2\5\20\1\3\1\5\4\20\1\1\5\20\1\11\1\26\1\12\uff82\26", "\11\26\2\25\2\26\1\25\22\26\1\25\1\26\1\22\4\26\1\23\1\6\1\7\2\26\1\10\1\4\1\16\1\24\12\21\7\26\32\20\1\14\1\26\1\15\1\17\1\20\1\26\2\20\1\13\5\20\1\2\5\20\1\3\1\5\4\20\1\1\5\20\1\11\1\26\1\12\uff82\26",
"\1\27", "\1\27",
@ -1176,14 +1379,14 @@ public class InternalPatternLexer extends Lexer {
"", "",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30\1\54\13\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30\1\54\13\30",
"\1\56", "\1\56",
"\1\61\2\uffff\1\60\10\uffff\1\62\1\63\1\57", "\1\61\2\uffff\1\60\1\64\1\uffff\1\65\5\uffff\1\62\1\63\1\57",
"\1\64", "\1\66",
"", "",
"", "",
"", "",
"", "",
"", "",
"\1\65", "\1\67",
"", "",
"", "",
"", "",
@ -1192,35 +1395,55 @@ public class InternalPatternLexer extends Lexer {
"", "",
"", "",
"", "",
"\1\66", "\1\70",
"\1\67", "\1\71",
"", "",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"", "",
"", "",
"\1\73\2\uffff\1\74\2\uffff\1\75",
"", "",
"",
"",
"\1\71",
"\1\72",
"\1\73",
"\1\74",
"",
"\1\75",
"\1\76", "\1\76",
"\1\77", "\1\77",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "",
"\1\100",
"\1\101", "\1\101",
"\1\102", "\1\102",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\1\103",
"",
"",
"", "",
"\1\104", "\1\104",
"\1\105", "\1\105",
"\1\106",
"\1\107",
"\1\110",
"\1\111",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"\1\113",
"\1\114",
"\1\115",
"\1\116",
"\1\117",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"",
"\1\121\14\uffff\1\122",
"\1\123",
"\1\124\14\uffff\1\125",
"\1\126",
"\1\127",
"",
"",
"",
"\1\130\14\uffff\1\131",
"",
"", "",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"\1\107", "\1\133",
"", "",
"\1\110", "",
"",
"\1\134",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"" ""
}; };
@ -1255,7 +1478,7 @@ public class InternalPatternLexer extends Lexer {
this.transition = DFA12_transition; this.transition = DFA12_transition;
} }
public String getDescription() { public String getDescription() {
return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );"; return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
} }
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
IntStream input = _input; IntStream input = _input;

1297
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern.ide/src-gen/com/irtsaintexupery/xtext/pseim/ide/contentassist/antlr/internal/InternalPatternParser.java

File diff suppressed because it is too large Load Diff

BIN
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/Pattern.xtextbin

Binary file not shown.

62
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPattern.g

@ -727,10 +727,66 @@ ruleLinkType returns [Enumerator current=null]
) )
| |
( (
enumLiteral_4='-{Shift}->' enumLiteral_4='-{ShiftC}->'
{ {
$current = grammarAccess.getLinkTypeAccess().getSHIFTEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); $current = grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_4, grammarAccess.getLinkTypeAccess().getSHIFTEnumLiteralDeclaration_4()); newLeafNode(enumLiteral_4, grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4());
}
)
|
(
enumLiteral_5='-{ShiftP}->'
{
$current = grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_5, grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5());
}
)
|
(
enumLiteral_6='-{FlattenC}->'
{
$current = grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_6, grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6());
}
)
|
(
enumLiteral_7='-{ForkC}->'
{
$current = grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_7, grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7());
}
)
|
(
enumLiteral_8='-{ForkP}->'
{
$current = grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_8, grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8());
}
)
|
(
enumLiteral_9='-{JoinC}->'
{
$current = grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_9, grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9());
}
)
|
(
enumLiteral_10='-{JoinP}->'
{
$current = grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_10, grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10());
}
)
|
(
enumLiteral_11='-{Last}->'
{
$current = grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_11, grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11());
} }
) )
) )

16
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPattern.tokens

@ -2,9 +2,16 @@
')'=14 ')'=14
','=13 ','=13
'-{First}->'=27 '-{First}->'=27
'-{FlattenC}->'=31
'-{ForkC}->'=32
'-{ForkP}->'=33
'-{Identity}->'=26 '-{Identity}->'=26
'-{JoinC}->'=34
'-{JoinP}->'=35
'-{Last}->'=36
'-{Rotate}->'=28 '-{Rotate}->'=28
'-{Shift}->'=29 '-{ShiftC}->'=29
'-{ShiftP}->'=30
'-{Transpose}->'=25 '-{Transpose}->'=25
'.'=20 '.'=20
'['=18 '['=18
@ -43,3 +50,10 @@ T__26=26
T__27=27 T__27=27
T__28=28 T__28=28
T__29=29 T__29=29
T__30=30
T__31=31
T__32=32
T__33=33
T__34=34
T__35=35
T__36=36

375
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPatternLexer.java

@ -20,10 +20,17 @@ public class InternalPatternLexer extends Lexer {
public static final int T__17=17; public static final int T__17=17;
public static final int T__18=18; public static final int T__18=18;
public static final int T__11=11; public static final int T__11=11;
public static final int T__33=33;
public static final int T__12=12; public static final int T__12=12;
public static final int T__34=34;
public static final int T__13=13; public static final int T__13=13;
public static final int T__35=35;
public static final int T__14=14; public static final int T__14=14;
public static final int T__36=36;
public static final int EOF=-1; public static final int EOF=-1;
public static final int T__30=30;
public static final int T__31=31;
public static final int T__32=32;
public static final int RULE_ID=4; public static final int RULE_ID=4;
public static final int RULE_WS=9; public static final int RULE_WS=9;
public static final int RULE_ANY_OTHER=10; public static final int RULE_ANY_OTHER=10;
@ -428,10 +435,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = T__29; int _type = T__29;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:29:7: ( '-{Shift}->' ) // InternalPattern.g:29:7: ( '-{ShiftC}->' )
// InternalPattern.g:29:9: '-{Shift}->' // InternalPattern.g:29:9: '-{ShiftC}->'
{ {
match("-{Shift}->"); match("-{ShiftC}->");
} }
@ -444,15 +451,162 @@ public class InternalPatternLexer extends Lexer {
} }
// $ANTLR end "T__29" // $ANTLR end "T__29"
// $ANTLR start "T__30"
public final void mT__30() throws RecognitionException {
try {
int _type = T__30;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:30:7: ( '-{ShiftP}->' )
// InternalPattern.g:30:9: '-{ShiftP}->'
{
match("-{ShiftP}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__30"
// $ANTLR start "T__31"
public final void mT__31() throws RecognitionException {
try {
int _type = T__31;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:31:7: ( '-{FlattenC}->' )
// InternalPattern.g:31:9: '-{FlattenC}->'
{
match("-{FlattenC}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__31"
// $ANTLR start "T__32"
public final void mT__32() throws RecognitionException {
try {
int _type = T__32;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:32:7: ( '-{ForkC}->' )
// InternalPattern.g:32:9: '-{ForkC}->'
{
match("-{ForkC}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__32"
// $ANTLR start "T__33"
public final void mT__33() throws RecognitionException {
try {
int _type = T__33;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:33:7: ( '-{ForkP}->' )
// InternalPattern.g:33:9: '-{ForkP}->'
{
match("-{ForkP}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__33"
// $ANTLR start "T__34"
public final void mT__34() throws RecognitionException {
try {
int _type = T__34;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:34:7: ( '-{JoinC}->' )
// InternalPattern.g:34:9: '-{JoinC}->'
{
match("-{JoinC}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__34"
// $ANTLR start "T__35"
public final void mT__35() throws RecognitionException {
try {
int _type = T__35;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:35:7: ( '-{JoinP}->' )
// InternalPattern.g:35:9: '-{JoinP}->'
{
match("-{JoinP}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__35"
// $ANTLR start "T__36"
public final void mT__36() throws RecognitionException {
try {
int _type = T__36;
int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:36:7: ( '-{Last}->' )
// InternalPattern.g:36:9: '-{Last}->'
{
match("-{Last}->");
}
state.type = _type;
state.channel = _channel;
}
finally {
}
}
// $ANTLR end "T__36"
// $ANTLR start "RULE_ID" // $ANTLR start "RULE_ID"
public final void mRULE_ID() throws RecognitionException { public final void mRULE_ID() throws RecognitionException {
try { try {
int _type = RULE_ID; int _type = RULE_ID;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:739:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) // InternalPattern.g:795:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
// InternalPattern.g:739:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* // InternalPattern.g:795:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
{ {
// InternalPattern.g:739:11: ( '^' )? // InternalPattern.g:795:11: ( '^' )?
int alt1=2; int alt1=2;
int LA1_0 = input.LA(1); int LA1_0 = input.LA(1);
@ -461,7 +615,7 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt1) { switch (alt1) {
case 1 : case 1 :
// InternalPattern.g:739:11: '^' // InternalPattern.g:795:11: '^'
{ {
match('^'); match('^');
@ -479,7 +633,7 @@ public class InternalPatternLexer extends Lexer {
recover(mse); recover(mse);
throw mse;} throw mse;}
// InternalPattern.g:739:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* // InternalPattern.g:795:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
loop2: loop2:
do { do {
int alt2=2; int alt2=2;
@ -528,10 +682,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_INT; int _type = RULE_INT;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:741:10: ( ( '0' .. '9' )+ ) // InternalPattern.g:797:10: ( ( '0' .. '9' )+ )
// InternalPattern.g:741:12: ( '0' .. '9' )+ // InternalPattern.g:797:12: ( '0' .. '9' )+
{ {
// InternalPattern.g:741:12: ( '0' .. '9' )+ // InternalPattern.g:797:12: ( '0' .. '9' )+
int cnt3=0; int cnt3=0;
loop3: loop3:
do { do {
@ -545,7 +699,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt3) { switch (alt3) {
case 1 : case 1 :
// InternalPattern.g:741:13: '0' .. '9' // InternalPattern.g:797:13: '0' .. '9'
{ {
matchRange('0','9'); matchRange('0','9');
@ -577,10 +731,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_STRING; int _type = RULE_STRING;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:743:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) ) // InternalPattern.g:799:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
// InternalPattern.g:743:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) // InternalPattern.g:799:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
{ {
// InternalPattern.g:743:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) // InternalPattern.g:799:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
int alt6=2; int alt6=2;
int LA6_0 = input.LA(1); int LA6_0 = input.LA(1);
@ -598,10 +752,10 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt6) { switch (alt6) {
case 1 : case 1 :
// InternalPattern.g:743:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' // InternalPattern.g:799:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
{ {
match('\"'); match('\"');
// InternalPattern.g:743:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* // InternalPattern.g:799:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
loop4: loop4:
do { do {
int alt4=3; int alt4=3;
@ -617,7 +771,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt4) { switch (alt4) {
case 1 : case 1 :
// InternalPattern.g:743:21: '\\\\' . // InternalPattern.g:799:21: '\\\\' .
{ {
match('\\'); match('\\');
matchAny(); matchAny();
@ -625,7 +779,7 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 2 : case 2 :
// InternalPattern.g:743:28: ~ ( ( '\\\\' | '\"' ) ) // InternalPattern.g:799:28: ~ ( ( '\\\\' | '\"' ) )
{ {
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume(); input.consume();
@ -650,10 +804,10 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 2 : case 2 :
// InternalPattern.g:743:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' // InternalPattern.g:799:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
{ {
match('\''); match('\'');
// InternalPattern.g:743:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* // InternalPattern.g:799:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
loop5: loop5:
do { do {
int alt5=3; int alt5=3;
@ -669,7 +823,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt5) { switch (alt5) {
case 1 : case 1 :
// InternalPattern.g:743:54: '\\\\' . // InternalPattern.g:799:54: '\\\\' .
{ {
match('\\'); match('\\');
matchAny(); matchAny();
@ -677,7 +831,7 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 2 : case 2 :
// InternalPattern.g:743:61: ~ ( ( '\\\\' | '\\'' ) ) // InternalPattern.g:799:61: ~ ( ( '\\\\' | '\\'' ) )
{ {
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
input.consume(); input.consume();
@ -720,12 +874,12 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_ML_COMMENT; int _type = RULE_ML_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:745:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) // InternalPattern.g:801:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
// InternalPattern.g:745:19: '/*' ( options {greedy=false; } : . )* '*/' // InternalPattern.g:801:19: '/*' ( options {greedy=false; } : . )* '*/'
{ {
match("/*"); match("/*");
// InternalPattern.g:745:24: ( options {greedy=false; } : . )* // InternalPattern.g:801:24: ( options {greedy=false; } : . )*
loop7: loop7:
do { do {
int alt7=2; int alt7=2;
@ -750,7 +904,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt7) { switch (alt7) {
case 1 : case 1 :
// InternalPattern.g:745:52: . // InternalPattern.g:801:52: .
{ {
matchAny(); matchAny();
@ -780,12 +934,12 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_SL_COMMENT; int _type = RULE_SL_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:747:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) // InternalPattern.g:803:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
// InternalPattern.g:747:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? // InternalPattern.g:803:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
{ {
match("//"); match("//");
// InternalPattern.g:747:24: (~ ( ( '\\n' | '\\r' ) ) )* // InternalPattern.g:803:24: (~ ( ( '\\n' | '\\r' ) ) )*
loop8: loop8:
do { do {
int alt8=2; int alt8=2;
@ -798,7 +952,7 @@ public class InternalPatternLexer extends Lexer {
switch (alt8) { switch (alt8) {
case 1 : case 1 :
// InternalPattern.g:747:24: ~ ( ( '\\n' | '\\r' ) ) // InternalPattern.g:803:24: ~ ( ( '\\n' | '\\r' ) )
{ {
if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
input.consume(); input.consume();
@ -818,7 +972,7 @@ public class InternalPatternLexer extends Lexer {
} }
} while (true); } while (true);
// InternalPattern.g:747:40: ( ( '\\r' )? '\\n' )? // InternalPattern.g:803:40: ( ( '\\r' )? '\\n' )?
int alt10=2; int alt10=2;
int LA10_0 = input.LA(1); int LA10_0 = input.LA(1);
@ -827,9 +981,9 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt10) { switch (alt10) {
case 1 : case 1 :
// InternalPattern.g:747:41: ( '\\r' )? '\\n' // InternalPattern.g:803:41: ( '\\r' )? '\\n'
{ {
// InternalPattern.g:747:41: ( '\\r' )? // InternalPattern.g:803:41: ( '\\r' )?
int alt9=2; int alt9=2;
int LA9_0 = input.LA(1); int LA9_0 = input.LA(1);
@ -838,7 +992,7 @@ public class InternalPatternLexer extends Lexer {
} }
switch (alt9) { switch (alt9) {
case 1 : case 1 :
// InternalPattern.g:747:41: '\\r' // InternalPattern.g:803:41: '\\r'
{ {
match('\r'); match('\r');
@ -870,10 +1024,10 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_WS; int _type = RULE_WS;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:749:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) // InternalPattern.g:805:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
// InternalPattern.g:749:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ // InternalPattern.g:805:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
{ {
// InternalPattern.g:749:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ // InternalPattern.g:805:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
int cnt11=0; int cnt11=0;
loop11: loop11:
do { do {
@ -927,8 +1081,8 @@ public class InternalPatternLexer extends Lexer {
try { try {
int _type = RULE_ANY_OTHER; int _type = RULE_ANY_OTHER;
int _channel = DEFAULT_TOKEN_CHANNEL; int _channel = DEFAULT_TOKEN_CHANNEL;
// InternalPattern.g:751:16: ( . ) // InternalPattern.g:807:16: ( . )
// InternalPattern.g:751:18: . // InternalPattern.g:807:18: .
{ {
matchAny(); matchAny();
@ -943,8 +1097,8 @@ public class InternalPatternLexer extends Lexer {
// $ANTLR end "RULE_ANY_OTHER" // $ANTLR end "RULE_ANY_OTHER"
public void mTokens() throws RecognitionException { public void mTokens() throws RecognitionException {
// InternalPattern.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) // InternalPattern.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
int alt12=26; int alt12=33;
alt12 = dfa12.predict(input); alt12 = dfa12.predict(input);
switch (alt12) { switch (alt12) {
case 1 : case 1 :
@ -1081,49 +1235,98 @@ public class InternalPatternLexer extends Lexer {
} }
break; break;
case 20 : case 20 :
// InternalPattern.g:1:124: RULE_ID // InternalPattern.g:1:124: T__30
{ {
mRULE_ID(); mT__30();
} }
break; break;
case 21 : case 21 :
// InternalPattern.g:1:132: RULE_INT // InternalPattern.g:1:130: T__31
{ {
mRULE_INT(); mT__31();
} }
break; break;
case 22 : case 22 :
// InternalPattern.g:1:141: RULE_STRING // InternalPattern.g:1:136: T__32
{ {
mRULE_STRING(); mT__32();
} }
break; break;
case 23 : case 23 :
// InternalPattern.g:1:153: RULE_ML_COMMENT // InternalPattern.g:1:142: T__33
{ {
mRULE_ML_COMMENT(); mT__33();
} }
break; break;
case 24 : case 24 :
// InternalPattern.g:1:169: RULE_SL_COMMENT // InternalPattern.g:1:148: T__34
{ {
mRULE_SL_COMMENT(); mT__34();
} }
break; break;
case 25 : case 25 :
// InternalPattern.g:1:185: RULE_WS // InternalPattern.g:1:154: T__35
{ {
mRULE_WS(); mT__35();
} }
break; break;
case 26 : case 26 :
// InternalPattern.g:1:193: RULE_ANY_OTHER // InternalPattern.g:1:160: T__36
{
mT__36();
}
break;
case 27 :
// InternalPattern.g:1:166: RULE_ID
{
mRULE_ID();
}
break;
case 28 :
// InternalPattern.g:1:174: RULE_INT
{
mRULE_INT();
}
break;
case 29 :
// InternalPattern.g:1:183: RULE_STRING
{
mRULE_STRING();
}
break;
case 30 :
// InternalPattern.g:1:195: RULE_ML_COMMENT
{
mRULE_ML_COMMENT();
}
break;
case 31 :
// InternalPattern.g:1:211: RULE_SL_COMMENT
{
mRULE_SL_COMMENT();
}
break;
case 32 :
// InternalPattern.g:1:227: RULE_WS
{
mRULE_WS();
}
break;
case 33 :
// InternalPattern.g:1:235: RULE_ANY_OTHER
{ {
mRULE_ANY_OTHER(); mRULE_ANY_OTHER();
@ -1137,17 +1340,17 @@ public class InternalPatternLexer extends Lexer {
protected DFA12 dfa12 = new DFA12(this); protected DFA12 dfa12 = new DFA12(this);
static final String DFA12_eotS = static final String DFA12_eotS =
"\1\uffff\1\30\5\uffff\1\30\3\uffff\3\30\2\26\2\uffff\3\26\2\uffff\1\30\6\uffff\1\30\3\uffff\1\30\1\57\1\30\6\uffff\4\30\1\uffff\1\72\5\uffff\4\30\1\uffff\3\30\1\102\2\30\1\105\1\uffff\1\106\1\30\2\uffff\1\30\1\111\1\uffff"; "\1\uffff\1\30\5\uffff\1\30\3\uffff\3\30\2\26\2\uffff\3\26\2\uffff\1\30\6\uffff\1\30\3\uffff\1\30\1\57\1\30\6\uffff\4\30\1\uffff\1\74\7\uffff\4\30\6\uffff\3\30\1\114\3\uffff\2\30\1\122\4\uffff\1\130\1\30\7\uffff\1\30\2\uffff\1\135\1\uffff";
static final String DFA12_eofS = static final String DFA12_eofS =
"\112\uffff"; "\136\uffff";
static final String DFA12_minS = static final String DFA12_minS =
"\1\0\1\141\5\uffff\1\157\3\uffff\2\156\1\165\1\173\1\101\2\uffff\2\0\1\52\2\uffff\1\164\6\uffff\1\155\3\uffff\1\163\1\60\1\164\1\106\5\uffff\1\164\2\160\1\165\1\uffff\1\60\5\uffff\1\145\1\157\1\145\1\164\1\uffff\1\162\1\156\1\143\1\60\1\156\1\145\1\60\1\uffff\1\60\1\156\2\uffff\1\164\1\60\1\uffff"; "\1\0\1\141\5\uffff\1\157\3\uffff\2\156\1\165\1\173\1\101\2\uffff\2\0\1\52\2\uffff\1\164\6\uffff\1\155\3\uffff\1\163\1\60\1\164\1\106\5\uffff\1\164\2\160\1\165\1\uffff\1\60\2\uffff\1\151\1\uffff\1\150\1\157\1\uffff\1\145\1\157\1\145\1\164\3\uffff\1\162\2\151\1\162\1\156\1\143\1\60\1\153\1\146\2\156\1\145\1\60\1\uffff\1\103\1\164\1\103\1\60\1\156\3\uffff\1\103\3\uffff\1\164\2\uffff\1\60\1\uffff";
static final String DFA12_maxS = static final String DFA12_maxS =
"\1\uffff\1\141\5\uffff\1\157\3\uffff\2\156\1\165\1\173\1\172\2\uffff\2\uffff\1\57\2\uffff\1\164\6\uffff\1\155\3\uffff\1\163\1\172\1\164\1\124\5\uffff\1\164\2\160\1\165\1\uffff\1\172\5\uffff\1\145\1\157\1\145\1\164\1\uffff\1\162\1\156\1\143\1\172\1\156\1\145\1\172\1\uffff\1\172\1\156\2\uffff\1\164\1\172\1\uffff"; "\1\uffff\1\141\5\uffff\1\157\3\uffff\2\156\1\165\1\173\1\172\2\uffff\2\uffff\1\57\2\uffff\1\164\6\uffff\1\155\3\uffff\1\163\1\172\1\164\1\124\5\uffff\1\164\2\160\1\165\1\uffff\1\172\2\uffff\1\157\1\uffff\1\150\1\157\1\uffff\1\145\1\157\1\145\1\164\3\uffff\1\162\2\151\1\162\1\156\1\143\1\172\1\153\1\146\2\156\1\145\1\172\1\uffff\1\120\1\164\1\120\1\172\1\156\3\uffff\1\120\3\uffff\1\164\2\uffff\1\172\1\uffff";
static final String DFA12_acceptS = static final String DFA12_acceptS =
"\2\uffff\1\2\1\3\1\4\1\5\1\6\1\uffff\1\10\1\11\1\12\5\uffff\1\24\1\25\3\uffff\1\31\1\32\1\uffff\1\24\1\2\1\3\1\4\1\5\1\6\1\uffff\1\10\1\11\1\12\4\uffff\1\25\1\26\1\27\1\30\1\31\4\uffff\1\14\1\uffff\1\17\1\20\1\21\1\22\1\23\4\uffff\1\15\7\uffff\1\16\2\uffff\1\13\1\1\2\uffff\1\7"; "\2\uffff\1\2\1\3\1\4\1\5\1\6\1\uffff\1\10\1\11\1\12\5\uffff\1\33\1\34\3\uffff\1\40\1\41\1\uffff\1\33\1\2\1\3\1\4\1\5\1\6\1\uffff\1\10\1\11\1\12\4\uffff\1\34\1\35\1\36\1\37\1\40\4\uffff\1\14\1\uffff\1\17\1\20\1\uffff\1\22\2\uffff\1\32\4\uffff\1\15\1\21\1\25\15\uffff\1\16\5\uffff\1\13\1\26\1\27\1\uffff\1\30\1\31\1\1\1\uffff\1\23\1\24\1\uffff\1\7";
static final String DFA12_specialS = static final String DFA12_specialS =
"\1\1\21\uffff\1\2\1\0\66\uffff}>"; "\1\1\21\uffff\1\2\1\0\112\uffff}>";
static final String[] DFA12_transitionS = { static final String[] DFA12_transitionS = {
"\11\26\2\25\2\26\1\25\22\26\1\25\1\26\1\22\4\26\1\23\1\2\1\4\2\26\1\3\1\16\1\12\1\24\12\21\7\26\32\20\1\10\1\26\1\11\1\17\1\20\1\26\2\20\1\7\5\20\1\14\5\20\1\15\1\1\4\20\1\13\5\20\1\5\1\26\1\6\uff82\26", "\11\26\2\25\2\26\1\25\22\26\1\25\1\26\1\22\4\26\1\23\1\2\1\4\2\26\1\3\1\16\1\12\1\24\12\21\7\26\32\20\1\10\1\26\1\11\1\17\1\20\1\26\2\20\1\7\5\20\1\14\5\20\1\15\1\1\4\20\1\13\5\20\1\5\1\26\1\6\uff82\26",
"\1\27", "\1\27",
@ -1186,41 +1389,61 @@ public class InternalPatternLexer extends Lexer {
"\1\55", "\1\55",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30\1\56\13\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30\1\56\13\30",
"\1\60", "\1\60",
"\1\63\2\uffff\1\62\10\uffff\1\64\1\65\1\61", "\1\63\2\uffff\1\62\1\66\1\uffff\1\67\5\uffff\1\64\1\65\1\61",
"", "",
"", "",
"", "",
"", "",
"", "",
"\1\66",
"\1\67",
"\1\70", "\1\70",
"\1\71", "\1\71",
"\1\72",
"\1\73",
"", "",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"", "",
"", "",
"\1\75\2\uffff\1\76\2\uffff\1\77",
"", "",
"",
"",
"\1\73",
"\1\74",
"\1\75",
"\1\76",
"",
"\1\77",
"\1\100", "\1\100",
"\1\101", "\1\101",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "",
"\1\102",
"\1\103", "\1\103",
"\1\104", "\1\104",
"\1\105",
"",
"",
"",
"\1\106",
"\1\107",
"\1\110",
"\1\111",
"\1\112",
"\1\113",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"\1\115",
"\1\116",
"\1\117",
"\1\120",
"\1\121",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"", "",
"\1\123\14\uffff\1\124",
"\1\125",
"\1\126\14\uffff\1\127",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"\1\107", "\1\131",
"",
"",
"",
"\1\132\14\uffff\1\133",
"",
"",
"",
"\1\134",
"", "",
"", "",
"\1\110",
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30", "\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
"" ""
}; };
@ -1255,7 +1478,7 @@ public class InternalPatternLexer extends Lexer {
this.transition = DFA12_transition; this.transition = DFA12_transition;
} }
public String getDescription() { public String getDescription() {
return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );"; return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
} }
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
IntStream input = _input; IntStream input = _input;

192
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalPatternParser.java

@ -22,7 +22,7 @@ import java.util.ArrayList;
@SuppressWarnings("all") @SuppressWarnings("all")
public class InternalPatternParser extends AbstractInternalAntlrParser { public class InternalPatternParser extends AbstractInternalAntlrParser {
public static final String[] tokenNames = new String[] { public static final String[] tokenNames = new String[] {
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'pattern'", "'('", "','", "')'", "'{'", "'}'", "'component'", "'['", "']'", "'.'", "'unspec'", "'in'", "'out'", "'inout'", "'-{Transpose}->'", "'-{Identity}->'", "'-{First}->'", "'-{Rotate}->'", "'-{Shift}->'" "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'pattern'", "'('", "','", "')'", "'{'", "'}'", "'component'", "'['", "']'", "'.'", "'unspec'", "'in'", "'out'", "'inout'", "'-{Transpose}->'", "'-{Identity}->'", "'-{First}->'", "'-{Rotate}->'", "'-{ShiftC}->'", "'-{ShiftP}->'", "'-{FlattenC}->'", "'-{ForkC}->'", "'-{ForkP}->'", "'-{JoinC}->'", "'-{JoinP}->'", "'-{Last}->'"
}; };
public static final int RULE_STRING=6; public static final int RULE_STRING=6;
public static final int RULE_SL_COMMENT=8; public static final int RULE_SL_COMMENT=8;
@ -32,10 +32,17 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
public static final int T__17=17; public static final int T__17=17;
public static final int T__18=18; public static final int T__18=18;
public static final int T__11=11; public static final int T__11=11;
public static final int T__33=33;
public static final int T__12=12; public static final int T__12=12;
public static final int T__34=34;
public static final int T__13=13; public static final int T__13=13;
public static final int T__35=35;
public static final int T__14=14; public static final int T__14=14;
public static final int T__36=36;
public static final int EOF=-1; public static final int EOF=-1;
public static final int T__30=30;
public static final int T__31=31;
public static final int T__32=32;
public static final int RULE_ID=4; public static final int RULE_ID=4;
public static final int RULE_WS=9; public static final int RULE_WS=9;
public static final int RULE_ANY_OTHER=10; public static final int RULE_ANY_OTHER=10;
@ -1666,7 +1673,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
// $ANTLR start "ruleLinkType" // $ANTLR start "ruleLinkType"
// InternalPattern.g:689:1: ruleLinkType returns [Enumerator current=null] : ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{Shift}->' ) ) ; // InternalPattern.g:689:1: ruleLinkType returns [Enumerator current=null] : ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) ) ;
public final Enumerator ruleLinkType() throws RecognitionException { public final Enumerator ruleLinkType() throws RecognitionException {
Enumerator current = null; Enumerator current = null;
@ -1675,16 +1682,23 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
Token enumLiteral_2=null; Token enumLiteral_2=null;
Token enumLiteral_3=null; Token enumLiteral_3=null;
Token enumLiteral_4=null; Token enumLiteral_4=null;
Token enumLiteral_5=null;
Token enumLiteral_6=null;
Token enumLiteral_7=null;
Token enumLiteral_8=null;
Token enumLiteral_9=null;
Token enumLiteral_10=null;
Token enumLiteral_11=null;
enterRule(); enterRule();
try { try {
// InternalPattern.g:695:2: ( ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{Shift}->' ) ) ) // InternalPattern.g:695:2: ( ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) ) )
// InternalPattern.g:696:2: ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{Shift}->' ) ) // InternalPattern.g:696:2: ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) )
{ {
// InternalPattern.g:696:2: ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{Shift}->' ) ) // InternalPattern.g:696:2: ( (enumLiteral_0= '-{Transpose}->' ) | (enumLiteral_1= '-{Identity}->' ) | (enumLiteral_2= '-{First}->' ) | (enumLiteral_3= '-{Rotate}->' ) | (enumLiteral_4= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) )
int alt15=5; int alt15=12;
switch ( input.LA(1) ) { switch ( input.LA(1) ) {
case 25: case 25:
{ {
@ -1711,6 +1725,41 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
alt15=5; alt15=5;
} }
break; break;
case 30:
{
alt15=6;
}
break;
case 31:
{
alt15=7;
}
break;
case 32:
{
alt15=8;
}
break;
case 33:
{
alt15=9;
}
break;
case 34:
{
alt15=10;
}
break;
case 35:
{
alt15=11;
}
break;
case 36:
{
alt15=12;
}
break;
default: default:
NoViableAltException nvae = NoViableAltException nvae =
new NoViableAltException("", 15, 0, input); new NoViableAltException("", 15, 0, input);
@ -1788,15 +1837,134 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
} }
break; break;
case 5 : case 5 :
// InternalPattern.g:729:3: (enumLiteral_4= '-{Shift}->' ) // InternalPattern.g:729:3: (enumLiteral_4= '-{ShiftC}->' )
{ {
// InternalPattern.g:729:3: (enumLiteral_4= '-{Shift}->' ) // InternalPattern.g:729:3: (enumLiteral_4= '-{ShiftC}->' )
// InternalPattern.g:730:4: enumLiteral_4= '-{Shift}->' // InternalPattern.g:730:4: enumLiteral_4= '-{ShiftC}->'
{ {
enumLiteral_4=(Token)match(input,29,FOLLOW_2); enumLiteral_4=(Token)match(input,29,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getSHIFTEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); current = grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_4, grammarAccess.getLinkTypeAccess().getSHIFTEnumLiteralDeclaration_4()); newLeafNode(enumLiteral_4, grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4());
}
}
break;
case 6 :
// InternalPattern.g:737:3: (enumLiteral_5= '-{ShiftP}->' )
{
// InternalPattern.g:737:3: (enumLiteral_5= '-{ShiftP}->' )
// InternalPattern.g:738:4: enumLiteral_5= '-{ShiftP}->'
{
enumLiteral_5=(Token)match(input,30,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_5, grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5());
}
}
break;
case 7 :
// InternalPattern.g:745:3: (enumLiteral_6= '-{FlattenC}->' )
{
// InternalPattern.g:745:3: (enumLiteral_6= '-{FlattenC}->' )
// InternalPattern.g:746:4: enumLiteral_6= '-{FlattenC}->'
{
enumLiteral_6=(Token)match(input,31,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_6, grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6());
}
}
break;
case 8 :
// InternalPattern.g:753:3: (enumLiteral_7= '-{ForkC}->' )
{
// InternalPattern.g:753:3: (enumLiteral_7= '-{ForkC}->' )
// InternalPattern.g:754:4: enumLiteral_7= '-{ForkC}->'
{
enumLiteral_7=(Token)match(input,32,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_7, grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7());
}
}
break;
case 9 :
// InternalPattern.g:761:3: (enumLiteral_8= '-{ForkP}->' )
{
// InternalPattern.g:761:3: (enumLiteral_8= '-{ForkP}->' )
// InternalPattern.g:762:4: enumLiteral_8= '-{ForkP}->'
{
enumLiteral_8=(Token)match(input,33,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_8, grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8());
}
}
break;
case 10 :
// InternalPattern.g:769:3: (enumLiteral_9= '-{JoinC}->' )
{
// InternalPattern.g:769:3: (enumLiteral_9= '-{JoinC}->' )
// InternalPattern.g:770:4: enumLiteral_9= '-{JoinC}->'
{
enumLiteral_9=(Token)match(input,34,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_9, grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9());
}
}
break;
case 11 :
// InternalPattern.g:777:3: (enumLiteral_10= '-{JoinP}->' )
{
// InternalPattern.g:777:3: (enumLiteral_10= '-{JoinP}->' )
// InternalPattern.g:778:4: enumLiteral_10= '-{JoinP}->'
{
enumLiteral_10=(Token)match(input,35,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_10, grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10());
}
}
break;
case 12 :
// InternalPattern.g:785:3: (enumLiteral_11= '-{Last}->' )
{
// InternalPattern.g:785:3: (enumLiteral_11= '-{Last}->' )
// InternalPattern.g:786:4: enumLiteral_11= '-{Last}->'
{
enumLiteral_11=(Token)match(input,36,FOLLOW_2);
current = grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_11, grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11());
} }
@ -1844,7 +2012,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000001E04000L}); public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000001E04000L});
public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000001E00000L}); public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000001E00000L});
public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000040002L}); public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000040002L});
public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x000000003E000000L}); public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000001FFE000000L});
public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000020010L}); public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000020010L});
public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000100002L}); public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000100002L});

20
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/serializer/PatternSemanticSequencer.java

@ -3,8 +3,16 @@
*/ */
package com.irtsaintexupery.xtext.pseim.serializer; package com.irtsaintexupery.xtext.pseim.serializer;
import com.google.inject.Inject;
import com.irtsaintexupery.pseim.pseim.CardinalityElement;
import com.irtsaintexupery.pseim.pseim.Pattern;
import com.irtsaintexupery.pseim.pseim.PatternComponent;
import com.irtsaintexupery.pseim.pseim.PatternLink;
import com.irtsaintexupery.pseim.pseim.PatternPort;
import com.irtsaintexupery.pseim.pseim.PseimPackage;
import com.irtsaintexupery.pseim.seim.SeimPackage;
import com.irtsaintexupery.xtext.pseim.services.PatternGrammarAccess;
import java.util.Set; import java.util.Set;
import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EPackage;
import org.eclipse.xtext.Action; import org.eclipse.xtext.Action;
@ -15,16 +23,6 @@ import org.eclipse.xtext.serializer.acceptor.SequenceFeeder;
import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer; import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer;
import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient; import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient;
import com.google.inject.Inject;
import com.irtsaintexupery.pseim.pseim.CardinalityElement;
import com.irtsaintexupery.pseim.pseim.Pattern;
import com.irtsaintexupery.pseim.pseim.PatternComponent;
import com.irtsaintexupery.pseim.pseim.PatternLink;
import com.irtsaintexupery.pseim.pseim.PatternPort;
import com.irtsaintexupery.pseim.pseim.PseimPackage;
import com.irtsaintexupery.pseim.seim.SeimPackage;
import com.irtsaintexupery.xtext.pseim.services.PatternGrammarAccess;
@SuppressWarnings("all") @SuppressWarnings("all")
public class PatternSemanticSequencer extends AbstractDelegatingSemanticSequencer { public class PatternSemanticSequencer extends AbstractDelegatingSemanticSequencer {

82
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src-gen/com/irtsaintexupery/xtext/pseim/services/PatternGrammarAccess.java

@ -453,15 +453,32 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
private final Keyword cFIRSTFirstKeyword_2_0 = (Keyword)cFIRSTEnumLiteralDeclaration_2.eContents().get(0); private final Keyword cFIRSTFirstKeyword_2_0 = (Keyword)cFIRSTEnumLiteralDeclaration_2.eContents().get(0);
private final EnumLiteralDeclaration cROTATEEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); private final EnumLiteralDeclaration cROTATEEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3);
private final Keyword cROTATERotateKeyword_3_0 = (Keyword)cROTATEEnumLiteralDeclaration_3.eContents().get(0); private final Keyword cROTATERotateKeyword_3_0 = (Keyword)cROTATEEnumLiteralDeclaration_3.eContents().get(0);
private final EnumLiteralDeclaration cSHIFTEnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4); private final EnumLiteralDeclaration cSHIFTCEnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4);
private final Keyword cSHIFTShiftKeyword_4_0 = (Keyword)cSHIFTEnumLiteralDeclaration_4.eContents().get(0); private final Keyword cSHIFTCShiftCKeyword_4_0 = (Keyword)cSHIFTCEnumLiteralDeclaration_4.eContents().get(0);
private final EnumLiteralDeclaration cSHIFTPEnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5);
private final Keyword cSHIFTPShiftPKeyword_5_0 = (Keyword)cSHIFTPEnumLiteralDeclaration_5.eContents().get(0);
private final EnumLiteralDeclaration cFLATTENCEnumLiteralDeclaration_6 = (EnumLiteralDeclaration)cAlternatives.eContents().get(6);
private final Keyword cFLATTENCFlattenCKeyword_6_0 = (Keyword)cFLATTENCEnumLiteralDeclaration_6.eContents().get(0);
private final EnumLiteralDeclaration cFORKCEnumLiteralDeclaration_7 = (EnumLiteralDeclaration)cAlternatives.eContents().get(7);
private final Keyword cFORKCForkCKeyword_7_0 = (Keyword)cFORKCEnumLiteralDeclaration_7.eContents().get(0);
private final EnumLiteralDeclaration cFORKPEnumLiteralDeclaration_8 = (EnumLiteralDeclaration)cAlternatives.eContents().get(8);
private final Keyword cFORKPForkPKeyword_8_0 = (Keyword)cFORKPEnumLiteralDeclaration_8.eContents().get(0);
private final EnumLiteralDeclaration cJOINCEnumLiteralDeclaration_9 = (EnumLiteralDeclaration)cAlternatives.eContents().get(9);
private final Keyword cJOINCJoinCKeyword_9_0 = (Keyword)cJOINCEnumLiteralDeclaration_9.eContents().get(0);
private final EnumLiteralDeclaration cJOINPEnumLiteralDeclaration_10 = (EnumLiteralDeclaration)cAlternatives.eContents().get(10);
private final Keyword cJOINPJoinPKeyword_10_0 = (Keyword)cJOINPEnumLiteralDeclaration_10.eContents().get(0);
private final EnumLiteralDeclaration cLASTEnumLiteralDeclaration_11 = (EnumLiteralDeclaration)cAlternatives.eContents().get(11);
private final Keyword cLASTLastKeyword_11_0 = (Keyword)cLASTEnumLiteralDeclaration_11.eContents().get(0);
//enum LinkType: //enum LinkType:
// TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->' | // TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->'
// SHIFT='-{Shift}->'; // | SHIFTC='-{ShiftC}->' | SHIFTP='-{ShiftP}->' | FLATTENC='-{FlattenC}->' | FORKC='-{ForkC}->' | FORKP='-{ForkP}->'
// | JOINC='-{JoinC}->' | JOINP='-{JoinP}->' | LAST='-{Last}->';
public EnumRule getRule() { return rule; } public EnumRule getRule() { return rule; }
//TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->' | SHIFT='-{Shift}->' //TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->' | SHIFTC='-{ShiftC}->'
//| SHIFTP='-{ShiftP}->' | FLATTENC='-{FlattenC}->' | FORKC='-{ForkC}->' | FORKP='-{ForkP}->' | JOINC='-{JoinC}->' |
//JOINP='-{JoinP}->' | LAST='-{Last}->'
public Alternatives getAlternatives() { return cAlternatives; } public Alternatives getAlternatives() { return cAlternatives; }
//TRANSPOSE='-{Transpose}->' //TRANSPOSE='-{Transpose}->'
@ -488,11 +505,53 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
//'-{Rotate}->' //'-{Rotate}->'
public Keyword getROTATERotateKeyword_3_0() { return cROTATERotateKeyword_3_0; } public Keyword getROTATERotateKeyword_3_0() { return cROTATERotateKeyword_3_0; }
//SHIFT='-{Shift}->' //SHIFTC='-{ShiftC}->'
public EnumLiteralDeclaration getSHIFTEnumLiteralDeclaration_4() { return cSHIFTEnumLiteralDeclaration_4; } public EnumLiteralDeclaration getSHIFTCEnumLiteralDeclaration_4() { return cSHIFTCEnumLiteralDeclaration_4; }
//'-{Shift}->' //'-{ShiftC}->'
public Keyword getSHIFTShiftKeyword_4_0() { return cSHIFTShiftKeyword_4_0; } public Keyword getSHIFTCShiftCKeyword_4_0() { return cSHIFTCShiftCKeyword_4_0; }
//SHIFTP='-{ShiftP}->'
public EnumLiteralDeclaration getSHIFTPEnumLiteralDeclaration_5() { return cSHIFTPEnumLiteralDeclaration_5; }
//'-{ShiftP}->'
public Keyword getSHIFTPShiftPKeyword_5_0() { return cSHIFTPShiftPKeyword_5_0; }
//FLATTENC='-{FlattenC}->'
public EnumLiteralDeclaration getFLATTENCEnumLiteralDeclaration_6() { return cFLATTENCEnumLiteralDeclaration_6; }
//'-{FlattenC}->'
public Keyword getFLATTENCFlattenCKeyword_6_0() { return cFLATTENCFlattenCKeyword_6_0; }
//FORKC='-{ForkC}->'
public EnumLiteralDeclaration getFORKCEnumLiteralDeclaration_7() { return cFORKCEnumLiteralDeclaration_7; }
//'-{ForkC}->'
public Keyword getFORKCForkCKeyword_7_0() { return cFORKCForkCKeyword_7_0; }
//FORKP='-{ForkP}->'
public EnumLiteralDeclaration getFORKPEnumLiteralDeclaration_8() { return cFORKPEnumLiteralDeclaration_8; }
//'-{ForkP}->'
public Keyword getFORKPForkPKeyword_8_0() { return cFORKPForkPKeyword_8_0; }
//JOINC='-{JoinC}->'
public EnumLiteralDeclaration getJOINCEnumLiteralDeclaration_9() { return cJOINCEnumLiteralDeclaration_9; }
//'-{JoinC}->'
public Keyword getJOINCJoinCKeyword_9_0() { return cJOINCJoinCKeyword_9_0; }
//JOINP='-{JoinP}->'
public EnumLiteralDeclaration getJOINPEnumLiteralDeclaration_10() { return cJOINPEnumLiteralDeclaration_10; }
//'-{JoinP}->'
public Keyword getJOINPJoinPKeyword_10_0() { return cJOINPJoinPKeyword_10_0; }
//LAST='-{Last}->'
public EnumLiteralDeclaration getLASTEnumLiteralDeclaration_11() { return cLASTEnumLiteralDeclaration_11; }
//'-{Last}->'
public Keyword getLASTLastKeyword_11_0() { return cLASTLastKeyword_11_0; }
} }
public class PortDirectionElements extends AbstractEnumRuleElementFinder { public class PortDirectionElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Pattern.PortDirection"); private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Pattern.PortDirection");
@ -660,8 +719,9 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
} }
//enum LinkType: //enum LinkType:
// TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->' | // TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->'
// SHIFT='-{Shift}->'; // | SHIFTC='-{ShiftC}->' | SHIFTP='-{ShiftP}->' | FLATTENC='-{FlattenC}->' | FORKC='-{ForkC}->' | FORKP='-{ForkP}->'
// | JOINC='-{JoinC}->' | JOINP='-{JoinP}->' | LAST='-{Last}->';
public LinkTypeElements getLinkTypeAccess() { public LinkTypeElements getLinkTypeAccess() {
return eLinkType; return eLinkType;
} }

4
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src/com/irtsaintexupery/xtext/pseim/GeneratePattern.mwe2

@ -26,8 +26,8 @@ Workflow {
language = StandardLanguage { language = StandardLanguage {
name = "com.irtsaintexupery.xtext.pseim.Pattern" name = "com.irtsaintexupery.xtext.pseim.Pattern"
fileExtensions = "pseimx" fileExtensions = "pseimx"
referencedResource = "platform:/resource/com.irtsaintexupery.modelpattern/model/pseim.genmodel" referencedResource = "platform:/resource/com.irtsaintexupery.pseim/model/pseim.genmodel"
referencedResource = "platform:/resource/com.irtsaintexupery.modelpattern/model/seim.genmodel" referencedResource = "platform:/resource/com.irtsaintexupery.pseim/model/seim.genmodel"
fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment2 auto-inject {} fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment2 auto-inject {}

4
eclipse/plugins/com.irtsaintexupery.xtext.pseim.pattern/src/com/irtsaintexupery/xtext/pseim/Pattern.xtext

@ -38,7 +38,9 @@ PatternLink returns PatternLink:
; ;
enum LinkType returns LinkType: enum LinkType returns LinkType:
TRANSPOSE = '-{Transpose}->' | IDENTITY = '-{Identity}->' | FIRST = '-{First}->' | ROTATE = '-{Rotate}->' | SHIFT = '-{Shift}->' TRANSPOSE = '-{Transpose}->' | IDENTITY = '-{Identity}->' | FIRST = '-{First}->' | ROTATE = '-{Rotate}->'
| SHIFTC = '-{ShiftC}->' | SHIFTP = '-{ShiftP}->' | FLATTENC = '-{FlattenC}->' | FORKC = '-{ForkC}->' | FORKP = '-{ForkP}->'
| JOINC = '-{JoinC}->' | JOINP = '-{JoinP}->' | LAST = '-{Last}->'
; ;
enum PortDirection returns seim::PortDirection: enum PortDirection returns seim::PortDirection:

22
eclipse/plugins/com.irtsaintexupery.xtext.pseim/src-gen/com/irtsaintexupery/xtext/serializer/PseimSemanticSequencer.java

@ -3,18 +3,6 @@
*/ */
package com.irtsaintexupery.xtext.serializer; package com.irtsaintexupery.xtext.serializer;
import java.util.Set;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.xtext.Action;
import org.eclipse.xtext.Parameter;
import org.eclipse.xtext.ParserRule;
import org.eclipse.xtext.serializer.ISerializationContext;
import org.eclipse.xtext.serializer.acceptor.SequenceFeeder;
import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer;
import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient;
import com.google.inject.Inject; import com.google.inject.Inject;
import com.irtsaintexupery.pseim.seim.BooleanProperty; import com.irtsaintexupery.pseim.seim.BooleanProperty;
import com.irtsaintexupery.pseim.seim.Component; import com.irtsaintexupery.pseim.seim.Component;
@ -26,6 +14,16 @@ import com.irtsaintexupery.pseim.seim.ReferenceProperty;
import com.irtsaintexupery.pseim.seim.SeimPackage; import com.irtsaintexupery.pseim.seim.SeimPackage;
import com.irtsaintexupery.pseim.seim.StringProperty; import com.irtsaintexupery.pseim.seim.StringProperty;
import com.irtsaintexupery.xtext.services.PseimGrammarAccess; import com.irtsaintexupery.xtext.services.PseimGrammarAccess;
import java.util.Set;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.xtext.Action;
import org.eclipse.xtext.Parameter;
import org.eclipse.xtext.ParserRule;
import org.eclipse.xtext.serializer.ISerializationContext;
import org.eclipse.xtext.serializer.acceptor.SequenceFeeder;
import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer;
import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient;
@SuppressWarnings("all") @SuppressWarnings("all")
public class PseimSemanticSequencer extends AbstractDelegatingSemanticSequencer { public class PseimSemanticSequencer extends AbstractDelegatingSemanticSequencer {

8
eclipse/plugins/com.irtsaintexupery.xtext.pseim/src/com/irtsaintexupery/xtext/GeneratePseim.mwe2

@ -12,15 +12,9 @@ Workflow {
project = StandardProjectConfig { project = StandardProjectConfig {
baseName = "com.irtsaintexupery.xtext.pseim" baseName = "com.irtsaintexupery.xtext.pseim"
rootPath = rootPath rootPath = rootPath
runtimeTest = {
enabled = true
}
eclipsePlugin = { eclipsePlugin = {
enabled = true enabled = true
} }
eclipsePluginTest = {
enabled = true
}
createEclipseMetaData = true createEclipseMetaData = true
} }
code = { code = {
@ -32,7 +26,7 @@ Workflow {
language = StandardLanguage { language = StandardLanguage {
name = "com.irtsaintexupery.xtext.Pseim" name = "com.irtsaintexupery.xtext.Pseim"
fileExtensions = "seimx" fileExtensions = "seimx"
referencedResource = "platform:/resource/com.irtsaintexupery.modelpattern/model/seim.genmodel" referencedResource = "platform:/resource/com.irtsaintexupery.pseim/model/seim.genmodel"
fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment2 auto-inject {} fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment2 auto-inject {}

Loading…
Cancel
Save