src/server/pkg/ppsutil/util.go
func DescribeSyntaxError(originalErr error, parsedBuffer bytes.Buffer) error {

	sErr, ok := originalErr.(*json.SyntaxError)
	if !ok {
		return originalErr
	}

	buffer := make([]byte, sErr.Offset)
	parsedBuffer.Read(buffer)

	lineOffset := strings.LastIndex(string(buffer[:len(buffer)-1]), "\n")
	if lineOffset == -1 {
		lineOffset = 0
	}

	lines := strings.Split(string(buffer[:len(buffer)-1]), "\n")
	lineNumber := len(lines)

	descriptiveErrorString := fmt.Sprintf("Syntax Error on line %v:\n%v\n%v^\n%v\n",
		lineNumber,
		string(buffer[lineOffset:]),
		strings.Repeat(" ", int(sErr.Offset)-2-lineOffset),
		originalErr,
	)

	return errors.New(descriptiveErrorString)
}
func DescribeSyntaxError(originalErr error, parsedBuffer bytes.Buffer) error {

	sErr, ok := originalErr.(*json.SyntaxError)
	if !ok {
		return originalErr
	}

	buffer := make([]byte, sErr.Offset)
	parsedBuffer.Read(buffer)

	lineOffset := strings.LastIndex(string(buffer[:len(buffer)-1]), "\n")
	if lineOffset == -1 {
		lineOffset = 0
	}

	lines := strings.Split(string(buffer[:len(buffer)-1]), "\n")
	lineNumber := len(lines)

	descriptiveErrorString := fmt.Sprintf("Syntax Error on line %v:\n%v\n%v^\n%v\n",
		lineNumber,
		string(buffer[lineOffset:]),
		strings.Repeat(" ", int(sErr.Offset)-2-lineOffset),
		originalErr,
	)

	return errors.New(descriptiveErrorString)
}
func DescribeSyntaxError ( originalErr error , parsedBuffer bytes . Buffer ) error { sErr , ok := originalErr . ( * json . SyntaxError ) if ! ok { return originalErr } buffer := make ( [ ] byte , sErr . Offset ) parsedBuffer . Read ( buffer ) lineOffset := strings . LastIndex ( string ( buffer [ : len ( buffer ) - 1 ] ) , " \n " ) if lineOffset == - 1 { lineOffset = 0 } lines := strings . Split ( string ( buffer [ : len ( buffer ) - 1 ] ) , " \n " ) lineNumber := len ( lines ) descriptiveErrorString := fmt . Sprintf ( " \n \n \n \n " , lineNumber , string ( buffer [ lineOffset : ] ) , strings . Repeat ( " " , int ( sErr . Offset ) - 2 - lineOffset ) , originalErr , ) return errors . New ( descriptiveErrorString ) }
// DescribeSyntaxError describes a syntax error encountered parsing json.
DescribeSyntaxError describes a syntax error encountered parsing json .