X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fformat.h;h=c97f46c5f78b09d98cc173e24757dbc805acccc1;hb=86eb95d2cd8b0acde9ace8fb02f3201001a9dedf;hp=88b49a5a38a522547364cf592f81ccbf176fe1ae;hpb=9b94efd7513afdb12a6023024e00e50801532fee;p=pspp diff --git a/src/data/format.h b/src/data/format.h index 88b49a5a38..c97f46c5f7 100644 --- a/src/data/format.h +++ b/src/data/format.h @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 1997-9, 2000, 2006 Free Software Foundation, Inc. + Copyright (C) 1997-9, 2000, 2006, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -69,6 +69,8 @@ struct fmt_spec int d; /* Number of implied decimal places. */ }; +/* Maximum width of any numeric format. */ +#define FMT_MAX_NUMERIC_WIDTH 40 /* A numeric output style. */ struct fmt_number_style @@ -82,9 +84,6 @@ struct fmt_number_style }; -extern struct fmt_number_style *the_styles ; - - /* Initialization. */ struct fmt_number_style * fmt_create (void); void fmt_done (struct fmt_number_style *); @@ -108,12 +107,21 @@ char *fmt_to_string (const struct fmt_spec *, char s[FMT_STRING_LEN_MAX + 1]); bool fmt_equal (const struct fmt_spec *, const struct fmt_spec *); void fmt_resize (struct fmt_spec *, int new_width); +void fmt_fix (struct fmt_spec *, bool for_input); +void fmt_fix_input (struct fmt_spec *); +void fmt_fix_output (struct fmt_spec *); + /* Format types. */ +bool is_fmt_type (enum fmt_type); + const char *fmt_name (enum fmt_type) PURE_FUNCTION; bool fmt_from_name (const char *name, enum fmt_type *); bool fmt_takes_decimals (enum fmt_type) PURE_FUNCTION; +int fmt_min_width (enum fmt_type, bool for_input) PURE_FUNCTION; +int fmt_max_width (enum fmt_type, bool for_input) PURE_FUNCTION; +int fmt_max_decimals (enum fmt_type, int width, bool for_input) PURE_FUNCTION; int fmt_min_input_width (enum fmt_type) PURE_FUNCTION; int fmt_max_input_width (enum fmt_type) PURE_FUNCTION; int fmt_max_input_decimals (enum fmt_type, int width) PURE_FUNCTION; @@ -138,21 +146,15 @@ const char *fmt_date_template (enum fmt_type) PURE_FUNCTION; struct fmt_number_style. */ #define FMT_STYLE_AFFIX_MAX 16 - -struct fmt_number_style *fmt_number_style_create (void); -void fmt_number_style_destroy (struct fmt_number_style *); - int fmt_affix_width (const struct fmt_number_style *); int fmt_neg_affix_width (const struct fmt_number_style *); -bool is_fmt_type (enum fmt_type); - const struct fmt_number_style *fmt_get_style (const struct fmt_number_style *, enum fmt_type); void fmt_check_style (const struct fmt_number_style *style); -int fmt_grouping_char (const struct fmt_number_style *, enum fmt_type); - void fmt_set_decimal (struct fmt_number_style *, char); +extern const struct fmt_spec F_8_0 ; + #endif /* data/format.h */