# BNF grammar for Java # # Copyright (C) 2000, 2001 Paul F. Kinnucan, Jr. # Copyright (C) 2001 David Ponce # # Author: Paul F. Kinnucan, Jr. # David Ponce # # $Id: java.bnf,v 1.15 2002/05/15 19:21:02 ponced Exp $ # # java.bnf is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This software is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Emacs; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. # -------- # Settings # -------- %outputfile semantic-java.el %parsetable semantic-toplevel-java-bovine-table %keywordtable semantic-java-keyword-table %languagemode java-mode %setupfunction semantic-default-java-setup %(progn (setq ;; Java numbers semantic-number-expression semantic-java-number-regexp ;; Java is case sensitive semantic-case-fold nil ;; special handling of multiple variable declarations/statement semantic-expand-nonterminal 'semantic-expand-java-nonterminal ;; function to use when creating items in imenu semantic-imenu-summary-function 'semantic-prototype-nonterminal ;; function to use for creating the imenu imenu-create-index-function 'semantic-create-imenu-index ;; Character used to separation a parent/child relationship semantic-type-relation-separator-character '(".") semantic-command-separation-character ";" document-comment-start "/**" document-comment-line-prefix " *" document-comment-end " */" ;; speedbar and imenu buckets name semantic-symbol->name-assoc-list-for-type-parts ;; In type parts '((type . "Classes") (variable . "Variables") (function . "Methods")) semantic-symbol->name-assoc-list ;; Everywhere (append semantic-symbol->name-assoc-list-for-type-parts '((include . "Imports") (package . "Package"))) ;; Semantic navigation inside 'type children senator-step-at-token-ids '(function variable) ) )% %token ABSTRACT "abstract" %put ABSTRACT summary "Class|Method declaration modifier: abstract {class|} ..." %token BOOLEAN "boolean" %put BOOLEAN summary "Primitive logical quantity type (true or false)" %token BREAK "break" %put BREAK summary "break [