summaryrefslogtreecommitdiff
path: root/module/oop
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2015-01-19 22:41:57 +0100
committerAndy Wingo <wingo@pobox.com>2015-01-23 16:16:04 +0100
commit3f4829e082c2fdd0553a6ce97fe173f8df327e7b (patch)
treed6c4cc83b2285a29402af00a8931fc85c2bb37a7 /module/oop
parent0b4c068d532a372222d890a4f66e2d47f4de651e (diff)
GOOPS cosmetics
* module/oop/goops.scm: More commenting. Move around <keyword> in the export section.
Diffstat (limited to 'module/oop')
-rw-r--r--module/oop/goops.scm15
1 files changed, 10 insertions, 5 deletions
diff --git a/module/oop/goops.scm b/module/oop/goops.scm
index cf8eda7a3..172839a91 100644
--- a/module/oop/goops.scm
+++ b/module/oop/goops.scm
@@ -1,6 +1,6 @@
-;;; installed-scm-file
-
-;;;; Copyright (C) 1998,1999,2000-2003,2006,2009-2011,2013-2015 Free Software Foundation, Inc.
+;;;; goops.scm -- The Guile Object-Oriented Programming System
+;;;;
+;;;; Copyright (C) 1998-2003,2006,2009-2011,2013-2015 Free Software Foundation, Inc.
;;;; Copyright (C) 1993-1998 Erick Gallesio - I3S-CNRS/ESSI <eg@unice.fr>
;;;;
;;;; This library is free software; you can redistribute it and/or
@@ -132,8 +132,7 @@
method-specializers method-formals
primitive-generic-generic enable-primitive-generic!
method-procedure accessor-method-slot-definition
- make find-method get-keyword)
- #:no-backtrace)
+ make find-method get-keyword))
;;;
@@ -430,6 +429,12 @@ followed by its associated value. If @var{l} does not hold a value for
(struct-set! <slot> class-index-redefined #f)
<slot>)))
+;;; Access to slot objects is performance-sensitive for slot-ref, so in
+;;; addition to the type-checking accessors that we export, we also
+;;; define some internal inlined helpers that just do an unchecked
+;;; struct-ref in cases where we know the object must be a slot, as
+;;; when accessing class-slots.
+;;;
(define-syntax-rule (define-slot-accessor name docstring %name field)
(begin
(define-syntax-rule (%name obj)