[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/parser-generator fa43f05 301/434: More cpu optimization
From: |
ELPA Syncer |
Subject: |
[elpa] externals/parser-generator fa43f05 301/434: More cpu optimizations |
Date: |
Mon, 29 Nov 2021 16:00:02 -0500 (EST) |
branch: externals/parser-generator
commit fa43f0578cdf3de3fb548ce246c27da078955d3e
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
More cpu optimizations
---
parser-generator-lr.el | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/parser-generator-lr.el b/parser-generator-lr.el
index a101e79..732de8d 100644
--- a/parser-generator-lr.el
+++ b/parser-generator-lr.el
@@ -318,7 +318,9 @@
lr-item-set-index
lr-items
table-lr-items)
- (setq goto-table-table nil)
+ (setq
+ goto-table-table
+ nil)
;; Build list of possible next-symbols
;; here that follows current set
@@ -368,7 +370,7 @@
(let ((prefix-lr-items
(parser-generator-lr--items-for-goto
lr-items
- symbol)))
+ symbol))) ;; TODO Optimize this
;; If a' = GOTO(a, X) is nonempty
(when prefix-lr-items
@@ -619,7 +621,10 @@
(let ((rhs-rest (append (cdr rhs) suffix)))
(let ((rhs-rest-first
(parser-generator--first
- rhs-rest)))
+ rhs-rest
+ nil
+ t
+ t)))
(parser-generator--debug
(message "is non-terminal")
(message "rhs-rest: %s from %s + %s" rhs-rest
(cdr rhs) suffix)
- [elpa] externals/parser-generator ded7700 387/434: Added more test for infix precedence, (continued)
- [elpa] externals/parser-generator ded7700 387/434: Added more test for infix precedence, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 9e8b89b 392/434: More work on exporting LR-parser, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator fc48311 409/434: Added test for FIRST calculation of multiple symbols and e-identifiers, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 6733b57 415/434: Added feature to move lex-analyzer forward, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 9eca533 410/434: Added test and implementation of calculating FIRST on multiple symbols were first is a non-terminal that expands into an e-identifier, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator ca21bcd 412/434: Shortened doc-string, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 0a3f5f5 426/434: Added test for LR(1) PHP 8.0 match grammar, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator c9906f7 420/434: Move order of export of LR lex-analyzer, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator a4c5d9f 429/434: Syntax-directed translations now have access to terminal data if any is available, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 428207c 432/434: Fixed bug with exported lr-parser with partial translation, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator fa43f05 301/434: More cpu optimizations,
ELPA Syncer <=
- [elpa] externals/parser-generator a65b652 307/434: Added TODO-items, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator ac7207a 292/434: Passed translate test on exported parser, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 63bd6c0 423/434: LR-parser now has SDT as optional feature to speed up plain parses, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 9c41807 424/434: Code-styling fix, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 231bf85 422/434: Using (signal) instead of (error) in LR-parser and exported LR-parser when encountering syntax error, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 48f109c 417/434: Fixed typo in exported LR parser, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator da14fbd 431/434: Passing more metadata about terminals to SDT, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator af9ad94 418/434: Move lexer flag now affecting global state, ELPA Syncer, 2021/11/29