Changeset 13832 in project


Ignore:
Timestamp:
03/18/09 22:56:54 (11 years ago)
Author:
Kon Lovett
Message:

Bug fix for box?, added direct calls for ?/ref/set.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/4/box/trunk/box.scm

    r13720 r13832  
    3838
    3939(define-inline (%box-structure? obj)
    40   (and (%fx= 2 (%structure-length obj))
    41        (or (%box-structure-mutable? obj) (%box-structure-immutable? obj) ) ) )
     40  (and (or (%box-structure-mutable? obj) (%box-structure-immutable? obj))
     41       (%fx= 2 (%structure-length obj)) ) )
    4242
    4343(define-inline (%box-structure-tag obj) (and (%box-structure? obj) (%structure-tag obj)))
     
    127127  box-location
    128128  box
    129   set-box! unbox)
     129  set-box! unbox
     130  ;
     131  *box-structure? *box-structure-ref *box-structure-set!
     132  *box-procedure? *box-procedure-ref *box-procedure-set!)
    130133
    131134(import
     
    172175;;; Box
    173176
     177;; Direct calls
     178;; For use by high-performance routines (such as core routine replacements)
     179
     180(define (*box-structure? obj) (%box-structure? obj))
     181(define (*box-structure-ref box) (%box-structure-ref box))
     182(define (*box-structure-set! box val) (%box-structure-set! box val))
     183
     184(define (*box-procedure? obj) (%box-procedure? obj))
     185(define (*box-procedure-ref box) (%box-procedure-ref box))
     186(define (*box-procedure-set! box val) (%box-procedure-set! box val))
     187
    174188;; Constructers
    175189
Note: See TracChangeset for help on using the changeset viewer.