X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fmoment.cc;h=20c1f58a0b51cdef2e0c5e42e16c4dced7014e7d;hb=97a0169312a260933246ab224e4f8b0969871dd5;hp=ae6ea63dd2f6f421c0ea2b127a6edd0dfd97d123;hpb=1c846b2c2348b4e0ca4a3c2e8fb267047ba2d203;p=lilypond.git diff --git a/lily/moment.cc b/lily/moment.cc index ae6ea63dd2..20c1f58a0b 100644 --- a/lily/moment.cc +++ b/lily/moment.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1999--2011 Han-Wen Nienhuys + Copyright (C) 1999--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -43,24 +43,15 @@ Moment::Moment (Rational m) grace_part_ = Rational (0); } -#include "ly-smobs.icc" -IMPLEMENT_SIMPLE_SMOBS (Moment); -IMPLEMENT_TYPE_P (Moment, "ly:moment?"); +const char * const Moment::type_p_name_ = "ly:moment?"; -SCM -Moment::mark_smob (SCM) -{ - return SCM_EOL; -} int -Moment::print_smob (SCM s, SCM port, scm_print_state *) +Moment::print_smob (SCM port, scm_print_state *) const { - Moment *r = (Moment *) SCM_CELL_WORD_1 (s); - scm_puts ("#to_string (); + string str = to_string (); scm_puts ((char *)str.c_str (), port); scm_puts (">", port); @@ -71,17 +62,17 @@ SCM Moment::as_scheme () const { return scm_list_5 (ly_symbol2scm ("ly:make-moment"), - scm_from_int64 (main_part_.num ()), - scm_from_int64 (main_part_.den ()), - scm_from_int64 (grace_part_.num ()), - scm_from_int64 (grace_part_.den ())); + scm_from_int64 (main_part_.num ()), + scm_from_int64 (main_part_.den ()), + scm_from_int64 (grace_part_.num ()), + scm_from_int64 (grace_part_.den ())); } SCM Moment::equal_p (SCM a, SCM b) { - Moment *m1 = unsmob_moment (a); - Moment *m2 = unsmob_moment (b); + Moment *m1 = unsmob (a); + Moment *m2 = unsmob (b); return (*m1 == *m2) ? SCM_BOOL_T : SCM_BOOL_F; } @@ -195,7 +186,7 @@ operator << (ostream &os, Moment const &m) Moment robust_scm2moment (SCM m, Moment d) { - Moment *p = unsmob_moment (m); + Moment *p = unsmob (m); if (!p) return d; else @@ -205,6 +196,5 @@ robust_scm2moment (SCM m, Moment d) bool moment_less (SCM a, SCM b) { - return *unsmob_moment (a) < *unsmob_moment (b); + return *unsmob (a) < *unsmob (b); } -