Pos describes an arbitrary source position including the file, line, and column location. A Position is valid if the line number is > 0.
type Pos struct { Filename string // filename, if any Offset int // offset, starting at 0 Line int // line number, starting at 1 Column int // column number, starting at 1 (character count) }
func (p Pos) After(u Pos) bool
After reports whether the position p is after u.
func (p Pos) Before(u Pos) bool
Before reports whether the position p is before u.
func (p *Pos) IsValid() bool
IsValid returns true if the position is valid.
func (p Pos) String() string
String returns a string in one of several forms:
file:line:column valid position with file name line:column valid position without file name file invalid position with file name - invalid position without file name
Token defines a single HCL token which can be obtained via the Scanner
type Token struct { Type Type Pos Pos Text string }
func (t Token) HCLToken() hcltoken.Token
HCLToken converts this token to an HCL token.
The token type must be a literal type or this will panic.
func (t Token) String() string
String returns the token's literal text. Note that this is only applicable for certain token types, such as token.IDENT, token.STRING, etc..
Type is the set of lexical tokens of the HCL (HashiCorp Configuration Language)
type Type int
const ( // Special tokens ILLEGAL Type = iota EOF NUMBER // 12345 FLOAT // 123.45 BOOL // true,false STRING // "abc" NULL // null LBRACK // [ LBRACE // { COMMA // , PERIOD // . COLON // : RBRACK // ] RBRACE // } )
func (t Type) IsIdentifier() bool
IsIdentifier returns true for tokens corresponding to identifiers and basic type literals; it returns false otherwise.
func (t Type) IsLiteral() bool
IsLiteral returns true for tokens corresponding to basic type literals; it returns false otherwise.
func (t Type) IsOperator() bool
IsOperator returns true for tokens corresponding to operators and delimiters; it returns false otherwise.
func (t Type) String() string
String returns the string corresponding to the token tok.