We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 6f10061 commit 21a6575Copy full SHA for 21a6575
1 file changed
decode.go
@@ -1,11 +1,27 @@
1
package main
2
3
+import (
4
+ "fmt"
5
+ "strconv"
6
+)
7
+
8
func decode(input interface{}) interface{} {
9
switch in := input.(type) {
10
case map[interface{}]interface{}:
11
rec := map[string]interface{}{}
12
for k, v := range in {
- rec[k.(string)] = decode(v)
13
14
+ switch k.(type) {
15
+ case bool:
16
+ rec[strconv.FormatBool(k.(bool))] = decode(v)
17
+ case int:
18
+ rec[strconv.Itoa(k.(int))] = decode(v)
19
+ case float64:
20
+ rec[fmt.Sprintf("%f", k.(float64))] = decode(v)
21
+ case string:
22
+ rec[k.(string)] = decode(v)
23
+ }
24
25
}
26
return rec
27
case []interface{}:
0 commit comments