EvEmu
0.8.4
11 September 2021
|
Python extended object. More...
#include "PyRep.h"
Public Types | |
typedef PyList | list_type |
typedef list_type::iterator | list_iterator |
typedef list_type::const_iterator | const_list_iterator |
typedef PyDict | dict_type |
typedef dict_type::iterator | dict_iterator |
typedef dict_type::const_iterator | const_dict_iterator |
![]() | |
enum | PyType { PyTypeMin = 0, PyTypeInt = 1, PyTypeLong = 2, PyTypeFloat = 3, PyTypeBool = 4, PyTypeBuffer = 5, PyTypeString = 6, PyTypeWString = 7, PyTypeToken = 8, PyTypeTuple = 9, PyTypeList = 10, PyTypeDict = 11, PyTypeNone = 12, PyTypeSubStruct = 13, PyTypeSubStream = 14, PyTypeChecksumedStream = 15, PyTypeObject = 16, PyTypeObjectEx = 17, PyTypePackedRow = 18, PyTypeError = 19 } |
Python wire object types. More... | |
Public Member Functions | |
PyObjectEx (bool is_type_2, PyRep *header) | |
PyObjectEx (const PyObjectEx &oth) | |
PyObjectEx (PyObjectEx &&oth)=delete | |
PyObjectEx & | operator= (const PyObjectEx &oth) |
PyObjectEx & | operator= (PyObjectEx &&oth)=delete |
PyRep * | Clone () const |
Clones object. More... | |
bool | visit (PyVisitor &v) const |
Visits object. More... | |
PyRep * | header () const |
bool | isType2 () const |
list_type & | list () |
const list_type & | list () const |
dict_type & | dict () |
const dict_type & | dict () const |
![]() | |
PyType | GetType () const |
bool | IsInt () const |
bool | IsLong () const |
bool | IsFloat () const |
bool | IsBool () const |
bool | IsBuffer () const |
bool | IsString () const |
bool | IsWString () const |
bool | IsToken () const |
bool | IsTuple () const |
bool | IsList () const |
bool | IsDict () const |
bool | IsNone () const |
bool | IsSubStruct () const |
bool | IsSubStream () const |
bool | IsChecksumedStream () const |
bool | IsObject () const |
bool | IsObjectEx () const |
bool | IsPackedRow () const |
const char * | TypeString () const |
PyInt * | AsInt () |
const PyInt * | AsInt () const |
PyLong * | AsLong () |
const PyLong * | AsLong () const |
PyFloat * | AsFloat () |
const PyFloat * | AsFloat () const |
PyBool * | AsBool () |
const PyBool * | AsBool () const |
PyBuffer * | AsBuffer () |
const PyBuffer * | AsBuffer () const |
PyString * | AsString () |
const PyString * | AsString () const |
PyWString * | AsWString () |
const PyWString * | AsWString () const |
PyToken * | AsToken () |
const PyToken * | AsToken () const |
PyTuple * | AsTuple () |
const PyTuple * | AsTuple () const |
PyList * | AsList () |
const PyList * | AsList () const |
PyDict * | AsDict () |
const PyDict * | AsDict () const |
PyNone * | AsNone () |
const PyNone * | AsNone () const |
PySubStruct * | AsSubStruct () |
const PySubStruct * | AsSubStruct () const |
PySubStream * | AsSubStream () |
const PySubStream * | AsSubStream () const |
PyChecksumedStream * | AsChecksumedStream () |
const PyChecksumedStream * | AsChecksumedStream () const |
PyObject * | AsObject () |
const PyObject * | AsObject () const |
PyObjectEx * | AsObjectEx () |
const PyObjectEx * | AsObjectEx () const |
PyPackedRow * | AsPackedRow () |
const PyPackedRow * | AsPackedRow () const |
void | Dump (FILE *into, const char *pfx) const |
Dumps object to file. More... | |
void | Dump (LogType type, const char *pfx) const |
Dumps object to console. More... | |
virtual int32 | hash () const |
virtual function to generate a hash value of a object. More... | |
![]() | |
RefObject (size_t initRefCount) | |
Initializes reference count. More... | |
virtual | ~RefObject () |
Destructor; must be virtual. More... | |
size_t | GetCount () |
Protected Member Functions | |
virtual | ~PyObjectEx () |
![]() | |
PyRep (PyType t) | |
PyRep (const PyRep &oth) | |
PyRep (PyRep &&oth)=delete | |
PyRep & | operator= (const PyRep &oth)=default |
PyRep & | operator= (PyRep &&oth)=default |
virtual | ~PyRep () |
![]() | |
void | IncRef () const |
Increments reference count of object by one. More... | |
void | DecRef () const |
Decrements reference count of object by one. More... | |
Protected Attributes | |
PyRep *const | mHeader |
const bool | mIsType2 |
list_type *const | mList |
dict_type *const | mDict |
![]() | |
const PyType | mType |
![]() | |
size_t | mRefCount |
Reference count of instance. More... | |
bool | mDeleted |
Additional Inherited Members | |
![]() | |
static std::string | StringContent (PyRep *pRep) |
static int64 | IntegerValue (PyRep *pRep) |
static uint32 | IntegerValueU32 (PyRep *pRep) |
Python extended object.
This represents some kind of extended Python object. Used for opcodes 0x22 (Type1) and 0x23 (Type2), since the only difference is in header.
typedef PyDict PyObjectEx::dict_type |
typedef PyList PyObjectEx::list_type |
PyObjectEx::PyObjectEx | ( | bool | is_type_2, |
PyRep * | header | ||
) |
Definition at line 786 of file PyRep.cpp.
Referenced by Clone().
PyObjectEx::PyObjectEx | ( | const PyObjectEx & | oth | ) |
|
delete |
|
protectedvirtual |
|
virtual |
Clones object.
Implements PyRep.
Definition at line 799 of file PyRep.cpp.
References PyObjectEx().
|
inline |
Definition at line 892 of file PyRep.h.
References mDict.
Referenced by CFilterRowSet::GetKeyCount(), CIndexedRowSet::GetRow(), CFilterRowSet::GetRowset(), UnmarshalStream::LoadObjectEx(), CIndexedRowSet::NewRow(), CFilterRowSet::NewRowset(), operator=(), PyDumpVisitor::VisitObjectEx(), PyVisitor::VisitObjectEx(), and MarshalStream::VisitObjectEx().
|
inline |
|
inline |
Definition at line 886 of file PyRep.h.
References mHeader.
Referenced by PyObjectEx_Type1::GetArgs(), PyObjectEx_Type2::GetArgs(), PyObjectEx_Type1::GetKeywords(), PyObjectEx_Type2::GetKeywords(), PyObjectEx_Type1::GetType(), Scan::RequestScans(), PyDumpVisitor::VisitObjectEx(), PyVisitor::VisitObjectEx(), and MarshalStream::VisitObjectEx().
|
inline |
Definition at line 887 of file PyRep.h.
References mIsType2.
Referenced by PyDumpVisitor::VisitObjectEx(), and MarshalStream::VisitObjectEx().
|
inline |
Definition at line 889 of file PyRep.h.
References mList.
Referenced by CRowSet::GetRow(), CRowSet::GetRowCount(), CIndexedRowSet::GetRowCount(), UnmarshalStream::LoadObjectEx(), CRowSet::NewRow(), operator=(), PyDumpVisitor::VisitObjectEx(), PyVisitor::VisitObjectEx(), and MarshalStream::VisitObjectEx().
|
inline |
PyObjectEx & PyObjectEx::operator= | ( | const PyObjectEx & | oth | ) |
|
delete |
|
virtual |
Visits object.
[in] | v | Visitor to be used for visiting. |
true | Visit successful. |
false | Error during visit. |
Implements PyRep.
Definition at line 804 of file PyRep.cpp.
References PyVisitor::VisitObjectEx().
Referenced by PyVisitor::VisitPackedRow(), and MarshalStream::VisitPackedRow().
|
protected |
Definition at line 903 of file PyRep.h.
Referenced by dict(), and ~PyObjectEx().
|
protected |
Definition at line 899 of file PyRep.h.
Referenced by header(), and ~PyObjectEx().
|
protected |
|
protected |
Definition at line 902 of file PyRep.h.
Referenced by list(), and ~PyObjectEx().