23 inline const char *
bool2str(
bool b)
noexcept {
return (b ?
"yes" :
"no"); }
36 BadFileData(
const std::string&
what,
unsigned long line_no,
unsigned long line_pos,
int level_arg = 0) noexcept :
exception (
fill(
what, line_no, line_pos), level_arg) {}
43 static std::string
fill(
const std::string&
what,
unsigned long line_no,
unsigned long line_pos)
noexcept;
64 static std::string
fill(
const std::string&
what,
const std::string& reason)
noexcept;
86 static std::string
fill(
const std::string&
what,
const std::string& name,
const std::string& reason)
noexcept;
102 static std::string
fill(
const std::string& tag);
106 struct ReadFileParams;
147 if (__builtin_expect((
f.rdbuf()->sputc(c) != c), 0))
154 if (__builtin_expect((
f.rdbuf()->sputn(s, len) != len), 0))
209 if( __builtin_expect((pos >=
m_len2), 0) ) {
212 char *ptr =
new char [
m_len];
213 memcpy(ptr,
m_buf, pos);
222class OksXmlInputStream;
397 bool good()
const {
return f->good(); }
398 bool eof()
const {
return f->eof(); }
406 void inline seek_position(std::streamoff off) {
f->seekg(off, std::ios_base::cur); }
429 std::shared_ptr<std::istream>
f;
436 std::istream::pos_type
pos;
450 f->setf(std::ios::showbase, std::ios::basefield);
451 f->exceptions ( std::istream::eofbit | std::istream::failbit | std::istream::badbit );
462 inline void get_token5(
const char s1,
const char s2,
const char s3,
const char s4,
const char s5,
OksXmlToken& token);
493 if( __builtin_expect((c == EOF), 0) )
__throw_eof();
494 else if( __builtin_expect((c ==
'\n'), 0) ) {
line_no++;
line_pos = 0; }
510 if(c ==
' ' || c ==
'\n' || c ==
'\r' || c ==
'\t')
continue;
BadFileData(const std::string &what, unsigned long line_no, unsigned long line_pos, int level_arg=0) noexcept
virtual ~BadFileData() noexcept
static std::string fill(const std::string &what, unsigned long line_no, unsigned long line_pos) noexcept
virtual ~EndOfXmlStream() noexcept
EndOfXmlStream(const std::string &tag) noexcept
static std::string fill(const std::string &tag)
FailedRead(const std::string &what, const std::string &reason) noexcept
FailedRead(const std::string &what, const exception &reason) noexcept
virtual ~FailedRead() noexcept
static std::string fill(const std::string &what, const std::string &reason) noexcept
FailedSave(const std::string &what, const std::string &name, const std::string &reason) noexcept
FailedSave(const std::string &what, const std::string &name, const exception &reason) noexcept
static std::string fill(const std::string &what, const std::string &name, const std::string &reason) noexcept
virtual ~FailedSave() noexcept
OksObject describes instance of OksClass.
void put_last_tag(const char *, size_t len)
void put_attribute(const char *, size_t len, const char *)
void put_start_tag(const char *, size_t len)
void put_raw(const char *s, long len)
static void __throw_write_failed()
OksXmlOutputStream(std::ostream &p)
void put_quoted(const char *)
std::ostream & get_stream() const
virtual const char * what() const noexcept
caught dunedaq::conffwk::Exception exception
const char * bool2str(bool b) noexcept
bool str2bool(const char *s) noexcept
bool cmp_str3(const char *s1, const char s2[4])
the structure to pass common parameters to various read() methods of OksData and OksObject class
OksXmlAttribute(OksXmlInputStream &s)
OksXmlRelValue(const oks::ReadFileParams &file_params)
const oks::ReadFileParams & m_file_params
std::stack< OksXmlToken * > m_tokens
void release(OksXmlToken *token)
OksXmlToken(size_t len=2048)
void realloc(unsigned long pos)
unsigned int line_pos() const
unsigned int line_no() const
OksXmlToken * get_token() const
OksXmlValue(OksXmlToken *token=nullptr, unsigned int len=0, unsigned int line_no=0, unsigned int line_pos=0)