class XrlParserFileInput

XrlParserFileInput class reads lines from a data source, strips out comments and handles continuation characters. More...

Definition#include <xrl-parser-input.hh>
InheritsXrlParserInput [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Protected Types

Protected Methods

Protected Members


Detailed Description

XrlParserFileInput class reads lines from a data source, strips out comments and handles continuation characters. It is similar to the C-preprocessor in that it strips out C and C++ comments and handles #include directives.

 XrlParserFileInput (istream* input, const char* fname = "")
throw (XrlParserInputException)

XrlParserFileInput

Constructor

Parameters:
inputinput file stream.
fnamefilename.

Throws: XrlParserInputException, if, input, file, stream, is, not, good().

 XrlParserFileInput (const char* filename)
throw (XrlParserInputException)

XrlParserFileInput

 ~XrlParserFileInput ()

~XrlParserFileInput

bool  eof ()

eof

[const]

Reimplemented from XrlParserInput.

bool  getline (string& line)
throw (XrlParserInputException)

getline

Reimplemented from XrlParserInput.

string  stack_trace ()

stack_trace

[const]

Reimplemented from XrlParserInput.

list<string>&  path ()

path

bool  slurp_line (string& line)
throw (XrlParserInputException)

slurp_line

[protected]

FileState (struct)

FileState

[protected]

void  push_stack (const FileState& fs)
throw (XrlParserInputException)

push_stack

[protected]

Push FileState onto stack

Throws: XrlParserInputException, if, input, file, stream, is, not, good();

void  pop_stack ()

pop_stack

[protected]

FileState&  stack_top ()

stack_top

[protected]

size_t  stack_depth ()

stack_depth

[protected const]

ifstream*  path_open_input (const char* filename)
throw (XrlParserInputException)

path_open_input

[protected]

void  close_input (istream* pif)

close_input

[protected]

string  try_include (string::const_iterator& begin, const string::const_iterator& end)
throw (XrlParserInputException)

try_include

[protected]

void  initialize_path ()

initialize_path

[protected]

vector<FileState> _stack

_stack

[protected]

list<string> _path

_path

[protected]

bool _own_bottom

_own_bottom

[protected]

list<string> _inserted_lines

_inserted_lines

[protected]

bool  filter_line (string& output, const string& input)

filter_line

[protected]

enum Mode { NORMAL = 0x00, IN_SQUOTE = 0x01, IN_DQUOTE = 0x02, IN_C_COMMENT = 0x04 }

Mode

[protected]


Generated by: pavlin on possum.icir.org on Wed Dec 11 16:50:42 2002, using kdoc 2.0a54+XORP.