mirror of
http://172.16.200.102/MOISE/Pattern-Instanciation-On-System-Engineering-Model.git
synced 2025-11-26 00:27:59 +01:00
Factorization of Link type grammar rule. Regenerated code.
This commit is contained in:
@@ -70,8 +70,8 @@ public class PatternParser extends AbstractContentAssistParser {
|
||||
put(grammarAccess.getPatternPortAccess().getCardinalityElementAssignment_2_1_1(), "rule__PatternPort__CardinalityElementAssignment_2_1_1");
|
||||
put(grammarAccess.getCardinalityElementAccess().getNameAssignment(), "rule__CardinalityElement__NameAssignment");
|
||||
put(grammarAccess.getPatternLinkAccess().getSrcAssignment_0(), "rule__PatternLink__SrcAssignment_0");
|
||||
put(grammarAccess.getPatternLinkAccess().getLinkTypeAssignment_1(), "rule__PatternLink__LinkTypeAssignment_1");
|
||||
put(grammarAccess.getPatternLinkAccess().getDstAssignment_2(), "rule__PatternLink__DstAssignment_2");
|
||||
put(grammarAccess.getPatternLinkAccess().getLinkTypeAssignment_2(), "rule__PatternLink__LinkTypeAssignment_2");
|
||||
put(grammarAccess.getPatternLinkAccess().getDstAssignment_4(), "rule__PatternLink__DstAssignment_4");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -355,73 +355,73 @@ rule__LinkType__Alternatives
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getTRANSPOSEEnumLiteralDeclaration_0()); }
|
||||
('-{Transpose}->')
|
||||
('Transpose')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getTRANSPOSEEnumLiteralDeclaration_0()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getIDENTITYEnumLiteralDeclaration_1()); }
|
||||
('-{Identity}->')
|
||||
('Identity')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getIDENTITYEnumLiteralDeclaration_1()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getFIRSTEnumLiteralDeclaration_2()); }
|
||||
('-{First}->')
|
||||
('First')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getFIRSTEnumLiteralDeclaration_2()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getROTATEEnumLiteralDeclaration_3()); }
|
||||
('-{Rotate}->')
|
||||
('Rotate')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getROTATEEnumLiteralDeclaration_3()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4()); }
|
||||
('-{ShiftC}->')
|
||||
('ShiftC')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5()); }
|
||||
('-{ShiftP}->')
|
||||
('ShiftP')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6()); }
|
||||
('-{FlattenC}->')
|
||||
('FlattenC')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7()); }
|
||||
('-{ForkC}->')
|
||||
('ForkC')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8()); }
|
||||
('-{ForkP}->')
|
||||
('ForkP')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9()); }
|
||||
('-{JoinC}->')
|
||||
('JoinC')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10()); }
|
||||
('-{JoinP}->')
|
||||
('JoinP')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10()); }
|
||||
)
|
||||
|
|
||||
(
|
||||
{ before(grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11()); }
|
||||
('-{Last}->')
|
||||
('Last')
|
||||
{ after(grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11()); }
|
||||
)
|
||||
;
|
||||
@@ -1446,9 +1446,9 @@ rule__PatternLink__Group__1__Impl
|
||||
}
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getLinkTypeAssignment_1()); }
|
||||
(rule__PatternLink__LinkTypeAssignment_1)
|
||||
{ after(grammarAccess.getPatternLinkAccess().getLinkTypeAssignment_1()); }
|
||||
{ before(grammarAccess.getPatternLinkAccess().getHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1()); }
|
||||
'--{'
|
||||
{ after(grammarAccess.getPatternLinkAccess().getHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1()); }
|
||||
)
|
||||
;
|
||||
finally {
|
||||
@@ -1461,6 +1461,7 @@ rule__PatternLink__Group__2
|
||||
}
|
||||
:
|
||||
rule__PatternLink__Group__2__Impl
|
||||
rule__PatternLink__Group__3
|
||||
;
|
||||
finally {
|
||||
restoreStackSize(stackSize);
|
||||
@@ -1472,9 +1473,62 @@ rule__PatternLink__Group__2__Impl
|
||||
}
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getDstAssignment_2()); }
|
||||
(rule__PatternLink__DstAssignment_2)
|
||||
{ after(grammarAccess.getPatternLinkAccess().getDstAssignment_2()); }
|
||||
{ before(grammarAccess.getPatternLinkAccess().getLinkTypeAssignment_2()); }
|
||||
(rule__PatternLink__LinkTypeAssignment_2)
|
||||
{ after(grammarAccess.getPatternLinkAccess().getLinkTypeAssignment_2()); }
|
||||
)
|
||||
;
|
||||
finally {
|
||||
restoreStackSize(stackSize);
|
||||
}
|
||||
|
||||
rule__PatternLink__Group__3
|
||||
@init {
|
||||
int stackSize = keepStackSize();
|
||||
}
|
||||
:
|
||||
rule__PatternLink__Group__3__Impl
|
||||
rule__PatternLink__Group__4
|
||||
;
|
||||
finally {
|
||||
restoreStackSize(stackSize);
|
||||
}
|
||||
|
||||
rule__PatternLink__Group__3__Impl
|
||||
@init {
|
||||
int stackSize = keepStackSize();
|
||||
}
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3()); }
|
||||
'}->'
|
||||
{ after(grammarAccess.getPatternLinkAccess().getRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3()); }
|
||||
)
|
||||
;
|
||||
finally {
|
||||
restoreStackSize(stackSize);
|
||||
}
|
||||
|
||||
rule__PatternLink__Group__4
|
||||
@init {
|
||||
int stackSize = keepStackSize();
|
||||
}
|
||||
:
|
||||
rule__PatternLink__Group__4__Impl
|
||||
;
|
||||
finally {
|
||||
restoreStackSize(stackSize);
|
||||
}
|
||||
|
||||
rule__PatternLink__Group__4__Impl
|
||||
@init {
|
||||
int stackSize = keepStackSize();
|
||||
}
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getDstAssignment_4()); }
|
||||
(rule__PatternLink__DstAssignment_4)
|
||||
{ after(grammarAccess.getPatternLinkAccess().getDstAssignment_4()); }
|
||||
)
|
||||
;
|
||||
finally {
|
||||
@@ -1872,34 +1926,34 @@ finally {
|
||||
restoreStackSize(stackSize);
|
||||
}
|
||||
|
||||
rule__PatternLink__LinkTypeAssignment_1
|
||||
rule__PatternLink__LinkTypeAssignment_2
|
||||
@init {
|
||||
int stackSize = keepStackSize();
|
||||
}
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_1_0()); }
|
||||
{ before(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_2_0()); }
|
||||
ruleLinkType
|
||||
{ after(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_1_0()); }
|
||||
{ after(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_2_0()); }
|
||||
)
|
||||
;
|
||||
finally {
|
||||
restoreStackSize(stackSize);
|
||||
}
|
||||
|
||||
rule__PatternLink__DstAssignment_2
|
||||
rule__PatternLink__DstAssignment_4
|
||||
@init {
|
||||
int stackSize = keepStackSize();
|
||||
}
|
||||
:
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_2_0()); }
|
||||
{ before(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_4_0()); }
|
||||
(
|
||||
{ before(grammarAccess.getPatternLinkAccess().getDstPatternPortQualifiedIDParserRuleCall_2_0_1()); }
|
||||
{ before(grammarAccess.getPatternLinkAccess().getDstPatternPortQualifiedIDParserRuleCall_4_0_1()); }
|
||||
ruleQualifiedID
|
||||
{ after(grammarAccess.getPatternLinkAccess().getDstPatternPortQualifiedIDParserRuleCall_2_0_1()); }
|
||||
{ after(grammarAccess.getPatternLinkAccess().getDstPatternPortQualifiedIDParserRuleCall_4_0_1()); }
|
||||
)
|
||||
{ after(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_2_0()); }
|
||||
{ after(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_4_0()); }
|
||||
)
|
||||
;
|
||||
finally {
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
'('=28
|
||||
')'=29
|
||||
','=30
|
||||
'-{First}->'=17
|
||||
'-{FlattenC}->'=21
|
||||
'-{ForkC}->'=22
|
||||
'-{ForkP}->'=23
|
||||
'-{Identity}->'=16
|
||||
'-{JoinC}->'=24
|
||||
'-{JoinP}->'=25
|
||||
'-{Last}->'=26
|
||||
'-{Rotate}->'=18
|
||||
'-{ShiftC}->'=19
|
||||
'-{ShiftP}->'=20
|
||||
'-{Transpose}->'=15
|
||||
'.'=36
|
||||
'--{'=36
|
||||
'.'=38
|
||||
'First'=17
|
||||
'FlattenC'=21
|
||||
'ForkC'=22
|
||||
'ForkP'=23
|
||||
'Identity'=16
|
||||
'JoinC'=24
|
||||
'JoinP'=25
|
||||
'Last'=26
|
||||
'Rotate'=18
|
||||
'ShiftC'=19
|
||||
'ShiftP'=20
|
||||
'Transpose'=15
|
||||
'['=34
|
||||
']'=35
|
||||
'component'=33
|
||||
@@ -24,6 +25,7 @@
|
||||
'unspec'=11
|
||||
'{'=31
|
||||
'}'=32
|
||||
'}->'=37
|
||||
RULE_ANY_OTHER=10
|
||||
RULE_ID=4
|
||||
RULE_INT=5
|
||||
@@ -57,3 +59,5 @@ T__33=33
|
||||
T__34=34
|
||||
T__35=35
|
||||
T__36=36
|
||||
T__37=37
|
||||
T__38=38
|
||||
|
||||
@@ -16,7 +16,9 @@ public class InternalPatternLexer extends Lexer {
|
||||
public static final int RULE_SL_COMMENT=8;
|
||||
public static final int T__19=19;
|
||||
public static final int T__15=15;
|
||||
public static final int T__37=37;
|
||||
public static final int T__16=16;
|
||||
public static final int T__38=38;
|
||||
public static final int T__17=17;
|
||||
public static final int T__18=18;
|
||||
public static final int T__11=11;
|
||||
@@ -149,10 +151,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__15;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:15:7: ( '-{Transpose}->' )
|
||||
// InternalPattern.g:15:9: '-{Transpose}->'
|
||||
// InternalPattern.g:15:7: ( 'Transpose' )
|
||||
// InternalPattern.g:15:9: 'Transpose'
|
||||
{
|
||||
match("-{Transpose}->");
|
||||
match("Transpose");
|
||||
|
||||
|
||||
}
|
||||
@@ -170,10 +172,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__16;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:16:7: ( '-{Identity}->' )
|
||||
// InternalPattern.g:16:9: '-{Identity}->'
|
||||
// InternalPattern.g:16:7: ( 'Identity' )
|
||||
// InternalPattern.g:16:9: 'Identity'
|
||||
{
|
||||
match("-{Identity}->");
|
||||
match("Identity");
|
||||
|
||||
|
||||
}
|
||||
@@ -191,10 +193,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__17;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:17:7: ( '-{First}->' )
|
||||
// InternalPattern.g:17:9: '-{First}->'
|
||||
// InternalPattern.g:17:7: ( 'First' )
|
||||
// InternalPattern.g:17:9: 'First'
|
||||
{
|
||||
match("-{First}->");
|
||||
match("First");
|
||||
|
||||
|
||||
}
|
||||
@@ -212,10 +214,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__18;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:18:7: ( '-{Rotate}->' )
|
||||
// InternalPattern.g:18:9: '-{Rotate}->'
|
||||
// InternalPattern.g:18:7: ( 'Rotate' )
|
||||
// InternalPattern.g:18:9: 'Rotate'
|
||||
{
|
||||
match("-{Rotate}->");
|
||||
match("Rotate");
|
||||
|
||||
|
||||
}
|
||||
@@ -233,10 +235,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__19;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:19:7: ( '-{ShiftC}->' )
|
||||
// InternalPattern.g:19:9: '-{ShiftC}->'
|
||||
// InternalPattern.g:19:7: ( 'ShiftC' )
|
||||
// InternalPattern.g:19:9: 'ShiftC'
|
||||
{
|
||||
match("-{ShiftC}->");
|
||||
match("ShiftC");
|
||||
|
||||
|
||||
}
|
||||
@@ -254,10 +256,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__20;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:20:7: ( '-{ShiftP}->' )
|
||||
// InternalPattern.g:20:9: '-{ShiftP}->'
|
||||
// InternalPattern.g:20:7: ( 'ShiftP' )
|
||||
// InternalPattern.g:20:9: 'ShiftP'
|
||||
{
|
||||
match("-{ShiftP}->");
|
||||
match("ShiftP");
|
||||
|
||||
|
||||
}
|
||||
@@ -275,10 +277,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__21;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:21:7: ( '-{FlattenC}->' )
|
||||
// InternalPattern.g:21:9: '-{FlattenC}->'
|
||||
// InternalPattern.g:21:7: ( 'FlattenC' )
|
||||
// InternalPattern.g:21:9: 'FlattenC'
|
||||
{
|
||||
match("-{FlattenC}->");
|
||||
match("FlattenC");
|
||||
|
||||
|
||||
}
|
||||
@@ -296,10 +298,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__22;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:22:7: ( '-{ForkC}->' )
|
||||
// InternalPattern.g:22:9: '-{ForkC}->'
|
||||
// InternalPattern.g:22:7: ( 'ForkC' )
|
||||
// InternalPattern.g:22:9: 'ForkC'
|
||||
{
|
||||
match("-{ForkC}->");
|
||||
match("ForkC");
|
||||
|
||||
|
||||
}
|
||||
@@ -317,10 +319,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__23;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:23:7: ( '-{ForkP}->' )
|
||||
// InternalPattern.g:23:9: '-{ForkP}->'
|
||||
// InternalPattern.g:23:7: ( 'ForkP' )
|
||||
// InternalPattern.g:23:9: 'ForkP'
|
||||
{
|
||||
match("-{ForkP}->");
|
||||
match("ForkP");
|
||||
|
||||
|
||||
}
|
||||
@@ -338,10 +340,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__24;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:24:7: ( '-{JoinC}->' )
|
||||
// InternalPattern.g:24:9: '-{JoinC}->'
|
||||
// InternalPattern.g:24:7: ( 'JoinC' )
|
||||
// InternalPattern.g:24:9: 'JoinC'
|
||||
{
|
||||
match("-{JoinC}->");
|
||||
match("JoinC");
|
||||
|
||||
|
||||
}
|
||||
@@ -359,10 +361,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__25;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:25:7: ( '-{JoinP}->' )
|
||||
// InternalPattern.g:25:9: '-{JoinP}->'
|
||||
// InternalPattern.g:25:7: ( 'JoinP' )
|
||||
// InternalPattern.g:25:9: 'JoinP'
|
||||
{
|
||||
match("-{JoinP}->");
|
||||
match("JoinP");
|
||||
|
||||
|
||||
}
|
||||
@@ -380,10 +382,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__26;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:26:7: ( '-{Last}->' )
|
||||
// InternalPattern.g:26:9: '-{Last}->'
|
||||
// InternalPattern.g:26:7: ( 'Last' )
|
||||
// InternalPattern.g:26:9: 'Last'
|
||||
{
|
||||
match("-{Last}->");
|
||||
match("Last");
|
||||
|
||||
|
||||
}
|
||||
@@ -583,10 +585,11 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__36;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:36:7: ( '.' )
|
||||
// InternalPattern.g:36:9: '.'
|
||||
// InternalPattern.g:36:7: ( '--{' )
|
||||
// InternalPattern.g:36:9: '--{'
|
||||
{
|
||||
match('.');
|
||||
match("--{");
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -598,15 +601,56 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
// $ANTLR end "T__36"
|
||||
|
||||
// $ANTLR start "T__37"
|
||||
public final void mT__37() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__37;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:37:7: ( '}->' )
|
||||
// InternalPattern.g:37:9: '}->'
|
||||
{
|
||||
match("}->");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__37"
|
||||
|
||||
// $ANTLR start "T__38"
|
||||
public final void mT__38() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__38;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:38:7: ( '.' )
|
||||
// InternalPattern.g:38:9: '.'
|
||||
{
|
||||
match('.');
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__38"
|
||||
|
||||
// $ANTLR start "RULE_ID"
|
||||
public final void mRULE_ID() throws RecognitionException {
|
||||
try {
|
||||
int _type = RULE_ID;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1909:9: ( ( '^' )? ( '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:1963:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
|
||||
// InternalPattern.g:1963:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
{
|
||||
// InternalPattern.g:1909:11: ( '^' )?
|
||||
// InternalPattern.g:1963:11: ( '^' )?
|
||||
int alt1=2;
|
||||
int LA1_0 = input.LA(1);
|
||||
|
||||
@@ -615,7 +659,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt1) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1909:11: '^'
|
||||
// InternalPattern.g:1963:11: '^'
|
||||
{
|
||||
match('^');
|
||||
|
||||
@@ -633,7 +677,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
recover(mse);
|
||||
throw mse;}
|
||||
|
||||
// InternalPattern.g:1909:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
// InternalPattern.g:1963:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
loop2:
|
||||
do {
|
||||
int alt2=2;
|
||||
@@ -682,10 +726,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_INT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1911:10: ( ( '0' .. '9' )+ )
|
||||
// InternalPattern.g:1911:12: ( '0' .. '9' )+
|
||||
// InternalPattern.g:1965:10: ( ( '0' .. '9' )+ )
|
||||
// InternalPattern.g:1965:12: ( '0' .. '9' )+
|
||||
{
|
||||
// InternalPattern.g:1911:12: ( '0' .. '9' )+
|
||||
// InternalPattern.g:1965:12: ( '0' .. '9' )+
|
||||
int cnt3=0;
|
||||
loop3:
|
||||
do {
|
||||
@@ -699,7 +743,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt3) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1911:13: '0' .. '9'
|
||||
// InternalPattern.g:1965:13: '0' .. '9'
|
||||
{
|
||||
matchRange('0','9');
|
||||
|
||||
@@ -731,10 +775,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_STRING;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1913:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
|
||||
// InternalPattern.g:1913:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
// InternalPattern.g:1967:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
|
||||
// InternalPattern.g:1967:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
{
|
||||
// InternalPattern.g:1913:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
// InternalPattern.g:1967:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
int alt6=2;
|
||||
int LA6_0 = input.LA(1);
|
||||
|
||||
@@ -752,10 +796,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt6) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1913:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
|
||||
// InternalPattern.g:1967:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
|
||||
{
|
||||
match('\"');
|
||||
// InternalPattern.g:1913:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
|
||||
// InternalPattern.g:1967:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
|
||||
loop4:
|
||||
do {
|
||||
int alt4=3;
|
||||
@@ -771,7 +815,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt4) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1913:21: '\\\\' .
|
||||
// InternalPattern.g:1967:21: '\\\\' .
|
||||
{
|
||||
match('\\');
|
||||
matchAny();
|
||||
@@ -779,7 +823,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:1913:28: ~ ( ( '\\\\' | '\"' ) )
|
||||
// InternalPattern.g:1967:28: ~ ( ( '\\\\' | '\"' ) )
|
||||
{
|
||||
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
@@ -804,10 +848,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:1913:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
|
||||
// InternalPattern.g:1967:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
|
||||
{
|
||||
match('\'');
|
||||
// InternalPattern.g:1913:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
|
||||
// InternalPattern.g:1967:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
|
||||
loop5:
|
||||
do {
|
||||
int alt5=3;
|
||||
@@ -823,7 +867,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt5) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1913:54: '\\\\' .
|
||||
// InternalPattern.g:1967:54: '\\\\' .
|
||||
{
|
||||
match('\\');
|
||||
matchAny();
|
||||
@@ -831,7 +875,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:1913:61: ~ ( ( '\\\\' | '\\'' ) )
|
||||
// InternalPattern.g:1967:61: ~ ( ( '\\\\' | '\\'' ) )
|
||||
{
|
||||
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
@@ -874,12 +918,12 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_ML_COMMENT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1915:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
|
||||
// InternalPattern.g:1915:19: '/*' ( options {greedy=false; } : . )* '*/'
|
||||
// InternalPattern.g:1969:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
|
||||
// InternalPattern.g:1969:19: '/*' ( options {greedy=false; } : . )* '*/'
|
||||
{
|
||||
match("/*");
|
||||
|
||||
// InternalPattern.g:1915:24: ( options {greedy=false; } : . )*
|
||||
// InternalPattern.g:1969:24: ( options {greedy=false; } : . )*
|
||||
loop7:
|
||||
do {
|
||||
int alt7=2;
|
||||
@@ -904,7 +948,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt7) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1915:52: .
|
||||
// InternalPattern.g:1969:52: .
|
||||
{
|
||||
matchAny();
|
||||
|
||||
@@ -934,12 +978,12 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_SL_COMMENT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1917:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
|
||||
// InternalPattern.g:1917:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
|
||||
// InternalPattern.g:1971:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
|
||||
// InternalPattern.g:1971:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
|
||||
{
|
||||
match("//");
|
||||
|
||||
// InternalPattern.g:1917:24: (~ ( ( '\\n' | '\\r' ) ) )*
|
||||
// InternalPattern.g:1971:24: (~ ( ( '\\n' | '\\r' ) ) )*
|
||||
loop8:
|
||||
do {
|
||||
int alt8=2;
|
||||
@@ -952,7 +996,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt8) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1917:24: ~ ( ( '\\n' | '\\r' ) )
|
||||
// InternalPattern.g:1971: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') ) {
|
||||
input.consume();
|
||||
@@ -972,7 +1016,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
} while (true);
|
||||
|
||||
// InternalPattern.g:1917:40: ( ( '\\r' )? '\\n' )?
|
||||
// InternalPattern.g:1971:40: ( ( '\\r' )? '\\n' )?
|
||||
int alt10=2;
|
||||
int LA10_0 = input.LA(1);
|
||||
|
||||
@@ -981,9 +1025,9 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt10) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1917:41: ( '\\r' )? '\\n'
|
||||
// InternalPattern.g:1971:41: ( '\\r' )? '\\n'
|
||||
{
|
||||
// InternalPattern.g:1917:41: ( '\\r' )?
|
||||
// InternalPattern.g:1971:41: ( '\\r' )?
|
||||
int alt9=2;
|
||||
int LA9_0 = input.LA(1);
|
||||
|
||||
@@ -992,7 +1036,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt9) {
|
||||
case 1 :
|
||||
// InternalPattern.g:1917:41: '\\r'
|
||||
// InternalPattern.g:1971:41: '\\r'
|
||||
{
|
||||
match('\r');
|
||||
|
||||
@@ -1024,10 +1068,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_WS;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1919:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
|
||||
// InternalPattern.g:1919:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
// InternalPattern.g:1973:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
|
||||
// InternalPattern.g:1973:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
{
|
||||
// InternalPattern.g:1919:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
// InternalPattern.g:1973:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
int cnt11=0;
|
||||
loop11:
|
||||
do {
|
||||
@@ -1081,8 +1125,8 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_ANY_OTHER;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:1921:16: ( . )
|
||||
// InternalPattern.g:1921:18: .
|
||||
// InternalPattern.g:1975:16: ( . )
|
||||
// InternalPattern.g:1975:18: .
|
||||
{
|
||||
matchAny();
|
||||
|
||||
@@ -1097,8 +1141,8 @@ public class InternalPatternLexer extends Lexer {
|
||||
// $ANTLR end "RULE_ANY_OTHER"
|
||||
|
||||
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 | 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=33;
|
||||
// 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 | T__37 | T__38 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
|
||||
int alt12=35;
|
||||
alt12 = dfa12.predict(input);
|
||||
switch (alt12) {
|
||||
case 1 :
|
||||
@@ -1284,49 +1328,63 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 27 :
|
||||
// InternalPattern.g:1:166: RULE_ID
|
||||
// InternalPattern.g:1:166: T__37
|
||||
{
|
||||
mT__37();
|
||||
|
||||
}
|
||||
break;
|
||||
case 28 :
|
||||
// InternalPattern.g:1:172: T__38
|
||||
{
|
||||
mT__38();
|
||||
|
||||
}
|
||||
break;
|
||||
case 29 :
|
||||
// InternalPattern.g:1:178: RULE_ID
|
||||
{
|
||||
mRULE_ID();
|
||||
|
||||
}
|
||||
break;
|
||||
case 28 :
|
||||
// InternalPattern.g:1:174: RULE_INT
|
||||
case 30 :
|
||||
// InternalPattern.g:1:186: RULE_INT
|
||||
{
|
||||
mRULE_INT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 29 :
|
||||
// InternalPattern.g:1:183: RULE_STRING
|
||||
case 31 :
|
||||
// InternalPattern.g:1:195: RULE_STRING
|
||||
{
|
||||
mRULE_STRING();
|
||||
|
||||
}
|
||||
break;
|
||||
case 30 :
|
||||
// InternalPattern.g:1:195: RULE_ML_COMMENT
|
||||
case 32 :
|
||||
// InternalPattern.g:1:207: RULE_ML_COMMENT
|
||||
{
|
||||
mRULE_ML_COMMENT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 31 :
|
||||
// InternalPattern.g:1:211: RULE_SL_COMMENT
|
||||
case 33 :
|
||||
// InternalPattern.g:1:223: RULE_SL_COMMENT
|
||||
{
|
||||
mRULE_SL_COMMENT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 32 :
|
||||
// InternalPattern.g:1:227: RULE_WS
|
||||
case 34 :
|
||||
// InternalPattern.g:1:239: RULE_WS
|
||||
{
|
||||
mRULE_WS();
|
||||
|
||||
}
|
||||
break;
|
||||
case 33 :
|
||||
// InternalPattern.g:1:235: RULE_ANY_OTHER
|
||||
case 35 :
|
||||
// InternalPattern.g:1:247: RULE_ANY_OTHER
|
||||
{
|
||||
mRULE_ANY_OTHER();
|
||||
|
||||
@@ -1340,111 +1398,156 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
protected DFA12 dfa12 = new DFA12(this);
|
||||
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\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";
|
||||
"\1\uffff\13\37\4\uffff\1\61\1\37\2\uffff\1\35\1\uffff\1\35\2\uffff\3\35\2\uffff\1\37\1\uffff\1\76\13\37\6\uffff\1\37\11\uffff\2\37\1\uffff\1\115\15\37\1\uffff\10\37\1\145\3\37\1\151\2\37\1\154\1\37\1\156\1\157\2\37\1\163\1\164\1\uffff\2\37\1\167\1\uffff\2\37\1\uffff\1\37\2\uffff\1\173\1\174\1\175\2\uffff\2\37\1\uffff\3\37\3\uffff\1\u0083\2\37\1\u0086\1\u0087\1\uffff\1\37\1\u0089\2\uffff\1\u008a\2\uffff";
|
||||
static final String DFA12_eofS =
|
||||
"\136\uffff";
|
||||
"\u008b\uffff";
|
||||
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\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";
|
||||
"\1\0\2\156\1\165\1\162\1\144\1\151\1\157\1\150\1\157\2\141\4\uffff\1\55\1\157\2\uffff\1\55\1\uffff\1\101\2\uffff\2\0\1\52\2\uffff\1\163\1\uffff\1\60\1\164\1\141\1\145\1\162\1\141\1\162\1\164\2\151\1\163\1\164\6\uffff\1\155\11\uffff\1\160\1\165\1\uffff\1\60\2\156\1\163\1\164\1\153\1\141\1\146\1\156\2\164\1\160\1\145\1\164\1\uffff\1\163\3\164\1\103\2\164\1\103\1\60\1\145\1\157\1\143\1\60\1\160\1\151\1\60\1\145\2\60\1\145\1\103\2\60\1\uffff\1\162\1\156\1\60\1\uffff\1\157\1\164\1\uffff\1\156\2\uffff\3\60\2\uffff\1\156\1\145\1\uffff\1\163\1\171\1\103\3\uffff\1\60\1\156\1\145\2\60\1\uffff\1\164\1\60\2\uffff\1\60\2\uffff";
|
||||
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\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";
|
||||
"\1\uffff\2\156\1\165\1\162\1\144\2\157\1\150\1\157\2\141\4\uffff\1\55\1\157\2\uffff\1\55\1\uffff\1\172\2\uffff\2\uffff\1\57\2\uffff\1\163\1\uffff\1\172\1\164\1\141\1\145\1\162\1\141\1\162\1\164\2\151\1\163\1\164\6\uffff\1\155\11\uffff\1\160\1\165\1\uffff\1\172\2\156\1\163\1\164\1\153\1\141\1\146\1\156\2\164\1\160\1\145\1\164\1\uffff\1\163\3\164\1\120\2\164\1\120\1\172\1\145\1\157\1\143\1\172\1\160\1\151\1\172\1\145\2\172\1\145\1\120\2\172\1\uffff\1\162\1\156\1\172\1\uffff\1\157\1\164\1\uffff\1\156\2\uffff\3\172\2\uffff\1\156\1\145\1\uffff\1\163\1\171\1\103\3\uffff\1\172\1\156\1\145\2\172\1\uffff\1\164\1\172\2\uffff\1\172\2\uffff";
|
||||
static final String DFA12_acceptS =
|
||||
"\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";
|
||||
"\14\uffff\1\22\1\23\1\24\1\25\2\uffff\1\30\1\31\1\uffff\1\34\1\uffff\1\35\1\36\3\uffff\1\42\1\43\1\uffff\1\35\14\uffff\1\22\1\23\1\24\1\25\1\33\1\26\1\uffff\1\30\1\31\1\32\1\34\1\36\1\37\1\40\1\41\1\42\2\uffff\1\2\16\uffff\1\3\27\uffff\1\20\3\uffff\1\4\2\uffff\1\7\1\uffff\1\14\1\15\3\uffff\1\16\1\17\2\uffff\1\1\3\uffff\1\10\1\11\1\12\5\uffff\1\21\2\uffff\1\6\1\13\1\uffff\1\5\1\27";
|
||||
static final String DFA12_specialS =
|
||||
"\1\1\21\uffff\1\2\1\0\112\uffff}>";
|
||||
"\1\0\30\uffff\1\2\1\1\160\uffff}>";
|
||||
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",
|
||||
"\1\27",
|
||||
"\1\31",
|
||||
"\1\32",
|
||||
"\1\33",
|
||||
"\1\34",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\11\35\2\34\2\35\1\34\22\35\1\34\1\35\1\31\4\35\1\32\1\14\1\15\2\35\1\16\1\24\1\25\1\33\12\30\7\35\5\27\1\6\2\27\1\5\1\11\1\27\1\12\5\27\1\7\1\10\1\4\6\27\1\22\1\35\1\23\1\26\1\27\1\35\2\27\1\21\5\27\1\2\5\27\1\3\1\13\4\27\1\1\5\27\1\17\1\35\1\20\uff82\35",
|
||||
"\1\36",
|
||||
"\1\40",
|
||||
"\1\41",
|
||||
"\1\42",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
"",
|
||||
"",
|
||||
"\0\47",
|
||||
"\0\47",
|
||||
"\1\50\4\uffff\1\51",
|
||||
"",
|
||||
"",
|
||||
"\1\43",
|
||||
"\1\44\2\uffff\1\45\2\uffff\1\46",
|
||||
"\1\47",
|
||||
"\1\50",
|
||||
"\1\51",
|
||||
"\1\52",
|
||||
"\1\53",
|
||||
"",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30\1\54\13\30",
|
||||
"\1\56",
|
||||
"\1\61\2\uffff\1\60\1\64\1\uffff\1\65\5\uffff\1\62\1\63\1\57",
|
||||
"\1\66",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\60",
|
||||
"\1\62",
|
||||
"",
|
||||
"",
|
||||
"\1\67",
|
||||
"\1\65",
|
||||
"",
|
||||
"\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"",
|
||||
"\0\70",
|
||||
"\0\70",
|
||||
"\1\71\4\uffff\1\72",
|
||||
"",
|
||||
"",
|
||||
"\1\74",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\70",
|
||||
"\1\71",
|
||||
"",
|
||||
"\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\76",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\16\37\1\75\13\37",
|
||||
"\1\77",
|
||||
"",
|
||||
"\1\100",
|
||||
"\1\101",
|
||||
"\1\102",
|
||||
"\1\103",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\104",
|
||||
"\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\112",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\113",
|
||||
"\1\114",
|
||||
"\1\115",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\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\120",
|
||||
"\1\121",
|
||||
"\1\122",
|
||||
"\1\123",
|
||||
"\1\124\14\uffff\1\125",
|
||||
"\1\124",
|
||||
"\1\125",
|
||||
"\1\126",
|
||||
"\1\127",
|
||||
"\1\130",
|
||||
"\1\131",
|
||||
"\1\132",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\130\14\uffff\1\131",
|
||||
"",
|
||||
"",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
"\1\133",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\134",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
"\1\135",
|
||||
"\1\136",
|
||||
"\1\137\14\uffff\1\140",
|
||||
"\1\141",
|
||||
"\1\142",
|
||||
"\1\143\14\uffff\1\144",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\146",
|
||||
"\1\147",
|
||||
"\1\150",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\152",
|
||||
"\1\153",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\155",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\160",
|
||||
"\1\161\14\uffff\1\162",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"\1\165",
|
||||
"\1\166",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"\1\170",
|
||||
"\1\171",
|
||||
"",
|
||||
"\1\172",
|
||||
"",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"",
|
||||
"\1\176",
|
||||
"\1\177",
|
||||
"",
|
||||
"\1\u0080",
|
||||
"\1\u0081",
|
||||
"\1\u0082",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\u0084",
|
||||
"\1\u0085",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"\1\u0088",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
""
|
||||
};
|
||||
|
||||
@@ -1478,23 +1581,13 @@ public class InternalPatternLexer extends Lexer {
|
||||
this.transition = DFA12_transition;
|
||||
}
|
||||
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 | 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 );";
|
||||
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 | T__37 | T__38 | 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 {
|
||||
IntStream input = _input;
|
||||
int _s = s;
|
||||
switch ( s ) {
|
||||
case 0 :
|
||||
int LA12_19 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA12_19>='\u0000' && LA12_19<='\uFFFF')) ) {s = 39;}
|
||||
|
||||
else s = 22;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 1 :
|
||||
int LA12_0 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
@@ -1504,53 +1597,77 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
else if ( (LA12_0=='o') ) {s = 3;}
|
||||
|
||||
else if ( (LA12_0=='-') ) {s = 4;}
|
||||
else if ( (LA12_0=='T') ) {s = 4;}
|
||||
|
||||
else if ( (LA12_0=='p') ) {s = 5;}
|
||||
else if ( (LA12_0=='I') ) {s = 5;}
|
||||
|
||||
else if ( (LA12_0=='(') ) {s = 6;}
|
||||
else if ( (LA12_0=='F') ) {s = 6;}
|
||||
|
||||
else if ( (LA12_0==')') ) {s = 7;}
|
||||
else if ( (LA12_0=='R') ) {s = 7;}
|
||||
|
||||
else if ( (LA12_0==',') ) {s = 8;}
|
||||
else if ( (LA12_0=='S') ) {s = 8;}
|
||||
|
||||
else if ( (LA12_0=='{') ) {s = 9;}
|
||||
else if ( (LA12_0=='J') ) {s = 9;}
|
||||
|
||||
else if ( (LA12_0=='}') ) {s = 10;}
|
||||
else if ( (LA12_0=='L') ) {s = 10;}
|
||||
|
||||
else if ( (LA12_0=='c') ) {s = 11;}
|
||||
else if ( (LA12_0=='p') ) {s = 11;}
|
||||
|
||||
else if ( (LA12_0=='[') ) {s = 12;}
|
||||
else if ( (LA12_0=='(') ) {s = 12;}
|
||||
|
||||
else if ( (LA12_0==']') ) {s = 13;}
|
||||
else if ( (LA12_0==')') ) {s = 13;}
|
||||
|
||||
else if ( (LA12_0=='.') ) {s = 14;}
|
||||
else if ( (LA12_0==',') ) {s = 14;}
|
||||
|
||||
else if ( (LA12_0=='^') ) {s = 15;}
|
||||
else if ( (LA12_0=='{') ) {s = 15;}
|
||||
|
||||
else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||(LA12_0>='d' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||(LA12_0>='q' && LA12_0<='t')||(LA12_0>='v' && LA12_0<='z')) ) {s = 16;}
|
||||
else if ( (LA12_0=='}') ) {s = 16;}
|
||||
|
||||
else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 17;}
|
||||
else if ( (LA12_0=='c') ) {s = 17;}
|
||||
|
||||
else if ( (LA12_0=='\"') ) {s = 18;}
|
||||
else if ( (LA12_0=='[') ) {s = 18;}
|
||||
|
||||
else if ( (LA12_0=='\'') ) {s = 19;}
|
||||
else if ( (LA12_0==']') ) {s = 19;}
|
||||
|
||||
else if ( (LA12_0=='/') ) {s = 20;}
|
||||
else if ( (LA12_0=='-') ) {s = 20;}
|
||||
|
||||
else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 21;}
|
||||
else if ( (LA12_0=='.') ) {s = 21;}
|
||||
|
||||
else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>=':' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 22;}
|
||||
else if ( (LA12_0=='^') ) {s = 22;}
|
||||
|
||||
else if ( ((LA12_0>='A' && LA12_0<='E')||(LA12_0>='G' && LA12_0<='H')||LA12_0=='K'||(LA12_0>='M' && LA12_0<='Q')||(LA12_0>='U' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||(LA12_0>='d' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||(LA12_0>='q' && LA12_0<='t')||(LA12_0>='v' && LA12_0<='z')) ) {s = 23;}
|
||||
|
||||
else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 24;}
|
||||
|
||||
else if ( (LA12_0=='\"') ) {s = 25;}
|
||||
|
||||
else if ( (LA12_0=='\'') ) {s = 26;}
|
||||
|
||||
else if ( (LA12_0=='/') ) {s = 27;}
|
||||
|
||||
else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 28;}
|
||||
|
||||
else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>=':' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 29;}
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 1 :
|
||||
int LA12_26 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA12_26>='\u0000' && LA12_26<='\uFFFF')) ) {s = 56;}
|
||||
|
||||
else s = 29;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 2 :
|
||||
int LA12_18 = input.LA(1);
|
||||
int LA12_25 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA12_18>='\u0000' && LA12_18<='\uFFFF')) ) {s = 39;}
|
||||
if ( ((LA12_25>='\u0000' && LA12_25<='\uFFFF')) ) {s = 56;}
|
||||
|
||||
else s = 22;
|
||||
else s = 29;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,410 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?eclipse version="3.0"?>
|
||||
<plugin>
|
||||
<extension
|
||||
point="org.eclipse.ui.editors">
|
||||
<editor
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
|
||||
contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
|
||||
default="true"
|
||||
extensions="pseimx"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
name="Pattern Editor">
|
||||
</editor>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
|
||||
commandId="com.irtsaintexupery.xtext.pseim.Pattern.validate">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
<!-- copy qualified name -->
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
|
||||
<activeWhen>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened" />
|
||||
</activeWhen>
|
||||
</handler>
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
|
||||
<activeWhen>
|
||||
<and>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.XtextEditor.opened" />
|
||||
<iterate>
|
||||
<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
|
||||
</iterate>
|
||||
</and>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<extension point="org.eclipse.core.expressions.definitions">
|
||||
<definition id="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
<and>
|
||||
<reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
|
||||
<with variable="activeEditor">
|
||||
<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
|
||||
value="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
forcePluginActivation="true"/>
|
||||
</with>
|
||||
</and>
|
||||
</definition>
|
||||
<definition id="com.irtsaintexupery.xtext.pseim.Pattern.XtextEditor.opened">
|
||||
<and>
|
||||
<reference definitionId="isXtextEditorActive"/>
|
||||
<with variable="activeEditor">
|
||||
<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
|
||||
value="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
forcePluginActivation="true"/>
|
||||
</with>
|
||||
</and>
|
||||
</definition>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.preferencePages">
|
||||
<page
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
name="Pattern">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
</page>
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.coloring"
|
||||
name="Syntax Coloring">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
</page>
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.templates"
|
||||
name="Templates">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.propertyPages">
|
||||
<page
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
name="Pattern">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
<enabledWhen>
|
||||
<adapt type="org.eclipse.core.resources.IProject"/>
|
||||
</enabledWhen>
|
||||
<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.keywords">
|
||||
<keyword
|
||||
id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"
|
||||
label="Pattern"/>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.commands">
|
||||
<command
|
||||
description="Trigger expensive validation"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.validate"
|
||||
name="Validate">
|
||||
</command>
|
||||
<!-- copy qualified name -->
|
||||
<command
|
||||
id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
|
||||
categoryId="org.eclipse.ui.category.edit"
|
||||
description="Copy the qualified name for the selected element"
|
||||
name="Copy Qualified Name">
|
||||
</command>
|
||||
<command
|
||||
id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
|
||||
categoryId="org.eclipse.ui.category.edit"
|
||||
description="Copy the qualified name for the selected element"
|
||||
name="Copy Qualified Name">
|
||||
</command>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution
|
||||
locationURI="popup:#TextEditorContext?after=group.edit">
|
||||
<command
|
||||
commandId="com.irtsaintexupery.xtext.pseim.Pattern.validate"
|
||||
style="push"
|
||||
tooltip="Trigger expensive validation">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
<!-- copy qualified name -->
|
||||
<menuContribution locationURI="popup:#TextEditorContext?after=copy">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
|
||||
style="push" tooltip="Copy Qualified Name">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened" />
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
<menuContribution locationURI="menu:edit?after=copy">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
|
||||
style="push" tooltip="Copy Qualified Name">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened" />
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
<menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
|
||||
style="push" tooltip="Copy Qualified Name">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<and>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.XtextEditor.opened" />
|
||||
<iterate>
|
||||
<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
|
||||
</iterate>
|
||||
</and>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.FindReferences">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.FindReferences">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<!-- adding resource factories -->
|
||||
<extension
|
||||
point="org.eclipse.emf.ecore.extension_parser">
|
||||
<parser
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
|
||||
type="pseimx">
|
||||
</parser>
|
||||
</extension>
|
||||
<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
|
||||
<resourceServiceProvider
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
|
||||
uriExtension="pseimx">
|
||||
</resourceServiceProvider>
|
||||
</extension>
|
||||
<!-- marker definitions for com.irtsaintexupery.xtext.pseim.Pattern -->
|
||||
<extension
|
||||
id="pattern.check.fast"
|
||||
name="Pattern Problem"
|
||||
point="org.eclipse.core.resources.markers">
|
||||
<super type="org.eclipse.xtext.ui.check.fast"/>
|
||||
<persistent value="true"/>
|
||||
</extension>
|
||||
<extension
|
||||
id="pattern.check.normal"
|
||||
name="Pattern Problem"
|
||||
point="org.eclipse.core.resources.markers">
|
||||
<super type="org.eclipse.xtext.ui.check.normal"/>
|
||||
<persistent value="true"/>
|
||||
</extension>
|
||||
<extension
|
||||
id="pattern.check.expensive"
|
||||
name="Pattern Problem"
|
||||
point="org.eclipse.core.resources.markers">
|
||||
<super type="org.eclipse.xtext.ui.check.expensive"/>
|
||||
<persistent value="true"/>
|
||||
</extension>
|
||||
<extension point="org.eclipse.xtext.builder.participant">
|
||||
<participant
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
|
||||
fileExtensions="pseimx"/>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.preferencePages">
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.compiler.preferencePage"
|
||||
name="Compiler">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.propertyPages">
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.compiler.propertyPage"
|
||||
name="Compiler">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
<enabledWhen>
|
||||
<adapt type="org.eclipse.core.resources.IProject"/>
|
||||
</enabledWhen>
|
||||
<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration">
|
||||
<command
|
||||
commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.OpenGeneratedCode"
|
||||
style="push">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened" />
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler"
|
||||
commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand">
|
||||
<activeWhen>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened" />
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<!-- Quick Outline -->
|
||||
<extension
|
||||
point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.commands">
|
||||
<command
|
||||
description="Open the quick outline."
|
||||
id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
|
||||
name="Quick Outline">
|
||||
</command>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution
|
||||
locationURI="popup:#TextEditorContext?after=group.open">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
|
||||
style="push"
|
||||
tooltip="Open Quick Outline">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened"/>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<!-- quickfix marker resolution generator for com.irtsaintexupery.xtext.pseim.Pattern -->
|
||||
<extension
|
||||
point="org.eclipse.ui.ide.markerResolution">
|
||||
<markerResolutionGenerator
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
|
||||
markerType="com.irtsaintexupery.xtext.pseim.pattern.ui.pattern.check.fast">
|
||||
<attribute
|
||||
name="FIXABLE_KEY"
|
||||
value="true">
|
||||
</attribute>
|
||||
</markerResolutionGenerator>
|
||||
<markerResolutionGenerator
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
|
||||
markerType="com.irtsaintexupery.xtext.pseim.pattern.ui.pattern.check.normal">
|
||||
<attribute
|
||||
name="FIXABLE_KEY"
|
||||
value="true">
|
||||
</attribute>
|
||||
</markerResolutionGenerator>
|
||||
<markerResolutionGenerator
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
|
||||
markerType="com.irtsaintexupery.xtext.pseim.pattern.ui.pattern.check.expensive">
|
||||
<attribute
|
||||
name="FIXABLE_KEY"
|
||||
value="true">
|
||||
</attribute>
|
||||
</markerResolutionGenerator>
|
||||
</extension>
|
||||
<!-- Rename Refactoring -->
|
||||
<extension point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
|
||||
commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution
|
||||
locationURI="popup:#TextEditorContext?after=group.edit">
|
||||
<command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
|
||||
style="push">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.pseim.Pattern.Editor.opened">
|
||||
</reference>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.preferencePages">
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.pseim.Pattern"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.pseim.Pattern.refactoring"
|
||||
name="Refactoring">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Pattern"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension point="org.eclipse.compare.contentViewers">
|
||||
<viewer id="com.irtsaintexupery.xtext.pseim.Pattern.compare.contentViewers"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
|
||||
extensions="pseimx">
|
||||
</viewer>
|
||||
</extension>
|
||||
<extension point="org.eclipse.compare.contentMergeViewers">
|
||||
<viewer id="com.irtsaintexupery.xtext.pseim.Pattern.compare.contentMergeViewers"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
|
||||
extensions="pseimx" label="Pattern Compare">
|
||||
</viewer>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.editors.documentProviders">
|
||||
<provider id="com.irtsaintexupery.xtext.pseim.Pattern.editors.documentProviders"
|
||||
class="com.irtsaintexupery.xtext.pseim.ui.PatternExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
|
||||
extensions="pseimx">
|
||||
</provider>
|
||||
</extension>
|
||||
<extension point="org.eclipse.team.core.fileTypes">
|
||||
<fileTypes
|
||||
extension="pseimx"
|
||||
type="text">
|
||||
</fileTypes>
|
||||
</extension>
|
||||
</plugin>
|
||||
Binary file not shown.
@@ -564,12 +564,16 @@ rulePatternLink returns [EObject current=null]
|
||||
}
|
||||
)
|
||||
)
|
||||
otherlv_1='--{'
|
||||
{
|
||||
newLeafNode(otherlv_1, grammarAccess.getPatternLinkAccess().getHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1());
|
||||
}
|
||||
(
|
||||
(
|
||||
{
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_1_0());
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_2_0());
|
||||
}
|
||||
lv_linkType_1_0=ruleLinkType
|
||||
lv_linkType_2_0=ruleLinkType
|
||||
{
|
||||
if ($current==null) {
|
||||
$current = createModelElementForParent(grammarAccess.getPatternLinkRule());
|
||||
@@ -577,12 +581,16 @@ rulePatternLink returns [EObject current=null]
|
||||
set(
|
||||
$current,
|
||||
"linkType",
|
||||
lv_linkType_1_0,
|
||||
lv_linkType_2_0,
|
||||
"com.irtsaintexupery.xtext.pseim.Pattern.LinkType");
|
||||
afterParserOrEnumRuleCall();
|
||||
}
|
||||
)
|
||||
)
|
||||
otherlv_3='}->'
|
||||
{
|
||||
newLeafNode(otherlv_3, grammarAccess.getPatternLinkAccess().getRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3());
|
||||
}
|
||||
(
|
||||
(
|
||||
{
|
||||
@@ -591,7 +599,7 @@ rulePatternLink returns [EObject current=null]
|
||||
}
|
||||
}
|
||||
{
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_2_0());
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_4_0());
|
||||
}
|
||||
ruleQualifiedID
|
||||
{
|
||||
@@ -695,7 +703,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
}:
|
||||
(
|
||||
(
|
||||
enumLiteral_0='-{Transpose}->'
|
||||
enumLiteral_0='Transpose'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getTRANSPOSEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_0, grammarAccess.getLinkTypeAccess().getTRANSPOSEEnumLiteralDeclaration_0());
|
||||
@@ -703,7 +711,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_1='-{Identity}->'
|
||||
enumLiteral_1='Identity'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getIDENTITYEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_1, grammarAccess.getLinkTypeAccess().getIDENTITYEnumLiteralDeclaration_1());
|
||||
@@ -711,7 +719,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_2='-{First}->'
|
||||
enumLiteral_2='First'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getFIRSTEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_2, grammarAccess.getLinkTypeAccess().getFIRSTEnumLiteralDeclaration_2());
|
||||
@@ -719,7 +727,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_3='-{Rotate}->'
|
||||
enumLiteral_3='Rotate'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getROTATEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_3, grammarAccess.getLinkTypeAccess().getROTATEEnumLiteralDeclaration_3());
|
||||
@@ -727,7 +735,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_4='-{ShiftC}->'
|
||||
enumLiteral_4='ShiftC'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_4, grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4());
|
||||
@@ -735,7 +743,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_5='-{ShiftP}->'
|
||||
enumLiteral_5='ShiftP'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_5, grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5());
|
||||
@@ -743,7 +751,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_6='-{FlattenC}->'
|
||||
enumLiteral_6='FlattenC'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_6, grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6());
|
||||
@@ -751,7 +759,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_7='-{ForkC}->'
|
||||
enumLiteral_7='ForkC'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_7, grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7());
|
||||
@@ -759,7 +767,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_8='-{ForkP}->'
|
||||
enumLiteral_8='ForkP'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_8, grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8());
|
||||
@@ -767,7 +775,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_9='-{JoinC}->'
|
||||
enumLiteral_9='JoinC'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_9, grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9());
|
||||
@@ -775,7 +783,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_10='-{JoinP}->'
|
||||
enumLiteral_10='JoinP'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_10, grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10());
|
||||
@@ -783,7 +791,7 @@ ruleLinkType returns [Enumerator current=null]
|
||||
)
|
||||
|
|
||||
(
|
||||
enumLiteral_11='-{Last}->'
|
||||
enumLiteral_11='Last'
|
||||
{
|
||||
$current = grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_11, grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11());
|
||||
|
||||
@@ -1,29 +1,31 @@
|
||||
'('=12
|
||||
')'=14
|
||||
','=13
|
||||
'-{First}->'=27
|
||||
'-{FlattenC}->'=31
|
||||
'-{ForkC}->'=32
|
||||
'-{ForkP}->'=33
|
||||
'-{Identity}->'=26
|
||||
'-{JoinC}->'=34
|
||||
'-{JoinP}->'=35
|
||||
'-{Last}->'=36
|
||||
'-{Rotate}->'=28
|
||||
'-{ShiftC}->'=29
|
||||
'-{ShiftP}->'=30
|
||||
'-{Transpose}->'=25
|
||||
'.'=20
|
||||
'--{'=20
|
||||
'.'=22
|
||||
'First'=29
|
||||
'FlattenC'=33
|
||||
'ForkC'=34
|
||||
'ForkP'=35
|
||||
'Identity'=28
|
||||
'JoinC'=36
|
||||
'JoinP'=37
|
||||
'Last'=38
|
||||
'Rotate'=30
|
||||
'ShiftC'=31
|
||||
'ShiftP'=32
|
||||
'Transpose'=27
|
||||
'['=18
|
||||
']'=19
|
||||
'component'=17
|
||||
'in'=22
|
||||
'inout'=24
|
||||
'out'=23
|
||||
'in'=24
|
||||
'inout'=26
|
||||
'out'=25
|
||||
'pattern'=11
|
||||
'unspec'=21
|
||||
'unspec'=23
|
||||
'{'=15
|
||||
'}'=16
|
||||
'}->'=21
|
||||
RULE_ANY_OTHER=10
|
||||
RULE_ID=4
|
||||
RULE_INT=5
|
||||
@@ -57,3 +59,5 @@ T__33=33
|
||||
T__34=34
|
||||
T__35=35
|
||||
T__36=36
|
||||
T__37=37
|
||||
T__38=38
|
||||
|
||||
@@ -16,7 +16,9 @@ public class InternalPatternLexer extends Lexer {
|
||||
public static final int RULE_SL_COMMENT=8;
|
||||
public static final int T__19=19;
|
||||
public static final int T__15=15;
|
||||
public static final int T__37=37;
|
||||
public static final int T__16=16;
|
||||
public static final int T__38=38;
|
||||
public static final int T__17=17;
|
||||
public static final int T__18=18;
|
||||
public static final int T__11=11;
|
||||
@@ -247,10 +249,11 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__20;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:20:7: ( '.' )
|
||||
// InternalPattern.g:20:9: '.'
|
||||
// InternalPattern.g:20:7: ( '--{' )
|
||||
// InternalPattern.g:20:9: '--{'
|
||||
{
|
||||
match('.');
|
||||
match("--{");
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -267,10 +270,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__21;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:21:7: ( 'unspec' )
|
||||
// InternalPattern.g:21:9: 'unspec'
|
||||
// InternalPattern.g:21:7: ( '}->' )
|
||||
// InternalPattern.g:21:9: '}->'
|
||||
{
|
||||
match("unspec");
|
||||
match("}->");
|
||||
|
||||
|
||||
}
|
||||
@@ -288,11 +291,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__22;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:22:7: ( 'in' )
|
||||
// InternalPattern.g:22:9: 'in'
|
||||
// InternalPattern.g:22:7: ( '.' )
|
||||
// InternalPattern.g:22:9: '.'
|
||||
{
|
||||
match("in");
|
||||
|
||||
match('.');
|
||||
|
||||
}
|
||||
|
||||
@@ -309,10 +311,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__23;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:23:7: ( 'out' )
|
||||
// InternalPattern.g:23:9: 'out'
|
||||
// InternalPattern.g:23:7: ( 'unspec' )
|
||||
// InternalPattern.g:23:9: 'unspec'
|
||||
{
|
||||
match("out");
|
||||
match("unspec");
|
||||
|
||||
|
||||
}
|
||||
@@ -330,10 +332,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__24;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:24:7: ( 'inout' )
|
||||
// InternalPattern.g:24:9: 'inout'
|
||||
// InternalPattern.g:24:7: ( 'in' )
|
||||
// InternalPattern.g:24:9: 'in'
|
||||
{
|
||||
match("inout");
|
||||
match("in");
|
||||
|
||||
|
||||
}
|
||||
@@ -351,10 +353,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__25;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:25:7: ( '-{Transpose}->' )
|
||||
// InternalPattern.g:25:9: '-{Transpose}->'
|
||||
// InternalPattern.g:25:7: ( 'out' )
|
||||
// InternalPattern.g:25:9: 'out'
|
||||
{
|
||||
match("-{Transpose}->");
|
||||
match("out");
|
||||
|
||||
|
||||
}
|
||||
@@ -372,10 +374,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__26;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:26:7: ( '-{Identity}->' )
|
||||
// InternalPattern.g:26:9: '-{Identity}->'
|
||||
// InternalPattern.g:26:7: ( 'inout' )
|
||||
// InternalPattern.g:26:9: 'inout'
|
||||
{
|
||||
match("-{Identity}->");
|
||||
match("inout");
|
||||
|
||||
|
||||
}
|
||||
@@ -393,10 +395,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__27;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:27:7: ( '-{First}->' )
|
||||
// InternalPattern.g:27:9: '-{First}->'
|
||||
// InternalPattern.g:27:7: ( 'Transpose' )
|
||||
// InternalPattern.g:27:9: 'Transpose'
|
||||
{
|
||||
match("-{First}->");
|
||||
match("Transpose");
|
||||
|
||||
|
||||
}
|
||||
@@ -414,10 +416,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__28;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:28:7: ( '-{Rotate}->' )
|
||||
// InternalPattern.g:28:9: '-{Rotate}->'
|
||||
// InternalPattern.g:28:7: ( 'Identity' )
|
||||
// InternalPattern.g:28:9: 'Identity'
|
||||
{
|
||||
match("-{Rotate}->");
|
||||
match("Identity");
|
||||
|
||||
|
||||
}
|
||||
@@ -435,10 +437,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__29;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:29:7: ( '-{ShiftC}->' )
|
||||
// InternalPattern.g:29:9: '-{ShiftC}->'
|
||||
// InternalPattern.g:29:7: ( 'First' )
|
||||
// InternalPattern.g:29:9: 'First'
|
||||
{
|
||||
match("-{ShiftC}->");
|
||||
match("First");
|
||||
|
||||
|
||||
}
|
||||
@@ -456,10 +458,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__30;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:30:7: ( '-{ShiftP}->' )
|
||||
// InternalPattern.g:30:9: '-{ShiftP}->'
|
||||
// InternalPattern.g:30:7: ( 'Rotate' )
|
||||
// InternalPattern.g:30:9: 'Rotate'
|
||||
{
|
||||
match("-{ShiftP}->");
|
||||
match("Rotate");
|
||||
|
||||
|
||||
}
|
||||
@@ -477,10 +479,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__31;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:31:7: ( '-{FlattenC}->' )
|
||||
// InternalPattern.g:31:9: '-{FlattenC}->'
|
||||
// InternalPattern.g:31:7: ( 'ShiftC' )
|
||||
// InternalPattern.g:31:9: 'ShiftC'
|
||||
{
|
||||
match("-{FlattenC}->");
|
||||
match("ShiftC");
|
||||
|
||||
|
||||
}
|
||||
@@ -498,10 +500,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__32;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:32:7: ( '-{ForkC}->' )
|
||||
// InternalPattern.g:32:9: '-{ForkC}->'
|
||||
// InternalPattern.g:32:7: ( 'ShiftP' )
|
||||
// InternalPattern.g:32:9: 'ShiftP'
|
||||
{
|
||||
match("-{ForkC}->");
|
||||
match("ShiftP");
|
||||
|
||||
|
||||
}
|
||||
@@ -519,10 +521,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__33;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:33:7: ( '-{ForkP}->' )
|
||||
// InternalPattern.g:33:9: '-{ForkP}->'
|
||||
// InternalPattern.g:33:7: ( 'FlattenC' )
|
||||
// InternalPattern.g:33:9: 'FlattenC'
|
||||
{
|
||||
match("-{ForkP}->");
|
||||
match("FlattenC");
|
||||
|
||||
|
||||
}
|
||||
@@ -540,10 +542,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__34;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:34:7: ( '-{JoinC}->' )
|
||||
// InternalPattern.g:34:9: '-{JoinC}->'
|
||||
// InternalPattern.g:34:7: ( 'ForkC' )
|
||||
// InternalPattern.g:34:9: 'ForkC'
|
||||
{
|
||||
match("-{JoinC}->");
|
||||
match("ForkC");
|
||||
|
||||
|
||||
}
|
||||
@@ -561,10 +563,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__35;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:35:7: ( '-{JoinP}->' )
|
||||
// InternalPattern.g:35:9: '-{JoinP}->'
|
||||
// InternalPattern.g:35:7: ( 'ForkP' )
|
||||
// InternalPattern.g:35:9: 'ForkP'
|
||||
{
|
||||
match("-{JoinP}->");
|
||||
match("ForkP");
|
||||
|
||||
|
||||
}
|
||||
@@ -582,10 +584,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = T__36;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:36:7: ( '-{Last}->' )
|
||||
// InternalPattern.g:36:9: '-{Last}->'
|
||||
// InternalPattern.g:36:7: ( 'JoinC' )
|
||||
// InternalPattern.g:36:9: 'JoinC'
|
||||
{
|
||||
match("-{Last}->");
|
||||
match("JoinC");
|
||||
|
||||
|
||||
}
|
||||
@@ -598,15 +600,57 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
// $ANTLR end "T__36"
|
||||
|
||||
// $ANTLR start "T__37"
|
||||
public final void mT__37() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__37;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:37:7: ( 'JoinP' )
|
||||
// InternalPattern.g:37:9: 'JoinP'
|
||||
{
|
||||
match("JoinP");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__37"
|
||||
|
||||
// $ANTLR start "T__38"
|
||||
public final void mT__38() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__38;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:38:7: ( 'Last' )
|
||||
// InternalPattern.g:38:9: 'Last'
|
||||
{
|
||||
match("Last");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__38"
|
||||
|
||||
// $ANTLR start "RULE_ID"
|
||||
public final void mRULE_ID() throws RecognitionException {
|
||||
try {
|
||||
int _type = RULE_ID;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:795:9: ( ( '^' )? ( '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:803:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
|
||||
// InternalPattern.g:803:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
{
|
||||
// InternalPattern.g:795:11: ( '^' )?
|
||||
// InternalPattern.g:803:11: ( '^' )?
|
||||
int alt1=2;
|
||||
int LA1_0 = input.LA(1);
|
||||
|
||||
@@ -615,7 +659,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt1) {
|
||||
case 1 :
|
||||
// InternalPattern.g:795:11: '^'
|
||||
// InternalPattern.g:803:11: '^'
|
||||
{
|
||||
match('^');
|
||||
|
||||
@@ -633,7 +677,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
recover(mse);
|
||||
throw mse;}
|
||||
|
||||
// InternalPattern.g:795:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
// InternalPattern.g:803:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
loop2:
|
||||
do {
|
||||
int alt2=2;
|
||||
@@ -682,10 +726,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_INT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:797:10: ( ( '0' .. '9' )+ )
|
||||
// InternalPattern.g:797:12: ( '0' .. '9' )+
|
||||
// InternalPattern.g:805:10: ( ( '0' .. '9' )+ )
|
||||
// InternalPattern.g:805:12: ( '0' .. '9' )+
|
||||
{
|
||||
// InternalPattern.g:797:12: ( '0' .. '9' )+
|
||||
// InternalPattern.g:805:12: ( '0' .. '9' )+
|
||||
int cnt3=0;
|
||||
loop3:
|
||||
do {
|
||||
@@ -699,7 +743,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt3) {
|
||||
case 1 :
|
||||
// InternalPattern.g:797:13: '0' .. '9'
|
||||
// InternalPattern.g:805:13: '0' .. '9'
|
||||
{
|
||||
matchRange('0','9');
|
||||
|
||||
@@ -731,10 +775,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_STRING;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:799:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
|
||||
// InternalPattern.g:799:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
// InternalPattern.g:807:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
|
||||
// InternalPattern.g:807:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
{
|
||||
// InternalPattern.g:799:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
// InternalPattern.g:807:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
int alt6=2;
|
||||
int LA6_0 = input.LA(1);
|
||||
|
||||
@@ -752,10 +796,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt6) {
|
||||
case 1 :
|
||||
// InternalPattern.g:799:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
|
||||
// InternalPattern.g:807:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
|
||||
{
|
||||
match('\"');
|
||||
// InternalPattern.g:799:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
|
||||
// InternalPattern.g:807:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
|
||||
loop4:
|
||||
do {
|
||||
int alt4=3;
|
||||
@@ -771,7 +815,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt4) {
|
||||
case 1 :
|
||||
// InternalPattern.g:799:21: '\\\\' .
|
||||
// InternalPattern.g:807:21: '\\\\' .
|
||||
{
|
||||
match('\\');
|
||||
matchAny();
|
||||
@@ -779,7 +823,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:799:28: ~ ( ( '\\\\' | '\"' ) )
|
||||
// InternalPattern.g:807:28: ~ ( ( '\\\\' | '\"' ) )
|
||||
{
|
||||
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
@@ -804,10 +848,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:799:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
|
||||
// InternalPattern.g:807:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
|
||||
{
|
||||
match('\'');
|
||||
// InternalPattern.g:799:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
|
||||
// InternalPattern.g:807:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
|
||||
loop5:
|
||||
do {
|
||||
int alt5=3;
|
||||
@@ -823,7 +867,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt5) {
|
||||
case 1 :
|
||||
// InternalPattern.g:799:54: '\\\\' .
|
||||
// InternalPattern.g:807:54: '\\\\' .
|
||||
{
|
||||
match('\\');
|
||||
matchAny();
|
||||
@@ -831,7 +875,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:799:61: ~ ( ( '\\\\' | '\\'' ) )
|
||||
// InternalPattern.g:807:61: ~ ( ( '\\\\' | '\\'' ) )
|
||||
{
|
||||
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
@@ -874,12 +918,12 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_ML_COMMENT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:801:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
|
||||
// InternalPattern.g:801:19: '/*' ( options {greedy=false; } : . )* '*/'
|
||||
// InternalPattern.g:809:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
|
||||
// InternalPattern.g:809:19: '/*' ( options {greedy=false; } : . )* '*/'
|
||||
{
|
||||
match("/*");
|
||||
|
||||
// InternalPattern.g:801:24: ( options {greedy=false; } : . )*
|
||||
// InternalPattern.g:809:24: ( options {greedy=false; } : . )*
|
||||
loop7:
|
||||
do {
|
||||
int alt7=2;
|
||||
@@ -904,7 +948,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt7) {
|
||||
case 1 :
|
||||
// InternalPattern.g:801:52: .
|
||||
// InternalPattern.g:809:52: .
|
||||
{
|
||||
matchAny();
|
||||
|
||||
@@ -934,12 +978,12 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_SL_COMMENT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:803:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
|
||||
// InternalPattern.g:803:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
|
||||
// InternalPattern.g:811:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
|
||||
// InternalPattern.g:811:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
|
||||
{
|
||||
match("//");
|
||||
|
||||
// InternalPattern.g:803:24: (~ ( ( '\\n' | '\\r' ) ) )*
|
||||
// InternalPattern.g:811:24: (~ ( ( '\\n' | '\\r' ) ) )*
|
||||
loop8:
|
||||
do {
|
||||
int alt8=2;
|
||||
@@ -952,7 +996,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
switch (alt8) {
|
||||
case 1 :
|
||||
// InternalPattern.g:803:24: ~ ( ( '\\n' | '\\r' ) )
|
||||
// InternalPattern.g:811: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') ) {
|
||||
input.consume();
|
||||
@@ -972,7 +1016,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
} while (true);
|
||||
|
||||
// InternalPattern.g:803:40: ( ( '\\r' )? '\\n' )?
|
||||
// InternalPattern.g:811:40: ( ( '\\r' )? '\\n' )?
|
||||
int alt10=2;
|
||||
int LA10_0 = input.LA(1);
|
||||
|
||||
@@ -981,9 +1025,9 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt10) {
|
||||
case 1 :
|
||||
// InternalPattern.g:803:41: ( '\\r' )? '\\n'
|
||||
// InternalPattern.g:811:41: ( '\\r' )? '\\n'
|
||||
{
|
||||
// InternalPattern.g:803:41: ( '\\r' )?
|
||||
// InternalPattern.g:811:41: ( '\\r' )?
|
||||
int alt9=2;
|
||||
int LA9_0 = input.LA(1);
|
||||
|
||||
@@ -992,7 +1036,7 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
switch (alt9) {
|
||||
case 1 :
|
||||
// InternalPattern.g:803:41: '\\r'
|
||||
// InternalPattern.g:811:41: '\\r'
|
||||
{
|
||||
match('\r');
|
||||
|
||||
@@ -1024,10 +1068,10 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_WS;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:805:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
|
||||
// InternalPattern.g:805:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
// InternalPattern.g:813:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
|
||||
// InternalPattern.g:813:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
{
|
||||
// InternalPattern.g:805:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
// InternalPattern.g:813:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
int cnt11=0;
|
||||
loop11:
|
||||
do {
|
||||
@@ -1081,8 +1125,8 @@ public class InternalPatternLexer extends Lexer {
|
||||
try {
|
||||
int _type = RULE_ANY_OTHER;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalPattern.g:807:16: ( . )
|
||||
// InternalPattern.g:807:18: .
|
||||
// InternalPattern.g:815:16: ( . )
|
||||
// InternalPattern.g:815:18: .
|
||||
{
|
||||
matchAny();
|
||||
|
||||
@@ -1097,8 +1141,8 @@ public class InternalPatternLexer extends Lexer {
|
||||
// $ANTLR end "RULE_ANY_OTHER"
|
||||
|
||||
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 | 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=33;
|
||||
// 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 | T__37 | T__38 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
|
||||
int alt12=35;
|
||||
alt12 = dfa12.predict(input);
|
||||
switch (alt12) {
|
||||
case 1 :
|
||||
@@ -1284,49 +1328,63 @@ public class InternalPatternLexer extends Lexer {
|
||||
}
|
||||
break;
|
||||
case 27 :
|
||||
// InternalPattern.g:1:166: RULE_ID
|
||||
// InternalPattern.g:1:166: T__37
|
||||
{
|
||||
mT__37();
|
||||
|
||||
}
|
||||
break;
|
||||
case 28 :
|
||||
// InternalPattern.g:1:172: T__38
|
||||
{
|
||||
mT__38();
|
||||
|
||||
}
|
||||
break;
|
||||
case 29 :
|
||||
// InternalPattern.g:1:178: RULE_ID
|
||||
{
|
||||
mRULE_ID();
|
||||
|
||||
}
|
||||
break;
|
||||
case 28 :
|
||||
// InternalPattern.g:1:174: RULE_INT
|
||||
case 30 :
|
||||
// InternalPattern.g:1:186: RULE_INT
|
||||
{
|
||||
mRULE_INT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 29 :
|
||||
// InternalPattern.g:1:183: RULE_STRING
|
||||
case 31 :
|
||||
// InternalPattern.g:1:195: RULE_STRING
|
||||
{
|
||||
mRULE_STRING();
|
||||
|
||||
}
|
||||
break;
|
||||
case 30 :
|
||||
// InternalPattern.g:1:195: RULE_ML_COMMENT
|
||||
case 32 :
|
||||
// InternalPattern.g:1:207: RULE_ML_COMMENT
|
||||
{
|
||||
mRULE_ML_COMMENT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 31 :
|
||||
// InternalPattern.g:1:211: RULE_SL_COMMENT
|
||||
case 33 :
|
||||
// InternalPattern.g:1:223: RULE_SL_COMMENT
|
||||
{
|
||||
mRULE_SL_COMMENT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 32 :
|
||||
// InternalPattern.g:1:227: RULE_WS
|
||||
case 34 :
|
||||
// InternalPattern.g:1:239: RULE_WS
|
||||
{
|
||||
mRULE_WS();
|
||||
|
||||
}
|
||||
break;
|
||||
case 33 :
|
||||
// InternalPattern.g:1:235: RULE_ANY_OTHER
|
||||
case 35 :
|
||||
// InternalPattern.g:1:247: RULE_ANY_OTHER
|
||||
{
|
||||
mRULE_ANY_OTHER();
|
||||
|
||||
@@ -1340,111 +1398,156 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
protected DFA12 dfa12 = new DFA12(this);
|
||||
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\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";
|
||||
"\1\uffff\1\37\4\uffff\1\45\1\37\2\uffff\1\35\1\uffff\12\37\1\35\2\uffff\3\35\2\uffff\1\37\7\uffff\1\37\4\uffff\1\37\1\100\12\37\5\uffff\4\37\1\uffff\1\117\15\37\1\uffff\10\37\1\147\3\37\1\153\2\37\1\156\1\37\1\160\1\161\2\37\1\165\1\166\1\uffff\2\37\1\171\1\uffff\2\37\1\uffff\1\37\2\uffff\1\175\1\176\1\177\2\uffff\1\u0080\1\37\1\uffff\3\37\4\uffff\2\37\1\u0087\1\u0088\1\u0089\1\u008a\4\uffff";
|
||||
static final String DFA12_eofS =
|
||||
"\136\uffff";
|
||||
"\u008b\uffff";
|
||||
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\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";
|
||||
"\1\0\1\141\4\uffff\1\55\1\157\2\uffff\1\55\1\uffff\2\156\1\165\1\162\1\144\1\151\1\157\1\150\1\157\1\141\1\101\2\uffff\2\0\1\52\2\uffff\1\164\7\uffff\1\155\4\uffff\1\163\1\60\1\164\1\141\1\145\1\162\1\141\1\162\1\164\2\151\1\163\5\uffff\1\164\2\160\1\165\1\uffff\1\60\2\156\1\163\1\164\1\153\1\141\1\146\1\156\1\164\1\145\1\157\1\145\1\164\1\uffff\1\163\3\164\1\103\2\164\1\103\1\60\1\162\1\156\1\143\1\60\1\160\1\151\1\60\1\145\2\60\1\145\1\103\2\60\1\uffff\1\156\1\145\1\60\1\uffff\1\157\1\164\1\uffff\1\156\2\uffff\3\60\2\uffff\1\60\1\156\1\uffff\1\163\1\171\1\103\4\uffff\1\164\1\145\4\60\4\uffff";
|
||||
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\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";
|
||||
"\1\uffff\1\141\4\uffff\1\55\1\157\2\uffff\1\55\1\uffff\2\156\1\165\1\162\1\144\2\157\1\150\1\157\1\141\1\172\2\uffff\2\uffff\1\57\2\uffff\1\164\7\uffff\1\155\4\uffff\1\163\1\172\1\164\1\141\1\145\1\162\1\141\1\162\1\164\2\151\1\163\5\uffff\1\164\2\160\1\165\1\uffff\1\172\2\156\1\163\1\164\1\153\1\141\1\146\1\156\1\164\1\145\1\157\1\145\1\164\1\uffff\1\163\3\164\1\120\2\164\1\120\1\172\1\162\1\156\1\143\1\172\1\160\1\151\1\172\1\145\2\172\1\145\1\120\2\172\1\uffff\1\156\1\145\1\172\1\uffff\1\157\1\164\1\uffff\1\156\2\uffff\3\172\2\uffff\1\172\1\156\1\uffff\1\163\1\171\1\103\4\uffff\1\164\1\145\4\172\4\uffff";
|
||||
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\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";
|
||||
"\2\uffff\1\2\1\3\1\4\1\5\2\uffff\1\10\1\11\1\uffff\1\14\13\uffff\1\35\1\36\3\uffff\1\42\1\43\1\uffff\1\35\1\2\1\3\1\4\1\5\1\13\1\6\1\uffff\1\10\1\11\1\12\1\14\14\uffff\1\36\1\37\1\40\1\41\1\42\4\uffff\1\16\16\uffff\1\17\27\uffff\1\34\3\uffff\1\20\2\uffff\1\23\1\uffff\1\30\1\31\3\uffff\1\32\1\33\2\uffff\1\15\3\uffff\1\24\1\25\1\26\1\1\6\uffff\1\22\1\27\1\7\1\21";
|
||||
static final String DFA12_specialS =
|
||||
"\1\1\21\uffff\1\2\1\0\112\uffff}>";
|
||||
"\1\2\30\uffff\1\1\1\0\160\uffff}>";
|
||||
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",
|
||||
"\1\27",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\11\35\2\34\2\35\1\34\22\35\1\34\1\35\1\31\4\35\1\32\1\2\1\4\2\35\1\3\1\12\1\13\1\33\12\30\7\35\5\27\1\21\2\27\1\20\1\24\1\27\1\25\5\27\1\22\1\23\1\17\6\27\1\10\1\35\1\11\1\26\1\27\1\35\2\27\1\7\5\27\1\15\5\27\1\16\1\1\4\27\1\14\5\27\1\5\1\35\1\6\uff82\35",
|
||||
"\1\36",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\42",
|
||||
"\1\43",
|
||||
"",
|
||||
"\1\44",
|
||||
"\1\45",
|
||||
"\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
"\1\46",
|
||||
"",
|
||||
"",
|
||||
"\0\47",
|
||||
"\0\47",
|
||||
"\1\50\4\uffff\1\51",
|
||||
"",
|
||||
"\1\51",
|
||||
"",
|
||||
"\1\53",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\54",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\55",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\16\30\1\56\13\30",
|
||||
"\1\60",
|
||||
"\1\63\2\uffff\1\62\1\66\1\uffff\1\67\5\uffff\1\64\1\65\1\61",
|
||||
"\1\56",
|
||||
"\1\57",
|
||||
"\1\60\2\uffff\1\61\2\uffff\1\62",
|
||||
"\1\63",
|
||||
"\1\64",
|
||||
"\1\65",
|
||||
"\1\66",
|
||||
"\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"",
|
||||
"\0\70",
|
||||
"\0\70",
|
||||
"\1\71\4\uffff\1\72",
|
||||
"",
|
||||
"",
|
||||
"\1\74",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\70",
|
||||
"\1\71",
|
||||
"\1\72",
|
||||
"\1\73",
|
||||
"",
|
||||
"\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\75",
|
||||
"",
|
||||
"\1\100",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\76",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\16\37\1\77\13\37",
|
||||
"\1\101",
|
||||
"",
|
||||
"\1\102",
|
||||
"\1\103",
|
||||
"\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\114",
|
||||
"\1\115",
|
||||
"\1\116",
|
||||
"\1\117",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\120",
|
||||
"\1\121",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
"",
|
||||
"\1\123\14\uffff\1\124",
|
||||
"\1\122",
|
||||
"\1\123",
|
||||
"\1\124",
|
||||
"\1\125",
|
||||
"\1\126\14\uffff\1\127",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
"\1\126",
|
||||
"\1\127",
|
||||
"\1\130",
|
||||
"\1\131",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\132\14\uffff\1\133",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\132",
|
||||
"\1\133",
|
||||
"\1\134",
|
||||
"",
|
||||
"\1\135",
|
||||
"\1\136",
|
||||
"\1\137",
|
||||
"\1\140",
|
||||
"\1\141\14\uffff\1\142",
|
||||
"\1\143",
|
||||
"\1\144",
|
||||
"\1\145\14\uffff\1\146",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\150",
|
||||
"\1\151",
|
||||
"\1\152",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\154",
|
||||
"\1\155",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\157",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\162",
|
||||
"\1\163\14\uffff\1\164",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"\1\167",
|
||||
"\1\170",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"\1\172",
|
||||
"\1\173",
|
||||
"",
|
||||
"\1\174",
|
||||
"",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\1\u0081",
|
||||
"",
|
||||
"\1\u0082",
|
||||
"\1\u0083",
|
||||
"\1\u0084",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\u0085",
|
||||
"\1\u0086",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\12\30\7\uffff\32\30\4\uffff\1\30\1\uffff\32\30",
|
||||
""
|
||||
};
|
||||
|
||||
@@ -1478,23 +1581,33 @@ public class InternalPatternLexer extends Lexer {
|
||||
this.transition = DFA12_transition;
|
||||
}
|
||||
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 | 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 );";
|
||||
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 | T__37 | T__38 | 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 {
|
||||
IntStream input = _input;
|
||||
int _s = s;
|
||||
switch ( s ) {
|
||||
case 0 :
|
||||
int LA12_19 = input.LA(1);
|
||||
int LA12_26 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA12_19>='\u0000' && LA12_19<='\uFFFF')) ) {s = 39;}
|
||||
if ( ((LA12_26>='\u0000' && LA12_26<='\uFFFF')) ) {s = 56;}
|
||||
|
||||
else s = 22;
|
||||
else s = 29;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 1 :
|
||||
int LA12_25 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA12_25>='\u0000' && LA12_25<='\uFFFF')) ) {s = 56;}
|
||||
|
||||
else s = 29;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 2 :
|
||||
int LA12_0 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
@@ -1516,41 +1629,45 @@ public class InternalPatternLexer extends Lexer {
|
||||
|
||||
else if ( (LA12_0==']') ) {s = 9;}
|
||||
|
||||
else if ( (LA12_0=='.') ) {s = 10;}
|
||||
else if ( (LA12_0=='-') ) {s = 10;}
|
||||
|
||||
else if ( (LA12_0=='u') ) {s = 11;}
|
||||
else if ( (LA12_0=='.') ) {s = 11;}
|
||||
|
||||
else if ( (LA12_0=='i') ) {s = 12;}
|
||||
else if ( (LA12_0=='u') ) {s = 12;}
|
||||
|
||||
else if ( (LA12_0=='o') ) {s = 13;}
|
||||
else if ( (LA12_0=='i') ) {s = 13;}
|
||||
|
||||
else if ( (LA12_0=='-') ) {s = 14;}
|
||||
else if ( (LA12_0=='o') ) {s = 14;}
|
||||
|
||||
else if ( (LA12_0=='^') ) {s = 15;}
|
||||
else if ( (LA12_0=='T') ) {s = 15;}
|
||||
|
||||
else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||(LA12_0>='d' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||(LA12_0>='q' && LA12_0<='t')||(LA12_0>='v' && LA12_0<='z')) ) {s = 16;}
|
||||
else if ( (LA12_0=='I') ) {s = 16;}
|
||||
|
||||
else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 17;}
|
||||
else if ( (LA12_0=='F') ) {s = 17;}
|
||||
|
||||
else if ( (LA12_0=='\"') ) {s = 18;}
|
||||
else if ( (LA12_0=='R') ) {s = 18;}
|
||||
|
||||
else if ( (LA12_0=='\'') ) {s = 19;}
|
||||
else if ( (LA12_0=='S') ) {s = 19;}
|
||||
|
||||
else if ( (LA12_0=='/') ) {s = 20;}
|
||||
else if ( (LA12_0=='J') ) {s = 20;}
|
||||
|
||||
else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 21;}
|
||||
else if ( (LA12_0=='L') ) {s = 21;}
|
||||
|
||||
else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>=':' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 22;}
|
||||
else if ( (LA12_0=='^') ) {s = 22;}
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 2 :
|
||||
int LA12_18 = input.LA(1);
|
||||
else if ( ((LA12_0>='A' && LA12_0<='E')||(LA12_0>='G' && LA12_0<='H')||LA12_0=='K'||(LA12_0>='M' && LA12_0<='Q')||(LA12_0>='U' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||(LA12_0>='d' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||(LA12_0>='q' && LA12_0<='t')||(LA12_0>='v' && LA12_0<='z')) ) {s = 23;}
|
||||
|
||||
s = -1;
|
||||
if ( ((LA12_18>='\u0000' && LA12_18<='\uFFFF')) ) {s = 39;}
|
||||
else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 24;}
|
||||
|
||||
else s = 22;
|
||||
else if ( (LA12_0=='\"') ) {s = 25;}
|
||||
|
||||
else if ( (LA12_0=='\'') ) {s = 26;}
|
||||
|
||||
else if ( (LA12_0=='/') ) {s = 27;}
|
||||
|
||||
else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 28;}
|
||||
|
||||
else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>=':' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 29;}
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
|
||||
@@ -22,13 +22,15 @@ import java.util.ArrayList;
|
||||
@SuppressWarnings("all")
|
||||
public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
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}->'", "'-{ShiftC}->'", "'-{ShiftP}->'", "'-{FlattenC}->'", "'-{ForkC}->'", "'-{ForkP}->'", "'-{JoinC}->'", "'-{JoinP}->'", "'-{Last}->'"
|
||||
"<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_SL_COMMENT=8;
|
||||
public static final int T__19=19;
|
||||
public static final int T__15=15;
|
||||
public static final int T__37=37;
|
||||
public static final int T__16=16;
|
||||
public static final int T__38=38;
|
||||
public static final int T__17=17;
|
||||
public static final int T__18=18;
|
||||
public static final int T__11=11;
|
||||
@@ -665,7 +667,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
int alt8=2;
|
||||
int LA8_0 = input.LA(1);
|
||||
|
||||
if ( ((LA8_0>=21 && LA8_0<=24)) ) {
|
||||
if ( ((LA8_0>=23 && LA8_0<=26)) ) {
|
||||
alt8=1;
|
||||
}
|
||||
switch (alt8) {
|
||||
@@ -1288,22 +1290,24 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
|
||||
// $ANTLR start "rulePatternLink"
|
||||
// InternalPattern.g:543:1: rulePatternLink returns [EObject current=null] : ( ( ( ruleQualifiedID ) ) ( (lv_linkType_1_0= ruleLinkType ) ) ( ( ruleQualifiedID ) ) ) ;
|
||||
// InternalPattern.g:543:1: rulePatternLink returns [EObject current=null] : ( ( ( ruleQualifiedID ) ) otherlv_1= '--{' ( (lv_linkType_2_0= ruleLinkType ) ) otherlv_3= '}->' ( ( ruleQualifiedID ) ) ) ;
|
||||
public final EObject rulePatternLink() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
Enumerator lv_linkType_1_0 = null;
|
||||
Token otherlv_1=null;
|
||||
Token otherlv_3=null;
|
||||
Enumerator lv_linkType_2_0 = null;
|
||||
|
||||
|
||||
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalPattern.g:549:2: ( ( ( ( ruleQualifiedID ) ) ( (lv_linkType_1_0= ruleLinkType ) ) ( ( ruleQualifiedID ) ) ) )
|
||||
// InternalPattern.g:550:2: ( ( ( ruleQualifiedID ) ) ( (lv_linkType_1_0= ruleLinkType ) ) ( ( ruleQualifiedID ) ) )
|
||||
// InternalPattern.g:549:2: ( ( ( ( ruleQualifiedID ) ) otherlv_1= '--{' ( (lv_linkType_2_0= ruleLinkType ) ) otherlv_3= '}->' ( ( ruleQualifiedID ) ) ) )
|
||||
// InternalPattern.g:550:2: ( ( ( ruleQualifiedID ) ) otherlv_1= '--{' ( (lv_linkType_2_0= ruleLinkType ) ) otherlv_3= '}->' ( ( ruleQualifiedID ) ) )
|
||||
{
|
||||
// InternalPattern.g:550:2: ( ( ( ruleQualifiedID ) ) ( (lv_linkType_1_0= ruleLinkType ) ) ( ( ruleQualifiedID ) ) )
|
||||
// InternalPattern.g:551:3: ( ( ruleQualifiedID ) ) ( (lv_linkType_1_0= ruleLinkType ) ) ( ( ruleQualifiedID ) )
|
||||
// InternalPattern.g:550:2: ( ( ( ruleQualifiedID ) ) otherlv_1= '--{' ( (lv_linkType_2_0= ruleLinkType ) ) otherlv_3= '}->' ( ( ruleQualifiedID ) ) )
|
||||
// InternalPattern.g:551:3: ( ( ruleQualifiedID ) ) otherlv_1= '--{' ( (lv_linkType_2_0= ruleLinkType ) ) otherlv_3= '}->' ( ( ruleQualifiedID ) )
|
||||
{
|
||||
// InternalPattern.g:551:3: ( ( ruleQualifiedID ) )
|
||||
// InternalPattern.g:552:4: ( ruleQualifiedID )
|
||||
@@ -1333,17 +1337,21 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
}
|
||||
|
||||
// InternalPattern.g:567:3: ( (lv_linkType_1_0= ruleLinkType ) )
|
||||
// InternalPattern.g:568:4: (lv_linkType_1_0= ruleLinkType )
|
||||
otherlv_1=(Token)match(input,20,FOLLOW_16);
|
||||
|
||||
newLeafNode(otherlv_1, grammarAccess.getPatternLinkAccess().getHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1());
|
||||
|
||||
// InternalPattern.g:571:3: ( (lv_linkType_2_0= ruleLinkType ) )
|
||||
// InternalPattern.g:572:4: (lv_linkType_2_0= ruleLinkType )
|
||||
{
|
||||
// InternalPattern.g:568:4: (lv_linkType_1_0= ruleLinkType )
|
||||
// InternalPattern.g:569:5: lv_linkType_1_0= ruleLinkType
|
||||
// InternalPattern.g:572:4: (lv_linkType_2_0= ruleLinkType )
|
||||
// InternalPattern.g:573:5: lv_linkType_2_0= ruleLinkType
|
||||
{
|
||||
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_1_0());
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_2_0());
|
||||
|
||||
pushFollow(FOLLOW_16);
|
||||
lv_linkType_1_0=ruleLinkType();
|
||||
pushFollow(FOLLOW_17);
|
||||
lv_linkType_2_0=ruleLinkType();
|
||||
|
||||
state._fsp--;
|
||||
|
||||
@@ -1354,7 +1362,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
set(
|
||||
current,
|
||||
"linkType",
|
||||
lv_linkType_1_0,
|
||||
lv_linkType_2_0,
|
||||
"com.irtsaintexupery.xtext.pseim.Pattern.LinkType");
|
||||
afterParserOrEnumRuleCall();
|
||||
|
||||
@@ -1364,11 +1372,15 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
}
|
||||
|
||||
// InternalPattern.g:586:3: ( ( ruleQualifiedID ) )
|
||||
// InternalPattern.g:587:4: ( ruleQualifiedID )
|
||||
otherlv_3=(Token)match(input,21,FOLLOW_18);
|
||||
|
||||
newLeafNode(otherlv_3, grammarAccess.getPatternLinkAccess().getRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3());
|
||||
|
||||
// InternalPattern.g:594:3: ( ( ruleQualifiedID ) )
|
||||
// InternalPattern.g:595:4: ( ruleQualifiedID )
|
||||
{
|
||||
// InternalPattern.g:587:4: ( ruleQualifiedID )
|
||||
// InternalPattern.g:588:5: ruleQualifiedID
|
||||
// InternalPattern.g:595:4: ( ruleQualifiedID )
|
||||
// InternalPattern.g:596:5: ruleQualifiedID
|
||||
{
|
||||
|
||||
if (current==null) {
|
||||
@@ -1376,7 +1388,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
|
||||
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_2_0());
|
||||
newCompositeNode(grammarAccess.getPatternLinkAccess().getDstPatternPortCrossReference_4_0());
|
||||
|
||||
pushFollow(FOLLOW_2);
|
||||
ruleQualifiedID();
|
||||
@@ -1415,7 +1427,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
|
||||
// $ANTLR start "entryRuleQualifiedID"
|
||||
// InternalPattern.g:606:1: entryRuleQualifiedID returns [String current=null] : iv_ruleQualifiedID= ruleQualifiedID EOF ;
|
||||
// InternalPattern.g:614:1: entryRuleQualifiedID returns [String current=null] : iv_ruleQualifiedID= ruleQualifiedID EOF ;
|
||||
public final String entryRuleQualifiedID() throws RecognitionException {
|
||||
String current = null;
|
||||
|
||||
@@ -1423,8 +1435,8 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
|
||||
try {
|
||||
// InternalPattern.g:606:51: (iv_ruleQualifiedID= ruleQualifiedID EOF )
|
||||
// InternalPattern.g:607:2: iv_ruleQualifiedID= ruleQualifiedID EOF
|
||||
// InternalPattern.g:614:51: (iv_ruleQualifiedID= ruleQualifiedID EOF )
|
||||
// InternalPattern.g:615:2: iv_ruleQualifiedID= ruleQualifiedID EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getQualifiedIDRule());
|
||||
pushFollow(FOLLOW_1);
|
||||
@@ -1451,7 +1463,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
|
||||
// $ANTLR start "ruleQualifiedID"
|
||||
// InternalPattern.g:613:1: ruleQualifiedID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) ;
|
||||
// InternalPattern.g:621:1: ruleQualifiedID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) ;
|
||||
public final AntlrDatatypeRuleToken ruleQualifiedID() throws RecognitionException {
|
||||
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
|
||||
|
||||
@@ -1463,40 +1475,40 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalPattern.g:619:2: ( (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) )
|
||||
// InternalPattern.g:620:2: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
|
||||
// InternalPattern.g:627:2: ( (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) )
|
||||
// InternalPattern.g:628:2: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
|
||||
{
|
||||
// InternalPattern.g:620:2: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
|
||||
// InternalPattern.g:621:3: this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )*
|
||||
// InternalPattern.g:628:2: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
|
||||
// InternalPattern.g:629:3: this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )*
|
||||
{
|
||||
this_ID_0=(Token)match(input,RULE_ID,FOLLOW_17);
|
||||
this_ID_0=(Token)match(input,RULE_ID,FOLLOW_19);
|
||||
|
||||
current.merge(this_ID_0);
|
||||
|
||||
|
||||
newLeafNode(this_ID_0, grammarAccess.getQualifiedIDAccess().getIDTerminalRuleCall_0());
|
||||
|
||||
// InternalPattern.g:628:3: (kw= '.' this_ID_2= RULE_ID )*
|
||||
// InternalPattern.g:636:3: (kw= '.' this_ID_2= RULE_ID )*
|
||||
loop13:
|
||||
do {
|
||||
int alt13=2;
|
||||
int LA13_0 = input.LA(1);
|
||||
|
||||
if ( (LA13_0==20) ) {
|
||||
if ( (LA13_0==22) ) {
|
||||
alt13=1;
|
||||
}
|
||||
|
||||
|
||||
switch (alt13) {
|
||||
case 1 :
|
||||
// InternalPattern.g:629:4: kw= '.' this_ID_2= RULE_ID
|
||||
// InternalPattern.g:637:4: kw= '.' this_ID_2= RULE_ID
|
||||
{
|
||||
kw=(Token)match(input,20,FOLLOW_3);
|
||||
kw=(Token)match(input,22,FOLLOW_3);
|
||||
|
||||
current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getQualifiedIDAccess().getFullStopKeyword_1_0());
|
||||
|
||||
this_ID_2=(Token)match(input,RULE_ID,FOLLOW_17);
|
||||
this_ID_2=(Token)match(input,RULE_ID,FOLLOW_19);
|
||||
|
||||
current.merge(this_ID_2);
|
||||
|
||||
@@ -1535,7 +1547,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
|
||||
// $ANTLR start "rulePatternPortDirection"
|
||||
// InternalPattern.g:646:1: rulePatternPortDirection returns [Enumerator current=null] : ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) ) ;
|
||||
// InternalPattern.g:654:1: rulePatternPortDirection returns [Enumerator current=null] : ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) ) ;
|
||||
public final Enumerator rulePatternPortDirection() throws RecognitionException {
|
||||
Enumerator current = null;
|
||||
|
||||
@@ -1548,28 +1560,28 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalPattern.g:652:2: ( ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) ) )
|
||||
// InternalPattern.g:653:2: ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) )
|
||||
// InternalPattern.g:660:2: ( ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) ) )
|
||||
// InternalPattern.g:661:2: ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) )
|
||||
{
|
||||
// InternalPattern.g:653:2: ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) )
|
||||
// InternalPattern.g:661:2: ( (enumLiteral_0= 'unspec' ) | (enumLiteral_1= 'in' ) | (enumLiteral_2= 'out' ) | (enumLiteral_3= 'inout' ) )
|
||||
int alt14=4;
|
||||
switch ( input.LA(1) ) {
|
||||
case 21:
|
||||
case 23:
|
||||
{
|
||||
alt14=1;
|
||||
}
|
||||
break;
|
||||
case 22:
|
||||
case 24:
|
||||
{
|
||||
alt14=2;
|
||||
}
|
||||
break;
|
||||
case 23:
|
||||
case 25:
|
||||
{
|
||||
alt14=3;
|
||||
}
|
||||
break;
|
||||
case 24:
|
||||
case 26:
|
||||
{
|
||||
alt14=4;
|
||||
}
|
||||
@@ -1583,12 +1595,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
switch (alt14) {
|
||||
case 1 :
|
||||
// InternalPattern.g:654:3: (enumLiteral_0= 'unspec' )
|
||||
// InternalPattern.g:662:3: (enumLiteral_0= 'unspec' )
|
||||
{
|
||||
// InternalPattern.g:654:3: (enumLiteral_0= 'unspec' )
|
||||
// InternalPattern.g:655:4: enumLiteral_0= 'unspec'
|
||||
// InternalPattern.g:662:3: (enumLiteral_0= 'unspec' )
|
||||
// InternalPattern.g:663:4: enumLiteral_0= 'unspec'
|
||||
{
|
||||
enumLiteral_0=(Token)match(input,21,FOLLOW_2);
|
||||
enumLiteral_0=(Token)match(input,23,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getPatternPortDirectionAccess().getUNSPECIFIEDEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_0, grammarAccess.getPatternPortDirectionAccess().getUNSPECIFIEDEnumLiteralDeclaration_0());
|
||||
@@ -1600,12 +1612,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:662:3: (enumLiteral_1= 'in' )
|
||||
// InternalPattern.g:670:3: (enumLiteral_1= 'in' )
|
||||
{
|
||||
// InternalPattern.g:662:3: (enumLiteral_1= 'in' )
|
||||
// InternalPattern.g:663:4: enumLiteral_1= 'in'
|
||||
// InternalPattern.g:670:3: (enumLiteral_1= 'in' )
|
||||
// InternalPattern.g:671:4: enumLiteral_1= 'in'
|
||||
{
|
||||
enumLiteral_1=(Token)match(input,22,FOLLOW_2);
|
||||
enumLiteral_1=(Token)match(input,24,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getPatternPortDirectionAccess().getINEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_1, grammarAccess.getPatternPortDirectionAccess().getINEnumLiteralDeclaration_1());
|
||||
@@ -1617,12 +1629,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 3 :
|
||||
// InternalPattern.g:670:3: (enumLiteral_2= 'out' )
|
||||
// InternalPattern.g:678:3: (enumLiteral_2= 'out' )
|
||||
{
|
||||
// InternalPattern.g:670:3: (enumLiteral_2= 'out' )
|
||||
// InternalPattern.g:671:4: enumLiteral_2= 'out'
|
||||
// InternalPattern.g:678:3: (enumLiteral_2= 'out' )
|
||||
// InternalPattern.g:679:4: enumLiteral_2= 'out'
|
||||
{
|
||||
enumLiteral_2=(Token)match(input,23,FOLLOW_2);
|
||||
enumLiteral_2=(Token)match(input,25,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getPatternPortDirectionAccess().getOUTEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_2, grammarAccess.getPatternPortDirectionAccess().getOUTEnumLiteralDeclaration_2());
|
||||
@@ -1634,12 +1646,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 4 :
|
||||
// InternalPattern.g:678:3: (enumLiteral_3= 'inout' )
|
||||
// InternalPattern.g:686:3: (enumLiteral_3= 'inout' )
|
||||
{
|
||||
// InternalPattern.g:678:3: (enumLiteral_3= 'inout' )
|
||||
// InternalPattern.g:679:4: enumLiteral_3= 'inout'
|
||||
// InternalPattern.g:686:3: (enumLiteral_3= 'inout' )
|
||||
// InternalPattern.g:687:4: enumLiteral_3= 'inout'
|
||||
{
|
||||
enumLiteral_3=(Token)match(input,24,FOLLOW_2);
|
||||
enumLiteral_3=(Token)match(input,26,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getPatternPortDirectionAccess().getINOUTEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_3, grammarAccess.getPatternPortDirectionAccess().getINOUTEnumLiteralDeclaration_3());
|
||||
@@ -1673,7 +1685,7 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
|
||||
// $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= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) ) ;
|
||||
// InternalPattern.g:697: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 {
|
||||
Enumerator current = null;
|
||||
|
||||
@@ -1694,68 +1706,68 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// 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= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) )
|
||||
// InternalPattern.g:703: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:704: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= '-{ShiftC}->' ) | (enumLiteral_5= '-{ShiftP}->' ) | (enumLiteral_6= '-{FlattenC}->' ) | (enumLiteral_7= '-{ForkC}->' ) | (enumLiteral_8= '-{ForkP}->' ) | (enumLiteral_9= '-{JoinC}->' ) | (enumLiteral_10= '-{JoinP}->' ) | (enumLiteral_11= '-{Last}->' ) )
|
||||
// InternalPattern.g:704: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=12;
|
||||
switch ( input.LA(1) ) {
|
||||
case 25:
|
||||
case 27:
|
||||
{
|
||||
alt15=1;
|
||||
}
|
||||
break;
|
||||
case 26:
|
||||
case 28:
|
||||
{
|
||||
alt15=2;
|
||||
}
|
||||
break;
|
||||
case 27:
|
||||
case 29:
|
||||
{
|
||||
alt15=3;
|
||||
}
|
||||
break;
|
||||
case 28:
|
||||
case 30:
|
||||
{
|
||||
alt15=4;
|
||||
}
|
||||
break;
|
||||
case 29:
|
||||
case 31:
|
||||
{
|
||||
alt15=5;
|
||||
}
|
||||
break;
|
||||
case 30:
|
||||
case 32:
|
||||
{
|
||||
alt15=6;
|
||||
}
|
||||
break;
|
||||
case 31:
|
||||
case 33:
|
||||
{
|
||||
alt15=7;
|
||||
}
|
||||
break;
|
||||
case 32:
|
||||
case 34:
|
||||
{
|
||||
alt15=8;
|
||||
}
|
||||
break;
|
||||
case 33:
|
||||
case 35:
|
||||
{
|
||||
alt15=9;
|
||||
}
|
||||
break;
|
||||
case 34:
|
||||
case 36:
|
||||
{
|
||||
alt15=10;
|
||||
}
|
||||
break;
|
||||
case 35:
|
||||
case 37:
|
||||
{
|
||||
alt15=11;
|
||||
}
|
||||
break;
|
||||
case 36:
|
||||
case 38:
|
||||
{
|
||||
alt15=12;
|
||||
}
|
||||
@@ -1769,12 +1781,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
|
||||
switch (alt15) {
|
||||
case 1 :
|
||||
// InternalPattern.g:697:3: (enumLiteral_0= '-{Transpose}->' )
|
||||
// InternalPattern.g:705:3: (enumLiteral_0= 'Transpose' )
|
||||
{
|
||||
// InternalPattern.g:697:3: (enumLiteral_0= '-{Transpose}->' )
|
||||
// InternalPattern.g:698:4: enumLiteral_0= '-{Transpose}->'
|
||||
// InternalPattern.g:705:3: (enumLiteral_0= 'Transpose' )
|
||||
// InternalPattern.g:706:4: enumLiteral_0= 'Transpose'
|
||||
{
|
||||
enumLiteral_0=(Token)match(input,25,FOLLOW_2);
|
||||
enumLiteral_0=(Token)match(input,27,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getTRANSPOSEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_0, grammarAccess.getLinkTypeAccess().getTRANSPOSEEnumLiteralDeclaration_0());
|
||||
@@ -1786,12 +1798,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalPattern.g:705:3: (enumLiteral_1= '-{Identity}->' )
|
||||
// InternalPattern.g:713:3: (enumLiteral_1= 'Identity' )
|
||||
{
|
||||
// InternalPattern.g:705:3: (enumLiteral_1= '-{Identity}->' )
|
||||
// InternalPattern.g:706:4: enumLiteral_1= '-{Identity}->'
|
||||
// InternalPattern.g:713:3: (enumLiteral_1= 'Identity' )
|
||||
// InternalPattern.g:714:4: enumLiteral_1= 'Identity'
|
||||
{
|
||||
enumLiteral_1=(Token)match(input,26,FOLLOW_2);
|
||||
enumLiteral_1=(Token)match(input,28,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getIDENTITYEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_1, grammarAccess.getLinkTypeAccess().getIDENTITYEnumLiteralDeclaration_1());
|
||||
@@ -1803,12 +1815,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 3 :
|
||||
// InternalPattern.g:713:3: (enumLiteral_2= '-{First}->' )
|
||||
// InternalPattern.g:721:3: (enumLiteral_2= 'First' )
|
||||
{
|
||||
// InternalPattern.g:713:3: (enumLiteral_2= '-{First}->' )
|
||||
// InternalPattern.g:714:4: enumLiteral_2= '-{First}->'
|
||||
// InternalPattern.g:721:3: (enumLiteral_2= 'First' )
|
||||
// InternalPattern.g:722:4: enumLiteral_2= 'First'
|
||||
{
|
||||
enumLiteral_2=(Token)match(input,27,FOLLOW_2);
|
||||
enumLiteral_2=(Token)match(input,29,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getFIRSTEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_2, grammarAccess.getLinkTypeAccess().getFIRSTEnumLiteralDeclaration_2());
|
||||
@@ -1820,12 +1832,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 4 :
|
||||
// InternalPattern.g:721:3: (enumLiteral_3= '-{Rotate}->' )
|
||||
// InternalPattern.g:729:3: (enumLiteral_3= 'Rotate' )
|
||||
{
|
||||
// InternalPattern.g:721:3: (enumLiteral_3= '-{Rotate}->' )
|
||||
// InternalPattern.g:722:4: enumLiteral_3= '-{Rotate}->'
|
||||
// InternalPattern.g:729:3: (enumLiteral_3= 'Rotate' )
|
||||
// InternalPattern.g:730:4: enumLiteral_3= 'Rotate'
|
||||
{
|
||||
enumLiteral_3=(Token)match(input,28,FOLLOW_2);
|
||||
enumLiteral_3=(Token)match(input,30,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getROTATEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_3, grammarAccess.getLinkTypeAccess().getROTATEEnumLiteralDeclaration_3());
|
||||
@@ -1837,12 +1849,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 5 :
|
||||
// InternalPattern.g:729:3: (enumLiteral_4= '-{ShiftC}->' )
|
||||
// InternalPattern.g:737:3: (enumLiteral_4= 'ShiftC' )
|
||||
{
|
||||
// InternalPattern.g:729:3: (enumLiteral_4= '-{ShiftC}->' )
|
||||
// InternalPattern.g:730:4: enumLiteral_4= '-{ShiftC}->'
|
||||
// InternalPattern.g:737:3: (enumLiteral_4= 'ShiftC' )
|
||||
// InternalPattern.g:738:4: enumLiteral_4= 'ShiftC'
|
||||
{
|
||||
enumLiteral_4=(Token)match(input,29,FOLLOW_2);
|
||||
enumLiteral_4=(Token)match(input,31,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_4, grammarAccess.getLinkTypeAccess().getSHIFTCEnumLiteralDeclaration_4());
|
||||
@@ -1854,12 +1866,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 6 :
|
||||
// InternalPattern.g:737:3: (enumLiteral_5= '-{ShiftP}->' )
|
||||
// InternalPattern.g:745:3: (enumLiteral_5= 'ShiftP' )
|
||||
{
|
||||
// InternalPattern.g:737:3: (enumLiteral_5= '-{ShiftP}->' )
|
||||
// InternalPattern.g:738:4: enumLiteral_5= '-{ShiftP}->'
|
||||
// InternalPattern.g:745:3: (enumLiteral_5= 'ShiftP' )
|
||||
// InternalPattern.g:746:4: enumLiteral_5= 'ShiftP'
|
||||
{
|
||||
enumLiteral_5=(Token)match(input,30,FOLLOW_2);
|
||||
enumLiteral_5=(Token)match(input,32,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_5, grammarAccess.getLinkTypeAccess().getSHIFTPEnumLiteralDeclaration_5());
|
||||
@@ -1871,12 +1883,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 7 :
|
||||
// InternalPattern.g:745:3: (enumLiteral_6= '-{FlattenC}->' )
|
||||
// InternalPattern.g:753:3: (enumLiteral_6= 'FlattenC' )
|
||||
{
|
||||
// InternalPattern.g:745:3: (enumLiteral_6= '-{FlattenC}->' )
|
||||
// InternalPattern.g:746:4: enumLiteral_6= '-{FlattenC}->'
|
||||
// InternalPattern.g:753:3: (enumLiteral_6= 'FlattenC' )
|
||||
// InternalPattern.g:754:4: enumLiteral_6= 'FlattenC'
|
||||
{
|
||||
enumLiteral_6=(Token)match(input,31,FOLLOW_2);
|
||||
enumLiteral_6=(Token)match(input,33,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_6, grammarAccess.getLinkTypeAccess().getFLATTENCEnumLiteralDeclaration_6());
|
||||
@@ -1888,12 +1900,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 8 :
|
||||
// InternalPattern.g:753:3: (enumLiteral_7= '-{ForkC}->' )
|
||||
// InternalPattern.g:761:3: (enumLiteral_7= 'ForkC' )
|
||||
{
|
||||
// InternalPattern.g:753:3: (enumLiteral_7= '-{ForkC}->' )
|
||||
// InternalPattern.g:754:4: enumLiteral_7= '-{ForkC}->'
|
||||
// InternalPattern.g:761:3: (enumLiteral_7= 'ForkC' )
|
||||
// InternalPattern.g:762:4: enumLiteral_7= 'ForkC'
|
||||
{
|
||||
enumLiteral_7=(Token)match(input,32,FOLLOW_2);
|
||||
enumLiteral_7=(Token)match(input,34,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_7, grammarAccess.getLinkTypeAccess().getFORKCEnumLiteralDeclaration_7());
|
||||
@@ -1905,12 +1917,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 9 :
|
||||
// InternalPattern.g:761:3: (enumLiteral_8= '-{ForkP}->' )
|
||||
// InternalPattern.g:769:3: (enumLiteral_8= 'ForkP' )
|
||||
{
|
||||
// InternalPattern.g:761:3: (enumLiteral_8= '-{ForkP}->' )
|
||||
// InternalPattern.g:762:4: enumLiteral_8= '-{ForkP}->'
|
||||
// InternalPattern.g:769:3: (enumLiteral_8= 'ForkP' )
|
||||
// InternalPattern.g:770:4: enumLiteral_8= 'ForkP'
|
||||
{
|
||||
enumLiteral_8=(Token)match(input,33,FOLLOW_2);
|
||||
enumLiteral_8=(Token)match(input,35,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_8, grammarAccess.getLinkTypeAccess().getFORKPEnumLiteralDeclaration_8());
|
||||
@@ -1922,12 +1934,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 10 :
|
||||
// InternalPattern.g:769:3: (enumLiteral_9= '-{JoinC}->' )
|
||||
// InternalPattern.g:777:3: (enumLiteral_9= 'JoinC' )
|
||||
{
|
||||
// InternalPattern.g:769:3: (enumLiteral_9= '-{JoinC}->' )
|
||||
// InternalPattern.g:770:4: enumLiteral_9= '-{JoinC}->'
|
||||
// InternalPattern.g:777:3: (enumLiteral_9= 'JoinC' )
|
||||
// InternalPattern.g:778:4: enumLiteral_9= 'JoinC'
|
||||
{
|
||||
enumLiteral_9=(Token)match(input,34,FOLLOW_2);
|
||||
enumLiteral_9=(Token)match(input,36,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_9, grammarAccess.getLinkTypeAccess().getJOINCEnumLiteralDeclaration_9());
|
||||
@@ -1939,12 +1951,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 11 :
|
||||
// InternalPattern.g:777:3: (enumLiteral_10= '-{JoinP}->' )
|
||||
// InternalPattern.g:785:3: (enumLiteral_10= 'JoinP' )
|
||||
{
|
||||
// InternalPattern.g:777:3: (enumLiteral_10= '-{JoinP}->' )
|
||||
// InternalPattern.g:778:4: enumLiteral_10= '-{JoinP}->'
|
||||
// InternalPattern.g:785:3: (enumLiteral_10= 'JoinP' )
|
||||
// InternalPattern.g:786:4: enumLiteral_10= 'JoinP'
|
||||
{
|
||||
enumLiteral_10=(Token)match(input,35,FOLLOW_2);
|
||||
enumLiteral_10=(Token)match(input,37,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_10, grammarAccess.getLinkTypeAccess().getJOINPEnumLiteralDeclaration_10());
|
||||
@@ -1956,12 +1968,12 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
}
|
||||
break;
|
||||
case 12 :
|
||||
// InternalPattern.g:785:3: (enumLiteral_11= '-{Last}->' )
|
||||
// InternalPattern.g:793:3: (enumLiteral_11= 'Last' )
|
||||
{
|
||||
// InternalPattern.g:785:3: (enumLiteral_11= '-{Last}->' )
|
||||
// InternalPattern.g:786:4: enumLiteral_11= '-{Last}->'
|
||||
// InternalPattern.g:793:3: (enumLiteral_11= 'Last' )
|
||||
// InternalPattern.g:794:4: enumLiteral_11= 'Last'
|
||||
{
|
||||
enumLiteral_11=(Token)match(input,36,FOLLOW_2);
|
||||
enumLiteral_11=(Token)match(input,38,FOLLOW_2);
|
||||
|
||||
current = grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
|
||||
newLeafNode(enumLiteral_11, grammarAccess.getLinkTypeAccess().getLASTEnumLiteralDeclaration_11());
|
||||
@@ -2009,11 +2021,13 @@ public class InternalPatternParser extends AbstractInternalAntlrParser {
|
||||
public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000041000L});
|
||||
public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000000030L});
|
||||
public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000080000L});
|
||||
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_12 = new BitSet(new long[]{0x0000000007804000L});
|
||||
public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000007800000L});
|
||||
public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000040002L});
|
||||
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_17 = new BitSet(new long[]{0x0000000000100002L});
|
||||
public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000100000L});
|
||||
public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000007FF8000000L});
|
||||
public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000200000L});
|
||||
public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000020010L});
|
||||
public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000400002L});
|
||||
|
||||
}
|
||||
@@ -111,8 +111,8 @@ public class PatternSemanticSequencer extends AbstractDelegatingSemanticSequence
|
||||
}
|
||||
SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
|
||||
feeder.accept(grammarAccess.getPatternLinkAccess().getSrcPatternPortQualifiedIDParserRuleCall_0_0_1(), semanticObject.eGet(SeimPackage.Literals.LINK__SRC, false));
|
||||
feeder.accept(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_1_0(), semanticObject.getLinkType());
|
||||
feeder.accept(grammarAccess.getPatternLinkAccess().getDstPatternPortQualifiedIDParserRuleCall_2_0_1(), semanticObject.eGet(SeimPackage.Literals.LINK__DST, false));
|
||||
feeder.accept(grammarAccess.getPatternLinkAccess().getLinkTypeLinkTypeEnumRuleCall_2_0(), semanticObject.getLinkType());
|
||||
feeder.accept(grammarAccess.getPatternLinkAccess().getDstPatternPortQualifiedIDParserRuleCall_4_0_1(), semanticObject.eGet(SeimPackage.Literals.LINK__DST, false));
|
||||
feeder.finish();
|
||||
}
|
||||
|
||||
|
||||
@@ -334,17 +334,19 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
|
||||
private final Assignment cSrcAssignment_0 = (Assignment)cGroup.eContents().get(0);
|
||||
private final CrossReference cSrcPatternPortCrossReference_0_0 = (CrossReference)cSrcAssignment_0.eContents().get(0);
|
||||
private final RuleCall cSrcPatternPortQualifiedIDParserRuleCall_0_0_1 = (RuleCall)cSrcPatternPortCrossReference_0_0.eContents().get(1);
|
||||
private final Assignment cLinkTypeAssignment_1 = (Assignment)cGroup.eContents().get(1);
|
||||
private final RuleCall cLinkTypeLinkTypeEnumRuleCall_1_0 = (RuleCall)cLinkTypeAssignment_1.eContents().get(0);
|
||||
private final Assignment cDstAssignment_2 = (Assignment)cGroup.eContents().get(2);
|
||||
private final CrossReference cDstPatternPortCrossReference_2_0 = (CrossReference)cDstAssignment_2.eContents().get(0);
|
||||
private final RuleCall cDstPatternPortQualifiedIDParserRuleCall_2_0_1 = (RuleCall)cDstPatternPortCrossReference_2_0.eContents().get(1);
|
||||
private final Keyword cHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
|
||||
private final Assignment cLinkTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
|
||||
private final RuleCall cLinkTypeLinkTypeEnumRuleCall_2_0 = (RuleCall)cLinkTypeAssignment_2.eContents().get(0);
|
||||
private final Keyword cRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3 = (Keyword)cGroup.eContents().get(3);
|
||||
private final Assignment cDstAssignment_4 = (Assignment)cGroup.eContents().get(4);
|
||||
private final CrossReference cDstPatternPortCrossReference_4_0 = (CrossReference)cDstAssignment_4.eContents().get(0);
|
||||
private final RuleCall cDstPatternPortQualifiedIDParserRuleCall_4_0_1 = (RuleCall)cDstPatternPortCrossReference_4_0.eContents().get(1);
|
||||
|
||||
//PatternLink:
|
||||
// src=[PatternPort|QualifiedID] linkType=LinkType dst=[PatternPort|QualifiedID];
|
||||
// src=[PatternPort|QualifiedID] '--{' linkType=LinkType '}->' dst=[PatternPort|QualifiedID];
|
||||
@Override public ParserRule getRule() { return rule; }
|
||||
|
||||
//src=[PatternPort|QualifiedID] linkType=LinkType dst=[PatternPort|QualifiedID]
|
||||
//src=[PatternPort|QualifiedID] '--{' linkType=LinkType '}->' dst=[PatternPort|QualifiedID]
|
||||
public Group getGroup() { return cGroup; }
|
||||
|
||||
//src=[PatternPort|QualifiedID]
|
||||
@@ -356,20 +358,26 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
|
||||
//QualifiedID
|
||||
public RuleCall getSrcPatternPortQualifiedIDParserRuleCall_0_0_1() { return cSrcPatternPortQualifiedIDParserRuleCall_0_0_1; }
|
||||
|
||||
//'--{'
|
||||
public Keyword getHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1() { return cHyphenMinusHyphenMinusLeftCurlyBracketKeyword_1; }
|
||||
|
||||
//linkType=LinkType
|
||||
public Assignment getLinkTypeAssignment_1() { return cLinkTypeAssignment_1; }
|
||||
public Assignment getLinkTypeAssignment_2() { return cLinkTypeAssignment_2; }
|
||||
|
||||
//LinkType
|
||||
public RuleCall getLinkTypeLinkTypeEnumRuleCall_1_0() { return cLinkTypeLinkTypeEnumRuleCall_1_0; }
|
||||
public RuleCall getLinkTypeLinkTypeEnumRuleCall_2_0() { return cLinkTypeLinkTypeEnumRuleCall_2_0; }
|
||||
|
||||
//'}->'
|
||||
public Keyword getRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3() { return cRightCurlyBracketHyphenMinusGreaterThanSignKeyword_3; }
|
||||
|
||||
//dst=[PatternPort|QualifiedID]
|
||||
public Assignment getDstAssignment_2() { return cDstAssignment_2; }
|
||||
public Assignment getDstAssignment_4() { return cDstAssignment_4; }
|
||||
|
||||
//[PatternPort|QualifiedID]
|
||||
public CrossReference getDstPatternPortCrossReference_2_0() { return cDstPatternPortCrossReference_2_0; }
|
||||
public CrossReference getDstPatternPortCrossReference_4_0() { return cDstPatternPortCrossReference_4_0; }
|
||||
|
||||
//QualifiedID
|
||||
public RuleCall getDstPatternPortQualifiedIDParserRuleCall_2_0_1() { return cDstPatternPortQualifiedIDParserRuleCall_2_0_1; }
|
||||
public RuleCall getDstPatternPortQualifiedIDParserRuleCall_4_0_1() { return cDstPatternPortQualifiedIDParserRuleCall_4_0_1; }
|
||||
}
|
||||
public class QualifiedIDElements extends AbstractParserRuleElementFinder {
|
||||
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Pattern.QualifiedID");
|
||||
@@ -471,86 +479,85 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
|
||||
private final Keyword cLASTLastKeyword_11_0 = (Keyword)cLASTEnumLiteralDeclaration_11.eContents().get(0);
|
||||
|
||||
//enum LinkType:
|
||||
// TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->'
|
||||
// | SHIFTC='-{ShiftC}->' | SHIFTP='-{ShiftP}->' | FLATTENC='-{FlattenC}->' | FORKC='-{ForkC}->' | FORKP='-{ForkP}->'
|
||||
// | JOINC='-{JoinC}->' | JOINP='-{JoinP}->' | LAST='-{Last}->';
|
||||
// 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 EnumRule getRule() { return rule; }
|
||||
|
||||
//TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->' | SHIFTC='-{ShiftC}->'
|
||||
//| SHIFTP='-{ShiftP}->' | FLATTENC='-{FlattenC}->' | FORKC='-{ForkC}->' | FORKP='-{ForkP}->' | JOINC='-{JoinC}->' |
|
||||
//JOINP='-{JoinP}->' | LAST='-{Last}->'
|
||||
//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; }
|
||||
|
||||
//TRANSPOSE='-{Transpose}->'
|
||||
//TRANSPOSE='Transpose'
|
||||
public EnumLiteralDeclaration getTRANSPOSEEnumLiteralDeclaration_0() { return cTRANSPOSEEnumLiteralDeclaration_0; }
|
||||
|
||||
//'-{Transpose}->'
|
||||
//'Transpose'
|
||||
public Keyword getTRANSPOSETransposeKeyword_0_0() { return cTRANSPOSETransposeKeyword_0_0; }
|
||||
|
||||
//IDENTITY='-{Identity}->'
|
||||
//IDENTITY='Identity'
|
||||
public EnumLiteralDeclaration getIDENTITYEnumLiteralDeclaration_1() { return cIDENTITYEnumLiteralDeclaration_1; }
|
||||
|
||||
//'-{Identity}->'
|
||||
//'Identity'
|
||||
public Keyword getIDENTITYIdentityKeyword_1_0() { return cIDENTITYIdentityKeyword_1_0; }
|
||||
|
||||
//FIRST='-{First}->'
|
||||
//FIRST='First'
|
||||
public EnumLiteralDeclaration getFIRSTEnumLiteralDeclaration_2() { return cFIRSTEnumLiteralDeclaration_2; }
|
||||
|
||||
//'-{First}->'
|
||||
//'First'
|
||||
public Keyword getFIRSTFirstKeyword_2_0() { return cFIRSTFirstKeyword_2_0; }
|
||||
|
||||
//ROTATE='-{Rotate}->'
|
||||
//ROTATE='Rotate'
|
||||
public EnumLiteralDeclaration getROTATEEnumLiteralDeclaration_3() { return cROTATEEnumLiteralDeclaration_3; }
|
||||
|
||||
//'-{Rotate}->'
|
||||
//'Rotate'
|
||||
public Keyword getROTATERotateKeyword_3_0() { return cROTATERotateKeyword_3_0; }
|
||||
|
||||
//SHIFTC='-{ShiftC}->'
|
||||
//SHIFTC='ShiftC'
|
||||
public EnumLiteralDeclaration getSHIFTCEnumLiteralDeclaration_4() { return cSHIFTCEnumLiteralDeclaration_4; }
|
||||
|
||||
//'-{ShiftC}->'
|
||||
//'ShiftC'
|
||||
public Keyword getSHIFTCShiftCKeyword_4_0() { return cSHIFTCShiftCKeyword_4_0; }
|
||||
|
||||
//SHIFTP='-{ShiftP}->'
|
||||
//SHIFTP='ShiftP'
|
||||
public EnumLiteralDeclaration getSHIFTPEnumLiteralDeclaration_5() { return cSHIFTPEnumLiteralDeclaration_5; }
|
||||
|
||||
//'-{ShiftP}->'
|
||||
//'ShiftP'
|
||||
public Keyword getSHIFTPShiftPKeyword_5_0() { return cSHIFTPShiftPKeyword_5_0; }
|
||||
|
||||
//FLATTENC='-{FlattenC}->'
|
||||
//FLATTENC='FlattenC'
|
||||
public EnumLiteralDeclaration getFLATTENCEnumLiteralDeclaration_6() { return cFLATTENCEnumLiteralDeclaration_6; }
|
||||
|
||||
//'-{FlattenC}->'
|
||||
//'FlattenC'
|
||||
public Keyword getFLATTENCFlattenCKeyword_6_0() { return cFLATTENCFlattenCKeyword_6_0; }
|
||||
|
||||
//FORKC='-{ForkC}->'
|
||||
//FORKC='ForkC'
|
||||
public EnumLiteralDeclaration getFORKCEnumLiteralDeclaration_7() { return cFORKCEnumLiteralDeclaration_7; }
|
||||
|
||||
//'-{ForkC}->'
|
||||
//'ForkC'
|
||||
public Keyword getFORKCForkCKeyword_7_0() { return cFORKCForkCKeyword_7_0; }
|
||||
|
||||
//FORKP='-{ForkP}->'
|
||||
//FORKP='ForkP'
|
||||
public EnumLiteralDeclaration getFORKPEnumLiteralDeclaration_8() { return cFORKPEnumLiteralDeclaration_8; }
|
||||
|
||||
//'-{ForkP}->'
|
||||
//'ForkP'
|
||||
public Keyword getFORKPForkPKeyword_8_0() { return cFORKPForkPKeyword_8_0; }
|
||||
|
||||
//JOINC='-{JoinC}->'
|
||||
//JOINC='JoinC'
|
||||
public EnumLiteralDeclaration getJOINCEnumLiteralDeclaration_9() { return cJOINCEnumLiteralDeclaration_9; }
|
||||
|
||||
//'-{JoinC}->'
|
||||
//'JoinC'
|
||||
public Keyword getJOINCJoinCKeyword_9_0() { return cJOINCJoinCKeyword_9_0; }
|
||||
|
||||
//JOINP='-{JoinP}->'
|
||||
//JOINP='JoinP'
|
||||
public EnumLiteralDeclaration getJOINPEnumLiteralDeclaration_10() { return cJOINPEnumLiteralDeclaration_10; }
|
||||
|
||||
//'-{JoinP}->'
|
||||
//'JoinP'
|
||||
public Keyword getJOINPJoinPKeyword_10_0() { return cJOINPJoinPKeyword_10_0; }
|
||||
|
||||
//LAST='-{Last}->'
|
||||
//LAST='Last'
|
||||
public EnumLiteralDeclaration getLASTEnumLiteralDeclaration_11() { return cLASTEnumLiteralDeclaration_11; }
|
||||
|
||||
//'-{Last}->'
|
||||
//'Last'
|
||||
public Keyword getLASTLastKeyword_11_0() { return cLASTLastKeyword_11_0; }
|
||||
}
|
||||
public class PortDirectionElements extends AbstractEnumRuleElementFinder {
|
||||
@@ -709,7 +716,7 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
|
||||
}
|
||||
|
||||
//PatternLink:
|
||||
// src=[PatternPort|QualifiedID] linkType=LinkType dst=[PatternPort|QualifiedID];
|
||||
// src=[PatternPort|QualifiedID] '--{' linkType=LinkType '}->' dst=[PatternPort|QualifiedID];
|
||||
public PatternLinkElements getPatternLinkAccess() {
|
||||
return pPatternLink;
|
||||
}
|
||||
@@ -719,9 +726,9 @@ public class PatternGrammarAccess extends AbstractGrammarElementFinder {
|
||||
}
|
||||
|
||||
//enum LinkType:
|
||||
// TRANSPOSE='-{Transpose}->' | IDENTITY='-{Identity}->' | FIRST='-{First}->' | ROTATE='-{Rotate}->'
|
||||
// | SHIFTC='-{ShiftC}->' | SHIFTP='-{ShiftP}->' | FLATTENC='-{FlattenC}->' | FORKC='-{ForkC}->' | FORKP='-{ForkP}->'
|
||||
// | JOINC='-{JoinC}->' | JOINP='-{JoinP}->' | LAST='-{Last}->';
|
||||
// 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 LinkTypeElements getLinkTypeAccess() {
|
||||
return eLinkType;
|
||||
}
|
||||
|
||||
@@ -34,13 +34,13 @@ CardinalityElement returns CardinalityElement:
|
||||
;
|
||||
|
||||
PatternLink returns PatternLink:
|
||||
src=[PatternPort|QualifiedID] linkType=LinkType dst=[PatternPort|QualifiedID]
|
||||
src=[PatternPort|QualifiedID] '--{' linkType=LinkType '}->' dst=[PatternPort|QualifiedID]
|
||||
;
|
||||
|
||||
enum LinkType returns LinkType:
|
||||
TRANSPOSE = '-{Transpose}->' | IDENTITY = '-{Identity}->' | FIRST = '-{First}->' | ROTATE = '-{Rotate}->'
|
||||
| SHIFTC = '-{ShiftC}->' | SHIFTP = '-{ShiftP}->' | FLATTENC = '-{FlattenC}->' | FORKC = '-{ForkC}->' | FORKP = '-{ForkP}->'
|
||||
| JOINC = '-{JoinC}->' | JOINP = '-{JoinP}->' | LAST = '-{Last}->'
|
||||
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:
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
*/
|
||||
package com.irtsaintexupery.xtext.pseim.validation
|
||||
|
||||
import com.irtsaintexupery.pseim.pseim.Pattern
|
||||
import org.eclipse.xtext.validation.Check
|
||||
|
||||
/**
|
||||
* This class contains custom validation rules.
|
||||
@@ -22,4 +24,17 @@ class PatternValidator extends AbstractPatternValidator {
|
||||
// }
|
||||
// }
|
||||
|
||||
@Check
|
||||
def checkPattern(Pattern p) {
|
||||
// Static checking
|
||||
// Check if there exists a solution for the set of constraints induced by the pattern model (all links + constraints)
|
||||
// Warning: Two variables are necessarily identical -> Potential error as there is redundancy in the variables
|
||||
// -> Maybe it is not an error as in creates different interfaces for the pattern
|
||||
// Global arithmetic constraints may be added to the pattern language (no need for now)
|
||||
// TODO Dynamic synthesis (in the Mapping MM validator)
|
||||
// A synthesis tool synthesizes a solution for the mapping
|
||||
// If there is no solution, then the mapping is not correct
|
||||
// In both cases, we need a bridge between our model and a solver
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,410 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?eclipse version="3.0"?>
|
||||
<plugin>
|
||||
<extension
|
||||
point="org.eclipse.ui.editors">
|
||||
<editor
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
|
||||
contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
|
||||
default="true"
|
||||
extensions="seimx"
|
||||
id="com.irtsaintexupery.xtext.Pseim"
|
||||
name="Pseim Editor">
|
||||
</editor>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
|
||||
commandId="com.irtsaintexupery.xtext.Pseim.validate">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
<!-- copy qualified name -->
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
|
||||
<activeWhen>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened" />
|
||||
</activeWhen>
|
||||
</handler>
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
|
||||
<activeWhen>
|
||||
<and>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.XtextEditor.opened" />
|
||||
<iterate>
|
||||
<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
|
||||
</iterate>
|
||||
</and>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<extension point="org.eclipse.core.expressions.definitions">
|
||||
<definition id="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
<and>
|
||||
<reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
|
||||
<with variable="activeEditor">
|
||||
<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
|
||||
value="com.irtsaintexupery.xtext.Pseim"
|
||||
forcePluginActivation="true"/>
|
||||
</with>
|
||||
</and>
|
||||
</definition>
|
||||
<definition id="com.irtsaintexupery.xtext.Pseim.XtextEditor.opened">
|
||||
<and>
|
||||
<reference definitionId="isXtextEditorActive"/>
|
||||
<with variable="activeEditor">
|
||||
<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
|
||||
value="com.irtsaintexupery.xtext.Pseim"
|
||||
forcePluginActivation="true"/>
|
||||
</with>
|
||||
</and>
|
||||
</definition>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.preferencePages">
|
||||
<page
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim"
|
||||
name="Pseim">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
</page>
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.Pseim"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim.coloring"
|
||||
name="Syntax Coloring">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
</page>
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.Pseim"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim.templates"
|
||||
name="Templates">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.propertyPages">
|
||||
<page
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim"
|
||||
name="Pseim">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
<enabledWhen>
|
||||
<adapt type="org.eclipse.core.resources.IProject"/>
|
||||
</enabledWhen>
|
||||
<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.keywords">
|
||||
<keyword
|
||||
id="com.irtsaintexupery.xtext.ui.keyword_Pseim"
|
||||
label="Pseim"/>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.commands">
|
||||
<command
|
||||
description="Trigger expensive validation"
|
||||
id="com.irtsaintexupery.xtext.Pseim.validate"
|
||||
name="Validate">
|
||||
</command>
|
||||
<!-- copy qualified name -->
|
||||
<command
|
||||
id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
|
||||
categoryId="org.eclipse.ui.category.edit"
|
||||
description="Copy the qualified name for the selected element"
|
||||
name="Copy Qualified Name">
|
||||
</command>
|
||||
<command
|
||||
id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
|
||||
categoryId="org.eclipse.ui.category.edit"
|
||||
description="Copy the qualified name for the selected element"
|
||||
name="Copy Qualified Name">
|
||||
</command>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution
|
||||
locationURI="popup:#TextEditorContext?after=group.edit">
|
||||
<command
|
||||
commandId="com.irtsaintexupery.xtext.Pseim.validate"
|
||||
style="push"
|
||||
tooltip="Trigger expensive validation">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
<!-- copy qualified name -->
|
||||
<menuContribution locationURI="popup:#TextEditorContext?after=copy">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
|
||||
style="push" tooltip="Copy Qualified Name">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened" />
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
<menuContribution locationURI="menu:edit?after=copy">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
|
||||
style="push" tooltip="Copy Qualified Name">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened" />
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
<menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
|
||||
style="push" tooltip="Copy Qualified Name">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<and>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.XtextEditor.opened" />
|
||||
<iterate>
|
||||
<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
|
||||
</iterate>
|
||||
</and>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.FindReferences">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.FindReferences">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<!-- adding resource factories -->
|
||||
<extension
|
||||
point="org.eclipse.emf.ecore.extension_parser">
|
||||
<parser
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
|
||||
type="seimx">
|
||||
</parser>
|
||||
</extension>
|
||||
<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
|
||||
<resourceServiceProvider
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
|
||||
uriExtension="seimx">
|
||||
</resourceServiceProvider>
|
||||
</extension>
|
||||
<!-- marker definitions for com.irtsaintexupery.xtext.Pseim -->
|
||||
<extension
|
||||
id="pseim.check.fast"
|
||||
name="Pseim Problem"
|
||||
point="org.eclipse.core.resources.markers">
|
||||
<super type="org.eclipse.xtext.ui.check.fast"/>
|
||||
<persistent value="true"/>
|
||||
</extension>
|
||||
<extension
|
||||
id="pseim.check.normal"
|
||||
name="Pseim Problem"
|
||||
point="org.eclipse.core.resources.markers">
|
||||
<super type="org.eclipse.xtext.ui.check.normal"/>
|
||||
<persistent value="true"/>
|
||||
</extension>
|
||||
<extension
|
||||
id="pseim.check.expensive"
|
||||
name="Pseim Problem"
|
||||
point="org.eclipse.core.resources.markers">
|
||||
<super type="org.eclipse.xtext.ui.check.expensive"/>
|
||||
<persistent value="true"/>
|
||||
</extension>
|
||||
<extension point="org.eclipse.xtext.builder.participant">
|
||||
<participant
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
|
||||
fileExtensions="seimx"/>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.preferencePages">
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.Pseim"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim.compiler.preferencePage"
|
||||
name="Compiler">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.propertyPages">
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.Pseim"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim.compiler.propertyPage"
|
||||
name="Compiler">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
<enabledWhen>
|
||||
<adapt type="org.eclipse.core.resources.IProject"/>
|
||||
</enabledWhen>
|
||||
<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration">
|
||||
<command
|
||||
commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"
|
||||
id="com.irtsaintexupery.xtext.Pseim.OpenGeneratedCode"
|
||||
style="push">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened" />
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler"
|
||||
commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand">
|
||||
<activeWhen>
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened" />
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<!-- Quick Outline -->
|
||||
<extension
|
||||
point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
|
||||
commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.eclipse.ui.commands">
|
||||
<command
|
||||
description="Open the quick outline."
|
||||
id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
|
||||
name="Quick Outline">
|
||||
</command>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution
|
||||
locationURI="popup:#TextEditorContext?after=group.open">
|
||||
<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
|
||||
style="push"
|
||||
tooltip="Open Quick Outline">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened"/>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<!-- quickfix marker resolution generator for com.irtsaintexupery.xtext.Pseim -->
|
||||
<extension
|
||||
point="org.eclipse.ui.ide.markerResolution">
|
||||
<markerResolutionGenerator
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
|
||||
markerType="com.irtsaintexupery.xtext.pseim.ui.pseim.check.fast">
|
||||
<attribute
|
||||
name="FIXABLE_KEY"
|
||||
value="true">
|
||||
</attribute>
|
||||
</markerResolutionGenerator>
|
||||
<markerResolutionGenerator
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
|
||||
markerType="com.irtsaintexupery.xtext.pseim.ui.pseim.check.normal">
|
||||
<attribute
|
||||
name="FIXABLE_KEY"
|
||||
value="true">
|
||||
</attribute>
|
||||
</markerResolutionGenerator>
|
||||
<markerResolutionGenerator
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
|
||||
markerType="com.irtsaintexupery.xtext.pseim.ui.pseim.check.expensive">
|
||||
<attribute
|
||||
name="FIXABLE_KEY"
|
||||
value="true">
|
||||
</attribute>
|
||||
</markerResolutionGenerator>
|
||||
</extension>
|
||||
<!-- Rename Refactoring -->
|
||||
<extension point="org.eclipse.ui.handlers">
|
||||
<handler
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
|
||||
commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
|
||||
<activeWhen>
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</activeWhen>
|
||||
</handler>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.menus">
|
||||
<menuContribution
|
||||
locationURI="popup:#TextEditorContext?after=group.edit">
|
||||
<command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
|
||||
style="push">
|
||||
<visibleWhen checkEnabled="false">
|
||||
<reference
|
||||
definitionId="com.irtsaintexupery.xtext.Pseim.Editor.opened">
|
||||
</reference>
|
||||
</visibleWhen>
|
||||
</command>
|
||||
</menuContribution>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.preferencePages">
|
||||
<page
|
||||
category="com.irtsaintexupery.xtext.Pseim"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
|
||||
id="com.irtsaintexupery.xtext.Pseim.refactoring"
|
||||
name="Refactoring">
|
||||
<keywordReference id="com.irtsaintexupery.xtext.ui.keyword_Pseim"/>
|
||||
</page>
|
||||
</extension>
|
||||
<extension point="org.eclipse.compare.contentViewers">
|
||||
<viewer id="com.irtsaintexupery.xtext.Pseim.compare.contentViewers"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
|
||||
extensions="seimx">
|
||||
</viewer>
|
||||
</extension>
|
||||
<extension point="org.eclipse.compare.contentMergeViewers">
|
||||
<viewer id="com.irtsaintexupery.xtext.Pseim.compare.contentMergeViewers"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
|
||||
extensions="seimx" label="Pseim Compare">
|
||||
</viewer>
|
||||
</extension>
|
||||
<extension point="org.eclipse.ui.editors.documentProviders">
|
||||
<provider id="com.irtsaintexupery.xtext.Pseim.editors.documentProviders"
|
||||
class="com.irtsaintexupery.xtext.ui.PseimExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
|
||||
extensions="seimx">
|
||||
</provider>
|
||||
</extension>
|
||||
<extension point="org.eclipse.team.core.fileTypes">
|
||||
<fileTypes
|
||||
extension="seimx"
|
||||
type="text">
|
||||
</fileTypes>
|
||||
</extension>
|
||||
</plugin>
|
||||
Reference in New Issue
Block a user