]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/scalar.cc
patch::: 1.1.24.jcn2: jcn2
[lilypond.git] / flower / scalar.cc
index 7008880cccb9b84b3d48342c9b0ac2f2d253bd8b..ba7d810b03a765a5171e78534bf9d6c02ad023bf 100644 (file)
@@ -18,10 +18,16 @@ Scalar::Scalar (Rational r)
 }
 
 Scalar::operator Rational ()
+{
+  return to_rat ();
+}
+
+Rational
+Scalar::to_rat () const
 {
   int p = index_i ('/');
   if (p == -1)
-    return int (*this);
+    return this->to_i ();
   
   String s2 = right_str (length_i ()-p-1);
   String s1 = left_str (p);
@@ -42,12 +48,24 @@ Scalar::isnum_b () const
 }
 
 Scalar::operator Real()
+{
+  return to_f ();
+}
+
+Real
+Scalar::to_f () const
 {
   assert (isnum_b ());
   return value_f ();
 }
 
-Scalar::operator int()
+Scalar::operator int ()
+{
+  return to_i ();
+}
+
+int
+Scalar::to_i () const
 {
   if (!length_i ())
     return 0;                  // ugh