/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 1999--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ Copyright (C) 1999--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Musical timing (Main-timing, grace-timing) with glue for
Guilification;
*/
-class Moment
+class Moment : public Simple_smob<Moment>
{
- DECLARE_SIMPLE_SMOBS (Moment);
public:
+ static SCM equal_p (SCM, SCM);
+ int print_smob (SCM, scm_print_state *) const;
+ static const char * const type_p_name_;
Moment ();
Moment (int m);
bool to_bool () const;
I64 den () const;
I64 num () const;
- Rational main_part () const;
- Rational grace_part () const;
/*
Deliver a copy of THIS as a smobified SCM
*/
IMPLEMENT_ARITHMETIC_OPERATOR (Moment, +);
IMPLEMENT_ARITHMETIC_OPERATOR (Moment, -);
-IMPLEMENT_ARITHMETIC_OPERATOR (Moment, /);
+IMPLEMENT_ARITHMETIC_OPERATOR (Moment, / );
IMPLEMENT_ARITHMETIC_OPERATOR (Moment, *);
-IMPLEMENT_ARITHMETIC_OPERATOR (Moment, %);
+IMPLEMENT_ARITHMETIC_OPERATOR (Moment, % );
-DECLARE_UNSMOB (Moment, moment);
int compare (Moment const &, Moment const &);
INSTANTIATE_COMPARE (Moment const &, Moment::compare);