libzypp  10.5.0
XmlString.cc
Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                          ____ _   __ __ ___                          |
00003 |                         |__  / \ / / . \ . \                         |
00004 |                           / / \ V /|  _/  _/                         |
00005 |                          / /__ | | | | | |                           |
00006 |                         /_____||_| |_| |_|                           |
00007 |                                                                      |
00008 \---------------------------------------------------------------------*/
00013 #include <iostream>
00014 
00015 #include "zypp/parser/xml/XmlString.h"
00016 
00018 namespace zypp
00019 { 
00020 
00021   namespace xml
00022   { 
00023 
00025     //
00026     //  METHOD NAME : XmlString::XmlString
00027     //  METHOD TYPE : Constructor
00028     //
00029     XmlString::XmlString( const xmlChar *const xmlstr_r,
00030                           OnDelete ondelete_r )
00031     {
00032       if ( xmlstr_r )
00033         {
00034           if ( ondelete_r == FREE )
00035             _xmlstr.reset( xmlstr_r, Deleter() );
00036           else
00037             _xmlstr.reset( xmlstr_r, NullDeleter() );
00038         }
00039     }
00040 
00041     /******************************************************************
00042      **
00043      ** FUNCTION NAME : operator<<
00044      ** FUNCTION TYPE : std::ostream &
00045     */
00046     std::ostream & operator<<( std::ostream & str, const XmlString & obj )
00047     {
00048       if ( obj )
00049         return str << obj.c_str();
00050       return str << "NULL";
00051     }
00052 
00054   } // namespace xml
00057 } // namespace zypp