Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes

opennwa::details::TransitionStorage Class Reference

This class is used to keep track of the transitions of an NWA. More...

List of all members.

Public Types

typedef std::set< StateStates
typedef States::const_iterator stateIterator
typedef States::const_iterator StateIterator
typedef TransitionInfo::Call Call
typedef TransitionInfo::Internal Internal
typedef TransitionInfo::Return Return
typedef TransitionInfo::Calls Calls
typedef TransitionInfo::Internals Internals
typedef TransitionInfo::Returns Returns
typedef Internals::const_iterator InternalIterator
typedef Returns::const_iterator ReturnIterator
typedef TransitionInfo Info

Public Member Functions

 DEFINE_FAKE_STATIC_DATA (XMLFromAttr,"from")
 DEFINE_FAKE_STATIC_DATA (XMLPredAttr,"call")
 DEFINE_FAKE_STATIC_DATA (XMLSymbolAttr,"symbol")
 DEFINE_FAKE_STATIC_DATA (XMLToAttr,"to")
 DEFINE_FAKE_STATIC_DATA (InternalXMLTag,"InternalTrans")
 DEFINE_FAKE_STATIC_DATA (CallXMLTag,"CallTrans")
 DEFINE_FAKE_STATIC_DATA (ReturnXMLTag,"ReturnTrans")
TransitionStorageoperator= (const TransitionStorage &other)
bool getSymbol (State from, State to, Symbol &sym) const
 finds the symbol on any transition whose source is 'from' and whose target is 'to'
bool findTrans (State from, Symbol sym, State to) const
 tests whether there exists a transition whose source is 'from', whose symbol is 'sym', and whose target is 'to'
const States getReturnSites (State callSite) const
 returns all return sites that correspond with the given call site
States getReturnSites (State exit, State callSite) const
 returns all return sites that correspond with the given exit and call site
const States getCallSites (State exitSite, State returnSite) const
 returns all call sites that correspond with the given exit - return site pair
const States getEntries (State callSite) const
 returns all entry sites that correspond with the given call site
const States getTargets (State source) const
 returns all targets that correspond with the given source
void dupTransOutgoing (State orig, State dup)
 creates transitions for 'dup' mirroring 'orig' outgoing transitions
void dupTrans (State orig, State dup)
 creates transitions for 'dup' mirroring 'orig' transitions
void clear ()
 removes all transitions from this collection of transitions
const CallsgetCalls () const
 get all call transitions in this collection of transitions
const InternalsgetInternals () const
 get all internal transitions in this collection of transitions
const ReturnsgetReturns () const
 get all return transitions in the collection of transitions
bool addCall (State from, Symbol sym, State to)
 add a call transition to the NWA
bool addCall (const Call &addTrans)
 add the given call transition to the collection of transitions
bool addInternal (State from, Symbol sym, State to)
 add an internal transition to the NWA
bool addInternal (const Internal &addTrans)
 add the given internal transition to the collection of transitions
bool addReturn (State from, State pred, Symbol sym, State to)
 add a return transition to the NWA
bool addReturn (const Return &addTrans)
 add the given return transition to the collection of transitions
void addAllTrans (TransitionStorage addTransitionStorage)
 add all transitions in the given collection of transitions to this collection of transitions
bool removeCall (State from, Symbol sym, State to)
 remove a call transition from the NWA
bool removeCall (const Call &removeTrans)
 remove the given call transition from this collection of transitions
bool removeInternal (State from, Symbol sym, State to)
 remove an internal transition from the NWA
bool removeInternal (const Internal &removeTrans)
 remove the given internal transition from the collection of transitions
bool removeReturn (State from, State pred, Symbol sym, State to)
 remove a return transition from the NWA
bool removeReturn (const Return &removeTrans)
 remove the given return transition from the collection of transitions
bool isCall (State from, Symbol sym, State to) const
 test whether the given call transition is in this collection of transitions
bool isCall (const Call &trans) const
 test whether the given call transition is in this collection of transitions
bool isInternal (State from, Symbol sym, State to) const
 test whether the given internal transition is in this collection of transitions
bool isInternal (const Internal &trans) const
 test whether the given internal transition is in this collection of transitions
bool isReturn (State from, State pred, Symbol sym, State to) const
 test whether the given return transition is in this collection of transitions
bool isReturn (const Return &trans) const
 test whether the given return transition is in this collection of transitions
std::ostream & print (std::ostream &o) const
 print the collection of transitions
std::ostream & print_dot (std::ostream &o) const
bool operator== (const TransitionStorage &other) const
 tests whether this collection of transitions is equivalent to the collection of transitions 'other'
CallIterator beginCall () const
 provides access to the call transitions in the collection through an iterator
InternalIterator beginInternal () const
 provides access to the internal transitions in the collection through an iterator
ReturnIterator beginReturn () const
 provides access to the return transitions in the collection through an iterator
CallIterator endCall () const
 provides access to the call transitions in the collection through an iterator
InternalIterator endInternal () const
 provides access to the internal transitions in the collection through an iterator
ReturnIterator endReturn () const
 provides access to the return transitions in the collection through an iterator
size_t sizeCall () const
 returns the number of call transitions in this collection of transitions
size_t sizeInternal () const
 returns the number of internal transitions in this collection of transitions
size_t sizeReturn () const
 returns the number of return transitions in this collection of transitions
size_t size () const
 returns the total number of transitions (call, internal, and return) in this collection of transitions
const InternalsgetTransFrom (State state) const
 returns all outgoing internal transitions for the given state
const InternalsgetTransTo (State state) const
 retuans all incoming internal transitions for the given state
const CallsgetTransCall (State state) const
 returns all call transitions for the given call site
const CallsgetTransEntry (State state) const
 returns all call transitions for the given entry point
const ReturnsgetTransExit (State state) const
 returns all return transitions for the given exit point
const ReturnsgetTransPred (State state) const
 returns all return transitions for the given call predecessor
const ReturnsgetTransRet (State state) const
 returns all return transitions for the given return site
bool isFrom (State state) const
 tests whether the given state is the source of any internal transition
bool isTo (State state) const
 tests whether the given state is the target of any internal transition
bool isCall (State state) const
 tests whether the given state is the call site of any call transition
bool isEntry (State state) const
 tests whether the given state is the entry point of any call transition
bool isExit (State state) const
 tests whether the given state is the exit point of any return transition
bool isPred (State state) const
 tests whether the given state is the call predecessor for any return transition
bool isRet (State state) const
 tests whether the given state is the return site of any return transition
bool removeTransWith (State state)
 removes all transitions involving the given state
bool removeTransSym (Symbol sym)
 removes all transitions with the given symbol
bool callExists (State from, Symbol sym) const
 test if there exists a call transition with the given from state and symbol in this collection of transitions
const Calls getCalls (State from, Symbol sym) const
 provides access to all call transitions with the given from state and symbol in this collection of transitions
bool internalExists (State from, Symbol sym) const
 test if there exists an internal transition with the given from state and symbol in this collection of transitions
const Internals getInternals (State from, Symbol sym) const
 provides access to all internal transitions with the given from state and symbol in this collection of transitions
const Internals getInternalsFrom (State from) const
 TODO this is redundant.
bool returnExists (State from, State pred, Symbol sym) const
 test if there exists a return transition with the given from state, predecessor state, and symbol in this collection of transitions
const Returns getReturns (State from, Symbol sym) const
 provides access to all return transitions with the given from state and symbol in this collection of transitions

Static Public Member Functions

static State getCallSite (const Call &callTrans)
 access the call site of the given call transition
static Symbol getCallSym (const Call &callTrans)
 access the symbol of the given call transition
static State getEntry (const Call &callTrans)
 access the entry point of the given call transition
static State getSource (const Internal &internalTrans)
 access the source of the given internal transition
static Symbol getInternalSym (const Internal &internalTrans)
 access the symbol of the given internal transition
static State getTarget (const Internal &internalTrans)
 access the target of the given internal transition
static State getExit (const Return &returnTrans)
 access the exit point of the given return transition
static State getCallSite (const Return &returnTrans)
 access the call site of the given return transition
static Symbol getReturnSym (const Return &returnTrans)
 access the symbol of the given return transition
static State getReturnSite (const Return &returnTrans)
 access the return site of the given return transition

Public Attributes

DEPRECATE("Use capitalized
version (CallIterator)
instead. (Not that you should
be using it from
TransitionStorage in the first
place.)") typedef Calls
DEPRECATE("Use capitalized
version (InternalIterator)
instead. (Not that you should
be using it from
TransitionStorage in the first
place.)") typedef Internals
DEPRECATE("Use capitalized
version (ReturnIterator)
instead. (Not that you should
be using it from
TransitionStorage in the first
place.)") typedef Returns
typedef Calls::const_iterator 
CallIterator

Protected Member Functions

bool removeCallTransWith (State state)
 removes all call transitions to or from the given state
bool removeInternalTransWith (State state)
 removes all internal transitions to or from the given state
bool removeReturnTransWith (State state)
 removes all return transitions to or from the given state as well as return transitions corresponding to calls from that state
bool removeCallTransSym (Symbol sym)
 removes all call transitions with the given symbol
bool removeInternalTransSym (Symbol sym)
 removes all internal transitions with the given symbol
bool removeReturnTransSym (Symbol sym)
 removes all return transitions with the given symbol

Protected Attributes

Calls callTrans
Internals internalTrans
Returns returnTrans
Info T_info

Detailed Description

This class is used to keep track of the transitions of an NWA.


Member Typedef Documentation

typedef Internals::const_iterator opennwa::details::TransitionStorage::InternalIterator
typedef Returns::const_iterator opennwa::details::TransitionStorage::ReturnIterator

Member Function Documentation

opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( XMLFromAttr  ,
"from"   
)
opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( XMLPredAttr  ,
"call"   
)
opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( XMLSymbolAttr  ,
"symbol"   
)
opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( XMLToAttr  ,
"to"   
)
opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( InternalXMLTag  ,
"InternalTrans"   
)
opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( CallXMLTag  ,
"CallTrans"   
)
opennwa::details::TransitionStorage::DEFINE_FAKE_STATIC_DATA ( ReturnXMLTag  ,
"ReturnTrans"   
)
TransitionStorage & opennwa::details::TransitionStorage::operator= ( const TransitionStorage other  ) 
static State opennwa::details::TransitionStorage::getCallSite ( const Call callTrans  )  [static]
static Symbol opennwa::details::TransitionStorage::getCallSym ( const Call callTrans  )  [static]
static State opennwa::details::TransitionStorage::getEntry ( const Call callTrans  )  [static]
static State opennwa::details::TransitionStorage::getSource ( const Internal internalTrans  )  [static]

access the source of the given internal transition

This method provides access to the source of the given internal transition.

Parameters:
- internalTrans: the internal transition whose source to access
Returns:
the source of the given internal transition

References wali::Triple< T, U, V >::first.

Referenced by opennwa::Nwa::_private_intersect_(), opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), opennwa::Nwa::_private_star_(), opennwa::Nwa::addInternalTrans(), dupTrans(), print(), opennwa::Nwa::print_dot(), opennwa::Nwa::removeImplicitTransitions(), and opennwa::Nwa::removeInternalTrans().

static Symbol opennwa::details::TransitionStorage::getInternalSym ( const Internal internalTrans  )  [static]
static State opennwa::details::TransitionStorage::getTarget ( const Internal internalTrans  )  [static]
static State opennwa::details::TransitionStorage::getExit ( const Return returnTrans  )  [static]
static State opennwa::details::TransitionStorage::getCallSite ( const Return returnTrans  )  [static]

access the call site of the given return transition

This method provides access to the call site of the given return transition.

Parameters:
- returnTrans: the return transition whose call site to access
Returns:
the call site of the given return transition

References wali::Quad< T, U, V, W >::second.

static Symbol opennwa::details::TransitionStorage::getReturnSym ( const Return returnTrans  )  [static]
static State opennwa::details::TransitionStorage::getReturnSite ( const Return returnTrans  )  [static]
bool opennwa::details::TransitionStorage::getSymbol ( State  fromSt,
State  toSt,
Symbol sym 
) const

finds the symbol on any transition whose source is 'from' and whose target is 'to'

This method return the symbol on any transition whose source is 'from' and whose target is 'to'.

Parameters:
- from: the source of the transition
- to: the target of the transition
Returns:
true if there exists some transition with the given source and target, false otherwise
Parameters:
- from: the source of the transition
- to: the target of the transition
Returns:
true if there exists some transition with the given source and target, false otherwise

References opennwa::details::TransitionInfo::callTrans(), opennwa::details::TransitionInfo::exitTrans(), opennwa::details::TransitionInfo::fromTrans(), getCallSym(), getEntry(), getInternalSym(), getReturnSite(), getReturnSym(), getTarget(), and T_info.

bool opennwa::details::TransitionStorage::findTrans ( State  fromSt,
Symbol  sym,
State  toSt 
) const

tests whether there exists a transition whose source is 'from', whose symbol is 'sym', and whose target is 'to'

This method determines whether there exists a transition (internal, call, or return) whose source is 'from', whose symbol is 'sym', and whose target is 'to'.

Parameters:
- from: the source of the transition
- sym: the symbol that labels the transition
- to: the target of the transition
Returns:
true if such a transition exists, false otherwise
Parameters:
- from: the source of the transition
- sym: the symbol that labels the transition
- to: the target of the transition
Returns:
true if such a transition exists, false otherwise

References opennwa::details::TransitionInfo::callTrans(), opennwa::details::TransitionInfo::exitTrans(), opennwa::details::TransitionInfo::fromTrans(), getCallSym(), getEntry(), getInternalSym(), getReturnSite(), getReturnSym(), getTarget(), T_info, and opennwa::WILD.

const TransitionStorage::States opennwa::details::TransitionStorage::getReturnSites ( State  callSite  )  const

returns all return sites that correspond with the given call site

This method returns the set of all return sites that correspond with the given call site.

Parameters:
- callSite: the call site whose return sites to look for
Returns:
the set of all return sites that correspond with the given call site
Parameters:
- callSite: the call site whose return sites to look for
Returns:
the set of all return sites that correspond with the given call site

References getReturnSite(), opennwa::details::TransitionInfo::predTrans(), and T_info.

TransitionStorage::States opennwa::details::TransitionStorage::getReturnSites ( State  exit,
State  callSite 
) const

returns all return sites that correspond with the given exit and call site

This method returns the set of all return sites that correspond with the given exit and call site.

Parameters:
- exit: the exit whose return sites to look for
- callSite: the call site whose return sites to look for
Returns:
the set of all return sites that correspond with the given exit and call site
Parameters:
- exit: the exit whose return sites to look for
- callSite: the call site whose return sites to look for
Returns:
the set of all return sites that correspond with the given call site

References getExit(), getReturnSite(), opennwa::details::TransitionInfo::predTrans(), and T_info.

const TransitionStorage::States opennwa::details::TransitionStorage::getCallSites ( State  exitSite,
State  returnSite 
) const

returns all call sites that correspond with the given exit - return site pair

This method returns the set of all call sites that correspond with the given exit - return site pair.

Parameters:
- exitSite: the exit of the pair whose call sites to look for
= returnSite: the return site of the pair whose call sites to look for
Returns:
the set of all call sites that correspond with the exit - return site pair
Parameters:
- exitSite: the exit of the pair whose call sites to look for
= returnSite: the return site of the pair whose call sites to look for
Returns:
the set of all call sites that correspond with the exit - return site pair

References opennwa::details::TransitionInfo::exitTrans(), getCallSite(), getReturnSite(), and T_info.

Referenced by opennwa::Nwa::removeReturnTrans().

const TransitionStorage::States opennwa::details::TransitionStorage::getEntries ( State  callSite  )  const

returns all entry sites that correspond with the given call site

This method returns the set of all entry sites that correspond with the given call site.

Parameters:
- callSite: the call site whose entry sites to look for
Returns:
the set of all entry sites that correspond with the given call site
Parameters:
- callSite: the call site whose entry sites to look for
Returns:
the set of all entry sites that correspond with the given call site

References opennwa::details::TransitionInfo::callTrans(), getEntry(), and T_info.

const TransitionStorage::States opennwa::details::TransitionStorage::getTargets ( State  source  )  const

returns all targets that correspond with the given source

This method returns the set of all targets that correspond with the given source .

Parameters:
- source: the source whose targets to look for
Returns:
the set of all targets that correspond with the given source
Parameters:
- source: the source whose targets to look for
Returns:
the set of all targets that correspond with the given source

References opennwa::details::TransitionInfo::fromTrans(), getTarget(), and T_info.

void opennwa::details::TransitionStorage::dupTransOutgoing ( State  orig,
State  dup 
)

creates transitions for 'dup' mirroring 'orig' outgoing transitions

This method creates a transition using 'dup' in the place of 'orig' for each outgoing transition involving 'orig'. Do not duplicate selfloops.

Parameters:
- orig: the state that is being duplicated
- dup: the state that is duplicating 'orig'
- orig: the state that is being duplicated
- dup: the state that is duplicating 'orig'

References addCall(), addInternal(), addReturn(), opennwa::details::TransitionInfo::callTrans(), opennwa::details::TransitionInfo::exitTrans(), opennwa::details::TransitionInfo::fromTrans(), getCallSite(), getCallSym(), getEntry(), getExit(), getInternalSym(), getReturnSite(), getReturnSym(), getTarget(), opennwa::details::TransitionInfo::predTrans(), and T_info.

Referenced by opennwa::Nwa::duplicateStateOutgoing().

void opennwa::details::TransitionStorage::dupTrans ( State  orig,
State  dup 
)

creates transitions for 'dup' mirroring 'orig' transitions

This method creates a transition using 'dup' in the place of 'orig' for each transition involving 'orig'. In addition, for any transition involving a self-loop on 'orig', two(three in the case of a return transition with exit, pred, and ret all 'orig') transitions are added (using 'dup' for 'orig' in each position while retaining 'orig' in all other positions).

Parameters:
- orig: the state that is being duplicated
- dup: the state that is duplicating 'orig'
- orig: the state that is being duplicated
- dup: the state that is duplicating 'orig'

References addCall(), addInternal(), addReturn(), opennwa::details::TransitionInfo::callTrans(), opennwa::details::TransitionInfo::entryTrans(), opennwa::details::TransitionInfo::exitTrans(), opennwa::details::TransitionInfo::fromTrans(), getCallSite(), getCallSym(), getEntry(), getExit(), getInternalSym(), getReturnSite(), getReturnSym(), getSource(), getTarget(), opennwa::details::TransitionInfo::predTrans(), opennwa::details::TransitionInfo::retTrans(), T_info, and opennwa::details::TransitionInfo::toTrans().

Referenced by opennwa::Nwa::duplicateState().

void opennwa::details::TransitionStorage::clear (  ) 

removes all transitions from this collection of transitions

This method removes all transitions from this collection of transitions.

References callTrans, opennwa::details::TransitionInfo::clearMaps(), internalTrans, returnTrans, and T_info.

Referenced by opennwa::Nwa::clearTrans(), and operator=().

const TransitionStorage::Calls & opennwa::details::TransitionStorage::getCalls (  )  const

get all call transitions in this collection of transitions

This method provides access to all call transitions in this collection of transitions.

Returns:
all call transitions in this collection of transitions
all call transitions in this collection of transitions

References callTrans.

Referenced by opennwa::Nwa::_private_determinize_(), and opennwa::Nwa::isMemberNondet().

const TransitionStorage::Internals & opennwa::details::TransitionStorage::getInternals (  )  const

get all internal transitions in this collection of transitions

This method provides access to all internal transitions in this collection of transitions.

Returns:
all internal transitions in the collection of transitions
all internal transitions in the collection of transitions

References internalTrans.

Referenced by opennwa::Nwa::_private_determinize_(), opennwa::Nwa::epsilonClosure(), and opennwa::Nwa::isMemberNondet().

const TransitionStorage::Returns & opennwa::details::TransitionStorage::getReturns (  )  const

get all return transitions in the collection of transitions

This method provides access to all return transitions in the collection of transitions associated with the NWA.

Returns:
all return transitions in the collection of transitions
all return transitions in the collection of transitions

References returnTrans.

Referenced by opennwa::Nwa::_private_determinize_(), opennwa::Nwa::isMemberNondet(), opennwa::Nwa::pruneUnreachableBackward(), and opennwa::Nwa::pruneUnreachableForward().

bool opennwa::details::TransitionStorage::addCall ( State  from,
Symbol  sym,
State  to 
)

add a call transition to the NWA

This method creates a call transition with the given edge and label information and adds it to the transition set for the NWA. If the call transition already exists in the NWA, false is returned. Otherwise, true is returned.

Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the call transition already exists in the NWA
Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the call transition already exists in the NWA

Referenced by addAllTrans(), opennwa::Nwa::addCallTrans(), dupTrans(), and dupTransOutgoing().

bool opennwa::details::TransitionStorage::addCall ( const Call addTrans  ) 

add the given call transition to the collection of transitions

This method adds the given call transition to this collection of transitions. If this exact call transition already exists, false is returned. Otherwise, true is returned.

Parameters:
- addTrans: the call transition to add to the collection of transitions
Returns:
false if the call transition already exists in the collection
Parameters:
- addTrans: the call transition to add to the collection of transitions
Returns:
false if the call transition already exists in the collection

References opennwa::details::TransitionInfo::addCall(), callTrans, and T_info.

bool opennwa::details::TransitionStorage::addInternal ( State  from,
Symbol  sym,
State  to 
)

add an internal transition to the NWA

This method creates an internal transition with the given edge and label information and adds it to the transition set for the NWA. If the internal transition already exists in the NWA, false is returned. Otherwise, true is returned.

Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the internal transition already exists in the NWA
Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the internal transition already exists in the NWA

Referenced by addAllTrans(), opennwa::Nwa::addInternalTrans(), dupTrans(), and dupTransOutgoing().

bool opennwa::details::TransitionStorage::addInternal ( const Internal addTrans  ) 

add the given internal transition to the collection of transitions

This method adds the given internal transition to the collection of transitions. If this exact internal transition already exists, false is returned. Otherwise, true is returned.

Parameters:
- addTrans: the internal transition to add to the collection of transitions
Returns:
false if the internal transition already exists in the collection
Parameters:
- addTrans: the internal transition to add to the collection of transitions
Returns:
false if the internal transition already exists in the collection

References opennwa::details::TransitionInfo::addIntra(), internalTrans, and T_info.

bool opennwa::details::TransitionStorage::addReturn ( State  from,
State  pred,
Symbol  sym,
State  to 
)

add a return transition to the NWA

This method creates a return transition with the given edge and label information and adds it to the transition set for the NWA. If the return transition already exists in the NWA, false is returned. Otherwise, true is returned.

Parameters:
- from: the state the edge departs from
- pred: the state from which the call was initiated
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the return transition already exists in the NWA
Parameters:
- from: the state the edge departs from
- pred: the state from which the call was initiated
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the return transition already exists in the NWA

Referenced by addAllTrans(), opennwa::Nwa::addReturnTrans(), dupTrans(), and dupTransOutgoing().

bool opennwa::details::TransitionStorage::addReturn ( const Return addTrans  ) 

add the given return transition to the collection of transitions

This method adds the given return transition to the collection of transitions. If this exact return transition already exists, false is returned. Otherwise, true is returned.

Parameters:
- addTrans: the return transition to add to the collection of transitions
Returns:
false if the return transition already exists in the collection
Parameters:
- addTrans: the return transition to add to the collection of transitions
Returns:
false if the return transition already exists in the collection

References opennwa::details::TransitionInfo::addRet(), returnTrans, and T_info.

void opennwa::details::TransitionStorage::addAllTrans ( TransitionStorage  addTransSet  ) 

add all transitions in the given collection of transitions to this collection of transitions

This method adds all of the transitions in the given collection of transitions to this collection of transitions.

Parameters:
- addTransitionStorage: the collection of transitions to add to this collection of transitions
- addTransitionStorage: the collection of transitions to add to this collection of transitions

References addCall(), addInternal(), addReturn(), beginCall(), beginInternal(), beginReturn(), CallIterator, endCall(), endInternal(), and endReturn().

Referenced by opennwa::Nwa::combineWith().

bool opennwa::details::TransitionStorage::removeCall ( State  from,
Symbol  sym,
State  to 
)

remove a call transition from the NWA

This method checks for the call transition with the given edge and label information in the transition set. If the transition is found, it is removed from the transition set and true is returned. Otherwise, false is returned.

Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the call transition does not exist in the NWA
Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the call transition does not exist in the NWA

Referenced by opennwa::Nwa::removeCallTrans(), removeCallTransSym(), and removeCallTransWith().

bool opennwa::details::TransitionStorage::removeCall ( const Call removeTrans  ) 

remove the given call transition from this collection of transitions

This method removes the given call transition from this collection of transitions. If the given call transition does not exust in this collection of transitions false is returned. Otherwise, true is returned.

Parameters:
- removeTrans: the call transition to remove from the collection
Returns:
false if the given call transition does not exist in the collection, true otherwise.
Parameters:
- removeTrans: the call transition to remove from the collection
Returns:
false if the given call transition does not exist in the collection, true otherwise.

References callTrans, opennwa::details::TransitionInfo::removeCall(), and T_info.

bool opennwa::details::TransitionStorage::removeInternal ( State  from,
Symbol  sym,
State  to 
)

remove an internal transition from the NWA

This method checks for the internal transition with the given edge and label information in the transition set. If the transition is found, it is removed from the transition set and true is returned. Otherwise, false is returned.

Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the internal transition does not exist in the NWA
Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the internal transition does not exist in the NWA

Referenced by opennwa::Nwa::removeInternalTrans(), removeInternalTransSym(), and removeInternalTransWith().

bool opennwa::details::TransitionStorage::removeInternal ( const Internal removeTrans  ) 

remove the given internal transition from the collection of transitions

This method removes the given internal transition from the collection of transitions. If the given internal transition does not exist in this collection of transitions false is returned. Otherwise, true is returned.

Parameters:
- removeTrans: the internal transition to remove from the collection
Returns:
false if the given internal transition does not exist in the collection, true otherwise.
Parameters:
- removeTrans: the internal transition to remove from the collection
Returns:
false if the given internal transition does not exist in the collection, true otherwise.

References internalTrans, opennwa::details::TransitionInfo::removeIntra(), and T_info.

bool opennwa::details::TransitionStorage::removeReturn ( State  from,
State  pred,
Symbol  sym,
State  to 
)

remove a return transition from the NWA

This method checks for the return transition with the given edge and label information in the transition set. If the transition is found, it is removed from the transition set and true is returned. Otherwise, false is returned.

Parameters:
- from: the state the edge departs from
- pred: the state from which the call was initiated
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the return transition does not exist in the NWA
Parameters:
- from: the state the edge departs from
- pred: the state from which the call was initiated
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
false if the return transition does not exist in the NWA

Referenced by opennwa::Nwa::removeReturnTrans(), removeReturnTransSym(), and removeReturnTransWith().

bool opennwa::details::TransitionStorage::removeReturn ( const Return removeTrans  ) 

remove the given return transition from the collection of transitions

This method removes the given return transition from the collection of transitions. If the given return transition does not exist in this collection of transitions false is returned. Otherwise, true is returned.

Parameters:
- removeTrans: the return transition to remove from the collection
Returns:
false if the given return transition does not exist in the collection, true otherwise.
Parameters:
- removeTrans: the return transition to remove from the collection
Returns:
false if the given return transition does not exist in the collection, true otherwise.

References opennwa::details::TransitionInfo::removeRet(), returnTrans, and T_info.

bool opennwa::details::TransitionStorage::isCall ( State  from,
Symbol  sym,
State  to 
) const

test whether the given call transition is in this collection of transitions

This method tests whether the given call transition is in this collection of transitions.

Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
true if the given call transition is in this collection of transitions
Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
true if the given call transition is in this collection of transitions
bool opennwa::details::TransitionStorage::isCall ( const Call trans  )  const

test whether the given call transition is in this collection of transitions

This method tests whether the given call transition is in this collection of transitions.

Parameters:
- trans: the call transition to check
Returns:
true if the given call transition is in this collection of transitions
Parameters:
- trans: the call transition to check
Returns:
true if the given call transition is in this collection of transitions

References opennwa::details::TransitionInfo::callTrans(), wali::Triple< T, U, V >::first, and T_info.

bool opennwa::details::TransitionStorage::isInternal ( State  from,
Symbol  sym,
State  to 
) const

test whether the given internal transition is in this collection of transitions

This method tests whether the given internal transition is in this collection of transitions.

Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
true if the given internal transition is in this collection of transitions associated with the NWA
Parameters:
- from: the state the edge departs from
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
true if the given internal transition is in this collection of transitions associated with the NWA
bool opennwa::details::TransitionStorage::isInternal ( const Internal trans  )  const

test whether the given internal transition is in this collection of transitions

This method tests whether the given internal transition is in this collection of transitions.

Parameters:
- trans: the internal transition to check
Returns:
true if the given internal transition is in this collection of transitions associated with the NWA
Parameters:
- trans: the internal transition to check
Returns:
true if the given internal transition is in this collection of transitions associated with the NWA

References wali::Triple< T, U, V >::first, opennwa::details::TransitionInfo::fromTrans(), and T_info.

bool opennwa::details::TransitionStorage::isReturn ( State  from,
State  pred,
Symbol  sym,
State  to 
) const

test whether the given return transition is in this collection of transitions

This method tests whether the given return transition is in this collection of transitions.

Parameters:
- from: the state the edge departs from
- pred: the state from which the call was initiated
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
true if the given return transition is in this collection of transitions
Parameters:
- from: the state the edge departs from
- pred: the state from which the call was initiated
- sym: the symbol labeling the edge
- to: the state the edge arrives to
Returns:
true if the given return transition is in this collection of transitions
bool opennwa::details::TransitionStorage::isReturn ( const Return trans  )  const

test whether the given return transition is in this collection of transitions

This method tests whether the given return transition is in this collection of transitions.

Parameters:
- trans: the return transition to check
Returns:
true if the given return transition is in this collection of transitions
Parameters:
- trans: the return transition to check
Returns:
true if the given return transition is in this collection of transitions

References opennwa::details::TransitionInfo::exitTrans(), wali::Quad< T, U, V, W >::first, and T_info.

std::ostream & opennwa::details::TransitionStorage::print ( std::ostream &  o  )  const [virtual]

print the collection of transitions

This method prints out the transition set to the output stream provided.

Parameters:
- o: the output stream to print to
Returns:
the output stream that was printed to
Parameters:
- o: the output stream to print to
Returns:
the output stream that was printed to

Implements wali::Printable.

References CallIterator, callTrans, getCallSite(), getCallSym(), getEntry(), getExit(), getInternalSym(), getReturnSite(), getReturnSym(), getSource(), getTarget(), internalTrans, wali::printKey(), and returnTrans.

Referenced by opennwa::Nwa::print().

std::ostream & opennwa::details::TransitionStorage::print_dot ( std::ostream &  o  )  const

References CallIterator, callTrans, and returnTrans.

bool opennwa::details::TransitionStorage::operator== ( const TransitionStorage other  )  const

tests whether this collection of transitions is equivalent to the collection of transitions 'other'

This method tests the equivalence of this set of transitions and the set of transitions 'other'.

Parameters:
- other: the TransitionStorage to compare this TransitionStorage to
Returns:
true if this TransitionStorage is equivalent to the TransitionStorage 'other'
Parameters:
- other: the TransitionStorage to compare this TransitionStorage to
Returns:
true if this TransitionStorage is equivalent to the TransitionStorage 'other'

References callTrans, internalTrans, and returnTrans.

TransitionStorage::CallIterator opennwa::details::TransitionStorage::beginCall (  )  const

provides access to the call transitions in the collection through an iterator

This method provides access to the call transitions in the collection of transitions through an iterator.

Returns:
the starting point of an iterator through the call transitions in the collection of transitions
the starting point of an iterator through the call transitions in the collection of transitions

References callTrans.

Referenced by opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), addAllTrans(), opennwa::Nwa::beginCallTrans(), opennwa::Nwa::marshall(), and opennwa::Nwa::removeImplicitTransitions().

TransitionStorage::InternalIterator opennwa::details::TransitionStorage::beginInternal (  )  const

provides access to the internal transitions in the collection through an iterator

This method provides access to the internal transitions in the collection of transitions through an iterator.

Returns:
the starting point of an iterator through the internal transitions in the collection of transitions
the starting point of an iterator through the internal transitions in the collection of transitions

References internalTrans.

Referenced by opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), addAllTrans(), opennwa::Nwa::beginInternalTrans(), opennwa::Nwa::marshall(), and opennwa::Nwa::removeImplicitTransitions().

TransitionStorage::ReturnIterator opennwa::details::TransitionStorage::beginReturn (  )  const

provides access to the return transitions in the collection through an iterator

This method provides access to the return transitions in the collection of transitions through an iterator.

Returns:
the starting point of an iterator through the return transitions in the collection of transitions
the starting point of an iterator through the return transitions in the collection of transitions

References returnTrans.

Referenced by opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), addAllTrans(), opennwa::Nwa::beginReturnTrans(), opennwa::Nwa::marshall(), and opennwa::Nwa::removeImplicitTransitions().

TransitionStorage::CallIterator opennwa::details::TransitionStorage::endCall (  )  const

provides access to the call transitions in the collection through an iterator

This method provides access to the call transitions in the collection of transitions through an iterator.

Returns:
the exit point of an iterator through the call transitions in the collection of transitions
the exit point of an iterator through the call transitions in the collection of transitions

References callTrans.

Referenced by opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), addAllTrans(), opennwa::Nwa::endCallTrans(), opennwa::Nwa::marshall(), and opennwa::Nwa::removeImplicitTransitions().

TransitionStorage::InternalIterator opennwa::details::TransitionStorage::endInternal (  )  const

provides access to the internal transitions in the collection through an iterator

This method provides access to the internal transitions in the collection of transitions through an iterator.

Returns:
the exit point of an iterator through the internal transitions in the collection of transitions
the exit point of an iterator through the internal transitions in the collection of transitions

References internalTrans.

Referenced by opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), addAllTrans(), opennwa::Nwa::endInternalTrans(), opennwa::Nwa::marshall(), and opennwa::Nwa::removeImplicitTransitions().

TransitionStorage::ReturnIterator opennwa::details::TransitionStorage::endReturn (  )  const

provides access to the return transitions in the collection through an iterator

This method provides access to the return transitions in the collection of transitions through an iterator.

Returns:
the exit point of an iterator through the return transitions in the collection of transitions
the exit point of an iterator through the return transitions in the collection of transitions

References returnTrans.

Referenced by opennwa::Nwa::_private_isDeterministic_(), opennwa::Nwa::_private_NwaToBackwardsPdsCalls_(), opennwa::Nwa::_private_NwaToBackwardsPdsReturns_(), opennwa::Nwa::_private_NwaToPdsCalls_(), opennwa::Nwa::_private_NwaToPdsReturns_(), addAllTrans(), opennwa::Nwa::endReturnTrans(), opennwa::Nwa::marshall(), and opennwa::Nwa::removeImplicitTransitions().

size_t opennwa::details::TransitionStorage::sizeCall (  )  const

returns the number of call transitions in this collection of transitions

This method returns the number of call transitions in the collection of transitions associated with the NWA.

Returns:
the number of call transitions in this collection of transitions
the number of call transitions in this collection of transitions

References callTrans.

Referenced by size(), and opennwa::Nwa::sizeCallTrans().

size_t opennwa::details::TransitionStorage::sizeInternal (  )  const

returns the number of internal transitions in this collection of transitions

This method returns the number of internal transitions in this collection of transitions.

Returns:
the number of internal transitions in this collection of transitions
the number of internal transitions in this collection of transitions

References internalTrans.

Referenced by size(), and opennwa::Nwa::sizeInternalTrans().

size_t opennwa::details::TransitionStorage::sizeReturn (  )  const

returns the number of return transitions in this collection of transitions

This method returns the number of return transitions in this collection of transitions associated with the NWA.

Returns:
the number of return transitions in this collection of transitions
the number of return transitions in this collection of transitions

References returnTrans.

Referenced by size(), and opennwa::Nwa::sizeReturnTrans().

size_t opennwa::details::TransitionStorage::size (  )  const

returns the total number of transitions (call, internal, and return) in this collection of transitions

This method returns the total number of transitions (call, internal, and return) in this collection of transitions.

Returns:
the total number of transitions in this collection of transitions
the total number of transitions in this collection of transitions

References sizeCall(), sizeInternal(), and sizeReturn().

Referenced by opennwa::Nwa::sizeTrans().

const TransitionStorage::Internals & opennwa::details::TransitionStorage::getTransFrom ( State  state  )  const

returns all outgoing internal transitions for the given state

This method returns all internal transitions with the given state as the source.

Parameters:
- state: the source state
Returns:
the set of all outgoing internal transitions for the given state
Parameters:
- state: the source state
Returns:
the set of all outgoing internal transitions for the given state

References opennwa::details::TransitionInfo::fromTrans(), and T_info.

Referenced by opennwa::Nwa::_private_intersect_().

const TransitionStorage::Internals & opennwa::details::TransitionStorage::getTransTo ( State  state  )  const

retuans all incoming internal transitions for the given state

This method returns all internal transitions with the given state as the target.

Parameters:
- state: the target state
Returns:
the set of all incoming internal transitions for the given state
Parameters:
- state: the target state
Returns:
the set of all incoming internal transitions for the given state

References T_info, and opennwa::details::TransitionInfo::toTrans().

const TransitionStorage::Calls & opennwa::details::TransitionStorage::getTransCall ( State  state  )  const

returns all call transitions for the given call site

This method returns all call transitions with the given state as the call site.

Parameters:
- state: the call site
Returns:
the set of all call transitions for the given call site
Parameters:
- state: the call site
Returns:
the set of all call transitions for the given call site

References opennwa::details::TransitionInfo::callTrans(), and T_info.

Referenced by opennwa::Nwa::_private_intersect_().

const TransitionStorage::Calls & opennwa::details::TransitionStorage::getTransEntry ( State  state  )  const

returns all call transitions for the given entry point

This method returns all call transitions with the given state as the entry point.

Parameters:
- state: the entry point
Returns:
the set of all call transitions for the given entry point
Parameters:
- state: the entry point
Returns:
the set of all call transitions for the given entry point

References opennwa::details::TransitionInfo::entryTrans(), and T_info.

const TransitionStorage::Returns & opennwa::details::TransitionStorage::getTransExit ( State  state  )  const

returns all return transitions for the given exit point

This method returns all return transitions with the given state as the exit point.

Parameters:
- state: the exit point
Returns:
the set of all return transitions for the given exit point
Parameters:
- state: the exit point
Returns:
the set of all return transitions for the given exit point

References opennwa::details::TransitionInfo::exitTrans(), and T_info.

Referenced by opennwa::Nwa::_private_intersect_().

const TransitionStorage::Returns & opennwa::details::TransitionStorage::getTransPred ( State  state  )  const

returns all return transitions for the given call predecessor

This method returns all return transitions with the given state as the call predecessor.

Parameters:
- state: the call predecessor
Returns:
the set of all return transitions for the given call predecessor
Parameters:
- state: the call predecessor
Returns:
the set of all return transitions for the given call predecessor

References opennwa::details::TransitionInfo::predTrans(), and T_info.

Referenced by opennwa::Nwa::_private_intersect_().

const TransitionStorage::Returns & opennwa::details::TransitionStorage::getTransRet ( State  state  )  const

returns all return transitions for the given return site

This method returns all return transitions with the given state as the return site.

Parameters:
- state: the return site
Returns:
the set of all return transitions for the given return site
Parameters:
- state: the return site
Returns:
the set of all return transitions for the given return site

References opennwa::details::TransitionInfo::retTrans(), and T_info.

bool opennwa::details::TransitionStorage::isFrom ( State  state  )  const

tests whether the given state is the source of any internal transition

This method determines whether the given state is the source of any internal transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the source of some internal transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the source of some internal transition, false otherwise

References opennwa::details::TransitionInfo::isFrom(), and T_info.

bool opennwa::details::TransitionStorage::isTo ( State  state  )  const

tests whether the given state is the target of any internal transition

This method determines whether the given state is the target of any internal transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the target of some internal transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the target of some internal transition, false otherwise

References opennwa::details::TransitionInfo::isTo(), and T_info.

bool opennwa::details::TransitionStorage::isCall ( State  state  )  const

tests whether the given state is the call site of any call transition

This method determines whether the given state is the call site of any call transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the call site of some call transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the call site of some call transition, false otherwise

References opennwa::details::TransitionInfo::isCall(), and T_info.

bool opennwa::details::TransitionStorage::isEntry ( State  state  )  const

tests whether the given state is the entry point of any call transition

This method determines whether the given state is the entry point of any call transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the entry point of some call transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the entry point of some call transition, false otherwise

References opennwa::details::TransitionInfo::isEntry(), and T_info.

bool opennwa::details::TransitionStorage::isExit ( State  state  )  const

tests whether the given state is the exit point of any return transition

This method determines whether the given state is the exit point of any return transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the exit point of some return transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the exit point of some return transition, false otherwise

References opennwa::details::TransitionInfo::isExit(), and T_info.

bool opennwa::details::TransitionStorage::isPred ( State  state  )  const

tests whether the given state is the call predecessor for any return transition

This methos determines whether the given state is the call predecessor for any return transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the call predecessor of some return transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the call predecessor of some return transition, false otherwise

References opennwa::details::TransitionInfo::isPred(), and T_info.

bool opennwa::details::TransitionStorage::isRet ( State  state  )  const

tests whether the given state is the return site of any return transition

This method determines whether the given state is the return site of any return transition.

Parameters:
- state: the state to test
Returns:
true if the given state is the return site of some return transition, false otherwise
Parameters:
- state: the state to test
Returns:
true if the given state is the return site of some return transition, false otherwise

References opennwa::details::TransitionInfo::isRet(), and T_info.

bool opennwa::details::TransitionStorage::removeTransWith ( State  state  ) 

removes all transitions involving the given state

This method removes all transitions involving the given state If no transitions exist involving this state false is returned. Otherwise, true is returned.

Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References removeCallTransWith(), removeInternalTransWith(), and removeReturnTransWith().

Referenced by opennwa::Nwa::removeState().

bool opennwa::details::TransitionStorage::removeTransSym ( Symbol  sym  ) 

removes all transitions with the given symbol

This method removes all transitions with the given symbol. If no transitions exist with the given symbol false is returned. Otherwise, true is returned.

Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References removeCallTransSym(), removeInternalTransSym(), and removeReturnTransSym().

Referenced by opennwa::Nwa::removeSymbol().

bool opennwa::details::TransitionStorage::callExists ( State  from,
Symbol  sym 
) const

test if there exists a call transition with the given from state and symbol in this collection of transitions

This method tests whether there exists a call transition with the given from state and symbol in this collection of transitions.

Parameters:
- from: the desired from state for the call transition
- sym: the desired symbol for the call transition
Returns:
true if there exists a call transition with the given from state and symbol in this collection of transitions
Parameters:
- from: the desired from state for the call transition
- sym: the desired symbol for the call transition
Returns:
true if there exists a call transition with the given from state and symbol in this collection of transitions

References CallIterator, opennwa::details::TransitionInfo::callTrans(), getCallSym(), and T_info.

Referenced by opennwa::Nwa::realizeImplicitTrans().

const TransitionStorage::Calls opennwa::details::TransitionStorage::getCalls ( State  from,
Symbol  sym 
) const

provides access to all call transitions with the given from state and symbol in this collection of transitions

Q: how can this be optimized?

This method provides access to all call transitions with the given from state and symbol in this collection of transitions.

Parameters:
- from: the desired from state for the call transitions
- sym: the desired symbol for the call transitions
Returns:
the set of call transitions with the given from state and symbol

provides access to all call transitions with the given from state and symbol in this collection of transitions

Parameters:
- from: the desired from state for the call transitions
- sym: the desired symbol for the call transitions
Returns:
the set of call transitions with the given from state and symbol

References CallIterator, opennwa::details::TransitionInfo::callTrans(), getCallSym(), and T_info.

bool opennwa::details::TransitionStorage::internalExists ( State  from,
Symbol  sym 
) const

test if there exists an internal transition with the given from state and symbol in this collection of transitions

Q: how can this be optimized?

This method tests whether there exists an internal transition with the given from state and symbol in this collection of transitions.

Parameters:
- from: the desired from state for the internal transition
- sym: the desired symbol for the internal transition
Returns:
true if there exists an internal transition with the given from state and symbol in this collection of transitions

test if there exists an internal transition with the given from state and symbol in this collection of transitions

Parameters:
- from: the desired from state for the internal transition
- sym: the desired symbol for the internal transition
Returns:
true if there exists an internal transition with the given from state and symbol in this collection of transitions

References opennwa::details::TransitionInfo::fromTrans(), getInternalSym(), and T_info.

Referenced by opennwa::Nwa::realizeImplicitTrans().

const TransitionStorage::Internals opennwa::details::TransitionStorage::getInternals ( State  from,
Symbol  sym 
) const

provides access to all internal transitions with the given from state and symbol in this collection of transitions

Q: how can this be optimized?

This method provides access to all internal transitions with the given from state and symbol in this collection of transitions.

Parameters:
- from: the desired from state for the internal transitions
- sym: the desired symbol for the internal transitions
Returns:
the set of internal transitions with the given from state and symbol

provides access to all internal transitions with the given from state and symbol in this collection of transitions

Parameters:
- from: the desired from state for the internal transitions
- sym: the desired symbol for the internal transitions
Returns:
the set of internal transitions with the given from state and symbol

References opennwa::details::TransitionInfo::fromTrans(), getInternalSym(), and T_info.

const TransitionStorage::Internals opennwa::details::TransitionStorage::getInternalsFrom ( State  from  )  const

TODO this is redundant.

provides access to all internal transitions with the given from state in this collection of transitions This method provides access to all internal transitions with the given from state in this collection of transitions.

Parameters:
- from: the desired from state for the internal transitions
Returns:
the set of internal transitions with the given from state

provides access to all internal transitions with the given from state in this collection of transitions

Parameters:
- from: the desired from state for the internal transitions
Returns:
the set of internal transitions with the given from state

References opennwa::details::TransitionInfo::fromTrans(), and T_info.

bool opennwa::details::TransitionStorage::returnExists ( State  from,
State  pred,
Symbol  sym 
) const

test if there exists a return transition with the given from state, predecessor state, and symbol in this collection of transitions

Q: how can this be optimized?

This method tests whether there exists a return transition with the given from state, predecessor state, and symbol in this collection of transitions.

Parameters:
- from: the desired from state for the return transition
- pred: the desired predecessor state for the return transition
- sym: the desired symbol for the return transition
Returns:
true if there exists a return transition with the given from state and symbol in this collection of transitions

test if there exists a return transition with the given from state, predecessor state, and symbol in this collection of transitions

Parameters:
- from: the desired from state for the return transition
- pred: the desired predecessor state for the return transition
- sym: the desired symbol for the return transition
Returns:
true if there exists a return transition with the given from state and symbol in this collection of transitions

References opennwa::details::TransitionInfo::exitTrans(), getCallSite(), getReturnSym(), and T_info.

const TransitionStorage::Returns opennwa::details::TransitionStorage::getReturns ( State  from,
Symbol  sym 
) const

provides access to all return transitions with the given from state and symbol in this collection of transitions

Q: how can this be optimized?

This method provides access to all return transitions with the given from state and symbol in this collection of transitions.

Parameters:
- from: the desired from state for the return transitions
- sym: the desired symbol for the return transitions
Returns:
the set of return transitions with the given from state and symbol

provides access to all return transitions with the given from state and symbol in this collection of transitions

Parameters:
- from: the desired from state for the return transitions
- sym: the desired symbol for the return transitions
Returns:
the set of return transitions with the given from state and symbol

References opennwa::details::TransitionInfo::exitTrans(), getExit(), getReturnSym(), and T_info.

bool opennwa::details::TransitionStorage::removeCallTransWith ( State  state  )  [protected]

removes all call transitions to or from the given state

This method removes all call transitions to or from the given state If no call transitions exist to or from this state false is returned. Otherwise, true is returned.

Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References CallIterator, opennwa::details::TransitionInfo::callTrans(), opennwa::details::TransitionInfo::entryTrans(), removeCall(), and T_info.

Referenced by removeTransWith().

bool opennwa::details::TransitionStorage::removeInternalTransWith ( State  state  )  [protected]

removes all internal transitions to or from the given state

This method removes all internal transitions to or from the given state. If no internal transitions exist to or from this state, false is returned. Otherwise, true is returned.

Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References opennwa::details::TransitionInfo::fromTrans(), removeInternal(), T_info, and opennwa::details::TransitionInfo::toTrans().

Referenced by removeTransWith().

bool opennwa::details::TransitionStorage::removeReturnTransWith ( State  state  )  [protected]

removes all return transitions to or from the given state as well as return transitions corresponding to calls from that state

This method removes all return transitions to or from the given state as well as return transitions corresponding to calls from that state. If no return transitions exist to or from this state, or having this state as a call predecessor, false is returned. Otherwise, true is returned.

Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- state: the state whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References opennwa::details::TransitionInfo::exitTrans(), opennwa::details::TransitionInfo::predTrans(), removeReturn(), opennwa::details::TransitionInfo::retTrans(), and T_info.

Referenced by removeTransWith().

bool opennwa::details::TransitionStorage::removeCallTransSym ( Symbol  sym  )  [protected]

removes all call transitions with the given symbol

This method removes all call transitions with the given symbol. If no call transitions exist with the given symbol false is returned. Otherwise, true is returned.

Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References CallIterator, callTrans, getCallSym(), and removeCall().

Referenced by removeTransSym().

bool opennwa::details::TransitionStorage::removeInternalTransSym ( Symbol  sym  )  [protected]

removes all internal transitions with the given symbol

This method removes all internal transitions with the given symbol. If no internal transitions exist with the given symbol false is returned. Otherwise, true is returned.

Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References getInternalSym(), internalTrans, and removeInternal().

Referenced by removeTransSym().

bool opennwa::details::TransitionStorage::removeReturnTransSym ( Symbol  sym  )  [protected]

removes all return transitions with the given symbol

This method removes all return transitions with the given symbol. If no return transitions exist with the given symbol false is returned. Otherwise, true is returned.

Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise
Parameters:
- sym: the symbol whose transitions to remove
Returns:
false if no transitions were removed, true otherwise

References getReturnSym(), removeReturn(), and returnTrans.

Referenced by removeTransSym().


Member Data Documentation

DEPRECATE ("Use capitalized version (CallIterator) instead. (Not that you should be using it from TransitionStorage in the first place.)") typedef Calls DEPRECATE ("Use capitalized version (InternalIterator) instead. (Not that you should be using it from TransitionStorage in the first place.)") typedef Internals DEPRECATE ("Use capitalized version (ReturnIterator) instead. (Not that you should be using it from TransitionStorage in the first place.)") typedef Returns typedef Calls::const_iterator opennwa::details::TransitionStorage::CallIterator

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