LSSTApplications  8.0.0.0+107,8.0.0.1+13,9.1+18,9.2,master-g084aeec0a4,master-g0aced2eed8+6,master-g15627eb03c,master-g28afc54ef9,master-g3391ba5ea0,master-g3d0fb8ae5f,master-g4432ae2e89+36,master-g5c3c32f3ec+17,master-g60f1e072bb+1,master-g6a3ac32d1b,master-g76a88a4307+1,master-g7bce1f4e06+57,master-g8ff4092549+31,master-g98e65bf68e,master-ga6b77976b1+53,master-gae20e2b580+3,master-gb584cd3397+53,master-gc5448b162b+1,master-gc54cf9771d,master-gc69578ece6+1,master-gcbf758c456+22,master-gcec1da163f+63,master-gcf15f11bcc,master-gd167108223,master-gf44c96c709
LSSTDataManagementBasePackage
Static Public Member Functions | List of all members
ndarray::PyConverter< T > Struct Template Reference

A class providing Python conversion functions for T. More...

#include <PyConverter.h>

Inheritance diagram for ndarray::PyConverter< T >:
ndarray::detail::PyConverterBase< T >

Static Public Member Functions

static PyObject * toPython (T const &input)
 Convert a C++ object to a new Python object. More...
 
static PyTypeObject const * getPyType ()
 Return the Python TypeObject that corresponds to the object the toPython() function returns. More...
 
static bool fromPythonStage1 (PyPtr &p)
 Check if a Python object is convertible to T and optionally begin the conversion by replacing the input with an intermediate. More...
 
static bool fromPythonStage2 (PyPtr const &p, T &output)
 Complete a Python to C++ conversion begun with fromPythonStage1(). More...
 
- Static Public Member Functions inherited from ndarray::detail::PyConverterBase< T >
static bool matches (PyObject *arg)
 Check if a Python object might be convertible to T. More...
 
static int fromPython (PyObject *arg, T *output)
 Convert a Python object to a C++ object. More...
 

Detailed Description

template<typename T>
struct ndarray::PyConverter< T >

A class providing Python conversion functions for T.

Undocumented specializations exist for bool, int, long, float, double, std::complex, and std::string.

Definition at line 50 of file PyConverter.h.

Member Function Documentation

template<typename T >
static bool ndarray::PyConverter< T >::fromPythonStage1 ( PyPtr p)
static

Check if a Python object is convertible to T and optionally begin the conversion by replacing the input with an intermediate.

Returns
true if a conversion may be possible, and false if it is not (with a Python exception set).
Parameters
pOn input, a Python object to be converted. On output, a Python object to be passed to fromPythonStage2().
template<typename T >
static bool ndarray::PyConverter< T >::fromPythonStage2 ( PyPtr const &  p,
T &  output 
)
static

Complete a Python to C++ conversion begun with fromPythonStage1().

Returns
true if the conversion was successful, and false otherwise (with a Python exception set).
Parameters
pA Python object processed by fromPythonStage1().
outputThe output C++ object.
template<typename T >
static PyTypeObject const* ndarray::PyConverter< T >::getPyType ( )
static

Return the Python TypeObject that corresponds to the object the toPython() function returns.

template<typename T >
static PyObject* ndarray::PyConverter< T >::toPython ( T const &  input)
static

Convert a C++ object to a new Python object.

Returns
A new Python object, or NULL on failure (with a Python exception set).
Parameters
inputInput C++ object.

The documentation for this struct was generated from the following file: