本文整理汇总了C++中PyString_FromFormat函数的典型用法代码示例。如果您正苦于以下问题:C++ PyString_FromFormat函数的具体用法?C++ PyString_FromFormat怎么用?C++ PyString_FromFormat使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了PyString_FromFormat函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AMC_repr
static PyObject *
AMC_repr (AMC *motion)
{
if (motion->name == NULL)
return PyString_FromFormat ("[AMC]");
return PyString_FromFormat ("[AMC \"%s\"]", motion->name);
}
示例2: PyCField_repr
static PyObject *
PyCField_repr(CFieldObject *self)
{
PyObject *result;
Py_ssize_t bits = self->size >> 16;
Py_ssize_t size = self->size & 0xFFFF;
const char *name;
name = ((PyTypeObject *)self->proto)->tp_name;
if (bits)
result = PyString_FromFormat(
#if (PY_VERSION_HEX < 0x02050000)
"<Field type=%s, ofs=%d:%d, bits=%d>",
#else
"<Field type=%s, ofs=%zd:%zd, bits=%zd>",
#endif
name, self->offset, size, bits);
else
result = PyString_FromFormat(
#if (PY_VERSION_HEX < 0x02050000)
"<Field type=%s, ofs=%d, size=%d>",
#else
"<Field type=%s, ofs=%zd, size=%zd>",
#endif
name, self->offset, size);
return result;
}
示例3: enum_repr
static PyObject* enum_repr(PyObject* self_)
{
// XXX(bhy) Potentional memory leak here since PyObject_GetAttrString returns a new reference
// const char *mod = PyString_AsString(PyObject_GetAttrString( self_, const_cast<char*>("__module__")));
PyObject *mod = PyObject_GetAttrString( self_, "__module__");
enum_object* self = downcast<enum_object>(self_);
if (!self->name)
{
return
#if PY_VERSION_HEX >= 0x03000000
PyUnicode_FromFormat("%S.%s(%ld)", mod, self_->ob_type->tp_name, PyLong_AsLong(self_));
#else
PyString_FromFormat("%s.%s(%ld)", PyString_AsString(mod), self_->ob_type->tp_name, PyInt_AS_LONG(self_));
#endif
}
else
{
PyObject* name = self->name;
if (name == 0)
return 0;
return
#if PY_VERSION_HEX >= 0x03000000
PyUnicode_FromFormat("%S.%s.%S", mod, self_->ob_type->tp_name, name);
#else
PyString_FromFormat("%s.%s.%s",
PyString_AsString(mod), self_->ob_type->tp_name, PyString_AsString(name));
#endif
}
}
示例4: DBusPythonLong_tp_repr
static PyObject *
DBusPythonLong_tp_repr(PyObject *self)
{
PyObject *parent_repr = (PyLong_Type.tp_repr)(self);
PyObject *vl_obj;
PyObject *my_repr;
long variant_level;
if (!parent_repr) return NULL;
vl_obj = PyObject_GetAttr(self, dbus_py_variant_level_const);
if (!vl_obj) {
Py_DECREF(parent_repr);
return NULL;
}
variant_level = PyInt_AsLong(vl_obj);
Py_DECREF(vl_obj);
if (variant_level) {
my_repr = PyString_FromFormat("%s(%s, variant_level=%ld)",
self->ob_type->tp_name,
PyString_AS_STRING(parent_repr),
variant_level);
}
else {
my_repr = PyString_FromFormat("%s(%s)", self->ob_type->tp_name,
PyString_AS_STRING(parent_repr));
}
/* whether my_repr is NULL or not: */
Py_DECREF(parent_repr);
return my_repr;
}
示例5: normalizeUserObj
static PyObject *
normalizeUserObj(PyObject *obj)
{
PyCFunctionObject *fn;
if (!PyCFunction_Check(obj)) {
Py_INCREF(obj);
return obj;
}
/* Replace built-in function objects with a descriptive string
because of built-in methods -- keeping a reference to
__self__ is probably not a good idea. */
fn = (PyCFunctionObject *)obj;
if (fn->m_self == NULL) {
/* built-in function: look up the module name */
PyObject *mod = fn->m_module;
char *modname;
if (mod && PyString_Check(mod)) {
modname = PyString_AS_STRING(mod);
}
else if (mod && PyModule_Check(mod)) {
modname = PyModule_GetName(mod);
if (modname == NULL) {
PyErr_Clear();
modname = "__builtin__";
}
}
else {
modname = "__builtin__";
}
if (strcmp(modname, "__builtin__") != 0)
return PyString_FromFormat("<%s.%s>",
modname,
fn->m_ml->ml_name);
else
return PyString_FromFormat("<%s>",
fn->m_ml->ml_name);
}
else {
/* built-in method: try to return
repr(getattr(type(__self__), __name__))
*/
PyObject *self = fn->m_self;
PyObject *name = PyString_FromString(fn->m_ml->ml_name);
if (name != NULL) {
PyObject *mo = _PyType_Lookup(Py_TYPE(self), name);
Py_XINCREF(mo);
Py_DECREF(name);
if (mo != NULL) {
PyObject *res = PyObject_Repr(mo);
Py_DECREF(mo);
if (res != NULL)
return res;
}
}
PyErr_Clear();
return PyString_FromFormat("<built-in method %s>",
fn->m_ml->ml_name);
}
}
示例6: SqlType_repr
static PyObject* SqlType_repr(PyObject* self)
{
const struct SqlType* type = (const struct SqlType*)self;
PyObject* repr = NULL;
bool include_size = (-1 != type->size);
#if PY_MAJOR_VERSION < 3
/*
Python2.6's implementation of `PyUnicode_FromFormat` is buggy and
will crash when the '%R' format specifier is used. Additionally
a conversion to the `str` type is required. Avoid all this in Python2.
*/
PyObject* value = PyObject_Repr(type->value);
if (value)
{
if (include_size)
{
repr = PyString_FromFormat(
"%s(%s, size=%d)",
Py_TYPE(self)->tp_name,
PyString_AS_STRING(value),
type->size
);
}
else
{
repr = PyString_FromFormat(
"%s(%s)",
Py_TYPE(self)->tp_name,
PyString_AS_STRING(value)
);
}
Py_DECREF(value);
}
#else /* if PY_MAJOR_VERSION < 3 */
if (include_size)
{
repr = PyUnicode_FromFormat(
"%s(%R, size=%d)",
Py_TYPE(self)->tp_name,
type->value,
type->size
);
}
else
{
repr = PyUnicode_FromFormat(
"%s(%R)",
Py_TYPE(self)->tp_name,
type->value
);
}
#endif /* else if PY_MAJOR_VERSION < 3 */
return repr;
}
示例7: cell_repr
static PyObject *
cell_repr(PyCellObject *op)
{
if (op->ob_ref == NULL)
return PyString_FromFormat("<cell at %p: empty>", op);
return PyString_FromFormat("<cell at %p: %.80s object at %p>",
op, op->ob_ref->ob_type->tp_name,
op->ob_ref);
}
示例8: PySwigPacked_str
SWIGRUNTIME PyObject *
PySwigPacked_str(PySwigPacked *v)
{
char result[SWIG_BUFFER_SIZE];
if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
return PyString_FromFormat("%s%s", result, v->desc);
} else {
return PyString_FromFormat("%s", v->desc);
}
}
示例9: meth_repr
static PyObject *
meth_repr(PyCFunctionObject *m)
{
if (m->m_self == NULL)
return PyString_FromFormat("<built-in function %s>",
m->m_ml->ml_name);
return PyString_FromFormat("<built-in method %s of %s object at %p>",
m->m_ml->ml_name,
m->m_self->ob_type->tp_name,
m->m_self);
}
示例10: range_repr
static PyObject *
range_repr(range *self)
{
if (self->step == 1)
{
return PyString_FromFormat("range(%i, %i)", self->start, self->stop);
}
else
{
return PyString_FromFormat("range(%i, %i, %i)", self->start, self->stop, self->step);
}
}
示例11: PyBlitzArray_repr
/* Representation */
static PyObject* PyBlitzArray_repr(PyBlitzArrayObject* o) {
switch (o->ndim) {
case 1:
return
PyString_FromFormat
("%s(%" PY_FORMAT_SIZE_T "d,'%s')",
Py_TYPE(o)->tp_name,
o->shape[0],
PyBlitzArray_TypenumAsString(o->type_num)
);
case 2:
return
PyString_FromFormat
("%s((%" PY_FORMAT_SIZE_T "d,%" PY_FORMAT_SIZE_T "d),'%s')",
Py_TYPE(o)->tp_name,
o->shape[0],
o->shape[1],
PyBlitzArray_TypenumAsString(o->type_num)
);
case 3:
return
PyString_FromFormat
("%s((%" PY_FORMAT_SIZE_T "d,%" PY_FORMAT_SIZE_T "d,%" PY_FORMAT_SIZE_T "d),'%s')",
Py_TYPE(o)->tp_name,
o->shape[0],
o->shape[1],
o->shape[2],
PyBlitzArray_TypenumAsString(o->type_num)
);
case 4:
return
PyString_FromFormat
("%s((%" PY_FORMAT_SIZE_T "d,%" PY_FORMAT_SIZE_T "d,%" PY_FORMAT_SIZE_T "d,%" PY_FORMAT_SIZE_T "d),'%s')",
Py_TYPE(o)->tp_name,
o->shape[0],
o->shape[1],
o->shape[2],
o->shape[3],
PyBlitzArray_TypenumAsString(o->type_num)
);
default:
return
PyString_FromFormat
("[unsupported] %s(@%" PY_FORMAT_SIZE_T "d,'%s') %" PY_FORMAT_SIZE_T "d elements>",
Py_TYPE(o)->tp_name,
o->ndim,
PyBlitzArray_TypenumAsString(o->type_num),
PyBlitzArray_len(o)
);
}
}
示例12: preparePreLink
static PyObject *
preparePreLink(const char *prelink) {
int len;
len = strlen(prelink);
if (strstr(prelink, "?") != NULL) {
if (prelink[len-1] != '?' && prelink[len-1] != '&') {
return PyString_FromFormat("%s&", prelink);
} else {
return PyString_FromString(prelink);
}
} else {
return PyString_FromFormat("%s?", prelink);
}
}
示例13: package_repr
static PyObject *
package_repr(_PackageObject *self)
{
cr_Package *pkg = self->package;
PyObject *repr;
if (pkg) {
repr = PyString_FromFormat("<createrepo_c.Package object id %s, %s>",
(pkg->pkgId ? pkg->pkgId : "-"),
(pkg->name ? pkg->name : "-"));
} else {
repr = PyString_FromFormat("<createrepo_c.Package object id -, ->");
}
return repr;
}
示例14: meth_repr
static PyObject *
meth_repr(PythonQtSignalFunctionObject *f)
{
if (f->m_self->ob_type == &PythonQtClassWrapper_Type) {
PythonQtClassWrapper* self = (PythonQtClassWrapper*) f->m_self;
return PyString_FromFormat("<unbound qt signal %s of %s type>",
f->m_ml->slotName().data(),
self->classInfo()->className());
} else {
return PyString_FromFormat("<qt signal %s of %s instance at %p>",
f->m_ml->slotName().data(),
f->m_self->ob_type->tp_name,
f->m_self);
}
}
示例15: DiscoDBIter_str
static PyObject *
DiscoDBIter_str(DiscoDBIter *self)
{
PyObject
*string = PyString_FromFormat("%s(", Py_TYPE(self)->tp_name),
*format = NULL;
if (string == NULL)
goto Done;
if (Py_TYPE(self) == &DiscoDBIterItemType)
format = PyString_FromString("('%s', %s)");
else
format = PyString_FromString("'%s'");
if (format == NULL)
goto Done;
PyString_ConcatAndDel(&string, DiscoDBIter_format(self, format, 3));
PyString_ConcatAndDel(&string, PyString_FromString(")"));
Done:
Py_CLEAR(format);
if (PyErr_Occurred()) {
Py_CLEAR(string);
return NULL;
}
return string;
}