Hello,

I'm looking for some confirmation that my understanding of what
boost.python is doing is correct.

>From what I understand boost::python::str represents the str
(PyStringObject) type in Python.  Unless I'm missing something, here
doesn't seem to be anything like boost::python::unicode representing the
unicode type (PyUnicodeObject).

Boost.Python does have a built-in conversion from std::wstring to
object, but this creates a str in Python, so presumably there is some
(lossy?) decoding going on here.

It seems that to directly create a PyUnicodeObject from C++ I will need
to do one or more of the following:

1) Directly use the Python C API to create and manipulate
PyUnicodeObject.
2) Create my own subclass of boost::python::object called for example
'unicode', which would be similar to the str class provided out of the
box, but would use PyUnicodeObject underneath and deal with wchar_t
rather than char.

Correct?

Many thanks,

Rob

DISCLAIMER:
This message contains information that may be privileged or confidential and is 
the property of the Roxar Group. It is intended only for the person to whom it 
is addressed. If you are not the intended recipient, you are not authorised to 
read, print, retain, copy, disseminate, distribute, or use this message or any 
part thereof. If you receive this message in error, please notify the sender 
immediately and delete all copies of this message.
_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

Reply via email to