summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emacs/else-mode/files/C-cust.lse')
-rw-r--r--app-emacs/else-mode/files/C-cust.lse443
1 files changed, 443 insertions, 0 deletions
diff --git a/app-emacs/else-mode/files/C-cust.lse b/app-emacs/else-mode/files/C-cust.lse
new file mode 100644
index 0000000..2ff473d
--- /dev/null
+++ b/app-emacs/else-mode/files/C-cust.lse
@@ -0,0 +1,443 @@
+;; Copyright (C) 2001, 2004 Peter Milliken
+;;
+;; Author: Peter Milliken <peterm@resmed.com.au>,
+;; <peterm@unwired.com.au>
+;;
+;; Keywords: language sensitive abbreviation template placeholder token
+;;
+;; GNU Emacs 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.
+
+;; GNU Emacs 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.
+
+;;******************************************************************************
+;; These definitions are my personal customisations for the language. This is
+;; where you should place YOUR customisations.
+;;
+;; Sometimes there is a definition(s) in here that override definitions in the
+;; main language template file that are here to make that definition more
+;; "usable" - this is because I (primarily) try and generate/maintain the main
+;; .lse files from EBNF definitions of the language. Sometimes I just can't
+;; express the appropriate customisation in the EBNF and so I am forced to
+;; override the placeholder definition in this file.
+;;
+;; This entries in this file should be used as an example of how to create your
+;; own customisations. I would caution that you don't delete any definitions
+;; though until you are sure that your edit sessions will not be adversely
+;; affected. The best way to check out the effects of a delete is to "compile"
+;; (else-compile-buffer) the "delete" command for that definition (this will
+;; remove it from your edit session and you can nolonger access the definition
+;; until next you load language template files) and then see whether anything
+;; has been "lost" in your code generation ability i.e. say you think you don't
+;; need the definition for placeholder XXX, just place the following lines at
+;; the end of one of your source files (when ELSE is enabled for that buffer)
+;; and perform a compile (M-x else-compile-buffer) with the cursor positioned at
+;; the beginning of the line:
+;;
+;; DELETE PLACEHOLDER XXX -
+;; /LANGUAGE = "C" -
+;;
+;; This will delete definition XXX from memory.
+;;
+;;******************************************************************************
+DELETE PLACEHOLDER COMPILATION_UNIT -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER COMPILATION_UNIT -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION="" -
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "[module_level_comments]"
+ "[{include_files}...]"
+ " "
+ "[{data_types_or_declarations}...]"
+ " "
+ "[{function_definition}...]"
+ " "
+ "[main_function]"
+
+END DEFINE
+
+DELETE PLACEHOLDER #INCLUDE -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER #INCLUDE -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION="" -
+ /DUPLICATION=VERTICAL -
+ /SEPARATOR="" -
+ /TYPE=MENU
+
+ "#include <{file_name}>"
+ "#include "{file_name}""
+
+END DEFINE
+
+DELETE PLACEHOLDER FILE_NAME -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER FILE_NAME -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION="" -
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=TERMINAL
+
+ "Enter the name of the include file here i.e. stdio.h"
+
+END DEFINE
+
+
+DELETE PLACEHOLDER MODULE_LEVEL_COMMENTS -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER MODULE_LEVEL_COMMENTS -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "/* ===[ {module} ]=============================================================="
+ ""
+ "@@Description: {text}"
+ ""
+ "@@Revisions:"
+ ""
+ "@@@@REV DATE BY DESCRIPTION"
+ "@@------ --------- --- ------------------------------------------------"
+ "@@[text] [text] [text] [text]"
+ "@@-----------------------------------------------------------------------------"
+ ""
+ "@@@@This item is the property of ResMed Ltd, and contains confidential and trade"
+ "@@@@secret information. It may not be transfered from the custody or control of"
+ "@@@@ResMed except as authorised in writing by an officer of ResMed. Neither this"
+ "@@@@item nor the information it contains may be used, transfered, reproduced,"
+ "@@@@published, or disclosed, in whole or in part, and directly or indirectly,"
+ "@@@@except as expressly authorised by an officer of ResMed, pursuant to written"
+ "@@@@agreement."
+ ""
+ "@@@@Copyright (c) 2004 ResMed Ltd. All rights reserved."
+ "@@===========================================================================*/"
+ ""
+
+END DEFINE
+
+DELETE PLACEHOLDER MODULE -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER MODULE -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION="" -
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=TERMINAL
+
+ "Enter the name of the module i.e. gs_lib.c"
+
+END DEFINE
+
+DELETE PLACEHOLDER FUNCTION_DEFINITION -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER FUNCTION_DEFINITION -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION="" -
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "[declaration_specifiers] {declarator}"
+ "[declaration]..."
+ "{"
+ " [declaration]..."
+ " [statement]..."
+ "}"
+
+END DEFINE
+
+DELETE TOKEN MAIN_FUNCTION_DEF -
+ /LANGUAGE="C" -
+DEFINE TOKEN MAIN_FUNCTION_DEF -
+ /LANGUAGE="C" -
+ /DESCRIPTION="defines a main function"
+
+ "[function_level_comments]"
+ "{main() OR main function that accept arguments from the command line}"
+ "{"
+ " [block_decl]..."
+ ""
+ " {statement}..."
+ "}"
+
+END DEFINE
+
+DELETE PLACEHOLDER FUNCTION_LEVEL_COMMENTS -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER FUNCTION_LEVEL_COMMENTS -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "/* ===[ {text} ]==============================================="
+ ""
+ "@@@Summary: {text}"
+ ""
+ "@@@Description: {text}"
+ ""
+ "@@@Return Value: {text} always returns P_SUCCESS"
+ ""
+ "@@@========================================================================== */"
+
+END DEFINE
+
+DELETE PLACEHOLDER CONDITIONAL_EXPRESSION -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER CONDITIONAL_EXPRESSION -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION="" -
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=MENU -
+
+ "logical_or_expression"/PLACEHOLDER
+ "{logical_or_expression} ? {expression} : {conditional_expression}"
+
+END DEFINE
+
+DELETE PLACEHOLDER CASE_PART -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER CASE_PART -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=VERTICAL -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "case {constant_expression}:"
+ "[case {constant_expression}:]..."
+ " [statement]..."
+ " break;"
+
+END DEFINE
+
+DELETE PLACEHOLDER DEFAULT_PART -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER DEFAULT_PART -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "default :"
+ " [statement]..."
+ " break;"
+
+END DEFINE
+
+DELETE PLACEHOLDER WHILE_STATEMENT -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER WHILE_STATEMENT -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "while ({expression})"
+ "{"
+ " {statement}..."
+ "}"
+
+END DEFINE
+
+
+DELETE PLACEHOLDER IF_STATEMENT -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER IF_STATEMENT -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "if ({expression})"
+ "{"
+ " {statement}..."
+ "}"
+ "[elsif_part]..."
+ "[else_part]"
+
+END DEFINE
+
+DELETE PLACEHOLDER ELSIF_PART -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER ELSIF_PART -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=VERTICAL -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "else if ({expression})"
+ "{"
+ " {statement}..."
+ "}"
+
+END DEFINE
+
+DELETE PLACEHOLDER ELSE_PART -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER ELSE_PART -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "else"
+ "{"
+ " {statement}..."
+ "}"
+
+END DEFINE
+
+DELETE PLACEHOLDER SWITCH_STATEMENT -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER SWITCH_STATEMENT -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "switch ({expression})"
+ "{"
+ " [case_part]..."
+ " [default_part]"
+ "}"
+
+END DEFINE
+
+DELETE PLACEHOLDER DO_STATEMENT -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER DO_STATEMENT -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "do"
+ "{"
+ " {statement}..."
+ "} while ({expression});"
+
+END DEFINE
+
+DELETE PLACEHOLDER DEFAULT_PART -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER DEFAULT_PART -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+ /RUN_CODE=eut-test1/BEFORE
+ /RUN_CODE=eut-test2/AFTER
+ /RUN_CODE=eut-test3/ONINSERT
+
+ "default :"
+ " [statement]..."
+ " break;"
+
+END DEFINE
+
+
+DELETE PLACEHOLDER FOR_STATEMENT -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER FOR_STATEMENT -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "for ([loop_init]; [loop_control]; [expression])"
+ "{"
+ " {statement}..."
+ "}"
+
+END DEFINE
+
+
+DELETE PLACEHOLDER PROTOTYPE_DECLARATION -
+ /LANGUAGE="C" -
+DEFINE PLACEHOLDER PROTOTYPE_DECLARATION -
+ /LANGUAGE="C" -
+ /NOAUTO_SUBSTITUTE -
+ /DESCRIPTION=""
+ /DUPLICATION=CONTEXT_DEPENDENT -
+ /SEPARATOR="" -
+ /TYPE=NONTERMINAL -
+
+ "[function_level_comments]"
+ "[static_or_extern] {data_type_specifier} [*]{function_name} ([{parameter_declaration}...[, ...]]);"
+
+END DEFINE
+
+DELETE TOKEN COMMENT -
+ /LANGUAGE="C" -
+DEFINE TOKEN COMMENT -
+ /LANGUAGE="C" -
+ /PLACEHOLDER=COMMENT_STATEMENT
+
+END DEFINE
+
+DELETE TOKEN C -
+ /LANGUAGE="C" -
+DEFINE TOKEN C -
+ /LANGUAGE="C" -
+
+ "/* {text} */"
+
+END DEFINE
+
+DELETE TOKEN P -
+ /LANGUAGE="C" -
+DEFINE TOKEN P -
+ /LANGUAGE="C" -
+ /RUN_CODE=eut-test2/AFTER
+
+ "p_report_format(0, rinfo_p, str);"
+
+END DEFINE
+