pyignite.datatypes.internal module

class pyignite.datatypes.internal.AnyDataArray(counter_type=<class 'ctypes.c_int'>)

Bases: pyignite.datatypes.internal.AnyDataObject

Sequence of AnyDataObjects, payload-only.

__init__(counter_type=<class 'ctypes.c_int'>) → None

Initialize self. See help(type(self)) for accurate signature.

build_header()
from_python(value)
parse(client: Client)
classmethod to_python(ctype_object, *args, **kwargs)
class pyignite.datatypes.internal.AnyDataObject

Bases: object

Not an actual Ignite type, but contains a guesswork on serializing Python data or parsing an unknown Ignite data object.

classmethod from_python(value)
static get_subtype(iterable, allow_none=False)
classmethod map_python_type(value)
classmethod parse(client: Client)
classmethod to_python(ctype_object, *args, **kwargs)
class pyignite.datatypes.internal.Struct(fields: list, dict_type=<class 'collections.OrderedDict'>, defaults: dict = {})

Bases: object

Sequence of fields, including variable-sized and nested.

__init__(fields: list, dict_type=<class 'collections.OrderedDict'>, defaults: dict = {}) → None

Initialize self. See help(type(self)) for accurate signature.

from_python(value) → bytes
parse(client: Client) → Tuple[type, bytes]
to_python(ctype_object, *args, **kwargs) → Any
class pyignite.datatypes.internal.StructArray(following: list = NOTHING, counter_type=<class 'ctypes.c_int'>, defaults: dict = {})

Bases: object

counter_type counter, followed by count*following structure.

__init__(following: list = NOTHING, counter_type=<class 'ctypes.c_int'>, defaults: dict = {}) → None

Initialize self. See help(type(self)) for accurate signature.

build_header_class()
from_python(value)
parse(client: Client)
to_python(ctype_object, *args, **kwargs)
pyignite.datatypes.internal.tc_map(key: bytes, _memo_map: dict = {})

Returns a default parser/generator class for the given type code.

This mapping is used internally inside listed complex parser/generator classes, so it has to be a function. Local imports are used for the same reason.

Parameters:
  • key – Ignite type code,
  • _memo_map – do not use this parameter, it is for memoization of the “type code-type class” mapping,
Returns:

parser/generator class for the type code.