[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode b9f74656ad 02/17: Added ONUM regex
From: |
Christian Johansson |
Subject: |
[elpa] externals/phps-mode b9f74656ad 02/17: Added ONUM regex |
Date: |
Tue, 26 Jul 2022 08:44:18 -0400 (EDT) |
branch: externals/phps-mode
commit b9f74656adc28e01e734afa9aa7307b47829f901
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Added ONUM regex
---
phps-mode-lexer.el | 35 +++++++++++++++++++++++++++--------
1 file changed, 27 insertions(+), 8 deletions(-)
diff --git a/phps-mode-lexer.el b/phps-mode-lexer.el
index 679ef90256..a53596ed83 100644
--- a/phps-mode-lexer.el
+++ b/phps-mode-lexer.el
@@ -52,14 +52,6 @@
2147483648
"Limit for 32-bit integer.")
-(defconst phps-mode-lexer--bnum
- "0b[01]+"
- "Boolean number.")
-
-(defconst phps-mode-lexer--hnum
- "0x[0-9a-fA-F]+"
- "Hexadecimal number.")
-
(defconst phps-mode-lexer--lnum
"[0-9]+"
"Long number.")
@@ -75,6 +67,20 @@
phps-mode-lexer--lnum)
"Exponent double number.")
+;; TODO Fix this
+(defconst phps-mode-lexer--hnum
+ "0x[0-9a-fA-F]+"
+ "Hexadecimal number.")
+
+;; TODO Fix this
+(defconst phps-mode-lexer--bnum
+ "0b[01]+"
+ "Boolean number.")
+
+(defconst phps-mode-lexer--onum
+ "0o[0-7]+\\(_[0-7]+\\)*"
+ "Octal number.")
+
(defconst phps-mode-lexer--label
"[A-Za-z_[:nonascii:]][0-9A-Za-z_[:nonascii:]]*"
"Labels are used for names.")
@@ -1250,6 +1256,19 @@
(phps-mode-lexer--return-token 'T_DNUMBER)
(phps-mode-lexer--return-token 'T_LNUMBER))))
+ ;; TODO ONUM here
+ (phps-mode-lexer--match-macro
+ ST_IN_SCRIPTING
+ (looking-at phps-mode-lexer--onum)
+ (let* ((start (match-beginning 0))
+ (end (match-end 0))
+ (data (string-to-number
+ (buffer-substring-no-properties start end)
+ 8)))
+ (if (> data phps-mode-lexer--long-limit)
+ (phps-mode-lexer--return-token 'T_DNUMBER)
+ (phps-mode-lexer--return-token 'T_LNUMBER))))
+
(phps-mode-lexer--match-macro
ST_IN_SCRIPTING
(looking-at phps-mode-lexer--lnum)
- [elpa] externals/phps-mode updated (69d4de374b -> a56b01bd3f), Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode dd4e6c134f 07/17: Added another unit-test for T_READONLY, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode dbd63046ef 14/17: Fixed T_ENUM token length, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode d766293a8d 04/17: Added support for underscores, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode 585bc28fa5 01/17: Added T_ENUM and T_READONLY, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode 534c766344 03/17: Fixed number constants, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode 3a59ef2141 05/17: Added tests for new lexer tokens, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode b9f74656ad 02/17: Added ONUM regex,
Christian Johansson <=
- [elpa] externals/phps-mode 4f936cd5cd 06/17: Fixed byte-compilation issue with new lexer rules, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode 3d4576eac6 08/17: Another fix for readonly, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode e50ecb53be 09/17: More debugging byte-compilation issue, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode 3f9898cd2a 11/17: Added instructions of how to update lexer rules, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode f070d688a4 13/17: Added TODO items, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode e84ba21c7d 15/17: Updated TODO, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode a56b01bd3f 17/17: Updated version and date, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode e5fda9efb3 10/17: New lexer tokens working after byte-compilation, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode 777c88da24 12/17: Fixed byte-compilation warning, Christian Johansson, 2022/07/26
- [elpa] externals/phps-mode a682f890c1 16/17: Fixed indentation for enumerations, Christian Johansson, 2022/07/26