...

Package tokeninternal

import "golang.org/x/tools/internal/tokeninternal"
Overview
Index

Overview ▾

package tokeninternal provides access to some internal features of the token package.

func AddExistingFiles

func AddExistingFiles(fset *token.FileSet, files []*token.File)

AddExistingFiles adds the specified files to the FileSet if they are not already present. It panics if any pair of files in the resulting FileSet would overlap.

func CloneFileSet

func CloneFileSet(fset *token.FileSet) *token.FileSet

CloneFileSet creates a new FileSet holding all files in fset. It does not create copies of the token.Files in fset: they are added to the resulting FileSet unmodified.

func FileSetFor

func FileSetFor(files ...*token.File) *token.FileSet

FileSetFor returns a new FileSet containing a sequence of new Files with the same base, size, and line as the input files, for use in APIs that require a FileSet.

Precondition: the input files must be non-overlapping, and sorted in order of their Base.

func GetLines

func GetLines(file *token.File) []int

GetLines returns the table of line-start offsets from a token.File.