FB2Token.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 FB2TOKEN_H_INCLUDED
11 #define FB2TOKEN_H_INCLUDED
12 
13 #include "EBOOKToken.h"
14 
15 #include <boost/static_assert.hpp>
16 
17 namespace libebook
18 {
19 
20 #define FB2_NO_NAMESPACE(ns) (0 == ns)
21 
22 namespace FB2Token
23 {
24 
25 enum
26 {
29 
30  // namespaces
35 
36  // elements
37  a,
61  id,
71  p,
88  sub,
90  sup,
92  td,
94  th,
97  tr,
99  v,
102 
103  // attributes
122 
123  // attribute values
127 
128  LAST_TOKEN
129 };
130 
132 
133 }
134 
136 {
137  const char *name;
138  int id;
139 };
140 
141 const FB2TokenData *getFB2Token(const char *str, const unsigned length);
142 const FB2TokenData *getFB2Token(const char *str);
143 const FB2TokenData *getFB2Token(const unsigned char *str);
144 
145 int getFB2TokenID(const FB2TokenData &token);
146 int getFB2TokenID(const FB2TokenData *token);
147 int getFB2TokenID(const char *str, const unsigned length);
148 int getFB2TokenID(const char *str);
149 int getFB2TokenID(const unsigned char *str);
150 
151 const char *getFB2TokenName(const FB2TokenData &token);
152 const char *getFB2TokenName(const FB2TokenData *token);
153 const char *getFB2TokenName(const char *str, const unsigned length);
154 const char *getFB2TokenName(const char *str);
155 const char *getFB2TokenName(const unsigned char *str);
156 
157 }
158 
159 #endif // FB2TOKEN_H_INCLUDED
160 
161 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
const char * str
Definition: EBOOKHTMLParser.cpp:52
unsigned length
Definition: IMPParser.cpp:72
BOOST_STATIC_ASSERT(EBOOKToken< FB2Parser >::LAST_TOKEN >=LAST_TOKEN)
@ th
Definition: FB2Token.h:94
@ book_name
Definition: FB2Token.h:42
@ empty_line
Definition: FB2Token.h:54
@ include_all
Definition: FB2Token.h:112
@ stanza
Definition: FB2Token.h:83
@ simple
Definition: FB2Token.h:126
@ genre
Definition: FB2Token.h:58
@ epigraph
Definition: FB2Token.h:55
@ style
Definition: FB2Token.h:86
@ src_lang
Definition: FB2Token.h:79
@ align
Definition: FB2Token.h:104
@ code
Definition: FB2Token.h:46
@ NS_XLINK
Definition: FB2Token.h:32
@ stylesheet
Definition: FB2Token.h:87
@ NS_XMLNS
Definition: FB2Token.h:34
@ strong
Definition: FB2Token.h:85
@ content_type
Definition: FB2Token.h:107
@ isbn
Definition: FB2Token.h:63
@ email
Definition: FB2Token.h:52
@ create
Definition: FB2Token.h:108
@ match
Definition: FB2Token.h:114
@ last_name
Definition: FB2Token.h:66
@ publish_info
Definition: FB2Token.h:76
@ nickname
Definition: FB2Token.h:68
@ publisher
Definition: FB2Token.h:75
@ href
Definition: FB2Token.h:110
@ note
Definition: FB2Token.h:125
@ coverpage
Definition: FB2Token.h:47
@ colspan
Definition: FB2Token.h:106
@ annotation
Definition: FB2Token.h:38
@ FictionBook
Definition: FB2Token.h:56
@ image_jpg
Definition: FB2Token.h:124
@ cite
Definition: FB2Token.h:44
@ number
Definition: FB2Token.h:117
@ FIRST_TOKEN
Definition: FB2Token.h:28
@ table
Definition: FB2Token.h:91
@ lang
Definition: FB2Token.h:65
@ rowspan
Definition: FB2Token.h:119
@ document_info
Definition: FB2Token.h:51
@ poem
Definition: FB2Token.h:73
@ alt
Definition: FB2Token.h:105
@ part
Definition: FB2Token.h:72
@ title_info
Definition: FB2Token.h:96
@ sup
Definition: FB2Token.h:90
@ currency
Definition: FB2Token.h:109
@ info_type
Definition: FB2Token.h:113
@ date
Definition: FB2Token.h:49
@ sequence
Definition: FB2Token.h:78
@ section
Definition: FB2Token.h:77
@ v
Definition: FB2Token.h:99
@ binary
Definition: FB2Token.h:40
@ city
Definition: FB2Token.h:45
@ src_url
Definition: FB2Token.h:82
@ INVALID_TOKEN
Definition: FB2Token.h:27
@ body
Definition: FB2Token.h:41
@ text_author
Definition: FB2Token.h:93
@ src_title_info
Definition: FB2Token.h:81
@ home_page
Definition: FB2Token.h:60
@ translator
Definition: FB2Token.h:98
@ image
Definition: FB2Token.h:62
@ NS_FICTIONBOOK
Definition: FB2Token.h:31
@ version
Definition: FB2Token.h:100
@ middle_name
Definition: FB2Token.h:67
@ output_document
Definition: FB2Token.h:70
@ history
Definition: FB2Token.h:59
@ value
Definition: FB2Token.h:121
@ description
Definition: FB2Token.h:50
@ id
Definition: FB2Token.h:61
@ title
Definition: FB2Token.h:95
@ p
Definition: FB2Token.h:71
@ strikethrough
Definition: FB2Token.h:84
@ program_used
Definition: FB2Token.h:74
@ book_title
Definition: FB2Token.h:43
@ subtitle
Definition: FB2Token.h:89
@ name
Definition: FB2Token.h:116
@ keywords
Definition: FB2Token.h:64
@ a
Definition: FB2Token.h:37
@ output
Definition: FB2Token.h:69
@ include
Definition: FB2Token.h:111
@ mode
Definition: FB2Token.h:115
@ td
Definition: FB2Token.h:92
@ emphasis
Definition: FB2Token.h:53
@ LAST_TOKEN
Definition: FB2Token.h:128
@ price
Definition: FB2Token.h:118
@ author
Definition: FB2Token.h:39
@ sub
Definition: FB2Token.h:88
@ tr
Definition: FB2Token.h:97
@ src_ocr
Definition: FB2Token.h:80
@ year
Definition: FB2Token.h:101
@ first_name
Definition: FB2Token.h:57
@ NS_XML
Definition: FB2Token.h:33
@ custom_info
Definition: FB2Token.h:48
@ type
Definition: FB2Token.h:120
Definition: CHMParser.cpp:21
const FB2TokenData * getFB2Token(const char *const str, const unsigned length)
Definition: FB2Token.cpp:29
int getFB2TokenID(const FB2TokenData &token)
Definition: FB2Token.cpp:50
const char * getFB2TokenName(const FB2TokenData &token)
Definition: FB2Token.cpp:77
Definition: EBOOKToken.h:18
Definition: FB2Token.h:136
const char * name
Definition: FB2Token.h:137
int id
Definition: FB2Token.h:138

Generated for libe-book by doxygen 1.9.1