ios_locale.cc

00001 // Iostreams base classes -*- C++ -*-
00002 
00003 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
00004 // Free Software Foundation, Inc.
00005 //
00006 // This file is part of the GNU ISO C++ Library.  This library is free
00007 // software; you can redistribute it and/or modify it under the
00008 // terms of the GNU General Public License as published by the
00009 // Free Software Foundation; either version 2, or (at your option)
00010 // any later version.
00011 
00012 // This library is distributed in the hope that it will be useful,
00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015 // GNU General Public License for more details.
00016 
00017 // You should have received a copy of the GNU General Public License along
00018 // with this library; see the file COPYING.  If not, write to the Free
00019 // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
00020 // USA.
00021 
00022 // As a special exception, you may use this file as part of a free software
00023 // library without restriction.  Specifically, if other files instantiate
00024 // templates or use macros or inline functions from this file, or you compile
00025 // this file and link it with other files to produce an executable, this
00026 // file does not by itself cause the resulting executable to be covered by
00027 // the GNU General Public License.  This exception does not however
00028 // invalidate any other reasons why the executable file might be covered by
00029 // the GNU General Public License.
00030 
00031 //
00032 // ISO C++ 14882: 27.4  Iostreams base classes
00033 //
00034 
00035 #include <ios>
00036 #include <locale>
00037 
00038 namespace std 
00039 {
00040   // Called only by basic_ios<>::init.
00041   void 
00042   ios_base::_M_init()   
00043   {
00044     // NB: May be called more than once
00045     _M_precision = 6;
00046     _M_width = 0;
00047     _M_flags = skipws | dec;
00048     _M_ios_locale = locale();
00049   }  
00050   
00051   // 27.4.2.3  ios_base locale functions
00052   locale
00053   ios_base::imbue(const locale& __loc)
00054   {
00055     locale __old = _M_ios_locale;
00056     _M_ios_locale = __loc;
00057     _M_call_callbacks(imbue_event);
00058     return __old;
00059   }
00060 } // namespace std

Generated on Fri May 6 01:08:59 2005 for libstdc++-v3 Source by  doxygen 1.4.2