summaryrefslogtreecommitdiff
path: root/sax/src/decoder.hh
blob: bd2a99a02073e1804ef6b313aff317eaba31c886 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef DECODER_HH
#define DECODER_HH

#include "macros.hh"

#include <memory>

namespace modxml {
namespace sax {

class Decoder;

// UTF-8 with optional BOM
std::unique_ptr<Decoder> HIDDEN create_utf8_decoder();
// UTF-16 with BOM
std::unique_ptr<Decoder> HIDDEN create_utf16_decoder();
// UTF-16BE with optional BOM
std::unique_ptr<Decoder> HIDDEN create_utf16be_decoder();
// UTF-16LE with optional BOM
std::unique_ptr<Decoder> HIDDEN create_utf16le_decoder();
// UTF-32 with BOM
std::unique_ptr<Decoder> HIDDEN create_utf32_decoder();
// UTF-32BE with optional BOM
std::unique_ptr<Decoder> HIDDEN create_utf32be_decoder();
// UTF-32LE with optional BOM
std::unique_ptr<Decoder> HIDDEN create_utf32le_decoder();
// US-ASCII
std::unique_ptr<Decoder> HIDDEN create_ascii_decoder();

}  // namespace sax
}  // namespace modxml

#endif  // DECODER_HH