diff options
Diffstat (limited to 'src/boot/strap')
-rw-r--r-- | src/boot/strap/parser.clisp | 22 | ||||
-rw-r--r-- | src/boot/strap/tokens.clisp | 10 | ||||
-rw-r--r-- | src/boot/strap/utility.clisp | 4 |
3 files changed, 26 insertions, 10 deletions
diff --git a/src/boot/strap/parser.clisp b/src/boot/strap/parser.clisp index 3d8d15f8..a91db6cc 100644 --- a/src/boot/strap/parser.clisp +++ b/src/boot/strap/parser.clisp @@ -396,6 +396,25 @@ (AND (OR (|bpSexp|) (|bpTrap|)) (|bpPush| (|bfSymbol| (|bpPop1|))))) (T (|bpString|)))) +(DEFUN |bpChar| () + (PROG (|ISTMP#1| |s| |a|) + (DECLARE (SPECIAL |$stok| |$ttok|)) + (RETURN + (COND + ((AND (CONSP |$stok|) (EQ (CAR |$stok|) 'ID) (EQ |$ttok| '|char|)) + (SETQ |a| (|bpState|)) + (COND + ((|bpApplication|) (SETQ |s| (|bpPop1|)) + (COND + ((AND (CONSP |s|) (EQ (CAR |s|) '|char|) + (PROGN + (SETQ |ISTMP#1| (CDR |s|)) + (AND (CONSP |ISTMP#1|) (NULL (CDR |ISTMP#1|))))) + (|bpPush| |s|)) + (T (|bpRestore| |a|) NIL))) + (T NIL))) + (T NIL))))) + (DEFUN |bpExportItemTail| () (OR (AND (|bpEqKey| 'BEC) (OR (|bpAssign|) (|bpTrap|)) @@ -976,7 +995,8 @@ (|bpPush| (|bfDTuple| (|bpPop1|)))))) (DEFUN |bpPattern| () - (OR (|bpBracketConstruct| #'|bpPatternL|) (|bpName|) (|bpConstTok|))) + (OR (|bpBracketConstruct| #'|bpPatternL|) (|bpChar|) (|bpName|) + (|bpConstTok|))) (DEFUN |bpEqual| () (AND (|bpEqKey| 'SHOEEQ) (OR (|bpApplication|) (|bpConstTok|) (|bpTrap|)) diff --git a/src/boot/strap/tokens.clisp b/src/boot/strap/tokens.clisp index fac4526d..d645f51f 100644 --- a/src/boot/strap/tokens.clisp +++ b/src/boot/strap/tokens.clisp @@ -99,7 +99,7 @@ (PROGN (SETQ |a| (MAKE-ARRAY 256)) (SETQ |b| (MAKE-ARRAY 1)) - (SETF (ELT |b| 0) (MAKE-STRING 0)) + (SETF (ELT |b| 0) (|makeString| 0)) (LET ((|i| 0)) (LOOP (COND ((> |i| 255) (RETURN NIL)) @@ -194,10 +194,10 @@ (LIST '|list| 'LIST) (LIST '|listEq?| 'EQUAL) (LIST '|lowerCase?| 'LOWER-CASE-P) (LIST '|makeSymbol| 'INTERN) (LIST '|maxIndex| 'MAXINDEX) (LIST '|mkpf| 'MKPF) - (LIST '|newString| 'MAKE-STRING) (LIST '|newVector| 'MAKE-ARRAY) - (LIST '|nil| NIL) (LIST '|not| 'NOT) (LIST '|null| 'NULL) - (LIST '|odd?| 'ODDP) (LIST '|or| 'OR) (LIST '|otherwise| 'T) - (LIST '|property| 'GET) (LIST '|readInteger| 'PARSE-INTEGER) + (LIST '|newVector| 'MAKE-ARRAY) (LIST '|nil| NIL) + (LIST '|not| 'NOT) (LIST '|null| 'NULL) (LIST '|odd?| 'ODDP) + (LIST '|or| 'OR) (LIST '|otherwise| 'T) (LIST '|property| 'GET) + (LIST '|readInteger| 'PARSE-INTEGER) (LIST '|readLispFromString| 'READ-FROM-STRING) (LIST '|readOnly?| 'CONSTANTP) (LIST '|removeDuplicates| 'REMDUP) (LIST '|rest| 'CDR) (LIST '|sameObject?| 'EQ) diff --git a/src/boot/strap/utility.clisp b/src/boot/strap/utility.clisp index d522b8c8..db11171f 100644 --- a/src/boot/strap/utility.clisp +++ b/src/boot/strap/utility.clisp @@ -78,10 +78,6 @@ (DECLAIM (FTYPE (FUNCTION (|%String| |%Short|) (|%Maybe| |%Short|)) - |firstNonblankPosition|)) - -(DECLAIM - (FTYPE (FUNCTION (|%String| |%Short|) (|%Maybe| |%Short|)) |firstBlankPosition|)) (|%defaultReadAndLoadSettings|) |