preprocessor_data Class Reference

Inheritance diagram for preprocessor_data:

Inheritance graph
[legend]
Collaboration diagram for preprocessor_data:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 preprocessor_data (preprocessor_streambuf &, std::vector< std::string > *, std::istream *, std::string const &history, std::string const &name, int line, std::string const &dir, std::string const &domain, std::string *=NULL)
 ~preprocessor_data ()
virtual bool get_chunk ()

Private Member Functions

std::string read_word ()
std::string read_line ()
void skip_spaces ()
void skip_eol ()
void push_token (char)
void pop_token ()
void put (char)
void put (std::string const &)

Private Attributes

scoped_istream in_
std::string directory_
std::vector< std::string > strings_
std::vector< token_desctokens_
bool is_macro
int slowpath_
int skipping_
int linenum_

Classes

struct  token_desc


Detailed Description

Definition at line 266 of file preprocessor.cpp.


Constructor & Destructor Documentation

preprocessor_data::preprocessor_data ( preprocessor_streambuf t,
std::vector< std::string > *  callstack,
std::istream *  i,
std::string const &  history,
std::string const &  name,
int  line,
std::string const &  dir,
std::string const &  domain,
std::string *  symbol = NULL 
)

preprocessor_data::~preprocessor_data (  ) 

Definition at line 393 of file preprocessor.cpp.

References preprocessor::called_macros_, and is_macro.


Member Function Documentation

std::string preprocessor_data::read_word (  )  [private]

Definition at line 442 of file preprocessor.cpp.

References in_, and utils::portable_isspace().

Referenced by get_chunk().

std::string preprocessor_data::read_line (  )  [private]

Definition at line 456 of file preprocessor.cpp.

References in_, and linenum_.

Referenced by get_chunk().

void preprocessor_data::skip_spaces (  )  [private]

Definition at line 419 of file preprocessor.cpp.

References in_.

Referenced by get_chunk().

void preprocessor_data::skip_eol (  )  [private]

Definition at line 429 of file preprocessor.cpp.

References in_, and linenum_.

Referenced by get_chunk().

void preprocessor_data::push_token ( char  t  )  [private]

void preprocessor_data::pop_token (  )  [private]

Definition at line 413 of file preprocessor.cpp.

References strings_, and tokens_.

Referenced by get_chunk().

void preprocessor_data::put ( char  c  )  [private]

void preprocessor_data::put ( std::string const &  s  )  [private]

bool preprocessor_data::get_chunk (  )  [virtual]


Member Data Documentation

Definition at line 275 of file preprocessor.cpp.

Referenced by get_chunk(), read_line(), read_word(), skip_eol(), and skip_spaces().

std::string preprocessor_data::directory_ [private]

Definition at line 276 of file preprocessor.cpp.

Referenced by get_chunk().

std::vector< std::string > preprocessor_data::strings_ [private]

Definition at line 277 of file preprocessor.cpp.

Referenced by get_chunk(), pop_token(), push_token(), and put().

std::vector< token_desc > preprocessor_data::tokens_ [private]

Definition at line 278 of file preprocessor.cpp.

Referenced by get_chunk(), pop_token(), and push_token().

Definition at line 279 of file preprocessor.cpp.

Referenced by preprocessor_data(), and ~preprocessor_data().

Definition at line 280 of file preprocessor.cpp.

Referenced by get_chunk(), push_token(), and put().

Todo:
FIXME: add explanation of this variable

Definition at line 280 of file preprocessor.cpp.

Referenced by get_chunk(), push_token(), and put().

Definition at line 280 of file preprocessor.cpp.

Referenced by get_chunk(), push_token(), put(), read_line(), and skip_eol().


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

Generated by doxygen 1.5.5 on 23 May 2008 for The Battle for Wesnoth
Gna! | Forum | Wiki | CIA | devdocs