From 8a019bcf78138e8b202cf5a2f9164451fa335fac Mon Sep 17 00:00:00 2001 From: Benjamin Kosnik Date: Sat, 9 Sep 2000 22:41:22 +0000 Subject: [PATCH] localefwd.h (locale::_Impl): Scope out types to public. 2000-09-09 Benjamin Kosnik * bits/localefwd.h (locale::_Impl): Scope out types to public. (locale): Make _Impl declaration public. From-SVN: r36283 --- libstdc++-v3/ChangeLog | 5 ++++ libstdc++-v3/bits/localefwd.h | 46 ++++++++++++++++++----------------- 2 files changed, 29 insertions(+), 22 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index f50c647a5be..f7ea5ee29c7 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2000-09-09 Benjamin Kosnik + + * bits/localefwd.h (locale::_Impl): Scope out types to public. + (locale): Make _Impl declaration public. + 2000-09-08 Felix Natter * docs/17_intro/porting-howto.html: New version. diff --git a/libstdc++-v3/bits/localefwd.h b/libstdc++-v3/bits/localefwd.h index e7cbd1dedaf..a23369beae9 100644 --- a/libstdc++-v3/bits/localefwd.h +++ b/libstdc++-v3/bits/localefwd.h @@ -209,8 +209,15 @@ namespace std // 22.1.1 Class locale class locale { - // Forwrd decls and friends: + public: + // Types: + typedef int category; + + // Forward decls and friends: + class facet; + class id; class _Impl; + friend class _Impl; template @@ -221,12 +228,6 @@ namespace std friend bool has_facet(const locale&) throw(); - public: - // Types: - class facet; - class id; - typedef int category; - // Category values: // NB much depends on the order in which these appear: static const category none = 0; @@ -317,13 +318,14 @@ namespace std // locale implementation object class locale::_Impl { + public: // Types. typedef vector > __vec_facet; typedef vector > __vec_string; // Friends. friend class locale; - friend class facet; + friend class locale::facet; template friend const _Facet& @@ -333,13 +335,21 @@ namespace std friend bool has_facet(const locale&) throw(); + private: // Data Members. - size_t _M_num_references; - __vec_facet* _M_facets; - __vec_string* _M_category_names; - bool _M_has_name; - bool _M_cached_name_ok; - string _M_cached_name; + size_t _M_num_references; + __vec_facet* _M_facets; + __vec_string* _M_category_names; + bool _M_has_name; + bool _M_cached_name_ok; + string _M_cached_name; + static const locale::id* const _S_id_collate[]; + static const locale::id* const _S_id_ctype[]; + static const locale::id* const _S_id_monetary[]; + static const locale::id* const _S_id_numeric[]; + static const locale::id* const _S_id_time[]; + static const locale::id* const _S_id_messages[]; + static const locale::id* const* const _S_facet_categories[]; inline void _M_add_reference() throw() @@ -400,14 +410,6 @@ namespace std category _M_normalize_category_names(const string&, category __cats); - - static const locale::id* const _S_id_collate[]; - static const locale::id* const _S_id_ctype[]; - static const locale::id* const _S_id_monetary[]; - static const locale::id* const _S_id_numeric[]; - static const locale::id* const _S_id_time[]; - static const locale::id* const _S_id_messages[]; - static const locale::id* const* const _S_facet_categories[]; }; // class locale inlines, that need declaration of locale::_Imp