]> www.ginac.de Git - cln.git/blob - src/real/format-output/cl_fmt_paddedstring.cc
* All Files have been modified for inclusion of namespace cln;
[cln.git] / src / real / format-output / cl_fmt_paddedstring.cc
1 // format_padded_string().
2
3 // General includes.
4 #include "cl_sysdep.h"
5
6 // Specification.
7 #include "cl_format.h"
8
9
10 // Implementation.
11
12 #include <string.h>
13
14 namespace cln {
15
16 void format_padded_string (cl_ostream stream, sintL mincol, sintL colinc, sintL minpad, char padchar, cl_boolean padleftflag, const char * str)
17 {
18         var sintL need = ::strlen(str) + minpad; // so viele Zeichen mindestens
19         var uintL auxpad = (need < mincol
20                             ? ceiling((uintL)(mincol - need), colinc) * colinc
21                             : 0
22                            );
23         if (!padleftflag)
24                 fprint(stream,str);
25         format_padding(stream,minpad+auxpad,padchar);
26         if (padleftflag)
27                 fprint(stream,str);
28 }
29
30 }  // namespace cln