Crossfire Server, Trunk
cfpython_archetype.cpp File Reference
#include <cfpython.h>
+ Include dependency graph for cfpython_archetype.cpp:

Go to the source code of this file.

Functions

 CF_PYTHON_OBJECT (Archetype, NULL, NULL, PyObject_HashNotImplemented, Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE, "Crossfire archetypes",(richcmpfunc) Crossfire_Archetype_RichCompare, ArchetypeMethods, Archetype_getseters, NULL, NULL)
 
static PyObject * Crossfire_Archetype_GetClone (Crossfire_Archetype *who, void *closure)
 
static PyObject * Crossfire_Archetype_GetHead (Crossfire_Archetype *who, void *closure)
 
static PyObject * Crossfire_Archetype_GetMore (Crossfire_Archetype *who, void *closure)
 
static PyObject * Crossfire_Archetype_GetName (Crossfire_Archetype *whoptr, void *closure)
 
static PyObject * Crossfire_Archetype_GetNewObject (Crossfire_Archetype *who, PyObject *args)
 
static PyObject * Crossfire_Archetype_GetNext (Crossfire_Archetype *who, void *closure)
 
static int Crossfire_Archetype_InternalCompare (Crossfire_Archetype *left, Crossfire_Archetype *right)
 
static PyObject * Crossfire_Archetype_RichCompare (Crossfire_Archetype *left, Crossfire_Archetype *right, int op)
 
PyObject * Crossfire_Archetype_wrap (archetype *what)
 

Variables

static PyGetSetDef Archetype_getseters []
 
static PyMethodDef ArchetypeMethods []
 

Function Documentation

◆ CF_PYTHON_OBJECT()

CF_PYTHON_OBJECT ( Archetype  ,
NULL  ,
NULL  ,
PyObject_HashNotImplemented  ,
Py_TPFLAGS_DEFAULT|  Py_TPFLAGS_BASETYPE,
"Crossfire archetypes"  ,
(richcmpfunc)  Crossfire_Archetype_RichCompare,
ArchetypeMethods  ,
Archetype_getseters  ,
NULL  ,
NULL   
)

◆ Crossfire_Archetype_GetClone()

static PyObject* Crossfire_Archetype_GetClone ( Crossfire_Archetype who,
void *  closure 
)
static

Definition at line 52 of file cfpython_archetype.cpp.

References cf_archetype_get_clone(), Crossfire_Object_wrap(), nlohmann::detail::void(), and autojail::who.

+ Here is the call graph for this function:

◆ Crossfire_Archetype_GetHead()

static PyObject* Crossfire_Archetype_GetHead ( Crossfire_Archetype who,
void *  closure 
)
static

Definition at line 47 of file cfpython_archetype.cpp.

References cf_archetype_get_head(), Crossfire_Archetype_wrap(), nlohmann::detail::void(), and autojail::who.

+ Here is the call graph for this function:

◆ Crossfire_Archetype_GetMore()

static PyObject* Crossfire_Archetype_GetMore ( Crossfire_Archetype who,
void *  closure 
)
static

Definition at line 42 of file cfpython_archetype.cpp.

References cf_archetype_get_more(), Crossfire_Archetype_wrap(), nlohmann::detail::void(), and autojail::who.

+ Here is the call graph for this function:

◆ Crossfire_Archetype_GetName()

static PyObject* Crossfire_Archetype_GetName ( Crossfire_Archetype whoptr,
void *  closure 
)
static

Definition at line 32 of file cfpython_archetype.cpp.

References Crossfire_Archetype::arch, cf_archetype_get_name(), and nlohmann::detail::void().

+ Here is the call graph for this function:

◆ Crossfire_Archetype_GetNewObject()

static PyObject* Crossfire_Archetype_GetNewObject ( Crossfire_Archetype who,
PyObject *  args 
)
static

◆ Crossfire_Archetype_GetNext()

static PyObject* Crossfire_Archetype_GetNext ( Crossfire_Archetype who,
void *  closure 
)
static

Definition at line 37 of file cfpython_archetype.cpp.

References cf_archetype_get_next(), Crossfire_Archetype_wrap(), nlohmann::detail::void(), and autojail::who.

+ Here is the call graph for this function:

◆ Crossfire_Archetype_InternalCompare()

static int Crossfire_Archetype_InternalCompare ( Crossfire_Archetype left,
Crossfire_Archetype right 
)
static

Definition at line 77 of file cfpython_archetype.cpp.

References Crossfire_Archetype::arch.

Referenced by Crossfire_Archetype_RichCompare().

+ Here is the caller graph for this function:

◆ Crossfire_Archetype_RichCompare()

static PyObject* Crossfire_Archetype_RichCompare ( Crossfire_Archetype left,
Crossfire_Archetype right,
int  op 
)
static

Definition at line 81 of file cfpython_archetype.cpp.

References Crossfire_Archetype_InternalCompare(), Crossfire_ArchetypeType, give::op, and rotate-tower::result.

+ Here is the call graph for this function:

◆ Crossfire_Archetype_wrap()

PyObject* Crossfire_Archetype_wrap ( archetype what)

Variable Documentation

◆ Archetype_getseters

PyGetSetDef Archetype_getseters[]
static
Initial value:
= {
{ "Name", (getter)Crossfire_Archetype_GetName, NULL, NULL, NULL },
{ "Next", (getter)Crossfire_Archetype_GetNext, NULL, NULL, NULL },
{ "More", (getter)Crossfire_Archetype_GetMore, NULL, NULL, NULL },
{ "Head", (getter)Crossfire_Archetype_GetHead, NULL, NULL, NULL },
{ "Clone", (getter)Crossfire_Archetype_GetClone, NULL, NULL, NULL },
{ NULL, NULL, NULL, NULL, NULL }
}

Definition at line 115 of file cfpython_archetype.cpp.

◆ ArchetypeMethods

PyMethodDef ArchetypeMethods[]
static
Initial value:
= {
{ "NewObject", (PyCFunction)Crossfire_Archetype_GetNewObject, METH_NOARGS, NULL },
{ NULL, NULL, 0, NULL }
}

Definition at line 124 of file cfpython_archetype.cpp.

Crossfire_Archetype_GetName
static PyObject * Crossfire_Archetype_GetName(Crossfire_Archetype *whoptr, void *closure)
Definition: cfpython_archetype.cpp:32
Crossfire_Archetype_GetClone
static PyObject * Crossfire_Archetype_GetClone(Crossfire_Archetype *who, void *closure)
Definition: cfpython_archetype.cpp:52
Crossfire_Archetype_GetNewObject
static PyObject * Crossfire_Archetype_GetNewObject(Crossfire_Archetype *who, PyObject *args)
Definition: cfpython_archetype.cpp:57
Crossfire_Archetype_GetHead
static PyObject * Crossfire_Archetype_GetHead(Crossfire_Archetype *who, void *closure)
Definition: cfpython_archetype.cpp:47
Crossfire_Archetype_GetMore
static PyObject * Crossfire_Archetype_GetMore(Crossfire_Archetype *who, void *closure)
Definition: cfpython_archetype.cpp:42
Crossfire_Archetype_GetNext
static PyObject * Crossfire_Archetype_GetNext(Crossfire_Archetype *who, void *closure)
Definition: cfpython_archetype.cpp:37