package helpers

import "github.com/evanw/esbuild/internal/helpers"

Index

Functions

func ContainsNonBMPCodePoint

func ContainsNonBMPCodePoint(text string) bool

func ContainsNonBMPCodePointUTF16

func ContainsNonBMPCodePointUTF16(text []uint16) bool

This does "ContainsNonBMPCodePoint(UTF16ToString(text))" without any allocations

func DecodeWTF8Rune

func DecodeWTF8Rune(s string) (rune, int)

This is a clone of "utf8.DecodeRuneInString" that has been modified to decode using WTF-8 instead. See https://simonsapin.github.io/wtf-8/ for more info.

func EscapeClosingTag

func EscapeClosingTag(text string, slashTag string) string

func HashCombine

func HashCombine(seed uint32, hash uint32) uint32

From: http://boost.sourceforge.net/doc/html/boost/hash_combine.html

func HashCombineString

func HashCombineString(seed uint32, text string) uint32

func IsInsideNodeModules

func IsInsideNodeModules(path string) bool

func MimeTypeByExtension

func MimeTypeByExtension(ext string) string

This is used instead of Go's built-in "mime.TypeByExtension" function because that function is broken on Windows: https://github.com/golang/go/issues/32350.

func PrettyPrintedStack

func PrettyPrintedStack() string

func QuoteForJSON

func QuoteForJSON(text string, asciiOnly bool) []byte

func RemoveMultiLineCommentIndent

func RemoveMultiLineCommentIndent(prefix string, text string) string

func StringArrayToQuotedCommaSeparatedString

func StringArrayToQuotedCommaSeparatedString(a []string) string

func StringArraysEqual

func StringArraysEqual(a []string, b []string) bool

func StringToUTF16

func StringToUTF16(text string) []uint16

func UTF16EqualsString

func UTF16EqualsString(text []uint16, str string) bool

Does "UTF16ToString(text) == str" without a temporary allocation

func UTF16EqualsUTF16

func UTF16EqualsUTF16(a []uint16, b []uint16) bool

func UTF16ToString

func UTF16ToString(text []uint16) string

func UTF16ToStringWithValidation

func UTF16ToStringWithValidation(text []uint16) (string, uint16, bool)

Types

type BitSet

type BitSet struct {
	// contains filtered or unexported fields
}

func NewBitSet

func NewBitSet(bitCount uint) BitSet

func (BitSet) Equals

func (bs BitSet) Equals(other BitSet) bool

func (BitSet) HasBit

func (bs BitSet) HasBit(bit uint) bool

func (BitSet) SetBit

func (bs BitSet) SetBit(bit uint)

func (BitSet) String

func (bs BitSet) String() string

type Joiner

type Joiner struct {
	// contains filtered or unexported fields
}

This provides an efficient way to join lots of big string and byte slices together. It avoids the cost of repeatedly reallocating as the buffer grows by measuring exactly how big the buffer should be and then allocating once. This is a measurable speedup.

func (*Joiner) AddBytes

func (j *Joiner) AddBytes(data []byte)

func (*Joiner) AddString

func (j *Joiner) AddString(data string)

func (*Joiner) Contains

func (j *Joiner) Contains(s string, b []byte) bool

func (*Joiner) Done

func (j *Joiner) Done() []byte

func (*Joiner) EnsureNewlineAtEnd

func (j *Joiner) EnsureNewlineAtEnd()

func (*Joiner) LastByte

func (j *Joiner) LastByte() byte

func (*Joiner) Length

func (j *Joiner) Length() uint32

type Serializer

type Serializer struct {
	// contains filtered or unexported fields
}

Each call to "Enter(i)" doesn't start until "Leave(i-1)" is called

func MakeSerializer

func MakeSerializer(count int) Serializer

func (*Serializer) Enter

func (s *Serializer) Enter(i int)

func (*Serializer) Leave

func (s *Serializer) Leave(i int)

type Timer

type Timer struct {
	// contains filtered or unexported fields
}

func (*Timer) Begin

func (t *Timer) Begin(name string)

func (*Timer) End

func (t *Timer) End(name string)

func (*Timer) Fork

func (t *Timer) Fork() *Timer

func (*Timer) Join

func (t *Timer) Join(other *Timer)

func (*Timer) Log

func (t *Timer) Log(log logger.Log)

type TypoDetector

type TypoDetector struct {
	// contains filtered or unexported fields
}

func MakeTypoDetector

func MakeTypoDetector(valid []string) TypoDetector

func (TypoDetector) MaybeCorrectTypo

func (detector TypoDetector) MaybeCorrectTypo(typo string) (string, bool)

Source Files

bitset.go comment.go hash.go joiner.go mime.go path.go quote.go serializer.go stack.go strings.go timer.go typos.go utf.go

Version
v0.15.12
Published
Oct 19, 2022
Platform
windows/amd64
Imports
8 packages
Last checked
3 minutes ago

Tools for package owners.