Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

xtl_opunarstar Class Template Reference

#include <xtl_op_impl.h>

Inheritance diagram for xtl_opunarstar:

Inheritance graph
[legend]
Collaboration diagram for xtl_opunarstar:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<typename ExprT>
class cttl_impl::xtl_opunarstar< ExprT >

Implements behavior of unary Kleene star operator.

ExprT
Template parameter specifying type of grammar expression object, determined by the C++ compiler at compile time.

Definition at line 340 of file xtl_op_impl.h.

Public Member Functions

 xtl_opunarstar (ExprT const &expr_, size_t upper_limit_=0)
 Constructs and initializes the object.
template<typename UniverseT>
size_t match (UniverseT &edge_)
 Implements grammar evaluation method for Kleene star match algorithm, starting at the upper boundary of the parseable universe.
template<typename UniverseT>
size_t find (UniverseT &edge_)
 Implements grammar evaluation method for Kleene star search algorithm, starting at the upper boundary of the parseable universe.
template<typename UniverseT>
size_t bang_find (UniverseT &edge_)
 Implements grammar evaluation method for Kleene star repeatable search algorithm, starting at the upper boundary of the parseable universe.

Protected Attributes

size_t m_upper_limit
 Stores upper limit for the number of matches.


Constructor & Destructor Documentation

xtl_opunarstar ExprT const &  expr_,
size_t  upper_limit_ = 0
[inline]
 

Constructs and initializes the object.

Parameters:
expr_ immutable reference to CTTL grammar expression of the operand.
upper_limit_ If not zero, suggests the upper limit for a number of matches.

Definition at line 359 of file xtl_op_impl.h.


Member Function Documentation

size_t bang_find UniverseT &  edge_  )  [inline]
 

Implements grammar evaluation method for Kleene star repeatable search algorithm, starting at the upper boundary of the parseable universe.

UniverseT
Template parameter specifying type of the parseable universe. Can be either cttl::const_edge or cttl::edge.
Parameters:
edge_ reference to the parseable universe.
Postcondition:
If method succeeds, the universe, specified by the edge_ parameter, gets consumed accordingly to the size of the matched symbols.
Returns:
evaluation result: if method succeeds, it returns absolute offset corresponding to the upper boundary of the matched symbols. Otherwise, it returns UniverseT::string_T::npos, indicating that the evaluation method has failed.

Definition at line 548 of file xtl_op_impl.h.

size_t find UniverseT &  edge_  )  [inline]
 

Implements grammar evaluation method for Kleene star search algorithm, starting at the upper boundary of the parseable universe.

UniverseT
Template parameter specifying type of the parseable universe. Can be either cttl::const_edge or cttl::edge.
Parameters:
edge_ reference to the parseable universe.
Postcondition:
If method succeeds, the universe, specified by the edge_ parameter, gets consumed accordingly to the size of the matched symbols.
Returns:
evaluation result: if method succeeds, it returns absolute offset corresponding to the upper boundary of the matched symbols. Otherwise, it returns UniverseT::string_T::npos, indicating that the evaluation method has failed.

Definition at line 469 of file xtl_op_impl.h.

size_t match UniverseT &  edge_  )  [inline]
 

Implements grammar evaluation method for Kleene star match algorithm, starting at the upper boundary of the parseable universe.

UniverseT
Template parameter specifying type of the parseable universe. Can be either cttl::const_edge or cttl::edge.
Parameters:
edge_ reference to the parseable universe.
Postcondition:
If method succeeds, the universe, specified by the edge_ parameter, gets consumed accordingly to the size of the matched symbols.
Returns:
evaluation result: if method succeeds, it returns absolute offset corresponding to the upper boundary of the matched symbols. Otherwise, it returns UniverseT::string_T::npos, indicating that the evaluation method has failed.

Definition at line 391 of file xtl_op_impl.h.


The documentation for this class was generated from the following file:
Generated on Thu Nov 2 17:45:35 2006 for Common Text Transformation Library by  doxygen 1.3.9.1