/**
*/
package de.ugoe.cs.swe.bnftools.ebnf;
import org.eclipse.emf.ecore.EFactory;
/**
*
* The Factory for the model.
* It provides a create method for each non-abstract class of the model.
*
* @see de.ugoe.cs.swe.bnftools.ebnf.EbnfPackage
* @generated
*/
public interface EbnfFactory extends EFactory
{
/**
* The singleton instance of the factory.
*
*
* @generated
*/
EbnfFactory eINSTANCE = de.ugoe.cs.swe.bnftools.ebnf.impl.EbnfFactoryImpl.init();
/**
* Returns a new object of class 'Etsi Bnf'.
*
*
* @return a new object of class 'Etsi Bnf'.
* @generated
*/
EtsiBnf createEtsiBnf();
/**
* Returns a new object of class 'Import Section'.
*
*
* @return a new object of class 'Import Section'.
* @generated
*/
ImportSection createImportSection();
/**
* Returns a new object of class 'Bnf Entry'.
*
*
* @return a new object of class 'Bnf Entry'.
* @generated
*/
BnfEntry createBnfEntry();
/**
* Returns a new object of class 'Delta Entry'.
*
*
* @return a new object of class 'Delta Entry'.
* @generated
*/
DeltaEntry createDeltaEntry();
/**
* Returns a new object of class 'Merge Entry'.
*
*
* @return a new object of class 'Merge Entry'.
* @generated
*/
MergeEntry createMergeEntry();
/**
* Returns a new object of class 'Section Heading'.
*
*
* @return a new object of class 'Section Heading'.
* @generated
*/
SectionHeading createSectionHeading();
/**
* Returns a new object of class 'Import'.
*
*
* @return a new object of class 'Import'.
* @generated
*/
Import createImport();
/**
* Returns a new object of class 'Rule'.
*
*
* @return a new object of class 'Rule'.
* @generated
*/
Rule createRule();
/**
* Returns a new object of class 'Ext Rule'.
*
*
* @return a new object of class 'Ext Rule'.
* @generated
*/
ExtRule createExtRule();
/**
* Returns a new object of class 'Merge Rule'.
*
*
* @return a new object of class 'Merge Rule'.
* @generated
*/
MergeRule createMergeRule();
/**
* Returns a new object of class 'Global Combinator'.
*
*
* @return a new object of class 'Global Combinator'.
* @generated
*/
GlobalCombinator createGlobalCombinator();
/**
* Returns a new object of class 'Rule Combinator'.
*
*
* @return a new object of class 'Rule Combinator'.
* @generated
*/
RuleCombinator createRuleCombinator();
/**
* Returns a new object of class 'Hook Combinator'.
*
*
* @return a new object of class 'Hook Combinator'.
* @generated
*/
HookCombinator createHookCombinator();
/**
* Returns a new object of class 'Definition List'.
*
*
* @return a new object of class 'Definition List'.
* @generated
*/
DefinitionList createDefinitionList();
/**
* Returns a new object of class 'Single Definition'.
*
*
* @return a new object of class 'Single Definition'.
* @generated
*/
SingleDefinition createSingleDefinition();
/**
* Returns a new object of class 'Term'.
*
*
* @return a new object of class 'Term'.
* @generated
*/
Term createTerm();
/**
* Returns a new object of class 'Atom'.
*
*
* @return a new object of class 'Atom'.
* @generated
*/
Atom createAtom();
/**
* Returns a new object of class 'Rule Reference'.
*
*
* @return a new object of class 'Rule Reference'.
* @generated
*/
RuleReference createRuleReference();
/**
* Returns a new object of class 'String Rule'.
*
*
* @return a new object of class 'String Rule'.
* @generated
*/
StringRule createStringRule();
/**
* Returns a new object of class 'Grouped Sequence'.
*
*
* @return a new object of class 'Grouped Sequence'.
* @generated
*/
GroupedSequence createGroupedSequence();
/**
* Returns a new object of class 'Optional Sequence'.
*
*
* @return a new object of class 'Optional Sequence'.
* @generated
*/
OptionalSequence createOptionalSequence();
/**
* Returns a new object of class 'Repeated Sequence'.
*
*
* @return a new object of class 'Repeated Sequence'.
* @generated
*/
RepeatedSequence createRepeatedSequence();
/**
* Returns the package supported by this factory.
*
*
* @return the package supported by this factory.
* @generated
*/
EbnfPackage getEbnfPackage();
} //EbnfFactory