package org.whole.lang.models.codebase;
import org.whole.lang.templates.AbstractTemplateFactory;
import org.whole.lang.builders.IBuilderOperation;
import org.whole.lang.models.reflect.ModelsLanguageKit;
import org.whole.lang.models.builders.IModelsBuilder;
/**
* @generator Whole
*/
public class MathPresentationModel extends AbstractTemplateFactory<org.whole.lang.models.model.Model> {
public void apply(IBuilderOperation op) {
IModelsBuilder b0 = (IModelsBuilder) op
.wGetBuilder(ModelsLanguageKit.URI);
b0.Model_();
b0.SimpleName("MathPresentation");
b0.TypeRelations();
b0.ModelDeclarations_(17);
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("Row");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("MathExpression");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Under");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("base");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("under");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Over");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("base");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("over");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("UnderOver");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("base");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("under");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("over");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("AdditionExpression");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp1");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp2");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Sup");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("base");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("sup");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("SubSup");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("base");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("sub");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("sup");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("MultiplicationExpression");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp1");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp2");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("DivisionExpression");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp1");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp2");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("Column");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("MathExpression");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("SubtractionExpression");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp1");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp2");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Sub");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("base");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("sub");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers();
b0.SimpleName("IntegerLiteral");
b0.Types_(1);
b0.SimpleName("MathLiteral");
b0._Types();
b0.DataType("int");
b0._DataEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Variable");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Variable_Id");
b0.SimpleName("id");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathLiteral");
b0.SimpleName("value");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers();
b0.SimpleName("Variable_Id");
b0.Types();
b0.DataType("String");
b0._DataEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("MetaBinaryExpression");
b0.Types_(1);
b0.SimpleName("MathExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp1");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("MathExpression");
b0.SimpleName("exp2");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("BinaryOperator");
b0.SimpleName("binOp");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers();
b0.SimpleName("BinaryOperator");
b0.Types();
b0.EnumValues_(4);
b0.EnumValue("addition");
b0.EnumValue("subtraction");
b0.EnumValue("multiplication");
b0.EnumValue("division");
b0._EnumValues();
b0._EnumEntity();
b0._ModelDeclarations();
b0.Namespace("org.whole.lang.mathpresentation");
org.whole.lang.commons.builders.ICommonsBuilder b1 = (org.whole.lang.commons.builders.ICommonsBuilder) op.wGetBuilder(org.whole.lang.commons.reflect.CommonsLanguageKit.URI);
b1.Resolver();
b0.URI("http://lang.whole.org/MathPresentation");
b0._Model();
}
}