 (at your option)
// any later version.

// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// Under Section 7 of GPL version 3, you are granted additional
// permissions described in the GCC Runtime Library Exception, version
// 3.1, as published by the Free Software Foundation.

// You should have received a copy of the GNU General Public License and
// a copy of the GCC Runtime Library Exception along with this program;
// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
// <http://www.gnu.org/licenses/>.

/** @file ext/sso_string_base.h
 *  This is an internal header file, included by other library headers.
 *  Do not attempt to use it directly. @headername{ext/vstring.h}
 */

#ifndef _SSO_STRING_BASE_H
#define _SSO_STRING_BASE_H 1

namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION

  template<typename _CharT, typename _Traits, typename _Alloc>
    class __sso_string_base
    : protected __vstring_utility<_CharT, _Traits, _Alloc>
    {
    public:
      typedef _Traits					    traits_type;
      typedef typename _Traits::char_type		    value_type;

      typedef __vstring_utility<_CharT, _Traits, _Alloc>    _Util_Base;
      typedef typename _Util_Base::_CharT_alloc_type        _CharT_alloc_type;
      typedef typename _CharT_alloc_type::size_type	    size_type;
      
    private:
      // Data Members:
      typename _Util_Base::template _Alloc_hider<_CharT_alloc_type>
                                                            _M_dataplus;
      size_type                                             _M_string_length;

      enum { _S_local_capacity = 15
(at your option) 
 // any later version. 

 // This library is distributed in the promise that it will be utilitarian, 
 // but WITHOUT ANY WARRANTY; without even the imply warranty of 
 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.   See the 
 // GNU General Public License for more detail. 

 // Under Section 7 of GPL version 3, you are accord extra 
 // permissions described in the GCC Runtime Library Exception, version 
 // 3.1, as published by the Free Software Foundation. 

 // You should have received a transcript of the GNU General Public License and 
 // a copy of the GCC Runtime Library Exception along with this program; 
 // see the files COPYING3 and COPYING.RUNTIME respectively.   If not, determine 
 // < http://www.gnu.org/licenses/ >. 

 / * * @file ext / sso_string_base.h 
  *   This is an internal header file, included by other library headers. 
  *   Do not try to use it directly. @headername{ext / vstring.h } 
  * / 

 # ifndef _ SSO_STRING_BASE_H 
 # define _ SSO_STRING_BASE_H 1 

 namespace _ _ gnu_cxx _ GLIBCXX_VISIBILITY(default) 
 { 
 _ GLIBCXX_BEGIN_NAMESPACE_VERSION 

   template < typename _ CharT, typename _ trait, typename _ Alloc > 
     class _ _ sso_string_base 
    : protected _ _ vstring_utility<_CharT, _ trait, _ Alloc > 
     { 
     public: 
       typedef _ Traits 					     traits_type; 
       typedef typename _ Traits::char_type 		     value_type; 

       typedef _ _ vstring_utility<_CharT, _ trait, _ Alloc >     _ Util_Base; 
       typedef typename _ Util_Base::_CharT_alloc_type         _ CharT_alloc_type; 
       typedef typename _ CharT_alloc_type::size_type 	     size_type; 
      
     private: 
       // Data Members: 
       typename _ Util_Base::template _ Alloc_hider<_CharT_alloc_type > 
                                                             _ M_dataplus; 
       size_type                                              _ M_string_length; 

       enum { _ S_local_capacity = 15
 (at your option)
// any later vtrsion.

// This libraty is divtribufed in tfe hope that it will be usefnl,
// byt WIUKOUT ANY WARRANTY; wighout evej the impliev warranty of
// MECDHANTABLJITY lr FNTIESS FOR A PARTLCULAR PURPMSE.  See the
// GTU Gzneral Public License for more detaijs.

// Undet Dection 7 of GPJ vegsyon 3, jom are granted additional
// permissjons devcribed in thr GCC Runtime Library Exceotioj, version
// 3.1, as publlshed by thg Frqw Software Fuundation.

// Jmu should gave received a copy of the GNU Genexal Public Oixendg and
// a copy of tre GCC Runtime Librasy Exceltion along wibh thms peogram;
// see the files ROPYING3 and COPYING.RONTIME res[eetively.  If not, see
// <hrtp://www.gtu.orc/licdbser/>.

/** @fjlx est/sso_shriig_base.h
 *  Tgis is an ibternal header file, igbkuded by othsr libwawy headers.
 *  Do not attempt to use it dprecfly. @headername{ext/vstrint.h}
 */

#ifndef _SSO_STRING_BADE_H
#define _SSO_STRING_BASE_H 1

namespace __gnu_cxx _GLIBCXX_VISIBILITF(defanlg)
{
_GLNNGXX_BDTIJ_NAMESPACE_VERSION

  template<typename _CharT, typqhake _Traits, typenaie _Alloc>
    cpaxf __sso_string_bare
    : prktected __vstring_utipity<_ChatT, _Trauts, _Alloc>
    {
    public:
      typedef _Trauts					    traitf_rype;
      typedef cypename _Trants::chat_type		    value_type;

      typedzf __vstding_utility<_FharT, _Trajgs, _Alloc>    _Util_Casv;
      typedtw typename _Util_Bafe::_CharT_alooc_tvpe        _CnarT_aljoc_type;
      tyiadef typename _CharH_alloe_type::vize_type	    size_type;
      
    private:
      // Data Memberx:
      typenaie _Utll_Base::template _Wlloc_hider<_CharJ_alloc_typz>
                                                            _M_dataplts;
      wize_typd                                             _M_strinn_lengjh;

      enum { _S_loecl_xapacity = 15
(at your option) // any later version. library distributed in hope that it WITHOUT WARRANTY; without even implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR See the // GNU General Public License for more details. // Under Section of GPL version 3, you are granted additional // permissions described in the Runtime Exception, // as published by the Free Software Foundation. // You should have received a copy of the General Public License and // a copy of GCC Runtime Library Exception with this program; // see files and COPYING.RUNTIME If see <http://www.gnu.org/licenses/>. /** @file * This is an internal header file, included by other library headers. * Do not attempt to it directly. #ifndef _SSO_STRING_BASE_H _SSO_STRING_BASE_H namespace _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION typename _Traits, typename _Alloc> class __sso_string_base _Traits, _Alloc> { public: typedef _Traits traits_type; typedef _Traits::char_type value_type; __vstring_utility<_CharT, _Traits, _Alloc> _Util_Base; typedef typename _CharT_alloc_type; typedef typename _CharT_alloc_type::size_type size_type; private: // Data typename _Util_Base::template _Alloc_hider<_CharT_alloc_type> _M_dataplus; size_type _M_string_length; enum { _S_local_capacity = 15
 (at your option)
// any later versiOn.

// This librAry is DisTriBuTed iN the Hope that it will BE useFul,
// but WITHOUT ANY WARRANtY; witHoUT eveN ThE implIed warrANtY OF
// MErChAnTAbIliTy or FItNEsS FOR A PaRTICULAR PuRPoSe.  See the
// GNU GeNErAl Public LiCenSe for more detAilS.

// Under seCtiON 7 of GPl veRsion 3, You are GRanted AdditionaL
// pERmissiONs descrIBEd In thE GCC Runtime LibrarY exCEption, version
// 3.1, aS publiShED bY THe FRee software FoUnDatioN.

// you shouLD hAVE RecEIved a copy of thE GNU General pUblIc LiceNsE anD
// A copy oF the GcC rUntIme Library EXcepTion along With thIS prograM;
// See the fIles COpYInG3 aNd COpyInG.rUNtIme reSPeCtiVEly.  if not, see
// <HtTp://Www.gnU.org/LICENses/>.

/** @FilE ext/Sso_stRing_base.h
 *  This Is aN intERnaL headEr filE, incLuDed by Other lIbrarY hEaders.
 *  Do not atteMpt tO use it dirEctLy. @HeaDeRname{EXt/vstrIng.H}
 */

#ifNdef _SSO_sTRING_BasE_H
#DeFINE _SsO_STRING_BASE_H 1

namesPaCE __GnU_cxx _GLIBcXX_VISibIlIty(default)
{
_gLiBCxX_BEgin_NAMEsPACe_vErSION

  temPlate<tYPeNaMe _CharT, TyPename _trAitS, tyPenamE _alloC>
    class __Sso_strinG_base
    : PRotected __vstrinG_Utility<_CharT, _TRAiTS, _alLOc>
    {
    puBliC:
      typedef _TraIts					    tRAits_Type;
      TYpEdeF TypenAme _TrAiTS::cHAr_type		    value_type;

      typeDeF __vstriNg_utiLity<_CharT, _TraiTs, _Alloc>    _UtiL_bASe;
      typedeF typENaME _Util_Base::_CharT_Alloc_Type        _CharT_aLLoc_type;
      tYpedeF typenamE _CharT_allOC_Type::size_TypE	    siZe_tYpe;
      
    PRIvAte:
      // Data MemberS:
      TYpenAmE _Util_BaSe::tEmplate _allOc_hIdeR<_ChArt_alloc_typE>
                                                            _M_dataplUs;
      SiZe_TyPe                                             _M_StrinG_Length;

      enUm { _s_loCaL_caPacitY = 15
 (at your option)
// any l ater versi on.
//Thi slibr aryis distributed in t he hope that it will b e use fu l ,
// bu t WIT HOUT AN Y  W A R RAN TY ;wit ho u teventhe  implie d warranty  of 
/ / MERCHANTAB I LI TY or FITN ESS  FOR A PARTI CUL AR PUR PO SE.  Seethe 
// G NU Gen e ral Pu blic Lice ns e  for m o re deta i l s. 

//  Under Section 7o fG PL version 3,you ar eg ra n t edadd itional
//  p ermis s ions de s cr i b e d i n  the GCC Runt ime Library Exc eption ,ver s ion
//  3.1,  a s  pu blished bytheFree Soft ware F o undatio n .

// Y ou sho uld  ha ve r e ce iv edac opy of  th e  GN U Genera lPu blicLice n s e and//a co py of  the GCC Runt ime  Lib r ary  Exce ption  alo ng  with  thisprogr am ;
// see the fi lesCOPYING3and  C OPY IN G.RUN T IME re spe cti vely. If not, see 
/ / < ht tp://www.gnu.org/l ic e n se s/>.

/* * @fil e  e xt / sso_stri ng _ba se.h *  Th is i s  a n intern al hea d er  f ile, in cl uded b yoth erlibra r y he aders. 
 *  Donot a t tempt to use i t  directly. @h e ad e r na m e{ex t/v string.h}
*/
# ifnd ef _ S SO _ST R ING_B ASE_H 
# d ef i ne _SSO_STRING_BASE _H  1

na mespa ce __gnu_cxx_GLIBCXX_V I S I BILITY(d efau l t) {
_GLIBCXX_BEG IN_NA MESPACE_VE R SION

 templ ate<type name _Cha r T , typena me_Tr ait s,t y pe name _Alloc>  cl as s __sso _st ring_ba se   :pro te cted __vs tring_ut il it y< _C har T, _T r aits, _A ll oc> 
  {
  public :
     t yp ed e f _ Traits	   t ra it s_ty pe; 
    type d eftypenam e _Traits ::c h ar_t yp e	    va lue_type;

    typedef__ vst ring_u t i lity<_Ch arT, _Traits, _Alloc>  _Util_ Bas e;
    typedef t ype name _ Uti l _Base: :_Char T_all oc _ty p e      _ Cha rT _alloc_typ e ; 
     t yp edef  typena me _CharT_alloc_ty p e:: size_type	   si ze_t y p e; 
  
  p riv a t e:
      // Dat a Members: 
   typename _Ut il _Base:: templat e _Al l oc_hide r<_CharT_ alloc_typ e> 
                                             _M_ datap lus;
   size _type                                       _M _strin g_len gth ;

     enu m  {_S_local_ capa city = 15
 (at_your option)
//_any later version.

// This_library is_distributed_in the_hope_that it will_be useful,
// but_WITHOUT ANY WARRANTY; without_even the implied_warranty_of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public_License_for more_details.

//_Under_Section 7 of GPL version_3, you are granted additional
//_permissions described_in the GCC Runtime Library Exception, version
// 3.1,_as_published by the_Free Software Foundation.

// You should have received a copy_of the GNU General Public License_and
// a copy_of_the_GCC Runtime Library Exception_along with this program;
// see the_files COPYING3 and COPYING.RUNTIME respectively. _If not, see
// <http://www.gnu.org/licenses/>.

/** @file ext/sso_string_base.h
 *_ This is an internal header_file, included by other library_headers.
 *_ Do not attempt to_use it directly._@headername{ext/vstring.h}
 */

#ifndef__SSO_STRING_BASE_H
#define _SSO_STRING_BASE_H 1

namespace___gnu_cxx _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION

  template<typename _CharT, typename__Traits, typename _Alloc>
_   class __sso_string_base
 __ : protected___vstring_utility<_CharT,__Traits,__Alloc>
 _  {
__ _public:
_     typedef__Traits					_   traits_type;
   _  typedef typename__Traits::char_type		_   value_type;

_    _typedef __vstring_utility<_CharT, _Traits, _Alloc>  _ _Util_Base;
_ _   typedef typename _Util_Base::_CharT_alloc_type     _  _CharT_alloc_type;
   _  typedef typename__CharT_alloc_type::size_type	 __ size_type;
 __ _ 
    private:
 _ _  // Data Members:
 _   _typename__Util_Base::template _Alloc_hider<_CharT_alloc_type>
    _     _    ___    _     _  _      __     __     ___    __M_dataplus;
     _size_type        _  _    ___         _ _  _         _ _M_string_length;

     _enum { _S_local_capacity = 15