[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode 442ad93cb2 018/212: Fix for function paramete
From: |
Christian Johansson |
Subject: |
[elpa] externals/phps-mode 442ad93cb2 018/212: Fix for function parameter formatting in AST |
Date: |
Wed, 26 Jan 2022 01:50:13 -0500 (EST) |
branch: externals/phps-mode
commit 442ad93cb27273dce879dd5a42bffba61611ca8b
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Fix for function parameter formatting in AST
---
phps-mode-ast.el | 50 ++++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 48 insertions(+), 2 deletions(-)
diff --git a/phps-mode-ast.el b/phps-mode-ast.el
index 45cf992c55..ebdac2ac5e 100644
--- a/phps-mode-ast.el
+++ b/phps-mode-ast.el
@@ -46,6 +46,9 @@
"Tree for current buffer.")
+;; Syntax directed translation for grammar
+
+
;; top_statement_list -> (top_statement_list top_statement)
(puthash
79
@@ -169,7 +172,15 @@
'start
(car (cdr (nth 9 terminals)))
'end
- (car (cdr (nth 11 terminals))))))
+ (car (cdr (nth 11 terminals)))
+ 'returns-reference-p
+ (not (equal (nth 1 args) nil))
+ 'parameters
+ (nth 5 args)
+ 'return-type
+ (nth 7 args)
+ 'body
+ (nth 10 args))))
;; (message "Function: %S" ast-object)
;; (message "args: %S" args)
;; (message "terminals: %S" terminals)
@@ -240,6 +251,42 @@
ast-object))
phps-mode-parser--table-translations)
+;; 231: parameter_list -> (non_empty_parameter_list possible_comma)
+(puthash
+ 231
+ (lambda(args _terminals)
+ (if (listp (car (nth 0 args)))
+ (nth 0 args)
+ (list (nth 0 args))))
+ phps-mode-parser--table-translations)
+
+; 234: non_empty_parameter_list -> (non_empty_parameter_list ","
attributed_parameter)
+(puthash
+ 234
+ (lambda(args _terminals)
+ (list (nth 0 args) (nth 2 args)))
+ phps-mode-parser--table-translations)
+
+;; 241: parameter -> (optional_visibility_modifier
optional_type_without_static is_reference is_variadic T_VARIABLE
backup_doc_comment)
+(puthash
+ 241
+ (lambda(args _terminals)
+ ;; (message "parameter: %S %S" args _terminals)
+ (let ((ast-object
+ (list
+ 'visibility
+ (nth 0 args)
+ 'type
+ (nth 1 args)
+ 'is-reference
+ (nth 2 args)
+ 'is-variadic
+ (nth 3 args)
+ 'name
+ (nth 4 args))))
+ ast-object))
+ phps-mode-parser--table-translations)
+
;; class_statement_list -> (class_statement_list class_statement)
(puthash
276
@@ -275,7 +322,6 @@
ast-object))
phps-mode-parser--table-translations)
-
;; expr -> (variable "=" expr)
(puthash
337
- [elpa] externals/phps-mode 8c1f529f87 145/212: Passing indent for line after ending of statement / expression with trailing closing bracket, (continued)
- [elpa] externals/phps-mode 8c1f529f87 145/212: Passing indent for line after ending of statement / expression with trailing closing bracket, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode d7aa22d251 146/212: Added two new failing tests for indentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode c453932f32 139/212: Added TODO item, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 8374026917 166/212: Improved indentation on lines starting with a closing square bracket, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 2afb7dc87a 002/212: Generating basic imenu-index via parser SDT, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 41b1566c40 010/212: Imenu generation via parser SDT passing more tests, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 8f9870fb9b 013/212: Parser SDT does not use global variables, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 4753734b0a 006/212: Moved syntax coloring to separate file, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode d037aa09bc 023/212: Added bookkeeping via parser SDT foreach ($x as $y) {}, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 3d54b6ff01 022/212: Passed another test for bookkeeping generated via parser SDT, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 442ad93cb2 018/212: Fix for function parameter formatting in AST,
Christian Johansson <=
- [elpa] externals/phps-mode 2a4d5dea37 019/212: Passed bookkeeping of function arguments, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode c29e35fea2 021/212: More work on bookkeeping, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 0daaa97f8d 025/212: SDT for for() loop started, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode fa3681141b 027/212: Passed test for bookkeeping of conditional assignment via parser SDT, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode fc4c763d68 030/212: Added SDT for class properties, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode f7c261cee1 032/212: Generate parser command now compatible with latest emacs-parser-generator, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode f82c9a377d 033/212: Re-generated parser to verify automation functionality, improved automation documentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode f858060096 034/212: More work on bookkeeping generated from parser SDT, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode c83b1c264e 060/212: Fixed SDT for isset_variables, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 8fa61fa1f2 063/212: Passing bookkeeping of interface method arguments, Christian Johansson, 2022/01/26