annotate lib/human.h @ 3843:2f0e1c3ba75b

*** empty log message ***
author Jim Meyering <jim@meyering.net>
date Wed, 22 May 2002 08:36:32 +0000
parents 734d9b0f9fce
children 98b37cab8b76
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1137
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
1 #ifndef HUMAN_H_
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
2 # define HUMAN_H_ 1
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
3
1813
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
4 # if HAVE_CONFIG_H
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
5 # include <config.h>
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
6 # endif
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
7
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
8 # if HAVE_INTTYPES_H
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
9 # include <inttypes.h>
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
10 # endif
9e16d9bc8891 <inttypes.h>: Include it here instead.
Jim Meyering <jim@meyering.net>
parents: 1392
diff changeset
11
1137
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
12 /* A conservative bound on the maximum length of a human-readable string.
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
13 The output can be the product of the largest uintmax_t and the largest int,
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
14 so add their sizes before converting to a bound on digits. */
1141
8b39b9c51414 filter through cppi
Jim Meyering <jim@meyering.net>
parents: 1137
diff changeset
15 # define LONGEST_HUMAN_READABLE ((sizeof (uintmax_t) + sizeof (int)) \
8b39b9c51414 filter through cppi
Jim Meyering <jim@meyering.net>
parents: 1137
diff changeset
16 * CHAR_BIT / 3)
1137
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
17
1170
8de2d981b46f Use PARAMS, not __P.
Jim Meyering <jim@meyering.net>
parents: 1141
diff changeset
18 # ifndef PARAMS
8de2d981b46f Use PARAMS, not __P.
Jim Meyering <jim@meyering.net>
parents: 1141
diff changeset
19 # if defined PROTOTYPES || (defined __STDC__ && __STDC__)
8de2d981b46f Use PARAMS, not __P.
Jim Meyering <jim@meyering.net>
parents: 1141
diff changeset
20 # define PARAMS(Args) Args
1141
8b39b9c51414 filter through cppi
Jim Meyering <jim@meyering.net>
parents: 1137
diff changeset
21 # else
1170
8de2d981b46f Use PARAMS, not __P.
Jim Meyering <jim@meyering.net>
parents: 1141
diff changeset
22 # define PARAMS(Args) ()
8de2d981b46f Use PARAMS, not __P.
Jim Meyering <jim@meyering.net>
parents: 1141
diff changeset
23 # endif
8de2d981b46f Use PARAMS, not __P.
Jim Meyering <jim@meyering.net>
parents: 1141
diff changeset
24 # endif
1137
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
25
1864
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
26 enum human_inexact_style
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
27 {
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
28 human_floor = -1,
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
29 human_round_to_even = 0,
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
30 human_ceiling = 1
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
31 };
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
32
1392
849f05797f68 (human_readable): Coalesce last two args into one, for convenience.
Jim Meyering <jim@meyering.net>
parents: 1170
diff changeset
33 char *human_readable PARAMS ((uintmax_t, char *, int, int));
1864
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
34 char *human_readable_inexact PARAMS ((uintmax_t, char *, int, int,
734d9b0f9fce (enum human_inexact_style): New enum.
Jim Meyering <jim@meyering.net>
parents: 1813
diff changeset
35 enum human_inexact_style));
1392
849f05797f68 (human_readable): Coalesce last two args into one, for convenience.
Jim Meyering <jim@meyering.net>
parents: 1170
diff changeset
36
849f05797f68 (human_readable): Coalesce last two args into one, for convenience.
Jim Meyering <jim@meyering.net>
parents: 1170
diff changeset
37 void human_block_size PARAMS ((char const *, int, int *));
1137
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
38
2c9059ccc457 New file. The interface is inspired
Jim Meyering <jim@meyering.net>
parents:
diff changeset
39 #endif /* HUMAN_H_ */