summaryrefslogtreecommitdiff
path: root/tests/jscript.gperf
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2000-08-19 06:20:11 +0000
committerBruno Haible <bruno@clisp.org>2000-08-19 06:20:11 +0000
commit501ee3e64033e900181aaebd7ae44dbcacccca9d (patch)
tree2f1dfc500f54d083dba1a0ebb13b0e418631b6d4 /tests/jscript.gperf
downloadgperf-501ee3e64033e900181aaebd7ae44dbcacccca9d.tar.gz
Initial revision
Diffstat (limited to 'tests/jscript.gperf')
-rw-r--r--tests/jscript.gperf73
1 files changed, 73 insertions, 0 deletions
diff --git a/tests/jscript.gperf b/tests/jscript.gperf
new file mode 100644
index 0000000..6f420d8
--- /dev/null
+++ b/tests/jscript.gperf
@@ -0,0 +1,73 @@
+%{
+/* Command-line: gperf -k'1,2,$' -t -p -K 'name' -H 'js_kw_hash' -N 'js_kw_lookup' -a -g jscript.gperf */
+%}
+struct js_keyword {
+ char * name;
+ int token;
+}
+
+%%
+# Javascript reserved words, see "keywords.html"
+abstract, TK_ABSTRACT
+boolean, TK_BOOLEAN
+break, TK_BREAK
+byte, TK_BYTE
+case, TK_CASE
+catch, TK_CATCH
+char, TK_CHAR
+class, TK_CLASS
+const, TK_CONST
+continue, TK_CONTINUE
+default, TK_DEFAULT
+do, TK_DO
+double, TK_DOUBLE
+else, TK_ELSE
+extends, TK_EXTENDS
+false, TK_FALSE
+final, TK_FINAL
+finally, TK_FINALLY
+float, TK_FLOAT
+for, TK_FOR
+function, TK_FUNCTION
+goto, TK_GOTO
+if, TK_IF
+implements, TK_IMPLEMENTS
+import, TK_IMPORT
+in, TK_IN
+instanceof, TK_INSTANCEOF
+int, TK_INT
+interface, TK_INTERFACE
+long, TK_LONG
+native, TK_NATIVE
+new, TK_NEW
+null, TK_NULL
+package, TK_PACKAGE
+private, TK_PRIVATE
+protected, TK_PROTECTED
+public, TK_PUBLIC
+return, TK_RETURN
+short, TK_SHORT
+static, TK_STATIC
+super, TK_SUPER
+switch, TK_SWITCH
+synchronized, TK_SYNCHRONIZED
+this, TK_THIS
+throw, TK_THROW
+throws, TK_THROWS
+transient, TK_TRANSIENT
+true, TK_TRUE
+try, TK_TRY
+var, TK_VAR
+void, TK_VOID
+while, TK_WHILE
+with, TK_WITH
+%%
+
+int js_keyword_lookup (register const char *str, register int len)
+{
+ struct js_keyword * keyword = js_kw_lookup(str,len);
+ if (keyword)
+ return keyword->token;
+ else
+ return TK_IDENT;
+}