zeroshade commented on a change in pull request #11359:
URL: https://github.com/apache/arrow/pull/11359#discussion_r741376273



##########
File path: go/arrow/array/decimal128.go
##########
@@ -229,6 +253,67 @@ func (b *Decimal128Builder) newData() (data *Data) {
        return
 }
 
+func (b *Decimal128Builder) unmarshalOne(dec *json.Decoder) error {
+       t, err := dec.Token()
+       if err != nil {
+               return err
+       }
+
+       var out *big.Float
+
+       switch v := t.(type) {
+       case float64:
+               out = big.NewFloat(v)
+       case string:
+               out, _, err = big.ParseFloat(v, 10, 0, big.ToNearestAway)
+               if err != nil {
+                       return err
+               }
+       case json.Number:

Review comment:
       It's not an alias but an actual type, which would only get used if the 
json encoder sets an option to use it. The `json.Number` type provides helper 
functions for parsing from the string, so the logic wouldn't be the same as 
using string, but instead using the helper functions directly and checking the 
error returns from them




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to