[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode dd2fadefe7 048/135: Bookkeeping class propert
From: |
Christian Johansson |
Subject: |
[elpa] externals/phps-mode dd2fadefe7 048/135: Bookkeeping class properties |
Date: |
Sun, 29 Jan 2023 03:11:03 -0500 (EST) |
branch: externals/phps-mode
commit dd2fadefe7cb37ce9bda8e39e37f30d50b73df96
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Bookkeeping class properties
---
phps-mode-parser-sdt.el | 39 +++++++++++++++++++++++++++++----------
1 file changed, 29 insertions(+), 10 deletions(-)
diff --git a/phps-mode-parser-sdt.el b/phps-mode-parser-sdt.el
index 8f2d791aac..5720b3b4d9 100644
--- a/phps-mode-parser-sdt.el
+++ b/phps-mode-parser-sdt.el
@@ -697,11 +697,11 @@
(phps-mode-parser-sdt--get-symbol-uri
symbol-name
symbol-scope)))
- (message
- "assign uri: %S from %S + %S"
- symbol-uri
- symbol-name
- symbol-scope)
+ ;; (message
+ ;; "assign uri: %S from %S + %S"
+ ;; symbol-uri
+ ;; symbol-name
+ ;; symbol-scope)
(if (gethash symbol-uri phps-mode-parser-sdt-bookkeeping)
(puthash
symbol-uri
@@ -2035,9 +2035,6 @@
(puthash
185
(lambda(args terminals)
-
- ;; TODO Should use stacks to fix symbol name-space
-
;; Go through stacks and modify symbol name-spaces
;; but only for non-super-global variables
(let ((class-name (nth 1 args)))
@@ -2052,6 +2049,9 @@
(let ((symbol-scope (car (cdr symbol-list))))
(push
(list 'class class-name)
+ symbol-scope)
+ (setcar
+ (cdr symbol-list)
symbol-scope))))))
(when phps-mode-parser-sdt--bookkeeping-symbol-stack
(dolist (
@@ -2064,6 +2064,9 @@
(let ((symbol-scope (car (cdr symbol-list))))
(push
(list 'class class-name)
+ symbol-scope)
+ (setcar
+ (cdr symbol-list)
symbol-scope)))))))
`(
@@ -3251,6 +3254,23 @@
(puthash
340
(lambda(args terminals)
+ ;; Save variable declaration in bookkeeping buffer
+ (let* ((symbol-name
+ (nth 0 args))
+ (symbol-start
+ (car (cdr (car terminals))))
+ (symbol-end
+ (cdr (cdr (car terminals))))
+ (symbol-scope
+ phps-mode-parser-sdt--bookkeeping-namespace))
+ (push
+ (list
+ symbol-name
+ symbol-scope
+ symbol-start
+ symbol-end)
+ phps-mode-parser-sdt--bookkeeping-symbol-assignment-stack))
+
`(
ast-type
property-assigned-variable
@@ -3265,8 +3285,7 @@
ast-start
,(car (cdr (nth 0 terminals)))
ast-end
- ,(cdr (cdr (nth 0 terminals)))
- ))
+ ,(cdr (cdr (nth 0 terminals)))))
phps-mode-parser--table-translations)
;; 341 ((class_const_list) (class_const_list "," class_const_decl))
- [elpa] externals/phps-mode e8a5dbe153 126/135: Fix for trait and interface imenu, (continued)
- [elpa] externals/phps-mode e8a5dbe153 126/135: Fix for trait and interface imenu, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 579034d1c6 127/135: Passing imenu test via SDT, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode fb9a181135 088/135: Passed more bookkeeping tsts, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode e6bc401d0b 068/135: Work on improving test for global variable bookkeeping, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 4949daefd9 101/135: Passing another SDT imenu test, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode c0c37bafd9 110/135: Added some TODO items, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 76ef8cceac 124/135: More fixes in code, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 3b6eb46d4c 129/135: Added new MVP bookkeeping and imenu test, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode f9ddef260c 039/135: Passing first bookkeeping test using SDT generated bookkeeping, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode fb42b49970 044/135: Added more TODO items, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode dd2fadefe7 048/135: Bookkeeping class properties,
Christian Johansson <=
- [elpa] externals/phps-mode 804a0dbdb9 074/135: Added static uri for symbol names, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 7bb676dc8b 076/135: Bookkeeping for anonymous function passing, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode f86d8dc6ac 078/135: More work on arrow function variable uri, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 787aaa2bb4 081/135: Passing another bookkeeping test, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 66c02b9be1 083/135: Passing test for bookkeeping of interface variables, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 1afe6aaec7 086/135: Passing more tests for static variables, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode d456658676 089/135: Passing bookkeeping test for $this inside arrow function, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode f4be94ccfc 094/135: Passing bookkeeping test for class properties inside conditional expression, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 18f1f12fc6 096/135: Added new bookkeeping test for class parameters in constructor method, Christian Johansson, 2023/01/29
- [elpa] externals/phps-mode 6d3cadbdf0 104/135: More integration of new imenu and bookkeeping via SDT, Christian Johansson, 2023/01/29