Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 144561 Details for
Bug 242153
[parser] Modification to support IMP and exploit LPG 2
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Patch to align an OCL Extending Language (QVTr)
ocl242153_try2_b.patch (text/plain), 137.03 KB, created by
Adolfo Sanchez-Barbudo Herrera
on 2009-08-14 13:53:18 EDT
(
hide
)
Description:
Patch to align an OCL Extending Language (QVTr)
Filename:
MIME Type:
Creator:
Adolfo Sanchez-Barbudo Herrera
Created:
2009-08-14 13:53:18 EDT
Size:
137.03 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.qvt.declarative.parser.ocl >Index: src/org/eclipse/qvt/declarative/parser/ocl/OCLFileAnalyzer.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.ocl/src/org/eclipse/qvt/declarative/parser/ocl/OCLFileAnalyzer.java,v >retrieving revision 1.7 >diff -u -r1.7 OCLFileAnalyzer.java >--- src/org/eclipse/qvt/declarative/parser/ocl/OCLFileAnalyzer.java 18 Dec 2008 07:12:30 -0000 1.7 >+++ src/org/eclipse/qvt/declarative/parser/ocl/OCLFileAnalyzer.java 14 Aug 2009 17:34:52 -0000 >@@ -19,7 +19,7 @@ > import java.util.ArrayList; > import java.util.List; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.emf.ecore.EClass; > import org.eclipse.emf.ecore.EClassifier; >Index: src/org/eclipse/qvt/declarative/parser/ocl/environment/OCLFileEnvironment.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.ocl/src/org/eclipse/qvt/declarative/parser/ocl/environment/OCLFileEnvironment.java,v >retrieving revision 1.5 >diff -u -r1.5 OCLFileEnvironment.java >--- src/org/eclipse/qvt/declarative/parser/ocl/environment/OCLFileEnvironment.java 5 Feb 2009 09:39:21 -0000 1.5 >+++ src/org/eclipse/qvt/declarative/parser/ocl/environment/OCLFileEnvironment.java 14 Aug 2009 17:34:52 -0000 >@@ -20,8 +20,8 @@ > import java.util.Collection; > import java.util.List; > >-import lpg.lpgjavaruntime.IToken; >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.IToken; >+import lpg.runtime.Monitor; > > import org.eclipse.emf.common.notify.Notifier; > import org.eclipse.emf.ecore.EClass; >#P org.eclipse.qvt.declarative.parser.qvtrelation >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.g >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.g,v >retrieving revision 1.8 >diff -u -r1.8 QVTrParser.g >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.g 30 Dec 2008 12:54:05 -0000 1.8 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.g 14 Aug 2009 17:34:55 -0000 >@@ -22,14 +22,14 @@ > %options backtrack > %options noserialize > %options package=org.eclipse.qvt.declarative.parser.qvtrelation >-%options import_terminals=QVTrLexer.g >+%options import_terminals=QVTrLexer.gi > %options ast_type=CSTNode > %options programming_language=java > %options action=("*.java", "/.", "./") >-%options ParseTable=lpg.lpgjavaruntime.ParseTable >+%options ParseTable=lpg.runtime.ParseTable > %options include_directory=".;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/lpg;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/parser;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/parser/backtracking" > >-$KeyWords >+%KeyWords > checkonly > default_values > domain >@@ -53,13 +53,13 @@ > inv > post > pre >-$End >+%End > >-$Terminals >+%Terminals > PLUS_PLUS ::= '++' >-$End >+%End > >-$Globals >+%Globals > /. > import org.eclipse.qvt.declarative.parser.qvt.cst.*; > import org.eclipse.qvt.declarative.parser.qvtrelation.cst.*; >@@ -69,21 +69,21 @@ > import org.eclipse.ocl.parser.backtracking.OCLParserErrors; > > ./ >-$End >+%End > >-$Start >+%Start > topLevelCS >-$End >+%End > >-$Include >- EssentialOCL.g >-$End >+%Include >+ EssentialOCL.gi >+%End > >-$Include >- EssentialOCLErrors.g >-$End >+%Include >+ EssentialOCLErrors.gi >+%End > >-$Define >+%Define > $prs_parser_class /.BacktrackingParser./ > $prs_parser_exception /.NotBacktrackParseTableException./ > $prs_parser_throw /.throw new RuntimeException("****Error: Regenerate $prs_type.java with -BACKTRACK option")./ >@@ -93,9 +93,9 @@ > $LPGParsersym_class /.QVTrParserSymbols./ > $copyright_contributions /.* E.D.Willink - Extended API and implementation for QVTr > *./ >-$End >+%End > >-$Headers >+%Headers > /. > protected IdentifierCS createIdentifierCS(int token) { > IdentifierCS result = QVTCSTFactory.eINSTANCE.createIdentifierCS(); >@@ -113,65 +113,65 @@ > return result; > } > ./ >-$End >+%End > >-$Rules >+%Rules > --<topLevel> ::= ('import' <unit> ';' )* <transformation>* >- topLevelCS_0_ ::= $empty >- /.$BeginJava >+ topLevelCS_0_ ::= %empty >+ /.$BeginCode > TopLevelCS result = QVTrCSTFactory.eINSTANCE.createTopLevelCS(); > setOffsets(result, getIToken($getToken(1))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > topLevelCS_0_ ::= topLevelCS_0_ import unitCS ';' >- /.$BeginJava >+ /.$BeginCode > TopLevelCS result = (TopLevelCS)$getSym(1); > result.getImportClause().add((UnitCS)$getSym(3)); > setOffsets(result, result, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > topLevelCS_0_ ::= topLevelCS_0_ ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_TOPLEVEL); >- $EndJava >+ $EndCode > ./ > topLevelCS_1_ ::= topLevelCS transformationCS >- /.$BeginJava >+ /.$BeginCode > TransformationCS transformationCS = (TransformationCS)$getSym(2); > TopLevelCS result = (TopLevelCS)$getSym(1); > result.getTransformation().add(transformationCS); > setOffsets(result, result, transformationCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > topLevelCS_1_ ::= topLevelCS_1_ ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_TRANSFORMATION); >- $EndJava >+ $EndCode > ./ > topLevelCS -> topLevelCS_0_ > topLevelCS -> topLevelCS_1_ > > --<unit> ::= <identifier> ('.' <identifier>)* > unitCS ::= identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(1); > UnitCS result = QVTrCSTFactory.eINSTANCE.createUnitCS(); > result.getIdentifier().add(identifierCS); > setOffsets(result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > unitCS ::= unitCS '.' identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(3); > UnitCS result = (UnitCS)$getSym(1); > result.getIdentifier().add(identifierCS); > setOffsets(result, result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<transformation> ::= 'transformation' <identifier> >@@ -179,7 +179,7 @@ > -- ['extends' <identifier> (',' <identifier>)* ] > -- '{' <keyDecl>* ( <relation> | <query> )* '}' > transformationCS_0_ ::= transformation identifierCS '(' modelDeclCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(2); > ModelDeclCS modelDeclCS = (ModelDeclCS)$getSym(4); > TransformationCS result = QVTrCSTFactory.eINSTANCE.createTransformationCS(); >@@ -187,118 +187,118 @@ > result.getModelDecl().add(modelDeclCS); > setOffsets(result, getIToken($getToken(1)), modelDeclCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_0_ ::= transformationCS_0_ ',' modelDeclCS >- /.$BeginJava >+ /.$BeginCode > ModelDeclCS modelDeclCS = (ModelDeclCS)$getSym(3); > TransformationCS result = (TransformationCS)$getSym(1); > result.getModelDecl().add(modelDeclCS); > setOffsets(result, result, modelDeclCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_0_ ::= transformationCS_0_ ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_MODELDECL); >- $EndJava >+ $EndCode > ./ > transformationCS_1_ ::= transformationCS_0_ ')' >- /.$BeginJava >+ /.$BeginCode > TransformationCS result = (TransformationCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_2_ -> transformationCS_1_ > transformationCS_2_ ::= transformationCS_1_ extends identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(3); > TransformationCS result = (TransformationCS)$getSym(1); > result.setExtends(identifierCS); > setOffsets(result, result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_3_ -> transformationCS_2_ '{' > transformationCS_3_ ::= transformationCS_3_ keyDeclCS >- /.$BeginJava >+ /.$BeginCode > KeyDeclCS keyDeclCS = (KeyDeclCS)$getSym(2); > TransformationCS result = (TransformationCS)$getSym(1); > result.getKeyDecl().add(keyDeclCS); > setOffsets(result, result, keyDeclCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_4_ -> transformationCS_3_ > transformationCS_4_ ::= transformationCS_4_ queryCS >- /.$BeginJava >+ /.$BeginCode > QueryCS queryCS =(QueryCS)$getSym(2); > TransformationCS result = (TransformationCS)$getSym(1); > result.getQuery().add(queryCS); > setOffsets(result, result, queryCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_4_ ::= transformationCS_4_ relationCS >- /.$BeginJava >+ /.$BeginCode > RelationCS relationCS = (RelationCS)$getSym(2); > TransformationCS result = (TransformationCS)$getSym(1); > result.getRelation().add(relationCS); > setOffsets(result, result, relationCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > transformationCS_4_ ::= transformationCS_4_ ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_TRANSFORMATION_ELEMENT); >- $EndJava >+ $EndCode > ./ > transformationCS ::= transformationCS_4_ '}' >- /.$BeginJava >+ /.$BeginCode > TransformationCS result = (TransformationCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<modelDecl> ::= <modelId> ':' <metaModelId> > --**<modelDecl> ::= <modelId> ':' '{' <metaModelId> (',' <metaModelId>)* '}' > modelDeclCS_0_ ::= modelIdCS ':' >- /.$BeginJava >+ /.$BeginCode > IdentifierCS modelIdCS = (IdentifierCS)$getSym(1); > ModelDeclCS result = QVTrCSTFactory.eINSTANCE.createModelDeclCS(); > result.setModelId(modelIdCS); > setOffsets(result, modelIdCS, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > modelDeclCS_1_ -> modelDeclCS_0_ '{' > modelDeclCS_1_ -> modelDeclCS_2_ ',' > modelDeclCS_2_ ::= modelDeclCS_1_ metaModelIdCS > /.$NewCase ./ > modelDeclCS ::= modelDeclCS_0_ metaModelIdCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS metaModelIdCS = (IdentifierCS)$getSym(2); > ModelDeclCS result = (ModelDeclCS)$getSym(1); > result.getMetaModelId().add(metaModelIdCS); > setOffsets(result, result, metaModelIdCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > modelDeclCS_2_ ::= modelDeclCS_1_ ERROR_TOKEN > /.$NewCase ./ > modelDeclCS ::= modelDeclCS_0_ ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_MODELDECL_ELEMENT); >- $EndJava >+ $EndCode > ./ > modelDeclCS ::= modelDeclCS_2_ '}' >- /.$BeginJava >+ /.$BeginCode > ModelDeclCS result = (ModelDeclCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<modelId> ::= <identifier> >@@ -309,35 +309,35 @@ > > --<keyDecl> ::= 'key' <classId> '{' <propertyId> (, <propertyId>)* '}' ';' > keyDeclCS_0_ ::= key classIdCS '{' >- /.$BeginJava >+ /.$BeginCode > PathNameCS classIdCS = (PathNameCS)$getSym(2); > KeyDeclCS result = QVTrCSTFactory.eINSTANCE.createKeyDeclCS(); > result.setClassId(classIdCS); > setOffsets(result, getIToken($getToken(1)), getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > keyDeclCS_0_ -> keyDeclCS_1_ ',' > keyDeclCS_1_ ::= keyDeclCS_0_ propertyIdCS >- /.$BeginJava >+ /.$BeginCode > IdentifiedCS propertyIdCS = (IdentifiedCS)$getSym(2); > KeyDeclCS result = (KeyDeclCS)$getSym(1); > result.getPropertyId().add(propertyIdCS); > setOffsets(result, result, propertyIdCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > keyDeclCS_1_ ::= keyDeclCS_0_ ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_KEYDECL_ELEMENT); >- $EndJava >+ $EndCode > ./ > keyDeclCS ::= keyDeclCS_1_ '}' ';' >- /.$BeginJava >+ /.$BeginCode > KeyDeclCS result = (KeyDeclCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<classId> ::= <PathNameCS> >@@ -345,13 +345,13 @@ > > --<propertyId> ::= <identifier> > propertyIdCS ::= identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(1); > IdentifiedCS result = QVTCSTFactory.eINSTANCE.createIdentifiedCS(); > result.setIdentifier(identifierCS); > setOffsets(result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<relation> ::= ['top'] 'relation' <identifier> >@@ -364,172 +364,172 @@ > --<when> ::= 'when' '{' (<OclExpressionCS> ';')* '}' > --<where> ::= 'where' '{' (<OclExpressionCS> ';')* '}' > relationCS_0_ ::= relation identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(2); > RelationCS result = QVTrCSTFactory.eINSTANCE.createRelationCS(); > result.setIdentifier(identifierCS); > setOffsets(result, getIToken($getToken(1)), identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS_1_ -> relationCS_0_ > relationCS_1_ ::= top relationCS_0_ >- /.$BeginJava >+ /.$BeginCode > RelationCS result = (RelationCS)$getSym(2); > result.setTop(true); > setOffsets(result, getIToken($getToken(1)), result); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS_2_ -> relationCS_1_ > relationCS_2_ ::= relationCS_1_ overrides identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(3); > RelationCS result = (RelationCS)$getSym(1); > result.setOverrides(identifierCS); > setOffsets(result, result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS_3_ -> relationCS_2_ '{' > relationCS_3_ ::= relationCS_3_ varDeclarationCS >- /.$BeginJava >+ /.$BeginCode > VarDeclarationCS varDeclarationCS = (VarDeclarationCS)$getSym(2); > RelationCS result = (RelationCS)$getSym(1); > result.getVarDeclaration().add(varDeclarationCS); > setOffsets(result, result, varDeclarationCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS_preDomain -> relationCS_3_ > relationCS_preDomain -> relationCS_postDomain > relationCS_postDomain ::= relationCS_preDomain domainCS > /.$NewCase ./ > relationCS_postDomain ::= relationCS_preDomain primitiveTypeDomainCS >- /.$BeginJava >+ /.$BeginCode > AbstractDomainCS domainCS = (AbstractDomainCS)$getSym(2); > RelationCS result = (RelationCS)$getSym(1); > result.getDomain().add(domainCS); > setOffsets(result, result, domainCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS_postWhen -> relationCS_postDomain > relationCS_postWhen ::= relationCS_postDomain whenCS >- /.$BeginJava >+ /.$BeginCode > RelationCS result = (RelationCS)$getSym(1); > WhenCS whenCS = (WhenCS)$getSym(2); > result.setWhen(whenCS); > setOffsets(result, result, whenCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS_postWhere -> relationCS_postWhen > relationCS_postWhere ::= relationCS_postWhen whereCS >- /.$BeginJava >+ /.$BeginCode > RelationCS result = (RelationCS)$getSym(1); > WhereCS whereCS = (WhereCS)$getSym(2); > result.setWhere(whereCS); > setOffsets(result, result, whereCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > relationCS ::= relationCS_postWhere '}' >- /.$BeginJava >+ /.$BeginCode > RelationCS result = (RelationCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > whenCS_0 ::= when '{' >- /.$BeginJava >+ /.$BeginCode > WhenCS result = QVTrCSTFactory.eINSTANCE.createWhenCS(); > setOffsets(result, getIToken($getToken(1)), getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > whenCS_0 ::= when ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_WHEN); >- $EndJava >+ $EndCode > ./ > whenCS_1 -> whenCS_0 > whenCS_1 ::= whenCS_1 oclExpressionCS ';' >- /.$BeginJava >+ /.$BeginCode > WhenCS result = (WhenCS)$getSym(1); > OCLExpressionCS oclExpressionCS = (OCLExpressionCS)$getSym(2); > result.getExpr().add(oclExpressionCS); > setOffsets(result, result, getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > whenCS ::= whenCS_1 '}' >- /.$BeginJava >+ /.$BeginCode > WhenCS result = (WhenCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > > whereCS_0 ::= where '{' >- /.$BeginJava >+ /.$BeginCode > WhereCS result = QVTrCSTFactory.eINSTANCE.createWhereCS(); > setOffsets(result, getIToken($getToken(1)), getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > whereCS_0 ::= where ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_WHERE); >- $EndJava >+ $EndCode > ./ > whereCS_1 -> whereCS_0 > whereCS_1 ::= whereCS_1 oclExpressionCS ';' >- /.$BeginJava >+ /.$BeginCode > WhereCS result = (WhereCS)$getSym(1); > OCLExpressionCS oclExpressionCS = (OCLExpressionCS)$getSym(2); > result.getExpr().add(oclExpressionCS); > setOffsets(result, result, getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > whereCS ::= whereCS_1 '}' >- /.$BeginJava >+ /.$BeginCode > WhereCS result = (WhereCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > > --<varDeclaration> ::= <identifier> (, <identifier>)* ':' <TypeCS> ';' > varDeclarationCS_0 ::= identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(1); > VarDeclarationCS result = QVTrCSTFactory.eINSTANCE.createVarDeclarationCS(); > result.getVarDeclarationId().add(identifierCS); > setOffsets(result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > varDeclarationCS_0 ::= varDeclarationCS_0 ',' identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(3); > VarDeclarationCS result = (VarDeclarationCS)$getSym(1); > result.getVarDeclarationId().add(identifierCS); > setOffsets(result, result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > varDeclarationCS ::= varDeclarationCS_0 ':' typeCS ';' >- /.$BeginJava >+ /.$BeginCode > VarDeclarationCS result = (VarDeclarationCS)$getSym(1); > result.setType((TypeCS)$getSym(3)); > setOffsets(result, result, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<domain> ::= [<checkEnforceQualifier>] 'domain' <modelId> <template> >@@ -538,7 +538,7 @@ > -- ';' > --<checkEnforceQualifier> ::= 'checkonly' | 'enforce' > domainCS_0_ ::= domain modelIdCS templateCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(2); > TemplateCS templateCS = (TemplateCS)$getSym(3); > DomainCS result = QVTrCSTFactory.eINSTANCE.createDomainCS(); >@@ -546,72 +546,72 @@ > result.setTemplate(templateCS); > setOffsets(result, getIToken($getToken(1)), templateCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS_1_ -> domainCS_0_ > domainCS_1_ ::= checkonly domainCS_0_ >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(2); > result.setCheckonly(true); > setOffsets(result, getIToken($getToken(1)), result); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS_1_ ::= enforce domainCS_0_ >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(2); > result.setEnforce(true); > setOffsets(result, getIToken($getToken(1)), result); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS_1_ ::= replace domainCS_0_ >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(2); > result.setReplace(true); > setOffsets(result, getIToken($getToken(1)), result); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS_postImplementedby -> domainCS_1_ > domainCS_postImplementedby ::= domainCS_1_ implementedby operationCallExpCS >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(1); > OperationCallExpCS operationCallExpCS =(OperationCallExpCS)$getSym(3); > result.setImplementedBy(operationCallExpCS); > setOffsets(result, result, operationCallExpCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS_preDefaultValue -> domainCS_postImplementedby default_values '{' > domainCS_preDefaultValue ::= domainCS_preDefaultValue defaultValueCS >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(1); > DefaultValueCS defaultValueCS = (DefaultValueCS)$getSym(2); > result.getDefaultValue().add(defaultValueCS); > setOffsets(result, result, defaultValueCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS_postDefaultValues -> domainCS_postImplementedby > domainCS_postDefaultValues ::= domainCS_preDefaultValue '}' >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > domainCS ::= domainCS_postDefaultValues ';' >- /.$BeginJava >+ /.$BeginCode > DomainCS result = (DomainCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<primitiveTypeDomain> ::= 'primitive' 'domain' <identifier> ':' <TypeCS> ';' > primitiveTypeDomainCS ::= primitive domain identifierCS ':' typeCS ';' >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(3); > TypeCS typeCS = (TypeCS)$getSym(5); > PrimitiveTypeDomainCS result = QVTrCSTFactory.eINSTANCE.createPrimitiveTypeDomainCS(); >@@ -619,7 +619,7 @@ > result.setType(typeCS); > setOffsets(result, getIToken($getToken(1)), getIToken($getToken(6))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > >@@ -629,13 +629,13 @@ > templateCS_0_ -> collectionTemplateCS > templateCS -> templateCS_0_ > templateCS ::= templateCS_0_ '{' oclExpressionCS '}' >- /.$BeginJava >+ /.$BeginCode > TemplateCS result = (TemplateCS)$getSym(1); > OCLExpressionCS oclExpressionCS = (OCLExpressionCS)$getSym(3); > result.setGuardExpression(oclExpressionCS); > setOffsets(result, result, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<objectTemplate> ::= [<identifier>] ':' <pathNameCS> '{' [<propertyTemplateList>] '}' >@@ -645,7 +645,7 @@ > objectTemplateCS_prePropertyTemplates ::= relationIdentifier ':' pathNameCS '{' > /.$NewCase./ > objectTemplateCS_prePropertyTemplates ::= self ':' pathNameCS '{' >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = createIdentifierCS($getToken(1)); > TypeCS typeCS = (TypeCS)$getSym(3); > ObjectTemplateCS result = QVTrCSTFactory.eINSTANCE.createObjectTemplateCS(); >@@ -653,41 +653,41 @@ > result.setIdentifier(identifierCS); > setOffsets(result, identifierCS, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > objectTemplateCS_prePropertyTemplates ::= ':' pathNameCS '{' >- /.$BeginJava >+ /.$BeginCode > ObjectTemplateCS result = QVTrCSTFactory.eINSTANCE.createObjectTemplateCS(); > result.setIdentifier(createUniqueIdentifierCS($getToken(1))); > result.setType((TypeCS)$getSym(2)); > setOffsets(result, getIToken($getToken(1)), getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > objectTemplateCS_prePropertyTemplate -> objectTemplateCS_prePropertyTemplates > objectTemplateCS_prePropertyTemplate -> objectTemplateCS_postPropertyTemplate ',' > objectTemplateCS_postPropertyTemplate ::= objectTemplateCS_prePropertyTemplate propertyTemplateCS >- /.$BeginJava >+ /.$BeginCode > ObjectTemplateCS result = (ObjectTemplateCS)$getSym(1); > PropertyTemplateCS propertyTemplateCS = (PropertyTemplateCS)$getSym(2); > result.getPropertyTemplate().add(propertyTemplateCS); > setOffsets(result, result, propertyTemplateCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > objectTemplateCS ::= objectTemplateCS_prePropertyTemplates '}' > /.$NewCase./ > objectTemplateCS ::= objectTemplateCS_postPropertyTemplate '}' >- /.$BeginJava >+ /.$BeginCode > ObjectTemplateCS result = (ObjectTemplateCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<propertyTemplate> ::= <identifier> '=' <OclExpressionCS> > propertyTemplateCS ::= propertyIdCS '=' oclExpressionCS >- /.$BeginJava >+ /.$BeginCode > IdentifiedCS propertyIdCS = (IdentifiedCS)$getSym(1); > PropertyTemplateCS result = QVTrCSTFactory.eINSTANCE.createPropertyTemplateCS(); > OCLExpressionCS oclExpressionCS = (OCLExpressionCS)$getSym(3); >@@ -695,31 +695,31 @@ > result.setOclExpression(oclExpressionCS); > setOffsets(result, propertyIdCS, oclExpressionCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<collectionTemplate> ::= [<identifier>] ':' <CollectionTypeIdentifierCS> '(' <TypeCS> ')' > -- '{' [<memberSelection>] '}' > --<memberSelection> ::= (<identifier> | <template> | '_') >--- (, (<identifier> | <template> | '_'))* >+-- (�,� (<identifier> | <template> | '_'))* > -- '++' > -- (<identifier> | '_') > collectionTemplateCS_1_ ::= ':' collectionTypeCS >- /.$BeginJava >+ /.$BeginCode > CollectionTypeCS collectionTypeCS = (CollectionTypeCS)$getSym(2); > CollectionTemplateCS result = QVTrCSTFactory.eINSTANCE.createCollectionTemplateCS(); > result.setType(collectionTypeCS); > result.setIdentifier(createUniqueIdentifierCS($getToken(1))); > setOffsets(result, getIToken($getToken(1)), collectionTypeCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > collectionTemplateCS_1_ ::= IDENTIFIER ':' collectionTypeCS > /.$NewCase./ > collectionTemplateCS_1_ ::= relationIdentifier ':' collectionTypeCS > /.$NewCase./ > collectionTemplateCS_1_ ::= self ':' collectionTypeCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = createIdentifierCS($getToken(1)); > CollectionTypeCS collectionTypeCS = (CollectionTypeCS)$getSym(3); > CollectionTemplateCS result = QVTrCSTFactory.eINSTANCE.createCollectionTemplateCS(); >@@ -727,62 +727,62 @@ > result.setIdentifier(identifierCS); > setOffsets(result, identifierCS, collectionTypeCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > collectionTemplateCS_preMemberSelections -> collectionTemplateCS_1_ '{' > collectionTemplateCS_preMemberSelection -> collectionTemplateCS_preMemberSelections > collectionTemplateCS_preMemberSelection -> collectionTemplateCS_postMemberSelection ',' > collectionTemplateCS_postMemberSelection ::= collectionTemplateCS_preMemberSelection memberSelectorCS >- /.$BeginJava >+ /.$BeginCode > IdentifiedCS memberSelectorCS = (IdentifiedCS)$getSym(2); > CollectionTemplateCS result = (CollectionTemplateCS)$getSym(1); > result.getMemberIdentifier().add(memberSelectorCS); > setOffsets(result, result, memberSelectorCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > collectionTemplateCS ::= collectionTemplateCS_postMemberSelection PLUS_PLUS identifierCS '}' >- /.$BeginJava >+ /.$BeginCode > IdentifierCS restIdentifier = (IdentifierCS)$getSym(3); > CollectionTemplateCS result = (CollectionTemplateCS)$getSym(1); > result.setRestIdentifier(restIdentifier); > setOffsets(result, result, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > collectionTemplateCS ::= collectionTemplateCS_postMemberSelection ERROR_TOKEN '}' >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_REST); > IdentifierCS restIdentifier = createUniqueIdentifierCS($getToken(2)); > CollectionTemplateCS result = (CollectionTemplateCS)$getSym(1); > result.setRestIdentifier(restIdentifier); > setOffsets(result, result, getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > collectionTemplateCS ::= collectionTemplateCS_preMemberSelections '}' >- /.$BeginJava >+ /.$BeginCode > CollectionTemplateCS result = (CollectionTemplateCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(2))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<memberSelector> ::= (<identifier> | <template> | '_') > memberSelectorCS ::= identifierCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(1); > IdentifiedCS result = QVTCSTFactory.eINSTANCE.createIdentifiedCS(); > result.setIdentifier(identifierCS); > setOffsets(result, identifierCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > memberSelectorCS -> templateCS > > --<assignmentExp> ::= <identifier> '=' <OclExpressionCS> ';' > defaultValueCS ::= identifierCS '=' oclExpressionCS ';' >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(1); > OCLExpressionCS oclExpressionCS = (OCLExpressionCS)$getSym(3); > DefaultValueCS result = QVTrCSTFactory.eINSTANCE.createDefaultValueCS(); >@@ -790,7 +790,7 @@ > result.setInitialiser(oclExpressionCS); > setOffsets(result, identifierCS, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<query> ::= 'query' <PathNameCS> >@@ -798,51 +798,51 @@ > -- ':' <TypeCS> > -- (';' | '{' <OclExpressionCS> '}') > queryCS_preParamDeclaration ::= query pathNameCS '(' >- /.$BeginJava >+ /.$BeginCode > QueryCS result = QVTrCSTFactory.eINSTANCE.createQueryCS(); > result.setPathName((PathNameCS)$getSym(2)); > setOffsets(result, getIToken($getToken(1)), getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > queryCS_preParamDeclaration -> queryCS_postParamDeclaration ',' > queryCS_postParamDeclaration ::= queryCS_preParamDeclaration paramDeclarationCS >- /.$BeginJava >+ /.$BeginCode > ParamDeclarationCS paramDeclarationCS = (ParamDeclarationCS)$getSym(2); > QueryCS result = (QueryCS)$getSym(1); > result.getInputParamDeclaration().add(paramDeclarationCS); > setOffsets(result, result, paramDeclarationCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > queryCS_postType ::= queryCS_postParamDeclaration ')' ':' typeCS >- /.$BeginJava >+ /.$BeginCode > TypeCS typeCS = (TypeCS)$getSym(4); > QueryCS result = (QueryCS)$getSym(1); > result.setType(typeCS); > setOffsets(result, result, typeCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > queryCS ::= queryCS_postType ';' >- /.$BeginJava >+ /.$BeginCode > QueryCS result = (QueryCS)$getSym(1); > setOffsets(result, result, getIToken($getToken(3))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > queryCS ::= queryCS_postType '{' oclExpressionCS '}' >- /.$BeginJava >+ /.$BeginCode > QueryCS result = (QueryCS)$getSym(1); > result.setOclExpression((OCLExpressionCS)$getSym(3)); > setOffsets(result, result, getIToken($getToken(4))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > --<paramDeclaration> ::= <identifier> ':' <TypeCS> > paramDeclarationCS ::= identifierCS ':' typeCS >- /.$BeginJava >+ /.$BeginCode > IdentifierCS identifierCS = (IdentifierCS)$getSym(1); > TypeCS typeCS = (TypeCS)$getSym(3); > ParamDeclarationCS result = QVTrCSTFactory.eINSTANCE.createParamDeclarationCS(); >@@ -850,12 +850,12 @@ > result.setType(typeCS); > setOffsets(result, identifierCS, typeCS); > $setResult(result); >- $EndJava >+ $EndCode > ./ > paramDeclarationCS ::= identifierCS ERROR_TOKEN >- /.$BeginJava >+ /.$BeginCode > reportErrorTokenMessage($getToken(2), QVTrParserErrors.INCOMPLETE_PARAM_DECLARATION); >- $EndJava >+ $EndCode > ./ > > --<OclExpressionCS> ::= <PropertyCallExpCS> >@@ -892,23 +892,23 @@ > relationIdentifier -> pre > > pathNameCS ::= relationIdentifier >- /.$BeginJava >+ /.$BeginCode > PathNameCS result = createPathNameCS(); > result.getSequenceOfNames().add(getTokenText($getToken(1))); > setOffsets(result, getIToken($getToken(1))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > simpleNameCS ::= relationIdentifier >- /.$BeginJava >+ /.$BeginCode > SimpleNameCS result = createSimpleNameCS( > SimpleTypeEnum.IDENTIFIER_LITERAL, > getTokenText($getToken(1)) > ); > setOffsets(result, getIToken($getToken(1))); > $setResult(result); >- $EndJava >+ $EndCode > ./ > > identifierCS ::= IDENTIFIER >@@ -916,10 +916,10 @@ > identifierCS ::= relationIdentifier > /.$NewCase ./ > identifierCS ::= self >- /.$BeginJava >+ /.$BeginCode > IdentifierCS result = createIdentifierCS($getToken(1)); > $setResult(result); >- $EndJava >+ $EndCode > ./ >-$End >+%End > >\ No newline at end of file >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/AbstractQVTrAnalyzer.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/AbstractQVTrAnalyzer.java,v >retrieving revision 1.17 >diff -u -r1.17 AbstractQVTrAnalyzer.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/AbstractQVTrAnalyzer.java 5 Mar 2009 22:03:05 -0000 1.17 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/AbstractQVTrAnalyzer.java 14 Aug 2009 17:34:54 -0000 >@@ -17,7 +17,7 @@ > import java.util.ArrayList; > import java.util.List; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.emf.common.util.EList; > import org.eclipse.emf.common.util.TreeIterator; >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexerprs.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexerprs.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrLexerprs.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexerprs.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexerprs.java 14 Aug 2009 17:34:54 -0000 >@@ -1,7 +1,7 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2009 IBM Corporation, Borland Software Corp., and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Borland Software Corp., Open Canarias S.L. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,17 +10,113 @@ > * Contributors: > * IBM - Initial API and implementation > * E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling >+* - Bug 259818 > * Borland - Bug 242880 >+* Adolfo Sanchez-Barbudo Herrera - LPG v2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrLexerprs.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* $Id$ > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > >-public class QVTrLexerprs implements lpg.lpgjavaruntime.ParseTable, QVTrLexersym { >+public class QVTrLexerprs implements lpg.runtime.ParseTable, QVTrLexersym { >+ public final static int ERROR_SYMBOL = 0; >+ public final int getErrorSymbol() { return ERROR_SYMBOL; } >+ >+ public final static int SCOPE_UBOUND = 0; >+ public final int getScopeUbound() { return SCOPE_UBOUND; } >+ >+ public final static int SCOPE_SIZE = 0; >+ public final int getScopeSize() { return SCOPE_SIZE; } >+ >+ public final static int MAX_NAME_LENGTH = 0; >+ public final int getMaxNameLength() { return MAX_NAME_LENGTH; } >+ >+ public final static int NUM_STATES = 51; >+ public final int getNumStates() { return NUM_STATES; } >+ >+ public final static int NT_OFFSET = 103; >+ public final int getNtOffset() { return NT_OFFSET; } >+ >+ public final static int LA_STATE_OFFSET = 828; >+ public final int getLaStateOffset() { return LA_STATE_OFFSET; } >+ >+ public final static int MAX_LA = 1; >+ public final int getMaxLa() { return MAX_LA; } >+ >+ public final static int NUM_RULES = 311; >+ public final int getNumRules() { return NUM_RULES; } >+ >+ public final static int NUM_NONTERMINALS = 44; >+ public final int getNumNonterminals() { return NUM_NONTERMINALS; } >+ >+ public final static int NUM_SYMBOLS = 147; >+ public final int getNumSymbols() { return NUM_SYMBOLS; } >+ >+ public final static int SEGMENT_SIZE = 8192; >+ public final int getSegmentSize() { return SEGMENT_SIZE; } >+ >+ public final static int START_STATE = 312; >+ public final int getStartState() { return START_STATE; } >+ >+ public final static int IDENTIFIER_SYMBOL = 0; >+ public final int getIdentifier_SYMBOL() { return IDENTIFIER_SYMBOL; } >+ >+ public final static int EOFT_SYMBOL = 99; >+ public final int getEoftSymbol() { return EOFT_SYMBOL; } >+ >+ public final static int EOLT_SYMBOL = 104; >+ public final int getEoltSymbol() { return EOLT_SYMBOL; } >+ >+ public final static int ACCEPT_ACTION = 516; >+ public final int getAcceptAction() { return ACCEPT_ACTION; } >+ >+ public final static int ERROR_ACTION = 517; >+ public final int getErrorAction() { return ERROR_ACTION; } >+ >+ public final static boolean BACKTRACK = false; >+ public final boolean getBacktrack() { return BACKTRACK; } >+ >+ public final int getStartSymbol() { return lhs(0); } >+ public final boolean isValidForParser() { return QVTrLexersym.isValidForParser; } >+ >+ >+ public interface IsNullable { >+ public final static byte isNullable[] = {0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,1,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,1,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0 >+ }; >+ }; >+ public final static byte isNullable[] = IsNullable.isNullable; >+ public final boolean isNullable(int index) { return isNullable[index] != 0; } >+ >+ public interface ProsthesesIndex { >+ public final static byte prosthesesIndex[] = {0, >+ 20,25,26,27,35,4,15,37,40,43, >+ 24,5,3,6,17,18,23,32,34,36, >+ 41,42,2,7,8,9,10,11,12,13, >+ 14,16,19,33,38,39,44,1,21,22, >+ 28,29,30,31 >+ }; >+ }; >+ public final static byte prosthesesIndex[] = ProsthesesIndex.prosthesesIndex; >+ public final int prosthesesIndex(int index) { return prosthesesIndex[index]; } > > public interface IsKeyword { > public final static byte isKeyword[] = {0, >@@ -478,56 +574,21 @@ > public final int scopeState(int index) { return 0;} > public final int inSymb(int index) { return 0;} > public final String name(int index) { return null; } >- public final int getErrorSymbol() { return 0; } >- public final int getScopeUbound() { return 0; } >- public final int getScopeSize() { return 0; } >- public final int getMaxNameLength() { return 0; } >- >- public final static int >- NUM_STATES = 51, >- NT_OFFSET = 103, >- LA_STATE_OFFSET = 828, >- MAX_LA = 1, >- NUM_RULES = 311, >- NUM_NONTERMINALS = 44, >- NUM_SYMBOLS = 147, >- SEGMENT_SIZE = 8192, >- START_STATE = 312, >- IDENTIFIER_SYMBOL = 0, >- EOFT_SYMBOL = 99, >- EOLT_SYMBOL = 104, >- ACCEPT_ACTION = 516, >- ERROR_ACTION = 517; >- >- public final static boolean BACKTRACK = false; >- >- public final int getNumStates() { return NUM_STATES; } >- public final int getNtOffset() { return NT_OFFSET; } >- public final int getLaStateOffset() { return LA_STATE_OFFSET; } >- public final int getMaxLa() { return MAX_LA; } >- public final int getNumRules() { return NUM_RULES; } >- public final int getNumNonterminals() { return NUM_NONTERMINALS; } >- public final int getNumSymbols() { return NUM_SYMBOLS; } >- public final int getSegmentSize() { return SEGMENT_SIZE; } >- public final int getStartState() { return START_STATE; } >- public final int getStartSymbol() { return lhs[0]; } >- public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; } >- public final int getEoftSymbol() { return EOFT_SYMBOL; } >- public final int getEoltSymbol() { return EOLT_SYMBOL; } >- public final int getAcceptAction() { return ACCEPT_ACTION; } >- public final int getErrorAction() { return ERROR_ACTION; } >- public final boolean isValidForParser() { return isValidForParser; } >- public final boolean getBacktrack() { return BACKTRACK; } >- > public final int originalState(int state) { return 0; } > public final int asi(int state) { return 0; } > public final int nasi(int state) { return 0; } > public final int inSymbol(int state) { return 0; } > >+ /** >+ * assert(! goto_default); >+ */ > public final int ntAction(int state, int sym) { > return baseAction[state + sym]; > } > >+ /** >+ * assert(! shift_default); >+ */ > public final int tAction(int state, int sym) { > int i = baseAction[state], > k = i + sym; >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.java,v >retrieving revision 1.11 >diff -u -r1.11 QVTrLexer.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.java 6 Mar 2009 22:39:37 -0000 1.11 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.java 14 Aug 2009 17:34:54 -0000 >@@ -1,7 +1,7 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2009 IBM Corporation, Borland Software Corp., and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Borland Software Corp., Open Canarias S.L. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,17 +10,19 @@ > * Contributors: > * IBM - Initial API and implementation > * E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling >+* - Bug 259818 > * Borland - Bug 242880 >+* Adolfo Sanchez-Barbudo Herrera - LPG v2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrLexer.java,v 1.11 2009/03/06 22:39:37 ewillink Exp $ >+* $Id$ > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > >-import lpg.lpgjavaruntime.*; >+import lpg.runtime.*; > import org.eclipse.ocl.lpg.AbstractLexer; > import org.eclipse.ocl.lpg.AbstractParser; > import org.eclipse.qvt.declarative.parser.environment.ICSTFileEnvironment; >@@ -53,7 +55,7 @@ > > public QVTrLexer(ICSTFileEnvironment environment, char[] chars) { > this(environment, chars, "OCL", ECLIPSE_TAB_VALUE); >- kwLexer = new QVTrKWLexer(getInputChars(), TK_IDENTIFIER); >+ kwLexer = new QVTrKWLexer(getInputChars(), QVTrParsersym.TK_IDENTIFIER); > } > > public QVTrLexer(ICSTFileEnvironment environment, char[] input_chars, String filename, int tab) { >@@ -82,7 +84,7 @@ > { > super.initialize(content, filename); > if (kwLexer == null) >- kwLexer = new QVTrKWLexer(getInputChars(), TK_IDENTIFIER); >+ kwLexer = new QVTrKWLexer(getInputChars(), QVTrParsersym.TK_IDENTIFIER); > else > kwLexer.setInputChars(getInputChars()); > } >@@ -93,7 +95,7 @@ > @Override > public void setInputChars(char[] inputChars) { > super.setInputChars(inputChars); >- kwLexer = new QVTrKWLexer(getInputChars(), TK_IDENTIFIER); >+ kwLexer = new QVTrKWLexer(getInputChars(), QVTrParsersym.TK_IDENTIFIER); > } > > @Override >@@ -109,12 +111,12 @@ > lexParser.parseCharacters(monitor); // Lex the input characters > > int i = getStreamIndex(); >- parser.makeToken(i, i, TK_EOF_TOKEN); // and end with the end of file token >+ parser.makeToken(i, i, QVTrParsersym.TK_EOF_TOKEN); // and end with the end of file token > parser.setStreamLength(parser.getSize()); > > return; > } >- >+ > final void makeToken(int kind) > { > int startOffset = getLeftSpan(), >@@ -318,7 +320,7 @@ > // Rule 2: Token ::= EscapedSQ > // > case 2: { >- makeToken(TK_STRING_LITERAL); >+ makeToken(QVTrParsersym.TK_STRING_LITERAL); > break; > } > >@@ -326,7 +328,7 @@ > // Rule 3: Token ::= SingleQuote SLNotSQ SingleQuote > // > case 3: { >- makeToken(TK_STRING_LITERAL); >+ makeToken(QVTrParsersym.TK_STRING_LITERAL); > break; > } > >@@ -334,7 +336,7 @@ > // Rule 4: Token ::= Acute SLNotSQOpt Acute > // > case 4: { >- makeToken(TK_STRING_LITERAL); >+ makeToken(QVTrParsersym.TK_STRING_LITERAL); > break; > } > >@@ -342,7 +344,7 @@ > // Rule 5: Token ::= BackQuote SLNotSQOpt Acute > // > case 5: { >- makeToken(TK_STRING_LITERAL); >+ makeToken(QVTrParsersym.TK_STRING_LITERAL); > break; > } > >@@ -350,7 +352,7 @@ > // Rule 6: Token ::= IntegerLiteral > // > case 6: { >- makeToken(TK_INTEGER_LITERAL); >+ makeToken(QVTrParsersym.TK_INTEGER_LITERAL); > break; > } > >@@ -358,7 +360,7 @@ > // Rule 7: Token ::= RealLiteral > // > case 7: { >- makeToken(TK_REAL_LITERAL); >+ makeToken(QVTrParsersym.TK_REAL_LITERAL); > break; > } > >@@ -366,7 +368,7 @@ > // Rule 8: Token ::= NumericOperation > // > case 8: { >- makeToken(TK_NUMERIC_OPERATION); >+ makeToken(QVTrParsersym.TK_NUMERIC_OPERATION); > break; > } > >@@ -374,7 +376,7 @@ > // Rule 9: Token ::= IntegerRangeStart > // > case 9: { >- makeToken(TK_INTEGER_RANGE_START); >+ makeToken(QVTrParsersym.TK_INTEGER_RANGE_START); > break; > } > >@@ -406,7 +408,7 @@ > // Rule 13: Token ::= + > // > case 13: { >- makeToken(TK_PLUS); >+ makeToken(QVTrParsersym.TK_PLUS); > break; > } > >@@ -414,7 +416,7 @@ > // Rule 14: Token ::= - > // > case 14: { >- makeToken(TK_MINUS); >+ makeToken(QVTrParsersym.TK_MINUS); > break; > } > >@@ -422,7 +424,7 @@ > // Rule 15: Token ::= * > // > case 15: { >- makeToken(TK_MULTIPLY); >+ makeToken(QVTrParsersym.TK_MULTIPLY); > break; > } > >@@ -430,7 +432,7 @@ > // Rule 16: Token ::= / > // > case 16: { >- makeToken(TK_DIVIDE); >+ makeToken(QVTrParsersym.TK_DIVIDE); > break; > } > >@@ -438,7 +440,7 @@ > // Rule 17: Token ::= ( > // > case 17: { >- makeToken(TK_LPAREN); >+ makeToken(QVTrParsersym.TK_LPAREN); > break; > } > >@@ -446,7 +448,7 @@ > // Rule 18: Token ::= ) > // > case 18: { >- makeToken(TK_RPAREN); >+ makeToken(QVTrParsersym.TK_RPAREN); > break; > } > >@@ -454,7 +456,7 @@ > // Rule 19: Token ::= > > // > case 19: { >- makeToken(TK_GREATER); >+ makeToken(QVTrParsersym.TK_GREATER); > break; > } > >@@ -462,7 +464,7 @@ > // Rule 20: Token ::= < > // > case 20: { >- makeToken(TK_LESS); >+ makeToken(QVTrParsersym.TK_LESS); > break; > } > >@@ -470,7 +472,7 @@ > // Rule 21: Token ::= = > // > case 21: { >- makeToken(TK_EQUAL); >+ makeToken(QVTrParsersym.TK_EQUAL); > break; > } > >@@ -478,7 +480,7 @@ > // Rule 22: Token ::= > = > // > case 22: { >- makeToken(TK_GREATER_EQUAL); >+ makeToken(QVTrParsersym.TK_GREATER_EQUAL); > break; > } > >@@ -486,7 +488,7 @@ > // Rule 23: Token ::= < = > // > case 23: { >- makeToken(TK_LESS_EQUAL); >+ makeToken(QVTrParsersym.TK_LESS_EQUAL); > break; > } > >@@ -494,7 +496,7 @@ > // Rule 24: Token ::= < > > // > case 24: { >- makeToken(TK_NOT_EQUAL); >+ makeToken(QVTrParsersym.TK_NOT_EQUAL); > break; > } > >@@ -502,7 +504,7 @@ > // Rule 25: Token ::= [ > // > case 25: { >- makeToken(TK_LBRACKET); >+ makeToken(QVTrParsersym.TK_LBRACKET); > break; > } > >@@ -510,7 +512,7 @@ > // Rule 26: Token ::= ] > // > case 26: { >- makeToken(TK_RBRACKET); >+ makeToken(QVTrParsersym.TK_RBRACKET); > break; > } > >@@ -518,7 +520,7 @@ > // Rule 27: Token ::= { > // > case 27: { >- makeToken(TK_LBRACE); >+ makeToken(QVTrParsersym.TK_LBRACE); > break; > } > >@@ -526,7 +528,7 @@ > // Rule 28: Token ::= } > // > case 28: { >- makeToken(TK_RBRACE); >+ makeToken(QVTrParsersym.TK_RBRACE); > break; > } > >@@ -534,7 +536,7 @@ > // Rule 29: Token ::= - > > // > case 29: { >- makeToken(TK_ARROW); >+ makeToken(QVTrParsersym.TK_ARROW); > break; > } > >@@ -542,7 +544,7 @@ > // Rule 30: Token ::= | > // > case 30: { >- makeToken(TK_BAR); >+ makeToken(QVTrParsersym.TK_BAR); > break; > } > >@@ -550,7 +552,7 @@ > // Rule 31: Token ::= , > // > case 31: { >- makeToken(TK_COMMA); >+ makeToken(QVTrParsersym.TK_COMMA); > break; > } > >@@ -558,7 +560,7 @@ > // Rule 32: Token ::= : > // > case 32: { >- makeToken(TK_COLON); >+ makeToken(QVTrParsersym.TK_COLON); > break; > } > >@@ -566,7 +568,7 @@ > // Rule 33: Token ::= : : > // > case 33: { >- makeToken(TK_COLONCOLON); >+ makeToken(QVTrParsersym.TK_COLONCOLON); > break; > } > >@@ -574,7 +576,7 @@ > // Rule 34: Token ::= ; > // > case 34: { >- makeToken(TK_SEMICOLON); >+ makeToken(QVTrParsersym.TK_SEMICOLON); > break; > } > >@@ -582,7 +584,7 @@ > // Rule 35: Token ::= . > // > case 35: { >- makeToken(TK_DOT); >+ makeToken(QVTrParsersym.TK_DOT); > break; > } > >@@ -590,7 +592,7 @@ > // Rule 36: Token ::= . . > // > case 36: { >- makeToken(TK_DOTDOT); >+ makeToken(QVTrParsersym.TK_DOTDOT); > break; > } > >@@ -598,7 +600,7 @@ > // Rule 37: Token ::= @ p r e > // > case 37: { >- makeToken(TK_ATPRE); >+ makeToken(QVTrParsersym.TK_ATPRE); > break; > } > >@@ -606,7 +608,7 @@ > // Rule 38: Token ::= ^ > // > case 38: { >- makeToken(TK_CARET); >+ makeToken(QVTrParsersym.TK_CARET); > break; > } > >@@ -614,7 +616,7 @@ > // Rule 39: Token ::= ^ ^ > // > case 39: { >- makeToken(TK_CARETCARET); >+ makeToken(QVTrParsersym.TK_CARETCARET); > break; > } > >@@ -622,7 +624,7 @@ > // Rule 40: Token ::= ? > // > case 40: { >- makeToken(TK_QUESTIONMARK); >+ makeToken(QVTrParsersym.TK_QUESTIONMARK); > break; > } > >@@ -630,7 +632,7 @@ > // Rule 310: Token ::= + + > // > case 310: { >- makeToken(TK_PLUS_PLUS); >+ makeToken(QVTrParsersym.TK_PLUS_PLUS); > break; > } > >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParserprs.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParserprs.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrParserprs.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParserprs.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParserprs.java 14 Aug 2009 17:34:56 -0000 >@@ -1,7 +1,8 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc., Borland Software Corp., and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc., Borland Software Corp., >+* Open Canarias S.L. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -14,16 +15,135 @@ > * E.D.Willink - Bugs 225493, 243976, 259818 > * Zeligsoft - Bug 243976 > * Borland - Bug 242880 >+* Adolfo Sanchez- Barbudo Herrera - LPG v 2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrParserprs.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* $Id: EssentialOCL.g,v 1.7 2009/03/05 14:12:14 cdamus Exp $ > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > >-public class QVTrParserprs implements lpg.lpgjavaruntime.ParseTable, QVTrParsersym { >+public class QVTrParserprs implements lpg.runtime.ParseTable, QVTrParsersym { >+ public final static int ERROR_SYMBOL = 1; >+ public final int getErrorSymbol() { return ERROR_SYMBOL; } >+ >+ public final static int SCOPE_UBOUND = 64; >+ public final int getScopeUbound() { return SCOPE_UBOUND; } >+ >+ public final static int SCOPE_SIZE = 65; >+ public final int getScopeSize() { return SCOPE_SIZE; } >+ >+ public final static int MAX_NAME_LENGTH = 40; >+ public final int getMaxNameLength() { return MAX_NAME_LENGTH; } >+ >+ public final static int NUM_STATES = 289; >+ public final int getNumStates() { return NUM_STATES; } >+ >+ public final static int NT_OFFSET = 117; >+ public final int getNtOffset() { return NT_OFFSET; } >+ >+ public final static int LA_STATE_OFFSET = 4520; >+ public final int getLaStateOffset() { return LA_STATE_OFFSET; } >+ >+ public final static int MAX_LA = 2; >+ public final int getMaxLa() { return MAX_LA; } >+ >+ public final static int NUM_RULES = 423; >+ public final int getNumRules() { return NUM_RULES; } >+ >+ public final static int NUM_NONTERMINALS = 158; >+ public final int getNumNonterminals() { return NUM_NONTERMINALS; } >+ >+ public final static int NUM_SYMBOLS = 275; >+ public final int getNumSymbols() { return NUM_SYMBOLS; } >+ >+ public final static int SEGMENT_SIZE = 8192; >+ public final int getSegmentSize() { return SEGMENT_SIZE; } >+ >+ public final static int START_STATE = 500; >+ public final int getStartState() { return START_STATE; } >+ >+ public final static int IDENTIFIER_SYMBOL = 3; >+ public final int getIdentifier_SYMBOL() { return IDENTIFIER_SYMBOL; } >+ >+ public final static int EOFT_SYMBOL = 111; >+ public final int getEoftSymbol() { return EOFT_SYMBOL; } >+ >+ public final static int EOLT_SYMBOL = 111; >+ public final int getEoltSymbol() { return EOLT_SYMBOL; } >+ >+ public final static int ACCEPT_ACTION = 4096; >+ public final int getAcceptAction() { return ACCEPT_ACTION; } >+ >+ public final static int ERROR_ACTION = 4097; >+ public final int getErrorAction() { return ERROR_ACTION; } >+ >+ public final static boolean BACKTRACK = true; >+ public final boolean getBacktrack() { return BACKTRACK; } >+ >+ public final int getStartSymbol() { return lhs(0); } >+ public final boolean isValidForParser() { return QVTrParsersym.isValidForParser; } >+ >+ >+ public interface IsNullable { >+ public final static byte isNullable[] = {0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,1,0, >+ 0,0,1,0,0,0,0,0,0,0, >+ 0,0,0,1,0,0,0,0,0,0, >+ 1,1,0,0,0,0,0,0,0,0, >+ 1,0,0,0,0,1,0,0,0,0, >+ 0,1,1,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,1, >+ 1,0,1,0,0 >+ }; >+ }; >+ public final static byte isNullable[] = IsNullable.isNullable; >+ public final boolean isNullable(int index) { return isNullable[index] != 0; } >+ >+ public interface ProsthesesIndex { >+ public final static char prosthesesIndex[] = {0, >+ 146,21,92,54,62,9,3,5,6,7, >+ 8,10,15,50,51,11,40,42,44,48, >+ 49,56,57,58,59,60,61,67,68,69, >+ 70,71,41,43,38,39,34,35,36,37, >+ 32,33,30,31,136,142,143,144,145,147, >+ 148,150,151,152,153,28,29,25,26,27, >+ 98,52,53,81,23,47,77,78,80,91, >+ 135,88,93,109,4,12,55,65,66,73, >+ 79,83,84,85,86,87,100,108,110,111, >+ 112,116,117,2,13,14,45,46,63,64, >+ 72,74,75,76,82,94,95,96,97,99, >+ 101,102,103,104,105,106,107,113,114,115, >+ 118,119,120,121,122,123,124,125,126,127, >+ 128,129,130,131,132,133,134,137,138,139, >+ 140,141,149,154,155,156,157,158,1,16, >+ 17,18,19,20,22,24,89,90 >+ }; >+ }; >+ public final static char prosthesesIndex[] = ProsthesesIndex.prosthesesIndex; >+ public final int prosthesesIndex(int index) { return prosthesesIndex[index]; } > > public interface IsKeyword { > public final static byte isKeyword[] = {0, >@@ -1706,7 +1826,7 @@ > 53,54,55,56,1,10,11,5,12,13, > 14,15,16,17,18,19,20,21,6,22, > 9,28,27,24,26,25,3,8,0,88, >- 95,0,113,4,98,96,94,106,107,100, >+ 95,0,4,98,96,94,113,106,107,100, > 101,11,14,1,88,103,42,57,0,7, > 95,2,109,97,104,105,102,99,30,31, > 40,41,32,33,34,35,23,29,37,38, >@@ -1809,18 +1929,18 @@ > > public interface TerminalIndex { > public final static char terminalIndex[] = {0, >- 118,12,116,13,100,112,21,109,114,98, >+ 118,11,116,12,100,112,20,109,114,98, > 99,101,102,103,104,105,106,107,108,110, >- 111,113,8,36,37,38,41,42,11,4, >- 5,6,7,9,10,35,47,48,49,2, >- 3,20,87,88,89,90,91,93,94,95, >- 96,62,63,64,65,66,15,56,57,58, >+ 111,113,7,36,37,38,41,42,10,3, >+ 4,5,6,8,9,35,47,48,49,1, >+ 2,19,87,88,89,90,91,93,94,95, >+ 96,62,63,64,65,66,14,56,57,58, > 59,67,68,69,70,71,72,73,74,75, > 76,77,78,79,80,81,82,83,84,85, >- 86,50,92,31,32,33,34,14,54,55, >- 97,52,43,23,22,19,26,17,24,46, >- 53,18,25,27,28,44,45,51,16,29, >- 115,117,1,39,40,60,61 >+ 86,50,92,31,32,33,34,13,54,55, >+ 97,52,43,22,21,18,25,16,23,46, >+ 53,17,24,26,27,44,45,51,15,28, >+ 115,117,29,39,40,60,61 > }; > }; > public final static char terminalIndex[] = TerminalIndex.terminalIndex; >@@ -1921,35 +2041,35 @@ > > public interface ScopeRhs { > public final static char scopeRhs[] = {0, >- 170,0,15,0,172,0,118,15,0,1, >- 169,15,0,169,0,14,0,168,0,175, >- 88,163,0,180,109,133,0,118,0,180, >+ 170,0,57,0,172,0,1,57,0,113, >+ 178,57,0,169,0,88,0,168,0,175, >+ 88,163,0,180,109,133,0,1,0,180, > 109,123,0,175,2,0,175,93,0,175, >- 106,175,93,0,44,131,118,0,175,107, >- 175,106,175,93,0,45,131,118,0,44, >- 131,45,131,118,0,183,2,187,128,0, >- 13,0,183,2,187,129,0,183,2,187, >+ 106,175,93,0,106,175,1,0,175,107, >+ 175,106,175,93,0,107,175,1,0,106, >+ 175,107,175,1,0,183,2,187,128,0, >+ 4,0,183,2,187,129,0,183,2,187, > 193,0,183,2,190,95,119,0,185,2, > 122,0,202,2,123,105,0,202,2,123, >- 104,0,46,0,45,131,46,0,44,131, >- 45,131,46,0,199,92,0,53,131,0, >- 17,0,0,183,2,179,129,0,183,2, >+ 104,0,100,0,107,175,100,0,106,175, >+ 107,175,100,0,199,92,0,101,175,0, >+ 98,179,0,183,2,179,129,0,183,2, > 179,128,0,183,2,179,193,0,222,2, >- 83,0,185,7,3,0,8,131,0,175, >+ 83,0,185,7,3,0,23,175,0,175, > 96,182,94,182,2,212,0,182,94,182, >- 2,212,0,19,131,13,0,182,2,212, >- 0,23,130,19,131,13,0,175,96,182, >+ 2,212,0,96,175,4,0,182,2,212, >+ 0,94,182,96,175,4,0,175,96,182, > 2,212,0,175,96,182,42,182,2,213, > 0,182,42,182,2,213,0,182,2,213, >- 0,20,130,19,131,13,0,175,96,182, >+ 0,42,182,96,175,4,0,175,96,182, > 2,213,0,175,2,213,0,218,88,83, > 0,216,88,122,0,183,2,123,95,119, >- 0,183,2,84,0,152,0,5,145,0, >- 4,145,0,156,0,3,143,0,2,143, >- 0,158,0,10,140,0,9,140,0,7, >- 140,0,6,140,0,160,0,11,138,0, >- 8,138,0,173,0,49,136,0,48,136, >- 0,47,136,0 >+ 0,183,2,84,0,152,0,31,150,0, >+ 30,150,0,156,0,41,153,0,40,153, >+ 0,158,0,35,155,0,34,155,0,33, >+ 155,0,32,155,0,160,0,29,159,0, >+ 23,159,0,173,0,39,161,0,38,161, >+ 0,37,161,0 > }; > }; > public final static char scopeRhs[] = ScopeRhs.scopeRhs; >@@ -2014,7 +2134,6 @@ > public interface Name { > public final static String name[] = { > "", >- "++", > "+", > "-", > "*", >@@ -2043,6 +2162,7 @@ > "^", > "^^", > "?", >+ "++", > "$empty", > "NUMERIC_OPERATION", > "STRING_LITERAL", >@@ -2250,53 +2370,6 @@ > public final static String name[] = Name.name; > public final String name(int index) { return name[index]; } > >- public final static int >- ERROR_SYMBOL = 1, >- SCOPE_UBOUND = 64, >- SCOPE_SIZE = 65, >- MAX_NAME_LENGTH = 40; >- >- public final int getErrorSymbol() { return ERROR_SYMBOL; } >- public final int getScopeUbound() { return SCOPE_UBOUND; } >- public final int getScopeSize() { return SCOPE_SIZE; } >- public final int getMaxNameLength() { return MAX_NAME_LENGTH; } >- >- public final static int >- NUM_STATES = 289, >- NT_OFFSET = 117, >- LA_STATE_OFFSET = 4520, >- MAX_LA = 2, >- NUM_RULES = 423, >- NUM_NONTERMINALS = 158, >- NUM_SYMBOLS = 275, >- SEGMENT_SIZE = 8192, >- START_STATE = 500, >- IDENTIFIER_SYMBOL = 3, >- EOFT_SYMBOL = 111, >- EOLT_SYMBOL = 111, >- ACCEPT_ACTION = 4096, >- ERROR_ACTION = 4097; >- >- public final static boolean BACKTRACK = true; >- >- public final int getNumStates() { return NUM_STATES; } >- public final int getNtOffset() { return NT_OFFSET; } >- public final int getLaStateOffset() { return LA_STATE_OFFSET; } >- public final int getMaxLa() { return MAX_LA; } >- public final int getNumRules() { return NUM_RULES; } >- public final int getNumNonterminals() { return NUM_NONTERMINALS; } >- public final int getNumSymbols() { return NUM_SYMBOLS; } >- public final int getSegmentSize() { return SEGMENT_SIZE; } >- public final int getStartState() { return START_STATE; } >- public final int getStartSymbol() { return lhs[0]; } >- public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; } >- public final int getEoftSymbol() { return EOFT_SYMBOL; } >- public final int getEoltSymbol() { return EOLT_SYMBOL; } >- public final int getAcceptAction() { return ACCEPT_ACTION; } >- public final int getErrorAction() { return ERROR_ACTION; } >- public final boolean isValidForParser() { return isValidForParser; } >- public final boolean getBacktrack() { return BACKTRACK; } >- > public final int originalState(int state) { > return -baseCheck[state]; > } >@@ -2310,10 +2383,16 @@ > return inSymb[originalState(state)]; > } > >+ /** >+ * assert(! goto_default); >+ */ > public final int ntAction(int state, int sym) { > return baseAction[state + sym]; > } > >+ /** >+ * assert(! shift_default); >+ */ > public final int tAction(int state, int sym) { > int i = baseAction[state], > k = i + sym; >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParsersym.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParsersym.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrParsersym.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParsersym.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParsersym.java 14 Aug 2009 17:34:56 -0000 >@@ -1,7 +1,8 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc., Borland Software Corp., and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc., Borland Software Corp., >+* Open Canarias S.L. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -14,18 +15,18 @@ > * E.D.Willink - Bugs 225493, 243976, 259818 > * Zeligsoft - Bug 243976 > * Borland - Bug 242880 >+* Adolfo Sanchez- Barbudo Herrera - LPG v 2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrParsersym.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* $Id: EssentialOCL.g,v 1.7 2009/03/05 14:12:14 cdamus Exp $ > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > > public interface QVTrParsersym { > public final static int >- TK_PLUS_PLUS = 113, > TK_NUMERIC_OPERATION = 84, > TK_STRING_LITERAL = 85, > TK_INTEGER_LITERAL = 86, >@@ -58,6 +59,7 @@ > TK_CARET = 104, > TK_CARETCARET = 105, > TK_QUESTIONMARK = 110, >+ TK_PLUS_PLUS = 113, > TK_self = 36, > TK_inv = 24, > TK_pre = 25, >@@ -143,7 +145,7 @@ > TK_INTEGER_RANGE_START = 112, > TK_ERROR_TOKEN = 1; > >- public final static String orderedTerminalSymbols[] = { >+ public final static String orderedTerminalSymbols[] = { > "", > "ERROR_TOKEN", > "LPAREN", >@@ -264,5 +266,6 @@ > "oper" > }; > >+ public final static int numTokenKinds = orderedTerminalSymbols.length; > public final static boolean isValidForParser = true; > } >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexersym.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexersym.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrKWLexersym.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexersym.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexersym.java 14 Aug 2009 17:34:54 -0000 >@@ -1,7 +1,7 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2007 IBM Corporation and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc, Open Canarias S.L., and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,11 +10,12 @@ > * Contributors: > * IBM - Initial API and implementation > * E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling >+* Adolfo Sanchez-Barbudo Herrera - LPG v2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrKWLexersym.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; >@@ -22,6 +23,8 @@ > public interface QVTrKWLexersym { > public final static int > Char_DollarSign = 41, >+ Char_Percent = 42, >+ Char__ = 33, > Char_a = 5, > Char_b = 30, > Char_c = 11, >@@ -31,7 +34,7 @@ > Char_g = 17, > Char_h = 21, > Char_i = 6, >- Char_j = 33, >+ Char_j = 34, > Char_k = 20, > Char_l = 3, > Char_m = 18, >@@ -47,37 +50,36 @@ > Char_w = 31, > Char_x = 23, > Char_y = 14, >- Char_z = 42, >+ Char_z = 43, > Char_A = 24, > Char_B = 32, >- Char_C = 34, >- Char_D = 43, >- Char_E = 44, >- Char_F = 45, >- Char_G = 46, >- Char_H = 47, >+ Char_C = 35, >+ Char_D = 44, >+ Char_E = 45, >+ Char_F = 46, >+ Char_G = 47, >+ Char_H = 48, > Char_I = 19, >- Char_J = 48, >- Char_K = 35, >- Char_L = 49, >- Char_M = 36, >+ Char_J = 49, >+ Char_K = 36, >+ Char_L = 50, >+ Char_M = 37, > Char_N = 25, > Char_O = 26, >- Char_P = 50, >- Char_Q = 51, >- Char_R = 37, >+ Char_P = 51, >+ Char_Q = 52, >+ Char_R = 38, > Char_S = 27, > Char_T = 28, > Char_U = 29, >- Char_V = 38, >- Char_W = 52, >- Char_X = 53, >- Char_Y = 54, >- Char_Z = 55, >- Char__ = 39, >+ Char_V = 39, >+ Char_W = 53, >+ Char_X = 54, >+ Char_Y = 55, >+ Char_Z = 56, > Char_EOF = 40; > >- public final static String orderedTerminalSymbols[] = { >+ public final static String orderedTerminalSymbols[] = { > "", > "e", > "t", >@@ -111,15 +113,16 @@ > "b", > "w", > "B", >+ "_", > "j", > "C", > "K", > "M", > "R", > "V", >- "_", > "EOF", > "DollarSign", >+ "Percent", > "z", > "D", > "E", >@@ -136,5 +139,6 @@ > "Z" > }; > >+ public final static int numTokenKinds = orderedTerminalSymbols.length; > public final static boolean isValidForParser = true; > } >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexersym.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexersym.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrLexersym.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexersym.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexersym.java 14 Aug 2009 17:34:54 -0000 >@@ -1,7 +1,7 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2009 IBM Corporation, Borland Software Corp., and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Borland Software Corp., Open Canarias S.L. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,12 +10,14 @@ > * Contributors: > * IBM - Initial API and implementation > * E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling >+* - Bug 259818 > * Borland - Bug 242880 >+* Adolfo Sanchez-Barbudo Herrera - LPG v2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrLexersym.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* $Id$ > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; >@@ -126,7 +128,7 @@ > Char_Equal = 15, > Char_EOF = 99; > >- public final static String orderedTerminalSymbols[] = { >+ public final static String orderedTerminalSymbols[] = { > "", > "0", > "1", >@@ -233,5 +235,6 @@ > "CtlCharNotWS" > }; > >+ public final static int numTokenKinds = orderedTerminalSymbols.length; > public final static boolean isValidForParser = true; > } >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrKWLexer.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.java 14 Aug 2009 17:34:54 -0000 >@@ -1,7 +1,7 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2007 IBM Corporation and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc, Open Canarias S.L., and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,17 +10,17 @@ > * Contributors: > * IBM - Initial API and implementation > * E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling >+* Adolfo Sanchez-Barbudo Herrera - LPG v2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrKWLexer.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > > >- > public class QVTrKWLexer extends QVTrKWLexerprs implements QVTrParsersym > { > private char[] inputChars; >@@ -58,67 +58,70 @@ > final static int tokenKind[] = new int[128]; > static > { >- tokenKind['$'] = Char_DollarSign; >- >- tokenKind['a'] = Char_a; >- tokenKind['b'] = Char_b; >- tokenKind['c'] = Char_c; >- tokenKind['d'] = Char_d; >- tokenKind['e'] = Char_e; >- tokenKind['f'] = Char_f; >- tokenKind['g'] = Char_g; >- tokenKind['h'] = Char_h; >- tokenKind['i'] = Char_i; >- tokenKind['j'] = Char_j; >- tokenKind['k'] = Char_k; >- tokenKind['l'] = Char_l; >- tokenKind['m'] = Char_m; >- tokenKind['n'] = Char_n; >- tokenKind['o'] = Char_o; >- tokenKind['p'] = Char_p; >- tokenKind['q'] = Char_q; >- tokenKind['r'] = Char_r; >- tokenKind['s'] = Char_s; >- tokenKind['t'] = Char_t; >- tokenKind['u'] = Char_u; >- tokenKind['v'] = Char_v; >- tokenKind['w'] = Char_w; >- tokenKind['x'] = Char_x; >- tokenKind['y'] = Char_y; >- tokenKind['z'] = Char_z; >- >- tokenKind['A'] = Char_A; >- tokenKind['B'] = Char_B; >- tokenKind['C'] = Char_C; >- tokenKind['D'] = Char_D; >- tokenKind['E'] = Char_E; >- tokenKind['F'] = Char_F; >- tokenKind['G'] = Char_G; >- tokenKind['H'] = Char_H; >- tokenKind['I'] = Char_I; >- tokenKind['J'] = Char_J; >- tokenKind['K'] = Char_K; >- tokenKind['L'] = Char_L; >- tokenKind['M'] = Char_M; >- tokenKind['N'] = Char_N; >- tokenKind['O'] = Char_O; >- tokenKind['P'] = Char_P; >- tokenKind['Q'] = Char_Q; >- tokenKind['R'] = Char_R; >- tokenKind['S'] = Char_S; >- tokenKind['T'] = Char_T; >- tokenKind['U'] = Char_U; >- tokenKind['V'] = Char_V; >- tokenKind['W'] = Char_W; >- tokenKind['X'] = Char_X; >- tokenKind['Y'] = Char_Y; >- tokenKind['Z'] = Char_Z; >+ tokenKind['$'] = QVTrKWLexersym.Char_DollarSign; >+ tokenKind['%'] = QVTrKWLexersym.Char_Percent; >+ tokenKind['_'] = QVTrKWLexersym.Char__; >+ >+ tokenKind['a'] = QVTrKWLexersym.Char_a; >+ tokenKind['b'] = QVTrKWLexersym.Char_b; >+ tokenKind['c'] = QVTrKWLexersym.Char_c; >+ tokenKind['d'] = QVTrKWLexersym.Char_d; >+ tokenKind['e'] = QVTrKWLexersym.Char_e; >+ tokenKind['f'] = QVTrKWLexersym.Char_f; >+ tokenKind['g'] = QVTrKWLexersym.Char_g; >+ tokenKind['h'] = QVTrKWLexersym.Char_h; >+ tokenKind['i'] = QVTrKWLexersym.Char_i; >+ tokenKind['j'] = QVTrKWLexersym.Char_j; >+ tokenKind['k'] = QVTrKWLexersym.Char_k; >+ tokenKind['l'] = QVTrKWLexersym.Char_l; >+ tokenKind['m'] = QVTrKWLexersym.Char_m; >+ tokenKind['n'] = QVTrKWLexersym.Char_n; >+ tokenKind['o'] = QVTrKWLexersym.Char_o; >+ tokenKind['p'] = QVTrKWLexersym.Char_p; >+ tokenKind['q'] = QVTrKWLexersym.Char_q; >+ tokenKind['r'] = QVTrKWLexersym.Char_r; >+ tokenKind['s'] = QVTrKWLexersym.Char_s; >+ tokenKind['t'] = QVTrKWLexersym.Char_t; >+ tokenKind['u'] = QVTrKWLexersym.Char_u; >+ tokenKind['v'] = QVTrKWLexersym.Char_v; >+ tokenKind['w'] = QVTrKWLexersym.Char_w; >+ tokenKind['x'] = QVTrKWLexersym.Char_x; >+ tokenKind['y'] = QVTrKWLexersym.Char_y; >+ tokenKind['z'] = QVTrKWLexersym.Char_z; >+ >+ tokenKind['A'] = QVTrKWLexersym.Char_A; >+ tokenKind['B'] = QVTrKWLexersym.Char_B; >+ tokenKind['C'] = QVTrKWLexersym.Char_C; >+ tokenKind['D'] = QVTrKWLexersym.Char_D; >+ tokenKind['E'] = QVTrKWLexersym.Char_E; >+ tokenKind['F'] = QVTrKWLexersym.Char_F; >+ tokenKind['G'] = QVTrKWLexersym.Char_G; >+ tokenKind['H'] = QVTrKWLexersym.Char_H; >+ tokenKind['I'] = QVTrKWLexersym.Char_I; >+ tokenKind['J'] = QVTrKWLexersym.Char_J; >+ tokenKind['K'] = QVTrKWLexersym.Char_K; >+ tokenKind['L'] = QVTrKWLexersym.Char_L; >+ tokenKind['M'] = QVTrKWLexersym.Char_M; >+ tokenKind['N'] = QVTrKWLexersym.Char_N; >+ tokenKind['O'] = QVTrKWLexersym.Char_O; >+ tokenKind['P'] = QVTrKWLexersym.Char_P; >+ tokenKind['Q'] = QVTrKWLexersym.Char_Q; >+ tokenKind['R'] = QVTrKWLexersym.Char_R; >+ tokenKind['S'] = QVTrKWLexersym.Char_S; >+ tokenKind['T'] = QVTrKWLexersym.Char_T; >+ tokenKind['U'] = QVTrKWLexersym.Char_U; >+ tokenKind['V'] = QVTrKWLexersym.Char_V; >+ tokenKind['W'] = QVTrKWLexersym.Char_W; >+ tokenKind['X'] = QVTrKWLexersym.Char_X; >+ tokenKind['Y'] = QVTrKWLexersym.Char_Y; >+ tokenKind['Z'] = QVTrKWLexersym.Char_Z; > }; > >- final int getKind(char c) >+ final int getKind(int c) > { >- return (c < 128 ? tokenKind[c] : 0); >+ return (((c & 0xFFFFFF80) == 0) /* 0 <= c < 128? */ ? tokenKind[c] : 0); > } >+ > static > { > tokenKind['_'] = Char__; >@@ -133,484 +136,563 @@ > // > // Rule 1: KeyWord ::= s e l f > // >- keywordKind[1] = (TK_self); >+ >+ keywordKind[1] = (QVTrParsersym.TK_self); > > > // > // Rule 2: KeyWord ::= i n v > // >- keywordKind[2] = (TK_inv); >+ >+ keywordKind[2] = (QVTrParsersym.TK_inv); > > > // > // Rule 3: KeyWord ::= p r e > // >- keywordKind[3] = (TK_pre); >+ >+ keywordKind[3] = (QVTrParsersym.TK_pre); > > > // > // Rule 4: KeyWord ::= p o s t > // >- keywordKind[4] = (TK_post); >+ >+ keywordKind[4] = (QVTrParsersym.TK_post); > > > // > // Rule 5: KeyWord ::= b o d y > // >- keywordKind[5] = (TK_body); >+ >+ keywordKind[5] = (QVTrParsersym.TK_body); > > > // > // Rule 6: KeyWord ::= c o n t e x t > // >- keywordKind[6] = (TK_context); >+ >+ keywordKind[6] = (QVTrParsersym.TK_context); > > > // > // Rule 7: KeyWord ::= p a c k a g e > // >- keywordKind[7] = (TK_package); >+ >+ keywordKind[7] = (QVTrParsersym.TK_package); > > > // > // Rule 8: KeyWord ::= e n d p a c k a g e > // >- keywordKind[8] = (TK_endpackage); >+ >+ keywordKind[8] = (QVTrParsersym.TK_endpackage); > > > // > // Rule 9: KeyWord ::= d e f > // >- keywordKind[9] = (TK_def); >+ >+ keywordKind[9] = (QVTrParsersym.TK_def); > > > // > // Rule 10: KeyWord ::= d e r i v e > // >- keywordKind[10] = (TK_derive); >+ >+ keywordKind[10] = (QVTrParsersym.TK_derive); > > > // > // Rule 11: KeyWord ::= i n i t > // >- keywordKind[11] = (TK_init); >+ >+ keywordKind[11] = (QVTrParsersym.TK_init); > > > // > // Rule 12: KeyWord ::= i f > // >- keywordKind[12] = (TK_if); >+ >+ keywordKind[12] = (QVTrParsersym.TK_if); > > > // > // Rule 13: KeyWord ::= t h e n > // >- keywordKind[13] = (TK_then); >+ >+ keywordKind[13] = (QVTrParsersym.TK_then); > > > // > // Rule 14: KeyWord ::= e l s e > // >- keywordKind[14] = (TK_else); >+ >+ keywordKind[14] = (QVTrParsersym.TK_else); > > > // > // Rule 15: KeyWord ::= e n d i f > // >- keywordKind[15] = (TK_endif); >+ >+ keywordKind[15] = (QVTrParsersym.TK_endif); > > > // > // Rule 16: KeyWord ::= a n d > // >- keywordKind[16] = (TK_and); >+ >+ keywordKind[16] = (QVTrParsersym.TK_and); > > > // > // Rule 17: KeyWord ::= o r > // >- keywordKind[17] = (TK_or); >+ >+ keywordKind[17] = (QVTrParsersym.TK_or); > > > // > // Rule 18: KeyWord ::= x o r > // >- keywordKind[18] = (TK_xor); >+ >+ keywordKind[18] = (QVTrParsersym.TK_xor); > > > // > // Rule 19: KeyWord ::= n o t > // >- keywordKind[19] = (TK_not); >+ >+ keywordKind[19] = (QVTrParsersym.TK_not); > > > // > // Rule 20: KeyWord ::= i m p l i e s > // >- keywordKind[20] = (TK_implies); >+ >+ keywordKind[20] = (QVTrParsersym.TK_implies); > > > // > // Rule 21: KeyWord ::= l e t > // >- keywordKind[21] = (TK_let); >+ >+ keywordKind[21] = (QVTrParsersym.TK_let); > > > // > // Rule 22: KeyWord ::= i n > // >- keywordKind[22] = (TK_in); >+ >+ keywordKind[22] = (QVTrParsersym.TK_in); > > > // > // Rule 23: KeyWord ::= t r u e > // >- keywordKind[23] = (TK_true); >+ >+ keywordKind[23] = (QVTrParsersym.TK_true); > > > // > // Rule 24: KeyWord ::= f a l s e > // >- keywordKind[24] = (TK_false); >+ >+ keywordKind[24] = (QVTrParsersym.TK_false); > > > // > // Rule 25: KeyWord ::= S e t > // >- keywordKind[25] = (TK_Set); >+ >+ keywordKind[25] = (QVTrParsersym.TK_Set); > > > // > // Rule 26: KeyWord ::= B a g > // >- keywordKind[26] = (TK_Bag); >+ >+ keywordKind[26] = (QVTrParsersym.TK_Bag); > > > // > // Rule 27: KeyWord ::= S e q u e n c e > // >- keywordKind[27] = (TK_Sequence); >+ >+ keywordKind[27] = (QVTrParsersym.TK_Sequence); > > > // > // Rule 28: KeyWord ::= C o l l e c t i o n > // >- keywordKind[28] = (TK_Collection); >+ >+ keywordKind[28] = (QVTrParsersym.TK_Collection); > > > // > // Rule 29: KeyWord ::= O r d e r e d S e t > // >- keywordKind[29] = (TK_OrderedSet); >+ >+ keywordKind[29] = (QVTrParsersym.TK_OrderedSet); > > > // > // Rule 30: KeyWord ::= i t e r a t e > // >- keywordKind[30] = (TK_iterate); >+ >+ keywordKind[30] = (QVTrParsersym.TK_iterate); > > > // > // Rule 31: KeyWord ::= f o r A l l > // >- keywordKind[31] = (TK_forAll); >+ >+ keywordKind[31] = (QVTrParsersym.TK_forAll); > > > // > // Rule 32: KeyWord ::= e x i s t s > // >- keywordKind[32] = (TK_exists); >+ >+ keywordKind[32] = (QVTrParsersym.TK_exists); > > > // > // Rule 33: KeyWord ::= i s U n i q u e > // >- keywordKind[33] = (TK_isUnique); >+ >+ keywordKind[33] = (QVTrParsersym.TK_isUnique); > > > // > // Rule 34: KeyWord ::= a n y > // >- keywordKind[34] = (TK_any); >+ >+ keywordKind[34] = (QVTrParsersym.TK_any); > > > // > // Rule 35: KeyWord ::= o n e > // >- keywordKind[35] = (TK_one); >+ >+ keywordKind[35] = (QVTrParsersym.TK_one); > > > // > // Rule 36: KeyWord ::= c o l l e c t > // >- keywordKind[36] = (TK_collect); >+ >+ keywordKind[36] = (QVTrParsersym.TK_collect); > > > // > // Rule 37: KeyWord ::= s e l e c t > // >- keywordKind[37] = (TK_select); >+ >+ keywordKind[37] = (QVTrParsersym.TK_select); > > > // > // Rule 38: KeyWord ::= r e j e c t > // >- keywordKind[38] = (TK_reject); >+ >+ keywordKind[38] = (QVTrParsersym.TK_reject); > > > // > // Rule 39: KeyWord ::= c o l l e c t N e s t e d > // >- keywordKind[39] = (TK_collectNested); >+ >+ keywordKind[39] = (QVTrParsersym.TK_collectNested); > > > // > // Rule 40: KeyWord ::= s o r t e d B y > // >- keywordKind[40] = (TK_sortedBy); >+ >+ keywordKind[40] = (QVTrParsersym.TK_sortedBy); > > > // > // Rule 41: KeyWord ::= c l o s u r e > // >- keywordKind[41] = (TK_closure); >+ >+ keywordKind[41] = (QVTrParsersym.TK_closure); > > > // > // Rule 42: KeyWord ::= o c l I s K i n d O f > // >- keywordKind[42] = (TK_oclIsKindOf); >+ >+ keywordKind[42] = (QVTrParsersym.TK_oclIsKindOf); > > > // > // Rule 43: KeyWord ::= o c l I s T y p e O f > // >- keywordKind[43] = (TK_oclIsTypeOf); >+ >+ keywordKind[43] = (QVTrParsersym.TK_oclIsTypeOf); > > > // > // Rule 44: KeyWord ::= o c l A s T y p e > // >- keywordKind[44] = (TK_oclAsType); >+ >+ keywordKind[44] = (QVTrParsersym.TK_oclAsType); > > > // > // Rule 45: KeyWord ::= o c l I s N e w > // >- keywordKind[45] = (TK_oclIsNew); >+ >+ keywordKind[45] = (QVTrParsersym.TK_oclIsNew); > > > // > // Rule 46: KeyWord ::= o c l I s U n d e f i n e d > // >- keywordKind[46] = (TK_oclIsUndefined); >+ >+ keywordKind[46] = (QVTrParsersym.TK_oclIsUndefined); > > > // > // Rule 47: KeyWord ::= o c l I s I n v a l i d > // >- keywordKind[47] = (TK_oclIsInvalid); >+ >+ keywordKind[47] = (QVTrParsersym.TK_oclIsInvalid); > > > // > // Rule 48: KeyWord ::= o c l I s I n S t a t e > // >- keywordKind[48] = (TK_oclIsInState); >+ >+ keywordKind[48] = (QVTrParsersym.TK_oclIsInState); > > > // > // Rule 49: KeyWord ::= a l l I n s t a n c e s > // >- keywordKind[49] = (TK_allInstances); >+ >+ keywordKind[49] = (QVTrParsersym.TK_allInstances); > > > // > // Rule 50: KeyWord ::= S t r i n g > // >- keywordKind[50] = (TK_String); >+ >+ keywordKind[50] = (QVTrParsersym.TK_String); > > > // > // Rule 51: KeyWord ::= I n t e g e r > // >- keywordKind[51] = (TK_Integer); >+ >+ keywordKind[51] = (QVTrParsersym.TK_Integer); > > > // > // Rule 52: KeyWord ::= U n l i m i t e d N a t u r a l > // >- keywordKind[52] = (TK_UnlimitedNatural); >+ >+ keywordKind[52] = (QVTrParsersym.TK_UnlimitedNatural); > > > // > // Rule 53: KeyWord ::= R e a l > // >- keywordKind[53] = (TK_Real); >+ >+ keywordKind[53] = (QVTrParsersym.TK_Real); > > > // > // Rule 54: KeyWord ::= B o o l e a n > // >- keywordKind[54] = (TK_Boolean); >+ >+ keywordKind[54] = (QVTrParsersym.TK_Boolean); > > > // > // Rule 55: KeyWord ::= T u p l e > // >- keywordKind[55] = (TK_Tuple); >+ >+ keywordKind[55] = (QVTrParsersym.TK_Tuple); > > > // > // Rule 56: KeyWord ::= O c l A n y > // >- keywordKind[56] = (TK_OclAny); >+ >+ keywordKind[56] = (QVTrParsersym.TK_OclAny); > > > // > // Rule 57: KeyWord ::= O c l V o i d > // >- keywordKind[57] = (TK_OclVoid); >+ >+ keywordKind[57] = (QVTrParsersym.TK_OclVoid); > > > // > // Rule 58: KeyWord ::= I n v a l i d > // >- keywordKind[58] = (TK_Invalid); >+ >+ keywordKind[58] = (QVTrParsersym.TK_Invalid); > > > // > // Rule 59: KeyWord ::= O c l M e s s a g e > // >- keywordKind[59] = (TK_OclMessage); >+ >+ keywordKind[59] = (QVTrParsersym.TK_OclMessage); > > > // > // Rule 60: KeyWord ::= n u l l > // >- keywordKind[60] = (TK_null); >+ >+ keywordKind[60] = (QVTrParsersym.TK_null); > > > // > // Rule 61: KeyWord ::= O c l I n v a l i d > // >- keywordKind[61] = (TK_OclInvalid); >+ >+ keywordKind[61] = (QVTrParsersym.TK_OclInvalid); > > > // > // Rule 62: KeyWord ::= a t t r > // >- keywordKind[62] = (TK_attr); >+ >+ keywordKind[62] = (QVTrParsersym.TK_attr); > > > // > // Rule 63: KeyWord ::= o p e r > // >- keywordKind[63] = (TK_oper); >+ >+ keywordKind[63] = (QVTrParsersym.TK_oper); > > > // > // Rule 64: KeyWord ::= c h e c k o n l y > // >- keywordKind[64] = (TK_checkonly); >+ >+ keywordKind[64] = (QVTrParsersym.TK_checkonly); > > > // > // Rule 65: KeyWord ::= d e f a u l t _ v a l u e s > // >- keywordKind[65] = (TK_default_values); >+ >+ keywordKind[65] = (QVTrParsersym.TK_default_values); > > > // > // Rule 66: KeyWord ::= d o m a i n > // >- keywordKind[66] = (TK_domain); >+ >+ keywordKind[66] = (QVTrParsersym.TK_domain); > > > // > // Rule 67: KeyWord ::= e n f o r c e > // >- keywordKind[67] = (TK_enforce); >+ >+ keywordKind[67] = (QVTrParsersym.TK_enforce); > > > // > // Rule 68: KeyWord ::= e x t e n d s > // >- keywordKind[68] = (TK_extends); >+ >+ keywordKind[68] = (QVTrParsersym.TK_extends); > > > // > // Rule 69: KeyWord ::= i m p l e m e n t e d b y > // >- keywordKind[69] = (TK_implementedby); >+ >+ keywordKind[69] = (QVTrParsersym.TK_implementedby); > > > // > // Rule 70: KeyWord ::= i m p o r t > // >- keywordKind[70] = (TK_import); >+ >+ keywordKind[70] = (QVTrParsersym.TK_import); > > > // > // Rule 71: KeyWord ::= k e y > // >- keywordKind[71] = (TK_key); >+ >+ keywordKind[71] = (QVTrParsersym.TK_key); > > > // > // Rule 72: KeyWord ::= o v e r r i d e s > // >- keywordKind[72] = (TK_overrides); >+ >+ keywordKind[72] = (QVTrParsersym.TK_overrides); > > > // > // Rule 73: KeyWord ::= p r i m i t i v e > // >- keywordKind[73] = (TK_primitive); >+ >+ keywordKind[73] = (QVTrParsersym.TK_primitive); > > > // > // Rule 74: KeyWord ::= q u e r y > // >- keywordKind[74] = (TK_query); >+ >+ keywordKind[74] = (QVTrParsersym.TK_query); > > > // > // Rule 75: KeyWord ::= r e l a t i o n > // >- keywordKind[75] = (TK_relation); >+ >+ keywordKind[75] = (QVTrParsersym.TK_relation); > > > // > // Rule 76: KeyWord ::= r e p l a c e > // >- keywordKind[76] = (TK_replace); >+ >+ keywordKind[76] = (QVTrParsersym.TK_replace); > > > // > // Rule 77: KeyWord ::= t o p > // >- keywordKind[77] = (TK_top); >+ >+ keywordKind[77] = (QVTrParsersym.TK_top); > > > // > // Rule 78: KeyWord ::= t r a n s f o r m a t i o n > // >- keywordKind[78] = (TK_transformation); >+ >+ keywordKind[78] = (QVTrParsersym.TK_transformation); > > > // > // Rule 79: KeyWord ::= w h e n > // >- keywordKind[79] = (TK_when); >+ >+ keywordKind[79] = (QVTrParsersym.TK_when); > > > // > // Rule 80: KeyWord ::= w h e r e > // >- keywordKind[80] = (TK_where); >+ >+ keywordKind[80] = (QVTrParsersym.TK_where); > > >- > for (int i = 0; i < keywordKind.length; i++) > { > if (keywordKind[i] == 0) >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.java,v >retrieving revision 1.11 >diff -u -r1.11 QVTrParser.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.java 6 Mar 2009 22:39:37 -0000 1.11 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrParser.java 14 Aug 2009 17:34:55 -0000 >@@ -1,7 +1,8 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc., Borland Software Corp., and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc., Borland Software Corp., >+* Open Canarias S.L. and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -14,22 +15,16 @@ > * E.D.Willink - Bugs 225493, 243976, 259818 > * Zeligsoft - Bug 243976 > * Borland - Bug 242880 >+* Adolfo Sanchez- Barbudo Herrera - LPG v 2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrParser.java,v 1.11 2009/03/06 22:39:37 ewillink Exp $ >+* $Id: EssentialOCL.g,v 1.7 2009/03/05 14:12:14 cdamus Exp $ > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > >-import org.eclipse.qvt.declarative.parser.qvt.cst.*; >-import org.eclipse.qvt.declarative.parser.qvtrelation.cst.*; >-import org.eclipse.qvt.declarative.parser.environment.ICSTFileEnvironment; >-import org.eclipse.ocl.cst.CollectionTypeCS; >-import org.eclipse.ocl.parser.AbstractOCLParser; >-import org.eclipse.ocl.parser.backtracking.OCLParserErrors; >- > import org.eclipse.emf.common.util.BasicEList; > import org.eclipse.emf.common.util.EList; > import org.eclipse.ocl.cst.CSTNode; >@@ -52,15 +47,23 @@ > import org.eclipse.ocl.util.OCLStandardLibraryUtil; > import org.eclipse.ocl.utilities.PredefinedType; > >-import lpg.lpgjavaruntime.BadParseException; >-import lpg.lpgjavaruntime.BadParseSymFileException; >-import lpg.lpgjavaruntime.BacktrackingParser; >-import lpg.lpgjavaruntime.DiagnoseParser; >-import lpg.lpgjavaruntime.IToken; >-import lpg.lpgjavaruntime.Monitor; >-import lpg.lpgjavaruntime.NotBacktrackParseTableException; >-import lpg.lpgjavaruntime.ParseTable; >-import lpg.lpgjavaruntime.RuleAction; >+import lpg.runtime.BadParseException; >+import lpg.runtime.BadParseSymFileException; >+import lpg.runtime.BacktrackingParser; >+import lpg.runtime.DiagnoseParser; >+import lpg.runtime.IToken; >+import lpg.runtime.Monitor; >+import lpg.runtime.NotBacktrackParseTableException; >+import lpg.runtime.ParseTable; >+import lpg.runtime.RuleAction; >+ >+import org.eclipse.qvt.declarative.parser.qvt.cst.*; >+import org.eclipse.qvt.declarative.parser.qvtrelation.cst.*; >+import org.eclipse.qvt.declarative.parser.environment.ICSTFileEnvironment; >+import org.eclipse.ocl.cst.CollectionTypeCS; >+import org.eclipse.ocl.parser.AbstractOCLParser; >+import org.eclipse.ocl.parser.backtracking.OCLParserErrors; >+ > > public class QVTrParser extends AbstractOCLParser implements RuleAction > { >@@ -132,7 +135,7 @@ > } > > >- >+ > protected IdentifierCS createIdentifierCS(int token) { > IdentifierCS result = QVTCSTFactory.eINSTANCE.createIdentifierCS(); > result.setValue(getTokenText(token)); >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexerprs.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexerprs.java,v >retrieving revision 1.10 >diff -u -r1.10 QVTrKWLexerprs.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexerprs.java 6 Mar 2009 22:39:37 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexerprs.java 14 Aug 2009 17:34:54 -0000 >@@ -1,7 +1,7 @@ > /** > * <copyright> > * >-* Copyright (c) 2005, 2007 IBM Corporation and others. >+* Copyright (c) 2005, 2009 IBM Corporation, Zeligsoft Inc, Open Canarias S.L., and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,16 +10,98 @@ > * Contributors: > * IBM - Initial API and implementation > * E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling >+* Adolfo Sanchez-Barbudo Herrera - LPG v2.0.17 adoption > * E.D.Willink - Extended API and implementation for QVTr > * > * </copyright> > * >-* $Id: QVTrKWLexerprs.java,v 1.10 2009/03/06 22:39:37 ewillink Exp $ >+* > */ > > package org.eclipse.qvt.declarative.parser.qvtrelation; > >-public class QVTrKWLexerprs implements lpg.lpgjavaruntime.ParseTable, QVTrKWLexersym { >+public class QVTrKWLexerprs implements lpg.runtime.ParseTable, QVTrKWLexersym { >+ public final static int ERROR_SYMBOL = 0; >+ public final int getErrorSymbol() { return ERROR_SYMBOL; } >+ >+ public final static int SCOPE_UBOUND = 0; >+ public final int getScopeUbound() { return SCOPE_UBOUND; } >+ >+ public final static int SCOPE_SIZE = 0; >+ public final int getScopeSize() { return SCOPE_SIZE; } >+ >+ public final static int MAX_NAME_LENGTH = 0; >+ public final int getMaxNameLength() { return MAX_NAME_LENGTH; } >+ >+ public final static int NUM_STATES = 340; >+ public final int getNumStates() { return NUM_STATES; } >+ >+ public final static int NT_OFFSET = 56; >+ public final int getNtOffset() { return NT_OFFSET; } >+ >+ public final static int LA_STATE_OFFSET = 504; >+ public final int getLaStateOffset() { return LA_STATE_OFFSET; } >+ >+ public final static int MAX_LA = 1; >+ public final int getMaxLa() { return MAX_LA; } >+ >+ public final static int NUM_RULES = 80; >+ public final int getNumRules() { return NUM_RULES; } >+ >+ public final static int NUM_NONTERMINALS = 2; >+ public final int getNumNonterminals() { return NUM_NONTERMINALS; } >+ >+ public final static int NUM_SYMBOLS = 58; >+ public final int getNumSymbols() { return NUM_SYMBOLS; } >+ >+ public final static int SEGMENT_SIZE = 8192; >+ public final int getSegmentSize() { return SEGMENT_SIZE; } >+ >+ public final static int START_STATE = 81; >+ public final int getStartState() { return START_STATE; } >+ >+ public final static int IDENTIFIER_SYMBOL = 0; >+ public final int getIdentifier_SYMBOL() { return IDENTIFIER_SYMBOL; } >+ >+ public final static int EOFT_SYMBOL = 40; >+ public final int getEoftSymbol() { return EOFT_SYMBOL; } >+ >+ public final static int EOLT_SYMBOL = 57; >+ public final int getEoltSymbol() { return EOLT_SYMBOL; } >+ >+ public final static int ACCEPT_ACTION = 423; >+ public final int getAcceptAction() { return ACCEPT_ACTION; } >+ >+ public final static int ERROR_ACTION = 424; >+ public final int getErrorAction() { return ERROR_ACTION; } >+ >+ public final static boolean BACKTRACK = false; >+ public final boolean getBacktrack() { return BACKTRACK; } >+ >+ public final int getStartSymbol() { return lhs(0); } >+ public final boolean isValidForParser() { return QVTrKWLexersym.isValidForParser; } >+ >+ >+ public interface IsNullable { >+ public final static byte isNullable[] = {0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0,0,0, >+ 0,0,0,0,0,0,0,0 >+ }; >+ }; >+ public final static byte isNullable[] = IsNullable.isNullable; >+ public final boolean isNullable(int index) { return isNullable[index] != 0; } >+ >+ public interface ProsthesesIndex { >+ public final static byte prosthesesIndex[] = {0, >+ 2,1 >+ }; >+ }; >+ public final static byte prosthesesIndex[] = ProsthesesIndex.prosthesesIndex; >+ public final int prosthesesIndex(int index) { return prosthesesIndex[index]; } > > public interface IsKeyword { > public final static byte isKeyword[] = {0, >@@ -28,7 +110,7 @@ > 0,0,0,0,0,0,0,0,0,0, > 0,0,0,0,0,0,0,0,0,0, > 0,0,0,0,0,0,0,0,0,0, >- 0,0,0,0,0 >+ 0,0,0,0,0,0 > }; > }; > public final static byte isKeyword[] = IsKeyword.isKeyword; >@@ -61,41 +143,41 @@ > 1,1,1,1,1,1,1,1,1,1, > 1,1,1,1,1,1,1,1,1,1, > 1,1,1,1,1,1,1,1,1,1, >- 1,1,83,22,158,72,161,156,163,167, >- 168,173,86,26,90,57,91,175,94,170, >- 36,15,56,103,65,71,180,76,37,105, >- 181,183,87,185,115,45,73,67,186,187, >- 190,191,192,194,108,195,203,196,204,208, >- 205,213,215,217,218,221,222,109,211,112, >- 227,224,114,116,229,124,230,232,128,233, >- 234,235,137,236,246,237,129,241,250,140, >- 249,251,255,159,257,259,261,263,266,42, >- 269,271,272,273,276,277,278,280,281,284, >- 127,285,286,290,295,293,298,300,299,307, >- 302,309,312,133,313,314,315,317,316,321, >- 325,322,328,326,149,329,334,141,337,335, >- 342,339,344,345,346,348,352,354,355,353, >- 360,359,367,369,371,372,374,378,376,380, >- 381,382,384,385,387,388,392,395,398,394, >- 399,400,402,407,409,411,412,413,417,414, >- 154,423,425,426,427,428,430,431,438,434, >- 435,439,442,446,443,448,449,451,457,452, >- 459,25,461,462,463,464,468,469,472,473, >- 475,477,476,478,480,482,488,491,492,493, >- 496,497,500,502,505,501,508,516,512,518, >- 519,521,522,524,525,527,530,533,535,537, >- 542,534,544,549,545,552,546,556,558,559, >- 560,562,565,568,566,570,573,575,571,577, >- 581,584,506,585,579,586,593,595,587,150, >- 589,591,597,600,598,601,605,610,611,607, >- 613,616,619,620,618,621,624,625,630,631, >- 635,637,642,645,648,633,650,651,652,653, >- 657,655,658,660,661,663,664,672,675,676, >- 677,666,667,682,683,684,685,687,691,695, >- 692,699,698,703,702,705,706,710,713,718, >- 711,722,725,719,723,728,730,731,732,715, >- 734,738,735,740,742,746,748,749,750,753, >- 751,758,424,424 >+ 1,1,83,134,53,155,160,163,164,80, >+ 166,171,81,167,89,98,96,177,35,173, >+ 34,15,61,102,67,55,179,78,42,107, >+ 182,184,91,129,47,186,93,72,188,180, >+ 192,193,194,196,111,197,199,198,205,207, >+ 206,214,216,218,219,210,222,112,223,114, >+ 226,224,116,118,228,125,229,231,22,233, >+ 234,232,130,235,246,236,132,248,249,139, >+ 250,253,258,254,262,265,268,269,272,40, >+ 275,277,278,279,270,263,282,286,288,290, >+ 121,292,240,294,300,302,303,304,307,313, >+ 284,315,309,141,311,296,318,323,319,320, >+ 324,327,328,329,149,335,339,150,330,334, >+ 342,338,344,346,349,350,351,353,358,360, >+ 361,364,366,369,372,373,375,379,377,381, >+ 382,383,385,386,388,389,393,396,399,395, >+ 400,401,403,408,410,412,413,414,418,415, >+ 153,424,426,427,428,429,431,432,439,435, >+ 436,440,443,447,444,449,450,452,458,453, >+ 460,37,462,463,464,465,469,470,473,474, >+ 476,478,477,479,481,483,489,492,493,494, >+ 497,498,501,503,506,502,509,517,513,519, >+ 520,522,523,525,526,528,531,534,536,538, >+ 543,535,545,550,546,553,547,557,559,560, >+ 561,563,566,569,567,571,574,576,572,578, >+ 582,585,507,586,580,587,594,596,588,142, >+ 590,592,598,601,599,602,606,611,612,608, >+ 614,617,620,621,619,622,625,626,632,634, >+ 636,644,645,647,651,631,649,638,654,655, >+ 657,658,660,662,663,665,666,674,669,677, >+ 678,668,679,683,684,685,686,692,687,697, >+ 689,699,700,702,703,704,710,712,717,719, >+ 713,722,725,718,727,729,730,732,733,707, >+ 735,739,741,742,744,746,750,751,752,753, >+ 758,764,424,424 > }; > }; > public final static char baseAction[] = BaseAction.baseAction; >@@ -107,86 +189,86 @@ > public final static byte termCheck[] = {0, > 0,1,2,3,4,5,6,7,8,9, > 10,11,12,0,0,15,2,3,4,19, >- 20,0,22,23,0,0,26,27,28,29, >- 30,31,32,8,34,0,0,37,2,4, >- 4,0,7,19,0,9,11,3,12,25, >- 15,16,28,29,18,0,0,1,2,35, >- 19,40,7,8,0,24,0,3,4,3, >- 0,0,0,3,2,0,21,36,8,38, >- 5,15,7,8,13,0,0,23,16,0, >- 0,21,7,0,5,5,11,8,8,33, >- 14,8,0,1,0,1,13,0,0,2, >- 8,0,8,0,0,0,5,2,10,5, >- 7,6,14,0,13,12,0,0,0,22, >- 3,4,0,10,6,12,0,1,6,0, >- 0,1,6,4,16,19,7,15,0,0, >- 24,3,12,0,1,0,8,0,0,6, >- 0,1,0,1,6,16,0,0,13,0, >- 4,4,0,1,0,1,27,8,21,0, >- 0,1,0,1,0,0,0,8,3,0, >- 0,0,3,0,0,0,10,2,8,15, >- 7,7,0,0,0,3,3,0,17,2, >- 0,7,0,1,0,1,0,0,1,3, >- 0,0,2,0,3,15,0,1,0,0, >- 1,0,0,0,0,0,0,9,0,8, >- 0,18,10,9,11,0,1,7,0,0, >- 0,15,3,3,0,7,0,3,0,1, >- 0,5,0,3,29,0,1,5,0,1, >- 0,0,0,3,3,0,0,0,6,0, >- 0,0,3,0,0,0,9,7,13,0, >- 7,7,0,4,0,1,4,0,0,0, >- 24,0,5,5,19,6,0,1,0,1, >- 9,0,0,0,0,0,0,3,2,8, >- 0,0,9,11,0,0,2,0,0,14, >- 2,4,7,0,0,2,0,1,0,18, >- 20,0,1,0,0,0,3,0,14,2, >- 5,0,0,0,0,1,18,4,0,0, >- 8,17,11,4,0,7,0,1,0,1, >- 0,0,1,0,4,0,3,0,1,0, >- 0,0,7,0,0,4,0,0,9,9, >- 6,0,9,0,0,4,2,0,0,0, >- 13,0,16,5,7,12,0,1,0,1, >- 0,0,0,0,13,5,0,6,6,20, >- 7,5,0,1,0,0,0,0,1,0, >- 0,6,6,0,0,11,6,0,0,2, >- 11,0,0,9,6,0,1,0,0,16, >- 0,0,5,11,4,14,0,6,0,3, >- 0,0,0,0,1,17,4,0,0,9, >- 3,0,0,12,0,0,0,0,10,0, >- 9,0,7,11,8,11,28,0,11,2, >- 0,0,0,2,2,0,0,1,17,0, >- 0,0,23,2,0,0,2,0,3,10, >- 10,0,22,18,7,0,1,0,0,8, >- 0,0,5,0,0,2,0,9,4,0, >- 10,10,0,0,0,0,0,11,4,10, >- 4,0,1,0,0,0,14,14,0,6, >- 2,0,8,2,9,0,1,0,0,0, >- 1,0,4,2,0,0,2,0,1,0, >- 0,6,0,1,0,1,0,20,0,9, >- 0,1,13,0,0,0,0,4,0,5, >- 0,6,0,1,0,1,0,0,10,0, >- 0,15,5,4,0,27,0,7,32,0, >- 0,15,0,3,5,0,1,0,0,0, >- 0,31,4,0,0,1,6,10,16,0, >- 0,25,0,14,0,1,0,8,2,9, >- 17,0,10,39,0,1,5,0,1,0, >- 0,0,0,4,0,1,0,0,1,0, >- 0,2,0,0,1,0,0,16,18,17, >- 14,0,10,2,0,0,0,12,4,3, >- 5,0,0,0,0,25,0,1,5,5, >- 0,0,26,11,0,1,5,0,0,9, >- 2,0,0,6,0,0,1,26,6,0, >- 0,2,0,12,0,3,12,0,0,2, >- 10,0,0,2,0,1,4,0,10,0, >- 0,0,1,0,0,6,9,0,1,0, >- 1,0,8,13,30,0,13,0,0,0, >- 0,10,0,4,7,5,0,0,10,14, >- 3,9,0,0,0,0,0,0,0,0, >+ 20,0,22,23,3,4,26,27,28,29, >+ 30,31,32,0,0,35,0,4,38,0, >+ 7,0,8,2,11,4,0,13,15,16, >+ 9,5,0,12,0,19,0,3,19,18, >+ 0,25,8,24,28,29,0,7,8,3, >+ 4,0,36,21,3,21,37,0,39,0, >+ 0,21,5,4,7,8,15,7,0,23, >+ 0,11,0,5,2,0,8,0,1,2, >+ 5,0,1,8,14,34,0,1,16,8, >+ 0,0,2,0,8,0,0,0,5,2, >+ 0,10,7,6,0,14,13,12,0,0, >+ 1,0,22,0,10,6,12,6,0,19, >+ 0,0,4,15,24,7,6,16,0,0, >+ 1,3,0,1,0,15,8,16,6,0, >+ 1,12,0,0,1,0,0,13,27,4, >+ 0,1,0,40,8,13,0,1,0,0, >+ 8,0,1,0,1,0,8,0,3,10, >+ 3,0,0,0,3,0,0,0,0,2, >+ 8,3,7,7,0,0,0,3,2,0, >+ 17,2,7,0,1,0,1,0,0,1, >+ 3,0,0,0,3,0,1,0,0,1, >+ 0,0,0,0,0,0,9,15,8,0, >+ 9,18,10,0,11,0,1,0,0,0, >+ 15,3,0,0,7,3,7,0,19,6, >+ 3,0,0,29,0,1,5,0,0,0, >+ 3,0,1,5,0,1,0,0,0,3, >+ 3,0,13,0,6,0,24,0,3,0, >+ 9,0,9,0,7,0,7,4,7,0, >+ 1,0,0,0,9,4,0,5,0,6, >+ 0,5,0,1,0,1,8,0,0,0, >+ 3,11,0,0,2,2,0,0,0,0, >+ 1,4,14,0,0,7,2,0,0,20, >+ 2,0,1,0,18,0,3,14,0,0, >+ 0,2,0,5,0,18,4,0,1,0, >+ 0,11,17,0,4,0,1,8,0,1, >+ 7,0,0,1,0,4,0,3,0,1, >+ 0,0,0,7,0,0,4,0,0,9, >+ 9,6,0,9,0,0,4,2,0,0, >+ 0,13,0,16,5,7,12,0,1,0, >+ 1,0,0,0,0,13,5,0,6,6, >+ 20,7,5,0,1,0,0,0,0,1, >+ 0,0,6,6,0,0,11,6,0,0, >+ 2,11,0,0,9,6,0,1,0,0, >+ 16,0,0,5,11,4,14,0,6,0, >+ 3,0,0,0,0,1,17,4,0,0, >+ 9,3,0,0,12,0,0,0,0,10, >+ 0,9,0,7,11,8,11,28,0,11, >+ 2,0,0,0,2,2,0,0,1,17, >+ 0,0,0,23,2,0,0,2,0,3, >+ 10,10,0,22,18,7,0,1,0,0, >+ 8,0,0,5,0,0,2,0,9,4, >+ 0,10,10,0,0,0,0,0,11,4, >+ 10,4,0,1,0,0,0,14,14,0, >+ 6,2,0,8,2,9,0,1,0,0, >+ 0,1,0,4,2,0,0,2,0,1, >+ 0,0,6,0,1,0,1,0,20,0, >+ 9,0,1,13,0,0,0,0,4,0, >+ 5,0,6,0,1,0,1,0,0,10, >+ 0,0,15,5,4,0,27,0,7,32, >+ 0,0,15,0,3,5,0,1,0,0, >+ 0,0,31,4,0,0,1,6,10,16, >+ 0,0,25,0,14,0,1,0,33,8, >+ 10,17,9,0,0,2,0,1,0,5, >+ 0,1,4,0,0,18,0,0,1,0, >+ 1,0,0,2,0,0,1,0,0,16, >+ 14,17,4,0,10,2,0,0,0,12, >+ 3,5,0,0,0,0,0,25,0,5, >+ 5,0,1,5,11,9,0,1,0,0, >+ 2,0,0,0,26,6,0,6,26,0, >+ 1,0,0,2,12,12,0,0,0,3, >+ 2,0,10,2,0,1,0,10,0,0, >+ 4,0,0,1,0,6,30,9,0,1, >+ 0,0,1,0,13,0,0,13,8,0, >+ 0,0,0,10,0,4,7,0,0,14, >+ 10,9,5,0,0,0,3,0,0,0, > 0,0,0,0,0,0,0,0,0,0, > 0,0,0,0,0,0,0,0,0,0, > 0,0,0,0,0,0,0,0,0,0, > 0,0,0,0,0,0,0,0,0,0, >- 0,0,0 >+ 0,0,0,0,0,0,0,0,0,0 > }; > }; > public final static byte termCheck[] = TermCheck.termCheck; >@@ -196,81 +278,81 @@ > public final static char termAction[] = {0, > 424,104,102,97,98,101,108,91,100,109, > 103,105,96,424,424,107,135,136,137,90, >- 86,424,85,99,424,424,92,95,87,89, >- 106,84,94,120,93,424,424,88,154,134, >- 156,424,441,308,424,153,133,163,436,310, >- 132,131,311,309,155,424,424,124,123,312, >- 217,423,139,138,424,220,424,144,145,167, >- 424,424,424,147,165,424,140,218,148,219, >- 150,166,152,151,111,424,424,143,164,424, >- 424,146,119,424,122,126,118,121,125,168, >- 495,129,424,142,424,158,128,424,424,449, >- 141,424,157,424,424,424,183,189,440,162, >- 187,190,458,424,184,188,424,424,22,174, >- 196,197,424,193,205,192,424,427,239,424, >- 424,252,201,503,426,230,208,240,424,424, >- 229,250,425,424,290,424,249,424,424,291, >- 424,112,424,114,211,362,424,424,113,424, >- 115,116,424,117,424,127,361,130,110,424, >- 424,159,424,160,424,424,424,149,169,424, >- 424,424,171,424,424,424,170,445,172,161, >- 173,175,424,424,424,176,177,424,450,443, >- 424,442,424,178,424,179,424,424,459,180, >- 424,424,181,424,182,501,424,185,424,424, >- 194,424,424,424,424,424,424,191,424,195, >- 424,186,198,200,199,424,203,206,424,424, >- 424,204,207,210,424,209,424,477,424,213, >- 424,212,424,214,202,424,216,215,424,221, >- 424,424,424,222,223,424,424,424,224,424, >- 424,424,484,424,424,424,227,228,225,424, >- 487,486,424,232,424,447,437,424,9,424, >- 226,424,233,235,231,234,424,236,424,438, >- 237,424,424,424,424,424,424,243,244,238, >- 424,424,242,241,424,424,428,424,424,429, >- 435,247,248,424,424,251,424,504,424,246, >- 245,424,479,424,424,424,254,424,498,257, >- 256,424,424,424,424,260,253,259,424,424, >- 261,255,258,262,424,263,424,264,424,265, >- 424,424,267,424,266,424,268,424,448,424, >- 424,424,269,424,424,272,424,424,270,271, >- 274,424,273,424,424,277,278,424,424,424, >- 276,424,275,280,279,439,424,283,424,284, >- 424,424,424,424,282,285,424,286,287,281, >- 289,288,424,292,424,424,424,424,296,424, >- 424,294,295,424,424,293,298,424,424,462, >- 297,424,424,300,301,424,302,424,424,299, >- 424,424,304,303,305,480,424,306,424,455, >- 424,424,424,424,434,474,490,424,424,313, >- 315,424,424,314,424,424,424,424,316,424, >- 456,424,320,317,319,318,307,424,321,324, >- 424,424,424,326,494,424,424,328,323,424, >- 424,424,322,461,424,424,330,424,355,329, >- 482,424,325,327,475,424,500,424,424,331, >- 424,424,332,424,424,335,424,333,478,424, >- 481,334,424,424,424,424,424,336,339,337, >- 340,424,341,424,424,424,338,342,424,343, >- 344,424,345,346,492,424,491,424,424,424, >- 465,424,348,349,424,424,430,424,431,424, >- 424,350,424,454,424,352,424,347,424,444, >- 424,354,351,424,424,424,424,499,424,356, >- 424,358,424,451,424,359,424,424,363,424, >- 424,360,366,365,424,357,36,367,353,424, >- 424,364,424,370,369,424,457,424,424,424, >- 424,469,373,424,424,377,375,374,372,424, >- 424,371,424,464,424,468,424,378,379,496, >- 376,424,383,368,424,381,380,424,382,424, >- 424,424,424,384,424,388,424,424,497,424, >- 424,389,424,424,483,424,424,386,385,387, >- 488,424,485,453,424,424,424,393,452,392, >- 391,424,424,424,424,390,424,432,397,398, >- 424,424,394,396,424,400,401,424,424,399, >- 402,424,424,403,424,424,405,395,404,424, >- 424,406,424,467,424,407,466,424,424,408, >- 409,424,424,410,424,472,411,424,471,424, >- 424,424,414,424,424,412,473,424,417,424, >- 419,424,418,413,415,424,416,424,424,424, >- 424,463,424,502,420,421,424,424,470,493, >- 476,489 >+ 86,424,85,99,196,197,92,95,87,89, >+ 106,84,94,424,424,93,424,134,88,424, >+ 441,424,129,154,133,156,424,128,132,131, >+ 153,162,424,436,424,308,424,147,217,155, >+ 424,310,148,220,311,309,424,139,138,144, >+ 145,424,312,110,167,146,218,424,219,424, >+ 424,140,150,115,152,151,166,119,424,143, >+ 424,118,424,122,165,424,121,424,124,123, >+ 126,424,142,125,495,168,424,158,164,141, >+ 424,424,449,424,157,424,424,424,183,189, >+ 424,440,187,190,424,458,184,188,424,424, >+ 427,22,174,424,193,201,192,205,424,230, >+ 424,424,503,161,229,208,239,426,424,424, >+ 252,250,424,290,424,240,249,362,291,424, >+ 112,425,424,424,114,424,424,111,361,116, >+ 424,117,424,423,120,113,424,127,424,424, >+ 130,424,159,424,160,424,149,424,163,170, >+ 169,424,424,424,171,424,424,424,424,445, >+ 172,176,173,175,424,424,424,177,443,424, >+ 450,181,442,424,178,424,179,424,424,459, >+ 180,424,424,424,182,424,185,424,424,194, >+ 424,424,424,424,424,424,191,501,195,424, >+ 200,186,198,424,199,424,203,424,424,424, >+ 204,207,424,424,206,210,209,424,231,211, >+ 477,424,424,202,424,213,212,424,424,424, >+ 214,424,216,215,424,221,424,424,424,222, >+ 223,424,225,424,224,424,226,424,484,424, >+ 227,424,237,424,228,424,487,232,486,424, >+ 447,424,424,424,242,437,9,233,424,234, >+ 424,235,424,236,424,438,238,424,424,424, >+ 243,241,424,424,244,428,424,424,424,424, >+ 504,247,429,424,424,248,435,424,424,245, >+ 251,424,479,424,246,424,254,498,424,424, >+ 424,257,424,256,424,253,259,424,260,424, >+ 424,258,255,424,262,424,264,261,424,265, >+ 263,424,424,267,424,266,424,268,424,448, >+ 424,424,424,269,424,424,272,424,424,270, >+ 271,274,424,273,424,424,277,278,424,424, >+ 424,276,424,275,280,279,439,424,283,424, >+ 284,424,424,424,424,282,285,424,286,287, >+ 281,289,288,424,292,424,424,424,424,296, >+ 424,424,294,295,424,424,293,298,424,424, >+ 462,297,424,424,300,301,424,302,424,424, >+ 299,424,424,304,303,305,480,424,306,424, >+ 455,424,424,424,424,434,474,490,424,424, >+ 313,315,424,424,314,424,424,424,424,316, >+ 424,456,424,320,317,319,318,307,424,321, >+ 324,424,424,424,326,494,424,424,328,323, >+ 424,424,424,322,461,424,424,330,424,355, >+ 329,482,424,325,327,475,424,500,424,424, >+ 331,424,424,332,424,424,335,424,333,478, >+ 424,481,334,424,424,424,424,424,336,339, >+ 337,340,424,341,424,424,424,338,342,424, >+ 343,344,424,345,346,492,424,491,424,424, >+ 424,465,424,348,349,424,424,430,424,431, >+ 424,424,350,424,454,424,352,424,347,424, >+ 444,424,354,351,424,424,424,424,499,424, >+ 356,424,358,424,451,424,359,424,424,363, >+ 424,424,360,366,365,424,357,36,367,353, >+ 424,424,364,424,370,369,424,457,424,424, >+ 424,424,469,373,424,424,377,375,374,372, >+ 424,424,371,424,464,424,468,424,368,378, >+ 383,376,496,424,424,379,424,381,424,380, >+ 424,382,384,424,424,385,424,424,388,424, >+ 497,424,424,389,424,424,483,424,424,386, >+ 488,387,452,424,485,453,424,424,424,393, >+ 392,391,424,424,424,424,424,390,424,397, >+ 398,424,432,401,396,399,424,400,424,424, >+ 402,424,424,424,394,403,424,404,395,424, >+ 405,424,424,406,467,466,424,424,424,407, >+ 408,424,409,410,424,472,424,471,424,424, >+ 411,424,424,414,424,412,415,473,424,417, >+ 424,424,419,424,413,424,424,416,418,424, >+ 424,424,424,463,424,502,420,424,424,493, >+ 470,489,421,424,424,424,476 > }; > }; > public final static char termAction[] = TermAction.termAction; >@@ -290,56 +372,21 @@ > public final int scopeState(int index) { return 0;} > public final int inSymb(int index) { return 0;} > public final String name(int index) { return null; } >- public final int getErrorSymbol() { return 0; } >- public final int getScopeUbound() { return 0; } >- public final int getScopeSize() { return 0; } >- public final int getMaxNameLength() { return 0; } >- >- public final static int >- NUM_STATES = 340, >- NT_OFFSET = 55, >- LA_STATE_OFFSET = 504, >- MAX_LA = 1, >- NUM_RULES = 80, >- NUM_NONTERMINALS = 2, >- NUM_SYMBOLS = 57, >- SEGMENT_SIZE = 8192, >- START_STATE = 81, >- IDENTIFIER_SYMBOL = 0, >- EOFT_SYMBOL = 40, >- EOLT_SYMBOL = 56, >- ACCEPT_ACTION = 423, >- ERROR_ACTION = 424; >- >- public final static boolean BACKTRACK = false; >- >- public final int getNumStates() { return NUM_STATES; } >- public final int getNtOffset() { return NT_OFFSET; } >- public final int getLaStateOffset() { return LA_STATE_OFFSET; } >- public final int getMaxLa() { return MAX_LA; } >- public final int getNumRules() { return NUM_RULES; } >- public final int getNumNonterminals() { return NUM_NONTERMINALS; } >- public final int getNumSymbols() { return NUM_SYMBOLS; } >- public final int getSegmentSize() { return SEGMENT_SIZE; } >- public final int getStartState() { return START_STATE; } >- public final int getStartSymbol() { return lhs[0]; } >- public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; } >- public final int getEoftSymbol() { return EOFT_SYMBOL; } >- public final int getEoltSymbol() { return EOLT_SYMBOL; } >- public final int getAcceptAction() { return ACCEPT_ACTION; } >- public final int getErrorAction() { return ERROR_ACTION; } >- public final boolean isValidForParser() { return isValidForParser; } >- public final boolean getBacktrack() { return BACKTRACK; } >- > public final int originalState(int state) { return 0; } > public final int asi(int state) { return 0; } > public final int nasi(int state) { return 0; } > public final int inSymbol(int state) { return 0; } > >+ /** >+ * assert(! goto_default); >+ */ > public final int ntAction(int state, int sym) { > return baseAction[state + sym]; > } > >+ /** >+ * assert(! shift_default); >+ */ > public final int tAction(int state, int sym) { > int i = baseAction[state], > k = i + sym; >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrAnalyzer.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrAnalyzer.java,v >retrieving revision 1.4 >diff -u -r1.4 QVTrAnalyzer.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrAnalyzer.java 11 Oct 2008 15:27:50 -0000 1.4 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrAnalyzer.java 14 Aug 2009 17:34:54 -0000 >@@ -10,7 +10,7 @@ > *******************************************************************************/ > package org.eclipse.qvt.declarative.parser.qvtrelation; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.qvt.declarative.parser.environment.ICSTFileAnalyzer; > import org.eclipse.qvt.declarative.parser.qvtrelation.environment.QVTrFileEnvironment; >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/environment/QVTrFileEnvironment.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser.qvtrelation/src/org/eclipse/qvt/declarative/parser/qvtrelation/environment/QVTrFileEnvironment.java,v >retrieving revision 1.1 >diff -u -r1.1 QVTrFileEnvironment.java >--- src/org/eclipse/qvt/declarative/parser/qvtrelation/environment/QVTrFileEnvironment.java 11 Oct 2008 15:27:50 -0000 1.1 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/environment/QVTrFileEnvironment.java 14 Aug 2009 17:34:56 -0000 >@@ -10,7 +10,7 @@ > *******************************************************************************/ > package org.eclipse.qvt.declarative.parser.qvtrelation.environment; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.emf.ecore.resource.ResourceSet; > import org.eclipse.emf.ecore.xmi.XMIResource; >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.gi >=================================================================== >RCS file: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.gi >diff -N src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.gi >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrLexer.gi 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,58 @@ >+--/** >+-- * <copyright> >+-- * >+-- * Copyright (c) 2007,2008 E.D.Willink and others. >+-- * All rights reserved. This program and the accompanying materials >+-- * are made available under the terms of the Eclipse Public License v1.0 >+-- * which accompanies this distribution, and is available at >+-- * http://www.eclipse.org/legal/epl-v10.html >+-- * >+-- * Contributors: >+-- * E.D.Willink - Initial API and implementation >+-- * >+-- * </copyright> >+-- */ >+-- >+-- The QVTr Lexer >+-- >+ >+%options escape=$ >+%options la=2 >+%options fp=QVTrLexer,prefix=Char_ >+%options single-productions >+%options noserialize >+%options package=org.eclipse.qvt.declarative.parser.qvtrelation >+%options template=../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/lpg/LexerTemplateD.gi >+%options filter=QVTrKWLexer.gi >+%options export_terminals=("QVTrParsersym.java", "TK_") >+%options include_directory=".;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/lpg;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/parser" >+ >+%Import >+ OCLLexer.gi >+%End >+ >+%Define >+ -- >+ -- Definition of macro used in the included file LexerBasicMap.g >+ -- >+ $kw_lexer_class /.QVTrKWLexer./ >+ $environment_class /.ICSTFileEnvironment./ >+ $environment_import /.org.eclipse.qvt.declarative.parser.environment.ICSTFileEnvironment./ >+ $copyright_contributions /.* E.D.Willink - Extended API and implementation for QVTr >+*./ >+%End >+ >+%Export >+ PLUS_PLUS >+%End >+ >+%Rules >+ >+ Token ::= '+' '+' >+ /.$BeginAction >+ makeToken($_PLUS_PLUS); >+ $EndAction >+ ./ >+ >+ SLC -> '/' '/' >+%End >Index: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.gi >=================================================================== >RCS file: src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.gi >diff -N src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.gi >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/qvt/declarative/parser/qvtrelation/QVTrKWLexer.gi 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,171 @@ >+--/** >+-- * Copyright (c) 2007,2008 E.D.Willink and others. >+-- * All rights reserved. This program and the accompanying materials >+-- * are made available under the terms of the Eclipse Public License v1.0 >+-- * which accompanies this distribution, and is available at >+-- * http://www.eclipse.org/legal/epl-v10.html >+-- * >+-- * Contributors: >+-- * E.D.Willink - Initial API and implementation >+-- */ >+-- >+-- The QVTr KeyWord Lexer >+-- >+ >+%Options slr >+%Options fp=QVTrKWLexer,prefix=Char_ >+%options noserialize >+%options package=org.eclipse.qvt.declarative.parser.qvtrelation >+%options template=../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/lpg/KeywordTemplateD.gi >+%options export_terminals=("QVTrParsersym.java", "TK_") >+%options include_directory=".;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/lpg;../../../../../../../../org.eclipse.ocl/src/org/eclipse/ocl/parser" >+ >+%Import >+ OCLKWLexer.gi >+%End >+ >+%Define >+ $copyright_contributions /.* E.D.Willink - Extended API and implementation for QVTr >+*./ >+%End >+ >+%Export >+ checkonly >+ default_values >+ domain >+ enforce >+ extends >+ implementedby >+ import >+ key >+ overrides >+ primitive >+ query >+ relation >+ replace >+ top >+ transformation >+ when >+ where >+%End >+ >+%Terminals >+ _ >+%End >+ >+%Headers >+ /. >+ static >+ { >+ tokenKind['_'] = Char__; >+ }; >+ ./ >+%End >+ >+%Rules >+ >+-- The Goal for the parser is a single Keyword >+ >+ KeyWord ::= >+ c h e c k o n l y >+ /.$BeginAction >+ $setResult($_checkonly); >+ $EndAction >+ ./ >+ >+ | d e f a u l t _ v a l u e s >+ /.$BeginAction >+ $setResult($_default_values); >+ $EndAction >+ ./ >+ >+ | d o m a i n >+ /.$BeginAction >+ $setResult($_domain); >+ $EndAction >+ ./ >+ >+ | e n f o r c e >+ /.$BeginAction >+ $setResult($_enforce); >+ $EndAction >+ ./ >+ >+ | e x t e n d s >+ /.$BeginAction >+ $setResult($_extends); >+ $EndAction >+ ./ >+ >+ | i m p l e m e n t e d b y >+ /.$BeginAction >+ $setResult($_implementedby); >+ $EndAction >+ ./ >+ >+ | i m p o r t >+ /.$BeginAction >+ $setResult($_import); >+ $EndAction >+ ./ >+ >+ | k e y >+ /.$BeginAction >+ $setResult($_key); >+ $EndAction >+ ./ >+ >+ | o v e r r i d e s >+ /.$BeginAction >+ $setResult($_overrides); >+ $EndAction >+ ./ >+ >+ | p r i m i t i v e >+ /.$BeginAction >+ $setResult($_primitive); >+ $EndAction >+ ./ >+ >+ | q u e r y >+ /.$BeginAction >+ $setResult($_query); >+ $EndAction >+ ./ >+ >+ | r e l a t i o n >+ /.$BeginAction >+ $setResult($_relation); >+ $EndAction >+ ./ >+ >+ | r e p l a c e >+ /.$BeginAction >+ $setResult($_replace); >+ $EndAction >+ ./ >+ >+ | t o p >+ /.$BeginAction >+ $setResult($_top); >+ $EndAction >+ ./ >+ >+ | t r a n s f o r m a t i o n >+ /.$BeginAction >+ $setResult($_transformation); >+ $EndAction >+ ./ >+ >+ | w h e n >+ /.$BeginAction >+ $setResult($_when); >+ $EndAction >+ ./ >+ >+ | w h e r e >+ /.$BeginAction >+ $setResult($_where); >+ $EndAction >+ ./ >+%End >#P org.eclipse.qvt.declarative.parser >Index: src/org/eclipse/qvt/declarative/parser/AbstractQVTAnalyzer.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser/src/org/eclipse/qvt/declarative/parser/AbstractQVTAnalyzer.java,v >retrieving revision 1.10 >diff -u -r1.10 AbstractQVTAnalyzer.java >--- src/org/eclipse/qvt/declarative/parser/AbstractQVTAnalyzer.java 17 Feb 2009 21:51:43 -0000 1.10 >+++ src/org/eclipse/qvt/declarative/parser/AbstractQVTAnalyzer.java 14 Aug 2009 17:34:59 -0000 >@@ -14,7 +14,7 @@ > import java.util.Comparator; > import java.util.List; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.emf.common.util.EList; > import org.eclipse.emf.ecore.EClass; >Index: src/org/eclipse/qvt/declarative/parser/environment/ICSTFileEnvironment.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser/src/org/eclipse/qvt/declarative/parser/environment/ICSTFileEnvironment.java,v >retrieving revision 1.1 >diff -u -r1.1 ICSTFileEnvironment.java >--- src/org/eclipse/qvt/declarative/parser/environment/ICSTFileEnvironment.java 11 Oct 2008 15:27:46 -0000 1.1 >+++ src/org/eclipse/qvt/declarative/parser/environment/ICSTFileEnvironment.java 14 Aug 2009 17:34:59 -0000 >@@ -20,7 +20,7 @@ > import java.io.Reader; > import java.util.Collection; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.core.runtime.CoreException; > import org.eclipse.core.runtime.IProgressMonitor; >Index: src/org/eclipse/qvt/declarative/parser/environment/CSTFileEnvironment.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser/src/org/eclipse/qvt/declarative/parser/environment/CSTFileEnvironment.java,v >retrieving revision 1.4 >diff -u -r1.4 CSTFileEnvironment.java >--- src/org/eclipse/qvt/declarative/parser/environment/CSTFileEnvironment.java 6 Mar 2009 17:30:00 -0000 1.4 >+++ src/org/eclipse/qvt/declarative/parser/environment/CSTFileEnvironment.java 14 Aug 2009 17:34:59 -0000 >@@ -16,7 +16,7 @@ > import java.util.ArrayList; > import java.util.List; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.core.runtime.CoreException; > import org.eclipse.core.runtime.IProgressMonitor; >Index: src/org/eclipse/qvt/declarative/parser/qvt/environment/LPGProgressMonitor.java >=================================================================== >RCS file: /cvsroot/modeling/org.eclipse.m2m/org.eclipse.qvt.declarative/plugins/org.eclipse.qvt.declarative.parser/src/org/eclipse/qvt/declarative/parser/qvt/environment/LPGProgressMonitor.java,v >retrieving revision 1.1 >diff -u -r1.1 LPGProgressMonitor.java >--- src/org/eclipse/qvt/declarative/parser/qvt/environment/LPGProgressMonitor.java 10 Oct 2008 08:13:52 -0000 1.1 >+++ src/org/eclipse/qvt/declarative/parser/qvt/environment/LPGProgressMonitor.java 14 Aug 2009 17:34:59 -0000 >@@ -10,7 +10,7 @@ > *******************************************************************************/ > package org.eclipse.qvt.declarative.parser.qvt.environment; > >-import lpg.lpgjavaruntime.Monitor; >+import lpg.runtime.Monitor; > > import org.eclipse.core.runtime.IProgressMonitor; >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 242153
:
113562
|
144433
|
144559
| 144561 |
146213
|
146215
|
146307
|
146308
|
146322
|
146527
|
146557
|
154939
|
154947
|
155049
|
155227
|
155269