Package org.mpi_sws.jmc.strategies.trust
Class ExplorationStack.Item
java.lang.Object
org.mpi_sws.jmc.strategies.trust.ExplorationStack.Item
- Enclosing class:
ExplorationStack
Represents an item in the exploration stack.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddAdditionalEvent(Event event) static ExplorationStack.ItembackwardRevisit(ExecutionGraphNode one, ExecutionGraph graph) Creates a backward revisit item for a write revisiting a read.static ExplorationStack.ItemforwardLW(ExecutionGraphNode one, ExecutionGraph graph) static ExplorationStack.ItemforwardRW(ExecutionGraphNode read, ExecutionGraphNode write, ExecutionGraph graph) Creates a forward revisit item for a read revisiting an alternative write.static ExplorationStack.ItemforwardWW(ExecutionGraphNode one, ExecutionGraphNode two, ExecutionGraph graph) Creates a forward revisit item for a write revisiting an alternative concurrent write.Gets the first event of the item.Gets the second event of the item.getGraph()Gets the graph associated with the item.intGets the inner stack index of the item.getType()Gets the type of the item.booleanChecks if the item is a forward revisit.static ExplorationStack.ItemlockBackwardRevisit(ExecutionGraphNode one, ExecutionGraphNode two, ExecutionGraph graph) Creates a backward revisit item for a lock read revisiting another lock read.voidsetInnerStackIndex(int index) Sets the inner stack index of the item.toString()
-
Method Details
-
addAdditionalEvent
-
getAdditionalEventsToProcess
-
forwardRW
public static ExplorationStack.Item forwardRW(ExecutionGraphNode read, ExecutionGraphNode write, ExecutionGraph graph) Creates a forward revisit item for a read revisiting an alternative write.- Parameters:
read- The read eventwrite- The write eventgraph- The graph to be used in the case of a backward revisit- Returns:
- The created item
-
forwardWW
public static ExplorationStack.Item forwardWW(ExecutionGraphNode one, ExecutionGraphNode two, ExecutionGraph graph) Creates a forward revisit item for a write revisiting an alternative concurrent write.- Parameters:
one- The first write eventtwo- The second write eventgraph- The graph to be used in the case of a backward revisit- Returns:
- The created item
-
forwardLW
-
backwardRevisit
Creates a backward revisit item for a write revisiting a read.- Parameters:
one- The write eventgraph- The graph to be used in the case of a backward revisit- Returns:
- The created item
-
lockBackwardRevisit
public static ExplorationStack.Item lockBackwardRevisit(ExecutionGraphNode one, ExecutionGraphNode two, ExecutionGraph graph) Creates a backward revisit item for a lock read revisiting another lock read.- Parameters:
one- The read eventtwo- The revisited readgraph- The graph to be used in the case of a backward revisit- Returns:
- The created item
-
setInnerStackIndex
public void setInnerStackIndex(int index) Sets the inner stack index of the item.- Parameters:
index- The inner stack index
-
getInnerStackIndex
public int getInnerStackIndex()Gets the inner stack index of the item.- Returns:
- The inner stack index
-
getType
Gets the type of the item.- Returns:
- The type of the item
-
getEvent1
Gets the first event of the item.- Returns:
- The first event of the item
-
getEvent2
Gets the second event of the item.- Returns:
- The second event of the item
-
getGraph
Gets the graph associated with the item.- Returns:
- The graph associated with the item
-
isBackwardRevisit
public boolean isBackwardRevisit()Checks if the item is a forward revisit.- Returns:
- True if the item is a forward revisit, false otherwise
-
toString
-