diff options
Diffstat (limited to 'rba.tool.editor/src/rba/tool/editor/RBAModelRuntimeModule.xtend')
-rw-r--r-- | rba.tool.editor/src/rba/tool/editor/RBAModelRuntimeModule.xtend | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/rba.tool.editor/src/rba/tool/editor/RBAModelRuntimeModule.xtend b/rba.tool.editor/src/rba/tool/editor/RBAModelRuntimeModule.xtend new file mode 100644 index 0000000..dabff8f --- /dev/null +++ b/rba.tool.editor/src/rba/tool/editor/RBAModelRuntimeModule.xtend @@ -0,0 +1,88 @@ +/* + * generated by Xtext 2.12.0 + */ +package rba.tool.editor + +import com.google.inject.Binder +import com.google.inject.Provider +import com.google.inject.name.Names +import org.eclipse.xtext.linking.impl.DefaultLinkingService +import org.eclipse.xtext.scoping.IScopeProvider +import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider +import org.eclipse.xtext.validation.CompositeEValidator +import rba.tool.editor.generator.RBAModelGeneratorExtensions +import rba.tool.editor.generator.z3.ConstraintGeneratorImpl +import rba.tool.editor.generator.z3.IConstraintGenerator +import rba.tool.editor.generator.z3.ISortValueGenerator +import rba.tool.editor.generator.z3.SortValueGeneratorImpl +import rba.tool.editor.linking.RBAModelLinker +import rba.tool.editor.linking.RBAModelLinkingService +import rba.tool.editor.naming.RBAModelSimpleNameProvider +import rba.tool.editor.resource.RBAModelLocationInFileProvider +import rba.tool.editor.scoping.IExpressionScope +import rba.tool.editor.scoping.RBAModelExpressionScope +import rba.tool.editor.scoping.RBAModelImportedNamespaceAwareLocalScopeProvider +import rba.tool.editor.scoping.internal.RBAModelMemberFieldScopes +import rba.tool.editor.scoping.internal.RBAModelMemberOperationScopes +import rba.tool.editor.validation.RBADiagnostician +import rba.tool.editor.validation.RBAModelCompositeEValidatorProvider + +/** + * Use this class to register components to be used at runtime / without the Equinox extension registry. + */ +class RBAModelRuntimeModule extends AbstractRBAModelRuntimeModule { + + override bindIQualifiedNameProvider() { + return RBAModelSimpleNameProvider; + } + + override bindILinker() { + return RBAModelLinker; + } + + def public Class<? extends ISortValueGenerator> bindISortValueGenerator() { + return SortValueGeneratorImpl; + } + + + def public Class<? extends IConstraintGenerator> bindIConstraintGenerator() { + return ConstraintGeneratorImpl; + } + + override bindILocationInFileProvider() { + return RBAModelLocationInFileProvider; + } + + def public Class<? extends RBAModelGeneratorExtensions> bindRBAModelGeneratorExtensions() { + return RBAModelGeneratorExtensions; + } + + override bindDiagnostician() { + return RBADiagnostician; + } + + def public Class<? extends IExpressionScope> bindIExpressionScope() { + return RBAModelExpressionScope; + } + + def public Class<? extends RBAModelMemberFieldScopes> bindRBAModelMemberFieldScopes() { + return RBAModelMemberFieldScopes; + } + + def public Class<? extends RBAModelMemberOperationScopes> bindRBAModelMemberOperationScopes() { + return RBAModelMemberOperationScopes; + } + + def public Class<? extends Provider<CompositeEValidator>> provideRBAModelCompositeEValidatorProvider() { + return RBAModelCompositeEValidatorProvider; + } + + def public Class<? extends DefaultLinkingService> bindRBAModelLinkingService() { + return RBAModelLinkingService; + } + + override configureIScopeProviderDelegate(Binder binder) { + binder.bind(IScopeProvider).annotatedWith(Names.named(AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(RBAModelImportedNamespaceAwareLocalScopeProvider); + } + +} |