From 39fdcb0c57bfeba598f00d77f190e731f26b25a1 Mon Sep 17 00:00:00 2001 From: sola.lu <sola.lu@greentest.com.cn> Date: 周四, 24 4月 2025 18:25:01 +0800 Subject: [PATCH] 1.修改一下,把当前库改为刚从origin仓库拉去下来,然后添加了cmake构建文件的状态。 --- libscpi/src/scpi.g | 17 ++++++++++++----- 1 files changed, 12 insertions(+), 5 deletions(-) diff --git a/libscpi/src/scpi.g b/libscpi/src/scpi.g index 3d44bcf..a3993ff 100644 --- a/libscpi/src/scpi.g +++ b/libscpi/src/scpi.g @@ -10,7 +10,7 @@ programMessageUnit - : WS* programHeader QUESTION? (WS programData (COMMA programData)*)? + : WS* programHeader (WS programData (COMMA programData)*)? ; programHeader @@ -19,11 +19,11 @@ ; compoundProgramHeader - : COLON? PROGRAM_MNEMONIC (COLON PROGRAM_MNEMONIC)* + : COLON? PROGRAM_MNEMONIC (COLON PROGRAM_MNEMONIC)* QUESTION? ; commonProgramHeader - : STAR PROGRAM_MNEMONIC + : STAR PROGRAM_MNEMONIC QUESTION? ; programDataSeparator @@ -39,7 +39,7 @@ | characterProgramData | decimalNumericProgramData | stringProgramData -// | arbitraryBlockProgramData + | arbitraryBlockProgramData | expressionProgramData // | suffixProgramData ; @@ -69,7 +69,12 @@ expressionProgramData : PROGRAM_EXPRESSION - ; + ; + +// support only nonzero prefix +arbitraryBlockProgramData + : SHARP NONZERO_DIGIT NUMBER .* + ; PROGRAM_MNEMONIC : ALPHA (ALPHA | DIGIT | UNDERSCORE)*; HEXNUM : SHARP H HEXDIGIT*; @@ -108,6 +113,8 @@ fragment ALPHA : ('a'..'z'|'A'..'Z'); fragment DIGIT : ('0'..'9'); +fragment NONZERO_DIGIT : ('1'..'9'); + fragment HEXDIGIT : (DIGIT | 'a'..'f' | 'A'..'F'); fragment OCTDIGIT : ('0'..'7'); fragment BINDIGIT : ('0' | '1'); -- Gitblit v1.9.1