summaryrefslogtreecommitdiffstats
path: root/contrib/gperf/tests/jstest2.gperf
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/gperf/tests/jstest2.gperf')
-rw-r--r--contrib/gperf/tests/jstest2.gperf147
1 files changed, 147 insertions, 0 deletions
diff --git a/contrib/gperf/tests/jstest2.gperf b/contrib/gperf/tests/jstest2.gperf
new file mode 100644
index 0000000..ee0fa7f
--- /dev/null
+++ b/contrib/gperf/tests/jstest2.gperf
@@ -0,0 +1,147 @@
+struct js_keyword {
+ char * name;
+ int token;
+}
+%%
+abstract, 1
+boolean, 2
+break, 3
+byte, 4
+case, 5
+catch, 6
+char, 7
+class, 8
+const, 9
+continue, 10
+default, 11
+do, 12
+double, 13
+else, 14
+extends, 15
+false, 16
+final, 17
+finally, 18
+float, 19
+for, 20
+function, 21
+goto, 22
+if, 23
+implements, 24
+import, 25
+in, 26
+instanceof, 27
+int, 28
+interface, 29
+long, 30
+native, 31
+new, 32
+null, 33
+package, 34
+private, 35
+protected, 36
+public, 37
+return, 38
+short, 39
+static, 40
+super, 41
+switch, 42
+synchronized, 43
+this, 44
+throw, 45
+throws, 46
+transient, 47
+true, 48
+try, 49
+var, 50
+void, 51
+while, 52
+with, 53
+%%
+#include <stdlib.h>
+#include <string.h>
+#if defined(__STDC__) || defined(__cplusplus)
+#define CONST const
+#else
+#define CONST
+#endif
+static CONST char* testdata[] = {
+ "bogus",
+ "abstract",
+ "boolean",
+ "break",
+ "byte",
+ "case",
+ "catch",
+ "char",
+ "class",
+ "const",
+ "continue",
+ "default",
+ "do",
+ "double",
+ "else",
+ "extends",
+ "false",
+ "final",
+ "finally",
+ "float",
+ "for",
+ "function",
+ "goto",
+ "if",
+ "implements",
+ "import",
+ "in",
+ "instanceof",
+ "int",
+ "interface",
+ "long",
+ "native",
+ "new",
+ "null",
+ "package",
+ "private",
+ "protected",
+ "public",
+ "return",
+ "short",
+ "static",
+ "super",
+ "switch",
+ "synchronized",
+ "this",
+ "throw",
+ "throws",
+ "transient",
+ "true",
+ "try",
+ "var",
+ "void",
+ "while",
+ "with"
+};
+int main ()
+{
+ int i;
+ for (i = 0; i < sizeof(testdata)/sizeof(testdata[0]); i++)
+ {
+#ifdef CPLUSPLUS_TEST
+ CONST struct js_keyword * resword = Perfect_Hash::in_word_set(testdata[i],strlen(testdata[i]));
+#else
+ CONST struct js_keyword * resword = in_word_set(testdata[i],strlen(testdata[i]));
+#endif
+ if (i > 0)
+ {
+ if (!resword)
+ exit (1);
+ if (strcmp(testdata[i],resword->name))
+ exit (1);
+ }
+ else
+ {
+ if (resword)
+ exit (1);
+ }
+ }
+ return 0;
+}
OpenPOWER on IntegriCloud