CharInputBuffer Class Reference

#include <CharInputBuffer.hpp>

Inheritance diagram for CharInputBuffer:

Inheritance graph
Collaboration diagram for CharInputBuffer:

Collaboration graph

Public Member Functions

 CharInputBuffer (unsigned char *buf, size_t size, bool owner=false)
 ~CharInputBuffer (void)
virtual void reset (void)
virtual int getChar (void)

Protected Attributes

unsigned char * buffer
 the buffer with data
unsigned char * ptr
 position ptr into the buffer
unsigned char * end
 end sentry for buffer
bool delete_buffer
 flag signifying if we have to delete the buffer

Detailed Description

CharInputBuffer.hpp provides an InputBuffer for plain character arrays (buffers).

Definition at line 26 of file CharInputBuffer.hpp.

Constructor & Destructor Documentation

CharInputBuffer::CharInputBuffer ( unsigned char *  buf,
size_t  size,
bool  owner = false 
) [inline]

Construct a CharInputBuffer.hpp object with a char* buffer of 'size' if 'owner' is true, then the buffer will be delete[]-ed on destruction.

it is assumed the buffer was allocated with new[]!

Definition at line 33 of file CharInputBuffer.hpp.

CharInputBuffer::~CharInputBuffer ( void   )  [inline]


If you're using malloced data, then you probably need to change this destructor. Or better use this class as template for your own.

Definition at line 45 of file CharInputBuffer.hpp.

Member Function Documentation

virtual void CharInputBuffer::reset ( void   )  [inline, virtual]

Reset the CharInputBuffer to initial state Called from LexerInputState::reset.

See also:

Reimplemented from InputBuffer.

Definition at line 55 of file CharInputBuffer.hpp.

References InputBuffer::reset().

virtual int CharInputBuffer::getChar ( void   )  [inline, virtual]

Override this in subclasses to get the next character

Implements InputBuffer.

Definition at line 61 of file CharInputBuffer.hpp.

Field Documentation

unsigned char* CharInputBuffer::buffer [protected]

the buffer with data

Definition at line 67 of file CharInputBuffer.hpp.

unsigned char* CharInputBuffer::ptr [protected]

position ptr into the buffer

Definition at line 68 of file CharInputBuffer.hpp.

unsigned char* CharInputBuffer::end [protected]

end sentry for buffer

Definition at line 69 of file CharInputBuffer.hpp.

flag signifying if we have to delete the buffer

Definition at line 70 of file CharInputBuffer.hpp.

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

Generated on Tue Mar 31 20:19:25 2009 for ctrump by  doxygen 1.5.6