diff options
Diffstat (limited to 'lib/kross/python/cxx/cxxsupport.cxx')
-rw-r--r-- | lib/kross/python/cxx/cxxsupport.cxx | 142 |
1 files changed, 0 insertions, 142 deletions
diff --git a/lib/kross/python/cxx/cxxsupport.cxx b/lib/kross/python/cxx/cxxsupport.cxx deleted file mode 100644 index 7bab6cc37..000000000 --- a/lib/kross/python/cxx/cxxsupport.cxx +++ /dev/null @@ -1,142 +0,0 @@ -//---------------------------------------------------------------------------// -// Copyright 1998 The Regents of the University of California. -// All rights reserved. See Legal.htm for full text and disclaimer. -//---------------------------------------------------------------------------// - -#include "Objects.hxx" -namespace Py { - -Py_UNICODE unicode_null_string[1] = { 0 }; - -Type Object::type () const - { - return Type (PyObject_Type (p), true); - } - -String Object::str () const - { - return String (PyObject_Str (p), true); - } - -String Object::repr () const - { - return String (PyObject_Repr (p), true); - } - -std::string Object::as_string() const - { - return static_cast<std::string>(str()); - } - -List Object::dir () const - { - return List (PyObject_Dir (p), true); - } - -bool Object::isType (const Type& t) const - { - return type ().ptr() == t.ptr(); - } - -Char::operator String() const - { - return String(ptr()); - } - -// TMM: non-member operaters for iterators - see above -// I've also made a bug fix in respect to the cxx code -// (dereffed the left.seq and right.seq comparison) -bool operator==(const Sequence::iterator& left, const Sequence::iterator& right) - { - return left.eql( right ); - } - -bool operator!=(const Sequence::iterator& left, const Sequence::iterator& right) - { - return left.neq( right ); - } - -bool operator< (const Sequence::iterator& left, const Sequence::iterator& right) - { - return left.lss( right ); - } - -bool operator> (const Sequence::iterator& left, const Sequence::iterator& right) - { - return left.gtr( right ); - } - -bool operator<=(const Sequence::iterator& left, const Sequence::iterator& right) - { - return left.leq( right ); - } - -bool operator>=(const Sequence::iterator& left, const Sequence::iterator& right) - { - return left.geq( right ); - } - -// now for const_iterator -bool operator==(const Sequence::const_iterator& left, const Sequence::const_iterator& right) - { - return left.eql( right ); - } - -bool operator!=(const Sequence::const_iterator& left, const Sequence::const_iterator& right) - { - return left.neq( right ); - } - -bool operator< (const Sequence::const_iterator& left, const Sequence::const_iterator& right) - { - return left.lss( right ); - } - -bool operator> (const Sequence::const_iterator& left, const Sequence::const_iterator& right) - { - return left.gtr( right ); - } - -bool operator<=(const Sequence::const_iterator& left, const Sequence::const_iterator& right) - { - return left.leq( right ); - } - -bool operator>=(const Sequence::const_iterator& left, const Sequence::const_iterator& right) - { - return left.geq( right ); - } - -// For mappings: -bool operator==(const Mapping::iterator& left, const Mapping::iterator& right) - { - return left.eql( right ); - } - -bool operator!=(const Mapping::iterator& left, const Mapping::iterator& right) - { - return left.neq( right ); - } - -// now for const_iterator -bool operator==(const Mapping::const_iterator& left, const Mapping::const_iterator& right) - { - return left.eql( right ); - } - -bool operator!=(const Mapping::const_iterator& left, const Mapping::const_iterator& right) - { - return left.neq( right ); - } - -// TMM: 31May'01 - Added the #ifndef so I can exclude iostreams. -#ifndef CXX_NO_IOSTREAMS -// output - -std::ostream& operator<< (std::ostream& os, const Object& ob) - { - return (os << static_cast<std::string>(ob.str())); - } -#endif - -} // Py |