Skip to content

Instantly share code, notes, and snippets.

@wgaylord
Created January 8, 2018 22:52
Show Gist options
  • Save wgaylord/97aa482dad2181952eae1b1294a7fb5a to your computer and use it in GitHub Desktop.
Save wgaylord/97aa482dad2181952eae1b1294a7fb5a to your computer and use it in GitHub Desktop.
type_1_size_of = types["::u8"]["size_of"]
type_1_serialize = types["::u8"]["serialize"]
type_1_deserialize = types["::u8"]["deserialize"]
type_2_size_of = types["::u64"]["size_of"]
type_2_serialize = types["::u64"]["serialize"]
type_2_deserialize = types["::u64"]["deserialize"]
type_3_size_of = types["::f64"]["size_of"]
type_3_serialize = types["::f64"]["serialize"]
type_3_deserialize = types["::f64"]["deserialize"]
type_4_size_of = types["::sized_string"]["size_of"]
type_4_serialize = types["::sized_string"]["serialize"]
type_4_deserialize = types["::sized_string"]["deserialize"]
def type_5_size_of(input):
count = 0
type_var_3 = input
type_var_2 = type_var_3
type_3_int_val_0 = len(type_var_2.encode('utf8'))
type_var_1 = type_3_int_val_0
size = type_1_size_of(type_var_1)
count = count + size
size = type_4_size_of(type_var_2)
count = count + size
return count
def type_5_serialize(input, buffer, offset):
type_var_3 = input
type_var_2 = type_var_3
type_3_int_val_0 = len(type_var_2.encode('utf8'))
type_var_1 = type_3_int_val_0
offset = type_1_serialize(type_var_1, buffer, offset)
offset = type_4_serialize(type_var_2, buffer, offset)
return offset
def type_5_deserialize(buffer, offset):
(type_var_1, offset) = type_1_deserialize(buffer, offset)
arg_0 = type_var_1
(type_var_2, offset) = type_4_deserialize(buffer, offset, arg_0)
type_var_3 = type_var_2
return (type_var_3, offset)
def type_6_size_of(input):
count = 0
type_var_7 = input
type_var_4 = type_var_7["x"]
type_var_5 = type_var_7["y"]
type_var_6 = type_var_7["z"]
size = type_3_size_of(type_var_4)
count = count + size
size = type_3_size_of(type_var_5)
count = count + size
size = type_3_size_of(type_var_6)
count = count + size
return count
def type_6_serialize(input, buffer, offset):
type_var_7 = input
type_var_4 = type_var_7["x"]
type_var_5 = type_var_7["y"]
type_var_6 = type_var_7["z"]
offset = type_3_serialize(type_var_4, buffer, offset)
offset = type_3_serialize(type_var_5, buffer, offset)
offset = type_3_serialize(type_var_6, buffer, offset)
return offset
def type_6_deserialize(buffer, offset):
(type_var_4, offset) = type_3_deserialize(buffer, offset)
(type_var_5, offset) = type_3_deserialize(buffer, offset)
(type_var_6, offset) = type_3_deserialize(buffer, offset)
type_var_7 = { "x": type_var_4, "y": type_var_5, "z": type_var_6 }
return (type_var_7, offset)
def type_7_size_of(input):
count = 0
type_var_14 = input
type_var_8 = type_var_14["entity_id"]
type_var_9 = type_var_14["position"]
type_var_13 = type_var_14["entity_type"]
if type_var_13.tag == "player":
type_14_int_val_0 = 0
elif type_var_13.tag == "zombie":
type_14_int_val_0 = 1
else:
raise Exception("error")
type_var_10 = type_14_int_val_0
size = type_2_size_of(type_var_8)
count = count + size
size = type_6_size_of(type_var_9)
count = count + size
size = type_1_size_of(type_var_10)
count = count + size
if type_var_13.tag == "player":
type_var_11 = type_var_13.data
elif type_var_13.tag == "zombie":
type_var_12 = type_var_13.data
else:
raise Exception("error")
return count
def type_7_serialize(input, buffer, offset):
type_var_14 = input
type_var_8 = type_var_14["entity_id"]
type_var_9 = type_var_14["position"]
type_var_13 = type_var_14["entity_type"]
if type_var_13.tag == "player":
type_14_int_val_0 = 0
elif type_var_13.tag == "zombie":
type_14_int_val_0 = 1
else:
raise Exception("error")
type_var_10 = type_14_int_val_0
offset = type_2_serialize(type_var_8, buffer, offset)
offset = type_6_serialize(type_var_9, buffer, offset)
offset = type_1_serialize(type_var_10, buffer, offset)
if type_var_13.tag == "player":
type_var_11 = type_var_13.data
elif type_var_13.tag == "zombie":
type_var_12 = type_var_13.data
else:
raise Exception("error")
return offset
def type_7_deserialize(buffer, offset):
(type_var_8, offset) = type_2_deserialize(buffer, offset)
(type_var_9, offset) = type_6_deserialize(buffer, offset)
(type_var_10, offset) = type_1_deserialize(buffer, offset)
type_14_tag = type_var_10
if type_14_tag == 0:
type_var_11 = { }
type_var_13 = { tag: "player", data: type_var_11 }
elif type_14_tag == 1:
type_var_12 = { }
type_var_13 = { tag: "zombie", data: type_var_12 }
else:
raise Exception("error")
type_var_14 = { "entity_id": type_var_8, "position": type_var_9, "entity_type": type_var_13 }
return (type_var_14, offset)
def type_8_size_of(input):
count = 0
type_var_23 = input
type_var_22 = type_var_23
if type_var_22.tag == "handshake":
type_23_int_val_0 = 0
elif type_var_22.tag == "ping":
type_23_int_val_0 = 1
elif type_var_22.tag == "spawn_entity":
type_23_int_val_0 = 2
else:
raise Exception("error")
type_var_15 = type_23_int_val_0
size = type_1_size_of(type_var_15)
count = count + size
if type_var_22.tag == "handshake":
type_var_17 = type_var_22.data
type_var_16 = type_var_17["nonce"]
size = type_2_size_of(type_var_16)
count = count + size
elif type_var_22.tag == "ping":
type_var_20 = type_var_22.data
type_var_18 = type_var_20["nonce"]
type_var_19 = type_var_20["timestamp"]
size = type_2_size_of(type_var_18)
count = count + size
size = type_2_size_of(type_var_19)
count = count + size
elif type_var_22.tag == "spawn_entity":
type_var_21 = type_var_22.data
size = type_7_size_of(type_var_21)
count = count + size
else:
raise Exception("error")
return count
def type_8_serialize(input, buffer, offset):
type_var_23 = input
type_var_22 = type_var_23
if type_var_22.tag == "handshake":
type_23_int_val_0 = 0
elif type_var_22.tag == "ping":
type_23_int_val_0 = 1
elif type_var_22.tag == "spawn_entity":
type_23_int_val_0 = 2
else:
raise Exception("error")
type_var_15 = type_23_int_val_0
offset = type_1_serialize(type_var_15, buffer, offset)
if type_var_22.tag == "handshake":
type_var_17 = type_var_22.data
type_var_16 = type_var_17["nonce"]
offset = type_2_serialize(type_var_16, buffer, offset)
elif type_var_22.tag == "ping":
type_var_20 = type_var_22.data
type_var_18 = type_var_20["nonce"]
type_var_19 = type_var_20["timestamp"]
offset = type_2_serialize(type_var_18, buffer, offset)
offset = type_2_serialize(type_var_19, buffer, offset)
elif type_var_22.tag == "spawn_entity":
type_var_21 = type_var_22.data
offset = type_7_serialize(type_var_21, buffer, offset)
else:
raise Exception("error")
return offset
def type_8_deserialize(buffer, offset):
(type_var_15, offset) = type_1_deserialize(buffer, offset)
type_23_tag = type_var_15
if type_23_tag == 0:
(type_var_16, offset) = type_2_deserialize(buffer, offset)
type_var_17 = { "nonce": type_var_16 }
type_var_22 = { tag: "handshake", data: type_var_17 }
elif type_23_tag == 1:
(type_var_18, offset) = type_2_deserialize(buffer, offset)
(type_var_19, offset) = type_2_deserialize(buffer, offset)
type_var_20 = { "nonce": type_var_18, "timestamp": type_var_19 }
type_var_22 = { tag: "ping", data: type_var_20 }
elif type_23_tag == 2:
(type_var_21, offset) = type_7_deserialize(buffer, offset)
type_var_22 = { tag: "spawn_entity", data: type_var_21 }
else:
raise Exception("error")
type_var_23 = type_var_22
return (type_var_23, offset)
exports = {
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment