summaryrefslogtreecommitdiff
path: root/encode.go
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2023-02-10 15:48:28 -0700
committerLuke Shumaker <lukeshu@lukeshu.com>2023-02-10 21:45:33 -0700
commit1f0abce0bf4061261572f6ed2f815f71647cc7e5 (patch)
tree7920851db4df070c264d38e7b73228f369a3b705 /encode.go
parent0ce1d3e727ea347c3588f96be8a356fa6ea3bc0e (diff)
encode: Begone with encodeTODO
Diffstat (limited to 'encode.go')
-rw-r--r--encode.go29
1 files changed, 16 insertions, 13 deletions
diff --git a/encode.go b/encode.go
index 2830ace..492b40f 100644
--- a/encode.go
+++ b/encode.go
@@ -246,13 +246,27 @@ func encode(w *ReEncoder, val reflect.Value, escaper BackslashEscaper, quote boo
return err
}
}
- case reflect.Float32, reflect.Float64:
+ case reflect.Float32:
if quote {
if err := w.WriteByte('"'); err != nil {
return err
}
}
- if err := encodeTODO(w, val); err != nil {
+ if err := encodeFloat(w, 32, val); err != nil {
+ return err
+ }
+ if quote {
+ if err := w.WriteByte('"'); err != nil {
+ return err
+ }
+ }
+ case reflect.Float64:
+ if quote {
+ if err := w.WriteByte('"'); err != nil {
+ return err
+ }
+ }
+ if err := encodeFloat(w, 64, val); err != nil {
return err
}
if quote {
@@ -522,14 +536,3 @@ func encodeArray(w *ReEncoder, val reflect.Value, escaper BackslashEscaper, cycl
}
return nil
}
-
-func encodeTODO(w io.Writer, val reflect.Value) error {
- bs, err := json.Marshal(val.Interface())
- if err != nil {
- return err
- }
- if _, err := w.Write(bs); err != nil {
- return err
- }
- return nil
-}