58 Commits
1_1_0 ... 1.4.1

Author SHA1 Message Date
f7c2614e8a Merge branch 'release/1.4.1' 2023-01-05 16:18:00 +01:00
35a4e7f5cf updates version number 2023-01-05 16:17:49 +01:00
d657ab45b7 Merge branch 'hotfix/offest_propagation' 2023-01-05 14:28:32 +01:00
e2d7a0f180 Merge branch 'hotfix/offest_propagation' into develop 2023-01-05 14:28:32 +01:00
13594cf149 adds offset to registerResources() function for simple regs (#6) 2023-01-05 14:28:23 +01:00
c6efe0f9d2 Merge branch 'release/1.4.0' 2022-11-13 09:15:16 +01:00
262100d648 updates build setup 2022-11-13 09:12:11 +01:00
ab015c3d88 extends standalone help output 2022-11-13 09:12:11 +01:00
30b425dbcf updates build setup 2022-11-13 09:05:00 +01:00
aa866c26a3 extends standalone help output 2022-11-13 09:03:45 +01:00
53bee39661 Merge pull request #5 from Minres/develop
Develop
2022-10-26 15:48:07 +02:00
954bf79d9c updates build system and versions 2022-10-26 15:42:08 +02:00
26fc38b7ee adds more configurability of output 2022-10-26 10:30:44 +02:00
1d2384257e extends configurability of generator 2022-10-24 20:18:49 +02:00
1c9c0ee340 updates target platform and removes product 2022-10-22 12:14:26 +02:00
96c8c1310e add read-only/write-only reg gen 2022-02-15 14:41:58 +01:00
0ced8fcec4 cleanup 2022-02-13 23:09:10 +01:00
9211dfdb68 Merge branch 'master' of https://github.com/Minres/RDL-Editor.git 2022-02-13 22:36:13 +01:00
9fdaf19fea Merge branch 'release/1.3.0' into develop 2022-02-13 22:35:15 +01:00
84d69fef5b Merge branch 'release/1.3.0' 2022-02-13 22:35:15 +01:00
1639239b2b update version numbers 2022-02-13 22:35:04 +01:00
dae876ff84 update templates 2022-02-13 22:12:40 +01:00
a78566675e cleanup build path 2022-02-13 18:17:05 +01:00
291a079bc0 Merge pull request #4 from Minres/develop
fix log4j version
2022-02-13 17:53:00 +01:00
6b1bc92918 fix log4j version 2022-02-13 17:51:51 +01:00
5a62a66f94 update build versions 2022-02-13 17:46:43 +01:00
ffa5058caa remove generated files 2022-02-13 16:53:04 +01:00
c827f261ff update target platform incl. XText/Xtend 2022-02-13 12:40:21 +01:00
564977ed54 fix import warnings 2020-10-08 08:41:59 +02:00
add1d362cc fix #1 'Generate register access functions for FW' 2020-10-08 08:40:04 +02:00
1804692f8d remove not needed target definitions 2020-10-08 07:21:08 +02:00
ef9391a196 gitignore added 2018-07-29 19:30:38 +02:00
2173b0554f Fixed pom dependencies 2018-07-29 13:03:45 +02:00
7e060f2a7e Bumped version numbers 2018-06-04 21:12:17 +02:00
c2ff8f1f67 Fixed NPE in generator 2018-06-04 20:55:10 +02:00
aee194f777 Fixed project wizard and removed JDT/PDE dependency 2018-06-04 20:54:35 +02:00
c7d8d6c417 Cleanup and fix of old settings 2018-06-04 18:49:04 +02:00
acb5b95f5a Fixed pom setting for product naming 2018-06-03 13:02:58 +02:00
e43f205ba7 Fixed version numbers 2018-06-03 11:19:08 +02:00
661a40c5d4 Merge branch 'develop' 2018-06-03 10:52:03 +02:00
1eea28e55c Added hyperlinking and bumped version numbers 2018-06-03 10:48:41 +02:00
9a55dd5a21 Migrated to XText 2.14 and Photon for RDL Editor RCP 2018-06-02 23:41:27 +02:00
cc6d106838 Update to XText 2.13 2018-06-02 18:41:09 +02:00
71f8f3b920 Fixed repo release number 2017-10-11 08:31:19 +02:00
126046430d Merge pull request #2 from Minres/develop
Merge for patch release
2017-10-05 07:21:02 +00:00
30653d0f26 Minor fixes for packaging 2017-10-05 09:18:23 +02:00
dada6724db Removed by accident overwritten function 2017-10-04 10:12:19 +02:00
0e526f811a Fixed size calculation and error generating std::array of plain
datatypes
2017-10-04 10:10:36 +02:00
f950322d05 Fixed build problem and adapted visibility in generated code 2017-10-03 15:52:48 +02:00
a1bcd48a4c Delete CNAME 2017-09-25 22:56:38 +02:00
781b83091c Create CNAME 2017-09-25 22:55:48 +02:00
b6528d97e3 Set theme jekyll-theme-tactile 2017-09-25 22:49:39 +02:00
fd0d001b3f Update README.md 2017-09-25 22:47:48 +02:00
6c7515fd49 Update README.md 2017-09-25 22:46:34 +02:00
8a4469923a Updated ignore list 2017-09-25 21:26:02 +02:00
a973f43fe6 Fixed code generation to use sc_register_indexed for register arrays 2017-09-20 22:36:20 +02:00
8ceb09beed Minor fixes in Main rgd. CLI processing 2017-09-20 10:44:11 +02:00
d865faf127 Changed option processing 2017-09-20 10:37:50 +02:00
231 changed files with 6216 additions and 6216 deletions

3
.gitignore vendored
View File

@ -3,3 +3,6 @@ com.minres.rdl.parent/*/target
*.xtextbin *.xtextbin
*.xtendbin *.xtendbin
*._trace *._trace
/.envrc
/*.py
/*.txt

24
Modulefile Normal file
View File

@ -0,0 +1,24 @@
#%Module######################################################################
##
## Project Module
##
proc ModulesHelp { } {
puts stderr "\tThe TGFS-CG Project Module\n"
puts stderr "\tThis module loads PATHs and variables for accessing Verilator."
}
#set distro [exec /bin/lsb_release -i -s]
#if { $distro == "CentOS" && ![info exists ::env(PROJECT)] && ![info exists ::env(PCP_DIR)] } {
# puts stderr "Don't forget to execute 'scl enable devtoolset-7 bash'"
#}
if {![info exists ::env(PROJECT)] && [file exists $::env(HOME)/.sdkman/candidates/java/17.0.2-open/] != 1} {
puts stderr "Please install java via 'sdk install java 17.0.2-open'!"
prereq java/17.0.2
} else {
prepend-path PATH $::env(HOME)/.sdkman/candidates/java/17.0.2-open/bin
}
setenv PROJECT RDL-Editor

View File

@ -1,37 +1,9 @@
## Welcome to GitHub Pages ## RDL Editor
You can use the [editor on GitHub](https://github.com/Minres/RDL-Editor/edit/master/README.md) to maintain and preview the content for your website in Markdown files. This is an editor for [SystemRDL](http://www.accellera.org/activities/working-groups/systemrdl/).
Whenever you commit to this repository, GitHub Pages will run [Jekyll](https://jekyllrb.com/) to rebuild the pages in your site, from the content in your Markdown files. Quote from Accellera: "SystemRDL is designed to increase productivity, quality, and reuse during the design and development of complex digital systems. It can be used to share IP within and between groups, companies, and consortiums. This is accomplished by specifying a single source for the register description from which all views can be automatically generated, which ensures consistency between multiple views. A view is any output generated from the SystemRDL description, e.g., RTL code or documentation."
### Markdown The editor is build on top of [Eclipse Xtext](http://www.eclipse.org/Xtext/), a framework to build **D**omain **S**pecific **L**anguages (DSL).
Markdown is a lightweight and easy-to-use syntax for styling your writing. It includes conventions for It has a code generator to create the register models using the [SC-Components](https://github.com/Minres/SystemC-Components) library. Due to the nature of Xtext this generator can easily be tailored to various needs.
```markdown
Syntax highlighted code block
# Header 1
## Header 2
### Header 3
- Bulleted
- List
1. Numbered
2. List
**Bold** and _Italic_ and `Code` text
[Link](url) and ![Image](src)
```
For more details see [GitHub Flavored Markdown](https://guides.github.com/features/mastering-markdown/).
### Jekyll Themes
Your Pages site will use the layout and styles from the Jekyll theme you have selected in your [repository settings](https://github.com/Minres/RDL-Editor/settings). The name of this theme is saved in the Jekyll `_config.yml` configuration file.
### Support or Contact
Having trouble with Pages? Check out our [documentation](https://help.github.com/categories/github-pages-basics/) or [contact support](https://github.com/contact) and well help you sort it out.

View File

@ -1 +1 @@
theme: jekyll-theme-minimal theme: jekyll-theme-tactile

View File

@ -2,31 +2,8 @@
<feature <feature
id="com.minres.rdl.feature" id="com.minres.rdl.feature"
label="RDL Feature " label="RDL Feature "
version="1.0.0.qualifier"> version="1.4.1"
provider-name="MINRES Technologies GmbH">
<requires>
<import plugin="org.eclipse.xtext"/>
<import plugin="org.eclipse.xtext.xbase"/>
<import plugin="org.eclipse.equinox.common" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore"/>
<import plugin="org.eclipse.xtext.xbase.lib"/>
<import plugin="org.antlr.runtime"/>
<import plugin="org.eclipse.xtext.util"/>
<import plugin="org.eclipse.xtend.lib"/>
<import plugin="org.eclipse.emf.common"/>
<import plugin="org.eclipse.equinox.preferences"/>
<import plugin="org.apache.log4j"/>
<import plugin="org.eclipse.xtext.ide"/>
<import plugin="org.eclipse.xtext.xbase.ide"/>
<import plugin="org.eclipse.xtext.ui"/>
<import plugin="org.eclipse.xtext.ui.shared"/>
<import plugin="org.eclipse.xtext.ui.codetemplates.ui"/>
<import plugin="org.eclipse.ui.editors" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.ide" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui"/>
<import plugin="org.eclipse.compare"/>
<import plugin="org.eclipse.xtext.builder"/>
</requires>
<plugin <plugin
id="com.minres.rdl" id="com.minres.rdl"

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.feature</artifactId> <artifactId>com.minres.rdl.feature</artifactId>
<packaging>eclipse-feature</packaging> <packaging>eclipse-feature</packaging>

View File

@ -3,7 +3,7 @@
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="src-gen"/> <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="src" path="xtend-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="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -0,0 +1 @@
/xtend-gen/

View File

@ -1,7 +1,10 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=1.8 org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=11

View File

@ -1,15 +1,15 @@
Manifest-Version: 1.0 Manifest-Version: 1.0
Automatic-Module-Name: com.minres.rdl.ide
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: com.minres.rdl.ide Bundle-Name: com.minres.rdl.ide
Bundle-Vendor: My Company Bundle-Vendor: My Company
Bundle-Version: 1.0.0.qualifier Bundle-Version: 1.4.1
Bundle-SymbolicName: com.minres.rdl.ide; singleton:=true Bundle-SymbolicName: com.minres.rdl.ide; singleton:=true
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Require-Bundle: com.minres.rdl, Require-Bundle: com.minres.rdl,
org.eclipse.xtext.ide, org.eclipse.xtext.ide,
org.eclipse.xtext.xbase.ide, org.eclipse.xtext.xbase.ide,
org.antlr.runtime org.antlr.runtime;bundle-version="[3.2.0,3.2.1)"
Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-RequiredExecutionEnvironment: JavaSE-11
Export-Package: com.minres.rdl.ide.contentassist.antlr.internal, Export-Package: com.minres.rdl.ide.contentassist.antlr.internal,
com.minres.rdl.ide.contentassist.antlr com.minres.rdl.ide.contentassist.antlr

View File

@ -4,17 +4,182 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.ide</artifactId> <artifactId>com.minres.rdl.ide</artifactId>
<packaging>eclipse-plugin</packaging> <packaging>eclipse-plugin</packaging>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.lsp4j</groupId>
<artifactId>org.eclipse.lsp4j</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-commons</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-tree</artifactId>
</dependency>
</dependencies>
<build> <build>
<plugins> <plugins>
<plugin> <plugin>
<groupId>org.eclipse.xtend</groupId> <groupId>org.eclipse.xtend</groupId>
<artifactId>xtend-maven-plugin</artifactId> <artifactId>xtend-maven-plugin</artifactId>
</plugin> </plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<configuration>
<pomDependencies>consider</pomDependencies>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.0.1</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/libs</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
<excludeTransitive>true</excludeTransitive>
<excludeArtifactIds>
com.ibm.icu,
org.apache.ant,
org.apache.commons.lang,
org.apache.commons.logging,
org.eclipse.core.commands,
org.eclipse.core.contenttype,
org.eclipse.core.expressions,
org.eclipse.core.filesystem,
org.eclipse.core.jobs,
org.eclipse.core.resources,
org.eclipse.core.runtime,
org.eclipse.core.variables,
org.eclipse.debug.core,
org.eclipse.emf.codegen.ecore,
org.eclipse.emf.codegen,
org.eclipse.emf.mwe.core,
org.eclipse.emf.mwe.utils,
org.eclipse.emf.mwe2.lib,
org.eclipse.emf.mwe2.runtime,
org.eclipse.equinox.app,
org.eclipse.equinox.preferences,
org.eclipse.equinox.registry,
org.eclipse.jdt.core,
org.eclipse.jdt.debug,
org.eclipse.jdt.launching,
org.eclipse.text,
org.eclipse.xtend.typesystem.emf,
org.eclipse.xtend,
</excludeArtifactIds>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.googlecode.addjars-maven-plugin</groupId>
<artifactId>addjars-maven-plugin</artifactId>
<version>1.0.5</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>add-jars</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>${project.build.directory}/libs</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>org.eclipse.xtext.ide.server.ServerLauncher</mainClass>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>plugin.properties</resource>
</transformer>
</transformers>
<artifactSet>
<excludes><!-- avoid duplicate inclusion due to addjars plugin -->
<exclude>*:com.minres.rdl.ide-org.eclipse.lsp4j*</exclude>
<exclude>*:com.minres.rdl.ide-org.eclipse.xtext.xbase.lib*</exclude>
<exclude>*:com.minres.rdl.ide-org.eclipse.xtend.lib*</exclude>
<exclude>*:com.minres.rdl.ide-com.google.guava*</exclude>
<exclude>*:com.minres.rdl.ide-asm*</exclude>
<exclude>*:com.minres.rdl.ide-log4j*</exclude>
<exclude>*:com.minres.rdl.ide-org.objectweb.asm*</exclude>
<exclude>*:com.minres.rdl.ide-org.apache.log4j*</exclude>
</excludes>
</artifactSet>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/INDEX.LIST</exclude>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
<exclude>.options</exclude>
<exclude>.api_description</exclude>
<exclude>*.profile</exclude>
<exclude>*.html</exclude>
<exclude>about.*</exclude>
<exclude>about_files/*</exclude>
<exclude>plugin.xml</exclude>
<exclude>modeling32.png</exclude>
<exclude>systembundle.properties</exclude>
<exclude>profile.list</exclude>
<exclude>**/*._trace</exclude>
<exclude>**/*.g</exclude>
<exclude>**/*.mwe2</exclude>
<exclude>**/*.xtext</exclude>
</excludes>
</filter>
</filters>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>ls</shadedClassifierName>
<minimizeJar>false</minimizeJar>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins> </plugins>
</build> </build>

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ide; package com.minres.rdl.ide;
@ -15,6 +15,9 @@ 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.AntlrProposalConflictHelper;
import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser; 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.contentassist.antlr.internal.Lexer;
import org.eclipse.xtext.ide.refactoring.IRenameStrategy2;
import org.eclipse.xtext.ide.server.rename.IRenameService2;
import org.eclipse.xtext.ide.server.rename.RenameService2;
/** /**
* Manual modifications go to {@link RDLIdeModule}. * Manual modifications go to {@link RDLIdeModule}.
@ -44,4 +47,14 @@ public abstract class AbstractRDLIdeModule extends DefaultIdeModule {
return FQNPrefixMatcher.class; return FQNPrefixMatcher.class;
} }
// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
public Class<? extends IRenameService2> bindIRenameService2() {
return RenameService2.class;
}
// contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
public Class<? extends IRenameStrategy2> bindIRenameStrategy2() {
return IRenameStrategy2.DefaultImpl.class;
}
} }

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ide.contentassist.antlr; package com.minres.rdl.ide.contentassist.antlr;
@ -8,10 +8,9 @@ import java.util.Collections;
import org.eclipse.xtext.AbstractRule; import org.eclipse.xtext.AbstractRule;
import org.eclipse.xtext.ide.editor.contentassist.antlr.FollowElement; 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.contentassist.antlr.internal.AbstractInternalContentAssistParser;
import org.eclipse.xtext.ide.editor.partialEditing.IPartialEditingContentAssistParser;
import org.eclipse.xtext.util.PolymorphicDispatcher; import org.eclipse.xtext.util.PolymorphicDispatcher;
public class PartialRDLContentAssistParser extends RDLParser implements IPartialEditingContentAssistParser { public class PartialRDLContentAssistParser extends RDLParser {
private AbstractRule rule; private AbstractRule rule;

View File

@ -1,23 +1,222 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ide.contentassist.antlr; package com.minres.rdl.ide.contentassist.antlr;
import com.google.common.collect.ImmutableMap;
import com.google.inject.Inject; import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.minres.rdl.ide.contentassist.antlr.internal.InternalRDLParser; import com.minres.rdl.ide.contentassist.antlr.internal.InternalRDLParser;
import com.minres.rdl.services.RDLGrammarAccess; import com.minres.rdl.services.RDLGrammarAccess;
import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.eclipse.xtext.AbstractElement; import org.eclipse.xtext.AbstractElement;
import org.eclipse.xtext.ide.editor.contentassist.antlr.AbstractContentAssistParser; import org.eclipse.xtext.ide.editor.contentassist.antlr.AbstractContentAssistParser;
public class RDLParser extends AbstractContentAssistParser { public class RDLParser extends AbstractContentAssistParser {
@Singleton
public static final class NameMappings {
private final Map<AbstractElement, String> mappings;
@Inject
public NameMappings(RDLGrammarAccess grammarAccess) {
ImmutableMap.Builder<AbstractElement, String> builder = ImmutableMap.builder();
init(builder, grammarAccess);
this.mappings = builder.build();
}
public String getRuleName(AbstractElement element) {
return mappings.get(element);
}
private static void init(ImmutableMap.Builder<AbstractElement, String> builder, RDLGrammarAccess grammarAccess) {
builder.put(grammarAccess.getRootAccess().getAlternatives(), "rule__Root__Alternatives");
builder.put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3(), "rule__PropertyDefinition__Alternatives_3");
builder.put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3_0_4(), "rule__PropertyDefinition__Alternatives_3_0_4");
builder.put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3_1_1(), "rule__PropertyDefinition__Alternatives_3_1_1");
builder.put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3_2_1(), "rule__PropertyDefinition__Alternatives_3_2_1");
builder.put(grammarAccess.getPropertyDefaultAccess().getAlternatives_2(), "rule__PropertyDefault__Alternatives_2");
builder.put(grammarAccess.getComponentDefinitionAccess().getAlternatives_3(), "rule__ComponentDefinition__Alternatives_3");
builder.put(grammarAccess.getInstantiationAccess().getAlternatives_0(), "rule__Instantiation__Alternatives_0");
builder.put(grammarAccess.getRangeAccess().getAlternatives_1(), "rule__Range__Alternatives_1");
builder.put(grammarAccess.getPropertyAssignmentAccess().getAlternatives(), "rule__PropertyAssignment__Alternatives");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getAlternatives(), "rule__ExplicitPropertyAssignment__Alternatives");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getAlternatives_0(), "rule__PostPropertyAssignment__Alternatives_0");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getAlternatives_0_0_2(), "rule__PostPropertyAssignment__Alternatives_0_0_2");
builder.put(grammarAccess.getInstancePropertyRefAccess().getAlternatives_1_1(), "rule__InstancePropertyRef__Alternatives_1_1");
builder.put(grammarAccess.getEntityAccess().getAlternatives(), "rule__Entity__Alternatives");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getAlternatives(), "rule__PropertyAssignmentRhs__Alternatives");
builder.put(grammarAccess.getConcatElemAccess().getAlternatives(), "rule__ConcatElem__Alternatives");
builder.put(grammarAccess.getPropertyRvalueConstantAccess().getAlternatives(), "rule__PropertyRvalueConstant__Alternatives");
builder.put(grammarAccess.getEnumPropertyAccess().getAlternatives_0(), "rule__EnumProperty__Alternatives_0");
builder.put(grammarAccess.getEnumInstanceTypeAccess().getAlternatives(), "rule__EnumInstanceType__Alternatives");
builder.put(grammarAccess.getPropertyTypeNameAccess().getAlternatives(), "rule__PropertyTypeName__Alternatives");
builder.put(grammarAccess.getPropertyComponentAccess().getAlternatives(), "rule__PropertyComponent__Alternatives");
builder.put(grammarAccess.getComponentDefinitionTypeAccess().getAlternatives(), "rule__ComponentDefinitionType__Alternatives");
builder.put(grammarAccess.getPropertyEnumAccess().getAlternatives(), "rule__PropertyEnum__Alternatives");
builder.put(grammarAccess.getPropertyAccess().getAlternatives(), "rule__Property__Alternatives");
builder.put(grammarAccess.getRValueConstantAccess().getAlternatives(), "rule__RValueConstant__Alternatives");
builder.put(grammarAccess.getPropertyModifierAccess().getAlternatives(), "rule__PropertyModifier__Alternatives");
builder.put(grammarAccess.getRootAccess().getGroup_1(), "rule__Root__Group_1__0");
builder.put(grammarAccess.getRootAccess().getGroup_2(), "rule__Root__Group_2__0");
builder.put(grammarAccess.getRootAccess().getGroup_3(), "rule__Root__Group_3__0");
builder.put(grammarAccess.getRootAccess().getGroup_4(), "rule__Root__Group_4__0");
builder.put(grammarAccess.getRootAccess().getGroup_5(), "rule__Root__Group_5__0");
builder.put(grammarAccess.getIncludeAccess().getGroup(), "rule__Include__Group__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup(), "rule__PropertyDefinition__Group__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_0(), "rule__PropertyDefinition__Group_3_0__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_0_4_0(), "rule__PropertyDefinition__Group_3_0_4_0__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_0_4_1(), "rule__PropertyDefinition__Group_3_0_4_1__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_1(), "rule__PropertyDefinition__Group_3_1__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_1_1_0(), "rule__PropertyDefinition__Group_3_1_1_0__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_1_1_1(), "rule__PropertyDefinition__Group_3_1_1_1__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_2(), "rule__PropertyDefinition__Group_3_2__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_2_1_0(), "rule__PropertyDefinition__Group_3_2_1_0__0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_2_1_1(), "rule__PropertyDefinition__Group_3_2_1_1__0");
builder.put(grammarAccess.getPropertyDefaultAccess().getGroup(), "rule__PropertyDefault__Group__0");
builder.put(grammarAccess.getPropertyUsageAccess().getGroup(), "rule__PropertyUsage__Group__0");
builder.put(grammarAccess.getPropertyUsageAccess().getGroup_3(), "rule__PropertyUsage__Group_3__0");
builder.put(grammarAccess.getComponentDefinitionAccess().getGroup(), "rule__ComponentDefinition__Group__0");
builder.put(grammarAccess.getComponentDefinitionAccess().getGroup_3_0(), "rule__ComponentDefinition__Group_3_0__0");
builder.put(grammarAccess.getComponentDefinitionAccess().getGroup_3_1(), "rule__ComponentDefinition__Group_3_1__0");
builder.put(grammarAccess.getComponentDefinitionAccess().getGroup_3_2(), "rule__ComponentDefinition__Group_3_2__0");
builder.put(grammarAccess.getComponentDefinitionAccess().getGroup_3_3(), "rule__ComponentDefinition__Group_3_3__0");
builder.put(grammarAccess.getInstantiationAccess().getGroup(), "rule__Instantiation__Group__0");
builder.put(grammarAccess.getInstantiationAccess().getGroup_0_0(), "rule__Instantiation__Group_0_0__0");
builder.put(grammarAccess.getInstantiationAccess().getGroup_0_0_1(), "rule__Instantiation__Group_0_0_1__0");
builder.put(grammarAccess.getInstantiationAccess().getGroup_0_1(), "rule__Instantiation__Group_0_1__0");
builder.put(grammarAccess.getInstantiationAccess().getGroup_2(), "rule__Instantiation__Group_2__0");
builder.put(grammarAccess.getComponentInstanceAccess().getGroup(), "rule__ComponentInstance__Group__0");
builder.put(grammarAccess.getComponentInstanceAccess().getGroup_2(), "rule__ComponentInstance__Group_2__0");
builder.put(grammarAccess.getComponentInstanceAccess().getGroup_3(), "rule__ComponentInstance__Group_3__0");
builder.put(grammarAccess.getComponentInstanceAccess().getGroup_4(), "rule__ComponentInstance__Group_4__0");
builder.put(grammarAccess.getComponentInstanceAccess().getGroup_5(), "rule__ComponentInstance__Group_5__0");
builder.put(grammarAccess.getRangeAccess().getGroup(), "rule__Range__Group__0");
builder.put(grammarAccess.getRangeAccess().getGroup_1_0(), "rule__Range__Group_1_0__0");
builder.put(grammarAccess.getDefaultProperyAssignmentAccess().getGroup(), "rule__DefaultProperyAssignment__Group__0");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getGroup_0(), "rule__ExplicitPropertyAssignment__Group_0__0");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getGroup_1(), "rule__ExplicitPropertyAssignment__Group_1__0");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getGroup_1_1(), "rule__ExplicitPropertyAssignment__Group_1_1__0");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getGroup(), "rule__PostPropertyAssignment__Group__0");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getGroup_0_0(), "rule__PostPropertyAssignment__Group_0_0__0");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getGroup_1(), "rule__PostPropertyAssignment__Group_1__0");
builder.put(grammarAccess.getInstancePropertyRefAccess().getGroup(), "rule__InstancePropertyRef__Group__0");
builder.put(grammarAccess.getInstancePropertyRefAccess().getGroup_1(), "rule__InstancePropertyRef__Group_1__0");
builder.put(grammarAccess.getInstanceRefAccess().getGroup(), "rule__InstanceRef__Group__0");
builder.put(grammarAccess.getInstanceRefAccess().getGroup_1(), "rule__InstanceRef__Group_1__0");
builder.put(grammarAccess.getHierInstanceRefAccess().getGroup(), "rule__HierInstanceRef__Group__0");
builder.put(grammarAccess.getHierInstanceRefAccess().getGroup_1(), "rule__HierInstanceRef__Group_1__0");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getGroup_2(), "rule__PropertyAssignmentRhs__Group_2__0");
builder.put(grammarAccess.getConcatAccess().getGroup(), "rule__Concat__Group__0");
builder.put(grammarAccess.getConcatAccess().getGroup_2(), "rule__Concat__Group_2__0");
builder.put(grammarAccess.getEnumDefinitionAccess().getGroup(), "rule__EnumDefinition__Group__0");
builder.put(grammarAccess.getEnumBodyAccess().getGroup(), "rule__EnumBody__Group__0");
builder.put(grammarAccess.getEnumEntryAccess().getGroup(), "rule__EnumEntry__Group__0");
builder.put(grammarAccess.getEnumEntryAccess().getGroup_3(), "rule__EnumEntry__Group_3__0");
builder.put(grammarAccess.getEnumPropertyAccess().getGroup(), "rule__EnumProperty__Group__0");
builder.put(grammarAccess.getEnumPropertyAccess().getGroup_0_0(), "rule__EnumProperty__Group_0_0__0");
builder.put(grammarAccess.getEnumPropertyAccess().getGroup_0_1(), "rule__EnumProperty__Group_0_1__0");
builder.put(grammarAccess.getRootAccess().getIncludesAssignment_0(), "rule__Root__IncludesAssignment_0");
builder.put(grammarAccess.getRootAccess().getComponentDefinitionsAssignment_1_0(), "rule__Root__ComponentDefinitionsAssignment_1_0");
builder.put(grammarAccess.getRootAccess().getEnumDefinitionsAssignment_2_0(), "rule__Root__EnumDefinitionsAssignment_2_0");
builder.put(grammarAccess.getRootAccess().getInstantiationsAssignment_3_0(), "rule__Root__InstantiationsAssignment_3_0");
builder.put(grammarAccess.getRootAccess().getPropertyAssignmentsAssignment_4_0(), "rule__Root__PropertyAssignmentsAssignment_4_0");
builder.put(grammarAccess.getRootAccess().getPropertyDefinitionsAssignment_5_0(), "rule__Root__PropertyDefinitionsAssignment_5_0");
builder.put(grammarAccess.getIncludeAccess().getImportURIAssignment_1(), "rule__Include__ImportURIAssignment_1");
builder.put(grammarAccess.getPropertyDefinitionAccess().getNameAssignment_1(), "rule__PropertyDefinition__NameAssignment_1");
builder.put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_0_2(), "rule__PropertyDefinition__TypeAssignment_3_0_2");
builder.put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_0_4_0_0(), "rule__PropertyDefinition__UsageAssignment_3_0_4_0_0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_0_4_0_1(), "rule__PropertyDefinition__DefaultAssignment_3_0_4_0_1");
builder.put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_0_4_1_0(), "rule__PropertyDefinition__DefaultAssignment_3_0_4_1_0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_0_4_1_1(), "rule__PropertyDefinition__UsageAssignment_3_0_4_1_1");
builder.put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_1_0(), "rule__PropertyDefinition__UsageAssignment_3_1_0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_1_1_0_2(), "rule__PropertyDefinition__TypeAssignment_3_1_1_0_2");
builder.put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_1_1_0_4(), "rule__PropertyDefinition__DefaultAssignment_3_1_1_0_4");
builder.put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_1_1_1_0(), "rule__PropertyDefinition__DefaultAssignment_3_1_1_1_0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_1_1_1_3(), "rule__PropertyDefinition__TypeAssignment_3_1_1_1_3");
builder.put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_2_0(), "rule__PropertyDefinition__DefaultAssignment_3_2_0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_2_1_0_2(), "rule__PropertyDefinition__TypeAssignment_3_2_1_0_2");
builder.put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_2_1_0_4(), "rule__PropertyDefinition__UsageAssignment_3_2_1_0_4");
builder.put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_2_1_1_0(), "rule__PropertyDefinition__UsageAssignment_3_2_1_1_0");
builder.put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_2_1_1_3(), "rule__PropertyDefinition__TypeAssignment_3_2_1_1_3");
builder.put(grammarAccess.getPropertyDefaultAccess().getStringAssignment_2_0(), "rule__PropertyDefault__StringAssignment_2_0");
builder.put(grammarAccess.getPropertyDefaultAccess().getValueAssignment_2_1(), "rule__PropertyDefault__ValueAssignment_2_1");
builder.put(grammarAccess.getPropertyDefaultAccess().getStringAssignment_2_2(), "rule__PropertyDefault__StringAssignment_2_2");
builder.put(grammarAccess.getPropertyDefaultAccess().getStringAssignment_2_3(), "rule__PropertyDefault__StringAssignment_2_3");
builder.put(grammarAccess.getPropertyUsageAccess().getComponentsAssignment_2(), "rule__PropertyUsage__ComponentsAssignment_2");
builder.put(grammarAccess.getPropertyUsageAccess().getComponentsAssignment_3_1(), "rule__PropertyUsage__ComponentsAssignment_3_1");
builder.put(grammarAccess.getComponentDefinitionAccess().getTypeAssignment_0(), "rule__ComponentDefinition__TypeAssignment_0");
builder.put(grammarAccess.getComponentDefinitionAccess().getNameAssignment_1(), "rule__ComponentDefinition__NameAssignment_1");
builder.put(grammarAccess.getComponentDefinitionAccess().getComponentDefinitionsAssignment_3_0_0(), "rule__ComponentDefinition__ComponentDefinitionsAssignment_3_0_0");
builder.put(grammarAccess.getComponentDefinitionAccess().getInstantiationsAssignment_3_1_0(), "rule__ComponentDefinition__InstantiationsAssignment_3_1_0");
builder.put(grammarAccess.getComponentDefinitionAccess().getPropertyAssignmentsAssignment_3_2_0(), "rule__ComponentDefinition__PropertyAssignmentsAssignment_3_2_0");
builder.put(grammarAccess.getComponentDefinitionAccess().getEnumDefinitionsAssignment_3_3_0(), "rule__ComponentDefinition__EnumDefinitionsAssignment_3_3_0");
builder.put(grammarAccess.getInstantiationAccess().getInstanceTypeAssignment_0_0_0(), "rule__Instantiation__InstanceTypeAssignment_0_0_0");
builder.put(grammarAccess.getInstantiationAccess().getAliasAssignment_0_0_1_1(), "rule__Instantiation__AliasAssignment_0_0_1_1");
builder.put(grammarAccess.getInstantiationAccess().getComponentRefAssignment_0_0_2(), "rule__Instantiation__ComponentRefAssignment_0_0_2");
builder.put(grammarAccess.getInstantiationAccess().getComponentAssignment_0_1_0(), "rule__Instantiation__ComponentAssignment_0_1_0");
builder.put(grammarAccess.getInstantiationAccess().getInstanceTypeAssignment_0_1_1(), "rule__Instantiation__InstanceTypeAssignment_0_1_1");
builder.put(grammarAccess.getInstantiationAccess().getComponentInstancesAssignment_1(), "rule__Instantiation__ComponentInstancesAssignment_1");
builder.put(grammarAccess.getInstantiationAccess().getComponentInstancesAssignment_2_1(), "rule__Instantiation__ComponentInstancesAssignment_2_1");
builder.put(grammarAccess.getComponentInstanceAccess().getNameAssignment_0(), "rule__ComponentInstance__NameAssignment_0");
builder.put(grammarAccess.getComponentInstanceAccess().getRangeAssignment_1(), "rule__ComponentInstance__RangeAssignment_1");
builder.put(grammarAccess.getComponentInstanceAccess().getResetAssignment_2_1(), "rule__ComponentInstance__ResetAssignment_2_1");
builder.put(grammarAccess.getComponentInstanceAccess().getAddressAssignment_3_1(), "rule__ComponentInstance__AddressAssignment_3_1");
builder.put(grammarAccess.getComponentInstanceAccess().getAddrIncAssignment_4_1(), "rule__ComponentInstance__AddrIncAssignment_4_1");
builder.put(grammarAccess.getComponentInstanceAccess().getAddrModAssignment_5_1(), "rule__ComponentInstance__AddrModAssignment_5_1");
builder.put(grammarAccess.getRangeAccess().getLeftAssignment_1_0_0(), "rule__Range__LeftAssignment_1_0_0");
builder.put(grammarAccess.getRangeAccess().getRightAssignment_1_0_2(), "rule__Range__RightAssignment_1_0_2");
builder.put(grammarAccess.getRangeAccess().getSizeAssignment_1_1(), "rule__Range__SizeAssignment_1_1");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getModifierAssignment_0_0(), "rule__ExplicitPropertyAssignment__ModifierAssignment_0_0");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getNameAssignment_0_1(), "rule__ExplicitPropertyAssignment__NameAssignment_0_1");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getNameAssignment_1_0(), "rule__ExplicitPropertyAssignment__NameAssignment_1_0");
builder.put(grammarAccess.getExplicitPropertyAssignmentAccess().getRhsAssignment_1_1_1(), "rule__ExplicitPropertyAssignment__RhsAssignment_1_1_1");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getInstanceAssignment_0_0_0(), "rule__PostPropertyAssignment__InstanceAssignment_0_0_0");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getPropertyEnumAssignment_0_0_2_0(), "rule__PostPropertyAssignment__PropertyEnumAssignment_0_0_2_0");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getPropertyAssignment_0_0_2_1(), "rule__PostPropertyAssignment__PropertyAssignment_0_0_2_1");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getPropertyAssignment_0_1(), "rule__PostPropertyAssignment__PropertyAssignment_0_1");
builder.put(grammarAccess.getPostPropertyAssignmentAccess().getRhsAssignment_1_1(), "rule__PostPropertyAssignment__RhsAssignment_1_1");
builder.put(grammarAccess.getInstancePropertyRefAccess().getInstanceAssignment_0(), "rule__InstancePropertyRef__InstanceAssignment_0");
builder.put(grammarAccess.getInstancePropertyRefAccess().getPropertyEnumAssignment_1_1_0(), "rule__InstancePropertyRef__PropertyEnumAssignment_1_1_0");
builder.put(grammarAccess.getInstancePropertyRefAccess().getPropertyAssignment_1_1_1(), "rule__InstancePropertyRef__PropertyAssignment_1_1_1");
builder.put(grammarAccess.getInstanceRefAccess().getInstanceAssignment_0(), "rule__InstanceRef__InstanceAssignment_0");
builder.put(grammarAccess.getInstanceRefAccess().getTailAssignment_1_1(), "rule__InstanceRef__TailAssignment_1_1");
builder.put(grammarAccess.getHierInstanceRefAccess().getInstanceAssignment_0(), "rule__HierInstanceRef__InstanceAssignment_0");
builder.put(grammarAccess.getHierInstanceRefAccess().getTailAssignment_1_1(), "rule__HierInstanceRef__TailAssignment_1_1");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getValueAssignment_0(), "rule__PropertyAssignmentRhs__ValueAssignment_0");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getInstPropRefAssignment_1(), "rule__PropertyAssignmentRhs__InstPropRefAssignment_1");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getEnumRefAssignment_2_0(), "rule__PropertyAssignmentRhs__EnumRefAssignment_2_0");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getEnumsAssignment_2_2(), "rule__PropertyAssignmentRhs__EnumsAssignment_2_2");
builder.put(grammarAccess.getPropertyAssignmentRhsAccess().getElementsAssignment_3(), "rule__PropertyAssignmentRhs__ElementsAssignment_3");
builder.put(grammarAccess.getConcatAccess().getElementsAssignment_1(), "rule__Concat__ElementsAssignment_1");
builder.put(grammarAccess.getConcatAccess().getElementsAssignment_2_1(), "rule__Concat__ElementsAssignment_2_1");
builder.put(grammarAccess.getConcatElemAccess().getInstPropRefAssignment_0(), "rule__ConcatElem__InstPropRefAssignment_0");
builder.put(grammarAccess.getConcatElemAccess().getValueAssignment_1(), "rule__ConcatElem__ValueAssignment_1");
builder.put(grammarAccess.getPropertyRvalueConstantAccess().getValAssignment_0(), "rule__PropertyRvalueConstant__ValAssignment_0");
builder.put(grammarAccess.getPropertyRvalueConstantAccess().getNumAssignment_1(), "rule__PropertyRvalueConstant__NumAssignment_1");
builder.put(grammarAccess.getPropertyRvalueConstantAccess().getStrAssignment_2(), "rule__PropertyRvalueConstant__StrAssignment_2");
builder.put(grammarAccess.getEnumDefinitionAccess().getNameAssignment_1(), "rule__EnumDefinition__NameAssignment_1");
builder.put(grammarAccess.getEnumDefinitionAccess().getBodyAssignment_2(), "rule__EnumDefinition__BodyAssignment_2");
builder.put(grammarAccess.getEnumBodyAccess().getEntriesAssignment_2(), "rule__EnumBody__EntriesAssignment_2");
builder.put(grammarAccess.getEnumEntryAccess().getNameAssignment_0(), "rule__EnumEntry__NameAssignment_0");
builder.put(grammarAccess.getEnumEntryAccess().getIndexAssignment_2(), "rule__EnumEntry__IndexAssignment_2");
builder.put(grammarAccess.getEnumEntryAccess().getPropertiesAssignment_3_1(), "rule__EnumEntry__PropertiesAssignment_3_1");
builder.put(grammarAccess.getEnumPropertyAccess().getNameAssignment_0_0_0(), "rule__EnumProperty__NameAssignment_0_0_0");
builder.put(grammarAccess.getEnumPropertyAccess().getValueAssignment_0_0_2(), "rule__EnumProperty__ValueAssignment_0_0_2");
builder.put(grammarAccess.getEnumPropertyAccess().getNameAssignment_0_1_0(), "rule__EnumProperty__NameAssignment_0_1_0");
builder.put(grammarAccess.getEnumPropertyAccess().getValueAssignment_0_1_2(), "rule__EnumProperty__ValueAssignment_0_1_2");
builder.put(grammarAccess.getEnumInstanceTypeAccess().getEXTERNALAssignment_0(), "rule__EnumInstanceType__EXTERNALAssignment_0");
builder.put(grammarAccess.getEnumInstanceTypeAccess().getINTERNALAssignment_1(), "rule__EnumInstanceType__INTERNALAssignment_1");
}
}
@Inject
private NameMappings nameMappings;
@Inject @Inject
private RDLGrammarAccess grammarAccess; private RDLGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override @Override
protected InternalRDLParser createParser() { protected InternalRDLParser createParser() {
InternalRDLParser result = new InternalRDLParser(null); InternalRDLParser result = new InternalRDLParser(null);
@ -27,193 +226,9 @@ public class RDLParser extends AbstractContentAssistParser {
@Override @Override
protected String getRuleName(AbstractElement element) { protected String getRuleName(AbstractElement element) {
if (nameMappings == null) { return nameMappings.getRuleName(element);
nameMappings = new HashMap<AbstractElement, String>() {
private static final long serialVersionUID = 1L;
{
put(grammarAccess.getRootAccess().getAlternatives(), "rule__Root__Alternatives");
put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3(), "rule__PropertyDefinition__Alternatives_3");
put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3_0_4(), "rule__PropertyDefinition__Alternatives_3_0_4");
put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3_1_1(), "rule__PropertyDefinition__Alternatives_3_1_1");
put(grammarAccess.getPropertyDefinitionAccess().getAlternatives_3_2_1(), "rule__PropertyDefinition__Alternatives_3_2_1");
put(grammarAccess.getPropertyDefaultAccess().getAlternatives_2(), "rule__PropertyDefault__Alternatives_2");
put(grammarAccess.getComponentDefinitionAccess().getAlternatives_3(), "rule__ComponentDefinition__Alternatives_3");
put(grammarAccess.getInstantiationAccess().getAlternatives_0(), "rule__Instantiation__Alternatives_0");
put(grammarAccess.getRangeAccess().getAlternatives_1(), "rule__Range__Alternatives_1");
put(grammarAccess.getPropertyAssignmentAccess().getAlternatives(), "rule__PropertyAssignment__Alternatives");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getAlternatives(), "rule__ExplicitPropertyAssignment__Alternatives");
put(grammarAccess.getPostPropertyAssignmentAccess().getAlternatives_0(), "rule__PostPropertyAssignment__Alternatives_0");
put(grammarAccess.getPostPropertyAssignmentAccess().getAlternatives_0_0_2(), "rule__PostPropertyAssignment__Alternatives_0_0_2");
put(grammarAccess.getInstancePropertyRefAccess().getAlternatives_1_1(), "rule__InstancePropertyRef__Alternatives_1_1");
put(grammarAccess.getEntityAccess().getAlternatives(), "rule__Entity__Alternatives");
put(grammarAccess.getPropertyAssignmentRhsAccess().getAlternatives(), "rule__PropertyAssignmentRhs__Alternatives");
put(grammarAccess.getConcatElemAccess().getAlternatives(), "rule__ConcatElem__Alternatives");
put(grammarAccess.getPropertyRvalueConstantAccess().getAlternatives(), "rule__PropertyRvalueConstant__Alternatives");
put(grammarAccess.getEnumPropertyAccess().getAlternatives_0(), "rule__EnumProperty__Alternatives_0");
put(grammarAccess.getEnumInstanceTypeAccess().getAlternatives(), "rule__EnumInstanceType__Alternatives");
put(grammarAccess.getPropertyTypeNameAccess().getAlternatives(), "rule__PropertyTypeName__Alternatives");
put(grammarAccess.getPropertyComponentAccess().getAlternatives(), "rule__PropertyComponent__Alternatives");
put(grammarAccess.getComponentDefinitionTypeAccess().getAlternatives(), "rule__ComponentDefinitionType__Alternatives");
put(grammarAccess.getPropertyEnumAccess().getAlternatives(), "rule__PropertyEnum__Alternatives");
put(grammarAccess.getPropertyAccess().getAlternatives(), "rule__Property__Alternatives");
put(grammarAccess.getRValueConstantAccess().getAlternatives(), "rule__RValueConstant__Alternatives");
put(grammarAccess.getPropertyModifierAccess().getAlternatives(), "rule__PropertyModifier__Alternatives");
put(grammarAccess.getRootAccess().getGroup_1(), "rule__Root__Group_1__0");
put(grammarAccess.getRootAccess().getGroup_2(), "rule__Root__Group_2__0");
put(grammarAccess.getRootAccess().getGroup_3(), "rule__Root__Group_3__0");
put(grammarAccess.getRootAccess().getGroup_4(), "rule__Root__Group_4__0");
put(grammarAccess.getRootAccess().getGroup_5(), "rule__Root__Group_5__0");
put(grammarAccess.getIncludeAccess().getGroup(), "rule__Include__Group__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup(), "rule__PropertyDefinition__Group__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_0(), "rule__PropertyDefinition__Group_3_0__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_0_4_0(), "rule__PropertyDefinition__Group_3_0_4_0__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_0_4_1(), "rule__PropertyDefinition__Group_3_0_4_1__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_1(), "rule__PropertyDefinition__Group_3_1__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_1_1_0(), "rule__PropertyDefinition__Group_3_1_1_0__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_1_1_1(), "rule__PropertyDefinition__Group_3_1_1_1__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_2(), "rule__PropertyDefinition__Group_3_2__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_2_1_0(), "rule__PropertyDefinition__Group_3_2_1_0__0");
put(grammarAccess.getPropertyDefinitionAccess().getGroup_3_2_1_1(), "rule__PropertyDefinition__Group_3_2_1_1__0");
put(grammarAccess.getPropertyDefaultAccess().getGroup(), "rule__PropertyDefault__Group__0");
put(grammarAccess.getPropertyUsageAccess().getGroup(), "rule__PropertyUsage__Group__0");
put(grammarAccess.getPropertyUsageAccess().getGroup_3(), "rule__PropertyUsage__Group_3__0");
put(grammarAccess.getComponentDefinitionAccess().getGroup(), "rule__ComponentDefinition__Group__0");
put(grammarAccess.getComponentDefinitionAccess().getGroup_3_0(), "rule__ComponentDefinition__Group_3_0__0");
put(grammarAccess.getComponentDefinitionAccess().getGroup_3_1(), "rule__ComponentDefinition__Group_3_1__0");
put(grammarAccess.getComponentDefinitionAccess().getGroup_3_2(), "rule__ComponentDefinition__Group_3_2__0");
put(grammarAccess.getComponentDefinitionAccess().getGroup_3_3(), "rule__ComponentDefinition__Group_3_3__0");
put(grammarAccess.getInstantiationAccess().getGroup(), "rule__Instantiation__Group__0");
put(grammarAccess.getInstantiationAccess().getGroup_0_0(), "rule__Instantiation__Group_0_0__0");
put(grammarAccess.getInstantiationAccess().getGroup_0_0_1(), "rule__Instantiation__Group_0_0_1__0");
put(grammarAccess.getInstantiationAccess().getGroup_0_1(), "rule__Instantiation__Group_0_1__0");
put(grammarAccess.getInstantiationAccess().getGroup_2(), "rule__Instantiation__Group_2__0");
put(grammarAccess.getComponentInstanceAccess().getGroup(), "rule__ComponentInstance__Group__0");
put(grammarAccess.getComponentInstanceAccess().getGroup_2(), "rule__ComponentInstance__Group_2__0");
put(grammarAccess.getComponentInstanceAccess().getGroup_3(), "rule__ComponentInstance__Group_3__0");
put(grammarAccess.getComponentInstanceAccess().getGroup_4(), "rule__ComponentInstance__Group_4__0");
put(grammarAccess.getComponentInstanceAccess().getGroup_5(), "rule__ComponentInstance__Group_5__0");
put(grammarAccess.getRangeAccess().getGroup(), "rule__Range__Group__0");
put(grammarAccess.getRangeAccess().getGroup_1_0(), "rule__Range__Group_1_0__0");
put(grammarAccess.getDefaultProperyAssignmentAccess().getGroup(), "rule__DefaultProperyAssignment__Group__0");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getGroup_0(), "rule__ExplicitPropertyAssignment__Group_0__0");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getGroup_1(), "rule__ExplicitPropertyAssignment__Group_1__0");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getGroup_1_1(), "rule__ExplicitPropertyAssignment__Group_1_1__0");
put(grammarAccess.getPostPropertyAssignmentAccess().getGroup(), "rule__PostPropertyAssignment__Group__0");
put(grammarAccess.getPostPropertyAssignmentAccess().getGroup_0_0(), "rule__PostPropertyAssignment__Group_0_0__0");
put(grammarAccess.getPostPropertyAssignmentAccess().getGroup_1(), "rule__PostPropertyAssignment__Group_1__0");
put(grammarAccess.getInstancePropertyRefAccess().getGroup(), "rule__InstancePropertyRef__Group__0");
put(grammarAccess.getInstancePropertyRefAccess().getGroup_1(), "rule__InstancePropertyRef__Group_1__0");
put(grammarAccess.getInstanceRefAccess().getGroup(), "rule__InstanceRef__Group__0");
put(grammarAccess.getInstanceRefAccess().getGroup_1(), "rule__InstanceRef__Group_1__0");
put(grammarAccess.getHierInstanceRefAccess().getGroup(), "rule__HierInstanceRef__Group__0");
put(grammarAccess.getHierInstanceRefAccess().getGroup_1(), "rule__HierInstanceRef__Group_1__0");
put(grammarAccess.getPropertyAssignmentRhsAccess().getGroup_2(), "rule__PropertyAssignmentRhs__Group_2__0");
put(grammarAccess.getConcatAccess().getGroup(), "rule__Concat__Group__0");
put(grammarAccess.getConcatAccess().getGroup_2(), "rule__Concat__Group_2__0");
put(grammarAccess.getEnumDefinitionAccess().getGroup(), "rule__EnumDefinition__Group__0");
put(grammarAccess.getEnumBodyAccess().getGroup(), "rule__EnumBody__Group__0");
put(grammarAccess.getEnumEntryAccess().getGroup(), "rule__EnumEntry__Group__0");
put(grammarAccess.getEnumEntryAccess().getGroup_3(), "rule__EnumEntry__Group_3__0");
put(grammarAccess.getEnumPropertyAccess().getGroup(), "rule__EnumProperty__Group__0");
put(grammarAccess.getEnumPropertyAccess().getGroup_0_0(), "rule__EnumProperty__Group_0_0__0");
put(grammarAccess.getEnumPropertyAccess().getGroup_0_1(), "rule__EnumProperty__Group_0_1__0");
put(grammarAccess.getRootAccess().getIncludesAssignment_0(), "rule__Root__IncludesAssignment_0");
put(grammarAccess.getRootAccess().getComponentDefinitionsAssignment_1_0(), "rule__Root__ComponentDefinitionsAssignment_1_0");
put(grammarAccess.getRootAccess().getEnumDefinitionsAssignment_2_0(), "rule__Root__EnumDefinitionsAssignment_2_0");
put(grammarAccess.getRootAccess().getInstantiationsAssignment_3_0(), "rule__Root__InstantiationsAssignment_3_0");
put(grammarAccess.getRootAccess().getPropertyAssignmentsAssignment_4_0(), "rule__Root__PropertyAssignmentsAssignment_4_0");
put(grammarAccess.getRootAccess().getPropertyDefinitionsAssignment_5_0(), "rule__Root__PropertyDefinitionsAssignment_5_0");
put(grammarAccess.getIncludeAccess().getImportURIAssignment_1(), "rule__Include__ImportURIAssignment_1");
put(grammarAccess.getPropertyDefinitionAccess().getNameAssignment_1(), "rule__PropertyDefinition__NameAssignment_1");
put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_0_2(), "rule__PropertyDefinition__TypeAssignment_3_0_2");
put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_0_4_0_0(), "rule__PropertyDefinition__UsageAssignment_3_0_4_0_0");
put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_0_4_0_1(), "rule__PropertyDefinition__DefaultAssignment_3_0_4_0_1");
put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_0_4_1_0(), "rule__PropertyDefinition__DefaultAssignment_3_0_4_1_0");
put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_0_4_1_1(), "rule__PropertyDefinition__UsageAssignment_3_0_4_1_1");
put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_1_0(), "rule__PropertyDefinition__UsageAssignment_3_1_0");
put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_1_1_0_2(), "rule__PropertyDefinition__TypeAssignment_3_1_1_0_2");
put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_1_1_0_4(), "rule__PropertyDefinition__DefaultAssignment_3_1_1_0_4");
put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_1_1_1_0(), "rule__PropertyDefinition__DefaultAssignment_3_1_1_1_0");
put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_1_1_1_3(), "rule__PropertyDefinition__TypeAssignment_3_1_1_1_3");
put(grammarAccess.getPropertyDefinitionAccess().getDefaultAssignment_3_2_0(), "rule__PropertyDefinition__DefaultAssignment_3_2_0");
put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_2_1_0_2(), "rule__PropertyDefinition__TypeAssignment_3_2_1_0_2");
put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_2_1_0_4(), "rule__PropertyDefinition__UsageAssignment_3_2_1_0_4");
put(grammarAccess.getPropertyDefinitionAccess().getUsageAssignment_3_2_1_1_0(), "rule__PropertyDefinition__UsageAssignment_3_2_1_1_0");
put(grammarAccess.getPropertyDefinitionAccess().getTypeAssignment_3_2_1_1_3(), "rule__PropertyDefinition__TypeAssignment_3_2_1_1_3");
put(grammarAccess.getPropertyDefaultAccess().getStringAssignment_2_0(), "rule__PropertyDefault__StringAssignment_2_0");
put(grammarAccess.getPropertyDefaultAccess().getValueAssignment_2_1(), "rule__PropertyDefault__ValueAssignment_2_1");
put(grammarAccess.getPropertyDefaultAccess().getStringAssignment_2_2(), "rule__PropertyDefault__StringAssignment_2_2");
put(grammarAccess.getPropertyDefaultAccess().getStringAssignment_2_3(), "rule__PropertyDefault__StringAssignment_2_3");
put(grammarAccess.getPropertyUsageAccess().getComponentsAssignment_2(), "rule__PropertyUsage__ComponentsAssignment_2");
put(grammarAccess.getPropertyUsageAccess().getComponentsAssignment_3_1(), "rule__PropertyUsage__ComponentsAssignment_3_1");
put(grammarAccess.getComponentDefinitionAccess().getTypeAssignment_0(), "rule__ComponentDefinition__TypeAssignment_0");
put(grammarAccess.getComponentDefinitionAccess().getNameAssignment_1(), "rule__ComponentDefinition__NameAssignment_1");
put(grammarAccess.getComponentDefinitionAccess().getComponentDefinitionsAssignment_3_0_0(), "rule__ComponentDefinition__ComponentDefinitionsAssignment_3_0_0");
put(grammarAccess.getComponentDefinitionAccess().getInstantiationsAssignment_3_1_0(), "rule__ComponentDefinition__InstantiationsAssignment_3_1_0");
put(grammarAccess.getComponentDefinitionAccess().getPropertyAssignmentsAssignment_3_2_0(), "rule__ComponentDefinition__PropertyAssignmentsAssignment_3_2_0");
put(grammarAccess.getComponentDefinitionAccess().getEnumDefinitionsAssignment_3_3_0(), "rule__ComponentDefinition__EnumDefinitionsAssignment_3_3_0");
put(grammarAccess.getInstantiationAccess().getInstanceTypeAssignment_0_0_0(), "rule__Instantiation__InstanceTypeAssignment_0_0_0");
put(grammarAccess.getInstantiationAccess().getAliasAssignment_0_0_1_1(), "rule__Instantiation__AliasAssignment_0_0_1_1");
put(grammarAccess.getInstantiationAccess().getComponentRefAssignment_0_0_2(), "rule__Instantiation__ComponentRefAssignment_0_0_2");
put(grammarAccess.getInstantiationAccess().getComponentAssignment_0_1_0(), "rule__Instantiation__ComponentAssignment_0_1_0");
put(grammarAccess.getInstantiationAccess().getInstanceTypeAssignment_0_1_1(), "rule__Instantiation__InstanceTypeAssignment_0_1_1");
put(grammarAccess.getInstantiationAccess().getComponentInstancesAssignment_1(), "rule__Instantiation__ComponentInstancesAssignment_1");
put(grammarAccess.getInstantiationAccess().getComponentInstancesAssignment_2_1(), "rule__Instantiation__ComponentInstancesAssignment_2_1");
put(grammarAccess.getComponentInstanceAccess().getNameAssignment_0(), "rule__ComponentInstance__NameAssignment_0");
put(grammarAccess.getComponentInstanceAccess().getRangeAssignment_1(), "rule__ComponentInstance__RangeAssignment_1");
put(grammarAccess.getComponentInstanceAccess().getResetAssignment_2_1(), "rule__ComponentInstance__ResetAssignment_2_1");
put(grammarAccess.getComponentInstanceAccess().getAddressAssignment_3_1(), "rule__ComponentInstance__AddressAssignment_3_1");
put(grammarAccess.getComponentInstanceAccess().getAddrIncAssignment_4_1(), "rule__ComponentInstance__AddrIncAssignment_4_1");
put(grammarAccess.getComponentInstanceAccess().getAddrModAssignment_5_1(), "rule__ComponentInstance__AddrModAssignment_5_1");
put(grammarAccess.getRangeAccess().getLeftAssignment_1_0_0(), "rule__Range__LeftAssignment_1_0_0");
put(grammarAccess.getRangeAccess().getRightAssignment_1_0_2(), "rule__Range__RightAssignment_1_0_2");
put(grammarAccess.getRangeAccess().getSizeAssignment_1_1(), "rule__Range__SizeAssignment_1_1");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getModifierAssignment_0_0(), "rule__ExplicitPropertyAssignment__ModifierAssignment_0_0");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getNameAssignment_0_1(), "rule__ExplicitPropertyAssignment__NameAssignment_0_1");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getNameAssignment_1_0(), "rule__ExplicitPropertyAssignment__NameAssignment_1_0");
put(grammarAccess.getExplicitPropertyAssignmentAccess().getRhsAssignment_1_1_1(), "rule__ExplicitPropertyAssignment__RhsAssignment_1_1_1");
put(grammarAccess.getPostPropertyAssignmentAccess().getInstanceAssignment_0_0_0(), "rule__PostPropertyAssignment__InstanceAssignment_0_0_0");
put(grammarAccess.getPostPropertyAssignmentAccess().getPropertyEnumAssignment_0_0_2_0(), "rule__PostPropertyAssignment__PropertyEnumAssignment_0_0_2_0");
put(grammarAccess.getPostPropertyAssignmentAccess().getPropertyAssignment_0_0_2_1(), "rule__PostPropertyAssignment__PropertyAssignment_0_0_2_1");
put(grammarAccess.getPostPropertyAssignmentAccess().getPropertyAssignment_0_1(), "rule__PostPropertyAssignment__PropertyAssignment_0_1");
put(grammarAccess.getPostPropertyAssignmentAccess().getRhsAssignment_1_1(), "rule__PostPropertyAssignment__RhsAssignment_1_1");
put(grammarAccess.getInstancePropertyRefAccess().getInstanceAssignment_0(), "rule__InstancePropertyRef__InstanceAssignment_0");
put(grammarAccess.getInstancePropertyRefAccess().getPropertyEnumAssignment_1_1_0(), "rule__InstancePropertyRef__PropertyEnumAssignment_1_1_0");
put(grammarAccess.getInstancePropertyRefAccess().getPropertyAssignment_1_1_1(), "rule__InstancePropertyRef__PropertyAssignment_1_1_1");
put(grammarAccess.getInstanceRefAccess().getInstanceAssignment_0(), "rule__InstanceRef__InstanceAssignment_0");
put(grammarAccess.getInstanceRefAccess().getTailAssignment_1_1(), "rule__InstanceRef__TailAssignment_1_1");
put(grammarAccess.getHierInstanceRefAccess().getInstanceAssignment_0(), "rule__HierInstanceRef__InstanceAssignment_0");
put(grammarAccess.getHierInstanceRefAccess().getTailAssignment_1_1(), "rule__HierInstanceRef__TailAssignment_1_1");
put(grammarAccess.getPropertyAssignmentRhsAccess().getValueAssignment_0(), "rule__PropertyAssignmentRhs__ValueAssignment_0");
put(grammarAccess.getPropertyAssignmentRhsAccess().getInstPropRefAssignment_1(), "rule__PropertyAssignmentRhs__InstPropRefAssignment_1");
put(grammarAccess.getPropertyAssignmentRhsAccess().getEnumRefAssignment_2_0(), "rule__PropertyAssignmentRhs__EnumRefAssignment_2_0");
put(grammarAccess.getPropertyAssignmentRhsAccess().getEnumsAssignment_2_2(), "rule__PropertyAssignmentRhs__EnumsAssignment_2_2");
put(grammarAccess.getPropertyAssignmentRhsAccess().getElementsAssignment_3(), "rule__PropertyAssignmentRhs__ElementsAssignment_3");
put(grammarAccess.getConcatAccess().getElementsAssignment_1(), "rule__Concat__ElementsAssignment_1");
put(grammarAccess.getConcatAccess().getElementsAssignment_2_1(), "rule__Concat__ElementsAssignment_2_1");
put(grammarAccess.getConcatElemAccess().getInstPropRefAssignment_0(), "rule__ConcatElem__InstPropRefAssignment_0");
put(grammarAccess.getConcatElemAccess().getValueAssignment_1(), "rule__ConcatElem__ValueAssignment_1");
put(grammarAccess.getPropertyRvalueConstantAccess().getValAssignment_0(), "rule__PropertyRvalueConstant__ValAssignment_0");
put(grammarAccess.getPropertyRvalueConstantAccess().getNumAssignment_1(), "rule__PropertyRvalueConstant__NumAssignment_1");
put(grammarAccess.getPropertyRvalueConstantAccess().getStrAssignment_2(), "rule__PropertyRvalueConstant__StrAssignment_2");
put(grammarAccess.getEnumDefinitionAccess().getNameAssignment_1(), "rule__EnumDefinition__NameAssignment_1");
put(grammarAccess.getEnumDefinitionAccess().getBodyAssignment_2(), "rule__EnumDefinition__BodyAssignment_2");
put(grammarAccess.getEnumBodyAccess().getEntriesAssignment_2(), "rule__EnumBody__EntriesAssignment_2");
put(grammarAccess.getEnumEntryAccess().getNameAssignment_0(), "rule__EnumEntry__NameAssignment_0");
put(grammarAccess.getEnumEntryAccess().getIndexAssignment_2(), "rule__EnumEntry__IndexAssignment_2");
put(grammarAccess.getEnumEntryAccess().getPropertiesAssignment_3_1(), "rule__EnumEntry__PropertiesAssignment_3_1");
put(grammarAccess.getEnumPropertyAccess().getNameAssignment_0_0_0(), "rule__EnumProperty__NameAssignment_0_0_0");
put(grammarAccess.getEnumPropertyAccess().getValueAssignment_0_0_2(), "rule__EnumProperty__ValueAssignment_0_0_2");
put(grammarAccess.getEnumPropertyAccess().getNameAssignment_0_1_0(), "rule__EnumProperty__NameAssignment_0_1_0");
put(grammarAccess.getEnumPropertyAccess().getValueAssignment_0_1_2(), "rule__EnumProperty__ValueAssignment_0_1_2");
put(grammarAccess.getEnumInstanceTypeAccess().getEXTERNALAssignment_0(), "rule__EnumInstanceType__EXTERNALAssignment_0");
put(grammarAccess.getEnumInstanceTypeAccess().getINTERNALAssignment_1(), "rule__EnumInstanceType__INTERNALAssignment_1");
}
};
}
return nameMappings.get(element);
} }
@Override @Override
protected String[] getInitialHiddenTokens() { protected String[] getInitialHiddenTokens() {
return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_ESCAPE_JSP", "RULE_ESCAPE_ORDL" }; return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_ESCAPE_JSP", "RULE_ESCAPE_ORDL" };
@ -226,4 +241,12 @@ public class RDLParser extends AbstractContentAssistParser {
public void setGrammarAccess(RDLGrammarAccess grammarAccess) { public void setGrammarAccess(RDLGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess; this.grammarAccess = grammarAccess;
} }
public NameMappings getNameMappings() {
return nameMappings;
}
public void setNameMappings(NameMappings nameMappings) {
this.nameMappings = nameMappings;
}
} }

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
grammar InternalRDL; grammar InternalRDL;

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ide package com.minres.rdl.ide

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ide package com.minres.rdl.ide

View File

@ -1,13 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.ide;
import com.minres.rdl.ide.AbstractRDLIdeModule;
/**
* Use this class to register ide components.
*/
@SuppressWarnings("all")
public class RDLIdeModule extends AbstractRDLIdeModule {
}

View File

@ -1,24 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.ide;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.minres.rdl.RDLRuntimeModule;
import com.minres.rdl.RDLStandaloneSetup;
import com.minres.rdl.ide.RDLIdeModule;
import org.eclipse.xtext.util.Modules2;
/**
* Initialization support for running Xtext languages as language servers.
*/
@SuppressWarnings("all")
public class RDLIdeSetup extends RDLStandaloneSetup {
@Override
public Injector createInjector() {
RDLRuntimeModule _rDLRuntimeModule = new RDLRuntimeModule();
RDLIdeModule _rDLIdeModule = new RDLIdeModule();
return Guice.createInjector(Modules2.mixin(_rDLRuntimeModule, _rDLIdeModule));
}
}

View File

@ -2,8 +2,8 @@
<feature <feature
id="com.minres.rdl.platform.feature" id="com.minres.rdl.platform.feature"
label="Xtext Platform Feature" label="Xtext Platform Feature"
version="1.0.0.qualifier" version="1.4.1"
provider-name="MINRES"> provider-name="MINRES Technologies GmbH">
<description url="http://www.example.com/description"> <description url="http://www.example.com/description">
[Enter Feature Description here.] [Enter Feature Description here.]
@ -17,400 +17,21 @@
[Enter License Description here.] [Enter License Description here.]
</license> </license>
<includes
id="org.eclipse.xtext.runtime"
version="0.0.0"/>
<includes <includes
id="org.eclipse.rcp" id="org.eclipse.rcp"
version="0.0.0"/> version="0.0.0"/>
<requires> <includes
<import plugin="org.eclipse.e4.core.di" version="1.5.1" match="greaterOrEqual"/> id="org.eclipse.xtext.redist"
<import plugin="org.eclipse.core.runtime" version="3.5.0" match="compatible"/> version="0.0.0"/>
<import plugin="org.eclipse.core.resources" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.jdt.core" version="3.5.0" match="compatible"/> <includes
<import plugin="org.eclipse.jdt.launching" version="3.5.0" match="compatible"/> id="org.eclipse.xtext.ui"
<import plugin="org.eclipse.emf.ecore" version="2.12.0" match="compatible"/> version="0.0.0"/>
<import plugin="org.eclipse.emf.codegen" version="2.11.0" match="compatible"/>
<import plugin="org.eclipse.emf.ecore.xmi" version="2.12.0" match="compatible"/> <includes
<import plugin="org.eclipse.text" version="3.5.0" match="compatible"/> id="org.eclipse.help"
<import plugin="org.apache.batik.util.gui" version="1.7.0" match="equivalent"/> version="0.0.0"/>
<import plugin="org.eclipse.equinox.common" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.registry" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.debug.core" version="3.9.0" match="compatible"/>
<import plugin="org.eclipse.core.variables" version="3.2.800" match="compatible"/>
<import plugin="org.eclipse.xtend" version="1.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.xpand" version="1.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.xtend.typesystem.emf" version="1.0.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore" version="2.10.2" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.common" version="2.10.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.runtime" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.security" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.preferences" version="3.2.200" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.registry" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.expressions" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.console" version="3.5.300" match="compatible"/>
<import plugin="org.eclipse.help" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.jface.text" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.workbench.texteditor" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.ide" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.editors" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.11.0" match="compatible"/>
<import plugin="org.eclipse.core.filesystem" version="1.2.0" match="compatible"/>
<import plugin="org.eclipse.emf.codegen.ecore" version="2.10.2" match="greaterOrEqual"/>
<import plugin="org.eclipse.jdt.core" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.pde.core" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.ui.ide" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.views" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jface.text" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.ui.editors" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.debug.ui" version="3.10.0" match="compatible"/>
<import plugin="org.eclipse.jdt.core" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jdt.debug.ui" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jdt.launching" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jdt.ui" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.pde.build" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.search" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.team.core" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.forms" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ant.launching" version="1.0.400" match="compatible"/>
<import plugin="org.eclipse.ant.ui" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.jdt.junit" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.intro" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.cheatsheets" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.update.configurator" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.ui.views.log" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.ltk.core.refactoring" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.core.variables" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.compare" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.core.filesystem" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.ltk.ui.refactoring" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.core.expressions" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.navigator.resources" version="3.3.100" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.ui" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.metadata" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.engine" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.core" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.director" version="2.1.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.artifact.repository" version="1.0.100" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.metadata.repository" version="1.0.100" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.operations" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.repository" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.frameworkadmin" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.frameworkadmin.equinox" version="1.0.100" match="compatible"/>
<import plugin="org.eclipse.pde.launching" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.ui.console" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.equinox.simpleconfigurator" version="1.0.200" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.repository.tools" version="2.0.100" match="compatible"/>
<import plugin="org.eclipse.team.ui" version="3.6.100" match="compatible"/>
<import plugin="org.eclipse.debug.core" version="3.10.0" match="compatible"/>
<import plugin="org.eclipse.ui.trace" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.bidi" version="0.10.0"/>
<import plugin="org.eclipse.equinox.registry" version="3.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.codegen.ecore" version="2.12.0" match="compatible"/>
<import plugin="org.eclipse.emf.edit.ui" version="2.12.0" match="compatible"/>
<import plugin="org.eclipse.emf.ecore.edit" version="2.9.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.core.jobs" version="3.3.0" match="compatible"/>
<import plugin="org.sat4j.core" version="2.3.5" match="compatible"/>
<import plugin="org.sat4j.pb" version="2.3.5" match="compatible"/>
<import plugin="org.eclipse.swt" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.core.databinding.observable" version="1.3.0" match="compatible"/>
<import plugin="org.eclipse.core.databinding.property" version="1.3.0" match="compatible"/>
<import plugin="org.eclipse.core.databinding" version="1.2.0" match="compatible"/>
<import plugin="org.eclipse.equinox.registry" version="3.4.0" match="compatible"/>
<import plugin="com.google.guava" version="14.0.0"/>
<import plugin="com.google.inject" version="3.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.model.workbench" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.contexts" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.workbench" version="0.9.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.services" version="0.9.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi.services" version="3.2.100" match="compatible"/>
<import plugin="org.eclipse.e4.ui.workbench.renderers.swt" version="0.9.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.widgets" version="0.11.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.css.swt" version="0.9.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.css.core" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.swt" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.e4.ui.di" version="0.10.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.services" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore.xmi" version="2.7.0" match="greaterOrEqual"/>
<import plugin="org.apache.ant" version="1.9.4" match="greaterOrEqual"/>
<import plugin="org.eclipse.ant.core" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.core.resources" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.externaltools" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ui.console" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.debug.core" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.debug.ui" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.jdt.junit" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ant.launching" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.core.externaltools" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.emf.edit" version="2.10.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.preferences" version="3.2.200" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.swt" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.6.0" match="compatible"/>
<import plugin="org.w3c.css.sac" version="1.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.registry" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.equinox.preferences" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.8.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.editors" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.ide" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.runtime" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.help" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.9.0" match="compatible"/>
<import plugin="org.eclipse.swt" version="3.101.0" match="compatible"/>
<import plugin="org.eclipse.jface.databinding" version="1.3.0" match="compatible"/>
<import plugin="org.eclipse.core.databinding.property" version="1.2.0" match="compatible"/>
<import plugin="org.eclipse.core.databinding.observable" version="1.2.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.services" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.contexts" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di" version="1.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.workbench.swt" version="0.9.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.di" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.model.workbench" version="0.9.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.css.swt.theme" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.bindings" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.workbench3" version="0.12.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.workbench.addons.swt" version="0.10.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore" version="2.7.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore.xmi" version="2.11.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di.extensions" version="0.13.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.workbench.renderers.swt" version="0.10.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.3.0" match="greaterOrEqual"/>
<import plugin="org.tukaani.xz" version="1.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.text" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.core.filebuffers" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.ant.core" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.equinox.simpleconfigurator.manipulator" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.debug.core" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.repository" version="2.0.0"/>
<import plugin="org.eclipse.equinox.p2.garbagecollector" version="1.0.100" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.touchpoint.eclipse" version="2.0.0" match="compatible"/>
<import plugin="org.eclipse.emf.common" version="2.12.0" match="compatible"/>
<import plugin="org.eclipse.core.commands" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.equinox.common" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.107.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.security.ui" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.core.resources" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.core.filesystem" version="1.1.0" match="compatible"/>
<import plugin="org.eclipse.compare.core" version="3.5.200" match="compatible"/>
<import plugin="org.eclipse.osgi" version="3.10.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.ide" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.jdt.core" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.debug.ui" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.help" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.expressions" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.editors" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.compare" version="3.5.101" match="greaterOrEqual"/>
<import plugin="org.eclipse.jface.databinding" version="1.3.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.databinding" version="1.2.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.databinding.beans" version="1.2.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.databinding.property" version="1.2.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.jdt.launching" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.apache.batik.util" version="1.7.0" match="equivalent"/>
<import plugin="org.eclipse.emf.common.ui" version="2.11.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.services" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore" version="2.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.emf.xpath" version="0.1.100" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore.editor" version="2.10.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.views" version="3.3.100" match="compatible"/>
<import plugin="org.eclipse.core.expressions" version="3.4.100" match="compatible"/>
<import plugin="org.eclipse.debug.ui" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.jdt.core" version="3.12.0" match="compatible"/>
<import plugin="org.eclipse.jdt.ui" version="3.12.0" match="compatible"/>
<import plugin="org.eclipse.jdt.debug.ui" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.jdt.junit.runtime" version="3.4.100" match="compatible"/>
<import plugin="org.eclipse.compare" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ltk.core.refactoring" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.core.variables" version="3.2.200" match="compatible"/>
<import plugin="org.eclipse.ltk.ui.refactoring" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.jdt.junit.core" version="3.6.0" match="compatible"/>
<import plugin="com.ibm.icu" version="4.4.2" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore.xmi" version="2.10.2" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.common" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.resources" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.jface.text" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.ui.ide" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.compare.core" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.e4.ui.workbench" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.services" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.swt" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.e4.ui.workbench.swt" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.model.workbench" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi.services" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.commands" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.expressions" version="3.4.200" match="compatible"/>
<import plugin="org.eclipse.osgi" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.e4.ui.css.swt" version="0.11.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di.extensions" version="0.12.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.preferences" version="3.5.200" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi" version="3.8.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.runtime" version="3.3.0" match="compatible"/>
<import plugin="com.jcraft.jsch" version="0.1.50" match="compatible"/>
<import plugin="org.eclipse.core.net" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.swt" version="3.104.0" match="compatible"/>
<import plugin="org.eclipse.core.commands" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.106.0" match="compatible"/>
<import plugin="org.eclipse.ui.workbench" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.jface.text" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.services" version="2.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.contexts" version="1.3.100" match="compatible"/>
<import plugin="org.eclipse.e4.ui.workbench" version="1.3.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.commands" version="0.11.0" match="compatible"/>
<import plugin="org.eclipse.e4.ui.model.workbench" version="1.1.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.di" version="1.6.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.di.extensions" version="0.14.0" match="compatible"/>
<import plugin="org.eclipse.osgi.services" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.jdt.core" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.12.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.mwe2.runtime" version="2.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.xtext" version="2.8.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.xtext.common.types" version="2.8.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.swt" version="3.4.1" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.ui.forms" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.help" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.core.expressions" version="3.4.200" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.common" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.swt" version="3.103.0" match="compatible"/>
<import plugin="org.eclipse.core.resources" version="3.9.0" match="compatible"/>
<import plugin="org.objectweb.asm" version="5.0.1" match="compatible"/>
<import plugin="org.eclipse.jdt.debug" version="3.7.100" match="compatible"/>
<import plugin="org.eclipse.core.variables" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.osgi" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.core.resources" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.jdt.ui" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.search" version="3.5.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.ltk.ui.refactoring" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.jdt.core.manipulation" version="1.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.swt" version="3.0.0" match="compatible"/>
<import plugin="org.eclipse.core.filebuffers" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.jdt.debug" version="3.10.0" match="compatible"/>
<import plugin="org.eclipse.jdt.launching" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.jdt.ui" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.ui.console" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.jdt.core.manipulation" version="1.3.0" match="compatible"/>
<import plugin="org.eclipse.search" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.forms" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.core.jobs" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.junit" version="3.8.2" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.console" version="3.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.core.jobs" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.equinox.preferences" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.core.contenttype" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.equinox.app" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.p2.metadata.repository" version="0.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.p2.artifact.repository" version="0.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ltk.core.refactoring" version="3.7.0" match="compatible"/>
<import plugin="org.eclipse.ui.navigator" version="3.3.200" match="compatible"/>
<import plugin="org.eclipse.team.core" version="3.4.100" match="compatible"/>
<import plugin="org.eclipse.team.ui" version="3.4.100" match="compatible"/>
<import plugin="org.eclipse.ui.forms" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.ui" version="3.3.0" match="compatible"/>
<import plugin="org.apache.commons.lang" version="2.0.0" match="compatible"/>
<import plugin="org.apache.commons.logging" version="1.0.0" match="compatible"/>
<import plugin="org.eclipse.core.filesystem" version="1.3.0" match="compatible"/>
<import plugin="org.hamcrest.core" version="1.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.preferences" version="3.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.ide" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.core.resources" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.ui.navigator" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.views.properties.tabbed" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.workbench.texteditor" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.10.100" match="compatible"/>
<import plugin="org.eclipse.ui.workbench" version="3.105.0" match="compatible"/>
<import plugin="org.eclipse.ui.workbench.texteditor" version="3.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.expressions" version="3.4.100" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.navigator" version="3.4.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di.extensions" version="0.13.200" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.runtime" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.resources" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.editors" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.jface.text" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.ide" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.views" version="3.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.edit.ui" version="2.10.2" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.workbench.texteditor" version="3.4.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ui.forms" version="3.4.1" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.css.core" version="0.10.100" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.css.swt" version="0.11.100" match="greaterOrEqual"/>
<import plugin="org.apache.commons.jxpath" version="1.2.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore" version="2.6.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.core.di.annotations" version="1.4.0" match="compatible"/>
<import plugin="org.eclipse.core.runtime" version="3.1.0" match="compatible"/>
<import plugin="org.eclipse.core.externaltools" version="1.0.300" match="compatible"/>
<import plugin="org.apache.lucene.core" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.ui.views" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.ui.workbench" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.emf.edit" version="2.12.0" match="compatible"/>
<import plugin="org.eclipse.core.jobs" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.search" version="3.10.0" match="compatible"/>
<import plugin="org.eclipse.debug.ui" version="3.11.0" match="compatible"/>
<import plugin="org.eclipse.jdt.launching" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.jface" version="3.11.0" match="compatible"/>
<import plugin="org.eclipse.ui.workbench.texteditor" version="3.10.0" match="compatible"/>
<import plugin="org.eclipse.ltk.ui.refactoring" version="3.8.0" match="compatible"/>
<import plugin="org.eclipse.ui.navigator.resources" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.jdt.core.manipulation" version="1.7.0" match="compatible"/>
<import plugin="org.w3c.dom.smil" version="1.0.0" match="equivalent"/>
<import plugin="org.eclipse.core.runtime" version="3.12.0" match="compatible"/>
<import plugin="org.eclipse.core.resources" version="3.8.100" match="compatible"/>
<import plugin="org.eclipse.e4.ui.model.workbench" version="1.2.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi" version="3.4.0" match="compatible"/>
<import plugin="org.eclipse.e4.core.commands" version="0.11.100" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.ecore.change" version="2.5.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.runtime" version="3.3.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.preferences" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.equinox.registry" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.xtext.ide" version="2.11.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.ant.core" version="3.1.100" match="compatible"/>
<import plugin="org.eclipse.osgi" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.jarprocessor" version="1.0.1" match="compatible"/>
<import plugin="org.eclipse.equinox.p2.publisher" version="1.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.p2.director.app" version="1.0.200" match="greaterOrEqual"/>
<import plugin="org.eclipse.equinox.p2.publisher.eclipse" version="1.0.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.osgi" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.team.core" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.compare" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.ui.navigator" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.jface.text" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.ui.editors" version="3.3.0" match="compatible"/>
<import plugin="org.eclipse.ltk.core.refactoring" version="3.6.0" match="compatible"/>
<import plugin="org.eclipse.debug.core" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.pde.core" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.jdt.debug" version="3.2.0" match="compatible"/>
<import plugin="org.eclipse.help.base" version="4.0.0" match="compatible"/>
<import plugin="org.eclipse.equinox.app" version="1.3.0" match="compatible"/>
<import plugin="org.eclipse.e4.ui.workbench" version="0.10.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.services" version="0.1.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.css.swt" version="0.9.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.e4.ui.workbench3" version="0.11.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.core.jobs" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.core.filesystem" version="1.3.0" match="greaterOrEqual"/>
<import plugin="org.apache.lucene.analysis" version="3.5.0" match="compatible"/>
<import plugin="org.eclipse.core.net" version="1.2.200" match="greaterOrEqual"/>
<import plugin="org.apache.batik.css" version="1.7.0" match="greaterOrEqual"/>
<import plugin="org.eclipse.emf.mwe.utils" version="1.3.0" match="greaterOrEqual"/>
</requires>
<plugin <plugin
id="org.eclipse.e4.core.di.extensions" id="org.eclipse.e4.core.di.extensions"
@ -433,13 +54,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.apache.batik.util"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.equinox.p2.director.app" id="org.eclipse.equinox.p2.director.app"
download-size="0" download-size="0"
@ -516,28 +130,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.compiler.tool"
download-size="0"
install-size="0"
version="0.0.0"
fragment="true"
unpack="false"/>
<plugin
id="org.eclipse.pde.ui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin
id="com.minres.rdl.ide"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.equinox.p2.repository" id="org.eclipse.equinox.p2.repository"
download-size="0" download-size="0"
@ -657,13 +249,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.minres.rdl.ui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.ui.workbench" id="org.eclipse.ui.workbench"
download-size="0" download-size="0"
@ -678,13 +263,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.pde.core"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.emf.codegen" id="org.eclipse.emf.codegen"
download-size="0" download-size="0"
@ -713,13 +291,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="javax.xml"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.core.jobs" id="org.eclipse.core.jobs"
download-size="0" download-size="0"
@ -784,13 +355,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.apache.batik.css"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.emf.common" id="org.eclipse.emf.common"
download-size="0" download-size="0"
@ -812,20 +376,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.xtext.ui.ecore"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin
id="org.eclipse.jdt.junit"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.xtext" id="org.eclipse.xtext"
download-size="0" download-size="0"
@ -909,19 +459,6 @@
install-size="0" install-size="0"
version="0.0.0"/> version="0.0.0"/>
<plugin
id="org.eclipse.jdt.debug"
download-size="0"
install-size="0"
version="0.0.0"/>
<plugin
id="com.minres.rdl.product"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.emf.mwe2.language" id="org.eclipse.emf.mwe2.language"
download-size="0" download-size="0"
@ -1006,13 +543,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.launching"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.emf.mwe2.runtime" id="org.eclipse.emf.mwe2.runtime"
download-size="0" download-size="0"
@ -1111,13 +641,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.debug.ui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.equinox.p2.operations" id="org.eclipse.equinox.p2.operations"
download-size="0" download-size="0"
@ -1125,13 +648,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.junit.runtime"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.ant.launching" id="org.eclipse.ant.launching"
download-size="0" download-size="0"
@ -1244,13 +760,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="javax.servlet"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.objectweb.asm" id="org.objectweb.asm"
download-size="0" download-size="0"
@ -1279,13 +788,6 @@
fragment="true" fragment="true"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.equinox.util"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.core.variables" id="org.eclipse.core.variables"
download-size="0" download-size="0"
@ -1313,13 +815,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="com.minres.rdl"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.ui.navigator.resources" id="org.eclipse.ui.navigator.resources"
download-size="0" download-size="0"
@ -1348,13 +843,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.xtext.ui.codetemplates.ui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.e4.ui.di" id="org.eclipse.e4.ui.di"
download-size="0" download-size="0"
@ -1362,13 +850,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.xtext.ui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.ui.forms" id="org.eclipse.ui.forms"
download-size="0" download-size="0"
@ -1411,13 +892,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.apache.batik.util.gui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.e4.emf.xpath" id="org.eclipse.e4.emf.xpath"
download-size="0" download-size="0"
@ -1446,13 +920,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.apache.lucene.analysis"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.emf.edit.ui" id="org.eclipse.emf.edit.ui"
download-size="0" download-size="0"
@ -1481,13 +948,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.ui"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.w3c.dom.svg" id="org.w3c.dom.svg"
download-size="0" download-size="0"
@ -1509,13 +969,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.junit.core"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.e4.ui.workbench" id="org.eclipse.e4.ui.workbench"
download-size="0" download-size="0"
@ -1600,12 +1053,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.pde.build"
download-size="0"
install-size="0"
version="0.0.0"/>
<plugin <plugin
id="org.eclipse.ant.core" id="org.eclipse.ant.core"
download-size="0" download-size="0"
@ -1627,13 +1074,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.xtext.ui.shared"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.emf.ecore.editor" id="org.eclipse.emf.ecore.editor"
download-size="0" download-size="0"
@ -1690,13 +1130,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.core.manipulation"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.ui.trace" id="org.eclipse.ui.trace"
download-size="0" download-size="0"
@ -1718,13 +1151,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.pde.launching"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.apache.commons.lang" id="org.apache.commons.lang"
download-size="0" download-size="0"
@ -1739,13 +1165,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.xtext.ui.codetemplates"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.xtend.lib" id="org.eclipse.xtend.lib"
download-size="0" download-size="0"
@ -1767,14 +1186,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.compiler.apt"
download-size="0"
install-size="0"
version="0.0.0"
fragment="true"
unpack="false"/>
<plugin <plugin
id="org.eclipse.osgi.services" id="org.eclipse.osgi.services"
download-size="0" download-size="0"
@ -1817,13 +1228,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.jdt.core"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.ui.editors" id="org.eclipse.ui.editors"
download-size="0" download-size="0"
@ -1838,13 +1242,6 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.eclipse.equinox.ds"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin <plugin
id="org.eclipse.xtext.common.types" id="org.eclipse.xtext.common.types"
download-size="0" download-size="0"
@ -1901,4 +1298,18 @@
version="0.0.0" version="0.0.0"
unpack="false"/> unpack="false"/>
<plugin
id="org.antlr.runtime"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin
id="org.eclipse.ui.genericeditor"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
</feature> </feature>

View File

@ -4,11 +4,29 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.platform.feature</artifactId> <artifactId>com.minres.rdl.platform.feature</artifactId>
<packaging>eclipse-feature</packaging> <packaging>eclipse-feature</packaging>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-source-feature-plugin</artifactId>
<version>${tycho-version}</version>
<executions>
<execution>
<id>source-feature</id>
<phase>none</phase>
<!-- <goals>
<goal>source-feature</goal>
</goals>
--> </execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies> <dependencies>
</dependencies> </dependencies>

View File

@ -2,7 +2,8 @@
<feature <feature
id="com.minres.rdl.product.feature" id="com.minres.rdl.product.feature"
label="RDL Feature " label="RDL Feature "
version="1.0.0.qualifier"> version="1.4.1"
provider-name="MINRES Technologies GmbH">
<requires> <requires>
<import feature="com.minres.rdl.feature" version="1.0.0.qualifier"/> <import feature="com.minres.rdl.feature" version="1.0.0.qualifier"/>

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.product.feature</artifactId> <artifactId>com.minres.rdl.product.feature</artifactId>
<packaging>eclipse-feature</packaging> <packaging>eclipse-feature</packaging>

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>com.minres.rdl.product.releng</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
</natures>
</projectDescription>

View File

@ -0,0 +1,4 @@
activeProfiles=
eclipse.preferences.version=1
resolveWorkspaceProjects=true
version=1

View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
<product name="RDL Editor" uid="com.minres.rdl.product.product" id="com.minres.rdl.product.product" application="org.eclipse.ui.ide.workbench" version="1.4.0.qualifier" useFeatures="true" includeLaunchers="true">
<configIni use="default">
</configIni>
<launcherArgs>
<vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
</vmArgsMac>
</launcherArgs>
<windowImages/>
<launcher name="rdl-editor">
<win useIco="false">
<bmp/>
</win>
</launcher>
<vm>
</vm>
<plugins>
</plugins>
<features>
<feature id="com.minres.rdl.platform.feature"/>
<feature id="com.minres.rdl.product.feature"/>
<feature id="com.minres.rdl.feature"/>
<feature id="org.eclipse.emf.ecore"/>
<feature id="org.eclipse.rcp"/>
<feature id="org.eclipse.emf.common"/>
<feature id="org.eclipse.xtext.runtime"/>
<feature id="org.eclipse.e4.rcp"/>
<feature id="org.eclipse.xtext.xbase"/>
<feature id="org.eclipse.help"/>
<feature id="org.eclipse.xtext.redist"/>
<feature id="org.eclipse.xtext.xbase.lib"/>
<feature id="org.eclipse.xtext.ui"/>
</features>
<configurations>
<plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
</configurations>
</product>

View File

@ -0,0 +1,51 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>com.minres.rdl.product.releng</artifactId>
<packaging>eclipse-repository</packaging>
<name>RDL Editor</name>
<parent>
<version>1.4.1</version>
<groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId>
</parent>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
<version>${tycho-version}</version>
<configuration>
<formats>
<win32>zip</win32>
<linux>tar.gz</linux>
<macosx>tar.gz</macosx>
</formats>
<products>
<product>
<id>com.minres.rdl.product.product</id>
<archiveFileName>RDL-Editor-${project.version}</archiveFileName>
</product>
</products>
</configuration>
<executions>
<execution>
<id>materialize-products</id>
<goals>
<goal>materialize-products</goal>
</goals>
</execution>
<execution>
<id>archive-products</id>
<goals>
<goal>archive-products</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classpath> <classpath>
<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="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
<classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -1,7 +0,0 @@
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

View File

@ -2,7 +2,8 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: RDL Editor Bundle-Name: RDL Editor
Bundle-SymbolicName: com.minres.rdl.product;singleton:=true Bundle-SymbolicName: com.minres.rdl.product;singleton:=true
Bundle-Version: 1.1.0.qualifier Bundle-Version: 1.4.1
Bundle-Vendor: MINRES Bundle-Vendor: MINRES Technologies GmbH
Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Bundle: org.eclipse.core.runtime;bundle-version="3.12.0" Require-Bundle: org.eclipse.core.runtime;bundle-version="3.12.0"
Automatic-Module-Name: com.minres.rdl.product

View File

@ -1,5 +1,4 @@
source.. = src/ source.. = src/
output.. = bin/
bin.includes = META-INF/,\ bin.includes = META-INF/,\
.,\ .,\
plugin.xml plugin.xml

View File

@ -1,119 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
<product name="RDL" uid="com.minres.rdl.product.product" id="com.minres.rdl.product.product" application="org.eclipse.ui.ide.workbench" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
<configIni use="default">
</configIni>
<launcherArgs>
<vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
</vmArgsMac>
</launcherArgs>
<windowImages/>
<launcher>
<solaris/>
<win useIco="false">
<bmp/>
</win>
</launcher>
<vm>
</vm>
<plugins>
<plugin id="com.ibm.icu"/>
<plugin id="com.minres.rdl.product"/>
<plugin id="javax.inject"/>
<plugin id="javax.xml"/>
<plugin id="org.apache.batik.css"/>
<plugin id="org.apache.batik.util"/>
<plugin id="org.apache.batik.util.gui"/>
<plugin id="org.apache.commons.jxpath"/>
<plugin id="org.eclipse.core.commands"/>
<plugin id="org.eclipse.core.contenttype"/>
<plugin id="org.eclipse.core.databinding"/>
<plugin id="org.eclipse.core.databinding.observable"/>
<plugin id="org.eclipse.core.databinding.property"/>
<plugin id="org.eclipse.core.expressions"/>
<plugin id="org.eclipse.core.filesystem"/>
<plugin id="org.eclipse.core.filesystem.macosx" fragment="true"/>
<plugin id="org.eclipse.core.jobs"/>
<plugin id="org.eclipse.core.runtime"/>
<plugin id="org.eclipse.e4.core.commands"/>
<plugin id="org.eclipse.e4.core.contexts"/>
<plugin id="org.eclipse.e4.core.di"/>
<plugin id="org.eclipse.e4.core.di.annotations"/>
<plugin id="org.eclipse.e4.core.di.extensions"/>
<plugin id="org.eclipse.e4.core.services"/>
<plugin id="org.eclipse.e4.emf.xpath"/>
<plugin id="org.eclipse.e4.ui.bindings"/>
<plugin id="org.eclipse.e4.ui.css.core"/>
<plugin id="org.eclipse.e4.ui.css.swt"/>
<plugin id="org.eclipse.e4.ui.css.swt.theme"/>
<plugin id="org.eclipse.e4.ui.di"/>
<plugin id="org.eclipse.e4.ui.model.workbench"/>
<plugin id="org.eclipse.e4.ui.services"/>
<plugin id="org.eclipse.e4.ui.widgets"/>
<plugin id="org.eclipse.e4.ui.workbench"/>
<plugin id="org.eclipse.e4.ui.workbench.addons.swt"/>
<plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/>
<plugin id="org.eclipse.e4.ui.workbench.renderers.swt.cocoa" fragment="true"/>
<plugin id="org.eclipse.e4.ui.workbench.swt"/>
<plugin id="org.eclipse.e4.ui.workbench3"/>
<plugin id="org.eclipse.emf.common"/>
<plugin id="org.eclipse.emf.ecore"/>
<plugin id="org.eclipse.emf.ecore.change"/>
<plugin id="org.eclipse.emf.ecore.xmi"/>
<plugin id="org.eclipse.equinox.app"/>
<plugin id="org.eclipse.equinox.bidi"/>
<plugin id="org.eclipse.equinox.common"/>
<plugin id="org.eclipse.equinox.p2.core"/>
<plugin id="org.eclipse.equinox.p2.engine"/>
<plugin id="org.eclipse.equinox.p2.metadata"/>
<plugin id="org.eclipse.equinox.p2.metadata.repository"/>
<plugin id="org.eclipse.equinox.p2.repository"/>
<plugin id="org.eclipse.equinox.preferences"/>
<plugin id="org.eclipse.equinox.registry"/>
<plugin id="org.eclipse.equinox.security"/>
<plugin id="org.eclipse.equinox.security.macosx" fragment="true"/>
<plugin id="org.eclipse.help"/>
<plugin id="org.eclipse.jface"/>
<plugin id="org.eclipse.jface.databinding"/>
<plugin id="org.eclipse.jface.text"/>
<plugin id="org.eclipse.osgi"/>
<plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
<plugin id="org.eclipse.osgi.services"/>
<plugin id="org.eclipse.swt"/>
<plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
<plugin id="org.eclipse.text"/>
<plugin id="org.eclipse.ui"/>
<plugin id="org.eclipse.ui.cocoa" fragment="true"/>
<plugin id="org.eclipse.ui.ide"/>
<plugin id="org.eclipse.ui.workbench"/>
<plugin id="org.tukaani.xz"/>
<plugin id="org.w3c.css.sac"/>
<plugin id="org.w3c.dom.events"/>
<plugin id="org.w3c.dom.smil"/>
<plugin id="org.w3c.dom.svg"/>
</plugins>
<features>
<feature id="com.minres.rdl.platform.feature" version="1.0.0.qualifier"/>
<feature id="com.minres.rdl.product.feature" version="1.0.0.qualifier"/>
<feature id="com.minres.rdl.feature" version="1.0.0.qualifier"/>
</features>
<configurations>
<plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
</configurations>
</product>

View File

@ -6,10 +6,10 @@
point="org.eclipse.core.runtime.products"> point="org.eclipse.core.runtime.products">
<product <product
application="org.eclipse.ui.ide.workbench" application="org.eclipse.ui.ide.workbench"
name="RDL"> name="RDL Editor">
<property <property
name="appName" name="appName"
value="RDL"> value="RDL Editor">
</property> </property>
</product> </product>
</extension> </extension>

View File

@ -4,18 +4,8 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.1.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.product</artifactId> <artifactId>com.minres.rdl.product</artifactId>
<packaging>eclipse-application</packaging> <packaging>eclipse-plugin</packaging>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.xtend</groupId>
<artifactId>xtend-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project> </project>

View File

@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<site> <site>
<feature id="com.minres.rdl.feature" version="0.0.0"> <feature id="com.minres.rdl.feature" version="0.0.0">
<category name="main"/> <category name="main"/>
</feature> </feature>
<category-def name="main" label="RDL"/> <feature id="com.minres.rdl.feature.source" version="0.0.0">
<category name="main.source"/>
</feature>
<category-def name="main" label="RDL"/>
<category-def name="main.source" label="RDL (Sources)"/>
</site> </site>

View File

@ -0,0 +1,104 @@
<?xml version="1.0"?>
<project name="project">
<target name="getMajorMinorVersion">
<script language="javascript">
<![CDATA[
// getting the value
buildnumber = project.getProperty("unqualifiedVersion");
index = buildnumber.lastIndexOf(".");
counter = buildnumber.substring(0, index);
project.setProperty("majorMinorVersion",counter);
]]>
</script>
</target>
<target name="test_getMajorMinor" depends="getMajorMinorVersion">
<echo message="majorMinorVersion: ${majorMinorVersion}"/>
</target>
<!--
site.label The name/title/label of the created composite site
unqualifiedVersion The version without any qualifier replacement
buildQualifier The build qualifier
-->
<target name="compute.child.repository.data" depends="getMajorMinorVersion">
<property name="full.version" value="${unqualifiedVersion}" />
<property name="software.download.area" location="${user.home}/p2.repositories" />
<property name="updates.dir" value="updates" />
<property name="site.composite.name" value="${site.label} ${majorMinorVersion}" />
<property name="main.site.composite.name" value="${site.label} All Versions" />
<!--
<property name="main.composite.repository.directory" location="${software.download.area}/${updates.dir}" />
-->
<property name="main.composite.repository.directory" location="${software.download.area}" />
<property name="composite.repository.directory" value="${main.composite.repository.directory}/${majorMinorVersion}" />
<property name="child.repository" value="${full.version}" />
<property name="child.repository.directory" value="${composite.repository.directory}/${child.repository}/" />
</target>
<target name="p2.composite.add" depends="compute.child.repository.data">
<property name="source.repository" location="${project.build.directory}/repository"/>
<echo message=" " />
<echo message="Source repository path: ${source.repository}" />
<echo message="Copying to ${child.repository.directory}..." />
<mkdir dir="${child.repository.directory}"/>
<copy todir="${child.repository.directory}" overwrite="true">
<fileset dir="${source.repository}" />
</copy>
<add.composite.repository.internal
composite.repository.location="${composite.repository.directory}"
composite.repository.name="${site.composite.name}"
composite.repository.child="${child.repository}"
/>
<add.composite.repository.internal
composite.repository.location="${main.composite.repository.directory}"
composite.repository.name="${main.site.composite.name}"
composite.repository.child="${majorMinorVersion}"
/>
</target>
<!-- = = = = = = = = = = = = = = = = =
macrodef: add.composite.repository.internal
= = = = = = = = = = = = = = = = = -->
<macrodef name="add.composite.repository.internal">
<attribute name="composite.repository.location" />
<attribute name="composite.repository.name" />
<attribute name="composite.repository.child" />
<sequential>
<echo message=" " />
<echo message="Composite repository : @{composite.repository.location}" />
<echo message="Composite name : @{composite.repository.name}" />
<echo message="Adding child repository : @{composite.repository.child}" />
<p2.composite.repository>
<repository compressed="false" location="@{composite.repository.location}" name="@{composite.repository.name}" />
<add>
<repository location="@{composite.repository.child}" />
</add>
</p2.composite.repository>
<echo file="@{composite.repository.location}/p2.index">version=1
metadata.repository.factory.order=compositeContent.xml,\!
artifact.repository.factory.order=compositeArtifacts.xml,\!
</echo>
</sequential>
</macrodef>
</project>

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.repository</artifactId> <artifactId>com.minres.rdl.repository</artifactId>
<packaging>eclipse-repository</packaging> <packaging>eclipse-repository</packaging>
@ -46,6 +46,96 @@
</pluginManagement> </pluginManagement>
</build> </build>
<profiles>
<profile>
<!-- Activate this profile to perform the release to Bintray -->
<id>release-composite</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>bash</executable>
<!-- optional -->
<workingDirectory>${software.download.area}</workingDirectory>
<arguments>
<argument>-c</argument>
<argument>if [ -d RDL-Editor-GHP ]; then cd RDL-Editor-GHP; git pull; else git clone -v --branch gh-pages https://github.com/Minres/RDL-Editor.git RDL-Editor-GHP; fi</argument>
</arguments>
<environmentVariables>
<LANG>en_US</LANG>
</environmentVariables>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-eclipserun-plugin</artifactId>
<version>${tycho-version}</version>
<configuration>
<!-- IMPORTANT: DO NOT split the arg line -->
<appArgLine>-application org.eclipse.ant.core.antRunner -buildfile packaging-p2-composite.ant p2.composite.add -Dsite.label="RDL-Editor Software Repository" -Dproject.build.directory=${project.build.directory} -DunqualifiedVersion=${unqualifiedVersion} -Dsoftware.download.area="${software.download.area}/RDL-Editor-GHP/repository"</appArgLine>
<repositories>
<repository>
<id>2022-03</id>
<layout>p2</layout>
<url>http://download.eclipse.org/releases/2022-03/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<artifactId>org.eclipse.ant.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.ant</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.repository.tools</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.core.feature</artifactId>
<type>eclipse-feature</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.extras.feature</artifactId>
<type>eclipse-feature</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.ds</artifactId>
<type>eclipse-plugin</type>
</dependency>
</dependencies>
</configuration>
<executions>
<execution>
<id>add-p2-composite-repository</id>
<phase>package</phase>
<goals>
<goal>eclipse-run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies> <dependencies>
</dependencies> </dependencies>
</project> </project>

View File

@ -12,11 +12,6 @@
<attribute name="maven.pomderived" value="true"/> <attribute name="maven.pomderived" value="true"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes> <attributes>
<attribute name="maven.pomderived" value="true"/> <attribute name="maven.pomderived" value="true"/>
@ -24,5 +19,6 @@
</classpathentry> </classpathentry>
<classpathentry exported="true" kind="con" path="GROOVY_SUPPORT"/> <classpathentry exported="true" kind="con" path="GROOVY_SUPPORT"/>
<classpathentry exported="true" kind="con" path="GROOVY_DSL_SUPPORT"/> <classpathentry exported="true" kind="con" path="GROOVY_DSL_SUPPORT"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -1,5 +1,11 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.compliance=1.5 org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.5 org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=11

View File

@ -1,20 +1,95 @@
import static groovy.io.FileType.FILES import static groovy.io.FileType.FILES
import java.nio.file.Files
import java.nio.file.Paths
import java.util.zip.ZipEntry
def needed_jars = [
/org\.eclipse\.xtext/,
/org\.eclipse\.emf\.ecore\.xmi/,
/org\.eclipse\.emf\.ecore/,
/org\.eclipse\.emf\.common/,
/org\.antlr\.runtime/,
/com\.google\.inject/,
/org\.eclipse\.emf\.mwe\.core/,
/org\.apache\.commons\.cli/,
/org\.eclipse\.emf\.mwe2\.runtime/,
/org\.eclipse\.emf\.mwe\.utils/,
/org\.eclipse\.xtext\.util/,
/com\.google\.guava/,
/javax\.inject/,
/org\.eclipse\.xtext\.xbase/,
/org\.eclipse\.xtext\.common\.types/,
/org\.eclipse\.xtend\.lib/,
/org\.eclipse\.xtext\.xbase\.lib/,
/org\.eclipse\.xtend\.lib\.macro/,
/org\.eclipse\.equinox\.common/,
/eclipse-trace/,
/groovy-eclipse/,
/ivy-2\.5\.0\.jar/,
/groovy-3\.0\.\d-indy/,
/groovy-templates-3\.0\.\d/,
/org\.eclipse\.xtext\.xtext\.generator/,
/org\.eclipse\.emf\.codegen\.ecore/,
/org\.eclipse\.emf\.codegen/,
/org\.eclipse\.emf\.mwe2\.launch/,
/org\.eclipse\.emf\.mwe2\.language/,
/org\.eclipse\.emf\.mwe2\.lib/,
/org\.objectweb\.asm/,
/org\.apache\.commons\.logging/,
/org\.apache\.log4j/,
/com\.ibm\.icu/,
/org\.json/,
/com\.minres\.rdl/
]
// Collect all jars. // Collect all jars.
def jars = [] def jars = []
def root = new File(project.getBasedir(), 'target/classes') def root = new File(project.getBasedir(), 'target/classes')
def libs = new File(project.getBasedir(), 'target/classes/lib') def libs = new File(project.getBasedir(), 'target/classes/lib')
def meta_inf = new File(project.getBasedir(), 'target/classes/META-INF')
libs.eachFileRecurse (FILES) { file -> libs.eachFileRecurse (FILES) { file ->
jars << root.toURI().relativize(file.toURI()).toString() if(file.name =~/org\.codehaus\.groovy_/) { // we need to unpack this one sinc it is already jar in jar
println("Unpacking ${file}")
def zipFile = new java.util.zip.ZipFile(file)
zipFile.entries().findAll {ZipEntry entry -> !entry.directory && entry.name =~/\.jar$/}.each {ZipEntry entry ->
def outFile = new File(libs, entry.name.split(/\//)[-1])
println "Extracting file ${entry.name} to ${outFile.path} with size ${entry.size}bytes (${entry.compressedSize}bytes)"
Files.copy(zipFile.getInputStream(entry), outFile.toPath())
}
}
}
libs.eachFileRecurse (FILES) { file ->
def fileName = file.name.split("/")[-1]
if(needed_jars.find{fileName =~ it}) {
println "Adding $file to the included jars"
jars << root.toURI().relativize(file.toURI()).toString()
} else {
file.delete()
}
}
def zipFile = new java.util.zip.ZipFile(new File(project.getBasedir(), 'jar-in-jar-loader.zip'))
zipFile.entries().each {ZipEntry it ->
def path = Paths.get("${root}/", it.name)
if(it.directory){
Files.createDirectories(path)
} else {
def parentDir = path.getParent()
if (!Files.exists(parentDir)) {
Files.createDirectories(parentDir)
}
Files.deleteIfExists(path)
println "Extracting file ${it.name} to ${path} with size ${it.size}bytes (${it.compressedSize}bytes)"
Files.copy(zipFile.getInputStream(it), path)
}
} }
// Write the manifest file. // Write the manifest file.
def manifest = new File(project.getBasedir(), 'target/classes/META-INF/MANIFEST.MF') Files.createDirectories( Paths.get(meta_inf.absolutePath))
def mf = new File(project.getBasedir(), 'target/classes/META-INF/MANIFEST.MF')
manifest.write '' mf.write ''
mf << 'Manifest-Version: 1.0\n'
manifest << 'Manifest-Version: 1.0\n' mf << 'Rsrc-Class-Path: ./ ' + jars.join(' ') + '\n'
manifest << 'Class-Path: . ' + jars.join(' ') + '\n' mf << 'Rsrc-Main-Class: com.minres.rdl.generator.Main\n'
manifest << 'Rsrc-Main-Class: com.minres.rdl.generator.Main\n' mf << 'Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader\n'
manifest << 'Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader\n'

View File

@ -1,7 +1,13 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>com.minres.rdl.parent</artifactId>
<groupId>com.minres.rdl</groupId>
<version>1.4.1</version>
</parent>
<artifactId>com.minres.rdl.standalone</artifactId> <artifactId>com.minres.rdl.standalone</artifactId>
<packaging>eclipse-repository</packaging> <packaging>eclipse-repository</packaging>
<build> <build>
<pluginManagement> <pluginManagement>
@ -71,7 +77,7 @@
<artifactItem> <artifactItem>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl</artifactId> <artifactId>com.minres.rdl</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>${project.version}</version>
<type>jar</type> <type>jar</type>
<overWrite>false</overWrite> <overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/classes</outputDirectory> <outputDirectory>${project.build.directory}/classes</outputDirectory>
@ -165,9 +171,12 @@
</snapshots> </snapshots>
</repository> </repository>
</repositories> </repositories>
<parent> <dependencies>
<artifactId>com.minres.rdl.parent</artifactId> <dependency>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<version>1.1.0-SNAPSHOT</version> <artifactId>com.minres.rdl</artifactId>
</parent> <version>${project.version}</version>
</project> <type>eclipse-plugin</type>
</dependency>
</dependencies>
</project>

View File

@ -1,25 +1,43 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.8"?><target name="com.minres.rdl.target" sequenceNumber="3"> <?pde version="3.8"?>
<locations> <target name="com.minres.coredsl.target" sequenceNumber="1">
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit"> <locations>
<unit id="org.eclipse.emf.mwe2.launcher.feature.group" version="0.0.0"/> <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<repository location="http://download.eclipse.org/modeling/emft/mwe/updates/releases/2.9.0/"/> <unit id="org.eclipse.jdt.feature.group" version="0.0.0"/>
</location> <unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit"> <unit id="org.eclipse.pde.feature.group" version="0.0.0"/>
<unit id="org.eclipse.xtext.sdk.feature.group" version="0.0.0"/> <unit id="org.eclipse.draw2d.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/modeling/tmf/xtext/updates/releases/2.12.0/"/> <unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
</location> <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit"> <repository location="https://download.eclipse.org/releases/2022-03"/>
<unit id="org.eclipse.equinox.sdk.feature.group" version="0.0.0"/> </location>
<unit id="org.eclipse.jdt.feature.group" version="0.0.0"/> <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.platform.feature.group" version="0.0.0"/> <unit id="org.eclipse.emf.mwe2.launcher.feature.group" version="0.0.0"/>
<unit id="org.eclipse.pde.feature.group" version="0.0.0"/> <repository location="https://download.eclipse.org/modeling/emft/mwe/updates/releases/2.12.2/"/>
<unit id="org.eclipse.draw2d.feature.group" version="0.0.0"/> </location>
<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/> <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.xpand" version="0.0.0"/> <unit id="org.eclipse.xtext.sdk.feature.group" version="0.0.0"/>
<unit id="org.eclipse.xtend" version="0.0.0"/> <repository location="https://download.eclipse.org/modeling/tmf/xtext/updates/releases/2.26.0/"/>
<unit id="org.eclipse.xtend.typesystem.emf" version="0.0.0"/> </location>
<repository location="http://download.eclipse.org/releases/neon/201606221000/"/> <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
</location> <unit id="com.google.gson" version="2.8.9.v20220111-1409"/>
</locations> <unit id="com.google.inject" version="5.0.1.v20210324-2015"/>
<unit id="javax.inject" version="1.0.0.v20091030"/>
<unit id="org.antlr.runtime" version="3.2.0.v201101311130"/>
<unit id="org.junit" version="4.13.2.v20211018-1956"/>
<unit id="org.apiguardian" version="1.1.2.v20211018-1956"/>
<unit id="org.junit.jupiter.api" version="5.8.1.v20211018-1956"/>
<unit id="org.junit.jupiter.engine" version="5.8.1.v20211018-1956"/>
<unit id="org.junit.platform.commons" version="1.8.1.v20211018-1956"/>
<unit id="org.junit.platform.engine" version="1.8.1.v20211018-1956"/>
<unit id="org.junit.platform.launcher" version="1.8.1.v20211018-1956"/>
<unit id="org.junit.platform.runner" version="1.8.1.v20211018-1956"/>
<unit id="org.junit.platform.suite.commons" version="1.8.1.v20211018-1956"/>
<unit id="org.opentest4j" version="1.2.0.v20211018-1956"/>
<unit id="org.objectweb.asm" version="9.2.0.v20210813-1119"/>
<unit id="org.objectweb.asm.tree" version="9.2.0.v20210813-1119"/>
<unit id="io.github.classgraph" version="4.8.138.v20211212-1642"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/2022-03"/>
</location>
</locations>
</target> </target>

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.1.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.target</artifactId> <artifactId>com.minres.rdl.target</artifactId>
<packaging>eclipse-target-definition</packaging> <packaging>eclipse-target-definition</packaging>

View File

@ -3,7 +3,12 @@
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="src-gen"/> <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="src" path="xtend-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.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -0,0 +1 @@
/xtend-gen/

View File

@ -1,7 +1,10 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=1.8 org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=11

View File

@ -1,21 +1,15 @@
Manifest-Version: 1.0 Manifest-Version: 1.0
Automatic-Module-Name: com.minres.rdl.tests
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: com.minres.rdl.tests Bundle-Name: com.minres.rdl.tests
Bundle-Vendor: My Company Bundle-Vendor: My Company
Bundle-Version: 1.0.0.qualifier Bundle-Version: 1.4.1
Bundle-SymbolicName: com.minres.rdl.tests; singleton:=true Bundle-SymbolicName: com.minres.rdl.tests; singleton:=true
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Require-Bundle: com.minres.rdl, Require-Bundle: com.minres.rdl,
org.junit;bundle-version="4.12.0", org.junit.jupiter.api;bundle-version="[5.1.0,6.0.0)",
org.eclipse.xtext.testing, org.eclipse.xtext.testing,
org.eclipse.xtext.xbase.testing, org.eclipse.xtext.xbase.testing,
org.eclipse.xtext.xbase.lib org.eclipse.xtext.xbase.lib;bundle-version="2.14.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-RequiredExecutionEnvironment: JavaSE-11
Export-Package: com.minres.rdl.tests;x-internal=true Export-Package: com.minres.rdl.tests;x-internal=true
Import-Package: org.hamcrest.core,
org.junit;version="4.5.0",
org.junit.runners.model;version="4.5.0",
org.junit.runner;version="4.5.0",
org.junit.runners;version="4.5.0",
org.junit.runner.manipulation;version="4.5.0",
org.junit.runner.notification;version="4.5.0"

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.tests</artifactId> <artifactId>com.minres.rdl.tests</artifactId>
<packaging>eclipse-test-plugin</packaging> <packaging>eclipse-test-plugin</packaging>
@ -18,7 +18,7 @@
<plugin> <plugin>
<groupId>org.eclipse.tycho</groupId> <groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId> <artifactId>tycho-surefire-plugin</artifactId>
<version>${tycho-version}</version> <!-- <version>${tycho-version}</version> -->
<configuration> <configuration>
<failIfNoTests>false</failIfNoTests> <failIfNoTests>false</failIfNoTests>
</configuration> </configuration>

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.tests; package com.minres.rdl.tests;
@ -25,7 +25,6 @@ public class RDLInjectorProvider implements IInjectorProvider, IRegistryConfigur
@Override @Override
public Injector getInjector() { public Injector getInjector() {
if (injector == null) { if (injector == null) {
stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
this.injector = internalCreateInjector(); this.injector = internalCreateInjector();
stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState(); stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
} }
@ -56,11 +55,15 @@ public class RDLInjectorProvider implements IInjectorProvider, IRegistryConfigur
@Override @Override
public void restoreRegistry() { public void restoreRegistry() {
stateBeforeInjectorCreation.restoreGlobalState(); stateBeforeInjectorCreation.restoreGlobalState();
stateBeforeInjectorCreation = null;
} }
@Override @Override
public void setupRegistry() { public void setupRegistry() {
getInjector(); stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
if (injector == null) {
getInjector();
}
stateAfterInjectorCreation.restoreGlobalState(); stateAfterInjectorCreation.restoreGlobalState();
} }
} }

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.tests package com.minres.rdl.tests
@ -21,9 +21,53 @@ class RDLParsingTest {
@Test @Test
def void loadModel() { def void loadModel() {
val result = parseHelper.parse(''' val result = parseHelper.parse('''
Hello Xtext! regfile uart_regs {
reg {
name="txdata";
desc="Transmit data register";
field {} data[7:0];
field {} full[31:31];
} txdata @0x00;
reg {
name="rxdata";
desc="Receive data register";
field {} data[7:0];
field {} empty[31:31];
}rxdata @0x04;
reg {
name="txctrl";
desc="Transmit control register";
field {} txen[1];
field {} nstop[1];
field {} txcnt[18:16];
}txctrl @0x08;
reg {
name="rxctrl";
desc="Receive control register";
field {} rxen[1];
field {} rxcnt[18:16];
}rxctrl @0x0C;
reg {
name="ie";
desc="UART interrupt enable";
field{} txwm[1];
field{} rxwm[1];
}ie @0x10;
reg {
name="ip";
desc="UART Interrupt pending";
field{} txwm[1];
field{} rxwm[1];
} ip @0x14;
reg {
name="div";
desc="Baud rate divisor";
field{} div[16];
} div @0x18;
};
''') ''')
Assert.assertNotNull(result) Assert.assertNotNull(result)
Assert.assertTrue(result.eResource.errors.isEmpty) val errors = result.eResource.errors
Assert.assertTrue('''Unexpected errors: «errors.join(", ")»''', errors.isEmpty)
} }
} }

View File

@ -1,38 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.tests;
import com.google.inject.Inject;
import com.minres.rdl.rdl.Root;
import com.minres.rdl.tests.RDLInjectorProvider;
import org.eclipse.xtend2.lib.StringConcatenation;
import org.eclipse.xtext.testing.InjectWith;
import org.eclipse.xtext.testing.XtextRunner;
import org.eclipse.xtext.testing.util.ParseHelper;
import org.eclipse.xtext.xbase.lib.Exceptions;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
@RunWith(XtextRunner.class)
@InjectWith(RDLInjectorProvider.class)
@SuppressWarnings("all")
public class RDLParsingTest {
@Inject
private ParseHelper<Root> parseHelper;
@Test
public void loadModel() {
try {
StringConcatenation _builder = new StringConcatenation();
_builder.append("Hello Xtext!");
_builder.newLine();
final Root result = this.parseHelper.parse(_builder);
Assert.assertNotNull(result);
Assert.assertTrue(result.eResource().getErrors().isEmpty());
} catch (Throwable _e) {
throw Exceptions.sneakyThrow(_e);
}
}
}

View File

@ -3,7 +3,8 @@
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="src-gen"/> <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="src" path="xtend-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.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -0,0 +1 @@
/xtend-gen/

View File

@ -1,7 +1,10 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=1.8 org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=11

View File

@ -1,24 +1,18 @@
Manifest-Version: 1.0 Manifest-Version: 1.0
Automatic-Module-Name: com.minres.rdl.ui.tests
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: com.minres.rdl.ui.tests Bundle-Name: com.minres.rdl.ui.tests
Bundle-Vendor: My Company Bundle-Vendor: My Company
Bundle-Version: 1.0.0.qualifier Bundle-Version: 1.4.1
Bundle-SymbolicName: com.minres.rdl.ui.tests; singleton:=true Bundle-SymbolicName: com.minres.rdl.ui.tests; singleton:=true
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Require-Bundle: com.minres.rdl.ui, Require-Bundle: com.minres.rdl.ui,
org.junit;bundle-version="4.12.0", org.junit.jupiter.api;bundle-version="[5.1.0,6.0.0)",
org.eclipse.xtext.testing, org.eclipse.xtext.testing,
org.eclipse.xtext.xbase.testing, org.eclipse.xtext.xbase.testing,
org.eclipse.xtext.junit4,
org.eclipse.xtext.xbase.junit, org.eclipse.xtext.xbase.junit,
org.eclipse.core.runtime, org.eclipse.core.runtime,
org.eclipse.xtext.ui.testing,
org.eclipse.ui.workbench;resolution:=optional org.eclipse.ui.workbench;resolution:=optional
Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-RequiredExecutionEnvironment: JavaSE-11
Export-Package: com.minres.rdl.ui.tests;x-internal=true Export-Package: com.minres.rdl.ui.tests;x-internal=true
Import-Package: org.hamcrest.core,
org.junit;version="4.5.0",
org.junit.runners.model;version="4.5.0",
org.junit.runner;version="4.5.0",
org.junit.runners;version="4.5.0",
org.junit.runner.manipulation;version="4.5.0",
org.junit.runner.notification;version="4.5.0"

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.0.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.ui.tests</artifactId> <artifactId>com.minres.rdl.ui.tests</artifactId>
<packaging>eclipse-test-plugin</packaging> <packaging>eclipse-test-plugin</packaging>
@ -18,45 +18,12 @@
<plugin> <plugin>
<groupId>org.eclipse.tycho</groupId> <groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId> <artifactId>tycho-surefire-plugin</artifactId>
<version>${tycho-version}</version>
<configuration> <configuration>
<failIfNoTests>false</failIfNoTests> <failIfNoTests>false</failIfNoTests>
<useUIHarness>true</useUIHarness> <useUIHarness>true</useUIHarness>
</configuration> </configuration>
</plugin> </plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<configuration>
<dependency-resolution>
<extraRequirements>
<!-- to get the org.eclipse.osgi.compatibility.state plugin
if the target platform is Luna or later.
(backward compatible with kepler and previous versions)
see https://bugs.eclipse.org/bugs/show_bug.cgi?id=492149 -->
<requirement>
<type>eclipse-feature</type>
<id>org.eclipse.rcp</id>
<versionRange>0.0.0</versionRange>
</requirement>
</extraRequirements>
</dependency-resolution>
</configuration>
</plugin>
</plugins> </plugins>
</build> </build>
<profiles>
<profile>
<id>testing-on-mac</id>
<activation>
<os>
<family>mac</family>
</os>
</activation>
<properties>
<tycho.testArgLine>-XstartOnFirstThread</tycho.testArgLine>
</properties>
</profile>
</profiles>
</project> </project>

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ui.tests; package com.minres.rdl.ui.tests;

View File

@ -3,7 +3,7 @@
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="src-gen"/> <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="src" path="xtend-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="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -0,0 +1,2 @@
/plugin.xml_gen
/xtend-gen/

View File

@ -1,7 +1,10 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=1.8 org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=11

View File

@ -1,8 +1,9 @@
Manifest-Version: 1.0 Manifest-Version: 1.0
Automatic-Module-Name: com.minres.rdl.ui
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: com.minres.rdl.ui Bundle-Name: com.minres.rdl.ui
Bundle-Vendor: My Company Bundle-Vendor: MINRES Technologies GmbH
Bundle-Version: 1.1.0.qualifier Bundle-Version: 1.4.1
Bundle-SymbolicName: com.minres.rdl.ui; singleton:=true Bundle-SymbolicName: com.minres.rdl.ui; singleton:=true
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
Require-Bundle: com.minres.rdl, Require-Bundle: com.minres.rdl,
@ -15,11 +16,17 @@ Require-Bundle: com.minres.rdl,
org.eclipse.ui, org.eclipse.ui,
org.eclipse.compare, org.eclipse.compare,
org.eclipse.xtext.builder, org.eclipse.xtext.builder,
org.eclipse.xtend.lib;resolution:=optional, org.eclipse.xtext.xbase.lib;bundle-version="2.14.0",
org.eclipse.xtext.xbase.lib org.eclipse.xtend.lib;bundle-version="2.14.0";resolution:=optional,
org.eclipse.core.runtime,
org.eclipse.core.resources,
org.eclipse.ui.forms,
org.eclipse.jdt.core,
org.eclipse.pde.core
Import-Package: org.apache.log4j Import-Package: org.apache.log4j
Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-RequiredExecutionEnvironment: JavaSE-11
Export-Package: com.minres.rdl.ui.internal, Export-Package: com.minres.rdl.ui.internal,
com.minres.rdl.ui.contentassist,
com.minres.rdl.ui.quickfix, com.minres.rdl.ui.quickfix,
com.minres.rdl.ui.contentassist com.minres.rdl.ui.wizard
Bundle-Activator: com.minres.rdl.ui.internal.RdlActivator Bundle-Activator: com.minres.rdl.ui.internal.RdlActivator

View File

@ -3,5 +3,6 @@ source.. = src/,\
xtend-gen/ xtend-gen/
bin.includes = .,\ bin.includes = .,\
META-INF/,\ META-INF/,\
plugin.xml plugin.xml,\
icons/
bin.excludes = **/*.xtend bin.excludes = **/*.xtend

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 B

View File

@ -1,420 +1,510 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?> <?eclipse version="3.0"?>
<plugin> <plugin>
<extension <extension
point="org.eclipse.ui.editors"> point="org.eclipse.ui.editors">
<editor <editor
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor" contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
default="true" default="true"
extensions="rdl" extensions="rdl"
id="com.minres.rdl.RDL" id="com.minres.rdl.RDL"
name="RDL Editor"> name="RDL Editor">
</editor> </editor>
</extension> </extension>
<extension <extension
point="org.eclipse.ui.handlers"> point="org.eclipse.ui.handlers">
<handler <handler
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration"> commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
<activeWhen> <activeWhen>
<reference <reference
definitionId="com.minres.rdl.RDL.Editor.opened"> definitionId="com.minres.rdl.RDL.Editor.opened">
</reference> </reference>
</activeWhen> </activeWhen>
</handler> </handler>
<handler <handler
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
commandId="com.minres.rdl.RDL.validate"> commandId="com.minres.rdl.RDL.validate">
<activeWhen> <activeWhen>
<reference <reference
definitionId="com.minres.rdl.RDL.Editor.opened"> definitionId="com.minres.rdl.RDL.Editor.opened">
</reference> </reference>
</activeWhen> </activeWhen>
</handler> </handler>
<!-- copy qualified name --> <!-- copy qualified name -->
<handler <handler
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"> commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
<activeWhen> <activeWhen>
<reference definitionId="com.minres.rdl.RDL.Editor.opened" /> <reference definitionId="com.minres.rdl.RDL.Editor.opened" />
</activeWhen> </activeWhen>
</handler> </handler>
<handler <handler
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"> commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
<activeWhen> <activeWhen>
<and> <and>
<reference definitionId="com.minres.rdl.RDL.XtextEditor.opened" /> <reference definitionId="com.minres.rdl.RDL.XtextEditor.opened" />
<iterate> <iterate>
<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" /> <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
</iterate> </iterate>
</and> </and>
</activeWhen> </activeWhen>
</handler> </handler>
</extension> </extension>
<extension point="org.eclipse.core.expressions.definitions"> <extension point="org.eclipse.core.expressions.definitions">
<definition id="com.minres.rdl.RDL.Editor.opened"> <definition id="com.minres.rdl.RDL.Editor.opened">
<and> <and>
<reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/> <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
<with variable="activeEditor"> <with variable="activeEditor">
<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
value="com.minres.rdl.RDL" value="com.minres.rdl.RDL"
forcePluginActivation="true"/> forcePluginActivation="true"/>
</with> </with>
</and> </and>
</definition> </definition>
<definition id="com.minres.rdl.RDL.XtextEditor.opened"> <definition id="com.minres.rdl.RDL.XtextEditor.opened">
<and> <and>
<reference definitionId="isXtextEditorActive"/> <reference definitionId="isXtextEditorActive"/>
<with variable="activeEditor"> <with variable="activeEditor">
<test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
value="com.minres.rdl.RDL" value="com.minres.rdl.RDL"
forcePluginActivation="true"/> forcePluginActivation="true"/>
</with> </with>
</and> </and>
</definition> </definition>
</extension> </extension>
<extension <extension
point="org.eclipse.ui.preferencePages"> point="org.eclipse.ui.preferencePages">
<page <page
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
id="com.minres.rdl.RDL" id="com.minres.rdl.RDL"
name="RDL"> name="RDL">
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
</page> </page>
<page <page
category="com.minres.rdl.RDL" category="com.minres.rdl.RDL"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
id="com.minres.rdl.RDL.coloring" id="com.minres.rdl.RDL.coloring"
name="Syntax Coloring"> name="Syntax Coloring">
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
</page> </page>
<page <page
category="com.minres.rdl.RDL" category="com.minres.rdl.RDL"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
id="com.minres.rdl.RDL.templates" id="com.minres.rdl.RDL.templates"
name="Templates"> name="Templates">
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
</page> </page>
<page category="com.minres.rdl.RDL" <page category="com.minres.rdl.RDL"
class="com.minres.rdl.ui.preferences.RdlPreferencePage" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:com.minres.rdl.ui.preferences.RdlPreferencePage"
id="com.minres.rdl.ui.preferences.TextPreferencePage" id="com.minres.rdl.RDL.preferences"
name="Generator"> name="Output Configuration">
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
</page> </page>
</extension> </extension>
<extension point="org.eclipse.core.runtime.preferences"> <extension
<initializer class="com.minres.rdl.preferences.PreferenceInitializer"> point="org.eclipse.ui.propertyPages">
</initializer> <page
</extension> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
<extension id="com.minres.rdl.RDL"
point="org.eclipse.ui.propertyPages"> name="RDL">
<page <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage" <enabledWhen>
id="com.minres.rdl.RDL" <adapt type="org.eclipse.core.resources.IProject"/>
name="RDL"> </enabledWhen>
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
<enabledWhen> </page>
<adapt type="org.eclipse.core.resources.IProject"/> </extension>
</enabledWhen> <extension
<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/> point="org.eclipse.ui.keywords">
</page> <keyword
</extension> id="com.minres.rdl.ui.keyword_RDL"
<extension label="RDL"/>
point="org.eclipse.ui.keywords"> </extension>
<keyword <extension
id="com.minres.rdl.ui.keyword_RDL" point="org.eclipse.ui.commands">
label="RDL"/> <command
</extension> description="Trigger expensive validation"
<extension id="com.minres.rdl.RDL.validate"
point="org.eclipse.ui.commands"> name="Validate">
<command </command>
description="Trigger expensive validation" <!-- copy qualified name -->
id="com.minres.rdl.RDL.validate" <command
name="Validate"> id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
</command> categoryId="org.eclipse.ui.category.edit"
<!-- copy qualified name --> description="Copy the qualified name for the selected element"
<command name="Copy Qualified Name">
id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" </command>
categoryId="org.eclipse.ui.category.edit" <command
description="Copy the qualified name for the selected element" id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
name="Copy Qualified Name"> categoryId="org.eclipse.ui.category.edit"
</command> description="Copy the qualified name for the selected element"
<command name="Copy Qualified Name">
id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" </command>
categoryId="org.eclipse.ui.category.edit" </extension>
description="Copy the qualified name for the selected element" <extension point="org.eclipse.ui.menus">
name="Copy Qualified Name"> <menuContribution
</command> locationURI="popup:#TextEditorContext?after=group.edit">
</extension> <command
<extension point="org.eclipse.ui.menus"> commandId="com.minres.rdl.RDL.validate"
<menuContribution style="push"
locationURI="popup:#TextEditorContext?after=group.edit"> tooltip="Trigger expensive validation">
<command <visibleWhen checkEnabled="false">
commandId="com.minres.rdl.RDL.validate" <reference
style="push" definitionId="com.minres.rdl.RDL.Editor.opened">
tooltip="Trigger expensive validation"> </reference>
<visibleWhen checkEnabled="false"> </visibleWhen>
<reference </command>
definitionId="com.minres.rdl.RDL.Editor.opened"> </menuContribution>
</reference> <!-- copy qualified name -->
</visibleWhen> <menuContribution locationURI="popup:#TextEditorContext?after=copy">
</command> <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
</menuContribution> style="push" tooltip="Copy Qualified Name">
<!-- copy qualified name --> <visibleWhen checkEnabled="false">
<menuContribution locationURI="popup:#TextEditorContext?after=copy"> <reference definitionId="com.minres.rdl.RDL.Editor.opened" />
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" </visibleWhen>
style="push" tooltip="Copy Qualified Name"> </command>
<visibleWhen checkEnabled="false"> </menuContribution>
<reference definitionId="com.minres.rdl.RDL.Editor.opened" /> <menuContribution locationURI="menu:edit?after=copy">
</visibleWhen> <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
</command> style="push" tooltip="Copy Qualified Name">
</menuContribution> <visibleWhen checkEnabled="false">
<menuContribution locationURI="menu:edit?after=copy"> <reference definitionId="com.minres.rdl.RDL.Editor.opened" />
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" </visibleWhen>
style="push" tooltip="Copy Qualified Name"> </command>
<visibleWhen checkEnabled="false"> </menuContribution>
<reference definitionId="com.minres.rdl.RDL.Editor.opened" /> <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
</visibleWhen> <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
</command> style="push" tooltip="Copy Qualified Name">
</menuContribution> <visibleWhen checkEnabled="false">
<menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions"> <and>
<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" <reference definitionId="com.minres.rdl.RDL.XtextEditor.opened" />
style="push" tooltip="Copy Qualified Name"> <iterate>
<visibleWhen checkEnabled="false"> <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
<and> </iterate>
<reference definitionId="com.minres.rdl.RDL.XtextEditor.opened" /> </and>
<iterate> </visibleWhen>
<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" /> </command>
</iterate> </menuContribution>
</and> </extension>
</visibleWhen> <extension point="org.eclipse.ui.menus">
</command> <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
</menuContribution> <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
</extension> <visibleWhen checkEnabled="false">
<extension point="org.eclipse.ui.menus"> <reference definitionId="com.minres.rdl.RDL.Editor.opened">
<menuContribution locationURI="popup:#TextEditorContext?endof=group.find"> </reference>
<command commandId="org.eclipse.xtext.ui.editor.FindReferences"> </visibleWhen>
<visibleWhen checkEnabled="false"> </command>
<reference definitionId="com.minres.rdl.RDL.Editor.opened"> </menuContribution>
</reference> </extension>
</visibleWhen> <extension point="org.eclipse.ui.handlers">
</command> <handler
</menuContribution> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
</extension> commandId="org.eclipse.xtext.ui.editor.FindReferences">
<extension point="org.eclipse.ui.handlers"> <activeWhen>
<handler <reference
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler" definitionId="com.minres.rdl.RDL.Editor.opened">
commandId="org.eclipse.xtext.ui.editor.FindReferences"> </reference>
<activeWhen> </activeWhen>
<reference </handler>
definitionId="com.minres.rdl.RDL.Editor.opened"> </extension>
</reference> <extension point="org.eclipse.core.contenttype.contentTypes">
</activeWhen> <content-type
</handler> base-type="org.eclipse.core.runtime.text"
</extension> file-extensions="rdl"
<!-- adding resource factories --> id="com.minres.rdl.RDL.contenttype"
<extension name="RDL File"
point="org.eclipse.emf.ecore.extension_parser"> priority="normal">
<parser </content-type>
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory" </extension>
type="rdl"> <!-- adding resource factories -->
</parser> <extension
</extension> point="org.eclipse.emf.ecore.extension_parser">
<extension point="org.eclipse.xtext.extension_resourceServiceProvider"> <parser
<resourceServiceProvider class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider" type="rdl">
uriExtension="rdl"> </parser>
</resourceServiceProvider> </extension>
</extension> <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
<!-- marker definitions for com.minres.rdl.RDL --> <resourceServiceProvider
<extension class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
id="rdl.check.fast" uriExtension="rdl">
name="RDL Problem" </resourceServiceProvider>
point="org.eclipse.core.resources.markers"> </extension>
<super type="org.eclipse.xtext.ui.check.fast"/> <!-- marker definitions for com.minres.rdl.RDL -->
<persistent value="true"/> <extension
</extension> id="rdl.check.fast"
<extension name="RDL Problem"
id="rdl.check.normal" point="org.eclipse.core.resources.markers">
name="RDL Problem" <super type="org.eclipse.xtext.ui.check.fast"/>
point="org.eclipse.core.resources.markers"> <persistent value="true"/>
<super type="org.eclipse.xtext.ui.check.normal"/> </extension>
<persistent value="true"/> <extension
</extension> id="rdl.check.normal"
<extension name="RDL Problem"
id="rdl.check.expensive" point="org.eclipse.core.resources.markers">
name="RDL Problem" <super type="org.eclipse.xtext.ui.check.normal"/>
point="org.eclipse.core.resources.markers"> <persistent value="true"/>
<super type="org.eclipse.xtext.ui.check.expensive"/> </extension>
<persistent value="true"/> <extension
</extension> id="rdl.check.expensive"
<extension point="org.eclipse.xtext.builder.participant"> name="RDL Problem"
<participant point="org.eclipse.core.resources.markers">
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant" <super type="org.eclipse.xtext.ui.check.expensive"/>
fileExtensions="rdl"/> <persistent value="true"/>
</extension> </extension>
<extension point="org.eclipse.ui.preferencePages"> <extension point="org.eclipse.ui.preferencePages">
<page <page
category="com.minres.rdl.RDL" category="com.minres.rdl.RDL"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.validation.ValidatorPreferencePage"
id="com.minres.rdl.RDL.compiler.preferencePage" id="com.minres.rdl.RDL.validator.preferencePage"
name="Compiler"> name="Errors/Warnings">
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
</page> </page>
</extension> </extension>
<extension point="org.eclipse.ui.propertyPages"> <extension point="org.eclipse.ui.preferencePages">
<page <page
category="com.minres.rdl.RDL" category="com.minres.rdl.RDL"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
id="com.minres.rdl.RDL.compiler.propertyPage" id="com.minres.rdl.RDL.compiler.preferencePage"
name="Compiler"> name="Compiler">
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
<enabledWhen> </page>
<adapt type="org.eclipse.core.resources.IProject"/> </extension>
</enabledWhen> <extension point="org.eclipse.ui.propertyPages">
<filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/> <page
</page> category="com.minres.rdl.RDL"
</extension> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
<extension point="org.eclipse.ui.menus"> id="com.minres.rdl.RDL.compiler.propertyPage"
<menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration"> name="Compiler">
<command <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand" <enabledWhen>
id="com.minres.rdl.RDL.OpenGeneratedCode" <adapt type="org.eclipse.core.resources.IProject"/>
style="push"> </enabledWhen>
<visibleWhen checkEnabled="false"> <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
<reference definitionId="com.minres.rdl.RDL.Editor.opened" /> </page>
</visibleWhen> </extension>
</command> <extension point="org.eclipse.ui.menus">
</menuContribution> <menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration">
</extension> <command
<extension point="org.eclipse.ui.handlers"> commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"
<handler id="com.minres.rdl.RDL.OpenGeneratedCode"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler" style="push">
commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"> <visibleWhen checkEnabled="false">
<activeWhen> <reference definitionId="com.minres.rdl.RDL.Editor.opened" />
<reference definitionId="com.minres.rdl.RDL.Editor.opened" /> </visibleWhen>
</activeWhen> </command>
</handler> </menuContribution>
</extension> </extension>
<!-- Quick Outline --> <extension point="org.eclipse.ui.handlers">
<extension <handler
point="org.eclipse.ui.handlers"> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler"
<handler commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand">
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler" <activeWhen>
commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"> <reference definitionId="com.minres.rdl.RDL.Editor.opened" />
<activeWhen> </activeWhen>
<reference </handler>
definitionId="com.minres.rdl.RDL.Editor.opened"> </extension>
</reference> <!-- Quick Outline -->
</activeWhen> <extension
</handler> point="org.eclipse.ui.handlers">
</extension> <handler
<extension class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
point="org.eclipse.ui.commands"> commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
<command <activeWhen>
description="Open the quick outline." <reference
id="org.eclipse.xtext.ui.editor.outline.QuickOutline" definitionId="com.minres.rdl.RDL.Editor.opened">
name="Quick Outline"> </reference>
</command> </activeWhen>
</extension> </handler>
<extension point="org.eclipse.ui.menus"> </extension>
<menuContribution <extension
locationURI="popup:#TextEditorContext?after=group.open"> point="org.eclipse.ui.commands">
<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline" <command
style="push" description="Open the quick outline."
tooltip="Open Quick Outline"> id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
<visibleWhen checkEnabled="false"> name="Quick Outline">
<reference definitionId="com.minres.rdl.RDL.Editor.opened"/> </command>
</visibleWhen> </extension>
</command> <extension point="org.eclipse.ui.menus">
</menuContribution> <menuContribution
</extension> locationURI="popup:#TextEditorContext?after=group.open">
<!-- quickfix marker resolution generator for com.minres.rdl.RDL --> <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
<extension style="push"
point="org.eclipse.ui.ide.markerResolution"> tooltip="Open Quick Outline">
<markerResolutionGenerator <visibleWhen checkEnabled="false">
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" <reference definitionId="com.minres.rdl.RDL.Editor.opened"/>
markerType="com.minres.rdl.ui.rdl.check.fast"> </visibleWhen>
<attribute </command>
name="FIXABLE_KEY" </menuContribution>
value="true"> </extension>
</attribute> <!-- quickfix marker resolution generator for com.minres.rdl.RDL -->
</markerResolutionGenerator> <extension
<markerResolutionGenerator point="org.eclipse.ui.ide.markerResolution">
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" <markerResolutionGenerator
markerType="com.minres.rdl.ui.rdl.check.normal"> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
<attribute markerType="com.minres.rdl.ui.rdl.check.fast">
name="FIXABLE_KEY" <attribute
value="true"> name="FIXABLE_KEY"
</attribute> value="true">
</markerResolutionGenerator> </attribute>
<markerResolutionGenerator </markerResolutionGenerator>
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" <markerResolutionGenerator
markerType="com.minres.rdl.ui.rdl.check.expensive"> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
<attribute markerType="com.minres.rdl.ui.rdl.check.normal">
name="FIXABLE_KEY" <attribute
value="true"> name="FIXABLE_KEY"
</attribute> value="true">
</markerResolutionGenerator> </attribute>
</extension> </markerResolutionGenerator>
<!-- Rename Refactoring --> <markerResolutionGenerator
<extension point="org.eclipse.ui.handlers"> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
<handler markerType="com.minres.rdl.ui.rdl.check.expensive">
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler" <attribute
commandId="org.eclipse.xtext.ui.refactoring.RenameElement"> name="FIXABLE_KEY"
<activeWhen> value="true">
<reference </attribute>
definitionId="com.minres.rdl.RDL.Editor.opened"> </markerResolutionGenerator>
</reference> </extension>
</activeWhen> <!-- Rename Refactoring -->
</handler> <extension point="org.eclipse.ui.handlers">
</extension> <handler
<extension point="org.eclipse.ui.menus"> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
<menuContribution commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
locationURI="popup:#TextEditorContext?after=group.edit"> <activeWhen>
<command commandId="org.eclipse.xtext.ui.refactoring.RenameElement" <reference
style="push"> definitionId="com.minres.rdl.RDL.Editor.opened">
<visibleWhen checkEnabled="false"> </reference>
<reference </activeWhen>
definitionId="com.minres.rdl.RDL.Editor.opened"> </handler>
</reference> </extension>
</visibleWhen> <extension point="org.eclipse.ui.menus">
</command> <menuContribution
</menuContribution> locationURI="popup:#TextEditorContext?after=group.edit">
</extension> <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
<extension point="org.eclipse.ui.preferencePages"> style="push">
<page <visibleWhen checkEnabled="false">
category="com.minres.rdl.RDL" <reference
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage" definitionId="com.minres.rdl.RDL.Editor.opened">
id="com.minres.rdl.RDL.refactoring" </reference>
name="Refactoring"> </visibleWhen>
<keywordReference id="com.minres.rdl.ui.keyword_RDL"/> </command>
</page> </menuContribution>
</extension> </extension>
<extension point="org.eclipse.compare.contentViewers"> <extension point="org.eclipse.ui.preferencePages">
<viewer id="com.minres.rdl.RDL.compare.contentViewers" <page
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator" category="com.minres.rdl.RDL"
extensions="rdl"> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
</viewer> id="com.minres.rdl.RDL.refactoring"
</extension> name="Refactoring">
<extension point="org.eclipse.compare.contentMergeViewers"> <keywordReference id="com.minres.rdl.ui.keyword_RDL"/>
<viewer id="com.minres.rdl.RDL.compare.contentMergeViewers" </page>
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator" </extension>
extensions="rdl" label="RDL Compare"> <extension point="org.eclipse.compare.contentViewers">
</viewer> <viewer id="com.minres.rdl.RDL.compare.contentViewers"
</extension> class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
<extension point="org.eclipse.ui.editors.documentProviders"> extensions="rdl">
<provider id="com.minres.rdl.RDL.editors.documentProviders" </viewer>
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider" <contentTypeBinding
extensions="rdl"> contentTypeId="com.minres.rdl.RDL.contenttype"
</provider> contentViewerId="com.minres.rdl.RDL.compare.contentViewers" />
</extension> </extension>
<extension point="org.eclipse.team.core.fileTypes"> <extension point="org.eclipse.compare.contentMergeViewers">
<fileTypes <viewer id="com.minres.rdl.RDL.compare.contentMergeViewers"
extension="rdl" class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
type="text"> extensions="rdl" label="RDL Compare">
</fileTypes> </viewer>
</extension> <contentTypeBinding
contentTypeId="com.minres.rdl.RDL.contenttype"
contentMergeViewerId="com.minres.rdl.RDL.compare.contentMergeViewers" />
</extension>
<extension point="org.eclipse.ui.editors.documentProviders">
<provider id="com.minres.rdl.RDL.editors.documentProviders"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
extensions="rdl">
</provider>
</extension>
<extension point="org.eclipse.team.core.fileTypes">
<fileTypes
extension="rdl"
type="text">
</fileTypes>
</extension>
<extension
point="org.eclipse.ui.newWizards">
<category id="com.minres.category" name="MINRES">
</category>
<wizard
category="com.minres.category"
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.ui.wizard.template.TemplateNewProjectWizard"
id="com.minres.rdl.ui.wizard.RDLNewProjectWizard"
name="RDL Project"
icon="icons/new_RDL_proj.gif"
project="true">
</wizard>
</extension>
<extension
point="org.eclipse.xtext.ui.projectTemplate">
<projectTemplateProvider
class="com.minres.rdl.ui.wizard.RDLProjectTemplateProvider"
grammarName="com.minres.rdl.RDL">
</projectTemplateProvider>
</extension>
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension targetID="org.eclipse.ui.resourcePerspective">
<newWizardShortcut id="com.minres.rdl.ui.wizard.RDLNewProjectWizard"/>
</perspectiveExtension>
</extension>
<!-- <extension point="org.eclipse.xtext.builder.participant">
<participant
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
fileExtensions="rdl"/>
</extension>-->
<extension
point="org.eclipse.ui.handlers">
<handler
class="com.minres.rdl.ui.RDLExecutableExtensionFactory:com.minres.rdl.ui.builder.GenerationHandler"
commandId="com.minres.rdl.ui.handler.GenerationCommand">
</handler>
</extension>
<extension
point="org.eclipse.ui.commands">
<command name="Generate Code from RDL"
id="com.minres.rdl.ui.handler.GenerationCommand">
</command>
</extension>
<extension point="org.eclipse.ui.menus">
<menuContribution locationURI="popup:org.eclipse.ui.navigator.ProjectExplorer#PopupMenu">
<command
commandId="com.minres.rdl.ui.handler.GenerationCommand"
style="push">
<visibleWhen
checkEnabled="false">
<iterate>
<adapt type="org.eclipse.core.resources.IResource">
<test property="org.eclipse.core.resources.name"
value="*.rdl"/>
</adapt>
</iterate>
</visibleWhen>
</command>
</menuContribution>
</extension>
<extension point="org.eclipse.ui.menus">
<menuContribution locationURI="popup:#TextEditorContext?after=additions">
<command
commandId="com.minres.rdl.ui.handler.GenerationCommand"
style="push">
<visibleWhen checkEnabled="false">
<reference
definitionId="com.minres.rdl.RDL.Editor.opened">
</reference>
</visibleWhen>
</command>
</menuContribution>
</extension>
</plugin> </plugin>

View File

@ -4,7 +4,7 @@
<parent> <parent>
<groupId>com.minres.rdl</groupId> <groupId>com.minres.rdl</groupId>
<artifactId>com.minres.rdl.parent</artifactId> <artifactId>com.minres.rdl.parent</artifactId>
<version>1.1.0-SNAPSHOT</version> <version>1.4.1</version>
</parent> </parent>
<artifactId>com.minres.rdl.ui</artifactId> <artifactId>com.minres.rdl.ui</artifactId>
<packaging>eclipse-plugin</packaging> <packaging>eclipse-plugin</packaging>
@ -17,5 +17,4 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
</project> </project>

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ui; package com.minres.rdl.ui;
@ -14,6 +14,7 @@ import com.minres.rdl.ui.labeling.RDLDescriptionLabelProvider;
import com.minres.rdl.ui.labeling.RDLLabelProvider; import com.minres.rdl.ui.labeling.RDLLabelProvider;
import com.minres.rdl.ui.outline.RDLOutlineTreeProvider; import com.minres.rdl.ui.outline.RDLOutlineTreeProvider;
import com.minres.rdl.ui.quickfix.RDLQuickfixProvider; import com.minres.rdl.ui.quickfix.RDLQuickfixProvider;
import com.minres.rdl.validation.RDLValidatorConfigurationBlock;
import org.eclipse.compare.IViewerCreator; import org.eclipse.compare.IViewerCreator;
import org.eclipse.core.resources.IWorkspaceRoot; import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.resources.ResourcesPlugin;
@ -58,6 +59,8 @@ import org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper;
import org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher; 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.AntlrProposalConflictHelper;
import org.eclipse.xtext.ui.editor.contentassist.antlr.DelegatingContentAssistContextFactory; 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.IOutlineTreeProvider;
import org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider; import org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider;
import org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer; import org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer;
@ -76,6 +79,9 @@ import org.eclipse.xtext.ui.refactoring.ui.IRenameSupport;
import org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences; import org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences;
import org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider; import org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider;
import org.eclipse.xtext.ui.shared.Access; import org.eclipse.xtext.ui.shared.Access;
import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock;
import org.eclipse.xtext.ui.wizard.IProjectCreator;
import org.eclipse.xtext.ui.wizard.template.DefaultTemplateProjectCreator;
/** /**
* Manual modifications go to {@link RDLUiModule}. * Manual modifications go to {@link RDLUiModule}.
@ -133,6 +139,11 @@ public abstract class AbstractRDLUiModule extends DefaultUiModule {
binder.bind(InternalRDLLexer.class).toProvider(LexerProvider.create(InternalRDLLexer.class)); binder.bind(InternalRDLLexer.class).toProvider(LexerProvider.create(InternalRDLLexer.class));
} }
// contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
public Class<? extends AbstractValidatorConfigurationBlock> bindAbstractValidatorConfigurationBlock() {
return RDLValidatorConfigurationBlock.class;
}
// contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
public Class<? extends PrefixMatcher> bindPrefixMatcher() { public Class<? extends PrefixMatcher> bindPrefixMatcher() {
return FQNPrefixMatcher.class; return FQNPrefixMatcher.class;
@ -180,6 +191,11 @@ public abstract class AbstractRDLUiModule extends DefaultUiModule {
.to(BuilderPreferenceAccess.Initializer.class); .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 // contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2
public Class<? extends ILabelProvider> bindILabelProvider() { public Class<? extends ILabelProvider> bindILabelProvider() {
return RDLLabelProvider.class; return RDLLabelProvider.class;
@ -210,6 +226,13 @@ public abstract class AbstractRDLUiModule extends DefaultUiModule {
return RDLProposalProvider.class; return RDLProposalProvider.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 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
public Class<? extends IRenameStrategy> bindIRenameStrategy() { public Class<? extends IRenameStrategy> bindIRenameStrategy() {
return DefaultRenameStrategy.class; return DefaultRenameStrategy.class;
@ -220,13 +243,6 @@ public abstract class AbstractRDLUiModule extends DefaultUiModule {
return DefaultReferenceUpdater.class; 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 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
public Class<? extends IRenameRefactoringProvider> bindIRenameRefactoringProvider() { public Class<? extends IRenameRefactoringProvider> bindIRenameRefactoringProvider() {
return DefaultRenameRefactoringProvider.class; return DefaultRenameRefactoringProvider.class;
@ -278,6 +294,11 @@ public abstract class AbstractRDLUiModule extends DefaultUiModule {
binder.bind(String.class).annotatedWith(Names.named(UIBindings.COMPARE_VIEWER_TITLE)).toInstance("RDL Compare"); binder.bind(String.class).annotatedWith(Names.named(UIBindings.COMPARE_VIEWER_TITLE)).toInstance("RDL Compare");
} }
// contributed by org.eclipse.xtext.xtext.generator.ui.projectWizard.TemplateProjectWizardFragment
public Class<? extends IProjectCreator> bindIProjectCreator() {
return DefaultTemplateProjectCreator.class;
}
// contributed by org.eclipse.xtext.xtext.generator.exporting.SimpleNamesFragment2 // contributed by org.eclipse.xtext.xtext.generator.exporting.SimpleNamesFragment2
public Class<? extends IDependentElementsCalculator> bindIDependentElementsCalculator() { public Class<? extends IDependentElementsCalculator> bindIDependentElementsCalculator() {
return DefaultDependentElementsCalculator.class; return DefaultDependentElementsCalculator.class;

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ui; package com.minres.rdl.ui;
@ -7,6 +7,7 @@ import com.google.inject.Injector;
import com.minres.rdl.ui.internal.RdlActivator; import com.minres.rdl.ui.internal.RdlActivator;
import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory; import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
import org.osgi.framework.Bundle; import org.osgi.framework.Bundle;
import org.osgi.framework.FrameworkUtil;
/** /**
* This class was generated. Customizations should only happen in a newly * This class was generated. Customizations should only happen in a newly
@ -16,12 +17,13 @@ public class RDLExecutableExtensionFactory extends AbstractGuiceAwareExecutableE
@Override @Override
protected Bundle getBundle() { protected Bundle getBundle() {
return RdlActivator.getInstance().getBundle(); return FrameworkUtil.getBundle(RdlActivator.class);
} }
@Override @Override
protected Injector getInjector() { protected Injector getInjector() {
return RdlActivator.getInstance().getInjector(RdlActivator.COM_MINRES_RDL_RDL); RdlActivator activator = RdlActivator.getInstance();
return activator != null ? activator.getInjector(RdlActivator.COM_MINRES_RDL_RDL) : null;
} }
} }

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ui.contentassist; package com.minres.rdl.ui.contentassist;

View File

@ -1,12 +1,11 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.26.0
*/ */
package com.minres.rdl.ui.internal; package com.minres.rdl.ui.internal;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.google.inject.Guice; import com.google.inject.Guice;
import com.google.inject.Injector; import com.google.inject.Injector;
import com.google.inject.Module;
import com.minres.rdl.RDLRuntimeModule; import com.minres.rdl.RDLRuntimeModule;
import com.minres.rdl.ui.RDLUiModule; import com.minres.rdl.ui.RDLUiModule;
import java.util.Collections; import java.util.Collections;
@ -23,6 +22,7 @@ import org.osgi.framework.BundleContext;
*/ */
public class RdlActivator extends AbstractUIPlugin { public class RdlActivator extends AbstractUIPlugin {
public static final String PLUGIN_ID = "com.minres.rdl.ui";
public static final String COM_MINRES_RDL_RDL = "com.minres.rdl.RDL"; public static final String COM_MINRES_RDL_RDL = "com.minres.rdl.RDL";
private static final Logger logger = Logger.getLogger(RdlActivator.class); private static final Logger logger = Logger.getLogger(RdlActivator.class);
@ -60,10 +60,10 @@ public class RdlActivator extends AbstractUIPlugin {
protected Injector createInjector(String language) { protected Injector createInjector(String language) {
try { try {
Module runtimeModule = getRuntimeModule(language); com.google.inject.Module runtimeModule = getRuntimeModule(language);
Module sharedStateModule = getSharedStateModule(); com.google.inject.Module sharedStateModule = getSharedStateModule();
Module uiModule = getUiModule(language); com.google.inject.Module uiModule = getUiModule(language);
Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule); com.google.inject.Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
return Guice.createInjector(mergedModule); return Guice.createInjector(mergedModule);
} catch (Exception e) { } catch (Exception e) {
logger.error("Failed to create injector for " + language); logger.error("Failed to create injector for " + language);
@ -72,22 +72,23 @@ public class RdlActivator extends AbstractUIPlugin {
} }
} }
protected Module getRuntimeModule(String grammar) { protected com.google.inject.Module getRuntimeModule(String grammar) {
if (COM_MINRES_RDL_RDL.equals(grammar)) { if (COM_MINRES_RDL_RDL.equals(grammar)) {
return new RDLRuntimeModule(); return new RDLRuntimeModule();
} }
throw new IllegalArgumentException(grammar); throw new IllegalArgumentException(grammar);
} }
protected Module getUiModule(String grammar) { protected com.google.inject.Module getUiModule(String grammar) {
if (COM_MINRES_RDL_RDL.equals(grammar)) { if (COM_MINRES_RDL_RDL.equals(grammar)) {
return new RDLUiModule(this); return new RDLUiModule(this);
} }
throw new IllegalArgumentException(grammar); throw new IllegalArgumentException(grammar);
} }
protected Module getSharedStateModule() { protected com.google.inject.Module getSharedStateModule() {
return new SharedStateModule(); return new SharedStateModule();
} }
} }

View File

@ -0,0 +1,35 @@
/*
* generated by Xtext 2.26.0
*/
package com.minres.rdl.validation;
import org.eclipse.jface.dialogs.IDialogSettings;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock;
@SuppressWarnings("restriction")
public class RDLValidatorConfigurationBlock extends AbstractValidatorConfigurationBlock {
protected static final String SETTINGS_SECTION_NAME = "RDL";
@Override
protected void fillSettingsPage(Composite composite, int nColumns, int defaultIndent) {
addComboBox(RDLConfigurableIssueCodesProvider.DEPRECATED_MODEL_PART, "Deprecated Model Part", composite, defaultIndent);
}
@Override
public void dispose() {
storeSectionExpansionStates(getDialogSettings());
super.dispose();
}
@Override
protected IDialogSettings getDialogSettings() {
IDialogSettings dialogSettings = super.getDialogSettings();
IDialogSettings section = dialogSettings.getSection(SETTINGS_SECTION_NAME);
if (section == null) {
return dialogSettings.addNewSection(SETTINGS_SECTION_NAME);
}
return section;
}
}

View File

@ -1,11 +1,17 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ui package com.minres.rdl.ui
import com.minres.rdl.ui.hyperlink.RdlHyperlinkHelper
import com.minres.rdl.ui.hyperlink.RdlXtextHyperlink
import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor
import org.eclipse.xtext.ui.editor.hover.IEObjectHoverProvider
import org.eclipse.xtext.documentation.IEObjectDocumentationProvider import org.eclipse.xtext.documentation.IEObjectDocumentationProvider
import org.eclipse.xtext.ui.editor.hover.IEObjectHoverProvider
import org.eclipse.xtext.ui.editor.hyperlinking.HyperlinkHelper
import org.eclipse.xtext.ui.editor.hyperlinking.XtextHyperlink
import org.eclipse.xtext.ui.resource.IResourceSetProvider
import org.eclipse.xtext.ui.resource.SimpleResourceSetProvider
/** /**
* Use this class to register components to be used within the Eclipse IDE. * Use this class to register components to be used within the Eclipse IDE.
@ -21,4 +27,20 @@ class RDLUiModule extends AbstractRDLUiModule {
typeof(RDLEObjectDocumentationProvider); typeof(RDLEObjectDocumentationProvider);
} }
// override Class<? extends IProjectCreator> bindIProjectCreator() {
// return JDTFreeStructuralProjectCreator;
// }
override Class<? extends IResourceSetProvider> bindIResourceSetProvider() {
return SimpleResourceSetProvider
}
def Class<? extends HyperlinkHelper> bindHyperlinkHelper() {
return RdlHyperlinkHelper
}
def Class<? extends XtextHyperlink> bindHyperlink() {
return RdlXtextHyperlink
}
} }

View File

@ -0,0 +1,134 @@
package com.minres.rdl.ui.builder;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.IHandler;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
import org.eclipse.core.runtime.preferences.InstanceScope;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.handlers.HandlerUtil;
import org.eclipse.xtext.builder.EclipseResourceFileSystemAccess2;
import org.eclipse.xtext.generator.IGenerator2;
import org.eclipse.xtext.resource.IResourceDescriptions;
import org.eclipse.xtext.resource.XtextResource;
import org.eclipse.xtext.ui.editor.XtextEditor;
import org.eclipse.xtext.ui.resource.IResourceSetProvider;
import org.eclipse.xtext.util.CancelIndicator;
import org.eclipse.xtext.util.concurrent.IUnitOfWork;
import com.google.inject.Inject;
import com.google.inject.Provider;
import com.minres.rdl.generator.RdlGeneratorContext;
import com.minres.rdl.preferences.PreferenceConstants;
public class GenerationHandler extends AbstractHandler implements IHandler {
@Inject
private IGenerator2 generator;
@Inject
private Provider<EclipseResourceFileSystemAccess2> fileAccessProvider;
@Inject
IResourceDescriptions resourceDescriptions;
@Inject
IResourceSetProvider resourceSetProvider;
IEclipsePreferences preferences = InstanceScope.INSTANCE.getNode(PreferenceConstants.SCOPE_NAME);
@Override
public Object execute(ExecutionEvent event) {
RdlGeneratorContext context = new RdlGeneratorContext();
context.cancelIndicator = CancelIndicator.NullImpl;
context.namespace = preferences.get(PreferenceConstants.P_NAMESPACE, "sysc");
context.forceOverwrite=preferences.getBoolean(PreferenceConstants.P_OVERWRITE_STUBS, false);
String whatToGenerate = preferences.get(PreferenceConstants.P_FILETYPES_TO_GENERATE, "all");
if(whatToGenerate=="sc-comp") {
context.generateFw=false;
} else if(whatToGenerate=="fw") {
context.generateSc=false;
}
context.forceOverwrite=preferences.getBoolean(PreferenceConstants.P_OVERWRITE_STUBS, false);
context.fwPathModifier=preferences.get(PreferenceConstants.P_FIRMWARE_PATH, "");
context.scPathModifier=preferences.get(PreferenceConstants.P_COMPONENT_PATH, "");
String outputDir = preferences.get("outlet.DEFAULT_OUTPUT.directory", "src-gen");
IEditorPart activeEditor = HandlerUtil.getActiveEditor(event);
IWorkbenchPart activePart = HandlerUtil.getActivePart(event);
if (activeEditor instanceof XtextEditor && activeEditor == activePart) {
IFile file = (IFile) activeEditor.getEditorInput().getAdapter(IFile.class);
if (file != null) {
final EclipseResourceFileSystemAccess2 fsa = getFsa(outputDir, file, context.fwPathModifier, context.scPathModifier);
((XtextEditor)activeEditor).getDocument().readOnly(new IUnitOfWork<Boolean, XtextResource>() {
@Override
public Boolean exec(XtextResource state) throws Exception {
generator.doGenerate(state, fsa, context);
return Boolean.TRUE;
}
});
}
} else {
ISelection selection = HandlerUtil.getCurrentSelection(event);
if (selection instanceof IStructuredSelection) {
IStructuredSelection structuredSelection = (IStructuredSelection) selection;
for (Object element : structuredSelection) {
if (element instanceof IFile) {
IFile file = (IFile) element;
final EclipseResourceFileSystemAccess2 fsa = getFsa(outputDir, file, context.fwPathModifier, context.scPathModifier);
URI uri = URI.createPlatformResourceURI(file.getFullPath().toString(), true);
Resource r = resourceSetProvider.get(file.getProject()).getResource(uri, true);
try {
generator.doGenerate(r, fsa, context);
} finally {}
}
}
}
}
return null;
}
private EclipseResourceFileSystemAccess2 getFsa(String outputDir, IFile file, String fwPath, String scPath) {
IProject project = file.getProject();
IFolder srcGenFolder = project.getFolder(outputDir);
createIfNotExists(srcGenFolder);
if(fwPath.length()>0) createIfNotExists(srcGenFolder.getFolder(fwPath));
if(scPath.length()>0) createIfNotExists(srcGenFolder.getFolder(scPath));
final EclipseResourceFileSystemAccess2 fsa = fileAccessProvider.get();
fsa.setOutputPath("src-gen");
String scGenFolderPath = (fwPath.length()>0? srcGenFolder.getFolder(scPath) : srcGenFolder).getProjectRelativePath().toString();
fsa.setOutputPath("sc-incl-out", scGenFolderPath);
fsa.setOutputPath("sc-src-out", scGenFolderPath);
String fwGenFolderPath = (fwPath.length()>0? srcGenFolder.getFolder(fwPath) : srcGenFolder).getProjectRelativePath().toString();
fsa.setOutputPath("fw-incl-out", fwGenFolderPath);
fsa.setOutputPath("fw-src-out", fwGenFolderPath);
fsa.setProject(project);
fsa.setMonitor(new NullProgressMonitor());
return fsa;
}
private void createIfNotExists(IFolder srcGenFolder) {
if (!srcGenFolder.exists()) {
try {
srcGenFolder.create(true, true, new NullProgressMonitor());
} catch (CoreException e) { }
}
}
@Override
public boolean isEnabled() {
return true;
}
}

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ui.contentassist package com.minres.rdl.ui.contentassist

View File

@ -0,0 +1,53 @@
package com.minres.rdl.ui.hyperlink
import com.google.inject.Inject
import org.eclipse.emf.common.util.URI
import org.eclipse.emf.ecore.util.EcoreUtil
import org.eclipse.jface.text.Region
import org.eclipse.xtext.EcoreUtil2
import org.eclipse.xtext.nodemodel.util.NodeModelUtils
import org.eclipse.xtext.resource.XtextResource
import org.eclipse.xtext.scoping.impl.ImportUriResolver
import org.eclipse.xtext.ui.editor.hyperlinking.HyperlinkHelper
import org.eclipse.xtext.ui.editor.hyperlinking.IHyperlinkAcceptor
import org.eclipse.xtext.util.TextRegion
import org.eclipse.jface.text.IRegion
class RdlHyperlinkHelper extends HyperlinkHelper {
@Inject ImportUriResolver resolver;
override createHyperlinksByOffset(XtextResource resource, int offset, IHyperlinkAcceptor acceptor) {
val region = new TextRegion(offset, 0)
val crossRefNode = getEObjectAtOffsetHelper().getCrossReferenceNode(resource, region);
if (crossRefNode === null){
val parseResult = resource.getParseResult();
if (parseResult !== null) {
val leaf = NodeModelUtils.findLeafNodeAtOffset(parseResult.getRootNode(), region.getOffset());
//val rule = EcoreUtil2.getContainerOfType(leaf.grammarElement, AbstractRule);
val semObj = NodeModelUtils.findActualSemanticObjectFor(leaf);
val importURI = resolver.resolve(semObj);
if (importURI !== null && EcoreUtil2.isValidUri(semObj, URI.createURI(importURI))) {
val referencedResource = EcoreUtil2.getResource(resource, importURI)
if(referencedResource !== null && referencedResource.contents.size>0){
val top = referencedResource.contents.get(0)
val textRegion = leaf.getTextRegion();
val uri = EcoreUtil.getURI(top);
val result = hyperlinkProvider.get();
result.setHyperlinkRegion(new Region(textRegion.getOffset(), textRegion.getLength()) as IRegion);
result.setURI(if(uri.isPlatformResource()) uri else resource.getResourceSet().getURIConverter().normalize(uri));
result.setHyperlinkText(labelProvider.getText(top));
if(result instanceof RdlXtextHyperlink) result.selectTarget=false
acceptor.accept(result);
}
}
}
} else {
val crossLinkedEObject = getEObjectAtOffsetHelper().getCrossReferencedElement(crossRefNode);
if (crossLinkedEObject !== null && !crossLinkedEObject.eIsProxy()) {
createHyperlinksTo(resource, crossRefNode, crossLinkedEObject, acceptor);
}
}
}
}

View File

@ -0,0 +1,24 @@
package com.minres.rdl.ui.hyperlink
import com.google.inject.Inject
import org.eclipse.xtext.ui.editor.IURIEditorOpener
import org.eclipse.xtext.ui.editor.hyperlinking.XtextHyperlink
class RdlXtextHyperlink extends XtextHyperlink {
var boolean select = true
@Inject var IURIEditorOpener uriEditorOpener;
override void open() {
uriEditorOpener.open(getURI(), select);
}
def boolean getSelectTarget(){
return select
}
def void setSelectTarget(boolean select){
this.select=select
}
}

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ui.labeling package com.minres.rdl.ui.labeling

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ui.labeling package com.minres.rdl.ui.labeling
@ -43,7 +43,10 @@ class RDLLabelProvider extends DefaultEObjectLabelProvider {
val pa = e.propertyAssignments.findFirst[PropertyAssignment pa | val pa = e.propertyAssignments.findFirst[PropertyAssignment pa |
pa instanceof ExplicitPropertyAssignment && (pa as ExplicitPropertyAssignment).name==PropertyEnum.NAME pa instanceof ExplicitPropertyAssignment && (pa as ExplicitPropertyAssignment).name==PropertyEnum.NAME
] ]
e.type.literal+' '+ text((pa as ExplicitPropertyAssignment).rhs) if(pa!== null)
e.type.literal+' '+ text((pa as ExplicitPropertyAssignment).rhs)
else
e.type.literal
} }
} }

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ui.outline package com.minres.rdl.ui.outline

View File

@ -8,6 +8,7 @@ import com.minres.rdl.preferences.PreferenceConstants
import org.eclipse.ui.preferences.ScopedPreferenceStore import org.eclipse.ui.preferences.ScopedPreferenceStore
import org.eclipse.core.runtime.preferences.InstanceScope import org.eclipse.core.runtime.preferences.InstanceScope
import org.eclipse.jface.preference.ComboFieldEditor import org.eclipse.jface.preference.ComboFieldEditor
import org.eclipse.jface.preference.StringFieldEditor
class RdlPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage { class RdlPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
@ -21,6 +22,12 @@ class RdlPreferencePage extends FieldEditorPreferencePage implements IWorkbenchP
override createFieldEditors() { override createFieldEditors() {
addField(new BooleanFieldEditor(PreferenceConstants.P_GENERATE_CSV, "Generate CSV:", getFieldEditorParent())); addField(new BooleanFieldEditor(PreferenceConstants.P_GENERATE_CSV, "Generate CSV:", getFieldEditorParent()));
addField(new ComboFieldEditor(PreferenceConstants.P_ADDRESSUNIT, "Address unit size", #[#["Byte (8bit)","byte"], #["Word (16bit)","word"], #["DWord (32bit)","dword"]], getFieldEditorParent())) addField(new ComboFieldEditor(PreferenceConstants.P_ADDRESSUNIT, "Address unit size", #[#["Byte (8bit)","byte"], #["Word (16bit)","word"], #["DWord (32bit)","dword"]], getFieldEditorParent()))
addField(new StringFieldEditor(PreferenceConstants.P_NAMESPACE, "Namespace of generated SystemC", 30, getFieldEditorParent()))
addField(new BooleanFieldEditor(PreferenceConstants.P_OVERWRITE_STUBS, "Always overwrite component stubs", getFieldEditorParent()));
addField(new ComboFieldEditor(PreferenceConstants.P_FILETYPES_TO_GENERATE, "File types to generate", #[#["All","all"], #["FW only","fw"], #["SC components","sc-comp"]], getFieldEditorParent()))
addField(new StringFieldEditor(PreferenceConstants.P_COMPONENT_PATH, "relative path for SystemC files", 30, getFieldEditorParent()))
addField(new StringFieldEditor(PreferenceConstants.P_FIRMWARE_PATH, "relative path for FW files", 30, getFieldEditorParent()))
addField(new StringFieldEditor(PreferenceConstants.P_COPYRIGHT_HEADER, "Copyright header", 40, 5, StringFieldEditor.VALIDATE_ON_KEY_STROKE, getFieldEditorParent()))
} }
override init(IWorkbench workbench) { override init(IWorkbench workbench) {

View File

@ -1,5 +1,5 @@
/* /*
* generated by Xtext 2.12.0 * generated by Xtext 2.14.0
*/ */
package com.minres.rdl.ui.quickfix package com.minres.rdl.ui.quickfix

View File

@ -0,0 +1,20 @@
package com.minres.rdl.ui.wizard;
import org.eclipse.osgi.util.NLS;
public class Messages extends NLS {
private static final String BUNDLE_NAME = "com.minres.rdl.ui.wizard.messages"; //$NON-NLS-1$
public static String HelloWorldProject_Label;
public static String HelloWorldProject_Description;
public static String RdlProject_Label;
public static String RdlProject_Description;
static {
// initialize resource bundle
NLS.initializeMessages(BUNDLE_NAME, Messages.class);
}
private Messages() {
}
}

View File

@ -0,0 +1,81 @@
/*
* generated by Xtext 2.14.0
*/
package com.minres.rdl.ui.wizard
import org.eclipse.xtext.ui.XtextProjectHelper
import org.eclipse.xtext.ui.util.PluginProjectFactory
import org.eclipse.xtext.ui.wizard.template.IProjectGenerator
import org.eclipse.xtext.ui.wizard.template.IProjectTemplateProvider
import org.eclipse.xtext.ui.wizard.template.ProjectTemplate
/**
* Create a list with all project templates to be shown in the template new project wizard.
*
* Each template is able to generate one or more projects. Each project can be configured such that any number of files are included.
*/
class RDLProjectTemplateProvider implements IProjectTemplateProvider {
override getProjectTemplates() {
#[new RdlProject]
}
}
@ProjectTemplate(
label="RDL template",
icon="project_template.png",
description="<p><b>RDL</b></p><p>This is a simple project for RDL.</p>")
final class RdlProject {
// val advanced = check("Advanced:", false)
// val advancedGroup = group("Properties")
// val name = combo("Name:", #["Xtext", "World", "Foo", "Bar"], "The name to say 'Hello' to", advancedGroup)
// val path = text("Package:", "mydsl", "The package path to place the files in", advancedGroup)
//
// override protected updateVariables() {
// name.enabled = advanced.value
// path.enabled = advanced.value
// if (!advanced.value) {
// name.value = "Xtext"
// path.value = "rdl"
// }
// }
//
// override protected validate() {
// if (path.value.matches('[a-z][a-z0-9_]*(/[a-z][a-z0-9_]*)*'))
// null
// else
// new Status(ERROR, "Wizard", "'" + path + "' is not a valid package name")
// }
override generateProjects(IProjectGenerator generator) {
generator.generate(new PluginProjectFactory => [
projectName = projectInfo.projectName
location = projectInfo.locationPath
projectNatures += XtextProjectHelper.NATURE_ID //#[JavaCore.NATURE_ID, "org.eclipse.pde.PluginNature", XtextProjectHelper.NATURE_ID]
builderIds += XtextProjectHelper.BUILDER_ID //JavaCore.BUILDER_ID
folders += "src"
addFile('''src/Model.rdl''', '''
enum ERRSLICE0_MISSIONERR_ENABLE_ERR25_enum{
DISABLE = 1'd0;
ENABLE = 1'd1;
};
addrmap {
name = "foo registers";
desc = "this is a bunch of foo regs bla bla bla";
regfile bar_regs {
name = "bar registers";
desc = "this is a bunch of bar regs bla bla bla";
reg {
field { name="field 1"; sw=rw; hw=rw; we; } fld1[9:0] = 10'd0;
field { name="field 2"; sw=rw; hw=r; } fld2[15:15];
field {encode=ERRSLICE0_MISSIONERR_ENABLE_ERR25_enum; sw=rw; hw=r; reset=1'h1;} ERR25[25:25];
} a_reg[2];
} bar;
} foo;
''')
])
}
}

View File

@ -0,0 +1,4 @@
HelloWorldProject_Label=Hello World
HelloWorldProject_Description=<p><b>Hello World</b></p> <p>This is a parameterized hello world for RDL. You can set a parameter to modify the content in the generated file and a parameter to set the package the file is created in.</p>
RdlProject_Label=RDL template
RdlProject_Description=<p><b>RDL</b></p><p>This is a simple project for RDL.</p>

View File

@ -1,12 +0,0 @@
package com.minres.rdl.ui;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.documentation.IEObjectDocumentationProvider;
@SuppressWarnings("all")
public class RDLEObjectDocumentationProvider implements IEObjectDocumentationProvider {
@Override
public String getDocumentation(final EObject o) {
return null;
}
}

View File

@ -1,46 +0,0 @@
package com.minres.rdl.ui;
import com.minres.rdl.rdl.ComponentDefinition;
import com.minres.rdl.rdl.ComponentDefinitionType;
import com.minres.rdl.rdl.ComponentInstance;
import com.minres.rdl.rdl.Instantiation;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.ui.editor.hover.html.DefaultEObjectHoverProvider;
import org.eclipse.xtext.xbase.lib.StringExtensions;
@SuppressWarnings("all")
public class RDLEObjectHoverProvider extends DefaultEObjectHoverProvider {
@Override
protected String getFirstLine(final EObject o) {
boolean _matched = false;
if (o instanceof ComponentDefinition) {
_matched=true;
String _name = ((ComponentDefinition)o).getName();
String _plus = ("Component " + _name);
String _plus_1 = (_plus + " of type ");
String _literal = ((ComponentDefinition)o).getType().getLiteral();
return (_plus_1 + _literal);
}
if (!_matched) {
if (o instanceof ComponentInstance) {
_matched=true;
final EObject parent = ((ComponentInstance)o).eContainer();
if ((parent instanceof Instantiation)) {
ComponentDefinitionType _xifexpression = null;
ComponentDefinition _componentRef = ((Instantiation)parent).getComponentRef();
boolean _tripleNotEquals = (_componentRef != null);
if (_tripleNotEquals) {
_xifexpression = ((Instantiation)parent).getComponentRef().getType();
} else {
_xifexpression = ((Instantiation)parent).getComponent().getType();
}
String _firstUpper = StringExtensions.toFirstUpper(_xifexpression.getLiteral());
String _plus = (_firstUpper + " ");
String _name = ((ComponentInstance)o).getName();
return (_plus + _name);
}
}
}
return super.getFirstLine(o);
}
}

View File

@ -1,31 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.ui;
import com.minres.rdl.ui.AbstractRDLUiModule;
import com.minres.rdl.ui.RDLEObjectDocumentationProvider;
import com.minres.rdl.ui.RDLEObjectHoverProvider;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor;
import org.eclipse.xtext.documentation.IEObjectDocumentationProvider;
import org.eclipse.xtext.ui.editor.hover.IEObjectHoverProvider;
/**
* Use this class to register components to be used within the Eclipse IDE.
*/
@FinalFieldsConstructor
@SuppressWarnings("all")
public class RDLUiModule extends AbstractRDLUiModule {
public Class<? extends IEObjectHoverProvider> bindIEObjectHoverProvider() {
return RDLEObjectHoverProvider.class;
}
public Class<? extends IEObjectDocumentationProvider> bindIEObjectDocumentationProviderr() {
return RDLEObjectDocumentationProvider.class;
}
public RDLUiModule(final AbstractUIPlugin arg0) {
super(arg0);
}
}

View File

@ -1,14 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.ui.contentassist;
import com.minres.rdl.ui.contentassist.AbstractRDLProposalProvider;
/**
* See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#content-assist
* on how to customize the content assistant.
*/
@SuppressWarnings("all")
public class RDLProposalProvider extends AbstractRDLProposalProvider {
}

View File

@ -1,15 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.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
*/
@SuppressWarnings("all")
public class RDLDescriptionLabelProvider extends DefaultDescriptionLabelProvider {
}

View File

@ -1,375 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.ui.labeling;
import com.google.common.base.Objects;
import com.google.inject.Inject;
import com.minres.rdl.IntegerWithRadix;
import com.minres.rdl.rdl.ComponentDefinition;
import com.minres.rdl.rdl.ComponentDefinitionType;
import com.minres.rdl.rdl.ComponentInstance;
import com.minres.rdl.rdl.EnumDefinition;
import com.minres.rdl.rdl.EnumEntry;
import com.minres.rdl.rdl.EnumProperty;
import com.minres.rdl.rdl.ExplicitPropertyAssignment;
import com.minres.rdl.rdl.InstancePropertyRef;
import com.minres.rdl.rdl.InstanceRef;
import com.minres.rdl.rdl.PostPropertyAssignment;
import com.minres.rdl.rdl.PropertyAssignment;
import com.minres.rdl.rdl.PropertyAssignmentRhs;
import com.minres.rdl.rdl.PropertyDefinition;
import com.minres.rdl.rdl.PropertyEnum;
import com.minres.rdl.rdl.PropertyModifier;
import com.minres.rdl.rdl.RValue;
import com.minres.rdl.rdl.RValueConstant;
import com.minres.rdl.rdl.Range;
import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider;
import org.eclipse.xtext.xbase.lib.Functions.Function1;
import org.eclipse.xtext.xbase.lib.IterableExtensions;
import org.eclipse.xtext.xbase.lib.ListExtensions;
/**
* Provides labels for EObjects.
*
* See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#label-provider
*/
@SuppressWarnings("all")
public class RDLLabelProvider extends DefaultEObjectLabelProvider {
@Inject
public RDLLabelProvider(final AdapterFactoryLabelProvider delegate) {
super(delegate);
}
public String text(final ComponentDefinition e) {
String _xifexpression = null;
String _name = e.getName();
boolean _tripleNotEquals = (_name != null);
if (_tripleNotEquals) {
String _literal = e.getType().getLiteral();
String _plus = (_literal + " ");
String _name_1 = e.getName();
_xifexpression = (_plus + _name_1);
} else {
String _xblockexpression = null;
{
final Function1<PropertyAssignment, Boolean> _function = (PropertyAssignment pa) -> {
return Boolean.valueOf(((pa instanceof ExplicitPropertyAssignment) && Objects.equal(((ExplicitPropertyAssignment) pa).getName(), PropertyEnum.NAME)));
};
final PropertyAssignment pa = IterableExtensions.<PropertyAssignment>findFirst(e.getPropertyAssignments(), _function);
String _literal_1 = e.getType().getLiteral();
String _plus_1 = (_literal_1 + " ");
Object _text = this.text(((ExplicitPropertyAssignment) pa).getRhs());
_xblockexpression = (_plus_1 + _text);
}
_xifexpression = _xblockexpression;
}
return _xifexpression;
}
public String text(final ExplicitPropertyAssignment e) {
String res = "";
PropertyModifier _modifier = e.getModifier();
boolean _notEquals = (!Objects.equal(_modifier, PropertyModifier.UNDEFINED));
if (_notEquals) {
String _res = res;
String _literal = e.getModifier().getLiteral();
String _plus = (_literal + " ");
res = (_res + _plus);
}
String _res_1 = res;
PropertyEnum _name = e.getName();
res = (_res_1 + _name);
PropertyAssignmentRhs _rhs = e.getRhs();
boolean _tripleNotEquals = (_rhs != null);
if (_tripleNotEquals) {
String _res_2 = res;
Object _text = this.text(e.getRhs());
String _plus_1 = (" = " + _text);
res = (_res_2 + _plus_1);
}
return res;
}
public String text(final PostPropertyAssignment e) {
String res = "";
String _res = res;
String _text = this.text(e.getInstance());
res = (_res + _text);
PropertyDefinition _property = e.getProperty();
boolean _tripleNotEquals = (_property != null);
if (_tripleNotEquals) {
String _res_1 = res;
String _name = e.getProperty().getName();
String _plus = ("->" + _name);
res = (_res_1 + _plus);
} else {
PropertyEnum _propertyEnum = e.getPropertyEnum();
boolean _notEquals = (!Objects.equal(_propertyEnum, PropertyEnum.UNSPECIFIED));
if (_notEquals) {
String _res_2 = res;
String _literal = e.getPropertyEnum().getLiteral();
String _plus_1 = ("->" + _literal);
res = (_res_2 + _plus_1);
}
}
return res;
}
public String text(final InstanceRef e) {
String _xifexpression = null;
InstanceRef _tail = e.getTail();
boolean _tripleNotEquals = (_tail != null);
if (_tripleNotEquals) {
String _name = e.getInstance().getName();
String _plus = (_name + ".");
String _text = this.text(e.getTail());
_xifexpression = (_plus + _text);
} else {
_xifexpression = e.getInstance().getName();
}
return _xifexpression;
}
public String text(final ComponentInstance e) {
String res = e.getName();
Range _range = e.getRange();
boolean _tripleNotEquals = (_range != null);
if (_tripleNotEquals) {
String _res = res;
String _xifexpression = null;
Object _size = e.getRange().getSize();
boolean _tripleNotEquals_1 = (_size != null);
if (_tripleNotEquals_1) {
_xifexpression = e.getRange().getSize().toString();
} else {
Object _left = e.getRange().getLeft();
String _plus = (_left + ":");
Object _right = e.getRange().getRight();
_xifexpression = (_plus + _right);
}
String _plus_1 = ("[" + _xifexpression);
String _plus_2 = (_plus_1 + "]");
res = (_res + _plus_2);
}
Object _address = e.getAddress();
boolean _tripleNotEquals_2 = (_address != null);
if (_tripleNotEquals_2) {
String _res_1 = res;
Object _address_1 = e.getAddress();
String _plus_3 = (" @" + _address_1);
res = (_res_1 + _plus_3);
}
return res;
}
public Object text(final PropertyAssignmentRhs e) {
Object _xifexpression = null;
RValue _value = e.getValue();
boolean _tripleNotEquals = (_value != null);
if (_tripleNotEquals) {
_xifexpression = this.text(e.getValue());
} else {
Object _xifexpression_1 = null;
InstancePropertyRef _instPropRef = e.getInstPropRef();
boolean _tripleNotEquals_1 = (_instPropRef != null);
if (_tripleNotEquals_1) {
_xifexpression_1 = this.text(e.getInstPropRef());
} else {
Object _xifexpression_2 = null;
EnumDefinition _enumRef = e.getEnumRef();
boolean _tripleNotEquals_2 = (_enumRef != null);
if (_tripleNotEquals_2) {
_xifexpression_2 = this.text(e.getEnumRef());
}
_xifexpression_1 = _xifexpression_2;
}
_xifexpression = _xifexpression_1;
}
return _xifexpression;
}
public String text(final InstancePropertyRef ref) {
String _text = this.text(ref.getInstance());
String _xifexpression = null;
PropertyDefinition _property = ref.getProperty();
boolean _tripleNotEquals = (_property != null);
if (_tripleNotEquals) {
String _name = ref.getProperty().getName();
_xifexpression = ("->" + _name);
} else {
String _xifexpression_1 = null;
PropertyEnum _propertyEnum = ref.getPropertyEnum();
boolean _notEquals = (!Objects.equal(_propertyEnum, PropertyEnum.UNSPECIFIED));
if (_notEquals) {
String _literal = ref.getPropertyEnum().getLiteral();
_xifexpression_1 = ("->" + _literal);
} else {
_xifexpression_1 = "";
}
_xifexpression = _xifexpression_1;
}
return (_text + _xifexpression);
}
public String text(final RValue e) {
String _xifexpression = null;
String _str = e.getStr();
boolean _tripleNotEquals = (_str != null);
if (_tripleNotEquals) {
_xifexpression = this.elipse(e.getStr());
} else {
RValueConstant _val = e.getVal();
boolean _notEquals = (!Objects.equal(_val, RValueConstant.UNDEFINED));
if (_notEquals) {
return e.getVal().getLiteral();
} else {
Object _num = e.getNum();
boolean _tripleNotEquals_1 = (_num != null);
if (_tripleNotEquals_1) {
Object _num_1 = e.getNum();
final IntegerWithRadix num = ((IntegerWithRadix) _num_1);
return num.toString();
}
}
}
return _xifexpression;
}
public String elipse(final String string) {
final int pos = string.indexOf("\n");
if ((pos > 0)) {
String _substring = string.substring(0, (pos - 1));
return (_substring + "...");
} else {
int _length = string.length();
boolean _greaterThan = (_length > 30);
if (_greaterThan) {
String _substring_1 = string.substring(0, 30);
return (_substring_1 + "...");
} else {
return string;
}
}
}
public String text(final EnumEntry e) {
String _xifexpression = null;
Object _index = e.getIndex();
boolean _tripleNotEquals = (_index != null);
if (_tripleNotEquals) {
String _name = e.getName();
String _plus = (_name + "=");
String _string = e.getIndex().toString();
_xifexpression = (_plus + _string);
} else {
String _name_1 = e.getName();
String _plus_1 = (_name_1 + "=");
final Function1<EnumProperty, String> _function = (EnumProperty it) -> {
return this.text(it);
};
String _join = IterableExtensions.join(ListExtensions.<EnumProperty, String>map(e.getProperties(), _function), ",");
_xifexpression = (_plus_1 + _join);
}
return _xifexpression;
}
public String text(final EnumProperty e) {
String _name = e.getName();
String _plus = (_name + "=");
String _elipse = this.elipse(e.getValue());
return (_plus + _elipse);
}
public String image(final ComponentDefinition e) {
ComponentDefinitionType _type = e.getType();
if (_type != null) {
switch (_type) {
case ADDRMAP:
return "A.png";
case FIELD:
return "F.png";
case REG:
return "R.png";
case REGFILE:
return "R.png";
case SIGNAL:
return "S.png";
default:
break;
}
}
return null;
}
public String image(final PropertyAssignmentRhs e) {
String _xifexpression = null;
RValue _value = e.getValue();
boolean _tripleNotEquals = (_value != null);
if (_tripleNotEquals) {
_xifexpression = "V.png";
} else {
String _xifexpression_1 = null;
InstancePropertyRef _instPropRef = e.getInstPropRef();
boolean _tripleNotEquals_1 = (_instPropRef != null);
if (_tripleNotEquals_1) {
_xifexpression_1 = this.image(e.getInstPropRef());
} else {
String _xifexpression_2 = null;
EnumDefinition _enumRef = e.getEnumRef();
boolean _tripleNotEquals_2 = (_enumRef != null);
if (_tripleNotEquals_2) {
_xifexpression_2 = "E.png";
}
_xifexpression_1 = _xifexpression_2;
}
_xifexpression = _xifexpression_1;
}
return _xifexpression;
}
public String image(final InstancePropertyRef ref) {
String _xifexpression = null;
PropertyDefinition _property = ref.getProperty();
boolean _tripleNotEquals = (_property != null);
if (_tripleNotEquals) {
_xifexpression = "P.png";
} else {
String _xifexpression_1 = null;
PropertyEnum _propertyEnum = ref.getPropertyEnum();
boolean _notEquals = (!Objects.equal(_propertyEnum, PropertyEnum.UNSPECIFIED));
if (_notEquals) {
_xifexpression_1 = "E.png";
} else {
_xifexpression_1 = "I.png";
}
_xifexpression = _xifexpression_1;
}
return _xifexpression;
}
public String image(final EnumDefinition e) {
return "E.png";
}
public String image(final ExplicitPropertyAssignment e) {
return "P.png";
}
public String image(final PostPropertyAssignment e) {
return "P.png";
}
public String image(final ComponentInstance e) {
return "I.png";
}
public String image(final EnumEntry v) {
return "V.png";
}
public String image(final EnumProperty e) {
return "P.png";
}
}

View File

@ -1,118 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.ui.outline;
import com.minres.rdl.rdl.ComponentDefinition;
import com.minres.rdl.rdl.ComponentInstance;
import com.minres.rdl.rdl.EnumDefinition;
import com.minres.rdl.rdl.EnumEntry;
import com.minres.rdl.rdl.ExplicitPropertyAssignment;
import com.minres.rdl.rdl.Instantiation;
import com.minres.rdl.rdl.PostPropertyAssignment;
import com.minres.rdl.rdl.PropertyAssignment;
import com.minres.rdl.rdl.PropertyAssignmentRhs;
import com.minres.rdl.rdl.PropertyDefinition;
import com.minres.rdl.rdl.Root;
import java.util.function.Consumer;
import org.eclipse.xtext.ui.editor.outline.IOutlineNode;
import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider;
import org.eclipse.xtext.ui.editor.outline.impl.DocumentRootNode;
/**
* Customization of the default outline structure.
*
* See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#outline
*/
@SuppressWarnings("all")
public class RDLOutlineTreeProvider extends DefaultOutlineTreeProvider {
protected void _createChildren(final DocumentRootNode parentNode, final Root domainModel) {
final Consumer<EnumDefinition> _function = (EnumDefinition it) -> {
this.createNode(parentNode, it);
};
domainModel.getEnumDefinitions().forEach(_function);
final Consumer<PropertyDefinition> _function_1 = (PropertyDefinition it) -> {
this.createNode(parentNode, it);
};
domainModel.getPropertyDefinitions().forEach(_function_1);
final Consumer<ComponentDefinition> _function_2 = (ComponentDefinition it) -> {
this.createNode(parentNode, it);
};
domainModel.getComponentDefinitions().forEach(_function_2);
final Consumer<PropertyAssignment> _function_3 = (PropertyAssignment it) -> {
this.createNode(parentNode, it);
};
domainModel.getPropertyAssignments().forEach(_function_3);
final Consumer<Instantiation> _function_4 = (Instantiation instantiation) -> {
ComponentDefinition _component = instantiation.getComponent();
boolean _tripleNotEquals = (_component != null);
if (_tripleNotEquals) {
this.createNode(parentNode, instantiation.getComponent());
}
final Consumer<ComponentInstance> _function_5 = (ComponentInstance it) -> {
this.createNode(parentNode, it);
};
instantiation.getComponentInstances().forEach(_function_5);
};
domainModel.getInstantiations().forEach(_function_4);
}
protected void _createChildren(final IOutlineNode parentNode, final ComponentDefinition compDef) {
final Consumer<EnumDefinition> _function = (EnumDefinition it) -> {
this.createNode(parentNode, it);
};
compDef.getEnumDefinitions().forEach(_function);
final Consumer<ComponentDefinition> _function_1 = (ComponentDefinition it) -> {
this.createNode(parentNode, it);
};
compDef.getComponentDefinitions().forEach(_function_1);
final Consumer<PropertyAssignment> _function_2 = (PropertyAssignment it) -> {
this.createNode(parentNode, it);
};
compDef.getPropertyAssignments().forEach(_function_2);
final Consumer<Instantiation> _function_3 = (Instantiation instantiation) -> {
ComponentDefinition _component = instantiation.getComponent();
boolean _tripleNotEquals = (_component != null);
if (_tripleNotEquals) {
this.createNode(parentNode, instantiation.getComponent());
}
final Consumer<ComponentInstance> _function_4 = (ComponentInstance it) -> {
this.createNode(parentNode, it);
};
instantiation.getComponentInstances().forEach(_function_4);
};
compDef.getInstantiations().forEach(_function_3);
}
protected void _createChildren(final IOutlineNode parentNode, final EnumDefinition e) {
final Consumer<EnumEntry> _function = (EnumEntry it) -> {
this.createNode(parentNode, it);
};
e.getBody().getEntries().forEach(_function);
}
protected void _createChildren(final IOutlineNode parentNode, final PostPropertyAssignment p) {
this.createNode(parentNode, p.getRhs());
}
protected boolean _isLeaf(final ExplicitPropertyAssignment feature) {
return true;
}
protected boolean _isLeaf(final Instantiation feature) {
return ((feature.getComponent() == null) && (feature.getComponentInstances().size() == 0));
}
protected boolean _isLeaf(final PropertyAssignmentRhs feature) {
return true;
}
protected boolean _isLeaf(final ComponentInstance feature) {
return true;
}
protected boolean _isLeaf(final EnumEntry feature) {
int _size = feature.getProperties().size();
return (_size == 0);
}
}

View File

@ -1,35 +0,0 @@
package com.minres.rdl.ui.preferences;
import com.minres.rdl.preferences.PreferenceConstants;
import org.eclipse.core.runtime.preferences.InstanceScope;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.ComboFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.preferences.ScopedPreferenceStore;
@SuppressWarnings("all")
public class RdlPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
public RdlPreferencePage() {
super(FieldEditorPreferencePage.GRID);
final ScopedPreferenceStore store = new ScopedPreferenceStore(InstanceScope.INSTANCE, PreferenceConstants.SCOPE_NAME);
this.setPreferenceStore(store);
this.setDescription("Code generator configuration options");
}
@Override
public void createFieldEditors() {
Composite _fieldEditorParent = this.getFieldEditorParent();
BooleanFieldEditor _booleanFieldEditor = new BooleanFieldEditor(PreferenceConstants.P_GENERATE_CSV, "Generate CSV:", _fieldEditorParent);
this.addField(_booleanFieldEditor);
Composite _fieldEditorParent_1 = this.getFieldEditorParent();
ComboFieldEditor _comboFieldEditor = new ComboFieldEditor(PreferenceConstants.P_ADDRESSUNIT, "Address unit size", new String[][] { new String[] { "Byte (8bit)", "byte" }, new String[] { "Word (16bit)", "word" }, new String[] { "DWord (32bit)", "dword" } }, _fieldEditorParent_1);
this.addField(_comboFieldEditor);
}
@Override
public void init(final IWorkbench workbench) {
}
}

View File

@ -1,15 +0,0 @@
/**
* generated by Xtext 2.12.0
*/
package com.minres.rdl.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
*/
@SuppressWarnings("all")
public class RDLQuickfixProvider extends DefaultQuickfixProvider {
}

View File

@ -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.m2e.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>

View File

@ -0,0 +1 @@
/xtend-gen/

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>com.minres.rdl.web</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

View File

@ -0,0 +1,2 @@
eclipse.preferences.version=1
encoding/<project>=UTF-8

View File

@ -0,0 +1,10 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=11

View File

@ -0,0 +1,44 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Language" content="en-us">
<title>Example Web Editor</title>
<link rel="stylesheet" type="text/css" href="xtext/2.14.0/xtext-ace.css"/>
<link rel="stylesheet" type="text/css" href="style.css"/>
<script src="webjars/requirejs/2.3.2/require.min.js"></script>
<script type="text/javascript">
var baseUrl = window.location.pathname;
var fileIndex = baseUrl.indexOf("index.html");
if (fileIndex > 0)
baseUrl = baseUrl.slice(0, fileIndex);
require.config({
baseUrl: baseUrl,
paths: {
"jquery": "webjars/jquery/2.2.4/jquery.min",
"ace/ext/language_tools": "webjars/ace/1.2.3/src/ext-language_tools",
"xtext/xtext-ace": "xtext/2.14.0/xtext-ace"
}
});
require(["webjars/ace/1.2.3/src/ace"], function() {
require(["xtext/xtext-ace"], function(xtext) {
xtext.createEditor({
baseUrl: baseUrl,
syntaxDefinition: "xtext-resources/generated/mode-rdl"
});
});
});
</script>
</head>
<body>
<div class="container">
<div class="header">
<h1>Example RDL Web Editor</h1>
</div>
<div class="content">
<div id="xtext-editor" data-editor-xtext-lang="rdl"></div>
</div>
</div>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More