Stanse  -1
Public Member Functions | List of all members
cz.muni.stanse.threadchecker.FunctionState Class Reference
Inheritance diagram for cz.muni.stanse.threadchecker.FunctionState:
Inheritance graph
[legend]
Collaboration diagram for cz.muni.stanse.threadchecker.FunctionState:
Collaboration graph
[legend]

Public Member Functions

 FunctionState ()
 
 FunctionState (FunctionState other)
 
FunctionState clone ()
 
boolean isSubset (FunctionState others)
 
void stitchFunctions (FunctionState others)
 
DependencyGraph generateGraph (ThreadInfo thread)
 
- Public Member Functions inherited from cz.muni.stanse.threadchecker.AbstractFunctionState
 AbstractFunctionState ()
 
 AbstractFunctionState (LinkedList< BackTrack > backTrack)
 
List< DependencyRulegetRules ()
 
LinkedList< BackTrackgetBackTrack ()
 
void addRules (Collection< DependencyRule > rules)
 
void addJoin (ResourceVertex srcNode, LockStack locked, UnlockSet unlocked)
 
void addRule (DependencyRule rule)
 
Lock getLock (String lockName)
 
Set< JoinNodegetJoins ()
 
Collection< LockgetScope ()
 
Map< String, List
< DependencyRule > > 
getRulesBySourceNode ()
 
Map< String, List
< DependencyRule > > 
getRulesByTargetNode ()
 
boolean isEmpty ()
 
boolean equals (Object obj)
 
int hashCode ()
 
String toString ()
 
void lockDown (String lockName) throws LockingException
 
void lockUp (String lockName, CFGNode node) throws LockingException
 

Additional Inherited Members

- Protected Member Functions inherited from cz.muni.stanse.threadchecker.AbstractFunctionState
final LockStack getLockStack ()
 
UnlockSet getUnlockSet ()
 

Detailed Description

Class which is used in CFGTransit algorithm. Inherits all methods from AbstractFunctionState and contains methods for stitching two FunctionState to new one.

Author
Jan Kučera

Constructor & Destructor Documentation

cz.muni.stanse.threadchecker.FunctionState.FunctionState ( )
inline
cz.muni.stanse.threadchecker.FunctionState.FunctionState ( FunctionState  other)
inline

Member Function Documentation

FunctionState cz.muni.stanse.threadchecker.FunctionState.clone ( )
inline
DependencyGraph cz.muni.stanse.threadchecker.FunctionState.generateGraph ( ThreadInfo  thread)
inline

Method generate DepenencyGraph. Clone all rules, set thread to every rule and clear their unlockSet -> it's not used in RAG building and can help with merging same Cycles

Parameters
thread
Returns
DependencyGraph
boolean cz.muni.stanse.threadchecker.FunctionState.isSubset ( FunctionState  others)
inline

Function returns boolean value comparing if this object and parameter are equal or others is a subset.

Parameters
othersFunctionState
Returns
true if object others is subset of this FunctionState object
void cz.muni.stanse.threadchecker.FunctionState.stitchFunctions ( FunctionState  others)
inline

Function gets FunctionState others and merge both structures. Creates new rules between locked locks if other.getJoins() holds lock(s). Also join all new data from others to this.

Parameters
othersFunctionState which should be stitched to this object

The documentation for this class was generated from the following file: