-- import "github.com/robertkrimen/otto/file"
Package file encapsulates the file abstractions used by the ast & parser.
type File struct {
}func NewFile(filename, src string, base int) *Filefunc (fl *File) Base() intfunc (fl *File) Name() stringfunc (fl *File) Source() stringtype FileSet struct {
}A FileSet represents a set of source files.
func (self *FileSet) AddFile(filename, src string) intAddFile adds a new file with the given filename and src.
This an internal method, but exported for cross-package use.
func (self *FileSet) File(idx Idx) *Filefunc (self *FileSet) Position(idx Idx) *PositionPosition converts an Idx in the FileSet into a Position.
type Idx intIdx is a compact encoding of a source position within a file set. It can be converted into a Position for a more convenient, but much larger, representation.
type Position struct {
Filename string // The filename where the error occurred, if any
Offset int // The src offset
Line int // The line number, starting at 1
Column int // The column number, starting at 1 (The character count)
}Position describes an arbitrary source position including the filename, line, and column location.
func (self *Position) String() stringString returns a string in one of several forms:
file:line:column A valid position with filename
line:column A valid position without filename
file An invalid position with filename
- An invalid position without filename
-- godocdown http://github.com/robertkrimen/godocdown