[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/parser-generator 4534b1f192 1/3: Lexer get token functi
From: |
Christian Johansson |
Subject: |
[elpa] externals/parser-generator 4534b1f192 1/3: Lexer get token function now accepts nil as the semantical value for a token |
Date: |
Sat, 14 Dec 2024 03:18:40 -0500 (EST) |
branch: externals/parser-generator
commit 4534b1f19244a565894b6a5d4cd71185bb278fcd
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Lexer get token function now accepts nil as the semantical value for a token
---
docs/Lexical-Analysis.md | 4 ++++
parser-generator-lex-analyzer.el | 8 +-------
parser-generator-lr-export.el | 2 --
3 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/docs/Lexical-Analysis.md b/docs/Lexical-Analysis.md
index aae2dacbd0..e853191c6a 100644
--- a/docs/Lexical-Analysis.md
+++ b/docs/Lexical-Analysis.md
@@ -122,4 +122,8 @@ Returns the next token in stream and moves the lexical
analyzer index one point
(parser-generator-lex-analyzer--pop-token)))
```
+## Get Token
+
+Specified in the variable `parser-generator-lex-analyzer--get-function` as a
function. Returns the semantical value for the token. For instance the token
might be a `('T_STRING 1 . 5)` but it's semantical value might be `"Emacs"`,
another example `('T_INTEGER 1 . 2)` might be `25`, another example
`('T_BOOLEAN 1 . 4)` might be `nil` or `t`.
+
[Back to start](../../../)
diff --git a/parser-generator-lex-analyzer.el b/parser-generator-lex-analyzer.el
index 2a38929f86..920100beb0 100644
--- a/parser-generator-lex-analyzer.el
+++ b/parser-generator-lex-analyzer.el
@@ -18,7 +18,7 @@
(defvar
parser-generator-lex-analyzer--get-function
nil
- "Get token contents. Anything other than nil is expected.")
+ "Get token contents. Any return is valid even nil.")
(defvar
parser-generator-lex-analyzer--function
@@ -89,12 +89,6 @@
(car (cdr error)))
token
(car (cdr error))))))
- (unless meta-information
- (signal
- 'error
- (list
- (format "Could not find any token meta-information for: %s" token)
- token)))
meta-information))
(defun parser-generator-lex-analyzer--peek-next-look-ahead ()
diff --git a/parser-generator-lr-export.el b/parser-generator-lr-export.el
index b522693468..d5e3e25dec 100644
--- a/parser-generator-lr-export.el
+++ b/parser-generator-lr-export.el
@@ -239,8 +239,6 @@
\"Lex-analyze failed to get token meta-data of %s, error: %s\"
token
(car (cdr error)))))
- (unless meta-information
- (error \"Could not find any token meta-information for: %s\" token))
meta-information))\n")
;; Lex-Analyzer Reset Function