diff options
author | Andy Wingo <wingo@pobox.com> | 2015-01-11 16:27:16 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2015-01-23 16:16:01 +0100 |
commit | 4702cbeb3780d0c81076bae0723a1fd544576471 (patch) | |
tree | 6cb216b7cc6ddeda450996b9a1ff1f0876e1af7d /libguile/struct.h | |
parent | 2b5812c64df5d91b9c827880b9a2428417e91411 (diff) | |
download | guile-4702cbeb3780d0c81076bae0723a1fd544576471.tar.gz |
Move <class> initialization to Scheme
* libguile/goops.c (scm_sys_make_root_class): Just make the
vtable-vtable, and leave initialization to Scheme.
* libguile/struct.c (scm_i_make_vtable_vtable): Change to take a full
list of fields, not just the extra fields.
(scm_init_struct): Adapt to scm_i_make_vtable_vtable change.
* module/oop/goops.scm (<class>): Compute layout for <class>, and
initialize <class> from here.
Diffstat (limited to 'libguile/struct.h')
-rw-r--r-- | libguile/struct.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/struct.h b/libguile/struct.h index f1f6c4768..e8db316c8 100644 --- a/libguile/struct.h +++ b/libguile/struct.h @@ -3,7 +3,7 @@ #ifndef SCM_STRUCT_H #define SCM_STRUCT_H -/* Copyright (C) 1995,1997,1999,2000,2001, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. +/* Copyright (C) 1995,1997,1999,2000,2001, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2015 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -181,7 +181,7 @@ SCM_API SCM scm_c_make_struct (SCM vtable, size_t n_tail, size_t n_inits, SCM_API SCM scm_c_make_structv (SCM vtable, size_t n_tail, size_t n_inits, scm_t_bits init[]); SCM_API SCM scm_make_vtable (SCM fields, SCM printer); -SCM_INTERNAL SCM scm_i_make_vtable_vtable (SCM extra_fields); +SCM_INTERNAL SCM scm_i_make_vtable_vtable (SCM fields); SCM_API SCM scm_struct_ref (SCM handle, SCM pos); SCM_API SCM scm_struct_set_x (SCM handle, SCM pos, SCM val); SCM_API SCM scm_struct_vtable (SCM handle); |