MCPcopy Create free account
hub / github.com/chronoxor/FastBinaryEncoding / StructArray

Class StructArray

projects/Python/proto/test.py:9067–9334  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

9065
9066@functools.total_ordering
9067class StructArray(object):
9068 __slots__ = "f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9", "f10",
9069
9070 def __init__(self, f1=None, f2=None, f3=None, f4=None, f5=None, f6=None, f7=None, f8=None, f9=None, f10=None):
9071 if f1 is None:
9072 f1 = [0]*2
9073 if f2 is None:
9074 f2 = [None]*2
9075 if f3 is None:
9076 f3 = [bytearray()]*2
9077 if f4 is None:
9078 f4 = [None]*2
9079 if f5 is None:
9080 f5 = [EnumSimple()]*2
9081 if f6 is None:
9082 f6 = [None]*2
9083 if f7 is None:
9084 f7 = [FlagsSimple()]*2
9085 if f8 is None:
9086 f8 = [None]*2
9087 if f9 is None:
9088 f9 = [StructSimple()]*2
9089 if f10 is None:
9090 f10 = [None]*2
9091 self.f1 = f1
9092 self.f2 = f2
9093 self.f3 = f3
9094 self.f4 = f4
9095 self.f5 = f5
9096 self.f6 = f6
9097 self.f7 = f7
9098 self.f8 = f8
9099 self.f9 = f9
9100 self.f10 = f10
9101
9102 # Struct shallow copy
9103 def copy(self, other):
9104 self.f1 = other.f1
9105 self.f2 = other.f2
9106 self.f3 = other.f3
9107 self.f4 = other.f4
9108 self.f5 = other.f5
9109 self.f6 = other.f6
9110 self.f7 = other.f7
9111 self.f8 = other.f8
9112 self.f9 = other.f9
9113 self.f10 = other.f10
9114 return self
9115
9116 # Struct deep clone
9117 def clone(self):
9118 # Serialize the struct to the FBE stream
9119 writer = StructArrayModel(fbe.WriteBuffer())
9120 writer.serialize(self)
9121
9122 # Deserialize the struct from the FBE stream
9123 reader = StructArrayModel(fbe.ReadBuffer())
9124 reader.attach_buffer(writer.buffer)

Callers 5

__from_json__Method · 0.70
getMethod · 0.70
deserializeMethod · 0.70
getMethod · 0.70
deserializeMethod · 0.70

Calls

no outgoing calls

Tested by 5

__from_json__Method · 0.56
getMethod · 0.56
deserializeMethod · 0.56
getMethod · 0.56
deserializeMethod · 0.56