Provides string-parsing functionality with protection from buffer overflow.
More...
#include <ParseBuffer.hxx>
|
| | ParseBuffer (const char *buff, size_t len, const Data &errorContext=Data::Empty) |
| |
| | ParseBuffer (const char *buff, const Data &errorContext=Data::Empty) |
| |
| | ParseBuffer (const Data &data, const Data &errorContext=Data::Empty) |
| |
| | ParseBuffer (const ParseBuffer &other) |
| |
| const Data & | getContext () const |
| |
| ParseBuffer & | operator= (const ParseBuffer &other) |
| |
| void | reset (const char *pos) |
| |
| bool | eof () const |
| |
| bool | bof () const |
| |
| bool | valid () const |
| |
| Pointer | start () const |
| |
| CurrentPosition | position () const |
| |
| Pointer | end () const |
| |
| size_t | lengthRemaining () |
| |
| CurrentPosition | skipChar () |
| |
| CurrentPosition | skipChar (char c) |
| |
| CurrentPosition | skipChars (const char *cs) |
| |
| CurrentPosition | skipChars (const Data &cs) |
| |
| CurrentPosition | skipNonWhitespace () |
| |
| CurrentPosition | skipWhitespace () |
| |
| CurrentPosition | skipLWS () |
| |
| CurrentPosition | skipToTermCRLF () |
| |
| CurrentPosition | skipToChar (char c) |
| |
| CurrentPosition | skipToChars (const char *cs) |
| |
| CurrentPosition | skipToChars (const Data &cs) |
| |
| CurrentPosition | skipToOneOf (const char *cs) |
| |
| CurrentPosition | skipToOneOf (const char *cs1, const char *cs2) |
| |
| CurrentPosition | skipToOneOf (const Data &cs) |
| |
| CurrentPosition | skipToOneOf (const Data &cs1, const Data &cs2) |
| |
| CurrentPosition | skipChars (const std::bitset< 256 > &cs) |
| |
| CurrentPosition | skipToOneOf (const std::bitset< 256 > &cs) |
| |
| const char * | skipToEndQuote (char quote='"') |
| |
| CurrentPosition | skipN (size_t count) |
| |
| CurrentPosition | skipToEnd () |
| |
| const char * | skipBackChar () |
| |
| const char * | skipBackWhitespace () |
| |
| const char * | skipBackN (int count) |
| |
| const char * | skipBackChar (char c) |
| |
| const char * | skipBackToChar (char c) |
| |
| const char * | skipBackToOneOf (const char *cs) |
| |
| void | assertEof () const |
| |
| void | assertNotEof () const |
| |
| void | fail (const char *file, unsigned int line, const Data &errmsg=Data::Empty) const |
| |
| void | data (Data &data, const char *start) const |
| | make the passed in data share memory with the buffer (uses Data::Share)
|
| |
| Data | data (const char *start) const |
| |
| void | dataUnescaped (Data &data, const char *start) const |
| |
| int | integer () |
| |
| uint8_t | uInt8 () |
| |
| uint32_t | uInt32 () |
| | dcm! – merge these, ask about length checks
|
| |
| uint64_t | uInt64 () |
| |
| uint64_t | unsignedLongLong () |
| |
| unsigned long | unsignedInteger () |
| |
| float | floatVal () |
| |
| int | qVal () |
| |
|
| static bool | oneOf (char c, const char *cs) |
| |
| static bool | oneOf (char c, const Data &cs) |
| |
Provides string-parsing functionality with protection from buffer overflow.
Throws ParseException when parse failures occur.
Definition at line 17 of file ParseBuffer.hxx.
◆ ParseBuffer() [1/4]
| ParseBuffer::ParseBuffer |
( |
const char * |
buff, |
|
|
size_t |
len, |
|
|
const Data & |
errorContext = Data::Empty |
|
) |
| |
◆ ParseBuffer() [2/4]
| ParseBuffer::ParseBuffer |
( |
const char * |
buff, |
|
|
const Data & |
errorContext = Data::Empty |
|
) |
| |
|
explicit |
◆ ParseBuffer() [3/4]
◆ ParseBuffer() [4/4]
◆ assertEof()
| void resip::ParseBuffer::assertEof |
( |
| ) |
const |
|
inline |
◆ assertNotEof()
| void resip::ParseBuffer::assertNotEof |
( |
| ) |
const |
|
inline |
◆ bof()
| bool resip::ParseBuffer::bof |
( |
| ) |
const |
|
inline |
◆ data() [1/2]
| Data ParseBuffer::data |
( |
const char * |
start | ) |
const |
◆ data() [2/2]
| void ParseBuffer::data |
( |
Data & |
data, |
|
|
const char * |
start |
|
) |
| const |
◆ dataUnescaped()
| void ParseBuffer::dataUnescaped |
( |
Data & |
data, |
|
|
const char * |
start |
|
) |
| const |
◆ end()
| Pointer resip::ParseBuffer::end |
( |
| ) |
const |
|
inline |
◆ eof()
| bool resip::ParseBuffer::eof |
( |
| ) |
const |
|
inline |
◆ fail()
| void ParseBuffer::fail |
( |
const char * |
file, |
|
|
unsigned int |
line, |
|
|
const Data & |
errmsg = Data::Empty |
|
) |
| const |
◆ floatVal()
| float ParseBuffer::floatVal |
( |
| ) |
|
◆ getContext()
| const Data & resip::ParseBuffer::getContext |
( |
| ) |
const |
|
inline |
◆ integer()
| int ParseBuffer::integer |
( |
| ) |
|
◆ lengthRemaining()
| size_t resip::ParseBuffer::lengthRemaining |
( |
| ) |
|
|
inline |
◆ oneOf() [1/2]
| bool ParseBuffer::oneOf |
( |
char |
c, |
|
|
const char * |
cs |
|
) |
| |
|
static |
◆ oneOf() [2/2]
| bool ParseBuffer::oneOf |
( |
char |
c, |
|
|
const Data & |
cs |
|
) |
| |
|
static |
◆ operator=()
◆ position()
| CurrentPosition resip::ParseBuffer::position |
( |
| ) |
const |
|
inline |
◆ qVal()
| int ParseBuffer::qVal |
( |
| ) |
|
◆ reset()
| void resip::ParseBuffer::reset |
( |
const char * |
pos | ) |
|
|
inline |
◆ skipBackChar() [1/2]
| const char * ParseBuffer::skipBackChar |
( |
| ) |
|
◆ skipBackChar() [2/2]
| const char * ParseBuffer::skipBackChar |
( |
char |
c | ) |
|
◆ skipBackN()
| const char * resip::ParseBuffer::skipBackN |
( |
int |
count | ) |
|
|
inline |
◆ skipBackToChar()
| const char * ParseBuffer::skipBackToChar |
( |
char |
c | ) |
|
◆ skipBackToOneOf()
| const char * ParseBuffer::skipBackToOneOf |
( |
const char * |
cs | ) |
|
◆ skipBackWhitespace()
| const char * ParseBuffer::skipBackWhitespace |
( |
| ) |
|
◆ skipChar() [1/2]
| CurrentPosition resip::ParseBuffer::skipChar |
( |
| ) |
|
|
inline |
◆ skipChar() [2/2]
| ParseBuffer::CurrentPosition ParseBuffer::skipChar |
( |
char |
c | ) |
|
◆ skipChars() [1/3]
| ParseBuffer::CurrentPosition ParseBuffer::skipChars |
( |
const char * |
cs | ) |
|
◆ skipChars() [2/3]
| ParseBuffer::CurrentPosition ParseBuffer::skipChars |
( |
const Data & |
cs | ) |
|
◆ skipChars() [3/3]
| CurrentPosition resip::ParseBuffer::skipChars |
( |
const std::bitset< 256 > & |
cs | ) |
|
|
inline |
◆ skipLWS()
| ParseBuffer::CurrentPosition ParseBuffer::skipLWS |
( |
| ) |
|
◆ skipN()
| CurrentPosition resip::ParseBuffer::skipN |
( |
size_t |
count | ) |
|
|
inline |
◆ skipNonWhitespace()
| ParseBuffer::CurrentPosition ParseBuffer::skipNonWhitespace |
( |
| ) |
|
◆ skipToChar()
| CurrentPosition resip::ParseBuffer::skipToChar |
( |
char |
c | ) |
|
|
inline |
◆ skipToChars() [1/2]
| ParseBuffer::CurrentPosition ParseBuffer::skipToChars |
( |
const char * |
cs | ) |
|
◆ skipToChars() [2/2]
| ParseBuffer::CurrentPosition ParseBuffer::skipToChars |
( |
const Data & |
cs | ) |
|
◆ skipToEnd()
| CurrentPosition resip::ParseBuffer::skipToEnd |
( |
| ) |
|
|
inline |
◆ skipToEndQuote()
| const char * ParseBuffer::skipToEndQuote |
( |
char |
quote = '"' | ) |
|
◆ skipToOneOf() [1/5]
| ParseBuffer::CurrentPosition ParseBuffer::skipToOneOf |
( |
const char * |
cs | ) |
|
◆ skipToOneOf() [2/5]
| ParseBuffer::CurrentPosition ParseBuffer::skipToOneOf |
( |
const char * |
cs1, |
|
|
const char * |
cs2 |
|
) |
| |
◆ skipToOneOf() [3/5]
| ParseBuffer::CurrentPosition ParseBuffer::skipToOneOf |
( |
const Data & |
cs | ) |
|
◆ skipToOneOf() [4/5]
| ParseBuffer::CurrentPosition ParseBuffer::skipToOneOf |
( |
const Data & |
cs1, |
|
|
const Data & |
cs2 |
|
) |
| |
◆ skipToOneOf() [5/5]
| CurrentPosition resip::ParseBuffer::skipToOneOf |
( |
const std::bitset< 256 > & |
cs | ) |
|
|
inline |
◆ skipToTermCRLF()
| ParseBuffer::CurrentPosition ParseBuffer::skipToTermCRLF |
( |
| ) |
|
◆ skipWhitespace()
| ParseBuffer::CurrentPosition ParseBuffer::skipWhitespace |
( |
| ) |
|
◆ start()
| Pointer resip::ParseBuffer::start |
( |
| ) |
const |
|
inline |
◆ uInt32()
dcm! – merge these, ask about length checks
Definition at line 746 of file ParseBuffer.cxx.
◆ uInt64()
◆ uInt8()
◆ unsignedInteger()
| unsigned long resip::ParseBuffer::unsignedInteger |
( |
| ) |
|
|
inline |
◆ unsignedLongLong()
| uint64_t resip::ParseBuffer::unsignedLongLong |
( |
| ) |
|
|
inline |
◆ valid()
| bool resip::ParseBuffer::valid |
( |
| ) |
const |
|
inline |
◆ ParseBuffer::CurrentPosition
| friend class ParseBuffer::CurrentPosition |
|
friend |
◆ ParamTerm
| const char * ParseBuffer::ParamTerm = ";?" |
|
static |
◆ Whitespace
| const char * ParseBuffer::Whitespace = " \t\r\n" |
|
static |
The documentation for this class was generated from the following files: