package jetbrains.mps.transformation.test.inputLang;
/*Generated by MPS */
import jetbrains.mps.generator.runtime.TemplateModuleBase;
import jetbrains.mps.smodel.language.LanguageRuntime;
import jetbrains.mps.generator.runtime.TemplateModel;
import jetbrains.mps.smodel.language.LanguageRegistry;
import java.util.Collection;
import jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_ArgumentsInTemplateDeclarationReference.TemplateModelImpl;
import java.util.Arrays;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.mps.openapi.module.SModuleReference;
import org.jetbrains.mps.openapi.persistence.PersistenceFacade;
import org.jetbrains.mps.openapi.language.SLanguage;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
public class Generator extends TemplateModuleBase {
private final LanguageRuntime sourceLanguage;
private TemplateModel[] models;
public Generator(LanguageRegistry languageRegistry, LanguageRuntime sourceLanguage) {
super(languageRegistry);
this.sourceLanguage = sourceLanguage;
}
@Override
public String getAlias() {
return "jetbrains.mps.transformation.test.inputLang/tests";
}
@Override
public Collection<TemplateModel> getModels() {
if (models == null) {
models = new TemplateModel[9];
models[0] = new TemplateModelImpl(this);
models[1] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_ReduceInheritors.TemplateModelImpl(this);
models[2] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_TemplateCallArguments.TemplateModelImpl(this);
models[3] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_dontApplyReductionTwice.TemplateModelImpl(this);
models[4] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_generationScripts.TemplateModelImpl(this);
models[5] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_getPrevInput.TemplateModelImpl(this);
models[6] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_reduceExpressionToStatement.TemplateModelImpl(this);
models[7] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_reduceOneToMany.TemplateModelImpl(this);
models[8] = new jetbrains.mps.transformation.test.inputLang.generator.outputLang.template.test_weaveManyToSingularChild.TemplateModelImpl(this);
}
return Arrays.asList(models);
}
@NotNull
@Override
public SModuleReference getModuleReference() {
return PersistenceFacade.getInstance().createModuleReference("45250695-332a-4a0e-94bc-014e09fa751d(jetbrains.mps.transformation.test.inputLang#1195164860857)");
}
@Override
public Collection<SLanguage> getTargetLanguages() {
SLanguage[] rv = new SLanguage[4];
rv[0] = MetaAdapterFactory.getLanguage(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, "jetbrains.mps.baseLanguage");
rv[1] = MetaAdapterFactory.getLanguage(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, "jetbrains.mps.lang.core");
rv[2] = MetaAdapterFactory.getLanguage(0xab0ae915e3b54f35L, 0xb55ac655d649a03cL, "jetbrains.mps.transformation.test.inputLang");
rv[3] = MetaAdapterFactory.getLanguage(0x157a9668bf58417bL, 0x893e53d86388dc56L, "jetbrains.mps.transformation.test.outputLang");
return Arrays.asList(rv);
}
@Override
@NotNull
public LanguageRuntime getSourceLanguage() {
return sourceLanguage;
}
}