Documentation
¶
Overview ¶
Package bthrift .
Package bthrift is byted thrift
Index ¶
- Constants
- Variables
- func IsProtocolError(err error) bool
- func NewProtocolError(err error) error
- func NewProtocolErrorWithErrMsg(err error, errMsg string) error
- func NewProtocolErrorWithMsg(errMsg string) error
- func Skip(buf []byte, self BTProtocol, fieldType thrift.TType, maxDepth int) (length int, err error)
- func SkipDefaultDepth(buf []byte, prot BTProtocol, typeID thrift.TType) (int, error)
- func UnknownFieldsLength(fs []UnknownField) (int, error)
- func WriteUnknownFields(buf []byte, fs []UnknownField) (offset int, err error)
- type BTProtocol
- type BinaryWriter
- type ProtocolError
- type UnknownField
Constants ¶
const ( UnknownProtocolError = 0 // unknown error InvalidData = 1 NegativeSize = 2 SizeLimit = 3 BadVersion = 4 NotImplemented = 5 DepthLimit = 6 )
0-6 corresponding with thrift protocol_exception
Variables ¶
var Binary binaryProtocol
Binary protocol for bthrift.
var InvalidDataLength = NewProtocolErrorWithType(InvalidData, "Invalid data length")
InvalidDataLength indicates the data length is invalid.
Functions ¶
func IsProtocolError ¶
IsProtocolError to assert if the err is ProtocolError which has TypeId() func
func NewProtocolError ¶
NewProtocolError creates a new ProtocolError wrapping the given error.
func NewProtocolErrorWithErrMsg ¶
NewProtocolErrorWithErrMsg to build protocolException with rawErr and errMsg
func NewProtocolErrorWithMsg ¶
NewProtocolErrorWithMsg to build protocolException with errMsg
func Skip ¶
func Skip(buf []byte, self BTProtocol, fieldType thrift.TType, maxDepth int) (length int, err error)
Skip skips over the next data element from the provided input TProtocol object.
func SkipDefaultDepth ¶
SkipDefaultDepth skips over the next data element from the provided input TProtocol object.
func UnknownFieldsLength ¶
func UnknownFieldsLength(fs []UnknownField) (int, error)
UnknownFieldsLength returns the length of fs.
func WriteUnknownFields ¶
func WriteUnknownFields(buf []byte, fs []UnknownField) (offset int, err error)
WriteUnknownFields writes fs into buf, and return written offset of the buf.
Types ¶
type BTProtocol ¶
type BTProtocol interface {
WriteMessageBegin(buf []byte, name string, typeID thrift.TMessageType, seqid int32) int
WriteMessageEnd(buf []byte) int
WriteStructBegin(buf []byte, name string) int
WriteStructEnd(buf []byte) int
WriteFieldBegin(buf []byte, name string, typeID thrift.TType, id int16) int
WriteFieldEnd(buf []byte) int
WriteFieldStop(buf []byte) int
WriteMapBegin(buf []byte, keyType, valueType thrift.TType, size int) int
WriteMapEnd(buf []byte) int
WriteListBegin(buf []byte, elemType thrift.TType, size int) int
WriteListEnd(buf []byte) int
WriteSetBegin(buf []byte, elemType thrift.TType, size int) int
WriteSetEnd(buf []byte) int
WriteBool(buf []byte, value bool) int
WriteByte(buf []byte, value int8) int
WriteI16(buf []byte, value int16) int
WriteI32(buf []byte, value int32) int
WriteI64(buf []byte, value int64) int
WriteDouble(buf []byte, value float64) int
WriteString(buf []byte, value string) int
WriteBinary(buf, value []byte) int
WriteStringNocopy(buf []byte, binaryWriter BinaryWriter, value string) int
WriteBinaryNocopy(buf []byte, binaryWriter BinaryWriter, value []byte) int
MessageBeginLength(name string, typeID thrift.TMessageType, seqid int32) int
MessageEndLength() int
StructBeginLength(name string) int
StructEndLength() int
FieldBeginLength(name string, typeID thrift.TType, id int16) int
FieldEndLength() int
FieldStopLength() int
MapBeginLength(keyType, valueType thrift.TType, size int) int
MapEndLength() int
ListBeginLength(elemType thrift.TType, size int) int
ListEndLength() int
SetBeginLength(elemType thrift.TType, size int) int
SetEndLength() int
BoolLength(value bool) int
ByteLength(value int8) int
I16Length(value int16) int
I32Length(value int32) int
I64Length(value int64) int
DoubleLength(value float64) int
StringLength(value string) int
BinaryLength(value []byte) int
StringLengthNocopy(value string) int
BinaryLengthNocopy(value []byte) int
ReadMessageBegin(buf []byte) (name string, typeID thrift.TMessageType, seqid int32, length int, err error)
ReadMessageEnd(buf []byte) (int, error)
ReadStructBegin(buf []byte) (name string, length int, err error)
ReadStructEnd(buf []byte) (int, error)
ReadFieldBegin(buf []byte) (name string, typeID thrift.TType, id int16, length int, err error)
ReadFieldEnd(buf []byte) (int, error)
ReadMapBegin(buf []byte) (keyType, valueType thrift.TType, size, length int, err error)
ReadMapEnd(buf []byte) (int, error)
ReadListBegin(buf []byte) (elemType thrift.TType, size, length int, err error)
ReadListEnd(buf []byte) (int, error)
ReadSetBegin(buf []byte) (elemType thrift.TType, size, length int, err error)
ReadSetEnd(buf []byte) (int, error)
ReadBool(buf []byte) (value bool, length int, err error)
ReadByte(buf []byte) (value int8, length int, err error)
ReadI16(buf []byte) (value int16, length int, err error)
ReadI32(buf []byte) (value int32, length int, err error)
ReadI64(buf []byte) (value int64, length int, err error)
ReadDouble(buf []byte) (value float64, length int, err error)
ReadString(buf []byte) (value string, length int, err error)
ReadBinary(buf []byte) (value []byte, length int, err error)
Skip(buf []byte, fieldType thrift.TType) (length int, err error)
}
BTProtocol .
type BinaryWriter ¶
BinaryWriter . Deprecated: removed from FastCodec in order to be compatible with Bytebuffer other than netpoll.
type ProtocolError ¶
ProtocolError indicates an protocol error has occurred.
func NewProtocolErrorWithType ¶
func NewProtocolErrorWithType(errType int, errMsg string) ProtocolError
NewProtocolErrorWithType to build protocolException with errType and errMsg
type UnknownField ¶
type UnknownField struct {
Name string
ID int16
Type int
KeyType int
ValType int
Value interface{}
}
UnknownField is used to describe an unknown field.
func ConvertUnknownFields ¶
func ConvertUnknownFields(buf unknown.Fields) (fields []UnknownField, err error)
ConvertUnknownFields converts buf to deserialized unknown fields.
func GetUnknownFields ¶
func GetUnknownFields(v interface{}) (fields []UnknownField, err error)
GetUnknownFields deserialize unknownFields stored in v to a list of *UnknownFields.