/**
*/
package org.eclipse.viatra.solver.language.model.problem;
/**
*
* A representation of the model object 'Reference Declaration'.
*
*
*
* The following features are supported:
*
*
* - {@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType Reference Type}
* - {@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getOpposite Opposite}
* - {@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#isContainment Containment}
* - {@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getMultiplicity Multiplicity}
*
*
* @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration()
* @model
* @generated
*/
public interface ReferenceDeclaration extends Relation {
/**
* Returns the value of the 'Reference Type' reference.
*
*
* @return the value of the 'Reference Type' reference.
* @see #setReferenceType(Relation)
* @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_ReferenceType()
* @model
* @generated
*/
Relation getReferenceType();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType Reference Type}' reference.
*
*
* @param value the new value of the 'Reference Type' reference.
* @see #getReferenceType()
* @generated
*/
void setReferenceType(Relation value);
/**
* Returns the value of the 'Opposite' reference.
*
*
* @return the value of the 'Opposite' reference.
* @see #setOpposite(ReferenceDeclaration)
* @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_Opposite()
* @model
* @generated
*/
ReferenceDeclaration getOpposite();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getOpposite Opposite}' reference.
*
*
* @param value the new value of the 'Opposite' reference.
* @see #getOpposite()
* @generated
*/
void setOpposite(ReferenceDeclaration value);
/**
* Returns the value of the 'Containment' attribute.
*
*
* @return the value of the 'Containment' attribute.
* @see #setContainment(boolean)
* @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_Containment()
* @model
* @generated
*/
boolean isContainment();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#isContainment Containment}' attribute.
*
*
* @param value the new value of the 'Containment' attribute.
* @see #isContainment()
* @generated
*/
void setContainment(boolean 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.model.problem.ProblemPackage#getReferenceDeclaration_Multiplicity()
* @model containment="true"
* @generated
*/
Multiplicity getMultiplicity();
/**
* Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getMultiplicity Multiplicity}' containment reference.
*
*
* @param value the new value of the 'Multiplicity' containment reference.
* @see #getMultiplicity()
* @generated
*/
void setMultiplicity(Multiplicity value);
} // ReferenceDeclaration