func (line Line) IsStartOfLine(index int) bool {
	pos := line.Start
	if index < line.Start || index > line.End {
		return false
	}
	for _, c := range line.Text() {
		if unicode.IsSpace(rune(c)) == true {
			pos++
			continue
		}
		if index <= pos {
			return true
		}
		break
	}
	return false
}
IsStartOfLine returns true if index is inside the white space between
the beginning of the line and any non white space character
package utils
import (
	"bytes"
	"fmt"
	"io"
	"strings"
	"unicode"
	"github.com/graphql-go/graphql/language/ast"
	"github.com/graphql-go/graphql/language/kinds"
)
type Line struct {
	Start  int
	End    int
	Source []byte
}
func (line Line) Text() string {
	return string(line.Source[line.Start:line.End])
}