]> www.ginac.de Git - cln.git/blobdiff - src/real/format-output/cl_format.h
Avoid "suggest explicit braces to avoid ambiguous 'else'" warnings.
[cln.git] / src / real / format-output / cl_format.h
index be1a72db3c01c1029528dccd278e9a251fe587e7..04662e54374b9795d9638a15826249f6bd0cb194 100644 (file)
@@ -1,74 +1,75 @@
-// Formatted output functions à la Common Lisp.
+// Formatted output functions à la Common Lisp.
 
 #ifndef _CL_FORMAT_H
 #define _CL_FORMAT_H
 
-#include "cl_number.h"
-#include "cl_io.h"
-#include "cl_float.h"
+#include "cln/number.h"
+#include "cln/io.h"
+#include "cln/float.h"
 
-// gibt arg als römische Zahl auf stream aus, z.B. 4 als IIII.
-extern void format_old_roman (cl_ostream stream, const cl_I& arg);
+namespace cln {
 
-// gibt arg als römische Zahl auf stream aus, z.B. 4 als IV.
-extern void format_new_roman (cl_ostream stream, const cl_I& arg);
+// gibt arg als römische Zahl auf stream aus, z.B. 4 als IIII.
+extern void format_old_roman (std::ostream& stream, const cl_I& arg);
+
+// gibt arg als römische Zahl auf stream aus, z.B. 4 als IV.
+extern void format_new_roman (std::ostream& stream, const cl_I& arg);
 
 extern const char * const cl_format_tens [10];
 
 // gibt die ganze Zahl arg im Klartext auf englisch auf den Stream aus.
-extern void format_cardinal (cl_ostream stream, const cl_I& arg);
+extern void format_cardinal (std::ostream& stream, const cl_I& arg);
 
-// gibt eine ganze Zahl arg als Abzählnummer im Klartext auf englisch
+// gibt eine ganze Zahl arg als Abzählnummer im Klartext auf englisch
 // auf den stream aus.
-extern void format_ordinal (cl_ostream stream, const cl_I& arg);
+extern void format_ordinal (std::ostream& stream, const cl_I& arg);
 
 // gibt count (>=0) Zeichen ch auf stream aus.
-inline void format_padding (cl_ostream stream, sintL count, char ch)
+inline void format_padding (std::ostream& stream, sintL count, char ch)
 {
        for (; count >= 0; count--)
                fprintchar(stream,ch);
 }
 
 // gibt auf den Stream stream aus:
-// den String str, eventuell aufgefüllt mit Padding characters padchar.
-// Und zwar so, daß die Breite mindestens mincol ist. Um das zu erreichen,
-// werden mindestens minpad Zeichen eingefügt, eventuelle weitere dann in
-// Blöcken à colinc Zeichen. Falls padleftflag, werden sie links eingefügt,
+// den String str, eventuell aufgefüllt mit Padding characters padchar.
+// Und zwar so, daß die Breite mindestens mincol ist. Um das zu erreichen,
+// werden mindestens minpad Zeichen eingefügt, eventuelle weitere dann in
+// Blöcken à colinc Zeichen. Falls padleftflag, werden sie links eingefügt,
 // sonst rechts vom String.
-extern void format_padded_string (cl_ostream stream, sintL mincol, sintL colinc, sintL minpad, char padchar, cl_boolean padleftflag, const char * str);
+extern void format_padded_string (std::ostream& stream, sintL mincol, sintL colinc, sintL minpad, char padchar, bool padleftflag, const char * str);
 
 // gibt den Integer arg auf den Stream aus:
 // in Zahlenbasis base, mit Vorzeichen (+ nur falls >0 und positive-sign-flag),
 // bei commaflag alle drei Stellen unterbrochen durch ein Zeichen commachar.
-// Das Ganze links aufgefüllt mit padchar's, so daß die Gesamtbreite mindestens
+// Das Ganze links aufgefüllt mit padchar's, so daß die Gesamtbreite mindestens
 // mincol ist.
-extern void format_integer (cl_ostream stream, const cl_I& arg, unsigned int base, sintL mincol, char padchar, char commachar, uintL commainterval, cl_boolean commaflag, cl_boolean positive_sign_flag);
+extern void format_integer (std::ostream& stream, const cl_I& arg, unsigned int base, sintL mincol, char padchar, char commachar, uintL commainterval, bool commaflag, bool positive_sign_flag);
 
 // format_scale_exponent(arg) liefert zur Floating-Point-Zahl arg
 // drei Werte: mantissa und n, mit
 // ganzem n und mantissa floating-point, 0.1 <= mantissa < 1,
 // arg = mantissa * 10^n * sign (also 10^(n-1) <= abs(arg) < 10^n ).
 // (Bei arg=0.0: 0.0 und n=0.)
-extern const cl_decoded_float format_scale_exponent (const cl_F& arg);
-CL_REQUIRE(cl_fmt_scaleexp)
+extern const decoded_float format_scale_exponent (const cl_F& arg);
 
 // format_float_to_string(arg,width,d,k,dmin)
 // ergibt einen String zum Floating-point arg:
 // er hat den Wert von abs(arg)*expt(10,k), dabei mind. d Nachkommastellen
-// und höchstens die Länge width (width<=0 -> keine Einschränkung).
+// und höchstens die Länge width (width<=0 -> keine Einschränkung).
 // Trotzdem wird nicht auf weniger als dmin Stellen gerundet.
 struct digits_with_dot {
-       char * string; // Mit cl_malloc_hook() alloziert, mit cl_free_hook() freizugeben.
+       char * string; // Mit malloc_hook() alloziert, mit free_hook() freizugeben.
        uintL length; // strlen(string)
-       cl_boolean dot_comes_first; // string[0] == '.' ?
-       cl_boolean dot_comes_last; // string[strlen(string)-1] == '.' ?
+       bool dot_comes_first; // string[0] == '.' ?
+       bool dot_comes_last; // string[strlen(string)-1] == '.' ?
        uintL dot_position; // string[dot_position] is '.'
 // Constructor.
-       digits_with_dot (char* s, uintL l, cl_boolean df, cl_boolean dl, uintL dp)
+       digits_with_dot (char* s, uintL l, bool df, bool dl, uintL dp)
                : string(s), length(l), dot_comes_first(df), dot_comes_last(dl), dot_position(dp) {}
 };
 extern const digits_with_dot format_float_to_string (const cl_F& arg, const sintL width, const sintL d, const sintL k, const sintL dmin);
-CL_REQUIRE(cl_fmt_floatstring)
 
+}  // namespace cln
 
 #endif /* _CL_FORMAT_H */