code: func (p *parser) Position() Position {
  	// if we have any previously read tokens, then the token at
  	// the end of the "undo" list (most recently "undone") gives the
  	// position of the parser
  	_length := len(p._undo)
  	if _length != 0 {
  		return p._undo[_length-1].Position
  	}
  
  	// otherwise, return the position of the lexer
  	return p._lexer.Position()
  }
docs: // Position returns the current position of the parser in the input stream.