public static void WriteLongArray(this IWritableBuffer bw, long[] dat) { var len = dat == null ? 0 : dat.Length; bw.WriteUnsignedVarint(len); for (var i = 0; i < len; i++) { bw.WriteLong(dat[i]); } }
public void Encode(IWritableBuffer bw) { this.mask.Encode(bw); if (mask.CheckFlag(__FLAG_TYPE)) { bw.WriteByte(_type); } if (mask.CheckFlag(__FLAG_UUID)) { bw.WriteLong(_uuid); } if (mask.CheckFlag(__FLAG_UNITS)) { bw.WriteArray(_units); } }
public void Encode(IWritableBuffer bw) { switch (Tmpl.token) { case DDToken.ft_bool: if (Tmpl.isArray) { bw.WriteBooleanArray((bool[])arrValue); } else { var bv = int32Value != 0 ? true : false; bw.WriteBoolean(bv); } break; case DDToken.ft_byte: if (Tmpl.isArray) { bw.WriteByteArray((byte[])arrValue); } else { bw.WriteByte((byte)int32Value); } break; case DDToken.ft_int16: if (Tmpl.isArray) { bw.WriteShortArray((short[])arrValue); } else { bw.WriteShort((short)int32Value); } break; case DDToken.ft_int32: if (Tmpl.isArray) { bw.WriteIntArray((int[])arrValue); } else { bw.WriteInt(int32Value); } break; case DDToken.ft_int64: if (Tmpl.isArray) { bw.WriteLongArray((long[])arrValue); } else { bw.WriteLong(int64Value); } break; case DDToken.ft_intXU: if (Tmpl.isArray) { bw.WriteUnsignedVarintArray((long[])arrValue); } else { bw.WriteUnsignedVarint(int64Value); } break; case DDToken.ft_intX: if (Tmpl.isArray) { bw.WriteVarintArray((long[])arrValue); } else { bw.WriteVarint(int64Value); } break; case DDToken.ft_float: if (Tmpl.isArray) { bw.WriteFloatArray((float[])arrValue); } else { bw.WriteFloat(floatValue); } break; case DDToken.ft_float16: if (Tmpl.isArray) { bw.WriteFloat16Array((float[])arrValue); } else { bw.WriteFloat16(floatValue); } break; case DDToken.ft_str: if (Tmpl.isArray) { bw.WriteUTF8Array((string[])arrValue); } else { bw.WriteUTF8(strValue); } break; case DDToken.ft_object: if (Tmpl.isArray) { bw.WriteNodeArray((DDNode[])arrValue, Tmpl); } else { bw.WritNode(objValue, Tmpl); } break; } }