14
14
// Data buffer being decoded.
17
order binary.ByteOrder
25
func makeBuf(d *Data, name string, off Offset, data []byte, addrsize int) buf {
26
return buf{d, d.order, name, off, data, addrsize, nil}
17
order binary.ByteOrder
25
// Data format, other than byte order. This affects the handling of
26
// certain field formats.
27
type dataFormat interface {
28
// DWARF version number. Zero means unknown.
31
// 64-bit DWARF format?
32
dwarf64() (dwarf64 bool, isKnown bool)
34
// Size of an address, in bytes. Zero means unknown.
38
// Some parts of DWARF have no data format, e.g., abbrevs.
39
type unknownFormat struct{}
41
func (u unknownFormat) version() int {
45
func (u unknownFormat) dwarf64() (bool, bool) {
49
func (u unknownFormat) addrsize() int {
53
func makeBuf(d *Data, format dataFormat, name string, off Offset, data []byte) buf {
54
return buf{d, d.order, format, name, off, data, nil}
29
57
func (b *buf) uint8() uint8 {