diff options
Diffstat (limited to 'lisp/cedet/semantic/wisent/js-wy.el')
-rw-r--r-- | lisp/cedet/semantic/wisent/js-wy.el | 106 |
1 files changed, 71 insertions, 35 deletions
diff --git a/lisp/cedet/semantic/wisent/js-wy.el b/lisp/cedet/semantic/wisent/js-wy.el index b523db8771b..c8dded08d1f 100644 --- a/lisp/cedet/semantic/wisent/js-wy.el +++ b/lisp/cedet/semantic/wisent/js-wy.el @@ -1,7 +1,7 @@ ;;; semantic/wisent/js-wy.el --- Generated parser support file ;; Copyright (C) 2005, 2009-2011 Free Software Foundation, Inc. -;; Copyright (C) Ecma International. +;; Copyright (C) 1998-2011 Ecma International ;; This file is part of GNU Emacs. @@ -20,9 +20,45 @@ ;;; Commentary: ;; -;; This file was generated from etc/grammars/javascript-jv.wy. +;; This file was generated from admin/grammars/js.wy. + +;; It is derived from the grammar in the ECMAScript Language +;; Specification published at +;; +;; http://www.ecma-international.org/publications/standards/Ecma-262.htm +;; +;; and redistributed under the following license: +;; +;; Redistribution and use in source and binary forms, with or without +;; modification, are permitted provided that the following conditions +;; are met: +;; +;; 1. Redistributions of source code must retain the above copyright +;; notice, this list of conditions and the following disclaimer. +;; +;; 2. Redistributions in binary form must reproduce the above +;; copyright notice, this list of conditions and the following +;; disclaimer in the documentation and/or other materials provided +;; with the distribution. +;; +;; 3. Neither the name of the authors nor Ecma International may be +;; used to endorse or promote products derived from this software +;; without specific prior written permission. THIS SOFTWARE IS +;; PROVIDED BY THE ECMA INTERNATIONAL "AS IS" AND ANY EXPRESS OR +;; IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;; ARE DISCLAIMED. IN NO EVENT SHALL ECMA INTERNATIONAL BE LIABLE FOR +;; ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +;; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +;; OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +;; BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +;; LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +;; (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE +;; USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH +;; DAMAGE. ;;; Code: + (require 'semantic/lex) ;;; Prologue @@ -370,7 +406,7 @@ '((parse-stream . wisent-parse-stream))) (setq semantic-parser-name "LALR" semantic--parse-table wisent-javascript-jv-wy--parse-table - semantic-debug-parser-source "wisent-javascript-jv.wy" + semantic-debug-parser-source "js.wy" semantic-flex-keywords-obarray wisent-javascript-jv-wy--keyword-table semantic-lex-types-obarray wisent-javascript-jv-wy--token-table) ;; Collect unmatched syntax lexical tokens @@ -380,38 +416,6 @@ ;;; Analyzers -;; -(define-lex-keyword-type-analyzer wisent-javascript-jv-wy--<keyword>-keyword-analyzer - "keyword analyzer for <keyword> tokens." - "\\(\\sw\\|\\s_\\)+") - -(define-lex-block-type-analyzer wisent-javascript-jv-wy--<block>-block-analyzer - "block analyzer for <block> tokens." - "\\s(\\|\\s)" - '((("(" OPEN_PARENTHESIS PAREN_BLOCK) - ("{" START_BLOCK BRACE_BLOCK) - ("[" OPEN_SQ_BRACKETS BRACK_BLOCK)) - (")" CLOSE_PARENTHESIS) - ("}" END_BLOCK) - ("]" CLOSE_SQ_BRACKETS)) - ) - -(define-lex-regex-type-analyzer wisent-javascript-jv-wy--<symbol>-regexp-analyzer - "regexp analyzer for <symbol> tokens." - "\\(\\sw\\|\\s_\\)+" - nil - 'VARIABLE) - -(define-lex-sexp-type-analyzer wisent-javascript-jv-wy--<string>-sexp-analyzer - "sexp analyzer for <string> tokens." - "\\s\"" - 'STRING) - -(define-lex-regex-type-analyzer wisent-javascript-jv-wy--<number>-regexp-analyzer - "regexp analyzer for <number> tokens." - semantic-lex-number-expression - nil - 'NUMBER) (define-lex-string-type-analyzer wisent-javascript-jv-wy--<punctuation>-string-analyzer "string analyzer for <punctuation> tokens." @@ -458,6 +462,38 @@ (ASSIGN_SYMBOL . "=")) 'punctuation) +(define-lex-block-type-analyzer wisent-javascript-jv-wy--<block>-block-analyzer + "block analyzer for <block> tokens." + "\\s(\\|\\s)" + '((("(" OPEN_PARENTHESIS PAREN_BLOCK) + ("{" START_BLOCK BRACE_BLOCK) + ("[" OPEN_SQ_BRACKETS BRACK_BLOCK)) + (")" CLOSE_PARENTHESIS) + ("}" END_BLOCK) + ("]" CLOSE_SQ_BRACKETS)) + ) + +(define-lex-regex-type-analyzer wisent-javascript-jv-wy--<symbol>-regexp-analyzer + "regexp analyzer for <symbol> tokens." + "\\(\\sw\\|\\s_\\)+" + nil + 'VARIABLE) + +(define-lex-regex-type-analyzer wisent-javascript-jv-wy--<number>-regexp-analyzer + "regexp analyzer for <number> tokens." + semantic-lex-number-expression + nil + 'NUMBER) + +(define-lex-sexp-type-analyzer wisent-javascript-jv-wy--<string>-sexp-analyzer + "sexp analyzer for <string> tokens." + "\\s\"" + 'STRING) + +(define-lex-keyword-type-analyzer wisent-javascript-jv-wy--<keyword>-keyword-analyzer + "keyword analyzer for <keyword> tokens." + "\\(\\sw\\|\\s_\\)+") + ;;; Epilogue ;; |