/*
 * generated by Xtext 2.11.0
 */
package org.eclipse.osbp.ecview.dsl.ide;

import com.google.inject.Guice;
import com.google.inject.Injector;
import org.eclipse.osbp.ecview.dsl.UIGrammarRuntimeModule;
import org.eclipse.osbp.ecview.dsl.UIGrammarStandaloneSetup;
import org.eclipse.xtext.util.Modules2;

/**
 * Initialization support for running Xtext languages as language servers.
 */
public class UIGrammarIdeSetup extends UIGrammarStandaloneSetup {

	@Override
	public Injector createInjector() {
		return Guice.createInjector(Modules2.mixin(new UIGrammarRuntimeModule(), new UIGrammarIdeModule()));
	}
	
}
