Print this page
2964 need POSIX 2008 locale object support

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libc/port/locale/lmonetary.h
          +++ new/usr/src/lib/libc/port/locale/lmonetary.h
   1    1  /*
   2    2   * Copyright (c) 2000, 2001 Alexey Zelkin <phantom@FreeBSD.org>
   3    3   * All rights reserved.
   4    4   *
        5 + * Copyright (c) 2011 The FreeBSD Foundation
        6 + * All rights reserved.
        7 + * Portions of this software were developed by David Chisnall
        8 + * under sponsorship from the FreeBSD Foundation.
        9 + *
   5   10   * Redistribution and use in source and binary forms, with or without
   6   11   * modification, are permitted provided that the following conditions
   7   12   * are met:
   8   13   * 1. Redistributions of source code must retain the above copyright
   9   14   *    notice, this list of conditions and the following disclaimer.
  10   15   * 2. Redistributions in binary form must reproduce the above copyright
  11   16   *    notice, this list of conditions and the following disclaimer in the
  12   17   *    documentation and/or other materials provided with the distribution.
  13   18   *
  14   19   * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
↓ open down ↓ 5 lines elided ↑ open up ↑
  20   25   * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  21   26   * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  22   27   * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  23   28   * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  24   29   * SUCH DAMAGE.
  25   30   */
  26   31  
  27   32  #ifndef _LMONETARY_H_
  28   33  #define _LMONETARY_H_
  29   34  
       35 +#include "xlocale_private.h"
       36 +
  30   37  struct lc_monetary_T {
  31   38          const char      *int_curr_symbol;
  32   39          const char      *currency_symbol;
  33   40          const char      *mon_decimal_point;
  34   41          const char      *mon_thousands_sep;
  35   42          const char      *mon_grouping;
  36   43          const char      *positive_sign;
  37   44          const char      *negative_sign;
  38   45          const char      *int_frac_digits;
  39   46          const char      *frac_digits;
↓ open down ↓ 4 lines elided ↑ open up ↑
  44   51          const char      *p_sign_posn;
  45   52          const char      *n_sign_posn;
  46   53          const char      *int_p_cs_precedes;
  47   54          const char      *int_n_cs_precedes;
  48   55          const char      *int_p_sep_by_space;
  49   56          const char      *int_n_sep_by_space;
  50   57          const char      *int_p_sign_posn;
  51   58          const char      *int_n_sign_posn;
  52   59  };
  53   60  
  54      -struct lc_monetary_T *__get_current_monetary_locale(void);
       61 +struct xlocale_monetary {
       62 +        struct xlocale_component header;
       63 +        char *buffer;
       64 +        struct lc_monetary_T locale;
       65 +};
       66 +
       67 +struct lc_monetary_T *__get_current_monetary_locale(locale_t);
  55   68  int     __monetary_load_locale(const char *);
  56   69  
  57   70  #endif /* !_LMONETARY_H_ */
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX