Change cpointer tag to be a symbol
This commit is contained in:
parent
5e16770932
commit
fa4bb9dda0
|
@ -1198,12 +1198,11 @@
|
||||||
(define (id . strings)
|
(define (id . strings)
|
||||||
(datum->syntax
|
(datum->syntax
|
||||||
#'_TYPE (string->symbol (apply string-append strings)) #'_TYPE))
|
#'_TYPE (string->symbol (apply string-append strings)) #'_TYPE))
|
||||||
(with-syntax ([name-string name]
|
(with-syntax ([TYPE? (id name "?")]
|
||||||
[TYPE? (id name "?")]
|
|
||||||
[TYPE-tag (id name "-tag")]
|
[TYPE-tag (id name "-tag")]
|
||||||
[_TYPE/null (id "_" name "/null")])
|
[_TYPE/null (id "_" name "/null")])
|
||||||
#'(define-values (_TYPE _TYPE/null TYPE? TYPE-tag)
|
#'(define-values (_TYPE _TYPE/null TYPE? TYPE-tag)
|
||||||
(let ([TYPE-tag name-string])
|
(let ([TYPE-tag '_TYPE])
|
||||||
(values (_cpointer TYPE-tag ptr-type scheme->c c->scheme)
|
(values (_cpointer TYPE-tag ptr-type scheme->c c->scheme)
|
||||||
(_cpointer/null TYPE-tag ptr-type scheme->c c->scheme)
|
(_cpointer/null TYPE-tag ptr-type scheme->c c->scheme)
|
||||||
(lambda (x)
|
(lambda (x)
|
||||||
|
@ -1286,7 +1285,6 @@
|
||||||
(and (identifier? x) (identifier? y) (free-identifier=? x y)))
|
(and (identifier? x) (identifier? y) (free-identifier=? x y)))
|
||||||
(with-syntax
|
(with-syntax
|
||||||
([has-super? has-super?]
|
([has-super? has-super?]
|
||||||
[name-string name]
|
|
||||||
[struct-string (format "struct:~a" name)]
|
[struct-string (format "struct:~a" name)]
|
||||||
[(slot ...) slot-names-stx]
|
[(slot ...) slot-names-stx]
|
||||||
[(slot-type ...) slot-types-stx]
|
[(slot-type ...) slot-types-stx]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user