package org.whole.lang.models.codebase;
import org.whole.lang.builders.IBuilderOperation;
import org.whole.lang.templates.AbstractTemplateFactory;
public class SQLModel extends AbstractTemplateFactory<org.whole.lang.models.model.Model> {
public void apply(IBuilderOperation op) {
org.whole.lang.models.builders.IModelsBuilder b0 = (org.whole.lang.models.builders.IModelsBuilder) op.wGetBuilder(org.whole.lang.models.reflect.ModelsLanguageKit.URI);
b0.Model_();
b0.SimpleName("SQL");
b0.TypeRelations_(0);
b0._TypeRelations();
b0.ModelDeclarations_(111);
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SQLStatements");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("SQLStatement");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("SelectSQLStatement");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("SQLStatement");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("SQLExpression");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("FromClause");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Select");
b0.Types_(1);
b0.SimpleName("SelectSQLStatement");
b0._Types();
b0.Features_(7);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SelectType");
b0.SimpleName("selectType");
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._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnExpressions");
b0.SimpleName("columnExprs");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("FromClauses");
b0.SimpleName("fromClauses");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("whereExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SQLExpressions");
b0.SimpleName("groupByExprs");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("havingExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("OrderByColumnExpressions");
b0.SimpleName("orderByColumnExprs");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("UnionSelect");
b0.Types_(1);
b0.SimpleName("SelectSQLStatement");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Select");
b0.SimpleName("simpleSelect");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SelectSQLStatement");
b0.SimpleName("unionSelectStatement");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Insert");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("columnNames");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Values");
b0.SimpleName("values");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("InsertFromSelect");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("columnNames");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SelectSQLStatement");
b0.SimpleName("select");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Update");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(5);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SetClauses");
b0.SimpleName("setClauses");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("FromClauses");
b0.SimpleName("fromClauses");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("whereExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IntValue");
b0.SimpleName("limit");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Create");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("DeclarationOrConstraints");
b0.SimpleName("declarationOrConstraints");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Delete");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("whereExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IntValue");
b0.SimpleName("limit");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Drop");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Truncate");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("AlterTable");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("AlterAction");
b0.SimpleName("action");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("CreateIndex");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(4);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("UniqueIndex");
b0.SimpleName("unique");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("IndexName");
b0.SimpleName("indexName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("IndexDeclarations");
b0.SimpleName("indexDeclarations");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("UniqueIndex");
b1.Resolver();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IndexDeclarations");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("IndexDeclaration");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IndexDeclaration");
b0.Types_(0);
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnName");
b0.SimpleName("columnName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("OrderType");
b0.SimpleName("orderType");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("NullOrderType");
b0.SimpleName("nullOrderType");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("NullOrderType");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("NULLS_LAST");
b0.EnumValue("NULLS_FIRST");
b0._EnumValues();
b0._EnumEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DropIndex");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("IndexName");
b0.SimpleName("indexName");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Foreach");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ArrayExpr");
b0.SimpleName("arrayExp");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLStatement");
b0.SimpleName("trueBody");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("AlterAction");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("AddAction");
b0.Types_(1);
b0.SimpleName("AlterAction");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("DeclarationOrConstraint");
b0.SimpleName("declarationOrConstraint");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SelectType");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("DISTINCT");
b0.EnumValue("ALL");
b0._EnumValues();
b0._EnumEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnNames");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("ordered");
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("ColumnName");
b0._CompositeEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnExpressions");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("ordered");
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("ColumnExpression");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnExpression");
b0.Types_(0);
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Alias");
b0.SimpleName("alias");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Alias");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("FromClauses");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("ordered");
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("FromClause");
b0._CompositeEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SimpleFromClause");
b0.Types_(1);
b0.SimpleName("FromClause");
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("InnerJoinFromClause");
b0.Types_(1);
b0.SimpleName("FromClause");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("innerTable");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("onExpression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("LeftOuterJoinFromClause");
b0.Types_(1);
b0.SimpleName("FromClause");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("outerTable");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("onExpression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("RightOuterJoinFromClause");
b0.Types_(1);
b0.SimpleName("FromClause");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("tableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("outerTable");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("onExpression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Between");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("lowerExpression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("upperExpression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("NotBetween");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("lowerExpression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("upperExpression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Is");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("IsType");
b0.SimpleName("type");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IsType");
b0.Types_(0);
b0._Types();
b0.EnumValues_(8);
b0.EnumValue("NULL");
b0.EnumValue("NOT_NULL");
b0.EnumValue("TRUE");
b0.EnumValue("NOT_TRUE");
b0.EnumValue("FALSE");
b0.EnumValue("NOT_FALSE");
b0.EnumValue("UNKNOWN");
b0.EnumValue("NOT_UNKNOWN");
b0._EnumValues();
b0._EnumEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Values");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("SQLExpressions");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ParenthesizedExpression");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SQLExpressions");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("SQLExpression");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("NullValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ArrayValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("Object");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BooleanValue");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.DataType("boolean");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("TinyIntValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("byte");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SmallIntValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("short");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IntValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("int");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BigIntValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("long");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DoubleValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("double");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("RealValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("float");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DecimalValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("java.math.BigDecimal");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("StringValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BinaryValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("Object");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DateValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("java.sql.Date");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("TimeValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("java.sql.Time");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("TimestampValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("java.sql.Timestamp");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BlobValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("java.sql.Blob");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ClobValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("java.sql.Clob");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("RawValue");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("Object");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("TableName");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnName");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IndexName");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("CaseExpression");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("WhenClauses");
b0.SimpleName("whenClauses");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("elseClause");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("WhenClauses");
b0.Types_(1);
b0.SimpleName("InPredicate");
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("WhenClause");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("WhenClause");
b0.Types_(0);
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("BooleanExpression");
b0.SimpleName("condition");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("result");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("In");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("leftExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("InPredicate");
b0.SimpleName("inPredicate");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("NotIn");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("leftExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("InPredicate");
b0.SimpleName("inPredicate");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("InPredicate");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Subquery");
b0.Types_(1);
b0.SimpleName("InPredicate");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SelectSQLStatement");
b0.SimpleName("query");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("InValueList");
b0.Types_(1);
b0.SimpleName("InPredicate");
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("SQLExpression");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BinaryExpression");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("leftExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("BinaryOperator");
b0.SimpleName("operator");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("rightExpr");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BinaryOperator");
b0.Types_(0);
b0._Types();
b0.EnumValues_(5);
b0.EnumValue("sum");
b0.EnumValue("sub");
b0.EnumValue("mul");
b0.EnumValue("div");
b0.EnumValue("concat");
b0._EnumValues();
b0._EnumEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("BooleanExpression");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BooleanBinaryExpression");
b0.Types_(1);
b0.SimpleName("BooleanExpression");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("leftExpr");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("BooleanOperator");
b0.SimpleName("operator");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("rightExpr");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BooleanOperator");
b0.Types_(0);
b0._Types();
b0.EnumValues_(9);
b0.EnumValue("and");
b0.EnumValue("or");
b0.EnumValue("lt");
b0.EnumValue("gt");
b0.EnumValue("le");
b0.EnumValue("ge");
b0.EnumValue("eq");
b0.EnumValue("ne");
b0.EnumValue("like");
b0._EnumValues();
b0._EnumEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("FunctionExpression");
b0.Types_(1);
b0.SimpleName("SQLExpression");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("FunctionName");
b0.SimpleName("functionName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpressions");
b0.SimpleName("params");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("FunctionName");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("OrderByColumnExpressions");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("OrderByColumnExpression");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("OrderByColumnExpression");
b0.Types_(0);
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("OrderType");
b0.SimpleName("orderType");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("OrderType");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("ASC");
b0.EnumValue("DESC");
b0._EnumValues();
b0._EnumEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SetClauses");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("SetClause");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SetClause");
b0.Types_(0);
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("ColumnName");
b0.SimpleName("columnName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLExpression");
b0.SimpleName("expression");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DeclarationOrConstraints");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("DeclarationOrConstraint");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("DeclarationOrConstraint");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnDeclaration");
b0.Types_(1);
b0.SimpleName("DeclarationOrConstraint");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnName");
b0.SimpleName("columnName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnType");
b0.SimpleName("columnType");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ColumnConstraints");
b0.SimpleName("columnConstraints");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnType");
b0.Types_(0);
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Type");
b0.SimpleName("type");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IntValue");
b0.SimpleName("size");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IntValue");
b0.SimpleName("precision");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Type");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnConstraints");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("ColumnConstraint");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("ColumnConstraint");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SimpleColumnConstraint");
b0.Types_(1);
b0.SimpleName("ColumnConstraint");
b0._Types();
b0.EnumValues_(3);
b0.EnumValue("NOT_NULL");
b0.EnumValue("PRIMARY_KEY");
b0.EnumValue("UNIQUE");
b0._EnumValues();
b0._EnumEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ForeignKeyColumnConstraint");
b0.Types_(1);
b0.SimpleName("ColumnConstraint");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("foreignTableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ColumnName");
b0.SimpleName("foreignColumnName");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("TableConstraint");
b0.Types_(1);
b0.SimpleName("DeclarationOrConstraint");
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("UniqueTableConstraint");
b0.Types_(1);
b0.SimpleName("TableConstraint");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("columnNames");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("PrimaryKeyTableConstraint");
b0.Types_(1);
b0.SimpleName("TableConstraint");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("columnNames");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ForeignKeyTableConstraint");
b0.Types_(1);
b0.SimpleName("TableConstraint");
b0._Types();
b0.Features_(8);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("columnNames");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("TableName");
b0.SimpleName("foreignTableName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("foreignColumnNames");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Match");
b0.SimpleName("match");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Action");
b0.SimpleName("onDelete");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Action");
b0.SimpleName("onUpdate");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Deferrable");
b0.SimpleName("deferrable");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("DeferCheck");
b0.SimpleName("deferCheck");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Match");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("FULL");
b0.EnumValue("PARTIAL");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Action");
b0.Types_(0);
b0._Types();
b0.EnumValues_(5);
b0.EnumValue("NO_ACTION");
b0.EnumValue("RESTRICT");
b0.EnumValue("CASCADE");
b0.EnumValue("SET_NULL");
b0.EnumValue("SET_DEFAULT");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Deferrable");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("NOT_DEFERRABLE");
b0.EnumValue("DEFERRABLE");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DeferCheck");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("INITIALLY_IMMEDIATE");
b0.EnumValue("INITIALLY_DEFERRED");
b0._EnumValues();
b0._EnumEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("StoredProcedures");
b0.Types_(1);
b0.SimpleName("SQLStatement");
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("StoredProcedure");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("StoredProcedure");
b0.Types_(0);
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ProcedureDeclarations");
b0.SimpleName("procedureDeclarations");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ProcedureStatements");
b0.SimpleName("procedureStatements");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("ProcedureDeclaration");
b0.Types_(0);
b0._Types();
b0.Features_(0);
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ProcedureDeclarations");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("ProcedureDeclaration");
b0._CompositeEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ProcedureStatements");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("SQLStatement");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("DeclareCursor");
b0.Types_(1);
b0.SimpleName("ProcedureDeclaration");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("SQLStatement");
b0.SimpleName("sqlStatement");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("SimpleVariableDeclaration");
b0.Types_(1);
b0.SimpleName("ProcedureDeclaration");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Type");
b0.SimpleName("type");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("VariableDeclaration");
b0.Types_(1);
b0.SimpleName("ProcedureDeclaration");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Reference");
b0.SimpleName("reference");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ReferenceType");
b0.SimpleName("referenceType");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Reference");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ReferenceType");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("TYPE");
b0.EnumValue("ROWTYPE");
b0._EnumValues();
b0._EnumEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ArrayExpr");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Name");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0._ModelDeclarations();
b0.Namespace("org.whole.lang.sql");
b1.Resolver();
b0.URI("http://lang.whole.org/SQL");
b0._Model();
}
}