Просмотр исходного кода

- Fixed SText was registered on wrong file-extension (.exp instead of .stext).
- Enabled type scoping from StextGlobalScopeProvider (removed global scope provider declaration in UI module).

Alexander Nyßen 14 лет назад
Родитель
Сommit
a41d9883ab
14 измененных файлов с 37812 добавлено и 37810 удалено
  1. 1 2
      plugins/org.yakindu.sct.model.stext.ui/META-INF/MANIFEST.MF
  2. 3 3
      plugins/org.yakindu.sct.model.stext.ui/plugin.xml
  3. 3 3
      plugins/org.yakindu.sct.model.stext.ui/plugin.xml_gen
  4. 0 1
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.g
  5. 156 156
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.tokens
  6. 3462 3464
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextLexer.java
  7. 34160 34161
      plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextParser.java
  8. 5 10
      plugins/org.yakindu.sct.model.stext.ui/src/org/yakindu/sct/model/stext/ui/STextUiModule.java
  9. 2 1
      plugins/org.yakindu.sct.model.stext/META-INF/MANIFEST.MF
  10. 1 1
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/AbstractSTextRuntimeModule.java
  11. 2 2
      plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/STextStandaloneSetupGenerated.java
  12. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/GenerateExpressions.mwe2
  13. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/SText.xtext
  14. 15 4
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/STextGlobalScopeProvider.java

+ 1 - 2
plugins/org.yakindu.sct.model.stext.ui/META-INF/MANIFEST.MF

@@ -14,8 +14,7 @@ Require-Bundle: org.yakindu.sct.model.stext;visibility:=reexport,
  org.eclipse.xtext.builder,
  org.eclipse.xtext.builder,
  org.antlr.runtime,
  org.antlr.runtime,
  org.eclipse.xtext.common.types.ui,
  org.eclipse.xtext.common.types.ui,
- org.yakindu.sct.model.sgraph,
- org.yakindu.base.types.ui.scope;bundle-version="1.0.0"
+ org.yakindu.sct.model.sgraph
 Import-Package: org.apache.log4j,
 Import-Package: org.apache.log4j,
  org.apache.commons.logging
  org.apache.commons.logging
 Bundle-RequiredExecutionEnvironment: J2SE-1.5
 Bundle-RequiredExecutionEnvironment: J2SE-1.5

+ 3 - 3
plugins/org.yakindu.sct.model.stext.ui/plugin.xml

@@ -9,7 +9,7 @@
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory: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="exp"
+            extensions="stext"
             id="org.yakindu.sct.model.stext.SText"
             id="org.yakindu.sct.model.stext.SText"
             name="SText Editor">
             name="SText Editor">
         </editor>
         </editor>
@@ -127,13 +127,13 @@
 		point="org.eclipse.emf.ecore.extension_parser">
 		point="org.eclipse.emf.ecore.extension_parser">
 		<parser
 		<parser
 			class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
 			class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
-			type="exp">
+			type="stext">
 		</parser>
 		</parser>
 	</extension>
 	</extension>
 	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
 	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
         <resourceServiceProvider
         <resourceServiceProvider
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
-            uriExtension="exp">
+            uriExtension="stext">
         </resourceServiceProvider>
         </resourceServiceProvider>
     </extension>
     </extension>
 
 

+ 3 - 3
plugins/org.yakindu.sct.model.stext.ui/plugin.xml_gen

@@ -9,7 +9,7 @@
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory: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="exp"
+            extensions="stext"
             id="org.yakindu.sct.model.stext.SText"
             id="org.yakindu.sct.model.stext.SText"
             name="SText Editor">
             name="SText Editor">
         </editor>
         </editor>
@@ -127,13 +127,13 @@
 		point="org.eclipse.emf.ecore.extension_parser">
 		point="org.eclipse.emf.ecore.extension_parser">
 		<parser
 		<parser
 			class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
 			class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
-			type="exp">
+			type="stext">
 		</parser>
 		</parser>
 	</extension>
 	</extension>
 	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
 	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
         <resourceServiceProvider
         <resourceServiceProvider
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
             class="org.yakindu.sct.model.stext.ui.STextExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
-            uriExtension="exp">
+            uriExtension="stext">
         </resourceServiceProvider>
         </resourceServiceProvider>
     </extension>
     </extension>
 
 

+ 0 - 1
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.g

@@ -24,7 +24,6 @@ import java.io.InputStream;
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
 import org.eclipse.xtext.parser.*;
 import org.eclipse.xtext.parser.impl.*;
 import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.xtext.parsetree.*;
 import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.xtext.parser.antlr.XtextTokenStream;
 import org.eclipse.xtext.parser.antlr.XtextTokenStream;

+ 156 - 156
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSText.tokens

@@ -1,156 +1,156 @@
-T__68=68
-T__69=69
-RULE_ID=4
-T__66=66
-T__67=67
-T__64=64
-T__29=29
-T__65=65
-T__28=28
-T__62=62
-T__27=27
-T__63=63
-T__26=26
-T__25=25
-T__24=24
-T__23=23
-T__22=22
-RULE_ANY_OTHER=13
-T__21=21
-T__20=20
-RULE_BOOL=6
-T__61=61
-T__60=60
-T__55=55
-T__56=56
-T__19=19
-T__57=57
-RULE_HEX=8
-T__58=58
-T__16=16
-T__51=51
-T__15=15
-T__52=52
-T__18=18
-T__53=53
-T__54=54
-T__17=17
-T__14=14
-T__59=59
-RULE_INT=5
-T__50=50
-T__42=42
-T__43=43
-T__40=40
-T__41=41
-T__80=80
-T__46=46
-T__81=81
-T__47=47
-T__82=82
-T__44=44
-T__83=83
-T__45=45
-T__48=48
-T__49=49
-RULE_FLOAT=7
-T__85=85
-RULE_SL_COMMENT=11
-T__84=84
-T__86=86
-RULE_ML_COMMENT=10
-T__30=30
-T__31=31
-RULE_STRING=9
-T__32=32
-T__71=71
-T__33=33
-T__72=72
-T__34=34
-T__35=35
-T__70=70
-T__36=36
-T__37=37
-T__38=38
-T__39=39
-RULE_WS=12
-T__76=76
-T__75=75
-T__74=74
-T__73=73
-T__79=79
-T__78=78
-T__77=77
-'#'=66
-'out'=18
-'>='=43
-'internal'=56
-'~'=39
-'/'=37
-'=='=44
-'/='=23
-'%='=24
-'>'=42
-'event'=57
-'||'=76
-'&&'=77
-';'=69
-'raise'=74
-'+'=34
-'\u00B5s'=48
-'active'=84
-'.'=65
-'^'=79
-'>>'=33
-'else'=15
-'^='=30
-'+='=25
-'readonly'=85
-'>>='=28
-'?'=75
-'var'=58
-'&='=29
-'s'=46
-':'=55
-'('=60
-'exit'=71
-'-'=35
-','=62
-'default'=14
-'in'=17
-'-='=26
-']'=68
-'<<='=27
-'ns'=49
-'!'=78
-'|'=80
-'ms'=47
-'every'=20
-'|='=31
-'@@statechart@@'=50
-'exitpoint'=64
-'@@state@@'=51
-'='=21
-'always'=73
-'oncycle'=72
-')'=61
-'*='=22
-'entry'=70
-'%'=38
-'operation'=59
-'after'=19
-'entrypoint'=63
-'namespace'=53
-'<<'=32
-'<='=41
-'valueof'=82
-'!='=45
-'@@transition@@'=52
-'external'=86
-'<'=40
-'['=67
-'*'=36
-'local'=16
-'raised'=83
-'&'=81
-'interface'=54
+T__68=68
+T__69=69
+RULE_ID=4
+T__66=66
+T__67=67
+T__64=64
+T__29=29
+T__65=65
+T__28=28
+T__62=62
+T__27=27
+T__63=63
+T__26=26
+T__25=25
+T__24=24
+T__23=23
+T__22=22
+RULE_ANY_OTHER=13
+T__21=21
+T__20=20
+RULE_BOOL=6
+T__61=61
+T__60=60
+T__55=55
+T__56=56
+T__19=19
+T__57=57
+RULE_HEX=8
+T__58=58
+T__16=16
+T__51=51
+T__15=15
+T__52=52
+T__18=18
+T__53=53
+T__54=54
+T__17=17
+T__14=14
+T__59=59
+RULE_INT=5
+T__50=50
+T__42=42
+T__43=43
+T__40=40
+T__41=41
+T__80=80
+T__46=46
+T__81=81
+T__47=47
+T__82=82
+T__44=44
+T__83=83
+T__45=45
+T__48=48
+T__49=49
+RULE_FLOAT=7
+T__85=85
+RULE_SL_COMMENT=11
+T__84=84
+T__86=86
+RULE_ML_COMMENT=10
+T__30=30
+T__31=31
+RULE_STRING=9
+T__32=32
+T__71=71
+T__33=33
+T__72=72
+T__34=34
+T__35=35
+T__70=70
+T__36=36
+T__37=37
+T__38=38
+T__39=39
+RULE_WS=12
+T__76=76
+T__75=75
+T__74=74
+T__73=73
+T__79=79
+T__78=78
+T__77=77
+'#'=66
+'out'=18
+'>='=43
+'internal'=56
+'~'=39
+'/'=37
+'=='=44
+'/='=23
+'%='=24
+'>'=42
+'event'=57
+'||'=76
+'&&'=77
+';'=69
+'raise'=74
+'+'=34
+'\u00B5s'=48
+'active'=84
+'.'=65
+'^'=79
+'>>'=33
+'else'=15
+'^='=30
+'+='=25
+'readonly'=85
+'>>='=28
+'?'=75
+'var'=58
+'&='=29
+'s'=46
+':'=55
+'('=60
+'exit'=71
+'-'=35
+','=62
+'default'=14
+'in'=17
+'-='=26
+']'=68
+'<<='=27
+'ns'=49
+'!'=78
+'|'=80
+'ms'=47
+'every'=20
+'|='=31
+'@@statechart@@'=50
+'exitpoint'=64
+'@@state@@'=51
+'='=21
+'always'=73
+'oncycle'=72
+')'=61
+'*='=22
+'entry'=70
+'%'=38
+'operation'=59
+'after'=19
+'entrypoint'=63
+'namespace'=53
+'<<'=32
+'<='=41
+'valueof'=82
+'!='=45
+'@@transition@@'=52
+'external'=86
+'<'=40
+'['=67
+'*'=36
+'local'=16
+'raised'=83
+'&'=81
+'interface'=54

Разница между файлами не показана из-за своего большого размера
+ 3462 - 3464
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextLexer.java


Разница между файлами не показана из-за своего большого размера
+ 34160 - 34161
plugins/org.yakindu.sct.model.stext.ui/src-gen/org/yakindu/sct/model/stext/ui/contentassist/antlr/internal/InternalSTextParser.java


+ 5 - 10
plugins/org.yakindu.sct.model.stext.ui/src/org/yakindu/sct/model/stext/ui/STextUiModule.java

@@ -4,27 +4,22 @@
 package org.yakindu.sct.model.stext.ui;
 package org.yakindu.sct.model.stext.ui;
 
 
 import org.eclipse.ui.plugin.AbstractUIPlugin;
 import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.xtext.scoping.IGlobalScopeProvider;
 import org.eclipse.xtext.ui.editor.contentassist.antlr.ParserBasedContentAssistContextFactory.StatefulFactory;
 import org.eclipse.xtext.ui.editor.contentassist.antlr.ParserBasedContentAssistContextFactory.StatefulFactory;
-import org.yakindu.base.types.scope.TypeLibrariesAwareScopeProvider;
 import org.yakindu.sct.model.stext.ui.contentassist.STextStatefulFactory;
 import org.yakindu.sct.model.stext.ui.contentassist.STextStatefulFactory;
 
 
 /**
 /**
  * Use this class to register components to be used within the IDE.
  * Use this class to register components to be used within the IDE.
  */
  */
-public class STextUiModule extends org.yakindu.sct.model.stext.ui.AbstractSTextUiModule {
-	
+public class STextUiModule extends
+		org.yakindu.sct.model.stext.ui.AbstractSTextUiModule {
+
 	public static final String STEXT_LANGUAGE_NAME = "org.yakindu.sct.model.stext.SText";
 	public static final String STEXT_LANGUAGE_NAME = "org.yakindu.sct.model.stext.SText";
 
 
 	public STextUiModule(AbstractUIPlugin plugin) {
 	public STextUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 		super(plugin);
 	}
 	}
-	
-	public Class<? extends StatefulFactory> bindStatefulFactory () {
+
+	public Class<? extends StatefulFactory> bindStatefulFactory() {
 		return STextStatefulFactory.class;
 		return STextStatefulFactory.class;
 	}
 	}
-	
-	public Class<? extends IGlobalScopeProvider> bindIGlobalScopeProvider() {
-		return TypeLibrariesAwareScopeProvider.class;
-	}
 }
 }

+ 2 - 1
plugins/org.yakindu.sct.model.stext/META-INF/MANIFEST.MF

@@ -20,7 +20,8 @@ Require-Bundle: org.eclipse.xtext;visibility:=reexport,
  org.yakindu.sct.model.sgraph,
  org.yakindu.sct.model.sgraph,
  de.itemis.xtext.utils.gmf,
  de.itemis.xtext.utils.gmf,
  org.eclipse.gmf.runtime.emf.core;bundle-version="1.4.1",
  org.eclipse.gmf.runtime.emf.core;bundle-version="1.4.1",
- org.yakindu.base.types;bundle-version="1.0.0"
+ org.yakindu.base.types;bundle-version="1.0.0",
+ org.yakindu.base.types.ui.scope;bundle-version="1.0.0"
 Import-Package: org.apache.commons.logging,
 Import-Package: org.apache.commons.logging,
  org.apache.log4j,
  org.apache.log4j,
  org.eclipse.xtext.builder.builderState,
  org.eclipse.xtext.builder.builderState,

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/AbstractSTextRuntimeModule.java

@@ -31,7 +31,7 @@ public abstract class AbstractSTextRuntimeModule extends DefaultRuntimeModule {
 	
 	
 	public void configureFileExtensions(Binder binder) {
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
-			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("exp");
+			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("stext");
 	}
 	}
 	
 	
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment

+ 2 - 2
plugins/org.yakindu.sct.model.stext/src-gen/org/yakindu/sct/model/stext/STextStandaloneSetupGenerated.java

@@ -33,8 +33,8 @@ public class STextStandaloneSetupGenerated implements ISetup {
 
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
-		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("exp", resourceFactory);
-		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("exp", serviceProvider);
+		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("stext", resourceFactory);
+		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("stext", serviceProvider);
 		
 		
 
 
 
 

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/GenerateExpressions.mwe2

@@ -5,7 +5,7 @@ import org.eclipse.xtext.generator.*
 import org.eclipse.xtext.ui.generator.*
 import org.eclipse.xtext.ui.generator.*
 
 
 var grammarURI = "classpath:/org/yakindu/sct/model/stext/SText.xtext"
 var grammarURI = "classpath:/org/yakindu/sct/model/stext/SText.xtext"
-var file.extensions = "exp"
+var file.extensions = "stext"
 var projectName = "org.yakindu.sct.model.stext"
 var projectName = "org.yakindu.sct.model.stext"
 var runtimeProject = "../${projectName}"
 var runtimeProject = "../${projectName}"
 
 

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/SText.xtext

@@ -167,7 +167,7 @@ DefaultEvent:
 
 
 /* --- statements --- */
 /* --- statements --- */
 Statement returns sgraph::Statement:
 Statement returns sgraph::Statement:
-	Assignment | EventRaising | OperationCall;
+	Assignment | EventRaising | OperationCall; 
 
 
 Assignment:
 Assignment:
 	varRef=[sgraph::Variable|FQN] operator=AssignmentOperator expression=Expression;
 	varRef=[sgraph::Variable|FQN] operator=AssignmentOperator expression=Expression;

+ 15 - 4
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/STextGlobalScopeProvider.java

@@ -18,6 +18,8 @@ import org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider;
 import org.eclipse.xtext.scoping.impl.FilteringScope;
 import org.eclipse.xtext.scoping.impl.FilteringScope;
 import org.eclipse.xtext.scoping.impl.ResourceSetGlobalScopeProvider;
 import org.eclipse.xtext.scoping.impl.ResourceSetGlobalScopeProvider;
 import org.eclipse.xtext.scoping.impl.SimpleScope;
 import org.eclipse.xtext.scoping.impl.SimpleScope;
+import org.yakindu.base.types.TypesPackage;
+import org.yakindu.base.types.scope.TypeLibrariesExtensionPointScopeHelper;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 
 
 import com.google.common.base.Predicate;
 import com.google.common.base.Predicate;
@@ -35,19 +37,28 @@ public class STextGlobalScopeProvider extends ResourceSetGlobalScopeProvider {
 
 
 	@Inject
 	@Inject
 	private DefaultGlobalScopeProvider delegate;
 	private DefaultGlobalScopeProvider delegate;
-	
+
+	@Inject
+	private TypeLibrariesExtensionPointScopeHelper typeScopeHelper;
+
 	public IScope getScope(Resource context, EReference reference,
 	public IScope getScope(Resource context, EReference reference,
 			Predicate<IEObjectDescription> filter) {
 			Predicate<IEObjectDescription> filter) {
 		IScope scope = super.getScope(context, reference, filter);
 		IScope scope = super.getScope(context, reference, filter);
 		IScope globalScope = delegate.getScope(context, reference, filter);
 		IScope globalScope = delegate.getScope(context, reference, filter);
 		FilteringScope filteringScope = new FilteringScope(globalScope,
 		FilteringScope filteringScope = new FilteringScope(globalScope,
 				new Predicate<IEObjectDescription>() {
 				new Predicate<IEObjectDescription>() {
-					
+
 					public boolean apply(IEObjectDescription input) {
 					public boolean apply(IEObjectDescription input) {
 						return input.getEClass() == SGraphPackage.Literals.STATECHART;
 						return input.getEClass() == SGraphPackage.Literals.STATECHART;
 					}
 					}
 				});
 				});
-		return new SimpleScope(Iterables.concat(scope.getAllElements(),
-				filteringScope.getAllElements()));
+		IScope parentScope = new SimpleScope(Iterables.concat(
+				scope.getAllElements(), filteringScope.getAllElements()));
+		
+		// add types from type libraries, in case the type of the reference refers to Type
+		if (reference.getEReferenceType().isSuperTypeOf(TypesPackage.eINSTANCE.getType())) {
+			return typeScopeHelper.createExtensionScope(parentScope);
+		}
+		return parentScope;
 	}
 	}
 }
 }