#include <projectiondfa.h>
Public Member Functions | |
ProjectionDFA (ProjectionTree *_pt, PassiveProjectionTree *_ppt) | |
Constructor. | |
virtual | ~ProjectionDFA () |
void | print (OutputStream &dos) |
Debug prints the projection DFA to. | |
ProjectionDFAState * | getInitialState () |
Returns the initial (starting) state of the projection DFA. | |
Private Attributes | |
ProjectionDFAState * | initial |
The initial (starting) state of the projection DFA. |
The information from the statical analysis phase are compiled into this (lazily constructed) DFA. The DFA then can be used to determine whether tokens must be loaded into the buffer or can be projected away when successively processing the input stream/file.
Definition at line 53 of file projectiondfa.h.
ProjectionDFA::ProjectionDFA | ( | ProjectionTree * | _pt, | |
PassiveProjectionTree * | _ppt | |||
) |
Constructor.
Constructor - creating object using the ProjectionTree object that has been computed in the statical analysis phase. Note that the ProjectionDFA is computed lazily while projecting the input stream, in order to avoid unnecessary computations (the projection DFA may be unlimited in size and therefore cannot even be computed in advance)
[in] | _pt | The ProjectionTree object that contains information on required paths as well as role information. |
[in] | _ppt | The PassiveProjectionTree object that contains required paths. |
Definition at line 37 of file projectiondfa.cpp.
ProjectionDFA::~ProjectionDFA | ( | ) | [virtual] |
ProjectionDFAState * ProjectionDFA::getInitialState | ( | ) | [inline] |
Returns the initial (starting) state of the projection DFA.
Returns the initial (starting) state of the projection DFA, i.e. the state corresponfing to thevirtual XML document root.
ProjectioDFAState* | The starting state of the projection DFA. |
Definition at line 92 of file projectiondfa.h.
References initial.
Referenced by Buffer::Buffer().
void ProjectionDFA::print | ( | OutputStream & | dos | ) |
Debug prints the projection DFA to.
Note that only those parts of the projection DFA will be output that have been computed so far. This means that the shape of the ProjectionDFA does not only depend on the input query, but also on the current state in reading the input document and the input document itself.
[in] | dos | Reference to the (debug) OutputStream. |
void |
Definition at line 45 of file projectiondfa.cpp.
References initial, and ProjectionDFAState::print().
Referenced by Executor::finalDebugPrint(), and Executor::initProjectionDFA().
ProjectionDFAState * ProjectionDFA::initial [private] |
The initial (starting) state of the projection DFA.
This state corresponds to the (virtual) document root of the XML document.
Definition at line 100 of file projectiondfa.h.
Referenced by getInitialState(), print(), and ~ProjectionDFA().