]> git.donarmstrong.com Git - lilypond.git/blob - flower/include/scalar.hh
d081b56fe68a4d9107a48d53f3bd5bb06d869122
[lilypond.git] / flower / include / scalar.hh
1 /*
2   scalar.hh -- part of LilyPond
3
4   (c) 1996 Han-Wen Nienhuys
5 */
6
7 #ifndef SCALAR_HH
8 #define SCALAR_HH
9 #include "string.hh"
10 #include "real.hh"
11
12 /// Perl -like scalar type.
13 struct Scalar : public String {
14     
15     Scalar (Real r) : String (r) {}
16     Scalar (int i) : String (i) {}
17     Scalar (char c) : String (c) {}
18     Scalar (char const *c) : String (c) {}    
19     Scalar (String s):String (s) {}
20     Scalar (Rational);
21     operator Rational();
22     Scalar() {}
23     bool isnum();
24     operator Real();
25     operator int();
26
27     /**   perl -like string to bool conversion.
28      */
29     operator bool() const;
30
31 };
32
33 #endif // SCALAR_HH
34