in dubbo/codec/encoder.py [0:0]
def _encode_single_value(self, value):
"""
根据hessian协议对单个变量进行编码
:param value:
:return:
"""
# 布尔类型
if isinstance(value, bool):
return self._encode_bool(value)
# 整型(包括长整型)
elif isinstance(value, int):
return self._encode_int(value)
# 浮点类型
elif isinstance(value, float):
return self._encode_float(value)
# 字符串类型
elif isinstance(value, (str, unicode)):
return self._encode_str(value)
# 对象类型
elif isinstance(value, Object):
return self._encode_object(value)
# 列表(list)类型,不可以使用tuple替代
elif isinstance(value, list):
return self._encode_list(value)
# null
elif value is None:
return [ord('N')]
else:
raise HessianTypeError('Unknown argument type: {}'.format(value))