Logo ROOT  
Reference Guide
CPyCppyy::Utility Namespace Reference

Classes

struct  PyError_t
 
struct  PyOperators
 

Enumerations

enum  ArgPreference { kNone, kPointer, kReference, kValue }
 

Functions

bool AddToClass (PyObject *pyclass, const char *label, PyCFunction cfunc, int flags=METH_VARARGS)
 
bool AddToClass (PyObject *pyclass, const char *label, const char *func)
 
bool AddToClass (PyObject *pyclass, const char *label, PyCallable *pyfunc)
 
Py_ssize_t ArraySize (const std::string &name)
 
std::string ClassName (PyObject *pyobj)
 
const std::string Compound (const std::string &name)
 
void ConstructCallbackPreamble (const std::string &retType, const std::vector< std::string > &argtypes, std::ostringstream &code)
 
void ConstructCallbackReturn (const std::string &retType, int nArgs, std::ostringstream &code)
 
std::string ConstructTemplateArgs (PyObject *pyname, PyObject *tpArgs, PyObject *args=nullptr, ArgPreference=kNone, int argoff=0, int *pcnt=nullptr)
 
size_t FetchError (std::vector< PyError_t > &)
 
PyCallableFindBinaryOperator (PyObject *left, PyObject *right, const char *op, Cppyy::TCppScope_t scope=0)
 
PyCallableFindBinaryOperator (const std::string &lcname, const std::string &rcname, const char *op, Cppyy::TCppScope_t scope=0, bool reverse=false)
 
PyCallableFindUnaryOperator (PyObject *pyclass, const char *op)
 
Py_ssize_t GetBuffer (PyObject *pyobject, char tc, int size, void *&buf, bool check=true)
 
bool IncludePython ()
 
bool InitProxy (PyObject *module, PyTypeObject *pytype, const char *name)
 
std::string MapOperatorName (const std::string &name, bool bTakesParames)
 
PyObjectPyErr_Occurred_WithGIL ()
 
void SetDetailedException (std::vector< PyError_t > &errors, PyObject *topmsg, PyObject *defexc)
 

Enumeration Type Documentation

◆ ArgPreference

Enumerator
kNone 
kPointer 
kReference 
kValue 

Definition at line 36 of file Utility.h.

Function Documentation

◆ AddToClass() [1/3]

bool CPyCppyy::Utility::AddToClass ( PyObject pyclass,
const char *  label,
PyCFunction  cfunc,
int  flags = METH_VARARGS 
)

Definition at line 169 of file Utility.cxx.

◆ AddToClass() [2/3]

bool CPyCppyy::Utility::AddToClass ( PyObject pyclass,
const char *  label,
const char *  func 
)

Definition at line 204 of file Utility.cxx.

◆ AddToClass() [3/3]

bool CPyCppyy::Utility::AddToClass ( PyObject pyclass,
const char *  label,
PyCallable pyfunc 
)

Definition at line 220 of file Utility.cxx.

◆ ArraySize()

Py_ssize_t CPyCppyy::Utility::ArraySize ( const std::string &  name)

Definition at line 806 of file Utility.cxx.

◆ ClassName()

std::string CPyCppyy::Utility::ClassName ( PyObject pyobj)

Definition at line 825 of file Utility.cxx.

◆ Compound()

const std::string CPyCppyy::Utility::Compound ( const std::string &  name)

Definition at line 782 of file Utility.cxx.

◆ ConstructCallbackPreamble()

void CPyCppyy::Utility::ConstructCallbackPreamble ( const std::string &  retType,
const std::vector< std::string > &  argtypes,
std::ostringstream &  code 
)

Definition at line 517 of file Utility.cxx.

◆ ConstructCallbackReturn()

void CPyCppyy::Utility::ConstructCallbackReturn ( const std::string &  retType,
int  nArgs,
std::ostringstream &  code 
)

Definition at line 561 of file Utility.cxx.

◆ ConstructTemplateArgs()

std::string CPyCppyy::Utility::ConstructTemplateArgs ( PyObject pyname,
PyObject tpArgs,
PyObject args = nullptr,
ArgPreference  pref = kNone,
int  argoff = 0,
int pcnt = nullptr 
)

Definition at line 473 of file Utility.cxx.

◆ FetchError()

size_t CPyCppyy::Utility::FetchError ( std::vector< PyError_t > &  errors)

Definition at line 879 of file Utility.cxx.

◆ FindBinaryOperator() [1/2]

CPyCppyy::PyCallable * CPyCppyy::Utility::FindBinaryOperator ( PyObject left,
PyObject right,
const char *  op,
Cppyy::TCppScope_t  scope = 0 
)

Definition at line 280 of file Utility.cxx.

◆ FindBinaryOperator() [2/2]

CPyCppyy::PyCallable * CPyCppyy::Utility::FindBinaryOperator ( const std::string &  lcname,
const std::string &  rcname,
const char *  op,
Cppyy::TCppScope_t  scope = 0,
bool  reverse = false 
)

Definition at line 301 of file Utility.cxx.

◆ FindUnaryOperator()

CPyCppyy::PyCallable * CPyCppyy::Utility::FindUnaryOperator ( PyObject pyclass,
const char *  op 
)

Definition at line 266 of file Utility.cxx.

◆ GetBuffer()

Py_ssize_t CPyCppyy::Utility::GetBuffer ( PyObject pyobject,
char  tc,
int  size,
void *&  buf,
bool  check = true 
)

Definition at line 614 of file Utility.cxx.

◆ IncludePython()

bool CPyCppyy::Utility::IncludePython ( )

Definition at line 935 of file Utility.cxx.

◆ InitProxy()

bool CPyCppyy::Utility::InitProxy ( PyObject module,
PyTypeObject *  pytype,
const char *  name 
)

Definition at line 594 of file Utility.cxx.

◆ MapOperatorName()

std::string CPyCppyy::Utility::MapOperatorName ( const std::string &  name,
bool  bTakesParames 
)

Definition at line 727 of file Utility.cxx.

◆ PyErr_Occurred_WithGIL()

PyObject * CPyCppyy::Utility::PyErr_Occurred_WithGIL ( )

Definition at line 859 of file Utility.cxx.

◆ SetDetailedException()

void CPyCppyy::Utility::SetDetailedException ( std::vector< PyError_t > &  errors,
PyObject topmsg,
PyObject defexc 
)

Definition at line 891 of file Utility.cxx.