X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fobject-key-undumper-scheme.cc;h=6791a9cb5bf977049e9d2ba6f3a6a54f0310f3f8;hb=804385793dcad0400e6b7ccfe006fece27e5feac;hp=da75e151ca870cd94565187bafdf75ddc6fe040e;hpb=5d1ddaf889233f8e5c32a118f9e843e1becca2d2;p=lilypond.git diff --git a/lily/object-key-undumper-scheme.cc b/lily/object-key-undumper-scheme.cc index da75e151ca..6791a9cb5b 100644 --- a/lily/object-key-undumper-scheme.cc +++ b/lily/object-key-undumper-scheme.cc @@ -1,52 +1,44 @@ /* - object-key-undumper-scheme.cc -- implement Object_key_undumper bindings + object-key-undumper-scheme.cc -- implement Object_key_undumper bindings source file of the GNU LilyPond music typesetter - (c) 2005 Han-Wen Nienhuys - + (c) 2005--2006 Han-Wen Nienhuys */ #include "object-key-undumper.hh" -LY_DEFINE(ly_undumper_read_keys, "ly:undumper-read-keys", - 2, 0, 0, - (SCM undumper, SCM keys), - "Read serialized @var{keys} into @var{undumper}." - ) +LY_DEFINE (ly_undumper_read_keys, "ly:undumper-read-keys", + 2, 0, 0, + (SCM undumper, SCM keys), + "Read serialized @var{keys} into @var{undumper}.") { Object_key_undumper *u = unsmob_key_undumper (undumper); - SCM_ASSERT_TYPE(u, undumper, SCM_ARG1, __FUNCTION__, "Undumper"); + SCM_ASSERT_TYPE (u, undumper, SCM_ARG1, __FUNCTION__, "Undumper"); u->parse_contents (keys); return SCM_UNSPECIFIED; } -LY_DEFINE(ly_make_undumper, "ly:make-undumper", - 0, 0, 0, - (), - "Create a key undumper. " - ) +LY_DEFINE (ly_make_undumper, "ly:make-undumper", + 0, 0, 0, + (), + "Create a key undumper. ") { Object_key_undumper *u = new Object_key_undumper (); - SCM x = u->self_scm(); - scm_gc_unprotect_object (x); - return x; + return u->unprotect (); } +LY_DEFINE (ly_undumper_lookup, "ly:undumper-lookup", + 2, 0, 0, + (SCM undumper, SCM serial), + "Return the object key for number @var{serial}. ") -LY_DEFINE(ly_undumper_lookup, "ly:undumper-lookup", - 2, 0, 0, - (SCM undumper, SCM serial), - "Return the object key for number @var{serial}. " - ) - { - Object_key_undumper* u = unsmob_key_undumper (undumper); + Object_key_undumper *u = unsmob_key_undumper (undumper); - SCM_ASSERT_TYPE(u, undumper, SCM_ARG1, __FUNCTION__, "undumper"); - SCM_ASSERT_TYPE(scm_is_integer(serial), serial, SCM_ARG2, __FUNCTION__, "integer"); - return u->get_key (scm_to_int (serial))->self_scm(); + SCM_ASSERT_TYPE (u, undumper, SCM_ARG1, __FUNCTION__, "undumper"); + SCM_ASSERT_TYPE (scm_is_integer (serial), serial, SCM_ARG2, __FUNCTION__, "integer"); + return u->get_key (scm_to_int (serial))->self_scm (); } -