New procedure PARSER-BUFFER-REF.
authorChris Hanson <org/chris-hanson/cph>
Wed, 11 Jul 2001 00:41:55 +0000 (00:41 +0000)
committerChris Hanson <org/chris-hanson/cph>
Wed, 11 Jul 2001 00:41:55 +0000 (00:41 +0000)
v7/src/star-parser/buffer.scm
v7/src/star-parser/load.scm
v7/src/star-parser/parser.pkg

index 28b872d8e09f78b24a804993344817233939bb76..1871de68f0efa7a375a4c64cfa6cac72b57b21c5 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: buffer.scm,v 1.7 2001/07/05 18:51:23 cph Exp $
+;;; $Id: buffer.scm,v 1.8 2001/07/11 00:41:50 cph Exp $
 ;;;
 ;;; Copyright (c) 2001 Massachusetts Institute of Technology
 ;;;
   (and (guarantee-buffer-chars buffer 1)
        (string-ref (parser-buffer-string buffer)
                   (parser-buffer-index buffer))))
+
+(define (parser-buffer-ref buffer index)
+  (if (not (index-fixnum? index))
+      (error:wrong-type-argument index "index" '???))
+  (and (guarantee-buffer-chars buffer (fix:+ index 1))
+       (string-ref (parser-buffer-string buffer)
+                  (fix:+ (parser-buffer-index buffer) index))))
 \f
 (let-syntax
     ((char-matcher
index e03ab3990cbab6f0ea8e7b2c1bed156e82ee4e30..6d7ae6e4151dd58233cf1d353b613842c5f57e51 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: load.scm,v 1.4 2001/07/02 18:21:01 cph Exp $
+;;; $Id: load.scm,v 1.5 2001/07/11 00:41:52 cph Exp $
 ;;;
 ;;; Copyright (c) 2001 Massachusetts Institute of Technology
 ;;;
@@ -24,4 +24,4 @@
   (lambda ()
     (fluid-let ((*allow-package-redefinition?* #t))
       (package/system-loader "parser" '() 'QUERY))))
-(add-subsystem-identification! "*Parser" '(0 4))
\ No newline at end of file
+(add-subsystem-identification! "*Parser" '(0 5))
\ No newline at end of file
index c0f532f9adbc59843485e3c8950c6ab5c8628b0e..6da877b579cc87ed7b10eb68373d90cd53a9832a 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: parser.pkg,v 1.5 2001/07/02 18:20:47 cph Exp $
+;;; $Id: parser.pkg,v 1.6 2001/07/11 00:41:55 cph Exp $
 ;;;
 ;;; Copyright (c) 2001 Massachusetts Institute of Technology
 ;;;
@@ -54,6 +54,7 @@
          parser-buffer-pointer-line
          parser-buffer-pointer?
          parser-buffer-position-string
+         parser-buffer-ref
          parser-buffer?
          peek-parser-buffer-char
          read-parser-buffer-char