/**
*/
package fr.inria.diverse.minilang;
import org.eclipse.emf.ecore.EFactory;
/**
* <!-- begin-user-doc -->
* The <b>Factory</b> for the model.
* It provides a create method for each non-abstract class of the model.
* <!-- end-user-doc -->
* @see fr.inria.diverse.minilang.MinilangPackage
* @generated
*/
public interface MinilangFactory extends EFactory {
/**
* The singleton instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
MinilangFactory eINSTANCE = fr.inria.diverse.minilang.impl.MinilangFactoryImpl.init();
/**
* Returns a new object of class '<em>Int Expression</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Int Expression</em>'.
* @generated
*/
IntExpression createIntExpression();
/**
* Returns a new object of class '<em>Integer</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Integer</em>'.
* @generated
*/
Integer createInteger();
/**
* Returns a new object of class '<em>Boolean</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Boolean</em>'.
* @generated
*/
Boolean createBoolean();
/**
* Returns a new object of class '<em>Int Operation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Int Operation</em>'.
* @generated
*/
IntOperation createIntOperation();
/**
* Returns a new object of class '<em>Equal</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Equal</em>'.
* @generated
*/
Equal createEqual();
/**
* Returns a new object of class '<em>Greater</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Greater</em>'.
* @generated
*/
Greater createGreater();
/**
* Returns a new object of class '<em>Greater Or Equal</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Greater Or Equal</em>'.
* @generated
*/
GreaterOrEqual createGreaterOrEqual();
/**
* Returns a new object of class '<em>Less</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Less</em>'.
* @generated
*/
Less createLess();
/**
* Returns a new object of class '<em>Less Or Equal</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Less Or Equal</em>'.
* @generated
*/
LessOrEqual createLessOrEqual();
/**
* Returns a new object of class '<em>Not</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Not</em>'.
* @generated
*/
Not createNot();
/**
* Returns a new object of class '<em>Or</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Or</em>'.
* @generated
*/
Or createOr();
/**
* Returns a new object of class '<em>And</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>And</em>'.
* @generated
*/
And createAnd();
/**
* Returns a new object of class '<em>Plus</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Plus</em>'.
* @generated
*/
Plus createPlus();
/**
* Returns a new object of class '<em>Minus</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Minus</em>'.
* @generated
*/
Minus createMinus();
/**
* Returns a new object of class '<em>Multiply</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Multiply</em>'.
* @generated
*/
Multiply createMultiply();
/**
* Returns a new object of class '<em>Divide</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Divide</em>'.
* @generated
*/
Divide createDivide();
/**
* Returns a new object of class '<em>Boolean Expression</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Boolean Expression</em>'.
* @generated
*/
BooleanExpression createBooleanExpression();
/**
* Returns a new object of class '<em>Boolean Operation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Boolean Operation</em>'.
* @generated
*/
BooleanOperation createBooleanOperation();
/**
* Returns a new object of class '<em>Boolean Variable Ref</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Boolean Variable Ref</em>'.
* @generated
*/
BooleanVariableRef createBooleanVariableRef();
/**
* Returns a new object of class '<em>Int Variable Ref</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Int Variable Ref</em>'.
* @generated
*/
IntVariableRef createIntVariableRef();
/**
* Returns a new object of class '<em>Variable Ref</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Variable Ref</em>'.
* @generated
*/
VariableRef createVariableRef();
/**
* Returns a new object of class '<em>Statement</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Statement</em>'.
* @generated
*/
Statement createStatement();
/**
* Returns a new object of class '<em>Boolean Assignment</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Boolean Assignment</em>'.
* @generated
*/
BooleanAssignment createBooleanAssignment();
/**
* Returns a new object of class '<em>Int Assignment</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Int Assignment</em>'.
* @generated
*/
IntAssignment createIntAssignment();
/**
* Returns a new object of class '<em>Print Var</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Print Var</em>'.
* @generated
*/
PrintVar createPrintVar();
/**
* Returns a new object of class '<em>Print Str</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Print Str</em>'.
* @generated
*/
PrintStr createPrintStr();
/**
* Returns a new object of class '<em>Block</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Block</em>'.
* @generated
*/
Block createBlock();
/**
* Returns a new object of class '<em>If</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>If</em>'.
* @generated
*/
If createIf();
/**
* Returns a new object of class '<em>While</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>While</em>'.
* @generated
*/
While createWhile();
/**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the package supported by this factory.
* @generated
*/
MinilangPackage getMinilangPackage();
} //MinilangFactory