EBOOKOPFToken.h Source File documentation

EBOOKOPFToken.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3 * This file is part of the libe-book project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10 #ifndef EBOOKOPFTOKEN_H_INCLUDED
11 #define EBOOKOPFTOKEN_H_INCLUDED
12
13 #include "EBOOKToken.h"
14
15 namespace libebook
16 {
17
18 namespace EBOOKOPFToken
19 {
20
21 enum
22 {
23 INVALID_TOKEN = 0,
24 FIRST_TOKEN = EBOOKToken<EBOOKOPFParser>::FIRST_TOKEN,
25
26 // namespace prefixes
27 dc,
28 opf,
29 xml,
30 xmlns,
31
32 // elements
33 Contributor,
34 Coverage,
35 Creator,
36 Date,
37 Description,
38 Format,
39 Identifier,
40 Language,
41 Publisher,
42 Relation,
43 Rights,
44 Source,
45 Subject,
46 Title,
47 Type,
48 contributor,
49 coverage,
50 creator,
51 date,
52 dc_metadata,
53 description,
54 format,
55 guide,
56 identifier,
57 item,
58 itemref,
59 language,
60 manifest,
61 meta,
62 metadata,
63 package,
64 publisher,
65 reference,
66 relation,
67 rights,
68 site,
69 source,
70 spine,
71 subject,
72 title,
73 tour,
74 tours,
75 type,
76 x_metadata,
77
78 // attributes
79 content,
80 event,
81 fallback,
82 fallback_style,
83 file_as,
84 href,
85 id,
86 idref,
87 lang,
88 linear,
89 media_type,
90 name,
91 required_modules,
92 required_namespace,
93 role,
94 scheme,
95 toc,
96 unique_identifier,
97 version,
98
99 // attribute values
100 MIME_image,
101 MIME_oeb,
102 MIME_xhtml,
103 _2_0,
104 _3_0,
105 aut,
106 creation,
107 edt,
108 modification,
109 no,
110 publication,
111 yes,
112
113 LAST_TOKEN
114 };
115
116 static_assert(EBOOKToken<EBOOKOPFParser>::LAST_TOKEN >= LAST_TOKEN, "token number overflow");
117
118 enum Namespace
119 {
120 NS_dc = dc << 16,
121 NS_opf = opf << 16,
122 NS_xml = xml << 16,
123 NS_xmlns = xmlns << 16
124 };
125
126 }
127
128 int getOPFTokenId(const char *name, const char *ns = nullptr);
129 int getOPFTokenId(const char *name, std::size_t nameLen, const char *ns, std::size_t nsLen);
130 int getOPFTokenId(const char *name, std::size_t nameLen);
131
132 }
133
134 #endif // EBOOKOPFTOKEN_H_INCLUDED
135
136 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libebook::EBOOKOPFToken::manifest
@ manifest
Definition: EBOOKOPFToken.h:60
libebook::EBOOKOPFToken::Namespace
Namespace
Definition: EBOOKOPFToken.h:119
libebook::EBOOKOPFToken::media_type
@ media_type
Definition: EBOOKOPFToken.h:89
libebook::EBOOKOPFToken::fallback
@ fallback
Definition: EBOOKOPFToken.h:81
libebook::EBOOKOPFToken::href
@ href
Definition: EBOOKOPFToken.h:84
libebook::getOPFTokenId
int getOPFTokenId(const char *const name, const char *const ns)
Definition: EBOOKOPFToken.cpp:27
libebook::EBOOKOPFToken::date
@ date
Definition: EBOOKOPFToken.h:51
libebook::EBOOKOPFToken::guide
@ guide
Definition: EBOOKOPFToken.h:55
libebook::EBOOKOPFToken::Format
@ Format
Definition: EBOOKOPFToken.h:38
libebook::EBOOKOPFToken::type
@ type
Definition: EBOOKOPFToken.h:75
libebook::EBOOKOPFToken::modification
@ modification
Definition: EBOOKOPFToken.h:108
libebook::EBOOKOPFToken::meta
@ meta
Definition: EBOOKOPFToken.h:61
libebook::EBOOKOPFToken::Creator
@ Creator
Definition: EBOOKOPFToken.h:35
libebook::EBOOKOPFToken::no
@ no
Definition: EBOOKOPFToken.h:109
libebook::EBOOKOPFToken::creator
@ creator
Definition: EBOOKOPFToken.h:50
libebook::EBOOKOPFToken::contributor
@ contributor
Definition: EBOOKOPFToken.h:48
libebook::EBOOKOPFToken::Date
@ Date
Definition: EBOOKOPFToken.h:36
libebook::EBOOKOPFToken::dc_metadata
@ dc_metadata
Definition: EBOOKOPFToken.h:52
libebook::EBOOKOPFToken::itemref
@ itemref
Definition: EBOOKOPFToken.h:58
libebook::EBOOKOPFToken::scheme
@ scheme
Definition: EBOOKOPFToken.h:94
libebook::EBOOKOPFToken::id
@ id
Definition: EBOOKOPFToken.h:85
libebook::EBOOKOPFToken::x_metadata
@ x_metadata
Definition: EBOOKOPFToken.h:76
libebook::EBOOKOPFToken::Source
@ Source
Definition: EBOOKOPFToken.h:44
libebook::EBOOKOPFToken::metadata
@ metadata
Definition: EBOOKOPFToken.h:62
libebook::EBOOKOPFToken::_2_0
@ _2_0
Definition: EBOOKOPFToken.h:103
libebook
Definition: BBeBCollector.cpp:19
libebook::EBOOKOPFToken::fallback_style
@ fallback_style
Definition: EBOOKOPFToken.h:82
libebook::EBOOKOPFToken::creation
@ creation
Definition: EBOOKOPFToken.h:106
libebook::EBOOKOPFToken::FIRST_TOKEN
@ FIRST_TOKEN
Definition: EBOOKOPFToken.h:24
libebook::EBOOKOPFToken::tours
@ tours
Definition: EBOOKOPFToken.h:74
libebook::EBOOKOPFToken::source
@ source
Definition: EBOOKOPFToken.h:69
libebook::EBOOKOPFToken::required_namespace
@ required_namespace
Definition: EBOOKOPFToken.h:92
libebook::EBOOKOPFToken::Rights
@ Rights
Definition: EBOOKOPFToken.h:43
libebook::EBOOKToken
Definition: EBOOKToken.h:18
libebook::EBOOKOPFToken::content
@ content
Definition: EBOOKOPFToken.h:79
libebook::EBOOKOPFToken::Type
@ Type
Definition: EBOOKOPFToken.h:47
libebook::EBOOKOPFToken::LAST_TOKEN
@ LAST_TOKEN
Definition: EBOOKOPFToken.h:113
libebook::EBOOKOPFToken::aut
@ aut
Definition: EBOOKOPFToken.h:105
libebook::EBOOKOPFToken::INVALID_TOKEN
@ INVALID_TOKEN
Definition: EBOOKOPFToken.h:23
libebook::EBOOKOPFToken::package
@ package
Definition: EBOOKOPFToken.h:63
libebook::EBOOKOPFToken::format
@ format
Definition: EBOOKOPFToken.h:54
libebook::EBOOKOPFToken::version
@ version
Definition: EBOOKOPFToken.h:97
libebook::EBOOKOPFToken::item
@ item
Definition: EBOOKOPFToken.h:57
libebook::EBOOKOPFToken::Description
@ Description
Definition: EBOOKOPFToken.h:37
libebook::EBOOKOPFToken::required_modules
@ required_modules
Definition: EBOOKOPFToken.h:91
libebook::EBOOKOPFToken::MIME_image
@ MIME_image
Definition: EBOOKOPFToken.h:100
libebook::EBOOKOPFToken::_3_0
@ _3_0
Definition: EBOOKOPFToken.h:104
libebook::EBOOKOPFToken::Title
@ Title
Definition: EBOOKOPFToken.h:46
libebook::EBOOKOPFToken::linear
@ linear
Definition: EBOOKOPFToken.h:88
libebook::EBOOKOPFToken::NS_opf
@ NS_opf
Definition: EBOOKOPFToken.h:121
libebook::EBOOKOPFToken::Publisher
@ Publisher
Definition: EBOOKOPFToken.h:41
libebook::EBOOKOPFToken::dc
@ dc
Definition: EBOOKOPFToken.h:27
libebook::EBOOKOPFToken::tour
@ tour
Definition: EBOOKOPFToken.h:73
libebook::EBOOKOPFToken::lang
@ lang
Definition: EBOOKOPFToken.h:87
libebook::EBOOKOPFToken::spine
@ spine
Definition: EBOOKOPFToken.h:70
libebook::EBOOKOPFToken::role
@ role
Definition: EBOOKOPFToken.h:93
libebook::EBOOKOPFToken::title
@ title
Definition: EBOOKOPFToken.h:72
libebook::EBOOKOPFToken::toc
@ toc
Definition: EBOOKOPFToken.h:95
libebook::EBOOKOPFToken::NS_dc
@ NS_dc
Definition: EBOOKOPFToken.h:120
libebook::EBOOKOPFToken::event
@ event
Definition: EBOOKOPFToken.h:80
EBOOKOPFToken.h
libebook::EBOOKOPFToken::xml
@ xml
Definition: EBOOKOPFToken.h:29
libebook::EBOOKOPFToken::edt
@ edt
Definition: EBOOKOPFToken.h:107
libebook::EBOOKOPFToken::yes
@ yes
Definition: EBOOKOPFToken.h:111
libebook::EBOOKOPFToken::publisher
@ publisher
Definition: EBOOKOPFToken.h:64
libebook::EBOOKOPFToken::relation
@ relation
Definition: EBOOKOPFToken.h:66
name
string name
Definition: HTMLHelpStream.cpp:80
libebook::EBOOKOPFToken::opf
@ opf
Definition: EBOOKOPFToken.h:28
libebook::EBOOKOPFToken::MIME_xhtml
@ MIME_xhtml
Definition: EBOOKOPFToken.h:102
EBOOKToken.h
libebook::EBOOKOPFToken::name
@ name
Definition: EBOOKOPFToken.h:90
libebook::EBOOKOPFToken::subject
@ subject
Definition: EBOOKOPFToken.h:71
libebook::EBOOKOPFToken::reference
@ reference
Definition: EBOOKOPFToken.h:65
libebook::EBOOKOPFToken::identifier
@ identifier
Definition: EBOOKOPFToken.h:56
libebook::EBOOKOPFToken::NS_xml
@ NS_xml
Definition: EBOOKOPFToken.h:122
libebook::EBOOKOPFToken::file_as
@ file_as
Definition: EBOOKOPFToken.h:83
libebook::EBOOKOPFToken::publication
@ publication
Definition: EBOOKOPFToken.h:110
libebook::EBOOKOPFToken::rights
@ rights
Definition: EBOOKOPFToken.h:67
libebook::EBOOKOPFToken::xmlns
@ xmlns
Definition: EBOOKOPFToken.h:30
libebook::EBOOKOPFToken::Identifier
@ Identifier
Definition: EBOOKOPFToken.h:39
libebook::EBOOKOPFToken::NS_xmlns
@ NS_xmlns
Definition: EBOOKOPFToken.h:123
libebook::EBOOKOPFToken::Language
@ Language
Definition: EBOOKOPFToken.h:40
libebook::EBOOKOPFToken::unique_identifier
@ unique_identifier
Definition: EBOOKOPFToken.h:96
libebook::EBOOKOPFToken::MIME_oeb
@ MIME_oeb
Definition: EBOOKOPFToken.h:101
libebook::EBOOKOPFToken::description
@ description
Definition: EBOOKOPFToken.h:53
libebook::EBOOKOPFToken::Contributor
@ Contributor
Definition: EBOOKOPFToken.h:33
libebook::EBOOKOPFToken::language
@ language
Definition: EBOOKOPFToken.h:59
libebook::EBOOKOPFToken::Relation
@ Relation
Definition: EBOOKOPFToken.h:42
libebook::EBOOKOPFToken::idref
@ idref
Definition: EBOOKOPFToken.h:86
libebook::EBOOKOPFToken::Coverage
@ Coverage
Definition: EBOOKOPFToken.h:34
libebook::EBOOKOPFToken::Subject
@ Subject
Definition: EBOOKOPFToken.h:45
libebook::EBOOKOPFToken::site
@ site
Definition: EBOOKOPFToken.h:68
libebook::EBOOKOPFToken::coverage
@ coverage
Definition: EBOOKOPFToken.h:49