]> git.donarmstrong.com Git - lilypond.git/blob - flower/include/libc-extension.hh
(my_round): ANSI-C compatible rounding.
[lilypond.git] / flower / include / libc-extension.hh
1 /*
2   libc-extension.hh -- declare some string.h extensions
3
4   source file of the flowerlib
5
6   (c)  1997--2003 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
8
9
10 #ifndef LIBC_EXTENSION_HH
11 #define LIBC_EXTENSION_HH
12
13 #include "flower-proto.hh"
14 #include "config.h"
15
16
17 #include <cstddef>
18 #include <stdarg.h>
19
20 char* strnlwr (char* start ,int n);
21 char* strnupr (char* start, int n);
22
23 #if !HAVE_MEMMEM                // GNU extension.
24 void *memmem (void const * haystack, int haystack_len,
25              void const *needle, int needle_len);
26 #endif /* HAVE_MEMMEM */
27
28 #if !HAVE_SNPRINTF              // GNU extension.
29 int snprintf (char *str, size_t n, char const *format, ...);
30 #endif
31
32 #if !HAVE_VSNPRINTF             // GNU extension.
33 int vsnprintf (char *str, size_t, char const *format, va_list args);
34 #endif
35
36
37 #if !HAVE_ISINF                 // BSD extension 
38 int isinf (double x);
39
40 #endif
41
42
43 #if ! HAVE_LRINT
44 #define lrint(__x) ((long) (round (__x)))
45 #endif
46
47
48 Byte *memrchr (Byte const * p, int n, char c);
49 Byte *strrev (Byte* byte, int length_i);
50
51
52 double my_round (double);
53
54 #endif // LIBC_EXTENSION_HH