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

xtl_opbinand Struct Template Reference

#include <xtl_op_impl.h>

Inheritance diagram for xtl_opbinand:

Inheritance graph
[legend]
Collaboration diagram for xtl_opbinand:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<typename Left_exprT, typename Right_exprT>
struct cttl_impl::xtl_opbinand< Left_exprT, Right_exprT >

Implements behavior of binary set intersection operator.

Left_exprT
Template parameter specifying type of left-hand-side grammar expression object, determined by the C++ compiler at compile time.
Right_exprT
Template parameter specifying type of right-hand-side grammar expression object, determined by the C++ compiler at compile time.

Definition at line 2249 of file xtl_op_impl.h.

Public Member Functions

 xtl_opbinand (Left_exprT const &lhs_expr_, Right_exprT const &rhs_expr_)
 Constructs and initializes the object.
template<typename UniverseT>
size_t match (UniverseT &edge_)
 Implements grammar evaluation method for set intersection match algorithm, starting at the upper boundary of the parseable universe.
template<typename UniverseT>
size_t find (UniverseT &edge_)
 Implements grammar evaluation method for set intersection 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 repeatable search algorithm, starting at the upper boundary of the parseable universe.


Constructor & Destructor Documentation

xtl_opbinand Left_exprT const &  lhs_expr_,
Right_exprT const &  rhs_expr_
[inline]
 

Constructs and initializes the object.

Left_exprT
Template parameter specifying type of left-hand-side grammar expression object, determined by the C++ compiler at compile time.
Right_exprT
Template parameter specifying type of right-hand-side grammar expression object, determined by the C++ compiler at compile time.
Parameters:
lhs_expr_ immutable reference to left-hand-side grammar expression object.
rhs_expr_ immutable reference to right-hand-side grammar expression object.

Definition at line 2272 of file xtl_op_impl.h.


Member Function Documentation

size_t bang_find UniverseT &  edge_  )  [inline]
 

Implements grammar evaluation method for 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 fragment.
Returns:
evaluation result: if method succeeds, it returns absolute offset corresponding to the upper boundary of the matched fragment. Otherwise, it returns UniverseT::string_T::npos, indicating that the evaluation method has failed.

Definition at line 2412 of file xtl_op_impl.h.

References xtl_edge_offset_manager::first, xtl_edge_offset_manager::restore(), xtl_edge_offset_manager::save(), and xtl_edge_offset_manager::second.

size_t find UniverseT &  edge_  )  [inline]
 

Implements grammar evaluation method for set intersection 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 fragment.
Returns:
evaluation result: if method succeeds, it returns absolute offset corresponding to the upper boundary of the matched fragment. Otherwise, it returns UniverseT::string_T::npos, indicating that the evaluation method has failed.

Definition at line 2359 of file xtl_op_impl.h.

References xtl_edge_offset_manager::first, xtl_edge_offset_manager::restore(), xtl_edge_offset_manager::save(), and xtl_edge_offset_manager::second.

size_t match UniverseT &  edge_  )  [inline]
 

Implements grammar evaluation method for set intersection 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 fragment.
Returns:
evaluation result: if method succeeds, it returns absolute offset corresponding to the upper boundary of the matched fragment. Otherwise, it returns UniverseT::string_T::npos, indicating that the evaluation method has failed.

Definition at line 2305 of file xtl_op_impl.h.

References xtl_edge_offset_manager::first, xtl_edge_offset_manager::restore(), xtl_edge_offset_manager::save(), and xtl_edge_offset_manager::second.


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