X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=zypp%2Fparser%2Fxml%2FParseDefConsume.h;h=ba559ee40b667c625d72c77ac8c7fe4c2aed9a67;hb=42b5d038414cf4a4a050e816b471f890b24e8032;hp=2f75dc9b2d631be225ff5756aa3e993a1985088f;hpb=b61a0ff7e76a542a874714e4ee7753db48f9f8aa;p=platform%2Fupstream%2Flibzypp.git diff --git a/zypp/parser/xml/ParseDefConsume.h b/zypp/parser/xml/ParseDefConsume.h index 2f75dc9..ba559ee 100644 --- a/zypp/parser/xml/ParseDefConsume.h +++ b/zypp/parser/xml/ParseDefConsume.h @@ -14,7 +14,7 @@ #include "zypp/base/PtrTypes.h" #include "zypp/base/Function.h" -#include "zypp/base/Tr1hash.h" +#include "zypp/base/Hash.h" #include "zypp/base/String.h" #include "zypp/base/DefaultIntegral.h" @@ -125,13 +125,13 @@ namespace zypp /** \ref parseDefAssign exposed details */ namespace parse_def_assign { ///////////////////////////////////////////////////////////////// - template struct Assigner; + template struct Assigner; typedef shared_ptr > AssignerRef; /** Common interface to all Assigner types. */ template <> - struct Assigner + struct Assigner { virtual ~Assigner() {} @@ -140,20 +140,20 @@ namespace zypp }; /** Assigner assigns text to types constructible from \c char*. - * \see \ref assigner consvenience constructor. + * \see \ref assigner convenience constructor. */ - template - struct Assigner : public Assigner + template + struct Assigner : public Assigner { - Assigner(_Type & value_r ) + Assigner( Tp & value_r ) : _value( &value_r ) {} virtual void assign( const char * text_r ) - { *_value = _Type( text_r ); } + { *_value = Tp( text_r ); } private: - _Type * _value; + Tp * _value; }; /** \name Assigner specialisation for numeric and boolean values. @@ -176,20 +176,19 @@ namespace zypp inline void Assigner::assign( const char * text_r ) { str::strtonum( text_r, *_value ); } template <> inline void Assigner::assign( const char * text_r ) { str::strtonum( text_r, *_value ); } - template <> - inline void Assigner::assign( const char * text_r ) { str::strToBoolNodefault( text_r, *_value ); } + inline void Assigner::assign( const char * text_r ) { str::strToBoolNodefault( text_r, *_value ); } //@} /** \name \relates Assigner Convenience constructor */ //@{ - template - inline AssignerRef assigner( _Type & value_r ) - { return AssignerRef( new Assigner<_Type>( value_r ) ); } + template + inline AssignerRef assigner( Tp & value_r ) + { return AssignerRef( new Assigner( value_r ) ); } - template - inline AssignerRef assigner( DefaultIntegral<_Tp,_Initial> & value_r ) - { return AssignerRef( new Assigner<_Tp>( value_r.get() ) ); } + template + inline AssignerRef assigner( DefaultIntegral & value_r ) + { return AssignerRef( new Assigner( value_r.get() ) ); } //@} @@ -259,10 +258,10 @@ namespace zypp } private: - std::tr1::unordered_map > _attr; - std::vector _text; - function _pre; - function _post; + std::unordered_map > _attr; + std::vector _text; + function _pre; + function _post; }; /** Helper class to build a \ref Consumer. @@ -286,25 +285,25 @@ namespace zypp {} /** Contruct \ref Consumer. */ - template - Builder( _Type & value_r ) + template + Builder( Tp & value_r ) : _ptr( new Consumer ) { operator()( value_r ); } /** Contruct \ref Consumer. */ - template - Builder( const std::string & attr_r, _Type & value_r ) + template + Builder( const std::string & attr_r, Tp & value_r ) : _ptr( new Consumer ) { operator()( attr_r, value_r ); } /** Extend \ref Consumer. */ - template - Builder & operator()( _Type & value_r ) + template + Builder & operator()( Tp & value_r ) { _ptr->add( assigner( value_r ) ); return *this; } /** Extend \ref Consumer. */ - template - Builder & operator()( const std::string & attr_r, _Type & value_r ) + template + Builder & operator()( const std::string & attr_r, Tp & value_r ) { _ptr->add( attr_r, assigner( value_r ) ); return *this; } /** Set pre notification callback. */ @@ -356,12 +355,12 @@ namespace zypp inline parse_def_assign::Builder parseDefAssign() { return parse_def_assign::Builder(); } - template - inline parse_def_assign::Builder parseDefAssign( _Type & value_r ) + template + inline parse_def_assign::Builder parseDefAssign( Tp & value_r ) { return parse_def_assign::Builder( value_r ); } - template - inline parse_def_assign::Builder parseDefAssign( const std::string & attr_r, _Type & value_r ) + template + inline parse_def_assign::Builder parseDefAssign( const std::string & attr_r, Tp & value_r ) { return parse_def_assign::Builder( attr_r, value_r ); } //@}