Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
mantidproject
mantid
Commits
a4f7c166
Commit
a4f7c166
authored
Dec 08, 2020
by
Peterson, Peter
Browse files
Remove python 2/3 compatibility code from bindings
parent
4be610a8
Changes
4
Hide whitespace changes
Inline
Side-by-side
Framework/PythonInterface/mantid/api/src/Exports/IPeaksWorkspace.cpp
View file @
a4f7c166
...
...
@@ -239,15 +239,8 @@ IPeaksWorkspaceIterator makePyIterator(IPeaksWorkspace &self) {
void
export_IPeaksWorkspaceIterator
()
{
class_
<
IPeaksWorkspaceIterator
>
(
"IPeaksWorkspaceIterator"
,
no_init
)
.
def
(
#if PY_VERSION_HEX >= 0x03000000
"__next__"
#else
"next"
#endif
,
&
IPeaksWorkspaceIterator
::
next
,
return_value_policy
<
reference_existing_object
>
())
.
def
(
"__next__"
,
&
IPeaksWorkspaceIterator
::
next
,
return_value_policy
<
reference_existing_object
>
())
.
def
(
"__iter__"
,
objects
::
identity_function
());
}
...
...
Framework/PythonInterface/mantid/api/src/Exports/SpectrumInfoPythonIterator.cpp
View file @
a4f7c166
...
...
@@ -20,15 +20,8 @@ void export_SpectrumInfoPythonIterator() {
// Export to Python
class_
<
SpectrumInfoPythonIterator
>
(
"SpectrumInfoPythonIterator"
,
no_init
)
.
def
(
"__iter__"
,
objects
::
identity_function
())
.
def
(
#if PY_VERSION_HEX >= 0x03000000
"__next__"
#else
"next"
#endif
,
&
SpectrumInfoPythonIterator
::
next
,
return_value_policy
<
copy_const_reference
>
());
.
def
(
"__next__"
,
&
SpectrumInfoPythonIterator
::
next
,
return_value_policy
<
copy_const_reference
>
());
/*
Return value policy for next is to copy the const reference. Copy by value is
essential for python 2.0 compatibility because items (SpectrumInfoItem) will
...
...
Framework/PythonInterface/mantid/kernel/src/kernel.cpp.in
View file @
a4f7c166
...
...
@@ -40,37 +40,6 @@ namespace converter = boost::python::converter;
// Forward declare
@EXPORT_DECLARE@
#if PY_VERSION_HEX < 0x03000000
/**
* Adds a from_python converter to converter unicode strings to std::string
* by encoding them in utf-8 if possible. Adapted from
* https://www.boost.org/doc/libs/1_68_0/libs/python/doc/html/faq/how_can_i_automatically_convert_.html
*/
struct from_unicode_py2 {
from_unicode_py2() {
converter::registry::push_back(&convertible, &construct,
type_id<std::string>());
}
static void *convertible(PyObject *obj_ptr) {
return (PyUnicode_Check(obj_ptr)) ? obj_ptr : 0;
}
static void construct(PyObject *obj_ptr,
converter::rvalue_from_python_stage1_data *data) {
PyObject *pyutf8 = PyUnicode_AsUTF8String(obj_ptr);
if (pyutf8 == 0)
boost::python::throw_error_already_set();
const char *value = PyString_AsString(pyutf8);
if (value == 0)
boost::python::throw_error_already_set();
using rvalue_from_python_std_string = converter::rvalue_from_python_storage<std::string>;
void *storage = reinterpret_cast<rvalue_from_python_std_string*>(data)->storage.bytes;
new (storage) std::string(value);
data->convertible = storage;
Py_DECREF(pyutf8); // Must be deleted after the std::string has taken a copy
}
};
#endif
BOOST_PYTHON_MODULE(_kernel) {
// Doc string options - User defined, python arguments, C++ call signatures
boost::python::docstring_options docstrings(true, true, false);
...
...
@@ -98,11 +67,6 @@ BOOST_PYTHON_MODULE(_kernel) {
def("paper_citation", &Mantid::Kernel::MantidVersion::paperCitation,
"Returns The citation for the Mantid paper");
#if PY_VERSION_HEX < 0x03000000
// accept unicode strings wherever we see std::string (as long as they can be
// encoded in utf8)
from_unicode_py2();
#endif
Mantid::PythonInterface::Registry::TypeRegistry::registerBuiltins();
@EXPORT_FUNCTIONS@
...
...
buildconfig/CMake/CppCheck_Suppressions.txt.in
View file @
a4f7c166
...
...
@@ -88,9 +88,6 @@ noCopyConstructor:${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Rend
// ----------------- Upstream libs ---------------
// Always ignore bin dir
*:*${CMAKE_BINARY_DIR}/*
// All ANN files as they are upstream anyway
*:*${CMAKE_SOURCE_DIR}/Framework/Kernel/src/ANN/*
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment