/**
* generated by Xtext 2.21.0
*/
package org.eclipse.viatra.solver.language.solverLanguage;
import org.eclipse.emf.ecore.EObject;
/**
*
* A representation of the model object 'Member Definition'.
*
*
*
* The following features are supported:
*
*
* - {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#isContainment Containment}
* - {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getType Type}
* - {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getMultiplicity Multiplicity}
* - {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getName Name}
* - {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getOpposite Opposite}
*
*
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition()
* @model
* @generated
*/
public interface MemberDefinition extends EObject {
/**
* Returns the value of the 'Containment' attribute.
*
*
* @return the value of the 'Containment' attribute.
* @see #setContainment(boolean)
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Containment()
* @model
* @generated
*/
boolean isContainment();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#isContainment Containment}' attribute.
*
*
* @param value the new value of the 'Containment' attribute.
* @see #isContainment()
* @generated
*/
void setContainment(boolean value);
/**
* Returns the value of the 'Type' reference.
*
*
* @return the value of the 'Type' reference.
* @see #setType(NamedElement)
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Type()
* @model
* @generated
*/
NamedElement getType();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getType Type}' reference.
*
*
* @param value the new value of the 'Type' reference.
* @see #getType()
* @generated
*/
void setType(NamedElement value);
/**
* Returns the value of the 'Multiplicity' containment reference.
*
*
* @return the value of the 'Multiplicity' containment reference.
* @see #setMultiplicity(Multiplicity)
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Multiplicity()
* @model containment="true"
* @generated
*/
Multiplicity getMultiplicity();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getMultiplicity Multiplicity}' containment reference.
*
*
* @param value the new value of the 'Multiplicity' containment reference.
* @see #getMultiplicity()
* @generated
*/
void setMultiplicity(Multiplicity value);
/**
* Returns the value of the 'Name' attribute.
*
*
* @return the value of the 'Name' attribute.
* @see #setName(String)
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Name()
* @model
* @generated
*/
String getName();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getName Name}' attribute.
*
*
* @param value the new value of the 'Name' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the 'Opposite' reference.
*
*
* @return the value of the 'Opposite' reference.
* @see #setOpposite(NamedElement)
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Opposite()
* @model
* @generated
*/
NamedElement getOpposite();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getOpposite Opposite}' reference.
*
*
* @param value the new value of the 'Opposite' reference.
* @see #getOpposite()
* @generated
*/
void setOpposite(NamedElement value);
} // MemberDefinition