type go/token.File
54 uses
go/token (current package)
position.go#L104: type File struct {
position.go#L116: func (f *File) Name() string {
position.go#L121: func (f *File) Base() int {
position.go#L126: func (f *File) Size() int {
position.go#L131: func (f *File) End() Pos {
position.go#L136: func (f *File) LineCount() int {
position.go#L146: func (f *File) AddLine(offset int) {
position.go#L158: func (f *File) MergeLine(line int) {
position.go#L178: func (f *File) Lines() []int {
position.go#L193: func (f *File) SetLines(lines []int) bool {
position.go#L211: func (f *File) SetLinesForContent(content []byte) {
position.go#L233: func (f *File) LineStart(line int) Pos {
position.go#L257: func (f *File) AddLineInfo(offset int, filename string, line int) {
position.go#L269: func (f *File) AddLineColumnInfo(offset int, filename string, line, column int) {
position.go#L278: func (f *File) fixOffset(offset int) int {
position.go#L310: func (f *File) Pos(offset int) Pos {
position.go#L323: func (f *File) Offset(p Pos) int {
position.go#L329: func (f *File) Line(p Pos) int {
position.go#L348: func (f *File) unpack(offset int, adjusted bool) (filename string, line, column int) {
position.go#L383: func (f *File) position(p Pos, adjusted bool) (pos Position) {
position.go#L395: func (f *File) PositionFor(p Pos, adjusted bool) (pos Position) {
position.go#L405: func (f *File) Position(p Pos) (pos Position) {
position.go#L438: last atomic.Pointer[File] // cache of last file looked up
position.go#L472: func (s *FileSet) AddFile(filename string, base, size int) *File {
position.go#L474: f := &File{name: filename, size: size, lines: []int{0}}
position.go#L504: func (s *FileSet) AddExistingFiles(files ...*File) {
position.go#L538: func (s *FileSet) RemoveFile(file *File) {
position.go#L552: func (s *FileSet) Iterate(yield func(*File) bool) {
position.go#L559: s.tree.all()(func(f *File) bool {
position.go#L566: func (s *FileSet) file(p Pos) *File {
position.go#L588: func (s *FileSet) File(p Pos) (f *File) {
serialize.go#L33: s.tree.add(&File{
tree.go#L44: file *File
tree.go#L53: func (f *File) key() key {
tree.go#L131: func (t *tree) all() iter.Seq[*File] {
tree.go#L132: return func(yield func(*File) bool) {
tree.go#L308: func (t *tree) add(file *File) {
tree.go#L323: func (t *tree) set(file *File, pos **node, parent *node) {
go/parser
parser.go#L39: file *token.File
parser.go#L79: func (p *parser) init(file *token.File, src []byte, mode Mode) {
resolver.go#L21: func resolveFile(file *ast.File, handle *token.File, declErr func(token.Pos, string)) {
resolver.go#L60: handle *token.File
go/scanner
scanner.go#L32: file *token.File // source file handle
scanner.go#L142: func (s *Scanner) Init(file *token.File, src []byte, err ErrorHandler, mode Mode) {
golang.org/x/tools/internal/gcimporter
bimport.go#L30: file *token.File
iexport.go#L459: func (p *iexporter) encodeFile(w *intWriter, file *token.File, needed []uint64) {
iexport.go#L590: fileInfo map[*token.File]uint64 // value is index in fileInfos
iexport.go#L602: file *token.File
iexport.go#L641: func (p *iexporter) fileIndexAndOffset(file *token.File, pos token.Pos) (uint64, uint64) {
iexport.go#L647: p.fileInfo = make(map[*token.File]uint64)
iimport.go#L221: fileCache: make([]*token.File, len(fileOffset)),
iimport.go#L380: fileCache []*token.File // memoized decoding of file encoded as i
iimport.go#L455: func (p *iimporter) fileAt(index uint64) *token.File {
iimport.go#L465: func (p *iimporter) decodeFile(rd intReader) *token.File {