Coverage Report

Created: 2026-03-12 06:42

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/libetonyek/src/lib/KEY2Token.inc
Line
Count
Source
1
/* C++ code produced by gperf version 3.1 */
2
/* Command-line: gperf --compare-strncmp --enum --null-strings --readonly-tables --language C++ KEY2Token.gperf  */
3
/* Computed positions: -k'1,4,$' */
4
5
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
6
      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
7
      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
8
      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
9
      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
10
      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
11
      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
12
      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
13
      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
14
      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
15
      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
16
      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
17
      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
18
      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
19
      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
20
      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
21
      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
22
      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
23
      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
24
      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
25
      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
26
      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
27
      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
28
/* The character set is not based on ISO-646.  */
29
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>."
30
#endif
31
32
#line 10 "KEY2Token.gperf"
33
34
#if defined __GNUC__
35
#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
36
#endif
37
38
using namespace KEY2Token;
39
#line 18 "KEY2Token.gperf"
40
struct Token
41
{
42
  const char *name;
43
  int id;
44
};
45
#include <string.h>
46
/* maximum key range = 140, duplicates = 0 */
47
48
class Perfect_Hash
49
{
50
private:
51
  static inline unsigned int hash (const char *str, size_t len);
52
public:
53
  static const struct Token *in_word_set (const char *str, size_t len);
54
};
55
56
inline unsigned int
57
Perfect_Hash::hash (const char *str, size_t len)
58
494
{
59
494
  static const unsigned char asso_values[] =
60
494
    {
61
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
62
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
63
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
64
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
65
494
      141, 141, 141, 141, 141, 141, 141, 141,   5,  65,
66
494
        0, 141,  35,   0, 141,   5, 141,   0, 141, 141,
67
494
      141, 141, 141, 141, 141, 141,   0, 141, 141, 141,
68
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
69
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
70
494
      141, 141, 141, 141, 141, 141, 141,   0,  25,   0,
71
494
       15,   0,  55,  10,  10,   5, 141,  15,  20,   0,
72
494
       10,  25,  40, 141,  25,  25,   5,   0,  30,   5,
73
494
      141,  40, 141, 141, 141, 141, 141, 141, 141, 141,
74
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
75
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
76
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
77
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
78
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
79
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
80
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
81
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
82
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
83
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
84
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
85
494
      141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
86
494
      141, 141, 141, 141, 141, 141
87
494
    };
88
494
  unsigned int hval = len;
89
90
494
  switch (hval)
91
494
    {
92
141
      default:
93
141
        hval += asso_values[static_cast<unsigned char>(str[3])];
94
      /*FALLTHROUGH*/
95
171
      case 3:
96
192
      case 2:
97
494
      case 1:
98
494
        hval += asso_values[static_cast<unsigned char>(str[0])];
99
494
        break;
100
494
    }
101
494
  return hval + asso_values[static_cast<unsigned char>(str[len - 1])];
102
494
}
103
104
const struct Token *
105
Perfect_Hash::in_word_set (const char *str, size_t len)
106
512
{
107
512
  enum
108
512
    {
109
512
      TOTAL_KEYWORDS = 67,
110
512
      MIN_WORD_LENGTH = 1,
111
512
      MAX_WORD_LENGTH = 46,
112
512
      MIN_HASH_VALUE = 1,
113
512
      MAX_HASH_VALUE = 140
114
512
    };
115
116
512
  static const struct Token wordlist[] =
117
512
    {
118
512
      {(char*)0},
119
512
#line 49 "KEY2Token.gperf"
120
512
      {"c",c},
121
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
122
512
      {(char*)0}, {(char*)0},
123
512
#line 65 "KEY2Token.gperf"
124
512
      {"metadata",metadata},
125
512
#line 89 "KEY2Token.gperf"
126
512
      {"type",type},
127
512
#line 84 "KEY2Token.gperf"
128
512
      {"theme",theme},
129
512
#line 58 "KEY2Token.gperf"
130
512
      {"i",i},
131
512
#line 50 "KEY2Token.gperf"
132
512
      {"comment",comment},
133
512
#line 41 "KEY2Token.gperf"
134
512
      {"animationType",animationType},
135
512
#line 66 "KEY2Token.gperf"
136
512
      {"name",name},
137
512
#line 26 "KEY2Token.gperf"
138
512
      {"2005112100",VERSION_STR_3},
139
512
      {(char*)0},
140
512
#line 62 "KEY2Token.gperf"
141
512
      {"master-slide",master_slide},
142
512
      {(char*)0},
143
512
#line 83 "KEY2Token.gperf"
144
512
      {"text",text},
145
512
#line 85 "KEY2Token.gperf"
146
512
      {"theme-list",theme_list},
147
512
#line 28 "KEY2Token.gperf"
148
512
      {"92008102400",VERSION_STR_5},
149
512
      {(char*)0},
150
512
#line 36 "KEY2Token.gperf"
151
512
      {"animationEndOffset",animationEndOffset},
152
512
      {(char*)0},
153
512
#line 39 "KEY2Token.gperf"
154
512
      {"animationStartOffset",animationStartOffset},
155
512
#line 27 "KEY2Token.gperf"
156
512
      {"72007061400",VERSION_STR_4},
157
512
#line 35 "KEY2Token.gperf"
158
512
      {"animationDuration",animationDuration},
159
512
#line 40 "KEY2Token.gperf"
160
512
      {"animationTimingReferent",animationTimingReferent},
161
512
#line 73 "KEY2Token.gperf"
162
512
      {"size",size},
163
512
#line 86 "KEY2Token.gperf"
164
512
      {"title",title},
165
512
      {(char*)0}, {(char*)0},
166
512
#line 55 "KEY2Token.gperf"
167
512
      {"headline",headline},
168
512
#line 53 "KEY2Token.gperf"
169
512
      {"direction",direction},
170
512
#line 52 "KEY2Token.gperf"
171
512
      {"depth",depth},
172
512
#line 78 "KEY2Token.gperf"
173
512
      {"sticky-note",sticky_note},
174
512
#line 34 "KEY2Token.gperf"
175
512
      {"animationDelayAutomaticWith",animationDelayAutomaticWith},
176
512
#line 30 "KEY2Token.gperf"
177
512
      {"animationAuto",animationAuto},
178
512
      {(char*)0},
179
512
#line 67 "KEY2Token.gperf"
180
512
      {"notes",notes},
181
512
#line 54 "KEY2Token.gperf"
182
512
      {"events",events},
183
512
#line 42 "KEY2Token.gperf"
184
512
      {"authors",authors},
185
512
#line 63 "KEY2Token.gperf"
186
512
      {"master-slides",master_slides},
187
512
#line 70 "KEY2Token.gperf"
188
512
      {"page",page},
189
512
#line 74 "KEY2Token.gperf"
190
512
      {"slide",slide},
191
512
#line 80 "KEY2Token.gperf"
192
512
      {"string",string},
193
512
#line 56 "KEY2Token.gperf"
194
512
      {"headlineParagraphStyle",headlineParagraphStyle},
195
512
#line 37 "KEY2Token.gperf"
196
512
      {"animationInterchunkAuto",animationInterchunkAuto},
197
512
      {(char*)0},
198
512
#line 24 "KEY2Token.gperf"
199
512
      {"2004102100",VERSION_STR_2},
200
512
#line 77 "KEY2Token.gperf"
201
512
      {"slide-style",slide_style},
202
512
#line 33 "KEY2Token.gperf"
203
512
      {"animationDelayAutmaticAfter",animationDelayAutomaticAfter},
204
512
#line 61 "KEY2Token.gperf"
205
512
      {"keywords",keywords},
206
512
#line 32 "KEY2Token.gperf"
207
512
      {"animationDelay",animationDelay},
208
512
#line 75 "KEY2Token.gperf"
209
512
      {"slide-list",slide_list},
210
512
      {(char*)0},
211
512
#line 31 "KEY2Token.gperf"
212
512
      {"animationAutoPlay",animationAutoPlay},
213
512
#line 60 "KEY2Token.gperf"
214
512
      {"key",key},
215
512
#line 51 "KEY2Token.gperf"
216
512
      {"decimal-number",number},
217
512
#line 82 "KEY2Token.gperf"
218
512
      {"stylesheet",stylesheet},
219
512
      {(char*)0},
220
512
#line 79 "KEY2Token.gperf"
221
512
      {"sticky-notes",sticky_notes},
222
512
#line 29 "KEY2Token.gperf"
223
512
      {"BGBuildDurationProperty",BGBuildDurationProperty},
224
512
#line 38 "KEY2Token.gperf"
225
512
      {"animationInterchunkDelay",animationInterchunkDelay},
226
512
#line 45 "KEY2Token.gperf"
227
512
      {"build",build},
228
512
#line 68 "KEY2Token.gperf"
229
512
      {"number",number},
230
512
#line 87 "KEY2Token.gperf"
231
512
      {"title-placeholder",title_placeholder},
232
512
#line 69 "KEY2Token.gperf"
233
512
      {"object-placeholder",object_placeholder},
234
512
      {(char*)0},
235
512
#line 64 "KEY2Token.gperf"
236
512
      {"master-ref",master_ref},
237
512
#line 46 "KEY2Token.gperf"
238
512
      {"build-chunk",build_chunk},
239
512
#line 90 "KEY2Token.gperf"
240
512
      {"version",version},
241
512
      {(char*)0}, {(char*)0},
242
512
#line 25 "KEY2Token.gperf"
243
512
      {"2005092101",COMPATIBLE_VERSION_STR_3,},
244
512
      {(char*)0},
245
512
#line 48 "KEY2Token.gperf"
246
512
      {"bullets",bullets},
247
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
248
512
#line 47 "KEY2Token.gperf"
249
512
      {"build-chunks",build_chunks},
250
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
251
512
#line 72 "KEY2Token.gperf"
252
512
      {"presentation",presentation},
253
512
      {(char*)0},
254
512
#line 76 "KEY2Token.gperf"
255
512
      {"slide-number-placeholder",slide_number_placeholder},
256
512
      {(char*)0}, {(char*)0}, {(char*)0},
257
512
#line 59 "KEY2Token.gperf"
258
512
      {"info-ref",info_ref},
259
512
      {(char*)0}, {(char*)0},
260
512
#line 57 "KEY2Token.gperf"
261
512
      {"http://developer.apple.com/namespaces/keynote2",NS_URI_KEY},
262
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
263
512
#line 88 "KEY2Token.gperf"
264
512
      {"title-placeholder-ref",title_placeholder_ref},
265
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
266
512
#line 43 "KEY2Token.gperf"
267
512
      {"body-placeholder",body_placeholder},
268
512
      {(char*)0}, {(char*)0},
269
512
#line 81 "KEY2Token.gperf"
270
512
      {"style-ref",style_ref},
271
512
      {(char*)0},
272
512
#line 71 "KEY2Token.gperf"
273
512
      {"parent-build-ref",parent_build_ref},
274
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
275
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
276
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
277
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
278
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
279
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
280
512
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
281
512
#line 44 "KEY2Token.gperf"
282
512
      {"body-placeholder-ref",body_placeholder_ref}
283
512
    };
284
285
512
  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
286
494
    {
287
494
      unsigned int key = hash (str, len);
288
289
494
      if (key <= MAX_HASH_VALUE)
290
184
        {
291
184
          const char *s = wordlist[key].name;
292
293
184
          if (s && *str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
294
11
            return &wordlist[key];
295
184
        }
296
494
    }
297
501
  return 0;
298
512
}
299
#line 91 "KEY2Token.gperf"
300