CVSROOT: /cvsroot/lilypond
Module name: lilypond
Branch:
Changes by: Han-Wen Nienhuys <[EMAIL PROTECTED]> 05/07/24 15:39:03
Modified files:
lily/include : box.hh ly-smobs.icc
Added files:
lily : smobs.cc
Log message:
(protect_smob): experiment: O(1) GC (un)protection.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/smobs.cc?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/box.hh.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/ly-smobs.icc.diff?tr1=1.39&tr2=1.40&r1=text&r2=text
Patches:
Index: lilypond/lily/include/box.hh
diff -u lilypond/lily/include/box.hh:1.13 lilypond/lily/include/box.hh:1.14
--- lilypond/lily/include/box.hh:1.13 Wed Mar 16 19:19:15 2005
+++ lilypond/lily/include/box.hh Sun Jul 24 15:39:03 2005
@@ -8,10 +8,10 @@
#include "interval.hh"
#include "offset.hh"
-struct Box
+class Box
{
Interval interval_a_[NO_AXES];
-
+public:
Interval &x () {return interval_a_[X_AXIS]; }
Interval &y (){ return interval_a_[Y_AXIS]; }
Interval x () const{ return interval_a_[X_AXIS]; }
Index: lilypond/lily/include/ly-smobs.icc
diff -u lilypond/lily/include/ly-smobs.icc:1.39
lilypond/lily/include/ly-smobs.icc:1.40
--- lilypond/lily/include/ly-smobs.icc:1.39 Sun Jul 24 15:30:03 2005
+++ lilypond/lily/include/ly-smobs.icc Sun Jul 24 15:39:03 2005
@@ -64,7 +64,7 @@
CL *ptr = new CL (*this); \
SCM s; \
s = scm_cons (SCM_PACK (CL::smob_tag_), SCM_PACK (ptr)); \
- /* scm_gc_register_collectable_memory ((CL *)this, sizeof (CL), #CL "
smob");*/ \
+ scm_gc_register_collectable_memory ((CL *)this, sizeof (CL), #CL " smob");
\
\
return s; \
}
@@ -102,7 +102,7 @@
SCM s; \
SCM_NEWSMOB (s, CL::smob_tag_, this); \
self_scm_ = s; \
- /* scm_gc_register_collectable_memory (this, sizeof (CL), #CL " smob");*/ \
+ scm_gc_register_collectable_memory (this, sizeof (CL), #CL " smob"); \
return s; \
}
_______________________________________________
Lilypond-cvs mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-cvs