blob: edad6357bea51994ff93f632cc53b4900072838d [file] [log] [blame]
package org.eclipse.ocl.examples.xtext.base.cs2as;
import org.eclipse.ocl.examples.xtext.base.basecs.util.BaseCSVisitor;
import org.eclipse.xtext.service.AbstractGenericModule;
import com.google.inject.Binder;
import com.google.inject.assistedinject.FactoryModuleBuilder;
import com.google.inject.name.Names;
/**
* Google Guice runtime module to define the bindings for the CS2AS framework
*
* @author asbh
*/
public abstract class BaseCS2ASRuntimeModule extends AbstractGenericModule{
// public Class<? extends Continuations> bindContinuations() {
// return Continuations.class;
// }
public void configureFactory(Binder binder) {
binder.install(new FactoryModuleBuilder()
.implement(Continuations.class, Continuations.class)
// .implement(BaseCSVisitor.class, Names.named("ContainmentVisitor"), BaseCSContainmentVisitor.class)
.implement(BaseCSVisitor.class, Names.named("PreOrderVisitor"), BaseCSPreOrderVisitor.class)
// .implement(BaseCSVisitor.class, Names.named("PostOrderVisitor"), BaseCSPostOrderVisitor.class)
// .implement(BaseCSVisitor.class, Names.named("Left2RightVisitor"), BaseCSLeft2RightVisitor.class)
.build(ICS2ASFactory.class));
}
}