Documentation

Overview

Package edit implements buffered position-based editing of byte slices.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Buffer

type Buffer struct {

	// contains filtered or unexported fields

}

A Buffer is a queue of edits to apply to a given byte slice.

func NewBuffer

func NewBuffer(data []byte) *Buffer

NewBuffer returns a new buffer to accumulate changes to an initial data slice. The returned buffer maintains a reference to the data, so the caller must ensure the data is not modified until after the Buffer is done being used.

func (*Buffer) Bytes

func (b *Buffer) Bytes() []byte

Bytes returns a new byte slice containing the original data with the queued edits applied.

func (*Buffer) Delete

func (b *Buffer) Delete(start, end int)

func (*Buffer) Insert

func (b *Buffer) Insert(pos int, new string)

func (*Buffer) Replace

func (b *Buffer) Replace(start, end int, new string)

func (*Buffer) String

func (b *Buffer) String() string

String returns a string containing the original data with the queued edits applied.

Source Files