package fs

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

Index

Functions

func AfterFileClose

func AfterFileClose()

func BeforeFileOpen

func BeforeFileOpen()

Types

type Entry

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

func (*Entry) Kind

func (e *Entry) Kind() EntryKind
func (e *Entry) Symlink() string

type EntryKind

type EntryKind uint8
const (
	DirEntry  EntryKind = 1
	FileEntry EntryKind = 2
)

type FS

type FS interface {
	// The returned map is immutable and is cached across invocations. Do not
	// mutate it.
	ReadDirectory(path string) (map[string]*Entry, error)
	ReadFile(path string) (string, error)

	// This is a key made from the information returned by "stat". It is intended
	// to be different if the file has been edited, and to otherwise be equal if
	// the file has not been edited. It should usually work, but no guarantees.
	//
	// See https://apenwarr.ca/log/20181113 for more information about why this
	// can be broken. For example, writing to a file with mmap on WSL on Windows
	// won't change this key. Hopefully this isn't too much of an issue.
	//
	// Additional reading:
	// - https://github.com/npm/npm/pull/20027
	// - https://github.com/golang/go/commit/7dea509703eb5ad66a35628b12a678110fbb1f72
	ModKey(path string) (ModKey, error)

	// This is part of the interface because the mock interface used for tests
	// should not depend on file system behavior (i.e. different slashes for
	// Windows) while the real interface should.
	IsAbs(path string) bool
	Abs(path string) (string, bool)
	Dir(path string) string
	Base(path string) string
	Ext(path string) string
	Join(parts ...string) string
	Cwd() string
	Rel(base string, target string) (string, bool)
}

func MockFS

func MockFS(input map[string]string) FS

func RealFS

func RealFS() FS

type ModKey

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

Source Files

fs.go fs_other.go

Version
v0.8.29
Published
Jan 2, 2021
Platform
js/wasm
Imports
9 packages
Last checked
5 seconds ago

Tools for package owners.