Temporarily preserve make-define-structure-type which ignores the arg.
(and superclass
(class-methods superclass))))))
(named-structure/set-tag-description! class
- (make-define-structure-type
+ (new-make-define-structure-type
'VECTOR
name
(list->vector (map car transforms))
(list->vector (map cdr transforms))
(make-vector (length transforms) (lambda () #f))
- (standard-print-method name)
class
object-size))
class))))
`',name))
field-names
inits)))
- `(,(absolute 'make-define-structure-type context)
+ `(,(absolute 'new-make-define-structure-type context)
',(structure/physical-type structure)
',name
'#(,@field-names)
'#(,@(map slot/index slots))
(vector ,@inits)
- ;; This field was the print-procedure, no longer used.
- ;; It should be removed after 9.3 is released.
- #f
,(if (and tag-expression
(not (eq? tag-expression type-name)))
(close tag-expression context)
(lambda ()
(random-source-randomize! default-random-source)))
(named-structure/set-tag-description! random-state-tag
- (make-define-structure-type 'vector
- 'random-state
- '#(key)
- '#(1)
- (make-vector 1 (lambda () #f))
- #f
- random-state-tag
- 2)))
\ No newline at end of file
+ (new-make-define-structure-type 'vector
+ 'random-state
+ '#(key)
+ '#(1)
+ (make-vector 1 (lambda () #f))
+ random-state-tag
+ 2)))
\ No newline at end of file
;;;; Runtime support for DEFINE-STRUCTURE
(define rtd:structure-type)
-(define make-define-structure-type)
+;; RELNOTE: rename without "new-"
+(define new-make-define-structure-type)
(define structure-type?)
(define structure-type/physical-type)
(define structure-type/name)
(set! rtd:structure-type
(make-record-type "structure-type"
'(physical-type name field-names field-indexes
- default-inits unparser-method tag
- length)))
- (set! make-define-structure-type
+ default-inits tag length)))
+ (set! new-make-define-structure-type
(record-constructor rtd:structure-type))
(set! structure-type?
(record-predicate rtd:structure-type))
(record-accessor rtd:structure-type 'length))
unspecific))
+;; RELNOTE: delete
+(define (make-define-structure-type physical-type name field-names field-indexes
+ default-inits unparser-method tag length)
+ (declare (ignore unparser-method))
+ (new-make-define-structure-type physical-type name field-names field-indexes
+ default-inits tag length))
+
(define-integrable (structure-type/field-index type field-name)
(vector-ref (structure-type/field-indexes type)
(structure-type/field-name-index type field-name)))
named-list?
named-structure?
named-vector?
+ new-make-define-structure-type ;RELNOTE: rename without "new-"
record-accessor
record-applicator
record-constructor
(add-event-receiver! event:after-restore reset-threads!)
(add-event-receiver! event:before-exit stop-thread-timer)
(named-structure/set-tag-description! thread-mutex-tag
- (make-define-structure-type 'vector
- "thread-mutex"
- '#(waiting-threads owner)
- '#(1 2)
- (vector 2 (lambda () #f))
- #f
- thread-mutex-tag
- 3))
+ (new-make-define-structure-type 'vector
+ "thread-mutex"
+ '#(waiting-threads owner)
+ '#(1 2)
+ (vector 2 (lambda () #f))
+ thread-mutex-tag
+ 3))
(named-structure/set-tag-description! link-tag
- (make-define-structure-type 'vector
- "link"
- '#(prev next item)
- '#(1 2 3)
- (vector 3 (lambda () #f))
- #f
- link-tag
- 4)))
+ (new-make-define-structure-type 'vector
+ "link"
+ '#(prev next item)
+ '#(1 2 3)
+ (vector 3 (lambda () #f))
+ link-tag
+ 4)))
(define-print-method link?
(standard-print-method 'link))