/*
 * generated by Xtext 2.11.0
 */
package org.eclipse.osbp.xtext.blip.ide;

import com.google.inject.Guice;
import com.google.inject.Injector;
import org.eclipse.osbp.xtext.blip.BlipDSLRuntimeModule;
import org.eclipse.osbp.xtext.blip.BlipDSLStandaloneSetup;
import org.eclipse.xtext.util.Modules2;

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

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