/** */ package de.ugoe.cs.swe.bnftools.ebnf.impl; import de.ugoe.cs.swe.bnftools.ebnf.Atom; import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry; import de.ugoe.cs.swe.bnftools.ebnf.Comment; import de.ugoe.cs.swe.bnftools.ebnf.DefinitionList; import de.ugoe.cs.swe.bnftools.ebnf.DeltaEntry; import de.ugoe.cs.swe.bnftools.ebnf.EbnfFactory; import de.ugoe.cs.swe.bnftools.ebnf.EbnfPackage; import de.ugoe.cs.swe.bnftools.ebnf.EtsiBnf; import de.ugoe.cs.swe.bnftools.ebnf.ExtRule; import de.ugoe.cs.swe.bnftools.ebnf.GlobalCombinator; import de.ugoe.cs.swe.bnftools.ebnf.GroupedSequence; import de.ugoe.cs.swe.bnftools.ebnf.HookCombinator; import de.ugoe.cs.swe.bnftools.ebnf.Import; import de.ugoe.cs.swe.bnftools.ebnf.ImportSection; import de.ugoe.cs.swe.bnftools.ebnf.MergeEntry; import de.ugoe.cs.swe.bnftools.ebnf.MergeRule; import de.ugoe.cs.swe.bnftools.ebnf.OptionalSequence; import de.ugoe.cs.swe.bnftools.ebnf.RepeatRange; import de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence; import de.ugoe.cs.swe.bnftools.ebnf.Rule; import de.ugoe.cs.swe.bnftools.ebnf.RuleCombinator; import de.ugoe.cs.swe.bnftools.ebnf.RuleReference; import de.ugoe.cs.swe.bnftools.ebnf.SectionHeading; import de.ugoe.cs.swe.bnftools.ebnf.SingleDefinition; import de.ugoe.cs.swe.bnftools.ebnf.StringRule; import de.ugoe.cs.swe.bnftools.ebnf.Term; import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.impl.EPackageImpl; /** * * An implementation of the model Package. * * @generated */ public class EbnfPackageImpl extends EPackageImpl implements EbnfPackage { /** * * * @generated */ private EClass etsiBnfEClass = null; /** * * * @generated */ private EClass importSectionEClass = null; /** * * * @generated */ private EClass bnfEntryEClass = null; /** * * * @generated */ private EClass deltaEntryEClass = null; /** * * * @generated */ private EClass mergeEntryEClass = null; /** * * * @generated */ private EClass sectionHeadingEClass = null; /** * * * @generated */ private EClass commentEClass = null; /** * * * @generated */ private EClass importEClass = null; /** * * * @generated */ private EClass ruleEClass = null; /** * * * @generated */ private EClass extRuleEClass = null; /** * * * @generated */ private EClass mergeRuleEClass = null; /** * * * @generated */ private EClass globalCombinatorEClass = null; /** * * * @generated */ private EClass ruleCombinatorEClass = null; /** * * * @generated */ private EClass hookCombinatorEClass = null; /** * * * @generated */ private EClass definitionListEClass = null; /** * * * @generated */ private EClass singleDefinitionEClass = null; /** * * * @generated */ private EClass termEClass = null; /** * * * @generated */ private EClass atomEClass = null; /** * * * @generated */ private EClass ruleReferenceEClass = null; /** * * * @generated */ private EClass stringRuleEClass = null; /** * * * @generated */ private EClass groupedSequenceEClass = null; /** * * * @generated */ private EClass optionalSequenceEClass = null; /** * * * @generated */ private EClass repeatedSequenceEClass = null; /** * * * @generated */ private EClass repeatRangeEClass = null; /** * Creates an instance of the model Package, registered with * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package * package URI value. *

Note: the correct way to create the package is via the static * factory method {@link #init init()}, which also performs * initialization of the package, or returns the registered package, * if one already exists. * * * @see org.eclipse.emf.ecore.EPackage.Registry * @see de.ugoe.cs.swe.bnftools.ebnf.EbnfPackage#eNS_URI * @see #init() * @generated */ private EbnfPackageImpl() { super(eNS_URI, EbnfFactory.eINSTANCE); } /** * * * @generated */ private static boolean isInited = false; /** * Creates, registers, and initializes the Package for this model, and for any others upon which it depends. * *

This method is used to initialize {@link EbnfPackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * * * @see #eNS_URI * @see #createPackageContents() * @see #initializePackageContents() * @generated */ public static EbnfPackage init() { if (isInited) return (EbnfPackage)EPackage.Registry.INSTANCE.getEPackage(EbnfPackage.eNS_URI); // Obtain or create and register package EbnfPackageImpl theEbnfPackage = (EbnfPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EbnfPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new EbnfPackageImpl()); isInited = true; // Create package meta-data objects theEbnfPackage.createPackageContents(); // Initialize created meta-data theEbnfPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theEbnfPackage.freeze(); // Update the registry and return the package EPackage.Registry.INSTANCE.put(EbnfPackage.eNS_URI, theEbnfPackage); return theEbnfPackage; } /** * * * @generated */ public EClass getEtsiBnf() { return etsiBnfEClass; } /** * * * @generated */ public EAttribute getEtsiBnf_Name() { return (EAttribute)etsiBnfEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getEtsiBnf_Type() { return (EAttribute)etsiBnfEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EReference getEtsiBnf_ImportSection() { return (EReference)etsiBnfEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EReference getEtsiBnf_BnfEntry() { return (EReference)etsiBnfEClass.getEStructuralFeatures().get(3); } /** * * * @generated */ public EReference getEtsiBnf_DeltaEntry() { return (EReference)etsiBnfEClass.getEStructuralFeatures().get(4); } /** * * * @generated */ public EReference getEtsiBnf_MergeEntry() { return (EReference)etsiBnfEClass.getEStructuralFeatures().get(5); } /** * * * @generated */ public EClass getImportSection() { return importSectionEClass; } /** * * * @generated */ public EReference getImportSection_Imports() { return (EReference)importSectionEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getBnfEntry() { return bnfEntryEClass; } /** * * * @generated */ public EReference getBnfEntry_Sectionheader() { return (EReference)bnfEntryEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EReference getBnfEntry_Rule() { return (EReference)bnfEntryEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EReference getBnfEntry_Comment() { return (EReference)bnfEntryEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EClass getDeltaEntry() { return deltaEntryEClass; } /** * * * @generated */ public EReference getDeltaEntry_Rule() { return (EReference)deltaEntryEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EReference getDeltaEntry_Sectionheader() { return (EReference)deltaEntryEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EReference getDeltaEntry_ExtRule() { return (EReference)deltaEntryEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EClass getMergeEntry() { return mergeEntryEClass; } /** * * * @generated */ public EReference getMergeEntry_Sectionheader() { return (EReference)mergeEntryEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EReference getMergeEntry_MergeRule() { return (EReference)mergeEntryEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EClass getSectionHeading() { return sectionHeadingEClass; } /** * * * @generated */ public EAttribute getSectionHeading_SectionHeader() { return (EAttribute)sectionHeadingEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getComment() { return commentEClass; } /** * * * @generated */ public EAttribute getComment_Content() { return (EAttribute)commentEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getImport() { return importEClass; } /** * * * @generated */ public EAttribute getImport_ImportURI() { return (EAttribute)importEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getImport_GrammarType() { return (EAttribute)importEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EAttribute getImport_Label() { return (EAttribute)importEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EClass getRule() { return ruleEClass; } /** * * * @generated */ public EAttribute getRule_Rulenumber() { return (EAttribute)ruleEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getRule_Rulevariant() { return (EAttribute)ruleEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EAttribute getRule_Name() { return (EAttribute)ruleEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EReference getRule_DefinitionList() { return (EReference)ruleEClass.getEStructuralFeatures().get(3); } /** * * * @generated */ public EClass getExtRule() { return extRuleEClass; } /** * * * @generated */ public EAttribute getExtRule_Rulenumber() { return (EAttribute)extRuleEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getExtRule_Rulevariant() { return (EAttribute)extRuleEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EAttribute getExtRule_Name() { return (EAttribute)extRuleEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EAttribute getExtRule_Ruleext() { return (EAttribute)extRuleEClass.getEStructuralFeatures().get(3); } /** * * * @generated */ public EReference getExtRule_Elements() { return (EReference)extRuleEClass.getEStructuralFeatures().get(4); } /** * * * @generated */ public EClass getMergeRule() { return mergeRuleEClass; } /** * * * @generated */ public EAttribute getMergeRule_Logic() { return (EAttribute)mergeRuleEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getGlobalCombinator() { return globalCombinatorEClass; } /** * * * @generated */ public EClass getRuleCombinator() { return ruleCombinatorEClass; } /** * * * @generated */ public EAttribute getRuleCombinator_Name() { return (EAttribute)ruleCombinatorEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getRuleCombinator_LABEL() { return (EAttribute)ruleCombinatorEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EClass getHookCombinator() { return hookCombinatorEClass; } /** * * * @generated */ public EAttribute getHookCombinator_Name() { return (EAttribute)hookCombinatorEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getHookCombinator_Ruleext() { return (EAttribute)hookCombinatorEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EAttribute getHookCombinator_LABEL() { return (EAttribute)hookCombinatorEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EClass getDefinitionList() { return definitionListEClass; } /** * * * @generated */ public EReference getDefinitionList_SingleDefinition() { return (EReference)definitionListEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getSingleDefinition() { return singleDefinitionEClass; } /** * * * @generated */ public EReference getSingleDefinition_Terms() { return (EReference)singleDefinitionEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getTerm() { return termEClass; } /** * * * @generated */ public EReference getTerm_TermAtom() { return (EReference)termEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EReference getTerm_TermGroupedSequence() { return (EReference)termEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EReference getTerm_TermOptionalSequence() { return (EReference)termEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EReference getTerm_TermRepeatedSequence() { return (EReference)termEClass.getEStructuralFeatures().get(3); } /** * * * @generated */ public EClass getAtom() { return atomEClass; } /** * * * @generated */ public EReference getAtom_AtomStringRule() { return (EReference)atomEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EReference getAtom_AtomRuleReference() { return (EReference)atomEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EClass getRuleReference() { return ruleReferenceEClass; } /** * * * @generated */ public EReference getRuleReference_Ruleref() { return (EReference)ruleReferenceEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getStringRule() { return stringRuleEClass; } /** * * * @generated */ public EAttribute getStringRule_Literal() { return (EAttribute)stringRuleEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getStringRule_Colon() { return (EAttribute)stringRuleEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EClass getGroupedSequence() { return groupedSequenceEClass; } /** * * * @generated */ public EReference getGroupedSequence_DefinitionList() { return (EReference)groupedSequenceEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getOptionalSequence() { return optionalSequenceEClass; } /** * * * @generated */ public EReference getOptionalSequence_DefinitionList() { return (EReference)optionalSequenceEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EClass getRepeatedSequence() { return repeatedSequenceEClass; } /** * * * @generated */ public EReference getRepeatedSequence_Definitions() { return (EReference)repeatedSequenceEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getRepeatedSequence_Morethanonce() { return (EAttribute)repeatedSequenceEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EReference getRepeatedSequence_Range() { return (EReference)repeatedSequenceEClass.getEStructuralFeatures().get(2); } /** * * * @generated */ public EClass getRepeatRange() { return repeatRangeEClass; } /** * * * @generated */ public EAttribute getRepeatRange_From() { return (EAttribute)repeatRangeEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ public EAttribute getRepeatRange_To() { return (EAttribute)repeatRangeEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ public EbnfFactory getEbnfFactory() { return (EbnfFactory)getEFactoryInstance(); } /** * * * @generated */ private boolean isCreated = false; /** * Creates the meta-model objects for the package. This method is * guarded to have no affect on any invocation but its first. * * * @generated */ public void createPackageContents() { if (isCreated) return; isCreated = true; // Create classes and their features etsiBnfEClass = createEClass(ETSI_BNF); createEAttribute(etsiBnfEClass, ETSI_BNF__NAME); createEAttribute(etsiBnfEClass, ETSI_BNF__TYPE); createEReference(etsiBnfEClass, ETSI_BNF__IMPORT_SECTION); createEReference(etsiBnfEClass, ETSI_BNF__BNF_ENTRY); createEReference(etsiBnfEClass, ETSI_BNF__DELTA_ENTRY); createEReference(etsiBnfEClass, ETSI_BNF__MERGE_ENTRY); importSectionEClass = createEClass(IMPORT_SECTION); createEReference(importSectionEClass, IMPORT_SECTION__IMPORTS); bnfEntryEClass = createEClass(BNF_ENTRY); createEReference(bnfEntryEClass, BNF_ENTRY__SECTIONHEADER); createEReference(bnfEntryEClass, BNF_ENTRY__RULE); createEReference(bnfEntryEClass, BNF_ENTRY__COMMENT); deltaEntryEClass = createEClass(DELTA_ENTRY); createEReference(deltaEntryEClass, DELTA_ENTRY__RULE); createEReference(deltaEntryEClass, DELTA_ENTRY__SECTIONHEADER); createEReference(deltaEntryEClass, DELTA_ENTRY__EXT_RULE); mergeEntryEClass = createEClass(MERGE_ENTRY); createEReference(mergeEntryEClass, MERGE_ENTRY__SECTIONHEADER); createEReference(mergeEntryEClass, MERGE_ENTRY__MERGE_RULE); sectionHeadingEClass = createEClass(SECTION_HEADING); createEAttribute(sectionHeadingEClass, SECTION_HEADING__SECTION_HEADER); commentEClass = createEClass(COMMENT); createEAttribute(commentEClass, COMMENT__CONTENT); importEClass = createEClass(IMPORT); createEAttribute(importEClass, IMPORT__IMPORT_URI); createEAttribute(importEClass, IMPORT__GRAMMAR_TYPE); createEAttribute(importEClass, IMPORT__LABEL); ruleEClass = createEClass(RULE); createEAttribute(ruleEClass, RULE__RULENUMBER); createEAttribute(ruleEClass, RULE__RULEVARIANT); createEAttribute(ruleEClass, RULE__NAME); createEReference(ruleEClass, RULE__DEFINITION_LIST); extRuleEClass = createEClass(EXT_RULE); createEAttribute(extRuleEClass, EXT_RULE__RULENUMBER); createEAttribute(extRuleEClass, EXT_RULE__RULEVARIANT); createEAttribute(extRuleEClass, EXT_RULE__NAME); createEAttribute(extRuleEClass, EXT_RULE__RULEEXT); createEReference(extRuleEClass, EXT_RULE__ELEMENTS); mergeRuleEClass = createEClass(MERGE_RULE); createEAttribute(mergeRuleEClass, MERGE_RULE__LOGIC); globalCombinatorEClass = createEClass(GLOBAL_COMBINATOR); ruleCombinatorEClass = createEClass(RULE_COMBINATOR); createEAttribute(ruleCombinatorEClass, RULE_COMBINATOR__NAME); createEAttribute(ruleCombinatorEClass, RULE_COMBINATOR__LABEL); hookCombinatorEClass = createEClass(HOOK_COMBINATOR); createEAttribute(hookCombinatorEClass, HOOK_COMBINATOR__NAME); createEAttribute(hookCombinatorEClass, HOOK_COMBINATOR__RULEEXT); createEAttribute(hookCombinatorEClass, HOOK_COMBINATOR__LABEL); definitionListEClass = createEClass(DEFINITION_LIST); createEReference(definitionListEClass, DEFINITION_LIST__SINGLE_DEFINITION); singleDefinitionEClass = createEClass(SINGLE_DEFINITION); createEReference(singleDefinitionEClass, SINGLE_DEFINITION__TERMS); termEClass = createEClass(TERM); createEReference(termEClass, TERM__TERM_ATOM); createEReference(termEClass, TERM__TERM_GROUPED_SEQUENCE); createEReference(termEClass, TERM__TERM_OPTIONAL_SEQUENCE); createEReference(termEClass, TERM__TERM_REPEATED_SEQUENCE); atomEClass = createEClass(ATOM); createEReference(atomEClass, ATOM__ATOM_STRING_RULE); createEReference(atomEClass, ATOM__ATOM_RULE_REFERENCE); ruleReferenceEClass = createEClass(RULE_REFERENCE); createEReference(ruleReferenceEClass, RULE_REFERENCE__RULEREF); stringRuleEClass = createEClass(STRING_RULE); createEAttribute(stringRuleEClass, STRING_RULE__LITERAL); createEAttribute(stringRuleEClass, STRING_RULE__COLON); groupedSequenceEClass = createEClass(GROUPED_SEQUENCE); createEReference(groupedSequenceEClass, GROUPED_SEQUENCE__DEFINITION_LIST); optionalSequenceEClass = createEClass(OPTIONAL_SEQUENCE); createEReference(optionalSequenceEClass, OPTIONAL_SEQUENCE__DEFINITION_LIST); repeatedSequenceEClass = createEClass(REPEATED_SEQUENCE); createEReference(repeatedSequenceEClass, REPEATED_SEQUENCE__DEFINITIONS); createEAttribute(repeatedSequenceEClass, REPEATED_SEQUENCE__MORETHANONCE); createEReference(repeatedSequenceEClass, REPEATED_SEQUENCE__RANGE); repeatRangeEClass = createEClass(REPEAT_RANGE); createEAttribute(repeatRangeEClass, REPEAT_RANGE__FROM); createEAttribute(repeatRangeEClass, REPEAT_RANGE__TO); } /** * * * @generated */ private boolean isInitialized = false; /** * Complete the initialization of the package and its meta-model. This * method is guarded to have no affect on any invocation but its first. * * * @generated */ public void initializePackageContents() { if (isInitialized) return; isInitialized = true; // Initialize package setName(eNAME); setNsPrefix(eNS_PREFIX); setNsURI(eNS_URI); // Create type parameters // Set bounds for type parameters // Add supertypes to classes globalCombinatorEClass.getESuperTypes().add(this.getMergeRule()); ruleCombinatorEClass.getESuperTypes().add(this.getMergeRule()); hookCombinatorEClass.getESuperTypes().add(this.getMergeRule()); // Initialize classes and features; add operations and parameters initEClass(etsiBnfEClass, EtsiBnf.class, "EtsiBnf", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getEtsiBnf_Name(), ecorePackage.getEString(), "name", null, 0, 1, EtsiBnf.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getEtsiBnf_Type(), ecorePackage.getEString(), "type", null, 0, 1, EtsiBnf.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getEtsiBnf_ImportSection(), this.getImportSection(), null, "importSection", null, 0, 1, EtsiBnf.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getEtsiBnf_BnfEntry(), this.getBnfEntry(), null, "bnfEntry", null, 0, -1, EtsiBnf.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getEtsiBnf_DeltaEntry(), this.getDeltaEntry(), null, "deltaEntry", null, 0, -1, EtsiBnf.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getEtsiBnf_MergeEntry(), this.getMergeEntry(), null, "mergeEntry", null, 0, -1, EtsiBnf.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(importSectionEClass, ImportSection.class, "ImportSection", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getImportSection_Imports(), this.getImport(), null, "imports", null, 0, -1, ImportSection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(bnfEntryEClass, BnfEntry.class, "BnfEntry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getBnfEntry_Sectionheader(), this.getSectionHeading(), null, "sectionheader", null, 0, 1, BnfEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getBnfEntry_Rule(), this.getRule(), null, "rule", null, 0, 1, BnfEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getBnfEntry_Comment(), this.getComment(), null, "comment", null, 0, 1, BnfEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(deltaEntryEClass, DeltaEntry.class, "DeltaEntry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getDeltaEntry_Rule(), this.getRule(), null, "rule", null, 0, 1, DeltaEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getDeltaEntry_Sectionheader(), this.getSectionHeading(), null, "sectionheader", null, 0, 1, DeltaEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getDeltaEntry_ExtRule(), this.getExtRule(), null, "extRule", null, 0, 1, DeltaEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(mergeEntryEClass, MergeEntry.class, "MergeEntry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getMergeEntry_Sectionheader(), this.getSectionHeading(), null, "sectionheader", null, 0, 1, MergeEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getMergeEntry_MergeRule(), this.getMergeRule(), null, "mergeRule", null, 0, 1, MergeEntry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(sectionHeadingEClass, SectionHeading.class, "SectionHeading", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getSectionHeading_SectionHeader(), ecorePackage.getEString(), "sectionHeader", null, 0, 1, SectionHeading.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(commentEClass, Comment.class, "Comment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getComment_Content(), ecorePackage.getEString(), "content", null, 0, 1, Comment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getImport_ImportURI(), ecorePackage.getEString(), "importURI", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getImport_GrammarType(), ecorePackage.getEString(), "grammarType", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getImport_Label(), ecorePackage.getEString(), "label", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(ruleEClass, Rule.class, "Rule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getRule_Rulenumber(), ecorePackage.getEInt(), "rulenumber", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getRule_Rulevariant(), ecorePackage.getEString(), "rulevariant", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getRule_Name(), ecorePackage.getEString(), "name", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRule_DefinitionList(), this.getDefinitionList(), null, "definitionList", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(extRuleEClass, ExtRule.class, "ExtRule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getExtRule_Rulenumber(), ecorePackage.getEInt(), "rulenumber", null, 0, 1, ExtRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getExtRule_Rulevariant(), ecorePackage.getEString(), "rulevariant", null, 0, 1, ExtRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getExtRule_Name(), ecorePackage.getEString(), "name", null, 0, 1, ExtRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getExtRule_Ruleext(), ecorePackage.getEInt(), "ruleext", null, 0, 1, ExtRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getExtRule_Elements(), this.getAtom(), null, "elements", null, 0, -1, ExtRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(mergeRuleEClass, MergeRule.class, "MergeRule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getMergeRule_Logic(), ecorePackage.getEString(), "logic", null, 0, 1, MergeRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(globalCombinatorEClass, GlobalCombinator.class, "GlobalCombinator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(ruleCombinatorEClass, RuleCombinator.class, "RuleCombinator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getRuleCombinator_Name(), ecorePackage.getEString(), "name", null, 0, 1, RuleCombinator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getRuleCombinator_LABEL(), ecorePackage.getEString(), "LABEL", null, 0, -1, RuleCombinator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(hookCombinatorEClass, HookCombinator.class, "HookCombinator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getHookCombinator_Name(), ecorePackage.getEString(), "name", null, 0, 1, HookCombinator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getHookCombinator_Ruleext(), ecorePackage.getEInt(), "ruleext", null, 0, 1, HookCombinator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getHookCombinator_LABEL(), ecorePackage.getEString(), "LABEL", null, 0, -1, HookCombinator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(definitionListEClass, DefinitionList.class, "DefinitionList", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getDefinitionList_SingleDefinition(), this.getSingleDefinition(), null, "singleDefinition", null, 0, -1, DefinitionList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(singleDefinitionEClass, SingleDefinition.class, "SingleDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSingleDefinition_Terms(), this.getTerm(), null, "terms", null, 0, -1, SingleDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(termEClass, Term.class, "Term", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getTerm_TermAtom(), this.getAtom(), null, "termAtom", null, 0, 1, Term.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTerm_TermGroupedSequence(), this.getGroupedSequence(), null, "termGroupedSequence", null, 0, 1, Term.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTerm_TermOptionalSequence(), this.getOptionalSequence(), null, "termOptionalSequence", null, 0, 1, Term.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTerm_TermRepeatedSequence(), this.getRepeatedSequence(), null, "termRepeatedSequence", null, 0, 1, Term.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(atomEClass, Atom.class, "Atom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getAtom_AtomStringRule(), this.getStringRule(), null, "atomStringRule", null, 0, 1, Atom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getAtom_AtomRuleReference(), this.getRuleReference(), null, "atomRuleReference", null, 0, 1, Atom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(ruleReferenceEClass, RuleReference.class, "RuleReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getRuleReference_Ruleref(), this.getRule(), null, "ruleref", null, 0, 1, RuleReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(stringRuleEClass, StringRule.class, "StringRule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getStringRule_Literal(), ecorePackage.getEString(), "literal", null, 0, 1, StringRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getStringRule_Colon(), ecorePackage.getEString(), "colon", null, 0, 1, StringRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(groupedSequenceEClass, GroupedSequence.class, "GroupedSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getGroupedSequence_DefinitionList(), this.getDefinitionList(), null, "definitionList", null, 0, -1, GroupedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(optionalSequenceEClass, OptionalSequence.class, "OptionalSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getOptionalSequence_DefinitionList(), this.getDefinitionList(), null, "definitionList", null, 0, -1, OptionalSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(repeatedSequenceEClass, RepeatedSequence.class, "RepeatedSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getRepeatedSequence_Definitions(), this.getDefinitionList(), null, "definitions", null, 0, -1, RepeatedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getRepeatedSequence_Morethanonce(), ecorePackage.getEBoolean(), "morethanonce", null, 0, 1, RepeatedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRepeatedSequence_Range(), this.getRepeatRange(), null, "range", null, 0, 1, RepeatedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(repeatRangeEClass, RepeatRange.class, "RepeatRange", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getRepeatRange_From(), ecorePackage.getEInt(), "from", null, 0, 1, RepeatRange.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getRepeatRange_To(), ecorePackage.getEInt(), "to", null, 0, 1, RepeatRange.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); // Create resource createResource(eNS_URI); } } //EbnfPackageImpl