util

package
v0.0.0-...-96212cb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 28, 2022 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DecodeSLEB128

func DecodeSLEB128(buf ByteReaderWithLen) (int64, uint32)

DecodeSLEB128 decodes a signed Little Endian Base 128 represented number.

func DecodeULEB128

func DecodeULEB128(buf ByteReaderWithLen) (uint64, uint32)

DecodeULEB128 decodes an unsigned Little Endian Base 128 represented number.

func EncodeSLEB128

func EncodeSLEB128(out io.ByteWriter, x int64)

EncodeSLEB128 encodes x to the signed Little Endian Base 128 format into out.

func EncodeULEB128

func EncodeULEB128(out io.ByteWriter, x uint64)

EncodeULEB128 encodes x to the unsigned Little Endian Base 128 format into out.

func MakeBuf

func MakeBuf(d *dwarf.Data, format dataFormat, name string, off dwarf.Offset, data []byte) buf

func ParseString

func ParseString(data *bytes.Buffer) (string, error)

ParseString reads a null-terminated string from data.

func ReadDwarfLengthVersion

func ReadDwarfLengthVersion(data []byte) (length uint64, dwarf64 bool, version uint8, byteOrder binary.ByteOrder)

ReadDwarfLengthVersion reads a DWARF length field followed by a version field

func ReadUintRaw

func ReadUintRaw(reader io.Reader, order binary.ByteOrder, ptrSize int) (uint64, error)

ReadUintRaw reads an integer of ptrSize bytes, with the specified byte order, from reader.

func ReadUnitVersions

func ReadUnitVersions(data []byte) map[dwarf.Offset]uint8

ReadUnitVersions reads the DWARF version of each unit in a debug_info section and returns them as a map.

func WriteUint

func WriteUint(writer io.Writer, order binary.ByteOrder, ptrSize int, data uint64) error

WriteUint writes an integer of ptrSize bytes to writer, in the specified byte order.

Types

type ByteReaderWithLen

type ByteReaderWithLen interface {
	io.ByteReader
	io.Reader
	Len() int
}

ByteReaderWithLen is a io.ByteReader with a Len method. This interface is satisified by both bytes.Buffer and bytes.Reader.

type UnknownFormat

type UnknownFormat struct{}

Some parts of DWARF have no data format, e.g., abbrevs.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL