75 changed files with 12980 additions and 0 deletions
			
			
		@ -0,0 +1,9 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<classpath> | 
				
			||||||
 | 
						<classpathentry kind="src" path="src"/> | 
				
			||||||
 | 
						<classpathentry kind="src" path="src-gen"/> | 
				
			||||||
 | 
						<classpathentry kind="src" path="xtend-gen"/> | 
				
			||||||
 | 
						<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> | 
				
			||||||
 | 
						<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> | 
				
			||||||
 | 
						<classpathentry kind="output" path="bin"/> | 
				
			||||||
 | 
					</classpath> | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<projectDescription> | 
				
			||||||
 | 
						<name>com.irtsaintexupery.xtext.pseim.mapping.ide</name> | 
				
			||||||
 | 
						<comment></comment> | 
				
			||||||
 | 
						<projects> | 
				
			||||||
 | 
						</projects> | 
				
			||||||
 | 
						<buildSpec> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.xtext.ui.shared.xtextBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.jdt.core.javabuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.pde.ManifestBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.pde.SchemaBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
						</buildSpec> | 
				
			||||||
 | 
						<natures> | 
				
			||||||
 | 
							<nature>org.eclipse.xtext.ui.shared.xtextNature</nature> | 
				
			||||||
 | 
							<nature>org.eclipse.jdt.core.javanature</nature> | 
				
			||||||
 | 
							<nature>org.eclipse.pde.PluginNature</nature> | 
				
			||||||
 | 
						</natures> | 
				
			||||||
 | 
					</projectDescription> | 
				
			||||||
@ -0,0 +1,2 @@ | 
				
			|||||||
 | 
					eclipse.preferences.version=1 | 
				
			||||||
 | 
					encoding/<project>=UTF-8 | 
				
			||||||
@ -0,0 +1,7 @@ | 
				
			|||||||
 | 
					eclipse.preferences.version=1 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.compliance=1.8 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.source=1.8 | 
				
			||||||
@ -0,0 +1,16 @@ | 
				
			|||||||
 | 
					Manifest-Version: 1.0 | 
				
			||||||
 | 
					Bundle-ManifestVersion: 2 | 
				
			||||||
 | 
					Bundle-Name: com.irtsaintexupery.xtext.pseim.mapping.ide | 
				
			||||||
 | 
					Bundle-Vendor: My Company | 
				
			||||||
 | 
					Bundle-Version: 1.0.0.qualifier | 
				
			||||||
 | 
					Bundle-SymbolicName: com.irtsaintexupery.xtext.pseim.mapping.ide; singleton:=true | 
				
			||||||
 | 
					Bundle-ActivationPolicy: lazy | 
				
			||||||
 | 
					Require-Bundle: com.irtsaintexupery.xtext.pseim.mapping, | 
				
			||||||
 | 
					 com.irtsaintexupery.pseim, | 
				
			||||||
 | 
					 org.eclipse.xtext.ide, | 
				
			||||||
 | 
					 org.eclipse.xtext.xbase.ide, | 
				
			||||||
 | 
					 org.antlr.runtime | 
				
			||||||
 | 
					Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | 
				
			||||||
 | 
					Export-Package: com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.internal, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -0,0 +1,6 @@ | 
				
			|||||||
 | 
					source.. = src/,\ | 
				
			||||||
 | 
					           src-gen/,\ | 
				
			||||||
 | 
					           xtend-gen/ | 
				
			||||||
 | 
					bin.includes = .,\ | 
				
			||||||
 | 
					               META-INF/ | 
				
			||||||
 | 
					bin.excludes = **/*.xtend | 
				
			||||||
@ -0,0 +1 @@ | 
				
			|||||||
 | 
					com.irtsaintexupery.xtext.pseim.ide.MappingIdeSetup | 
				
			||||||
@ -0,0 +1,47 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ide; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Binder; | 
				
			||||||
 | 
					import com.google.inject.name.Names; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.MappingParser; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.internal.InternalMappingLexer; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.DefaultIdeModule; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.LexerIdeBindings; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.FQNPrefixMatcher; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.IPrefixMatcher; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.IProposalConflictHelper; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.AntlrProposalConflictHelper; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Manual modifications go to {@link MappingIdeModule}. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@SuppressWarnings("all") | 
				
			||||||
 | 
					public abstract class AbstractMappingIdeModule extends DefaultIdeModule { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public void configureContentAssistLexer(Binder binder) { | 
				
			||||||
 | 
							binder.bind(Lexer.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST)) | 
				
			||||||
 | 
								.to(InternalMappingLexer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IContentAssistParser> bindIContentAssistParser() { | 
				
			||||||
 | 
							return MappingParser.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() { | 
				
			||||||
 | 
							return AntlrProposalConflictHelper.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
 | 
				
			||||||
 | 
						public Class<? extends IPrefixMatcher> bindIPrefixMatcher() { | 
				
			||||||
 | 
							return FQNPrefixMatcher.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,80 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.internal.InternalMappingParser; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess; | 
				
			||||||
 | 
					import java.util.HashMap; | 
				
			||||||
 | 
					import java.util.Map; | 
				
			||||||
 | 
					import org.eclipse.xtext.AbstractElement; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.AbstractContentAssistParser; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MappingParser extends AbstractContentAssistParser { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Inject | 
				
			||||||
 | 
						private MappingGrammarAccess grammarAccess; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private Map<AbstractElement, String> nameMappings; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected InternalMappingParser createParser() { | 
				
			||||||
 | 
							InternalMappingParser result = new InternalMappingParser(null); | 
				
			||||||
 | 
							result.setGrammarAccess(grammarAccess); | 
				
			||||||
 | 
							return result; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected String getRuleName(AbstractElement element) { | 
				
			||||||
 | 
							if (nameMappings == null) { | 
				
			||||||
 | 
								nameMappings = new HashMap<AbstractElement, String>() { | 
				
			||||||
 | 
									private static final long serialVersionUID = 1L; | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getGroup(), "rule__PatternApplication__Group__0"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getGroup_5(), "rule__PatternApplication__Group_5__0"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getGroup_6(), "rule__PatternApplication__Group_6__0"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getGroup_7(), "rule__PatternApplication__Group_7__0"); | 
				
			||||||
 | 
										put(grammarAccess.getCardinalityValueAccess().getGroup(), "rule__CardinalityValue__Group__0"); | 
				
			||||||
 | 
										put(grammarAccess.getPortMappingAccess().getGroup(), "rule__PortMapping__Group__0"); | 
				
			||||||
 | 
										put(grammarAccess.getPortMappingAccess().getGroup_1(), "rule__PortMapping__Group_1__0"); | 
				
			||||||
 | 
										put(grammarAccess.getGraphElementMappingAccess().getGroup(), "rule__GraphElementMapping__Group__0"); | 
				
			||||||
 | 
										put(grammarAccess.getGraphElementMappingAccess().getGroup_1(), "rule__GraphElementMapping__Group_1__0"); | 
				
			||||||
 | 
										put(grammarAccess.getEIntAccess().getGroup(), "rule__EInt__Group__0"); | 
				
			||||||
 | 
										put(grammarAccess.getQualifiedIDAccess().getGroup(), "rule__QualifiedID__Group__0"); | 
				
			||||||
 | 
										put(grammarAccess.getQualifiedIDAccess().getGroup_1(), "rule__QualifiedID__Group_1__0"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getModelAssignment_1(), "rule__PatternApplication__ModelAssignment_1"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getPatternAssignment_3(), "rule__PatternApplication__PatternAssignment_3"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getCardinalityValuesAssignment_5_1(), "rule__PatternApplication__CardinalityValuesAssignment_5_1"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getCardinalityValuesAssignment_5_2(), "rule__PatternApplication__CardinalityValuesAssignment_5_2"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getModelElementAssignment_6_1(), "rule__PatternApplication__ModelElementAssignment_6_1"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getModelElementAssignment_6_2(), "rule__PatternApplication__ModelElementAssignment_6_2"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getPortMappingAssignment_7_1(), "rule__PatternApplication__PortMappingAssignment_7_1"); | 
				
			||||||
 | 
										put(grammarAccess.getPatternApplicationAccess().getPortMappingAssignment_7_2(), "rule__PatternApplication__PortMappingAssignment_7_2"); | 
				
			||||||
 | 
										put(grammarAccess.getCardinalityValueAccess().getCardinalityElementAssignment_0(), "rule__CardinalityValue__CardinalityElementAssignment_0"); | 
				
			||||||
 | 
										put(grammarAccess.getCardinalityValueAccess().getValueAssignment_2(), "rule__CardinalityValue__ValueAssignment_2"); | 
				
			||||||
 | 
										put(grammarAccess.getPortMappingAccess().getModelPortAssignment_0(), "rule__PortMapping__ModelPortAssignment_0"); | 
				
			||||||
 | 
										put(grammarAccess.getPortMappingAccess().getModelPortAssignment_1_1(), "rule__PortMapping__ModelPortAssignment_1_1"); | 
				
			||||||
 | 
										put(grammarAccess.getPortMappingAccess().getPatternPortAssignment_3(), "rule__PortMapping__PatternPortAssignment_3"); | 
				
			||||||
 | 
										put(grammarAccess.getGraphElementMappingAccess().getModelGraphElementAssignment_0(), "rule__GraphElementMapping__ModelGraphElementAssignment_0"); | 
				
			||||||
 | 
										put(grammarAccess.getGraphElementMappingAccess().getModelGraphElementAssignment_1_1(), "rule__GraphElementMapping__ModelGraphElementAssignment_1_1"); | 
				
			||||||
 | 
										put(grammarAccess.getGraphElementMappingAccess().getPatternGraphElementAssignment_3(), "rule__GraphElementMapping__PatternGraphElementAssignment_3"); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								}; | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							return nameMappings.get(element); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
								 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected String[] getInitialHiddenTokens() { | 
				
			||||||
 | 
							return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" }; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public MappingGrammarAccess getGrammarAccess() { | 
				
			||||||
 | 
							return this.grammarAccess; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void setGrammarAccess(MappingGrammarAccess grammarAccess) { | 
				
			||||||
 | 
							this.grammarAccess = grammarAccess; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.Collection; | 
				
			||||||
 | 
					import java.util.Collections; | 
				
			||||||
 | 
					import org.eclipse.xtext.AbstractRule; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.FollowElement; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.partialEditing.IPartialEditingContentAssistParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.util.PolymorphicDispatcher; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PartialMappingContentAssistParser extends MappingParser implements IPartialEditingContentAssistParser { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private AbstractRule rule; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void initializeFor(AbstractRule rule) { | 
				
			||||||
 | 
							this.rule = rule; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) { | 
				
			||||||
 | 
							if (rule == null || rule.eIsProxy()) | 
				
			||||||
 | 
								return Collections.emptyList(); | 
				
			||||||
 | 
							String methodName = "entryRule" + rule.getName(); | 
				
			||||||
 | 
							PolymorphicDispatcher<Collection<FollowElement>> dispatcher =  | 
				
			||||||
 | 
								new PolymorphicDispatcher<Collection<FollowElement>>(methodName, 0, 0, Collections.singletonList(parser)); | 
				
			||||||
 | 
							dispatcher.invoke(); | 
				
			||||||
 | 
							return parser.getFollowElements(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
									
										
											File diff suppressed because it is too large
											Load Diff
										
									
								
							
						@ -0,0 +1,29 @@ | 
				
			|||||||
 | 
					','=19 | 
				
			||||||
 | 
					'-'=20 | 
				
			||||||
 | 
					'->'=18 | 
				
			||||||
 | 
					'.'=21 | 
				
			||||||
 | 
					'components'=16 | 
				
			||||||
 | 
					'multiplicity'=15 | 
				
			||||||
 | 
					'ports'=17 | 
				
			||||||
 | 
					'transform'=11 | 
				
			||||||
 | 
					'using'=12 | 
				
			||||||
 | 
					'{'=13 | 
				
			||||||
 | 
					'}'=14 | 
				
			||||||
 | 
					RULE_ANY_OTHER=10 | 
				
			||||||
 | 
					RULE_ID=5 | 
				
			||||||
 | 
					RULE_INT=4 | 
				
			||||||
 | 
					RULE_ML_COMMENT=7 | 
				
			||||||
 | 
					RULE_SL_COMMENT=8 | 
				
			||||||
 | 
					RULE_STRING=6 | 
				
			||||||
 | 
					RULE_WS=9 | 
				
			||||||
 | 
					T__11=11 | 
				
			||||||
 | 
					T__12=12 | 
				
			||||||
 | 
					T__13=13 | 
				
			||||||
 | 
					T__14=14 | 
				
			||||||
 | 
					T__15=15 | 
				
			||||||
 | 
					T__16=16 | 
				
			||||||
 | 
					T__17=17 | 
				
			||||||
 | 
					T__18=18 | 
				
			||||||
 | 
					T__19=19 | 
				
			||||||
 | 
					T__20=20 | 
				
			||||||
 | 
					T__21=21 | 
				
			||||||
									
										
											File diff suppressed because it is too large
											Load Diff
										
									
								
							
						
									
										
											File diff suppressed because it is too large
											Load Diff
										
									
								
							
						@ -0,0 +1,11 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ide | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Use this class to register ide components. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingIdeModule extends AbstractMappingIdeModule { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,20 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ide | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Guice | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.MappingRuntimeModule | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.MappingStandaloneSetup | 
				
			||||||
 | 
					import org.eclipse.xtext.util.Modules2 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Initialization support for running Xtext languages as language servers. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingIdeSetup extends MappingStandaloneSetup { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						override createInjector() { | 
				
			||||||
 | 
							Guice.createInjector(Modules2.mixin(new MappingRuntimeModule, new MappingIdeModule)) | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,6 @@ | 
				
			|||||||
 | 
					/.MappingIdeModule.java._trace | 
				
			||||||
 | 
					/.MappingIdeSetup.java._trace | 
				
			||||||
 | 
					/.MappingIdeModule.xtendbin | 
				
			||||||
 | 
					/.MappingIdeSetup.xtendbin | 
				
			||||||
 | 
					/MappingIdeModule.java | 
				
			||||||
 | 
					/MappingIdeSetup.java | 
				
			||||||
@ -0,0 +1,9 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<classpath> | 
				
			||||||
 | 
						<classpathentry kind="src" path="src"/> | 
				
			||||||
 | 
						<classpathentry kind="src" path="src-gen"/> | 
				
			||||||
 | 
						<classpathentry kind="src" path="xtend-gen"/> | 
				
			||||||
 | 
						<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> | 
				
			||||||
 | 
						<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> | 
				
			||||||
 | 
						<classpathentry kind="output" path="bin"/> | 
				
			||||||
 | 
					</classpath> | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<projectDescription> | 
				
			||||||
 | 
						<name>com.irtsaintexupery.xtext.pseim.mapping.ui</name> | 
				
			||||||
 | 
						<comment></comment> | 
				
			||||||
 | 
						<projects> | 
				
			||||||
 | 
						</projects> | 
				
			||||||
 | 
						<buildSpec> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.xtext.ui.shared.xtextBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.jdt.core.javabuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.pde.ManifestBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.pde.SchemaBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
						</buildSpec> | 
				
			||||||
 | 
						<natures> | 
				
			||||||
 | 
							<nature>org.eclipse.xtext.ui.shared.xtextNature</nature> | 
				
			||||||
 | 
							<nature>org.eclipse.jdt.core.javanature</nature> | 
				
			||||||
 | 
							<nature>org.eclipse.pde.PluginNature</nature> | 
				
			||||||
 | 
						</natures> | 
				
			||||||
 | 
					</projectDescription> | 
				
			||||||
@ -0,0 +1,2 @@ | 
				
			|||||||
 | 
					eclipse.preferences.version=1 | 
				
			||||||
 | 
					encoding/<project>=UTF-8 | 
				
			||||||
@ -0,0 +1,7 @@ | 
				
			|||||||
 | 
					eclipse.preferences.version=1 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.compliance=1.8 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.source=1.8 | 
				
			||||||
@ -0,0 +1,26 @@ | 
				
			|||||||
 | 
					Manifest-Version: 1.0 | 
				
			||||||
 | 
					Bundle-ManifestVersion: 2 | 
				
			||||||
 | 
					Bundle-Name: com.irtsaintexupery.xtext.pseim.mapping.ui | 
				
			||||||
 | 
					Bundle-Vendor: My Company | 
				
			||||||
 | 
					Bundle-Version: 1.0.0.qualifier | 
				
			||||||
 | 
					Bundle-SymbolicName: com.irtsaintexupery.xtext.pseim.mapping.ui; singleton:=true | 
				
			||||||
 | 
					Bundle-ActivationPolicy: lazy | 
				
			||||||
 | 
					Require-Bundle: com.irtsaintexupery.xtext.pseim.mapping, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.mapping.ide, | 
				
			||||||
 | 
					 com.irtsaintexupery.pseim, | 
				
			||||||
 | 
					 org.eclipse.xtext.ui, | 
				
			||||||
 | 
					 org.eclipse.xtext.ui.shared, | 
				
			||||||
 | 
					 org.eclipse.xtext.ui.codetemplates.ui, | 
				
			||||||
 | 
					 org.eclipse.ui.editors;bundle-version="3.5.0", | 
				
			||||||
 | 
					 org.eclipse.ui.ide;bundle-version="3.5.0", | 
				
			||||||
 | 
					 org.eclipse.ui, | 
				
			||||||
 | 
					 org.eclipse.compare, | 
				
			||||||
 | 
					 org.eclipse.xtext.builder, | 
				
			||||||
 | 
					 org.eclipse.xtend.lib;resolution:=optional, | 
				
			||||||
 | 
					 org.eclipse.xtext.xbase.lib | 
				
			||||||
 | 
					Import-Package: org.apache.log4j | 
				
			||||||
 | 
					Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | 
				
			||||||
 | 
					Export-Package: com.irtsaintexupery.xtext.pseim.ui.contentassist, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.mapping.ui.internal, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.ui.quickfix | 
				
			||||||
 | 
					Bundle-Activator: com.irtsaintexupery.xtext.pseim.mapping.ui.internal.MappingActivator | 
				
			||||||
@ -0,0 +1,7 @@ | 
				
			|||||||
 | 
					source.. = src/,\ | 
				
			||||||
 | 
					           src-gen/,\ | 
				
			||||||
 | 
					           xtend-gen/ | 
				
			||||||
 | 
					bin.includes = .,\ | 
				
			||||||
 | 
					               META-INF/,\ | 
				
			||||||
 | 
					               plugin.xml | 
				
			||||||
 | 
					bin.excludes = **/*.xtend | 
				
			||||||
@ -0,0 +1,410 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<?eclipse version="3.0"?> | 
				
			||||||
 | 
					<plugin> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.ui.editors"> | 
				
			||||||
 | 
							<editor | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor" | 
				
			||||||
 | 
								contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor" | 
				
			||||||
 | 
								default="true" | 
				
			||||||
 | 
								extensions="mapping" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								name="Mapping Editor"> | 
				
			||||||
 | 
							</editor> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.ui.handlers"> | 
				
			||||||
 | 
							<handler | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<reference | 
				
			||||||
 | 
										definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
									</reference> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
							<handler | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler" | 
				
			||||||
 | 
								commandId="com.irtsaintexupery.xtext.pseim.Mapping.validate"> | 
				
			||||||
 | 
							<activeWhen> | 
				
			||||||
 | 
								<reference | 
				
			||||||
 | 
										definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
								</reference> | 
				
			||||||
 | 
							</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
							<!-- copy qualified name --> | 
				
			||||||
 | 
							<handler | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened" /> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
							<handler | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<and> | 
				
			||||||
 | 
										<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.XtextEditor.opened" /> | 
				
			||||||
 | 
										<iterate> | 
				
			||||||
 | 
											<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" /> | 
				
			||||||
 | 
										</iterate> | 
				
			||||||
 | 
									</and> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.core.expressions.definitions"> | 
				
			||||||
 | 
							<definition id="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
								<and> | 
				
			||||||
 | 
									<reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/> | 
				
			||||||
 | 
									<with variable="activeEditor"> | 
				
			||||||
 | 
										<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" | 
				
			||||||
 | 
											value="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
											forcePluginActivation="true"/> | 
				
			||||||
 | 
									</with> | 
				
			||||||
 | 
								</and> | 
				
			||||||
 | 
							</definition> | 
				
			||||||
 | 
							<definition id="com.irtsaintexupery.xtext.pseim.Mapping.XtextEditor.opened"> | 
				
			||||||
 | 
								<and> | 
				
			||||||
 | 
									<reference definitionId="isXtextEditorActive"/> | 
				
			||||||
 | 
									<with variable="activeEditor"> | 
				
			||||||
 | 
										<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" | 
				
			||||||
 | 
											value="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
											forcePluginActivation="true"/> | 
				
			||||||
 | 
									</with> | 
				
			||||||
 | 
								</and> | 
				
			||||||
 | 
							</definition> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
								point="org.eclipse.ui.preferencePages"> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								name="Mapping"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								category="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping.coloring" | 
				
			||||||
 | 
								name="Syntax Coloring"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								category="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping.templates" | 
				
			||||||
 | 
								name="Templates"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
								point="org.eclipse.ui.propertyPages"> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								name="Mapping"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
								<enabledWhen> | 
				
			||||||
 | 
									<adapt type="org.eclipse.core.resources.IProject"/> | 
				
			||||||
 | 
								</enabledWhen> | 
				
			||||||
 | 
								<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.ui.keywords"> | 
				
			||||||
 | 
							<keyword | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping" | 
				
			||||||
 | 
								label="Mapping"/> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.ui.commands"> | 
				
			||||||
 | 
						<command | 
				
			||||||
 | 
								description="Trigger expensive validation" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping.validate" | 
				
			||||||
 | 
								name="Validate"> | 
				
			||||||
 | 
						</command> | 
				
			||||||
 | 
						<!-- copy qualified name --> | 
				
			||||||
 | 
						<command | 
				
			||||||
 | 
								id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" | 
				
			||||||
 | 
								categoryId="org.eclipse.ui.category.edit" | 
				
			||||||
 | 
								description="Copy the qualified name for the selected element" | 
				
			||||||
 | 
								name="Copy Qualified Name"> | 
				
			||||||
 | 
						</command> | 
				
			||||||
 | 
						<command | 
				
			||||||
 | 
								id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" | 
				
			||||||
 | 
								categoryId="org.eclipse.ui.category.edit" | 
				
			||||||
 | 
								description="Copy the qualified name for the selected element" | 
				
			||||||
 | 
								name="Copy Qualified Name"> | 
				
			||||||
 | 
						</command> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.menus"> | 
				
			||||||
 | 
							<menuContribution | 
				
			||||||
 | 
								locationURI="popup:#TextEditorContext?after=group.edit"> | 
				
			||||||
 | 
								 <command | 
				
			||||||
 | 
									 commandId="com.irtsaintexupery.xtext.pseim.Mapping.validate" | 
				
			||||||
 | 
									 style="push" | 
				
			||||||
 | 
									 tooltip="Trigger expensive validation"> | 
				
			||||||
 | 
								<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
									<reference | 
				
			||||||
 | 
										definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
									</reference> | 
				
			||||||
 | 
								</visibleWhen> | 
				
			||||||
 | 
							</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
							<!-- copy qualified name --> | 
				
			||||||
 | 
							<menuContribution locationURI="popup:#TextEditorContext?after=copy"> | 
				
			||||||
 | 
								<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" | 
				
			||||||
 | 
									style="push" tooltip="Copy Qualified Name"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened" /> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
							<menuContribution locationURI="menu:edit?after=copy"> | 
				
			||||||
 | 
								<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" | 
				
			||||||
 | 
									style="push" tooltip="Copy Qualified Name"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened" /> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
							<menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions"> | 
				
			||||||
 | 
								<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" | 
				
			||||||
 | 
									style="push" tooltip="Copy Qualified Name"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<and> | 
				
			||||||
 | 
											<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.XtextEditor.opened" /> | 
				
			||||||
 | 
											<iterate> | 
				
			||||||
 | 
												<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" /> | 
				
			||||||
 | 
											</iterate> | 
				
			||||||
 | 
										</and> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.menus"> | 
				
			||||||
 | 
							<menuContribution locationURI="popup:#TextEditorContext?endof=group.find"> | 
				
			||||||
 | 
								<command commandId="org.eclipse.xtext.ui.editor.FindReferences"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
										</reference> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.handlers"> | 
				
			||||||
 | 
							<handler | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.editor.FindReferences"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<reference | 
				
			||||||
 | 
										definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
									</reference> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<!-- adding resource factories --> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.emf.ecore.extension_parser"> | 
				
			||||||
 | 
							<parser | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory" | 
				
			||||||
 | 
								type="mapping"> | 
				
			||||||
 | 
							</parser> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.xtext.extension_resourceServiceProvider"> | 
				
			||||||
 | 
							<resourceServiceProvider | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider" | 
				
			||||||
 | 
								uriExtension="mapping"> | 
				
			||||||
 | 
							</resourceServiceProvider> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<!-- marker definitions for com.irtsaintexupery.xtext.pseim.Mapping --> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
								id="mapping.check.fast" | 
				
			||||||
 | 
								name="Mapping Problem" | 
				
			||||||
 | 
								point="org.eclipse.core.resources.markers"> | 
				
			||||||
 | 
							<super type="org.eclipse.xtext.ui.check.fast"/> | 
				
			||||||
 | 
							<persistent value="true"/> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
								id="mapping.check.normal" | 
				
			||||||
 | 
								name="Mapping Problem" | 
				
			||||||
 | 
								point="org.eclipse.core.resources.markers"> | 
				
			||||||
 | 
							<super type="org.eclipse.xtext.ui.check.normal"/> | 
				
			||||||
 | 
							<persistent value="true"/> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
								id="mapping.check.expensive" | 
				
			||||||
 | 
								name="Mapping Problem" | 
				
			||||||
 | 
								point="org.eclipse.core.resources.markers"> | 
				
			||||||
 | 
							<super type="org.eclipse.xtext.ui.check.expensive"/> | 
				
			||||||
 | 
							<persistent value="true"/> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.xtext.builder.participant"> | 
				
			||||||
 | 
							<participant | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant" | 
				
			||||||
 | 
								fileExtensions="mapping"/> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.preferencePages"> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								category="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping.compiler.preferencePage" | 
				
			||||||
 | 
								name="Compiler"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.propertyPages"> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								category="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping.compiler.propertyPage" | 
				
			||||||
 | 
								name="Compiler"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
								<enabledWhen> | 
				
			||||||
 | 
									<adapt type="org.eclipse.core.resources.IProject"/> | 
				
			||||||
 | 
								</enabledWhen> | 
				
			||||||
 | 
								<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.menus"> | 
				
			||||||
 | 
							<menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration"> | 
				
			||||||
 | 
								<command | 
				
			||||||
 | 
									commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand" | 
				
			||||||
 | 
									id="com.irtsaintexupery.xtext.pseim.Mapping.OpenGeneratedCode" | 
				
			||||||
 | 
									style="push"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened" /> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.handlers"> | 
				
			||||||
 | 
							<handler | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened" /> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<!-- Quick Outline --> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.ui.handlers"> | 
				
			||||||
 | 
							<handler  | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<reference | 
				
			||||||
 | 
										definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
									</reference> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
							point="org.eclipse.ui.commands"> | 
				
			||||||
 | 
							<command | 
				
			||||||
 | 
								description="Open the quick outline." | 
				
			||||||
 | 
								id="org.eclipse.xtext.ui.editor.outline.QuickOutline" | 
				
			||||||
 | 
								name="Quick Outline"> | 
				
			||||||
 | 
							</command> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.menus"> | 
				
			||||||
 | 
							<menuContribution | 
				
			||||||
 | 
								locationURI="popup:#TextEditorContext?after=group.open"> | 
				
			||||||
 | 
								<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline" | 
				
			||||||
 | 
									style="push" | 
				
			||||||
 | 
									tooltip="Open Quick Outline"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<reference definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"/> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<!-- quickfix marker resolution generator for com.irtsaintexupery.xtext.pseim.Mapping --> | 
				
			||||||
 | 
						<extension | 
				
			||||||
 | 
								point="org.eclipse.ui.ide.markerResolution"> | 
				
			||||||
 | 
							<markerResolutionGenerator | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" | 
				
			||||||
 | 
								markerType="com.irtsaintexupery.xtext.pseim.mapping.ui.mapping.check.fast"> | 
				
			||||||
 | 
								<attribute | 
				
			||||||
 | 
									name="FIXABLE_KEY" | 
				
			||||||
 | 
									value="true"> | 
				
			||||||
 | 
								</attribute> | 
				
			||||||
 | 
							</markerResolutionGenerator> | 
				
			||||||
 | 
							<markerResolutionGenerator | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" | 
				
			||||||
 | 
								markerType="com.irtsaintexupery.xtext.pseim.mapping.ui.mapping.check.normal"> | 
				
			||||||
 | 
								<attribute | 
				
			||||||
 | 
									name="FIXABLE_KEY" | 
				
			||||||
 | 
									value="true"> | 
				
			||||||
 | 
								</attribute> | 
				
			||||||
 | 
							</markerResolutionGenerator> | 
				
			||||||
 | 
							<markerResolutionGenerator | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" | 
				
			||||||
 | 
								markerType="com.irtsaintexupery.xtext.pseim.mapping.ui.mapping.check.expensive"> | 
				
			||||||
 | 
								<attribute | 
				
			||||||
 | 
									name="FIXABLE_KEY" | 
				
			||||||
 | 
									value="true"> | 
				
			||||||
 | 
								</attribute> | 
				
			||||||
 | 
							</markerResolutionGenerator> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<!-- Rename Refactoring --> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.handlers"> | 
				
			||||||
 | 
							<handler  | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler" | 
				
			||||||
 | 
								commandId="org.eclipse.xtext.ui.refactoring.RenameElement"> | 
				
			||||||
 | 
								<activeWhen> | 
				
			||||||
 | 
									<reference | 
				
			||||||
 | 
										definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
									</reference> | 
				
			||||||
 | 
								</activeWhen> | 
				
			||||||
 | 
							</handler> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.menus"> | 
				
			||||||
 | 
							<menuContribution | 
				
			||||||
 | 
								locationURI="popup:#TextEditorContext?after=group.edit"> | 
				
			||||||
 | 
								<command commandId="org.eclipse.xtext.ui.refactoring.RenameElement" | 
				
			||||||
 | 
									style="push"> | 
				
			||||||
 | 
									<visibleWhen checkEnabled="false"> | 
				
			||||||
 | 
										<reference | 
				
			||||||
 | 
											definitionId="com.irtsaintexupery.xtext.pseim.Mapping.Editor.opened"> | 
				
			||||||
 | 
										</reference> | 
				
			||||||
 | 
									</visibleWhen> | 
				
			||||||
 | 
								</command> | 
				
			||||||
 | 
							</menuContribution> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.preferencePages"> | 
				
			||||||
 | 
							<page | 
				
			||||||
 | 
								category="com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage" | 
				
			||||||
 | 
								id="com.irtsaintexupery.xtext.pseim.Mapping.refactoring" | 
				
			||||||
 | 
								name="Refactoring"> | 
				
			||||||
 | 
								<keywordReference id="com.irtsaintexupery.xtext.pseim.ui.keyword_Mapping"/> | 
				
			||||||
 | 
							</page> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.compare.contentViewers"> | 
				
			||||||
 | 
							<viewer id="com.irtsaintexupery.xtext.pseim.Mapping.compare.contentViewers" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator" | 
				
			||||||
 | 
								extensions="mapping"> | 
				
			||||||
 | 
							</viewer> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.compare.contentMergeViewers"> | 
				
			||||||
 | 
							<viewer id="com.irtsaintexupery.xtext.pseim.Mapping.compare.contentMergeViewers" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator" | 
				
			||||||
 | 
								extensions="mapping" label="Mapping Compare"> | 
				
			||||||
 | 
							</viewer> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.ui.editors.documentProviders"> | 
				
			||||||
 | 
							<provider id="com.irtsaintexupery.xtext.pseim.Mapping.editors.documentProviders" | 
				
			||||||
 | 
								class="com.irtsaintexupery.xtext.pseim.ui.MappingExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider" | 
				
			||||||
 | 
								extensions="mapping"> | 
				
			||||||
 | 
							</provider> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
						<extension point="org.eclipse.team.core.fileTypes"> | 
				
			||||||
 | 
							<fileTypes | 
				
			||||||
 | 
								extension="mapping" | 
				
			||||||
 | 
								type="text"> | 
				
			||||||
 | 
							</fileTypes> | 
				
			||||||
 | 
						</extension> | 
				
			||||||
 | 
					</plugin> | 
				
			||||||
@ -0,0 +1,93 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.mapping.ui.internal; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.common.collect.Maps; | 
				
			||||||
 | 
					import com.google.inject.Guice; | 
				
			||||||
 | 
					import com.google.inject.Injector; | 
				
			||||||
 | 
					import com.google.inject.Module; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.MappingRuntimeModule; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ui.MappingUiModule; | 
				
			||||||
 | 
					import java.util.Collections; | 
				
			||||||
 | 
					import java.util.Map; | 
				
			||||||
 | 
					import org.apache.log4j.Logger; | 
				
			||||||
 | 
					import org.eclipse.ui.plugin.AbstractUIPlugin; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.shared.SharedStateModule; | 
				
			||||||
 | 
					import org.eclipse.xtext.util.Modules2; | 
				
			||||||
 | 
					import org.osgi.framework.BundleContext; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * This class was generated. Customizations should only happen in a newly | 
				
			||||||
 | 
					 * introduced subclass.  | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class MappingActivator extends AbstractUIPlugin { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public static final String COM_IRTSAINTEXUPERY_XTEXT_PSEIM_MAPPING = "com.irtsaintexupery.xtext.pseim.Mapping"; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						private static final Logger logger = Logger.getLogger(MappingActivator.class); | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						private static MappingActivator INSTANCE; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1)); | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void start(BundleContext context) throws Exception { | 
				
			||||||
 | 
							super.start(context); | 
				
			||||||
 | 
							INSTANCE = this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void stop(BundleContext context) throws Exception { | 
				
			||||||
 | 
							injectors.clear(); | 
				
			||||||
 | 
							INSTANCE = null; | 
				
			||||||
 | 
							super.stop(context); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public static MappingActivator getInstance() { | 
				
			||||||
 | 
							return INSTANCE; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public Injector getInjector(String language) { | 
				
			||||||
 | 
							synchronized (injectors) { | 
				
			||||||
 | 
								Injector injector = injectors.get(language); | 
				
			||||||
 | 
								if (injector == null) { | 
				
			||||||
 | 
									injectors.put(language, injector = createInjector(language)); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								return injector; | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						protected Injector createInjector(String language) { | 
				
			||||||
 | 
							try { | 
				
			||||||
 | 
								Module runtimeModule = getRuntimeModule(language); | 
				
			||||||
 | 
								Module sharedStateModule = getSharedStateModule(); | 
				
			||||||
 | 
								Module uiModule = getUiModule(language); | 
				
			||||||
 | 
								Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule); | 
				
			||||||
 | 
								return Guice.createInjector(mergedModule); | 
				
			||||||
 | 
							} catch (Exception e) { | 
				
			||||||
 | 
								logger.error("Failed to create injector for " + language); | 
				
			||||||
 | 
								logger.error(e.getMessage(), e); | 
				
			||||||
 | 
								throw new RuntimeException("Failed to create injector for " + language, e); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						protected Module getRuntimeModule(String grammar) { | 
				
			||||||
 | 
							if (COM_IRTSAINTEXUPERY_XTEXT_PSEIM_MAPPING.equals(grammar)) { | 
				
			||||||
 | 
								return new MappingRuntimeModule(); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							throw new IllegalArgumentException(grammar); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						protected Module getUiModule(String grammar) { | 
				
			||||||
 | 
							if (COM_IRTSAINTEXUPERY_XTEXT_PSEIM_MAPPING.equals(grammar)) { | 
				
			||||||
 | 
								return new MappingUiModule(this); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							throw new IllegalArgumentException(grammar); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						protected Module getSharedStateModule() { | 
				
			||||||
 | 
							return new SharedStateModule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,293 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Binder; | 
				
			||||||
 | 
					import com.google.inject.Provider; | 
				
			||||||
 | 
					import com.google.inject.name.Names; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.MappingParser; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.PartialMappingContentAssistParser; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ide.contentassist.antlr.internal.InternalMappingLexer; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ui.contentassist.MappingProposalProvider; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ui.labeling.MappingDescriptionLabelProvider; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ui.labeling.MappingLabelProvider; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ui.outline.MappingOutlineTreeProvider; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.ui.quickfix.MappingQuickfixProvider; | 
				
			||||||
 | 
					import org.eclipse.compare.IViewerCreator; | 
				
			||||||
 | 
					import org.eclipse.core.resources.IWorkspaceRoot; | 
				
			||||||
 | 
					import org.eclipse.core.resources.ResourcesPlugin; | 
				
			||||||
 | 
					import org.eclipse.jface.viewers.ILabelProvider; | 
				
			||||||
 | 
					import org.eclipse.ui.plugin.AbstractUIPlugin; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.BuilderParticipant; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.EclipseOutputConfigurationProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.IXtextBuilderParticipant; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.builderState.IBuilderState; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.clustering.CurrentDescriptions; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.nature.NatureAddingEditorCallback; | 
				
			||||||
 | 
					import org.eclipse.xtext.builder.preferences.BuilderPreferenceAccess; | 
				
			||||||
 | 
					import org.eclipse.xtext.generator.IContextualOutputConfigurationProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.LexerIdeBindings; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; | 
				
			||||||
 | 
					import org.eclipse.xtext.ide.editor.partialEditing.IPartialEditingContentAssistParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.ITokenDefProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.LexerProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.IResourceDescriptions; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.containers.IAllContainersState; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.service.SingletonBinding; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.DefaultUiModule; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.UIBindings; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.AccessibleCodetemplatesActivator; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.IPartialEditingContentAssistContextFactory; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.PartialEditingContentAssistContextFactory; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.preferences.AdvancedTemplatesPreferencePage; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.preferences.TemplatesLanguageConfiguration; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistrar; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistry; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.compare.DefaultViewerCreator; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.DocumentBasedDirtyResource; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.IXtextEditorCallback; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.FQNPrefixMatcher; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.antlr.AntlrProposalConflictHelper; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.antlr.DelegatingContentAssistContextFactory; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.formatting.IContentFormatterFactory; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.formatting2.ContentFormatterFactory; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.outline.IOutlineTreeProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.quickfix.IssueResolutionProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.IDependentElementsCalculator; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.IReferenceUpdater; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.IRenameRefactoringProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.IRenameStrategy; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.impl.DefaultDependentElementsCalculator; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.impl.DefaultReferenceUpdater; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.impl.DefaultRenameRefactoringProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.impl.DefaultRenameStrategy; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.ui.DefaultRenameSupport; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.ui.IRenameSupport; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.shared.Access; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Manual modifications go to {@link MappingUiModule}. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@SuppressWarnings("all") | 
				
			||||||
 | 
					public abstract class AbstractMappingUiModule extends DefaultUiModule { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public AbstractMappingUiModule(AbstractUIPlugin plugin) { | 
				
			||||||
 | 
							super(plugin); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ImplicitFragment
 | 
				
			||||||
 | 
						public Provider<? extends IAllContainersState> provideIAllContainersState() { | 
				
			||||||
 | 
							return Access.getJavaProjectsState(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() { | 
				
			||||||
 | 
							return AntlrProposalConflictHelper.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public void configureContentAssistLexer(Binder binder) { | 
				
			||||||
 | 
							binder.bind(Lexer.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST)) | 
				
			||||||
 | 
								.to(InternalMappingLexer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public void configureHighlightingLexer(Binder binder) { | 
				
			||||||
 | 
							binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named(LexerIdeBindings.HIGHLIGHTING)) | 
				
			||||||
 | 
								.to(com.irtsaintexupery.xtext.pseim.parser.antlr.internal.InternalMappingLexer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public void configureHighlightingTokenDefProvider(Binder binder) { | 
				
			||||||
 | 
							binder.bind(ITokenDefProvider.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named(LexerIdeBindings.HIGHLIGHTING)) | 
				
			||||||
 | 
								.to(AntlrTokenDefProvider.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends ContentAssistContext.Factory> bindContentAssistContext$Factory() { | 
				
			||||||
 | 
							return DelegatingContentAssistContextFactory.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IContentAssistParser> bindIContentAssistParser() { | 
				
			||||||
 | 
							return MappingParser.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public void configureContentAssistLexerProvider(Binder binder) { | 
				
			||||||
 | 
							binder.bind(InternalMappingLexer.class).toProvider(LexerProvider.create(InternalMappingLexer.class)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
 | 
				
			||||||
 | 
						public Class<? extends PrefixMatcher> bindPrefixMatcher() { | 
				
			||||||
 | 
							return FQNPrefixMatcher.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
 | 
				
			||||||
 | 
						public Class<? extends IDependentElementsCalculator> bindIDependentElementsCalculator() { | 
				
			||||||
 | 
							return DefaultDependentElementsCalculator.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public void configureIResourceDescriptionsBuilderScope(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(CurrentDescriptions.ResourceSetAware.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public Class<? extends IXtextEditorCallback> bindIXtextEditorCallback() { | 
				
			||||||
 | 
							return NatureAddingEditorCallback.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public Class<? extends IContextualOutputConfigurationProvider> bindIContextualOutputConfigurationProvider() { | 
				
			||||||
 | 
							return EclipseOutputConfigurationProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public void configureIResourceDescriptionsPersisted(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(IBuilderState.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public Class<? extends DocumentBasedDirtyResource> bindDocumentBasedDirtyResource() { | 
				
			||||||
 | 
							return PersistentDataAwareDirtyResource.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IXtextBuilderParticipant> bindIXtextBuilderParticipant() { | 
				
			||||||
 | 
							return BuilderParticipant.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
 | 
				
			||||||
 | 
						public IWorkspaceRoot bindIWorkspaceRootToInstance() { | 
				
			||||||
 | 
							return ResourcesPlugin.getWorkspace().getRoot(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
 | 
				
			||||||
 | 
						public void configureBuilderPreferenceStoreInitializer(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IPreferenceStoreInitializer.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named("builderPreferenceInitializer")) | 
				
			||||||
 | 
								.to(BuilderPreferenceAccess.Initializer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.formatting.Formatter2Fragment2
 | 
				
			||||||
 | 
						public Class<? extends IContentFormatterFactory> bindIContentFormatterFactory() { | 
				
			||||||
 | 
							return ContentFormatterFactory.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2
 | 
				
			||||||
 | 
						public Class<? extends ILabelProvider> bindILabelProvider() { | 
				
			||||||
 | 
							return MappingLabelProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2
 | 
				
			||||||
 | 
						public void configureResourceUIServiceLabelProvider(Binder binder) { | 
				
			||||||
 | 
							binder.bind(ILabelProvider.class).annotatedWith(ResourceServiceDescriptionLabelProvider.class).to(MappingDescriptionLabelProvider.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.outline.OutlineTreeProviderFragment2
 | 
				
			||||||
 | 
						public Class<? extends IOutlineTreeProvider> bindIOutlineTreeProvider() { | 
				
			||||||
 | 
							return MappingOutlineTreeProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.outline.OutlineTreeProviderFragment2
 | 
				
			||||||
 | 
						public Class<? extends IOutlineTreeStructureProvider> bindIOutlineTreeStructureProvider() { | 
				
			||||||
 | 
							return MappingOutlineTreeProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.quickfix.QuickfixProviderFragment2
 | 
				
			||||||
 | 
						public Class<? extends IssueResolutionProvider> bindIssueResolutionProvider() { | 
				
			||||||
 | 
							return MappingQuickfixProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.contentAssist.ContentAssistFragment2
 | 
				
			||||||
 | 
						public Class<? extends IContentProposalProvider> bindIContentProposalProvider() { | 
				
			||||||
 | 
							return MappingProposalProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
 | 
				
			||||||
 | 
						public Class<? extends IRenameStrategy> bindIRenameStrategy() { | 
				
			||||||
 | 
							return DefaultRenameStrategy.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
 | 
				
			||||||
 | 
						public Class<? extends IReferenceUpdater> bindIReferenceUpdater() { | 
				
			||||||
 | 
							return DefaultReferenceUpdater.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
 | 
				
			||||||
 | 
						public void configureIPreferenceStoreInitializer(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IPreferenceStoreInitializer.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named("RefactoringPreferences")) | 
				
			||||||
 | 
								.to(RefactoringPreferences.Initializer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
 | 
				
			||||||
 | 
						public Class<? extends IRenameRefactoringProvider> bindIRenameRefactoringProvider() { | 
				
			||||||
 | 
							return DefaultRenameRefactoringProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
 | 
				
			||||||
 | 
						public Class<? extends IRenameSupport.Factory> bindIRenameSupport$Factory() { | 
				
			||||||
 | 
							return DefaultRenameSupport.Factory.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
 | 
				
			||||||
 | 
						public Provider<? extends TemplatesLanguageConfiguration> provideTemplatesLanguageConfiguration() { | 
				
			||||||
 | 
							return AccessibleCodetemplatesActivator.getTemplatesLanguageConfigurationProvider(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
 | 
				
			||||||
 | 
						public Provider<? extends LanguageRegistry> provideLanguageRegistry() { | 
				
			||||||
 | 
							return AccessibleCodetemplatesActivator.getLanguageRegistry(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
 | 
				
			||||||
 | 
						@SingletonBinding(eager=true) | 
				
			||||||
 | 
						public Class<? extends LanguageRegistrar> bindLanguageRegistrar() { | 
				
			||||||
 | 
							return LanguageRegistrar.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends XtextTemplatePreferencePage> bindXtextTemplatePreferencePage() { | 
				
			||||||
 | 
							return AdvancedTemplatesPreferencePage.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IPartialEditingContentAssistParser> bindIPartialEditingContentAssistParser() { | 
				
			||||||
 | 
							return PartialMappingContentAssistParser.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IPartialEditingContentAssistContextFactory> bindIPartialEditingContentAssistContextFactory() { | 
				
			||||||
 | 
							return PartialEditingContentAssistContextFactory.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.compare.CompareFragment2
 | 
				
			||||||
 | 
						public Class<? extends IViewerCreator> bindIViewerCreator() { | 
				
			||||||
 | 
							return DefaultViewerCreator.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ui.compare.CompareFragment2
 | 
				
			||||||
 | 
						public void configureCompareViewerTitle(Binder binder) { | 
				
			||||||
 | 
							binder.bind(String.class).annotatedWith(Names.named(UIBindings.COMPARE_VIEWER_TITLE)).toInstance("Mapping Compare"); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,27 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Injector; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.mapping.ui.internal.MappingActivator; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory; | 
				
			||||||
 | 
					import org.osgi.framework.Bundle; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * This class was generated. Customizations should only happen in a newly | 
				
			||||||
 | 
					 * introduced subclass.  | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class MappingExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected Bundle getBundle() { | 
				
			||||||
 | 
							return MappingActivator.getInstance().getBundle(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected Injector getInjector() { | 
				
			||||||
 | 
							return MappingActivator.getInstance().getInjector(MappingActivator.COM_IRTSAINTEXUPERY_XTEXT_PSEIM_MAPPING); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,73 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui.contentassist; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.EObject; | 
				
			||||||
 | 
					import org.eclipse.xtext.Assignment; | 
				
			||||||
 | 
					import org.eclipse.xtext.CrossReference; | 
				
			||||||
 | 
					import org.eclipse.xtext.RuleCall; | 
				
			||||||
 | 
					import org.eclipse.xtext.common.ui.contentassist.TerminalsProposalProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext; | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.contentassist.ICompletionProposalAcceptor; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Represents a generated, default implementation of superclass {@link TerminalsProposalProvider}. | 
				
			||||||
 | 
					 * Methods are dynamically dispatched on the first parameter, i.e., you can override them  | 
				
			||||||
 | 
					 * with a more concrete subtype.  | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public abstract class AbstractMappingProposalProvider extends TerminalsProposalProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void completePatternApplication_Model(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completePatternApplication_Pattern(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completePatternApplication_CardinalityValues(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completePatternApplication_ModelElement(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completePatternApplication_PortMapping(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completeCardinalityValue_CardinalityElement(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completeCardinalityValue_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completePortMapping_ModelPort(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completePortMapping_PatternPort(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completeGraphElementMapping_ModelGraphElement(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void completeGraphElementMapping_PatternGraphElement(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void complete_PatternApplication(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							// subclasses may override
 | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void complete_CardinalityValue(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							// subclasses may override
 | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void complete_PortMapping(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							// subclasses may override
 | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void complete_GraphElementMapping(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							// subclasses may override
 | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void complete_EInt(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							// subclasses may override
 | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public void complete_QualifiedID(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { | 
				
			||||||
 | 
							// subclasses may override
 | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,13 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Use this class to register components to be used within the Eclipse IDE. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@FinalFieldsConstructor | 
				
			||||||
 | 
					class MappingUiModule extends AbstractMappingUiModule { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,12 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui.contentassist | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#content-assist | 
				
			||||||
 | 
					 * on how to customize the content assistant. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingProposalProvider extends AbstractMappingProposalProvider { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,24 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui.labeling | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Provides labels for IEObjectDescriptions and IResourceDescriptions. | 
				
			||||||
 | 
					 *  | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#label-provider | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingDescriptionLabelProvider extends DefaultDescriptionLabelProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Labels and icons can be computed like this: | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					//	override text(IEObjectDescription ele) { | 
				
			||||||
 | 
					//		ele.name.toString | 
				
			||||||
 | 
					//	} | 
				
			||||||
 | 
					//	  | 
				
			||||||
 | 
					//	override image(IEObjectDescription ele) { | 
				
			||||||
 | 
					//		ele.EClass.name + '.gif' | 
				
			||||||
 | 
					//	} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui.labeling | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject | 
				
			||||||
 | 
					import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Provides labels for EObjects. | 
				
			||||||
 | 
					 *  | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#label-provider | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingLabelProvider extends DefaultEObjectLabelProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Inject | 
				
			||||||
 | 
						new(AdapterFactoryLabelProvider delegate) { | 
				
			||||||
 | 
							super(delegate); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Labels and icons can be computed like this: | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					//	def text(Greeting ele) { | 
				
			||||||
 | 
					//		'A greeting to ' + ele.name | 
				
			||||||
 | 
					//	} | 
				
			||||||
 | 
					// | 
				
			||||||
 | 
					//	def image(Greeting ele) { | 
				
			||||||
 | 
					//		'Greeting.gif' | 
				
			||||||
 | 
					//	} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,15 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui.outline | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Customization of the default outline structure. | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#outline | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingOutlineTreeProvider extends DefaultOutlineTreeProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,24 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.ui.quickfix | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtext.ui.editor.quickfix.DefaultQuickfixProvider | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Custom quickfixes. | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#quick-fixes | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingQuickfixProvider extends DefaultQuickfixProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//	@Fix(MappingValidator.INVALID_NAME) | 
				
			||||||
 | 
					//	def capitalizeName(Issue issue, IssueResolutionAcceptor acceptor) { | 
				
			||||||
 | 
					//		acceptor.accept(issue, 'Capitalize name', 'Capitalize the name.', 'upcase.png') [ | 
				
			||||||
 | 
					//			context | | 
				
			||||||
 | 
					//			val xtextDocument = context.xtextDocument | 
				
			||||||
 | 
					//			val firstLetter = xtextDocument.get(issue.offset, 1) | 
				
			||||||
 | 
					//			xtextDocument.replace(issue.offset, 1, firstLetter.toUpperCase) | 
				
			||||||
 | 
					//		] | 
				
			||||||
 | 
					//	} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					/.MappingUiModule.java._trace | 
				
			||||||
 | 
					/.MappingUiModule.xtendbin | 
				
			||||||
 | 
					/MappingUiModule.java | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					/.MappingProposalProvider.java._trace | 
				
			||||||
 | 
					/.MappingProposalProvider.xtendbin | 
				
			||||||
 | 
					/MappingProposalProvider.java | 
				
			||||||
@ -0,0 +1,6 @@ | 
				
			|||||||
 | 
					/.MappingDescriptionLabelProvider.java._trace | 
				
			||||||
 | 
					/.MappingLabelProvider.java._trace | 
				
			||||||
 | 
					/.MappingDescriptionLabelProvider.xtendbin | 
				
			||||||
 | 
					/.MappingLabelProvider.xtendbin | 
				
			||||||
 | 
					/MappingDescriptionLabelProvider.java | 
				
			||||||
 | 
					/MappingLabelProvider.java | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					/.MappingOutlineTreeProvider.java._trace | 
				
			||||||
 | 
					/.MappingOutlineTreeProvider.xtendbin | 
				
			||||||
 | 
					/MappingOutlineTreeProvider.java | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					/.MappingQuickfixProvider.java._trace | 
				
			||||||
 | 
					/.MappingQuickfixProvider.xtendbin | 
				
			||||||
 | 
					/MappingQuickfixProvider.java | 
				
			||||||
									
										Binary file not shown.
									
								
							
						@ -0,0 +1,9 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<classpath> | 
				
			||||||
 | 
						<classpathentry kind="src" path="src"/> | 
				
			||||||
 | 
						<classpathentry kind="src" path="src-gen"/> | 
				
			||||||
 | 
						<classpathentry kind="src" path="xtend-gen"/> | 
				
			||||||
 | 
						<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> | 
				
			||||||
 | 
						<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> | 
				
			||||||
 | 
						<classpathentry kind="output" path="bin"/> | 
				
			||||||
 | 
					</classpath> | 
				
			||||||
@ -0,0 +1,18 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8" standalone="no"?> | 
				
			||||||
 | 
					<launchConfiguration type="org.eclipse.emf.mwe2.launch.Mwe2LaunchConfigurationType"> | 
				
			||||||
 | 
					<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> | 
				
			||||||
 | 
					<listEntry value="/com.irtsaintexupery.xtext.pseim.mapping"/> | 
				
			||||||
 | 
					</listAttribute> | 
				
			||||||
 | 
					<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> | 
				
			||||||
 | 
					<listEntry value="4"/> | 
				
			||||||
 | 
					</listAttribute> | 
				
			||||||
 | 
					<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> | 
				
			||||||
 | 
					<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/> | 
				
			||||||
 | 
					<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> | 
				
			||||||
 | 
					</listAttribute> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${working_set:<?xml version="1.0" encoding="UTF-8"?>
<resources>
<item path="/com.irtsaintexupery.xtext.pseim.mapping" type="4"/>
<item path="/com.irtsaintexupery.xtext.pseim.mapping.ide" type="4"/>
<item path="/com.irtsaintexupery.xtext.pseim.mapping.ui" type="4"/>
;</resources>}"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="com.irtsaintexupery.xtext.pseim.GenerateMapping"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="com.irtsaintexupery.xtext.pseim.mapping"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m"/> | 
				
			||||||
 | 
					</launchConfiguration> | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8" standalone="no"?> | 
				
			||||||
 | 
					<launchConfiguration type="org.eclipse.pde.ui.RuntimeWorkbench"> | 
				
			||||||
 | 
					<booleanAttribute key="append.args" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="askclear" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="automaticAdd" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="automaticValidate" value="false"/> | 
				
			||||||
 | 
					<stringAttribute key="bad_container_name" value="/com.irtsaintexupery.xtext.pseim.mapping/.launch/"/> | 
				
			||||||
 | 
					<stringAttribute key="bootstrap" value=""/> | 
				
			||||||
 | 
					<stringAttribute key="checked" value="[NONE]"/> | 
				
			||||||
 | 
					<booleanAttribute key="clearConfig" value="false"/> | 
				
			||||||
 | 
					<booleanAttribute key="clearws" value="false"/> | 
				
			||||||
 | 
					<booleanAttribute key="clearwslog" value="false"/> | 
				
			||||||
 | 
					<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/Launch Runtime Eclipse"/> | 
				
			||||||
 | 
					<booleanAttribute key="default" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="includeOptional" value="true"/> | 
				
			||||||
 | 
					<stringAttribute key="location" value="${workspace_loc}/../runtime-EclipseXtext"/> | 
				
			||||||
 | 
					<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> | 
				
			||||||
 | 
					<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/> | 
				
			||||||
 | 
					<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> | 
				
			||||||
 | 
					</listAttribute> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl}"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> | 
				
			||||||
 | 
					<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms40m -Xmx512m"/> | 
				
			||||||
 | 
					<stringAttribute key="pde.version" value="3.3"/> | 
				
			||||||
 | 
					<stringAttribute key="product" value="org.eclipse.platform.ide"/> | 
				
			||||||
 | 
					<booleanAttribute key="show_selected_only" value="false"/> | 
				
			||||||
 | 
					<stringAttribute key="templateConfig" value="${target_home}/configuration/config.ini"/> | 
				
			||||||
 | 
					<booleanAttribute key="tracing" value="false"/> | 
				
			||||||
 | 
					<booleanAttribute key="useDefaultConfig" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="useDefaultConfigArea" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="useProduct" value="true"/> | 
				
			||||||
 | 
					<booleanAttribute key="usefeatures" value="false"/> | 
				
			||||||
 | 
					</launchConfiguration> | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<projectDescription> | 
				
			||||||
 | 
						<name>com.irtsaintexupery.xtext.pseim.mapping</name> | 
				
			||||||
 | 
						<comment></comment> | 
				
			||||||
 | 
						<projects> | 
				
			||||||
 | 
						</projects> | 
				
			||||||
 | 
						<buildSpec> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.xtext.ui.shared.xtextBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.jdt.core.javabuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.pde.ManifestBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
							<buildCommand> | 
				
			||||||
 | 
								<name>org.eclipse.pde.SchemaBuilder</name> | 
				
			||||||
 | 
								<arguments> | 
				
			||||||
 | 
								</arguments> | 
				
			||||||
 | 
							</buildCommand> | 
				
			||||||
 | 
						</buildSpec> | 
				
			||||||
 | 
						<natures> | 
				
			||||||
 | 
							<nature>org.eclipse.xtext.ui.shared.xtextNature</nature> | 
				
			||||||
 | 
							<nature>org.eclipse.jdt.core.javanature</nature> | 
				
			||||||
 | 
							<nature>org.eclipse.pde.PluginNature</nature> | 
				
			||||||
 | 
						</natures> | 
				
			||||||
 | 
					</projectDescription> | 
				
			||||||
@ -0,0 +1,2 @@ | 
				
			|||||||
 | 
					eclipse.preferences.version=1 | 
				
			||||||
 | 
					encoding/<project>=UTF-8 | 
				
			||||||
@ -0,0 +1,7 @@ | 
				
			|||||||
 | 
					eclipse.preferences.version=1 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.compliance=1.8 | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | 
				
			||||||
 | 
					org.eclipse.jdt.core.compiler.source=1.8 | 
				
			||||||
@ -0,0 +1,26 @@ | 
				
			|||||||
 | 
					Manifest-Version: 1.0 | 
				
			||||||
 | 
					Bundle-ManifestVersion: 2 | 
				
			||||||
 | 
					Bundle-Name: com.irtsaintexupery.xtext.pseim.mapping | 
				
			||||||
 | 
					Bundle-Vendor: My Company | 
				
			||||||
 | 
					Bundle-Version: 1.0.0.qualifier | 
				
			||||||
 | 
					Bundle-SymbolicName: com.irtsaintexupery.xtext.pseim.mapping; singleton:=true | 
				
			||||||
 | 
					Bundle-ActivationPolicy: lazy | 
				
			||||||
 | 
					Require-Bundle: com.irtsaintexupery.pseim, | 
				
			||||||
 | 
					 org.eclipse.xtext, | 
				
			||||||
 | 
					 org.eclipse.xtext.xbase, | 
				
			||||||
 | 
					 org.eclipse.equinox.common;bundle-version="3.5.0", | 
				
			||||||
 | 
					 org.eclipse.xtext.xbase.lib, | 
				
			||||||
 | 
					 org.eclipse.xtext.util, | 
				
			||||||
 | 
					 org.eclipse.xtend.lib, | 
				
			||||||
 | 
					 org.antlr.runtime | 
				
			||||||
 | 
					Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | 
				
			||||||
 | 
					Export-Package: com.irtsaintexupery.xtext.pseim.serializer, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.scoping, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.formatting2, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.services, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.generator, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.validation, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.parser.antlr, | 
				
			||||||
 | 
					 com.irtsaintexupery.xtext.pseim.parser.antlr.internal | 
				
			||||||
 | 
					Import-Package: org.apache.log4j | 
				
			||||||
@ -0,0 +1,19 @@ | 
				
			|||||||
 | 
					source.. = src/,\ | 
				
			||||||
 | 
					           src-gen/,\ | 
				
			||||||
 | 
					           xtend-gen/ | 
				
			||||||
 | 
					bin.includes = .,\ | 
				
			||||||
 | 
					               META-INF/ | 
				
			||||||
 | 
					bin.excludes = **/*.mwe2,\ | 
				
			||||||
 | 
					               **/*.xtend | 
				
			||||||
 | 
					additional.bundles = org.eclipse.xtext.xbase,\ | 
				
			||||||
 | 
					                     org.eclipse.xtext.common.types,\ | 
				
			||||||
 | 
					                     org.eclipse.xtext.xtext.generator,\ | 
				
			||||||
 | 
					                     org.eclipse.emf.codegen.ecore,\ | 
				
			||||||
 | 
					                     org.eclipse.emf.mwe.utils,\ | 
				
			||||||
 | 
					                     org.eclipse.emf.mwe2.launch,\ | 
				
			||||||
 | 
					                     org.eclipse.emf.mwe2.lib,\ | 
				
			||||||
 | 
					                     org.objectweb.asm,\ | 
				
			||||||
 | 
					                     org.apache.commons.logging,\ | 
				
			||||||
 | 
					                     org.apache.log4j,\ | 
				
			||||||
 | 
					                     com.ibm.icu,\ | 
				
			||||||
 | 
					                     org.eclipse.xtext.generator | 
				
			||||||
@ -0,0 +1,216 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Binder; | 
				
			||||||
 | 
					import com.google.inject.Provider; | 
				
			||||||
 | 
					import com.google.inject.name.Names; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.formatting2.MappingFormatter; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.generator.MappingGenerator; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.parser.antlr.MappingAntlrTokenFileProvider; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.parser.antlr.MappingParser; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.parser.antlr.internal.InternalMappingLexer; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.scoping.MappingScopeProvider; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.serializer.MappingSemanticSequencer; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.serializer.MappingSyntacticSequencer; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.validation.MappingValidator; | 
				
			||||||
 | 
					import java.util.Properties; | 
				
			||||||
 | 
					import org.eclipse.xtext.Constants; | 
				
			||||||
 | 
					import org.eclipse.xtext.IGrammarAccess; | 
				
			||||||
 | 
					import org.eclipse.xtext.common.services.Ecore2XtextTerminalConverters; | 
				
			||||||
 | 
					import org.eclipse.xtext.conversion.IValueConverterService; | 
				
			||||||
 | 
					import org.eclipse.xtext.formatting2.FormatterPreferenceValuesProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.formatting2.FormatterPreferences; | 
				
			||||||
 | 
					import org.eclipse.xtext.formatting2.IFormatter2; | 
				
			||||||
 | 
					import org.eclipse.xtext.generator.IGenerator2; | 
				
			||||||
 | 
					import org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.naming.IQualifiedNameProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.IParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.ITokenToStringConverter; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.ITokenDefProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.Lexer; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.LexerBindings; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.LexerProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.preferences.IPreferenceValuesProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.IContainer; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.IResourceDescriptions; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.containers.IAllContainersState; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.containers.StateBasedContainerManager; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions; | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.IGlobalScopeProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.IScopeProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.IgnoreCaseLinking; | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.ISerializer; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.impl.Serializer; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.sequencer.ISemanticSequencer; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer; | 
				
			||||||
 | 
					import org.eclipse.xtext.service.DefaultRuntimeModule; | 
				
			||||||
 | 
					import org.eclipse.xtext.service.SingletonBinding; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Manual modifications go to {@link MappingRuntimeModule}. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@SuppressWarnings("all") | 
				
			||||||
 | 
					public abstract class AbstractMappingRuntimeModule extends DefaultRuntimeModule { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						protected Properties properties = null; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void configure(Binder binder) { | 
				
			||||||
 | 
							properties = tryBindProperties(binder, "com/irtsaintexupery/xtext/pseim/Mapping.properties"); | 
				
			||||||
 | 
							super.configure(binder); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public void configureLanguageName(Binder binder) { | 
				
			||||||
 | 
							binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("com.irtsaintexupery.xtext.pseim.Mapping"); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public void configureFileExtensions(Binder binder) { | 
				
			||||||
 | 
							if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null) | 
				
			||||||
 | 
								binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("mapping"); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
 | 
				
			||||||
 | 
						public ClassLoader bindClassLoaderToInstance() { | 
				
			||||||
 | 
							return getClass().getClassLoader(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
 | 
				
			||||||
 | 
						public Class<? extends IGrammarAccess> bindIGrammarAccess() { | 
				
			||||||
 | 
							return MappingGrammarAccess.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
 | 
				
			||||||
 | 
						public Class<? extends ISemanticSequencer> bindISemanticSequencer() { | 
				
			||||||
 | 
							return MappingSemanticSequencer.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
 | 
				
			||||||
 | 
						public Class<? extends ISyntacticSequencer> bindISyntacticSequencer() { | 
				
			||||||
 | 
							return MappingSyntacticSequencer.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
 | 
				
			||||||
 | 
						public Class<? extends ISerializer> bindISerializer() { | 
				
			||||||
 | 
							return Serializer.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IParser> bindIParser() { | 
				
			||||||
 | 
							return MappingParser.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends ITokenToStringConverter> bindITokenToStringConverter() { | 
				
			||||||
 | 
							return AntlrTokenToStringConverter.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() { | 
				
			||||||
 | 
							return MappingAntlrTokenFileProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends Lexer> bindLexer() { | 
				
			||||||
 | 
							return InternalMappingLexer.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends ITokenDefProvider> bindITokenDefProvider() { | 
				
			||||||
 | 
							return AntlrTokenDefProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public Provider<? extends InternalMappingLexer> provideInternalMappingLexer() { | 
				
			||||||
 | 
							return LexerProvider.create(InternalMappingLexer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
 | 
				
			||||||
 | 
						public void configureRuntimeLexer(Binder binder) { | 
				
			||||||
 | 
							binder.bind(Lexer.class) | 
				
			||||||
 | 
								.annotatedWith(Names.named(LexerBindings.RUNTIME)) | 
				
			||||||
 | 
								.to(InternalMappingLexer.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
 | 
				
			||||||
 | 
						@SingletonBinding(eager=true) | 
				
			||||||
 | 
						public Class<? extends MappingValidator> bindMappingValidator() { | 
				
			||||||
 | 
							return MappingValidator.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
 | 
				
			||||||
 | 
						public Class<? extends IScopeProvider> bindIScopeProvider() { | 
				
			||||||
 | 
							return MappingScopeProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
 | 
				
			||||||
 | 
						public void configureIScopeProviderDelegate(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IScopeProvider.class).annotatedWith(Names.named(AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(ImportedNamespaceAwareLocalScopeProvider.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
 | 
				
			||||||
 | 
						public Class<? extends IGlobalScopeProvider> bindIGlobalScopeProvider() { | 
				
			||||||
 | 
							return DefaultGlobalScopeProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
 | 
				
			||||||
 | 
						public void configureIgnoreCaseLinking(Binder binder) { | 
				
			||||||
 | 
							binder.bindConstant().annotatedWith(IgnoreCaseLinking.class).to(false); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
 | 
				
			||||||
 | 
						public Class<? extends IQualifiedNameProvider> bindIQualifiedNameProvider() { | 
				
			||||||
 | 
							return DefaultDeclarativeQualifiedNameProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public Class<? extends IContainer.Manager> bindIContainer$Manager() { | 
				
			||||||
 | 
							return StateBasedContainerManager.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public Class<? extends IAllContainersState.Provider> bindIAllContainersState$Provider() { | 
				
			||||||
 | 
							return ResourceSetBasedAllContainersStateProvider.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public void configureIResourceDescriptions(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IResourceDescriptions.class).to(ResourceSetBasedResourceDescriptions.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
 | 
				
			||||||
 | 
						public void configureIResourceDescriptionsPersisted(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(ResourceSetBasedResourceDescriptions.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
 | 
				
			||||||
 | 
						public Class<? extends IGenerator2> bindIGenerator2() { | 
				
			||||||
 | 
							return MappingGenerator.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.formatting.Formatter2Fragment2
 | 
				
			||||||
 | 
						public Class<? extends IFormatter2> bindIFormatter2() { | 
				
			||||||
 | 
							return MappingFormatter.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.formatting.Formatter2Fragment2
 | 
				
			||||||
 | 
						public void configureFormatterPreferences(Binder binder) { | 
				
			||||||
 | 
							binder.bind(IPreferenceValuesProvider.class).annotatedWith(FormatterPreferences.class).to(FormatterPreferenceValuesProvider.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// contributed by org.eclipse.xtext.xtext.generator.ecore2xtext.Ecore2XtextValueConverterServiceFragment2
 | 
				
			||||||
 | 
						public Class<? extends IValueConverterService> bindIValueConverterService() { | 
				
			||||||
 | 
							return Ecore2XtextTerminalConverters.class; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
									
										Binary file not shown.
									
								
							
						@ -0,0 +1,37 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Guice; | 
				
			||||||
 | 
					import com.google.inject.Injector; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.resource.Resource; | 
				
			||||||
 | 
					import org.eclipse.xtext.ISetup; | 
				
			||||||
 | 
					import org.eclipse.xtext.common.TerminalsStandaloneSetup; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.IResourceFactory; | 
				
			||||||
 | 
					import org.eclipse.xtext.resource.IResourceServiceProvider; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@SuppressWarnings("all") | 
				
			||||||
 | 
					public class MappingStandaloneSetupGenerated implements ISetup { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public Injector createInjectorAndDoEMFRegistration() { | 
				
			||||||
 | 
							TerminalsStandaloneSetup.doSetup(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							Injector injector = createInjector(); | 
				
			||||||
 | 
							register(injector); | 
				
			||||||
 | 
							return injector; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public Injector createInjector() { | 
				
			||||||
 | 
							return Guice.createInjector(new MappingRuntimeModule()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public void register(Injector injector) { | 
				
			||||||
 | 
							IResourceFactory resourceFactory = injector.getInstance(IResourceFactory.class); | 
				
			||||||
 | 
							IResourceServiceProvider serviceProvider = injector.getInstance(IResourceServiceProvider.class); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("mapping", resourceFactory); | 
				
			||||||
 | 
							IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("mapping", serviceProvider); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,16 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.parser.antlr; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.InputStream; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MappingAntlrTokenFileProvider implements IAntlrTokenFileProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public InputStream getAntlrTokenFile() { | 
				
			||||||
 | 
							ClassLoader classLoader = getClass().getClassLoader(); | 
				
			||||||
 | 
							return classLoader.getResourceAsStream("com/irtsaintexupery/xtext/pseim/parser/antlr/internal/InternalMapping.tokens"); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,40 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.parser.antlr; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.parser.antlr.internal.InternalMappingParser; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.AbstractAntlrParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.XtextTokenStream; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MappingParser extends AbstractAntlrParser { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Inject | 
				
			||||||
 | 
						private MappingGrammarAccess grammarAccess; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected void setInitialHiddenTokens(XtextTokenStream tokenStream) { | 
				
			||||||
 | 
							tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected InternalMappingParser createParser(XtextTokenStream stream) { | 
				
			||||||
 | 
							return new InternalMappingParser(stream, getGrammarAccess()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override  | 
				
			||||||
 | 
						protected String getDefaultRuleName() { | 
				
			||||||
 | 
							return "PatternApplication"; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public MappingGrammarAccess getGrammarAccess() { | 
				
			||||||
 | 
							return this.grammarAccess; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void setGrammarAccess(MappingGrammarAccess grammarAccess) { | 
				
			||||||
 | 
							this.grammarAccess = grammarAccess; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,553 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					grammar InternalMapping; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					options { | 
				
			||||||
 | 
						superClass=AbstractInternalAntlrParser; | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@lexer::header { | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.parser.antlr.internal; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Hack: Use our own Lexer superclass by means of import.  | 
				
			||||||
 | 
					// Currently there is no other way to specify the superclass for the lexer. | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.Lexer; | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@parser::header { | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.parser.antlr.internal; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtext.*; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.*; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.impl.*; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.util.EcoreUtil; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.EObject; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.XtextTokenStream; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; | 
				
			||||||
 | 
					import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@parser::members { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 	private MappingGrammarAccess grammarAccess; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public InternalMappingParser(TokenStream input, MappingGrammarAccess grammarAccess) { | 
				
			||||||
 | 
					        this(input); | 
				
			||||||
 | 
					        this.grammarAccess = grammarAccess; | 
				
			||||||
 | 
					        registerRules(grammarAccess.getGrammar()); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override | 
				
			||||||
 | 
					    protected String getFirstRuleName() { | 
				
			||||||
 | 
					    	return "PatternApplication"; | 
				
			||||||
 | 
					   	} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   	@Override | 
				
			||||||
 | 
					   	protected MappingGrammarAccess getGrammarAccess() { | 
				
			||||||
 | 
					   		return grammarAccess; | 
				
			||||||
 | 
					   	} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@rulecatch { | 
				
			||||||
 | 
					    catch (RecognitionException re) { | 
				
			||||||
 | 
					        recover(input,re); | 
				
			||||||
 | 
					        appendSkippedTokens(); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Entry rule entryRulePatternApplication | 
				
			||||||
 | 
					entryRulePatternApplication returns [EObject current=null]: | 
				
			||||||
 | 
						{ newCompositeNode(grammarAccess.getPatternApplicationRule()); } | 
				
			||||||
 | 
						iv_rulePatternApplication=rulePatternApplication | 
				
			||||||
 | 
						{ $current=$iv_rulePatternApplication.current; } | 
				
			||||||
 | 
						EOF; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Rule PatternApplication | 
				
			||||||
 | 
					rulePatternApplication returns [EObject current=null] | 
				
			||||||
 | 
					@init { | 
				
			||||||
 | 
						enterRule(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					@after { | 
				
			||||||
 | 
						leaveRule(); | 
				
			||||||
 | 
					}: | 
				
			||||||
 | 
						( | 
				
			||||||
 | 
							otherlv_0='transform' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_0, grammarAccess.getPatternApplicationAccess().getTransformKeyword_0()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									otherlv_1=RULE_ID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newLeafNode(otherlv_1, grammarAccess.getPatternApplicationAccess().getModelModelCrossReference_1_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
							otherlv_2='using' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_2, grammarAccess.getPatternApplicationAccess().getUsingKeyword_2()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									otherlv_3=RULE_ID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newLeafNode(otherlv_3, grammarAccess.getPatternApplicationAccess().getPatternPatternCrossReference_3_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
							otherlv_4='{' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_4, grammarAccess.getPatternApplicationAccess().getLeftCurlyBracketKeyword_4()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								otherlv_5='multiplicity' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									newLeafNode(otherlv_5, grammarAccess.getPatternApplicationAccess().getMultiplicityKeyword_5_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPatternApplicationAccess().getCardinalityValuesCardinalityValueParserRuleCall_5_1_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										lv_cardinalityValues_6_0=ruleCardinalityValue | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElementForParent(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
											add( | 
				
			||||||
 | 
												$current, | 
				
			||||||
 | 
												"cardinalityValues", | 
				
			||||||
 | 
												lv_cardinalityValues_6_0, | 
				
			||||||
 | 
												"com.irtsaintexupery.xtext.pseim.Mapping.CardinalityValue"); | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPatternApplicationAccess().getCardinalityValuesCardinalityValueParserRuleCall_5_2_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										lv_cardinalityValues_7_0=ruleCardinalityValue | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElementForParent(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
											add( | 
				
			||||||
 | 
												$current, | 
				
			||||||
 | 
												"cardinalityValues", | 
				
			||||||
 | 
												lv_cardinalityValues_7_0, | 
				
			||||||
 | 
												"com.irtsaintexupery.xtext.pseim.Mapping.CardinalityValue"); | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								)* | 
				
			||||||
 | 
							)? | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								otherlv_8='components' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									newLeafNode(otherlv_8, grammarAccess.getPatternApplicationAccess().getComponentsKeyword_6_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPatternApplicationAccess().getModelElementGraphElementMappingParserRuleCall_6_1_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										lv_modelElement_9_0=ruleGraphElementMapping | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElementForParent(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
											add( | 
				
			||||||
 | 
												$current, | 
				
			||||||
 | 
												"modelElement", | 
				
			||||||
 | 
												lv_modelElement_9_0, | 
				
			||||||
 | 
												"com.irtsaintexupery.xtext.pseim.Mapping.GraphElementMapping"); | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPatternApplicationAccess().getModelElementGraphElementMappingParserRuleCall_6_2_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										lv_modelElement_10_0=ruleGraphElementMapping | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElementForParent(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
											add( | 
				
			||||||
 | 
												$current, | 
				
			||||||
 | 
												"modelElement", | 
				
			||||||
 | 
												lv_modelElement_10_0, | 
				
			||||||
 | 
												"com.irtsaintexupery.xtext.pseim.Mapping.GraphElementMapping"); | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								)* | 
				
			||||||
 | 
							)? | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								otherlv_11='ports' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									newLeafNode(otherlv_11, grammarAccess.getPatternApplicationAccess().getPortsKeyword_7_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPatternApplicationAccess().getPortMappingPortMappingParserRuleCall_7_1_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										lv_portMapping_12_0=rulePortMapping | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElementForParent(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
											add( | 
				
			||||||
 | 
												$current, | 
				
			||||||
 | 
												"portMapping", | 
				
			||||||
 | 
												lv_portMapping_12_0, | 
				
			||||||
 | 
												"com.irtsaintexupery.xtext.pseim.Mapping.PortMapping"); | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPatternApplicationAccess().getPortMappingPortMappingParserRuleCall_7_2_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										lv_portMapping_13_0=rulePortMapping | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElementForParent(grammarAccess.getPatternApplicationRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
											add( | 
				
			||||||
 | 
												$current, | 
				
			||||||
 | 
												"portMapping", | 
				
			||||||
 | 
												lv_portMapping_13_0, | 
				
			||||||
 | 
												"com.irtsaintexupery.xtext.pseim.Mapping.PortMapping"); | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								)* | 
				
			||||||
 | 
							)? | 
				
			||||||
 | 
							otherlv_14='}' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_14, grammarAccess.getPatternApplicationAccess().getRightCurlyBracketKeyword_8()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						) | 
				
			||||||
 | 
					; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Entry rule entryRuleCardinalityValue | 
				
			||||||
 | 
					entryRuleCardinalityValue returns [EObject current=null]: | 
				
			||||||
 | 
						{ newCompositeNode(grammarAccess.getCardinalityValueRule()); } | 
				
			||||||
 | 
						iv_ruleCardinalityValue=ruleCardinalityValue | 
				
			||||||
 | 
						{ $current=$iv_ruleCardinalityValue.current; } | 
				
			||||||
 | 
						EOF; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Rule CardinalityValue | 
				
			||||||
 | 
					ruleCardinalityValue returns [EObject current=null] | 
				
			||||||
 | 
					@init { | 
				
			||||||
 | 
						enterRule(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					@after { | 
				
			||||||
 | 
						leaveRule(); | 
				
			||||||
 | 
					}: | 
				
			||||||
 | 
						( | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getCardinalityValueRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newCompositeNode(grammarAccess.getCardinalityValueAccess().getCardinalityElementCardinalityElementCrossReference_0_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									ruleQualifiedID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
							otherlv_1='->' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_1, grammarAccess.getCardinalityValueAccess().getHyphenMinusGreaterThanSignKeyword_1()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newCompositeNode(grammarAccess.getCardinalityValueAccess().getValueEIntParserRuleCall_2_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									lv_value_2_0=ruleEInt | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElementForParent(grammarAccess.getCardinalityValueRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										set( | 
				
			||||||
 | 
											$current, | 
				
			||||||
 | 
											"value", | 
				
			||||||
 | 
											lv_value_2_0, | 
				
			||||||
 | 
											"com.irtsaintexupery.xtext.pseim.Mapping.EInt"); | 
				
			||||||
 | 
										afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
						) | 
				
			||||||
 | 
					; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Entry rule entryRulePortMapping | 
				
			||||||
 | 
					entryRulePortMapping returns [EObject current=null]: | 
				
			||||||
 | 
						{ newCompositeNode(grammarAccess.getPortMappingRule()); } | 
				
			||||||
 | 
						iv_rulePortMapping=rulePortMapping | 
				
			||||||
 | 
						{ $current=$iv_rulePortMapping.current; } | 
				
			||||||
 | 
						EOF; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Rule PortMapping | 
				
			||||||
 | 
					rulePortMapping returns [EObject current=null] | 
				
			||||||
 | 
					@init { | 
				
			||||||
 | 
						enterRule(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					@after { | 
				
			||||||
 | 
						leaveRule(); | 
				
			||||||
 | 
					}: | 
				
			||||||
 | 
						( | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getPortMappingRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newCompositeNode(grammarAccess.getPortMappingAccess().getModelPortBorderElementCrossReference_0_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									ruleQualifiedID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								otherlv_1=',' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									newLeafNode(otherlv_1, grammarAccess.getPortMappingAccess().getCommaKeyword_1_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElement(grammarAccess.getPortMappingRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getPortMappingAccess().getModelPortBorderElementCrossReference_1_1_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										ruleQualifiedID | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							)* | 
				
			||||||
 | 
							otherlv_3='->' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_3, grammarAccess.getPortMappingAccess().getHyphenMinusGreaterThanSignKeyword_2()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getPortMappingRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newCompositeNode(grammarAccess.getPortMappingAccess().getPatternPortBorderElementCrossReference_3_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									ruleQualifiedID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
						) | 
				
			||||||
 | 
					; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Entry rule entryRuleGraphElementMapping | 
				
			||||||
 | 
					entryRuleGraphElementMapping returns [EObject current=null]: | 
				
			||||||
 | 
						{ newCompositeNode(grammarAccess.getGraphElementMappingRule()); } | 
				
			||||||
 | 
						iv_ruleGraphElementMapping=ruleGraphElementMapping | 
				
			||||||
 | 
						{ $current=$iv_ruleGraphElementMapping.current; } | 
				
			||||||
 | 
						EOF; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Rule GraphElementMapping | 
				
			||||||
 | 
					ruleGraphElementMapping returns [EObject current=null] | 
				
			||||||
 | 
					@init { | 
				
			||||||
 | 
						enterRule(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					@after { | 
				
			||||||
 | 
						leaveRule(); | 
				
			||||||
 | 
					}: | 
				
			||||||
 | 
						( | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getGraphElementMappingRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newCompositeNode(grammarAccess.getGraphElementMappingAccess().getModelGraphElementGraphElementCrossReference_0_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									ruleQualifiedID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								otherlv_1=',' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									newLeafNode(otherlv_1, grammarAccess.getGraphElementMappingAccess().getCommaKeyword_1_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									( | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											if ($current==null) { | 
				
			||||||
 | 
												$current = createModelElement(grammarAccess.getGraphElementMappingRule()); | 
				
			||||||
 | 
											} | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											newCompositeNode(grammarAccess.getGraphElementMappingAccess().getModelGraphElementGraphElementCrossReference_1_1_0()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
										ruleQualifiedID | 
				
			||||||
 | 
										{ | 
				
			||||||
 | 
											afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									) | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							)* | 
				
			||||||
 | 
							otherlv_3='->' | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(otherlv_3, grammarAccess.getGraphElementMappingAccess().getHyphenMinusGreaterThanSignKeyword_2()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								( | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										if ($current==null) { | 
				
			||||||
 | 
											$current = createModelElement(grammarAccess.getGraphElementMappingRule()); | 
				
			||||||
 | 
										} | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										newCompositeNode(grammarAccess.getGraphElementMappingAccess().getPatternGraphElementGraphElementCrossReference_3_0()); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									ruleQualifiedID | 
				
			||||||
 | 
									{ | 
				
			||||||
 | 
										afterParserOrEnumRuleCall(); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								) | 
				
			||||||
 | 
							) | 
				
			||||||
 | 
						) | 
				
			||||||
 | 
					; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Entry rule entryRuleEInt | 
				
			||||||
 | 
					entryRuleEInt returns [String current=null]: | 
				
			||||||
 | 
						{ newCompositeNode(grammarAccess.getEIntRule()); } | 
				
			||||||
 | 
						iv_ruleEInt=ruleEInt | 
				
			||||||
 | 
						{ $current=$iv_ruleEInt.current.getText(); } | 
				
			||||||
 | 
						EOF; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Rule EInt | 
				
			||||||
 | 
					ruleEInt returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] | 
				
			||||||
 | 
					@init { | 
				
			||||||
 | 
						enterRule(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					@after { | 
				
			||||||
 | 
						leaveRule(); | 
				
			||||||
 | 
					}: | 
				
			||||||
 | 
						( | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								kw='-' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									$current.merge(kw); | 
				
			||||||
 | 
									newLeafNode(kw, grammarAccess.getEIntAccess().getHyphenMinusKeyword_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							)? | 
				
			||||||
 | 
							this_INT_1=RULE_INT | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								$current.merge(this_INT_1); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(this_INT_1, grammarAccess.getEIntAccess().getINTTerminalRuleCall_1()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						) | 
				
			||||||
 | 
					; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Entry rule entryRuleQualifiedID | 
				
			||||||
 | 
					entryRuleQualifiedID returns [String current=null]: | 
				
			||||||
 | 
						{ newCompositeNode(grammarAccess.getQualifiedIDRule()); } | 
				
			||||||
 | 
						iv_ruleQualifiedID=ruleQualifiedID | 
				
			||||||
 | 
						{ $current=$iv_ruleQualifiedID.current.getText(); } | 
				
			||||||
 | 
						EOF; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Rule QualifiedID | 
				
			||||||
 | 
					ruleQualifiedID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] | 
				
			||||||
 | 
					@init { | 
				
			||||||
 | 
						enterRule(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					@after { | 
				
			||||||
 | 
						leaveRule(); | 
				
			||||||
 | 
					}: | 
				
			||||||
 | 
						( | 
				
			||||||
 | 
							this_ID_0=RULE_ID | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								$current.merge(this_ID_0); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							{ | 
				
			||||||
 | 
								newLeafNode(this_ID_0, grammarAccess.getQualifiedIDAccess().getIDTerminalRuleCall_0()); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							( | 
				
			||||||
 | 
								kw='.' | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									$current.merge(kw); | 
				
			||||||
 | 
									newLeafNode(kw, grammarAccess.getQualifiedIDAccess().getFullStopKeyword_1_0()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								this_ID_2=RULE_ID | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									$current.merge(this_ID_2); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								{ | 
				
			||||||
 | 
									newLeafNode(this_ID_2, grammarAccess.getQualifiedIDAccess().getIDTerminalRuleCall_1_1()); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							)* | 
				
			||||||
 | 
						) | 
				
			||||||
 | 
					; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_INT : ('0'..'9')+; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_STRING : ('"' ('\\' .|~(('\\'|'"')))* '"'|'\'' ('\\' .|~(('\\'|'\'')))* '\''); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_WS : (' '|'\t'|'\r'|'\n')+; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RULE_ANY_OTHER : .; | 
				
			||||||
@ -0,0 +1,29 @@ | 
				
			|||||||
 | 
					','=19 | 
				
			||||||
 | 
					'-'=20 | 
				
			||||||
 | 
					'->'=18 | 
				
			||||||
 | 
					'.'=21 | 
				
			||||||
 | 
					'components'=15 | 
				
			||||||
 | 
					'multiplicity'=14 | 
				
			||||||
 | 
					'ports'=16 | 
				
			||||||
 | 
					'transform'=11 | 
				
			||||||
 | 
					'using'=12 | 
				
			||||||
 | 
					'{'=13 | 
				
			||||||
 | 
					'}'=17 | 
				
			||||||
 | 
					RULE_ANY_OTHER=10 | 
				
			||||||
 | 
					RULE_ID=4 | 
				
			||||||
 | 
					RULE_INT=5 | 
				
			||||||
 | 
					RULE_ML_COMMENT=7 | 
				
			||||||
 | 
					RULE_SL_COMMENT=8 | 
				
			||||||
 | 
					RULE_STRING=6 | 
				
			||||||
 | 
					RULE_WS=9 | 
				
			||||||
 | 
					T__11=11 | 
				
			||||||
 | 
					T__12=12 | 
				
			||||||
 | 
					T__13=13 | 
				
			||||||
 | 
					T__14=14 | 
				
			||||||
 | 
					T__15=15 | 
				
			||||||
 | 
					T__16=16 | 
				
			||||||
 | 
					T__17=17 | 
				
			||||||
 | 
					T__18=18 | 
				
			||||||
 | 
					T__19=19 | 
				
			||||||
 | 
					T__20=20 | 
				
			||||||
 | 
					T__21=21 | 
				
			||||||
									
										
											File diff suppressed because it is too large
											Load Diff
										
									
								
							
						
									
										
											File diff suppressed because it is too large
											Load Diff
										
									
								
							
						@ -0,0 +1,9 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.scoping; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtext.scoping.impl.DelegatingScopeProvider; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public abstract class AbstractMappingScopeProvider extends DelegatingScopeProvider { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,118 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.serializer; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject; | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.CardinalityValue; | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.GraphElementMapping; | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.MappingPackage; | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.PatternApplication; | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.PortMapping; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess; | 
				
			||||||
 | 
					import java.util.Set; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.EObject; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.EPackage; | 
				
			||||||
 | 
					import org.eclipse.xtext.Action; | 
				
			||||||
 | 
					import org.eclipse.xtext.Parameter; | 
				
			||||||
 | 
					import org.eclipse.xtext.ParserRule; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.ISerializationContext; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.acceptor.SequenceFeeder; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@SuppressWarnings("all") | 
				
			||||||
 | 
					public class MappingSemanticSequencer extends AbstractDelegatingSemanticSequencer { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Inject | 
				
			||||||
 | 
						private MappingGrammarAccess grammarAccess; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void sequence(ISerializationContext context, EObject semanticObject) { | 
				
			||||||
 | 
							EPackage epackage = semanticObject.eClass().getEPackage(); | 
				
			||||||
 | 
							ParserRule rule = context.getParserRule(); | 
				
			||||||
 | 
							Action action = context.getAssignedAction(); | 
				
			||||||
 | 
							Set<Parameter> parameters = context.getEnabledBooleanParameters(); | 
				
			||||||
 | 
							if (epackage == MappingPackage.eINSTANCE) | 
				
			||||||
 | 
								switch (semanticObject.eClass().getClassifierID()) { | 
				
			||||||
 | 
								case MappingPackage.CARDINALITY_VALUE: | 
				
			||||||
 | 
									sequence_CardinalityValue(context, (CardinalityValue) semanticObject);  | 
				
			||||||
 | 
									return;  | 
				
			||||||
 | 
								case MappingPackage.GRAPH_ELEMENT_MAPPING: | 
				
			||||||
 | 
									sequence_GraphElementMapping(context, (GraphElementMapping) semanticObject);  | 
				
			||||||
 | 
									return;  | 
				
			||||||
 | 
								case MappingPackage.PATTERN_APPLICATION: | 
				
			||||||
 | 
									sequence_PatternApplication(context, (PatternApplication) semanticObject);  | 
				
			||||||
 | 
									return;  | 
				
			||||||
 | 
								case MappingPackage.PORT_MAPPING: | 
				
			||||||
 | 
									sequence_PortMapping(context, (PortMapping) semanticObject);  | 
				
			||||||
 | 
									return;  | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							if (errorAcceptor != null) | 
				
			||||||
 | 
								errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * Contexts: | 
				
			||||||
 | 
						 *     CardinalityValue returns CardinalityValue | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * Constraint: | 
				
			||||||
 | 
						 *     (cardinalityElement=[CardinalityElement|QualifiedID] value=EInt) | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						protected void sequence_CardinalityValue(ISerializationContext context, CardinalityValue semanticObject) { | 
				
			||||||
 | 
							if (errorAcceptor != null) { | 
				
			||||||
 | 
								if (transientValues.isValueTransient(semanticObject, MappingPackage.Literals.CARDINALITY_VALUE__CARDINALITY_ELEMENT) == ValueTransient.YES) | 
				
			||||||
 | 
									errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, MappingPackage.Literals.CARDINALITY_VALUE__CARDINALITY_ELEMENT)); | 
				
			||||||
 | 
								if (transientValues.isValueTransient(semanticObject, MappingPackage.Literals.CARDINALITY_VALUE__VALUE) == ValueTransient.YES) | 
				
			||||||
 | 
									errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, MappingPackage.Literals.CARDINALITY_VALUE__VALUE)); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); | 
				
			||||||
 | 
							feeder.accept(grammarAccess.getCardinalityValueAccess().getCardinalityElementCardinalityElementQualifiedIDParserRuleCall_0_0_1(), semanticObject.eGet(MappingPackage.Literals.CARDINALITY_VALUE__CARDINALITY_ELEMENT, false)); | 
				
			||||||
 | 
							feeder.accept(grammarAccess.getCardinalityValueAccess().getValueEIntParserRuleCall_2_0(), semanticObject.getValue()); | 
				
			||||||
 | 
							feeder.finish(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * Contexts: | 
				
			||||||
 | 
						 *     GraphElementMapping returns GraphElementMapping | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * Constraint: | 
				
			||||||
 | 
						 *     (modelGraphElement+=[GraphElement|QualifiedID] modelGraphElement+=[GraphElement|QualifiedID]* patternGraphElement=[GraphElement|QualifiedID]) | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						protected void sequence_GraphElementMapping(ISerializationContext context, GraphElementMapping semanticObject) { | 
				
			||||||
 | 
							genericSequencer.createSequence(context, semanticObject); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * Contexts: | 
				
			||||||
 | 
						 *     PatternApplication returns PatternApplication | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * Constraint: | 
				
			||||||
 | 
						 *     ( | 
				
			||||||
 | 
						 *         model=[Model|ID]  | 
				
			||||||
 | 
						 *         pattern=[Pattern|ID]  | 
				
			||||||
 | 
						 *         (cardinalityValues+=CardinalityValue cardinalityValues+=CardinalityValue*)?  | 
				
			||||||
 | 
						 *         (modelElement+=GraphElementMapping modelElement+=GraphElementMapping*)?  | 
				
			||||||
 | 
						 *         (portMapping+=PortMapping portMapping+=PortMapping*)? | 
				
			||||||
 | 
						 *     ) | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						protected void sequence_PatternApplication(ISerializationContext context, PatternApplication semanticObject) { | 
				
			||||||
 | 
							genericSequencer.createSequence(context, semanticObject); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * Contexts: | 
				
			||||||
 | 
						 *     PortMapping returns PortMapping | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * Constraint: | 
				
			||||||
 | 
						 *     (modelPort+=[BorderElement|QualifiedID] modelPort+=[BorderElement|QualifiedID]* patternPort=[BorderElement|QualifiedID]) | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						protected void sequence_PortMapping(ISerializationContext context, PortMapping semanticObject) { | 
				
			||||||
 | 
							genericSequencer.createSequence(context, semanticObject); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,43 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.serializer; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject; | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.EObject; | 
				
			||||||
 | 
					import org.eclipse.xtext.IGrammarAccess; | 
				
			||||||
 | 
					import org.eclipse.xtext.RuleCall; | 
				
			||||||
 | 
					import org.eclipse.xtext.nodemodel.INode; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.analysis.GrammarAlias.AbstractElementAlias; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynTransition; | 
				
			||||||
 | 
					import org.eclipse.xtext.serializer.sequencer.AbstractSyntacticSequencer; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@SuppressWarnings("all") | 
				
			||||||
 | 
					public class MappingSyntacticSequencer extends AbstractSyntacticSequencer { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						protected MappingGrammarAccess grammarAccess; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Inject | 
				
			||||||
 | 
						protected void init(IGrammarAccess access) { | 
				
			||||||
 | 
							grammarAccess = (MappingGrammarAccess) access; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) { | 
				
			||||||
 | 
							return ""; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) { | 
				
			||||||
 | 
							if (transition.getAmbiguousSyntaxes().isEmpty()) return; | 
				
			||||||
 | 
							List<INode> transitionNodes = collectNodes(fromNode, toNode); | 
				
			||||||
 | 
							for (AbstractElementAlias syntax : transition.getAmbiguousSyntaxes()) { | 
				
			||||||
 | 
								List<INode> syntaxNodes = getNodesFor(transitionNodes, syntax); | 
				
			||||||
 | 
								acceptNodes(getLastNavigableState(), syntaxNodes); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,522 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.services; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject; | 
				
			||||||
 | 
					import com.google.inject.Singleton; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import org.eclipse.xtext.Assignment; | 
				
			||||||
 | 
					import org.eclipse.xtext.CrossReference; | 
				
			||||||
 | 
					import org.eclipse.xtext.Grammar; | 
				
			||||||
 | 
					import org.eclipse.xtext.GrammarUtil; | 
				
			||||||
 | 
					import org.eclipse.xtext.Group; | 
				
			||||||
 | 
					import org.eclipse.xtext.Keyword; | 
				
			||||||
 | 
					import org.eclipse.xtext.ParserRule; | 
				
			||||||
 | 
					import org.eclipse.xtext.RuleCall; | 
				
			||||||
 | 
					import org.eclipse.xtext.TerminalRule; | 
				
			||||||
 | 
					import org.eclipse.xtext.common.services.TerminalsGrammarAccess; | 
				
			||||||
 | 
					import org.eclipse.xtext.service.AbstractElementFinder.AbstractGrammarElementFinder; | 
				
			||||||
 | 
					import org.eclipse.xtext.service.GrammarProvider; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Singleton | 
				
			||||||
 | 
					public class MappingGrammarAccess extends AbstractGrammarElementFinder { | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public class PatternApplicationElements extends AbstractParserRuleElementFinder { | 
				
			||||||
 | 
							private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Mapping.PatternApplication"); | 
				
			||||||
 | 
							private final Group cGroup = (Group)rule.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cTransformKeyword_0 = (Keyword)cGroup.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cModelAssignment_1 = (Assignment)cGroup.eContents().get(1); | 
				
			||||||
 | 
							private final CrossReference cModelModelCrossReference_1_0 = (CrossReference)cModelAssignment_1.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cModelModelIDTerminalRuleCall_1_0_1 = (RuleCall)cModelModelCrossReference_1_0.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cUsingKeyword_2 = (Keyword)cGroup.eContents().get(2); | 
				
			||||||
 | 
							private final Assignment cPatternAssignment_3 = (Assignment)cGroup.eContents().get(3); | 
				
			||||||
 | 
							private final CrossReference cPatternPatternCrossReference_3_0 = (CrossReference)cPatternAssignment_3.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cPatternPatternIDTerminalRuleCall_3_0_1 = (RuleCall)cPatternPatternCrossReference_3_0.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4); | 
				
			||||||
 | 
							private final Group cGroup_5 = (Group)cGroup.eContents().get(5); | 
				
			||||||
 | 
							private final Keyword cMultiplicityKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cCardinalityValuesAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1); | 
				
			||||||
 | 
							private final RuleCall cCardinalityValuesCardinalityValueParserRuleCall_5_1_0 = (RuleCall)cCardinalityValuesAssignment_5_1.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cCardinalityValuesAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2); | 
				
			||||||
 | 
							private final RuleCall cCardinalityValuesCardinalityValueParserRuleCall_5_2_0 = (RuleCall)cCardinalityValuesAssignment_5_2.eContents().get(0); | 
				
			||||||
 | 
							private final Group cGroup_6 = (Group)cGroup.eContents().get(6); | 
				
			||||||
 | 
							private final Keyword cComponentsKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cModelElementAssignment_6_1 = (Assignment)cGroup_6.eContents().get(1); | 
				
			||||||
 | 
							private final RuleCall cModelElementGraphElementMappingParserRuleCall_6_1_0 = (RuleCall)cModelElementAssignment_6_1.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cModelElementAssignment_6_2 = (Assignment)cGroup_6.eContents().get(2); | 
				
			||||||
 | 
							private final RuleCall cModelElementGraphElementMappingParserRuleCall_6_2_0 = (RuleCall)cModelElementAssignment_6_2.eContents().get(0); | 
				
			||||||
 | 
							private final Group cGroup_7 = (Group)cGroup.eContents().get(7); | 
				
			||||||
 | 
							private final Keyword cPortsKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cPortMappingAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1); | 
				
			||||||
 | 
							private final RuleCall cPortMappingPortMappingParserRuleCall_7_1_0 = (RuleCall)cPortMappingAssignment_7_1.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cPortMappingAssignment_7_2 = (Assignment)cGroup_7.eContents().get(2); | 
				
			||||||
 | 
							private final RuleCall cPortMappingPortMappingParserRuleCall_7_2_0 = (RuleCall)cPortMappingAssignment_7_2.eContents().get(0); | 
				
			||||||
 | 
							private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//PatternApplication mapping::PatternApplication:
 | 
				
			||||||
 | 
							//	'transform' model=[seim::Model] 'using' pattern=[pseim::Pattern] '{' ('multiplicity'
 | 
				
			||||||
 | 
							//	cardinalityValues+=CardinalityValue cardinalityValues+=CardinalityValue*)? ('components'
 | 
				
			||||||
 | 
							//	modelElement+=GraphElementMapping modelElement+=GraphElementMapping*)? ('ports' portMapping+=PortMapping
 | 
				
			||||||
 | 
							//	portMapping+=PortMapping*)?
 | 
				
			||||||
 | 
							//	'}';
 | 
				
			||||||
 | 
							@Override public ParserRule getRule() { return rule; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'transform' model=[seim::Model] 'using' pattern=[pseim::Pattern] '{' ('multiplicity' cardinalityValues+=CardinalityValue
 | 
				
			||||||
 | 
							//cardinalityValues+=CardinalityValue*)? ('components' modelElement+=GraphElementMapping
 | 
				
			||||||
 | 
							//modelElement+=GraphElementMapping*)? ('ports' portMapping+=PortMapping portMapping+=PortMapping*)? '}'
 | 
				
			||||||
 | 
							public Group getGroup() { return cGroup; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'transform'
 | 
				
			||||||
 | 
							public Keyword getTransformKeyword_0() { return cTransformKeyword_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//model=[seim::Model]
 | 
				
			||||||
 | 
							public Assignment getModelAssignment_1() { return cModelAssignment_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::Model]
 | 
				
			||||||
 | 
							public CrossReference getModelModelCrossReference_1_0() { return cModelModelCrossReference_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//ID
 | 
				
			||||||
 | 
							public RuleCall getModelModelIDTerminalRuleCall_1_0_1() { return cModelModelIDTerminalRuleCall_1_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'using'
 | 
				
			||||||
 | 
							public Keyword getUsingKeyword_2() { return cUsingKeyword_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//pattern=[pseim::Pattern]
 | 
				
			||||||
 | 
							public Assignment getPatternAssignment_3() { return cPatternAssignment_3; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[pseim::Pattern]
 | 
				
			||||||
 | 
							public CrossReference getPatternPatternCrossReference_3_0() { return cPatternPatternCrossReference_3_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//ID
 | 
				
			||||||
 | 
							public RuleCall getPatternPatternIDTerminalRuleCall_3_0_1() { return cPatternPatternIDTerminalRuleCall_3_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'{'
 | 
				
			||||||
 | 
							public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//('multiplicity' cardinalityValues+=CardinalityValue cardinalityValues+=CardinalityValue*)?
 | 
				
			||||||
 | 
							public Group getGroup_5() { return cGroup_5; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'multiplicity'
 | 
				
			||||||
 | 
							public Keyword getMultiplicityKeyword_5_0() { return cMultiplicityKeyword_5_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//cardinalityValues+=CardinalityValue
 | 
				
			||||||
 | 
							public Assignment getCardinalityValuesAssignment_5_1() { return cCardinalityValuesAssignment_5_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//CardinalityValue
 | 
				
			||||||
 | 
							public RuleCall getCardinalityValuesCardinalityValueParserRuleCall_5_1_0() { return cCardinalityValuesCardinalityValueParserRuleCall_5_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//cardinalityValues+=CardinalityValue*
 | 
				
			||||||
 | 
							public Assignment getCardinalityValuesAssignment_5_2() { return cCardinalityValuesAssignment_5_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//CardinalityValue
 | 
				
			||||||
 | 
							public RuleCall getCardinalityValuesCardinalityValueParserRuleCall_5_2_0() { return cCardinalityValuesCardinalityValueParserRuleCall_5_2_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//('components' modelElement+=GraphElementMapping modelElement+=GraphElementMapping*)?
 | 
				
			||||||
 | 
							public Group getGroup_6() { return cGroup_6; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'components'
 | 
				
			||||||
 | 
							public Keyword getComponentsKeyword_6_0() { return cComponentsKeyword_6_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelElement+=GraphElementMapping
 | 
				
			||||||
 | 
							public Assignment getModelElementAssignment_6_1() { return cModelElementAssignment_6_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//GraphElementMapping
 | 
				
			||||||
 | 
							public RuleCall getModelElementGraphElementMappingParserRuleCall_6_1_0() { return cModelElementGraphElementMappingParserRuleCall_6_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelElement+=GraphElementMapping*
 | 
				
			||||||
 | 
							public Assignment getModelElementAssignment_6_2() { return cModelElementAssignment_6_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//GraphElementMapping
 | 
				
			||||||
 | 
							public RuleCall getModelElementGraphElementMappingParserRuleCall_6_2_0() { return cModelElementGraphElementMappingParserRuleCall_6_2_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//('ports' portMapping+=PortMapping portMapping+=PortMapping*)?
 | 
				
			||||||
 | 
							public Group getGroup_7() { return cGroup_7; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'ports'
 | 
				
			||||||
 | 
							public Keyword getPortsKeyword_7_0() { return cPortsKeyword_7_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//portMapping+=PortMapping
 | 
				
			||||||
 | 
							public Assignment getPortMappingAssignment_7_1() { return cPortMappingAssignment_7_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//PortMapping
 | 
				
			||||||
 | 
							public RuleCall getPortMappingPortMappingParserRuleCall_7_1_0() { return cPortMappingPortMappingParserRuleCall_7_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//portMapping+=PortMapping*
 | 
				
			||||||
 | 
							public Assignment getPortMappingAssignment_7_2() { return cPortMappingAssignment_7_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//PortMapping
 | 
				
			||||||
 | 
							public RuleCall getPortMappingPortMappingParserRuleCall_7_2_0() { return cPortMappingPortMappingParserRuleCall_7_2_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'}'
 | 
				
			||||||
 | 
							public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; } | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public class CardinalityValueElements extends AbstractParserRuleElementFinder { | 
				
			||||||
 | 
							private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Mapping.CardinalityValue"); | 
				
			||||||
 | 
							private final Group cGroup = (Group)rule.eContents().get(1); | 
				
			||||||
 | 
							private final Assignment cCardinalityElementAssignment_0 = (Assignment)cGroup.eContents().get(0); | 
				
			||||||
 | 
							private final CrossReference cCardinalityElementCardinalityElementCrossReference_0_0 = (CrossReference)cCardinalityElementAssignment_0.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cCardinalityElementCardinalityElementQualifiedIDParserRuleCall_0_0_1 = (RuleCall)cCardinalityElementCardinalityElementCrossReference_0_0.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cHyphenMinusGreaterThanSignKeyword_1 = (Keyword)cGroup.eContents().get(1); | 
				
			||||||
 | 
							private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2); | 
				
			||||||
 | 
							private final RuleCall cValueEIntParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//CardinalityValue mapping::CardinalityValue:
 | 
				
			||||||
 | 
							//	cardinalityElement=[pseim::CardinalityElement|QualifiedID] '->' value=EInt;
 | 
				
			||||||
 | 
							@Override public ParserRule getRule() { return rule; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//cardinalityElement=[pseim::CardinalityElement|QualifiedID] '->' value=EInt
 | 
				
			||||||
 | 
							public Group getGroup() { return cGroup; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//cardinalityElement=[pseim::CardinalityElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getCardinalityElementAssignment_0() { return cCardinalityElementAssignment_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[pseim::CardinalityElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getCardinalityElementCardinalityElementCrossReference_0_0() { return cCardinalityElementCardinalityElementCrossReference_0_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getCardinalityElementCardinalityElementQualifiedIDParserRuleCall_0_0_1() { return cCardinalityElementCardinalityElementQualifiedIDParserRuleCall_0_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'->'
 | 
				
			||||||
 | 
							public Keyword getHyphenMinusGreaterThanSignKeyword_1() { return cHyphenMinusGreaterThanSignKeyword_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//value=EInt
 | 
				
			||||||
 | 
							public Assignment getValueAssignment_2() { return cValueAssignment_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//EInt
 | 
				
			||||||
 | 
							public RuleCall getValueEIntParserRuleCall_2_0() { return cValueEIntParserRuleCall_2_0; } | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public class PortMappingElements extends AbstractParserRuleElementFinder { | 
				
			||||||
 | 
							private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Mapping.PortMapping"); | 
				
			||||||
 | 
							private final Group cGroup = (Group)rule.eContents().get(1); | 
				
			||||||
 | 
							private final Assignment cModelPortAssignment_0 = (Assignment)cGroup.eContents().get(0); | 
				
			||||||
 | 
							private final CrossReference cModelPortBorderElementCrossReference_0_0 = (CrossReference)cModelPortAssignment_0.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cModelPortBorderElementQualifiedIDParserRuleCall_0_0_1 = (RuleCall)cModelPortBorderElementCrossReference_0_0.eContents().get(1); | 
				
			||||||
 | 
							private final Group cGroup_1 = (Group)cGroup.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cCommaKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cModelPortAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); | 
				
			||||||
 | 
							private final CrossReference cModelPortBorderElementCrossReference_1_1_0 = (CrossReference)cModelPortAssignment_1_1.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cModelPortBorderElementQualifiedIDParserRuleCall_1_1_0_1 = (RuleCall)cModelPortBorderElementCrossReference_1_1_0.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cHyphenMinusGreaterThanSignKeyword_2 = (Keyword)cGroup.eContents().get(2); | 
				
			||||||
 | 
							private final Assignment cPatternPortAssignment_3 = (Assignment)cGroup.eContents().get(3); | 
				
			||||||
 | 
							private final CrossReference cPatternPortBorderElementCrossReference_3_0 = (CrossReference)cPatternPortAssignment_3.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cPatternPortBorderElementQualifiedIDParserRuleCall_3_0_1 = (RuleCall)cPatternPortBorderElementCrossReference_3_0.eContents().get(1); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//PortMapping mapping::PortMapping:
 | 
				
			||||||
 | 
							//	modelPort+=[seim::BorderElement|QualifiedID] (',' modelPort+=[seim::BorderElement|QualifiedID])*
 | 
				
			||||||
 | 
							//	'->'
 | 
				
			||||||
 | 
							//	patternPort=[seim::BorderElement|QualifiedID];
 | 
				
			||||||
 | 
							@Override public ParserRule getRule() { return rule; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelPort+=[seim::BorderElement|QualifiedID] (',' modelPort+=[seim::BorderElement|QualifiedID])* '->'
 | 
				
			||||||
 | 
							//patternPort=[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public Group getGroup() { return cGroup; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelPort+=[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getModelPortAssignment_0() { return cModelPortAssignment_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getModelPortBorderElementCrossReference_0_0() { return cModelPortBorderElementCrossReference_0_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getModelPortBorderElementQualifiedIDParserRuleCall_0_0_1() { return cModelPortBorderElementQualifiedIDParserRuleCall_0_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//(',' modelPort+=[seim::BorderElement|QualifiedID])*
 | 
				
			||||||
 | 
							public Group getGroup_1() { return cGroup_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//','
 | 
				
			||||||
 | 
							public Keyword getCommaKeyword_1_0() { return cCommaKeyword_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelPort+=[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getModelPortAssignment_1_1() { return cModelPortAssignment_1_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getModelPortBorderElementCrossReference_1_1_0() { return cModelPortBorderElementCrossReference_1_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getModelPortBorderElementQualifiedIDParserRuleCall_1_1_0_1() { return cModelPortBorderElementQualifiedIDParserRuleCall_1_1_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'->'
 | 
				
			||||||
 | 
							public Keyword getHyphenMinusGreaterThanSignKeyword_2() { return cHyphenMinusGreaterThanSignKeyword_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//patternPort=[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getPatternPortAssignment_3() { return cPatternPortAssignment_3; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::BorderElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getPatternPortBorderElementCrossReference_3_0() { return cPatternPortBorderElementCrossReference_3_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getPatternPortBorderElementQualifiedIDParserRuleCall_3_0_1() { return cPatternPortBorderElementQualifiedIDParserRuleCall_3_0_1; } | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public class GraphElementMappingElements extends AbstractParserRuleElementFinder { | 
				
			||||||
 | 
							private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Mapping.GraphElementMapping"); | 
				
			||||||
 | 
							private final Group cGroup = (Group)rule.eContents().get(1); | 
				
			||||||
 | 
							private final Assignment cModelGraphElementAssignment_0 = (Assignment)cGroup.eContents().get(0); | 
				
			||||||
 | 
							private final CrossReference cModelGraphElementGraphElementCrossReference_0_0 = (CrossReference)cModelGraphElementAssignment_0.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cModelGraphElementGraphElementQualifiedIDParserRuleCall_0_0_1 = (RuleCall)cModelGraphElementGraphElementCrossReference_0_0.eContents().get(1); | 
				
			||||||
 | 
							private final Group cGroup_1 = (Group)cGroup.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cCommaKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); | 
				
			||||||
 | 
							private final Assignment cModelGraphElementAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); | 
				
			||||||
 | 
							private final CrossReference cModelGraphElementGraphElementCrossReference_1_1_0 = (CrossReference)cModelGraphElementAssignment_1_1.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cModelGraphElementGraphElementQualifiedIDParserRuleCall_1_1_0_1 = (RuleCall)cModelGraphElementGraphElementCrossReference_1_1_0.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cHyphenMinusGreaterThanSignKeyword_2 = (Keyword)cGroup.eContents().get(2); | 
				
			||||||
 | 
							private final Assignment cPatternGraphElementAssignment_3 = (Assignment)cGroup.eContents().get(3); | 
				
			||||||
 | 
							private final CrossReference cPatternGraphElementGraphElementCrossReference_3_0 = (CrossReference)cPatternGraphElementAssignment_3.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cPatternGraphElementGraphElementQualifiedIDParserRuleCall_3_0_1 = (RuleCall)cPatternGraphElementGraphElementCrossReference_3_0.eContents().get(1); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//GraphElementMapping mapping::GraphElementMapping:
 | 
				
			||||||
 | 
							//	modelGraphElement+=[seim::GraphElement|QualifiedID] (',' modelGraphElement+=[seim::GraphElement|QualifiedID])*
 | 
				
			||||||
 | 
							//	'->'
 | 
				
			||||||
 | 
							//	patternGraphElement=[seim::GraphElement|QualifiedID];
 | 
				
			||||||
 | 
							@Override public ParserRule getRule() { return rule; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelGraphElement+=[seim::GraphElement|QualifiedID] (',' modelGraphElement+=[seim::GraphElement|QualifiedID])* '->'
 | 
				
			||||||
 | 
							//patternGraphElement=[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public Group getGroup() { return cGroup; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelGraphElement+=[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getModelGraphElementAssignment_0() { return cModelGraphElementAssignment_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getModelGraphElementGraphElementCrossReference_0_0() { return cModelGraphElementGraphElementCrossReference_0_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getModelGraphElementGraphElementQualifiedIDParserRuleCall_0_0_1() { return cModelGraphElementGraphElementQualifiedIDParserRuleCall_0_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//(',' modelGraphElement+=[seim::GraphElement|QualifiedID])*
 | 
				
			||||||
 | 
							public Group getGroup_1() { return cGroup_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//','
 | 
				
			||||||
 | 
							public Keyword getCommaKeyword_1_0() { return cCommaKeyword_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//modelGraphElement+=[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getModelGraphElementAssignment_1_1() { return cModelGraphElementAssignment_1_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getModelGraphElementGraphElementCrossReference_1_1_0() { return cModelGraphElementGraphElementCrossReference_1_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getModelGraphElementGraphElementQualifiedIDParserRuleCall_1_1_0_1() { return cModelGraphElementGraphElementQualifiedIDParserRuleCall_1_1_0_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'->'
 | 
				
			||||||
 | 
							public Keyword getHyphenMinusGreaterThanSignKeyword_2() { return cHyphenMinusGreaterThanSignKeyword_2; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//patternGraphElement=[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public Assignment getPatternGraphElementAssignment_3() { return cPatternGraphElementAssignment_3; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//[seim::GraphElement|QualifiedID]
 | 
				
			||||||
 | 
							public CrossReference getPatternGraphElementGraphElementCrossReference_3_0() { return cPatternGraphElementGraphElementCrossReference_3_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID
 | 
				
			||||||
 | 
							public RuleCall getPatternGraphElementGraphElementQualifiedIDParserRuleCall_3_0_1() { return cPatternGraphElementGraphElementQualifiedIDParserRuleCall_3_0_1; } | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public class EIntElements extends AbstractParserRuleElementFinder { | 
				
			||||||
 | 
							private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Mapping.EInt"); | 
				
			||||||
 | 
							private final Group cGroup = (Group)rule.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//EInt ecore::EInt:
 | 
				
			||||||
 | 
							//	'-'? INT;
 | 
				
			||||||
 | 
							@Override public ParserRule getRule() { return rule; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'-'? INT
 | 
				
			||||||
 | 
							public Group getGroup() { return cGroup; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'-'?
 | 
				
			||||||
 | 
							public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//INT
 | 
				
			||||||
 | 
							public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; } | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						public class QualifiedIDElements extends AbstractParserRuleElementFinder { | 
				
			||||||
 | 
							private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "com.irtsaintexupery.xtext.pseim.Mapping.QualifiedID"); | 
				
			||||||
 | 
							private final Group cGroup = (Group)rule.eContents().get(1); | 
				
			||||||
 | 
							private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0); | 
				
			||||||
 | 
							private final Group cGroup_1 = (Group)cGroup.eContents().get(1); | 
				
			||||||
 | 
							private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); | 
				
			||||||
 | 
							private final RuleCall cIDTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1); | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//QualifiedID:
 | 
				
			||||||
 | 
							//	ID ('.' ID)*;
 | 
				
			||||||
 | 
							@Override public ParserRule getRule() { return rule; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//ID ('.' ID)*
 | 
				
			||||||
 | 
							public Group getGroup() { return cGroup; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//ID
 | 
				
			||||||
 | 
							public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//('.' ID)*
 | 
				
			||||||
 | 
							public Group getGroup_1() { return cGroup_1; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//'.'
 | 
				
			||||||
 | 
							public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; } | 
				
			||||||
 | 
							 | 
				
			||||||
 | 
							//ID
 | 
				
			||||||
 | 
							public RuleCall getIDTerminalRuleCall_1_1() { return cIDTerminalRuleCall_1_1; } | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						private final PatternApplicationElements pPatternApplication; | 
				
			||||||
 | 
						private final CardinalityValueElements pCardinalityValue; | 
				
			||||||
 | 
						private final PortMappingElements pPortMapping; | 
				
			||||||
 | 
						private final GraphElementMappingElements pGraphElementMapping; | 
				
			||||||
 | 
						private final EIntElements pEInt; | 
				
			||||||
 | 
						private final QualifiedIDElements pQualifiedID; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						private final Grammar grammar; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						private final TerminalsGrammarAccess gaTerminals; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Inject | 
				
			||||||
 | 
						public MappingGrammarAccess(GrammarProvider grammarProvider, | 
				
			||||||
 | 
								TerminalsGrammarAccess gaTerminals) { | 
				
			||||||
 | 
							this.grammar = internalFindGrammar(grammarProvider); | 
				
			||||||
 | 
							this.gaTerminals = gaTerminals; | 
				
			||||||
 | 
							this.pPatternApplication = new PatternApplicationElements(); | 
				
			||||||
 | 
							this.pCardinalityValue = new CardinalityValueElements(); | 
				
			||||||
 | 
							this.pPortMapping = new PortMappingElements(); | 
				
			||||||
 | 
							this.pGraphElementMapping = new GraphElementMappingElements(); | 
				
			||||||
 | 
							this.pEInt = new EIntElements(); | 
				
			||||||
 | 
							this.pQualifiedID = new QualifiedIDElements(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						protected Grammar internalFindGrammar(GrammarProvider grammarProvider) { | 
				
			||||||
 | 
							Grammar grammar = grammarProvider.getGrammar(this); | 
				
			||||||
 | 
							while (grammar != null) { | 
				
			||||||
 | 
								if ("com.irtsaintexupery.xtext.pseim.Mapping".equals(grammar.getName())) { | 
				
			||||||
 | 
									return grammar; | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								List<Grammar> grammars = grammar.getUsedGrammars(); | 
				
			||||||
 | 
								if (!grammars.isEmpty()) { | 
				
			||||||
 | 
									grammar = grammars.iterator().next(); | 
				
			||||||
 | 
								} else { | 
				
			||||||
 | 
									return null; | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							return grammar; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public Grammar getGrammar() { | 
				
			||||||
 | 
							return grammar; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public TerminalsGrammarAccess getTerminalsGrammarAccess() { | 
				
			||||||
 | 
							return gaTerminals; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//PatternApplication mapping::PatternApplication:
 | 
				
			||||||
 | 
						//	'transform' model=[seim::Model] 'using' pattern=[pseim::Pattern] '{' ('multiplicity'
 | 
				
			||||||
 | 
						//	cardinalityValues+=CardinalityValue cardinalityValues+=CardinalityValue*)? ('components'
 | 
				
			||||||
 | 
						//	modelElement+=GraphElementMapping modelElement+=GraphElementMapping*)? ('ports' portMapping+=PortMapping
 | 
				
			||||||
 | 
						//	portMapping+=PortMapping*)?
 | 
				
			||||||
 | 
						//	'}';
 | 
				
			||||||
 | 
						public PatternApplicationElements getPatternApplicationAccess() { | 
				
			||||||
 | 
							return pPatternApplication; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public ParserRule getPatternApplicationRule() { | 
				
			||||||
 | 
							return getPatternApplicationAccess().getRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//CardinalityValue mapping::CardinalityValue:
 | 
				
			||||||
 | 
						//	cardinalityElement=[pseim::CardinalityElement|QualifiedID] '->' value=EInt;
 | 
				
			||||||
 | 
						public CardinalityValueElements getCardinalityValueAccess() { | 
				
			||||||
 | 
							return pCardinalityValue; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public ParserRule getCardinalityValueRule() { | 
				
			||||||
 | 
							return getCardinalityValueAccess().getRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//PortMapping mapping::PortMapping:
 | 
				
			||||||
 | 
						//	modelPort+=[seim::BorderElement|QualifiedID] (',' modelPort+=[seim::BorderElement|QualifiedID])*
 | 
				
			||||||
 | 
						//	'->'
 | 
				
			||||||
 | 
						//	patternPort=[seim::BorderElement|QualifiedID];
 | 
				
			||||||
 | 
						public PortMappingElements getPortMappingAccess() { | 
				
			||||||
 | 
							return pPortMapping; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public ParserRule getPortMappingRule() { | 
				
			||||||
 | 
							return getPortMappingAccess().getRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//GraphElementMapping mapping::GraphElementMapping:
 | 
				
			||||||
 | 
						//	modelGraphElement+=[seim::GraphElement|QualifiedID] (',' modelGraphElement+=[seim::GraphElement|QualifiedID])*
 | 
				
			||||||
 | 
						//	'->'
 | 
				
			||||||
 | 
						//	patternGraphElement=[seim::GraphElement|QualifiedID];
 | 
				
			||||||
 | 
						public GraphElementMappingElements getGraphElementMappingAccess() { | 
				
			||||||
 | 
							return pGraphElementMapping; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public ParserRule getGraphElementMappingRule() { | 
				
			||||||
 | 
							return getGraphElementMappingAccess().getRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//EInt ecore::EInt:
 | 
				
			||||||
 | 
						//	'-'? INT;
 | 
				
			||||||
 | 
						public EIntElements getEIntAccess() { | 
				
			||||||
 | 
							return pEInt; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public ParserRule getEIntRule() { | 
				
			||||||
 | 
							return getEIntAccess().getRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//QualifiedID:
 | 
				
			||||||
 | 
						//	ID ('.' ID)*;
 | 
				
			||||||
 | 
						public QualifiedIDElements getQualifiedIDAccess() { | 
				
			||||||
 | 
							return pQualifiedID; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						public ParserRule getQualifiedIDRule() { | 
				
			||||||
 | 
							return getQualifiedIDAccess().getRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal ID:
 | 
				
			||||||
 | 
						//	'^'? ('a'..'z' | 'A'..'Z' | '_') ('a'..'z' | 'A'..'Z' | '_' | '0'..'9')*;
 | 
				
			||||||
 | 
						public TerminalRule getIDRule() { | 
				
			||||||
 | 
							return gaTerminals.getIDRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal INT returns ecore::EInt:
 | 
				
			||||||
 | 
						//	'0'..'9'+;
 | 
				
			||||||
 | 
						public TerminalRule getINTRule() { | 
				
			||||||
 | 
							return gaTerminals.getINTRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal STRING:
 | 
				
			||||||
 | 
						//	'"' ('\\' . | !('\\' | '"'))* '"' |
 | 
				
			||||||
 | 
						//	"'" ('\\' . | !('\\' | "'"))* "'";
 | 
				
			||||||
 | 
						public TerminalRule getSTRINGRule() { | 
				
			||||||
 | 
							return gaTerminals.getSTRINGRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal ML_COMMENT:
 | 
				
			||||||
 | 
						//	'/*'->'*/';
 | 
				
			||||||
 | 
						public TerminalRule getML_COMMENTRule() { | 
				
			||||||
 | 
							return gaTerminals.getML_COMMENTRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal SL_COMMENT:
 | 
				
			||||||
 | 
						//	'//' !('\n' | '\r')* ('\r'? '\n')?;
 | 
				
			||||||
 | 
						public TerminalRule getSL_COMMENTRule() { | 
				
			||||||
 | 
							return gaTerminals.getSL_COMMENTRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal WS:
 | 
				
			||||||
 | 
						//	' ' | '\t' | '\r' | '\n'+;
 | 
				
			||||||
 | 
						public TerminalRule getWSRule() { | 
				
			||||||
 | 
							return gaTerminals.getWSRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						//terminal ANY_OTHER:
 | 
				
			||||||
 | 
						//	.;
 | 
				
			||||||
 | 
						public TerminalRule getANY_OTHERRule() { | 
				
			||||||
 | 
							return gaTerminals.getANY_OTHERRule(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,20 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.validation; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.ArrayList; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.EPackage; | 
				
			||||||
 | 
					import org.eclipse.xtext.validation.AbstractDeclarativeValidator; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public abstract class AbstractMappingValidator extends AbstractDeclarativeValidator { | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected List<EPackage> getEPackages() { | 
				
			||||||
 | 
							List<EPackage> result = new ArrayList<EPackage>(); | 
				
			||||||
 | 
							result.add(EPackage.Registry.INSTANCE.getEPackage("http://www.irit.fr/patterns/mapping/0.1")); | 
				
			||||||
 | 
							return result; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,47 @@ | 
				
			|||||||
 | 
					module com.irtsaintexupery.xtext.pseim.GenerateMapping | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.xtext.xtext.generator.* | 
				
			||||||
 | 
					import org.eclipse.xtext.xtext.generator.model.project.* | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var rootPath = ".." | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Workflow { | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						component = XtextGenerator { | 
				
			||||||
 | 
							configuration = { | 
				
			||||||
 | 
								project = StandardProjectConfig { | 
				
			||||||
 | 
									baseName = "com.irtsaintexupery.xtext.pseim.mapping" | 
				
			||||||
 | 
									rootPath = rootPath | 
				
			||||||
 | 
									eclipsePlugin = { | 
				
			||||||
 | 
										enabled = true | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									createEclipseMetaData = true | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								code = { | 
				
			||||||
 | 
									encoding = "UTF-8" | 
				
			||||||
 | 
									lineDelimiter = "\n" | 
				
			||||||
 | 
									fileHeader = "/*\n * generated by Xtext \${version}\n */" | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							language = StandardLanguage { | 
				
			||||||
 | 
								name = "com.irtsaintexupery.xtext.pseim.Mapping" | 
				
			||||||
 | 
								fileExtensions = "mapping" | 
				
			||||||
 | 
								referencedResource = "platform:/resource/com.irtsaintexupery.pseim/model/seim.genmodel" | 
				
			||||||
 | 
								referencedResource = "platform:/resource/com.irtsaintexupery.pseim/model/mapping.genmodel" | 
				
			||||||
 | 
								referencedResource = "platform:/resource/com.irtsaintexupery.pseim/model/pseim.genmodel" | 
				
			||||||
 | 
								 | 
				
			||||||
 | 
								fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment2 auto-inject {} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								formatter = { | 
				
			||||||
 | 
									generateStub = true | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								serializer = { | 
				
			||||||
 | 
									generateStub = false | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								validator = { | 
				
			||||||
 | 
									// composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator" | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					// automatically generated by Xtext | 
				
			||||||
 | 
					grammar com.irtsaintexupery.xtext.pseim.Mapping with org.eclipse.xtext.common.Terminals | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "http://www.eclipse.org/emf/2002/Ecore" as ecore | 
				
			||||||
 | 
					import "http://www.irit.fr/patterns/mapping/0.1" as mapping | 
				
			||||||
 | 
					import "http://www.irt-saintexupery.com/pseim/0.1" as pseim | 
				
			||||||
 | 
					import "http://www.irt-saintexupery.com/seim/0.1" as seim | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PatternApplication returns mapping::PatternApplication: | 
				
			||||||
 | 
						'transform' model=[seim::Model|ID] 'using' pattern=[pseim::Pattern|ID] '{' | 
				
			||||||
 | 
							('multiplicity' cardinalityValues+=CardinalityValue (cardinalityValues+=CardinalityValue)* )? | 
				
			||||||
 | 
							('components'  modelElement+=GraphElementMapping (modelElement+=GraphElementMapping)*)? | 
				
			||||||
 | 
							('ports' portMapping+=PortMapping (portMapping+=PortMapping)*)? | 
				
			||||||
 | 
						'}'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CardinalityValue returns mapping::CardinalityValue: | 
				
			||||||
 | 
						cardinalityElement=[pseim::CardinalityElement|QualifiedID] '->' value=EInt; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PortMapping returns mapping::PortMapping: | 
				
			||||||
 | 
						modelPort+=[seim::BorderElement|QualifiedID] (',' modelPort+=[seim::BorderElement|QualifiedID])* | 
				
			||||||
 | 
						'->'  | 
				
			||||||
 | 
						patternPort=[seim::BorderElement|QualifiedID]; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					GraphElementMapping returns mapping::GraphElementMapping: | 
				
			||||||
 | 
						modelGraphElement+=[seim::GraphElement|QualifiedID] (',' modelGraphElement+=[seim::GraphElement|QualifiedID])* | 
				
			||||||
 | 
						'->'  | 
				
			||||||
 | 
						patternGraphElement=[seim::GraphElement|QualifiedID]; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EInt returns ecore::EInt: | 
				
			||||||
 | 
						'-'? INT; | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					QualifiedID: | 
				
			||||||
 | 
						ID('.'ID)*	 | 
				
			||||||
 | 
					; | 
				
			||||||
@ -0,0 +1,11 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Use this class to register components to be used at runtime / without the Equinox extension registry. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingRuntimeModule extends AbstractMappingRuntimeModule { | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,15 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Initialization support for running Xtext languages without Equinox extension registry. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingStandaloneSetup extends MappingStandaloneSetupGenerated { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						def static void doSetup() { | 
				
			||||||
 | 
							new MappingStandaloneSetup().createInjectorAndDoEMFRegistration() | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.formatting2 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.inject.Inject | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.CardinalityValue | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.GraphElementMapping | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.PatternApplication | 
				
			||||||
 | 
					import com.irtsaintexupery.pseim.mapping.PortMapping | 
				
			||||||
 | 
					import com.irtsaintexupery.xtext.pseim.services.MappingGrammarAccess | 
				
			||||||
 | 
					import org.eclipse.xtext.formatting2.AbstractFormatter2 | 
				
			||||||
 | 
					import org.eclipse.xtext.formatting2.IFormattableDocument | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class MappingFormatter extends AbstractFormatter2 { | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						@Inject extension MappingGrammarAccess | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						def dispatch void format(PatternApplication patternApplication, extension IFormattableDocument document) { | 
				
			||||||
 | 
							// TODO: format HiddenRegions around keywords, attributes, cross references, etc.  | 
				
			||||||
 | 
							for (CardinalityValue cardinalityValue : patternApplication.getCardinalityValues()) { | 
				
			||||||
 | 
								cardinalityValue.format; | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							for (PortMapping portMapping : patternApplication.getPortMapping()) { | 
				
			||||||
 | 
								portMapping.format; | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							for (GraphElementMapping graphElementMapping : patternApplication.getModelElement()) { | 
				
			||||||
 | 
								graphElementMapping.format; | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
						// TODO: implement for  | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,25 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.generator | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.eclipse.emf.ecore.resource.Resource | 
				
			||||||
 | 
					import org.eclipse.xtext.generator.AbstractGenerator | 
				
			||||||
 | 
					import org.eclipse.xtext.generator.IFileSystemAccess2 | 
				
			||||||
 | 
					import org.eclipse.xtext.generator.IGeneratorContext | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Generates code from your model files on save. | 
				
			||||||
 | 
					 *  | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#code-generation | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingGenerator extends AbstractGenerator { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						override void doGenerate(Resource resource, IFileSystemAccess2 fsa, IGeneratorContext context) { | 
				
			||||||
 | 
					//		fsa.generateFile('greetings.txt', 'People to greet: ' +  | 
				
			||||||
 | 
					//			resource.allContents | 
				
			||||||
 | 
					//				.filter(Greeting) | 
				
			||||||
 | 
					//				.map[name] | 
				
			||||||
 | 
					//				.join(', ')) | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,15 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.scoping | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * This class contains custom scoping description. | 
				
			||||||
 | 
					 *  | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#scoping | 
				
			||||||
 | 
					 * on how and when to use it. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingScopeProvider extends AbstractMappingScopeProvider { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,25 @@ | 
				
			|||||||
 | 
					/* | 
				
			||||||
 | 
					 * generated by Xtext 2.12.0 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.irtsaintexupery.xtext.pseim.validation | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * This class contains custom validation rules.  | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#validation | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class MappingValidator extends AbstractMappingValidator { | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					//	public static val INVALID_NAME = 'invalidName' | 
				
			||||||
 | 
					// | 
				
			||||||
 | 
					//	@Check | 
				
			||||||
 | 
					//	def checkGreetingStartsWithCapital(Greeting greeting) { | 
				
			||||||
 | 
					//		if (!Character.isUpperCase(greeting.name.charAt(0))) { | 
				
			||||||
 | 
					//			warning('Name should start with a capital',  | 
				
			||||||
 | 
					//					MappingPackage.Literals.GREETING__NAME, | 
				
			||||||
 | 
					//					INVALID_NAME) | 
				
			||||||
 | 
					//		} | 
				
			||||||
 | 
					//	} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,6 @@ | 
				
			|||||||
 | 
					/.MappingRuntimeModule.java._trace | 
				
			||||||
 | 
					/.MappingStandaloneSetup.java._trace | 
				
			||||||
 | 
					/.MappingRuntimeModule.xtendbin | 
				
			||||||
 | 
					/.MappingStandaloneSetup.xtendbin | 
				
			||||||
 | 
					/MappingRuntimeModule.java | 
				
			||||||
 | 
					/MappingStandaloneSetup.java | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					/.MappingFormatter.java._trace | 
				
			||||||
 | 
					/.MappingFormatter.xtendbin | 
				
			||||||
 | 
					/MappingFormatter.java | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					/.MappingGenerator.java._trace | 
				
			||||||
 | 
					/.MappingGenerator.xtendbin | 
				
			||||||
 | 
					/MappingGenerator.java | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue