func()

in azkustodata/value/long.go [21:49]


func (l *Long) Unmarshal(i interface{}) error {
	if i == nil {
		l.value = nil
		return nil
	}

	var myInt int64

	switch v := i.(type) {
	case json.Number:
		var err error
		myInt, err = v.Int64()
		if err != nil {
			return parseError(l, i, err)
		}
	case float64:
		if v != math.Trunc(v) {
			return parseError(l, i, fmt.Errorf("float64 value was not an integer"))
		}
		myInt = int64(v)
	case int:
		myInt = int64(v)
	default:
		return convertError(l, i)
	}

	l.value = &myInt
	return nil
}