1*890232f2SAndroid Build Coastguard Workerpackage flatbuffers 2*890232f2SAndroid Build Coastguard Worker 3*890232f2SAndroid Build Coastguard Worker// FlatBuffer is the interface that represents a flatbuffer. 4*890232f2SAndroid Build Coastguard Workertype FlatBuffer interface { 5*890232f2SAndroid Build Coastguard Worker Table() Table 6*890232f2SAndroid Build Coastguard Worker Init(buf []byte, i UOffsetT) 7*890232f2SAndroid Build Coastguard Worker} 8*890232f2SAndroid Build Coastguard Worker 9*890232f2SAndroid Build Coastguard Worker// GetRootAs is a generic helper to initialize a FlatBuffer with the provided buffer bytes and its data offset. 10*890232f2SAndroid Build Coastguard Workerfunc GetRootAs(buf []byte, offset UOffsetT, fb FlatBuffer) { 11*890232f2SAndroid Build Coastguard Worker n := GetUOffsetT(buf[offset:]) 12*890232f2SAndroid Build Coastguard Worker fb.Init(buf, n+offset) 13*890232f2SAndroid Build Coastguard Worker} 14*890232f2SAndroid Build Coastguard Worker 15*890232f2SAndroid Build Coastguard Worker// GetSizePrefixedRootAs is a generic helper to initialize a FlatBuffer with the provided size-prefixed buffer 16*890232f2SAndroid Build Coastguard Worker// bytes and its data offset 17*890232f2SAndroid Build Coastguard Workerfunc GetSizePrefixedRootAs(buf []byte, offset UOffsetT, fb FlatBuffer) { 18*890232f2SAndroid Build Coastguard Worker n := GetUOffsetT(buf[offset+sizePrefixLength:]) 19*890232f2SAndroid Build Coastguard Worker fb.Init(buf, n+offset+sizePrefixLength) 20*890232f2SAndroid Build Coastguard Worker} 21*890232f2SAndroid Build Coastguard Worker 22*890232f2SAndroid Build Coastguard Worker// GetSizePrefix reads the size from a size-prefixed flatbuffer 23*890232f2SAndroid Build Coastguard Workerfunc GetSizePrefix(buf []byte, offset UOffsetT) uint32 { 24*890232f2SAndroid Build Coastguard Worker return GetUint32(buf[offset:]) 25*890232f2SAndroid Build Coastguard Worker} 26