/** * Copyright 2004-2016 Riccardo Solmi. All rights reserved. * This file is part of the Whole Platform. * * The Whole Platform is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * The Whole Platform is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with the Whole Platform. If not, see <http://www.gnu.org/licenses/>. */ package org.whole.lang.models.codebase; import org.whole.lang.builders.IBuilderOperation; import org.whole.lang.templates.AbstractTemplateFactory; public class ECoreModel 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("ECore"); b0.TypeRelations(); b0.ModelDeclarations_(31); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EModelElement"); b0.Types(); b0.Features_(1); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EAnnotationList"); b0.SimpleName("eAnnotations"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EAnnotation"); b0.Types_(1); b0.SimpleName("EModelElement"); b0._Types(); b0.Features_(3); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("source"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EModelElement"); b0.SimpleName("eModelElement"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EModelElement"); b0.SimpleName("details"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EFactory"); b0.Types_(1); b0.SimpleName("EModelElement"); b0._Types(); b0.Features_(1); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EPackage"); b0.SimpleName("ePackage"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("ENamedElement"); b0.Types_(1); b0.SimpleName("EModelElement"); b0._Types(); b0.Features_(1); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("name"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EPackage"); b0.Types_(1); b0.SimpleName("ENamedElement"); b0._Types(); b0.Features_(5); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("nsPrefix"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("nsURI"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EPackage"); b0.SimpleName("eSuperPackage"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClassifierList"); b0.SimpleName("eClassifiers"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EPackageList"); b0.SimpleName("eSubpackages"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EClassifier"); b0.Types_(1); b0.SimpleName("ENamedElement"); b0._Types(); b0.Features_(4); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EPackage"); b0.SimpleName("ePackage"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("ClassData"); b0.SimpleName("instanceClass"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("instanceClassName"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("ObjectData"); b0.SimpleName("defaultValue"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EClass"); b0.Types_(1); b0.SimpleName("EClassifier"); b0._Types(); b0.Features_(14); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClassList"); b0.SimpleName("eSuperTypes"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("abstract"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("interface"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EAttribute"); b0.SimpleName("eIDAttribute"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EStructuralFeatureList"); b0.SimpleName("eStructuralFeatures"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EOperationList"); b0.SimpleName("eOperations"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EAttributeList"); b0.SimpleName("eAttributes"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EReferenceList"); b0.SimpleName("eReferences"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClassList"); b0.SimpleName("eAllSuperTypes"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EStructuralFeatureList"); b0.SimpleName("eAllStructuralFeatures"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EOperationList"); b0.SimpleName("eAllOperations"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EAttributeList"); b0.SimpleName("eAllAttributes"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EReferenceList"); b0.SimpleName("eAllReferences"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EReferenceList"); b0.SimpleName("eAllContainments"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EDataType"); b0.Types_(1); b0.SimpleName("EClassifier"); b0._Types(); b0.Features_(1); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("serializable"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EEnum"); b0.Types_(1); b0.SimpleName("EDataType"); b0._Types(); b0.Features_(1); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EEnumLiteralList"); b0.SimpleName("eLiterals"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EEnumLiteral"); b0.Types_(1); b0.SimpleName("ENamedElement"); b0._Types(); b0.Features_(3); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EEnum"); b0.SimpleName("eEnum"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("literal"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("IntData"); b0.SimpleName("value"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("ETypedElement"); b0.Types_(1); b0.SimpleName("ENamedElement"); b0._Types(); b0.Features_(7); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClassifier"); b0.SimpleName("eType"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("many"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("ordered"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("required"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("unique"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("IntData"); b0.SimpleName("lowerBound"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("IntData"); b0.SimpleName("upperBound"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EOperation"); b0.Types_(1); b0.SimpleName("ETypedElement"); b0._Types(); b0.Features_(3); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClass"); b0.SimpleName("eContainingClass"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EParameterList"); b0.SimpleName("eParameters"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClassifierList"); b0.SimpleName("eExceptions"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EParameter"); b0.Types_(1); b0.SimpleName("ETypedElement"); b0._Types(); b0.Features_(1); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EOperation"); b0.SimpleName("eOperation"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EStructuralFeature"); b0.Types_(1); b0.SimpleName("ETypedElement"); b0._Types(); b0.Features_(9); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClass"); b0.SimpleName("eContainingClass"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("IntData"); b0.SimpleName("featureID"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("changeable"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("derived"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("transient"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("unsettable"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("volatile"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("ObjectData"); b0.SimpleName("defaultValue"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("StringData"); b0.SimpleName("defaultValueLiteral"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EReference"); b0.Types_(1); b0.SimpleName("EStructuralFeature"); b0._Types(); b0.Features_(5); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EClass"); b0.SimpleName("eReferenceType"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EReference"); b0.SimpleName("eOpposite"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("container"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("containment"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("resolveProxies"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.SimpleEntity_(); b0.EntityModifiers(); b0.SimpleName("EAttribute"); b0.Types_(1); b0.SimpleName("EStructuralFeature"); b0._Types(); b0.Features_(2); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("EDataType"); b0.SimpleName("eAttributeType"); b0._Feature(); b0.Feature_(); b0.FeatureModifiers(); b0.SimpleName("BooleanData"); b0.SimpleName("id"); b0._Feature(); b0._Features(); b0._SimpleEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EClassList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EClass"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EStructuralFeatureList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EStructuralFeature"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EOperationList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EOperation"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EAttributeList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EAttribute"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EReferenceList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EReference"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EEnumLiteralList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EEnumLiteral"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EAnnotationList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EAnnotation"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EParameterList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EParameter"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EClassifierList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EClassifier"); b0._CompositeEntity(); b0.CompositeEntity_(); b0.EntityModifiers(); b0.SimpleName("EPackageList"); b0.Types(); b0.ComponentModifiers_(1); b0.ComponentModifier("ordered"); b0._ComponentModifiers(); b0.SimpleName("EPackage"); b0._CompositeEntity(); b0.DataEntity_(); b0.EntityModifiers(); b0.SimpleName("BooleanData"); b0.Types(); b0.DataType("boolean"); b0._DataEntity(); b0.DataEntity_(); b0.EntityModifiers(); b0.SimpleName("IntData"); b0.Types(); b0.DataType("int"); b0._DataEntity(); b0.DataEntity_(); b0.EntityModifiers(); b0.SimpleName("StringData"); b0.Types(); b0.DataType("String"); b0._DataEntity(); b0.DataEntity_(); b0.EntityModifiers(); b0.SimpleName("ClassData"); b0.Types(); b0.DataType("Class"); b0._DataEntity(); b0.DataEntity_(); b0.EntityModifiers(); b0.SimpleName("ObjectData"); b0.Types(); b0.DataType("Object"); b0._DataEntity(); b0._ModelDeclarations(); b0.Namespace("org.whole.lang.ecore"); 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/ECore"); b0._Model(); } }