]> git.donarmstrong.com Git - lilypond.git/blob - flower/include/string-convert.hh
* flower
[lilypond.git] / flower / include / string-convert.hh
1 /*
2   PROJECT: FlowerSoft C++ library
3   FILE   : string-convert.hh
4 */
5
6 #ifndef STRING_CONVERT_HH
7 #define STRING_CONVERT_HH
8
9 #include <cstdarg>
10
11 #include "string.hh"
12
13 /** The functor String_convert handles all conversions to/from String
14     (some time, anyway).  The class is quite empty from data view.  */
15 class String_convert
16 {
17   static int hex2bin (String hex_string, String &bin_string_r);
18   static int hex2nibble (Byte byte);
19   static Byte nibble2hex_byte (Byte byte);
20 public:
21   static String pad_to (String s, int length);
22   static String bool_string (bool b);
23   static String bin2dec (String bin_string);
24   static String bin2hex (String bin_string);
25   static String dec2bin (String str);
26   static int bin2int (String bin_string);
27   static unsigned bin2unsigned (String bin_string);
28   static String char_string (char c, int n);
29   static int dec2int (String dec_string);
30   static double dec2double (String dec_string);
31   static String double_string (double f, char const *fmt = 0);
32   static String form_string (char const *format, ...);
33   static String vform_string (char const *format, va_list args);
34   static int hex2int (String str);
35   static unsigned hex2unsigned (String str);
36   static String hex2bin (String str);
37   static String int_string (int i, char const *fmt = 0);
38   static String long_string (long);
39   static String int2hex (int i, int length_i, char ch);
40   static String unsigned2hex (unsigned u, int length_i, char ch);
41   static String int2dec (int i, int length_i, char ch);
42   static String rational_string (Rational);
43   static String pointer_string (void const *);
44   static String precision_string (double x, int n);
45   static Array<String> split (String str, char c);
46   static String i64_string (I64, char const *fmt = 0);
47 };
48
49 #endif // __STRING_CONVERT_HH //