8#ifndef INCLUDED_BALXML_HEXPARSER
9#define INCLUDED_BALXML_HEXPARSER
148#include <balscm_version.h>
184 void appendOctet(
char firstDigit,
char secondDigit);
215 template <
class INPUT_ITERATOR>
230 template <
class TYPE>
234 static const char s_hexValueTable[128];
253 (char)((HexParser_Helper::s_hexValueTable[(
int)firstDigit] << 4)
254 | (HexParser_Helper::s_hexValueTable[(int)secondDigit]));
256 d_object_p->push_back(value);
273 enum { k_SUCCESS = 0 };
288 enum { k_SUCCESS = 0, k_FAILURE = -1 };
292 return 0 == d_firstDigit ? k_SUCCESS : k_FAILURE;
296template <
class INPUT_ITERATOR>
301 enum { k_SUCCESS = 0, k_FAILURE = -1 };
303 while (begin != end) {
304 const char digit = *begin;
313 if (0 == d_firstDigit) {
314 d_firstDigit = digit;
317 appendOctet(d_firstDigit, digit);
Definition balxml_hexparser.h:228
Definition balxml_hexparser.h:169
int pushCharacters(INPUT_ITERATOR begin, INPUT_ITERATOR end)
Definition balxml_hexparser.h:297
int endParse()
Definition balxml_hexparser.h:284
HexParser()
Create a parser for parsing Hex types.
Definition balxml_hexparser.h:261
int beginParse(TYPE *object)
Definition balxml_hexparser.h:269
#define BSLS_ASSERT(X)
Definition bsls_assert.h:1804
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition balxml_base64parser.h:150
void reset(TYPE *object)
Reset the value of the specified object to its default value.
static bool isSpace(char character)
Definition bdlb_chartype.h:842
static bool isXdigit(char character)
Definition bdlb_chartype.h:830