org.eclipse.emf.henshin.model
Interface Graph

All Superinterfaces:
EObject, ModelElement, NamedElement, Notifier
All Known Implementing Classes:
GraphImpl

public interface Graph
extends NamedElement

A representation of the model object 'Graph'.

The following features are supported:

See Also:
HenshinPackage.getGraph()

Method Summary
 NestedCondition createNAC(String name)
          Create a new negative application condition (NAC) in this graphs formula.
 NestedCondition createPAC(String name)
          Create a new positive application condition (PAC) in this graphs formula.
 EList<Edge> getEdges()
          Returns the value of the 'Edges' containment reference list.
 EList<Edge> getEdges(EReference edgeType)
          Get all edges in this graph that are of a specific type.
 Formula getFormula()
          Returns the value of the 'Formula' containment reference.
 NestedCondition getNAC(String name)
          Get a negative application condition (PAC) of this graph with a given name.
 EList<NestedCondition> getNACs()
           
 EList<NestedCondition> getNestedConditions()
          Get all nested conditions that occur in the formula of this graph.
 Node getNode(String name)
          Get the first node in this graph that has the given argument name.
 EList<Node> getNodes()
          Returns the value of the 'Nodes' containment reference list.
 EList<Node> getNodes(EClass nodeType)
          Get all nodes in this graph that are of a specific type.
 NestedCondition getPAC(String name)
          Get a positive application condition (PAC) of this graph with a given name.
 EList<NestedCondition> getPACs()
           
 Rule getRule()
          Returns the Rule this graph is contained in or null if it is not directly contained in a Rule.
 boolean isLhs()
          Check whether this graph is the left-hand side of a rule.
 boolean isNestedCondition()
          Check whether this graph is a nested condition of a rule.
 boolean isRhs()
          Check whether this graph is the right-hand side of a rule.
 boolean removeEdge(Edge edge)
          Detaches the given edge from its source and target node and removes it from this graph.
 boolean removeNestedCondition(NestedCondition nestedCondition)
          Remove a nested condition from this graph's formula.
 boolean removeNode(Node node)
          Removes the given node from this graph.
 void setFormula(Formula value)
          Sets the value of the 'Formula' containment reference.
 
Methods inherited from interface org.eclipse.emf.henshin.model.NamedElement
getDescription, getName, setDescription, setName
 
Methods inherited from interface org.eclipse.emf.henshin.model.ModelElement
getAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Method Detail

getNodes

EList<Node> getNodes()
Returns the value of the 'Nodes' containment reference list. The list contents are of type Node. It is bidirectional and its opposite is 'Graph'.

Returns:
the value of the 'Nodes' containment reference list.
See Also:
HenshinPackage.getGraph_Nodes(), Node.getGraph()

getEdges

EList<Edge> getEdges()
Returns the value of the 'Edges' containment reference list. The list contents are of type Edge. It is bidirectional and its opposite is 'Graph'.

Returns:
the value of the 'Edges' containment reference list.
See Also:
HenshinPackage.getGraph_Edges(), Edge.getGraph()

getFormula

Formula getFormula()
Returns the value of the 'Formula' containment reference.

Returns:
the value of the 'Formula' containment reference.
See Also:
setFormula(Formula), HenshinPackage.getGraph_Formula()

setFormula

void setFormula(Formula value)
Sets the value of the 'Formula' containment reference.

Parameters:
value - the new value of the 'Formula' containment reference.
See Also:
getFormula()

getRule

Rule getRule()
Returns the Rule this graph is contained in or null if it is not directly contained in a Rule.


getNode

Node getNode(String name)
Get the first node in this graph that has the given argument name.


getNodes

EList<Node> getNodes(EClass nodeType)
Get all nodes in this graph that are of a specific type. This returns an unmodifiable list of nodes.


getEdges

EList<Edge> getEdges(EReference edgeType)
Get all edges in this graph that are of a specific type. This returns an unmodifiable list of edge.


getNestedConditions

EList<NestedCondition> getNestedConditions()
Get all nested conditions that occur in the formula of this graph. This returns an unmodifiable list of nested condition objects.


getPAC

NestedCondition getPAC(String name)
Get a positive application condition (PAC) of this graph with a given name. This returns the first PAC with this name.


getNAC

NestedCondition getNAC(String name)
Get a negative application condition (PAC) of this graph with a given name. This returns the first NAC with this name.


getPACs

EList<NestedCondition> getPACs()


getNACs

EList<NestedCondition> getNACs()


isLhs

boolean isLhs()
Check whether this graph is the left-hand side of a rule.


isRhs

boolean isRhs()
Check whether this graph is the right-hand side of a rule.


isNestedCondition

boolean isNestedCondition()
Check whether this graph is a nested condition of a rule.


createPAC

NestedCondition createPAC(String name)
Create a new positive application condition (PAC) in this graphs formula.


createNAC

NestedCondition createNAC(String name)
Create a new negative application condition (NAC) in this graphs formula.


removeNode

boolean removeNode(Node node)
Removes the given node from this graph. All attached edges are automatically removed.


removeEdge

boolean removeEdge(Edge edge)
Detaches the given edge from its source and target node and removes it from this graph.


removeNestedCondition

boolean removeNestedCondition(NestedCondition nestedCondition)
Remove a nested condition from this graph's formula.