Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members

s11n::io::tree_builder_lexer< NodeType, LexerSharingContext > Class Template Reference

tree_builder_lexer is a type intended to ease the implementation of lex-based node tree parsers. More...

#include <data_node_format.h>

Inheritance diagram for s11n::io::tree_builder_lexer< NodeType, LexerSharingContext >:

s11n::io::data_node_serializer< NodeType > List of all members.

Public Types

typedef NodeType node_type
typedef LexerSharingContext sharing_context

Public Member Functions

 tree_builder_lexer (const std::string &lexerClassName)
 lexerClassName = the class name of the FlexLexer subtype associated with this serializer.
virtual ~tree_builder_lexer ()
virtual node_typedeserialize (std::istream &src)
 Overridden to parse src using this object's lexer.
std::string lexer_class () const
 Returns this object's lexer class name.

Protected Member Functions

void lexer_class (const std::string &classname)
 Sets this object's lexer class name.

Detailed Description

template<typename NodeType, typename LexerSharingContext>
class s11n::io::tree_builder_lexer< NodeType, LexerSharingContext >

tree_builder_lexer is a type intended to ease the implementation of lex-based node tree parsers.

It is useless standalone: it must be subclassed.

It holds the class name of a FlexLexer type so it can be dynamically loaded as needed. Also, for subclasses it takes the responsibility of instantiating this type and passing off input to it.

Definition at line 630 of file data_node_format.h.


Member Function Documentation

template<typename NodeType, typename LexerSharingContext>
virtual node_type* s11n::io::tree_builder_lexer< NodeType, LexerSharingContext >::deserialize std::istream &  src  )  [inline, virtual]
 

Overridden to parse src using this object's lexer.

It uses deserialize_lex_forwarder<sharing_context>(), passing it this object's lexer_class().

Reimplemented from s11n::io::data_node_serializer< NodeType >.

Reimplemented in s11n::io::funxml_serializer< NodeType >.

Definition at line 652 of file data_node_format.h.


The documentation for this class was generated from the following file:
Generated on Thu Jun 16 16:18:13 2005 for s11n by  doxygen 1.4.3-20050530