logo       

CVS: boost/boost/detail identifier.hpp,1.1,1.2: msg#00776

Subject: CVS: boost/boost/detail identifier.hpp,1.1,1.2
Update of /cvsroot/boost/boost/boost/detail
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv18681

Modified Files:
        identifier.hpp 
Log Message:
move to namespace detail

Index: identifier.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/detail/identifier.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- identifier.hpp      3 Nov 2006 16:57:29 -0000       1.1
+++ identifier.hpp      13 Nov 2006 22:10:57 -0000      1.2
@@ -16,71 +16,74 @@
 
 namespace boost
 {
-  //  class template identifier  
---------------------------------------------//
+  namespace detail
+  {
+    //  class template identifier  
---------------------------------------------//
 
-  //  Always used as a base class so that different instantiations result in
-  //  different class types even if instantiated with the same value type T.
+    //  Always used as a base class so that different instantiations result in
+    //  different class types even if instantiated with the same value type T.
 
-  //  Expected usage is that T is often an integer type, best passed by
-  //  value. There is no reason why T can't be a possibly larger class such as
-  //  std::string, best passed by const reference.
+    //  Expected usage is that T is often an integer type, best passed by
+    //  value. There is no reason why T can't be a possibly larger class such 
as
+    //  std::string, best passed by const reference.
 
-  //  This implementation uses pass by value, based on expected common uses.
+    //  This implementation uses pass by value, based on expected common uses.
 
-  template <typename T, typename D>
-  class identifier
-  {
-  public:
-    typedef T value_type;
+    template <typename T, typename D>
+    class identifier
+    {
+    public:
+      typedef T value_type;
 
-    const value_type value() const           { return m_value; }
-    void  assign( value_type v )             { m_value = v; }
+      const value_type value() const           { return m_value; }
+      void  assign( value_type v )             { m_value = v; }
 
-    bool operator==( const D & rhs ) const   { return m_value == rhs.m_value; }
-    bool operator!=( const D & rhs ) const   { return m_value != rhs.m_value; }
-    bool operator< ( const D & rhs ) const   { return m_value <  rhs.m_value; }
-    bool operator<=( const D & rhs ) const   { return m_value <= rhs.m_value; }
-    bool operator> ( const D & rhs ) const   { return m_value >  rhs.m_value; }
-    bool operator>=( const D & rhs ) const   { return m_value >= rhs.m_value; }
+      bool operator==( const D & rhs ) const   { return m_value == 
rhs.m_value; }
+      bool operator!=( const D & rhs ) const   { return m_value != 
rhs.m_value; }
+      bool operator< ( const D & rhs ) const   { return m_value <  
rhs.m_value; }
+      bool operator<=( const D & rhs ) const   { return m_value <= 
rhs.m_value; }
+      bool operator> ( const D & rhs ) const   { return m_value >  
rhs.m_value; }
+      bool operator>=( const D & rhs ) const   { return m_value >= 
rhs.m_value; }
 
-    typedef void (*unspecified_bool_type)(D); // without the D, 
unspecified_bool_type 
-    static void unspecified_bool_true(D){}    // conversion allows relational 
operators
-                                              // between different identifier 
types
+      typedef void (*unspecified_bool_type)(D); // without the D, 
unspecified_bool_type 
+      static void unspecified_bool_true(D){}    // conversion allows 
relational operators
+                                                // between different 
identifier types
 
-    operator unspecified_bool_type() const   { return m_value == value_type() 
? 0 : unspecified_bool_true; }
-    bool operator!() const                   { return m_value == value_type(); 
}
+      operator unspecified_bool_type() const   { return m_value == 
value_type() ? 0 : unspecified_bool_true; }
+      bool operator!() const                   { return m_value == 
value_type(); }
 
-  // constructors are protected so that class can only be used as a base class
-  protected:
-    identifier()                             {}
-    explicit identifier( value_type v )      : m_value(v) {}
+    // constructors are protected so that class can only be used as a base 
class
+    protected:
+      identifier()                             {}
+      explicit identifier( value_type v )      : m_value(v) {}
 
-#if !defined(BOOST_MSVC) || BOOST_MSVC > 1300  // 1300 == VC++ 7.0 bug 
workaround
-  private:
-#endif
-    T m_value;
-  };
+  #if !defined(BOOST_MSVC) || BOOST_MSVC > 1300  // 1300 == VC++ 7.0 bug 
workaround
+    private:
+  #endif
+      T m_value;
+    };
 
-#ifndef BOOST_NO_SFINAE
+  //#ifndef BOOST_NO_SFINAE
 
-  template <class Ostream, class Id>
-    typename enable_if< is_base_of< identifier< typename Id::value_type, Id >, 
Id >, 
-      Ostream & >::type operator<<( Ostream & os, const Id & id )
-  {
-    return os << id.value();
-  }
+  //  template <class Ostream, class Id>
+  //    typename enable_if< is_base_of< identifier< typename Id::value_type, 
Id >, Id >, 
+  //      Ostream & >::type operator<<( Ostream & os, const Id & id )
+  //  {
+  //    return os << id.value();
+  //  }
 
-  template <class Istream, class Id>
-    typename enable_if< is_base_of< identifier< typename Id::value_type, Id >, 
Id >, 
-      Istream & >::type operator>>( Istream & is, Id & id )
-  {
-    typename Id::value_type v;
-    is >> v;
-    id.value( v );
-    return is;
-  }
-#endif 
+  //  template <class Istream, class Id>
+  //    typename enable_if< is_base_of< identifier< typename Id::value_type, 
Id >, Id >, 
+  //      Istream & >::type operator>>( Istream & is, Id & id )
+  //  {
+  //    typename Id::value_type v;
+  //    is >> v;
+  //    id.value( v );
+  //    return is;
+  //  }
+  //#endif
 
+  } // namespace detail
 } // namespace boost
 
 #endif // BOOST_IDENTIFIER_HPP


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
linux.arklinux....    user-groups.lin...    kde.usability/2...    ietf.ipp/2002-0...    mail.spam.spamc...    os.netbsd.devel...    audio.cd-record...    text.unicode.de...    php.documentati...    games.fps.halfl...    window-managers...    suse.oracle.gen...    bug-tracking.gn...    video.dvdrip.us...    xfree86.cvs/200...    java.netbeans.m...    network.argus/2...    culture.sf.kill...    debian.ports.al...    freebsd.questio...    qplus.devel/200...    handhelds.palm....   
Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe