7#ifndef ATLAS_CODECS_BACH_H
8#define ATLAS_CODECS_BACH_H
10#include <Atlas/Codec.h>
39 void mapIntItem(std::string name, std::int64_t)
override;
63 unsigned linenum()
const {
return m_linenum; }
67 std::istream &m_istream;
68 std::ostream &m_ostream;
87 bool stringmode()
const;
89 std::string m_name, m_data;
90 std::stack<State> m_state;
92 inline void parseInit(
char);
94 inline void parseStream(
char);
96 inline void parseMap(
char);
98 inline void parseList(
char);
100 inline void parseData(
char);
102 inline void parseInt(
char);
104 inline void parseFloat(
char);
106 inline void parseString(
char);
108 inline void parseLiteral(
char);
110 inline void parseName(
char);
112 inline void parseComment(
char);
114 static inline std::string encodeString(std::string);
116 static inline std::string decodeString(std::string);
118 void writeIntItem(
const std::string &, std::int64_t);
120 void writeFloatItem(
const std::string &,
double);
122 void writeStringItem(
const std::string &, std::string);
124 void writeLine(
const std::string &,
bool=
true,
bool=
false);
void listNoneItem() override
void streamEnd() override
void listListItem() override
void listFloatItem(double) override
void listStringItem(std::string) override
void mapNoneItem(std::string name) override
void listMapItem() override
void mapFloatItem(std::string name, double) override
void mapIntItem(std::string name, std::int64_t) override
void listIntItem(std::int64_t) override
void streamBegin() override
void mapMapItem(std::string name) override
void mapListItem(std::string name) override
void streamMessage() override
void mapStringItem(std::string name, std::string) override