1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 20:00:19 +02:00
guile/module/language/elisp/falias.scm
Andy Wingo dd11b82162 Use make-struct/no-tail instead of make-struct
* module/ice-9/boot-9.scm:
* module/language/cps/effects-analysis.scm:
* module/language/elisp/falias.scm:
* module/language/tree-il.scm:
* module/language/tree-il/primitives.scm:
* module/rnrs/records/procedural.scm:
* module/srfi/srfi-35.scm:
* module/system/base/syntax.scm: Change uses of make-struct to
  make-struct/no-tail.
2017-09-20 22:07:18 +02:00

27 lines
686 B
Scheme

(define-module (language elisp falias)
#:export (falias?
make-falias
falias-function
falias-object))
(define <falias-vtable>
(make-struct/no-tail
<applicable-struct-vtable>
(make-struct-layout "pwpw")
(lambda (object port)
(format port "#<falias ~S>" (falias-object object)))))
(set-struct-vtable-name! <falias-vtable> 'falias)
(define (falias? object)
(and (struct? object)
(eq? (struct-vtable object) <falias-vtable>)))
(define (make-falias f object)
(make-struct/no-tail <falias-vtable> f object))
(define (falias-function object)
(struct-ref object 0))
(define (falias-object object)
(struct-ref object 1))