interp: take into account embedded property of struct field

The trick is that in reflect, the field is called Anonymous, which is
actually a different notion in the Go spec/vocable.

n.b. only works for non-recursive types for now.

Fixes #781
This commit is contained in:
mpl
2020-08-20 14:51:14 +02:00
committed by GitHub
parent 896bfeb5a1
commit 3faa47c61e
3 changed files with 54 additions and 2 deletions

23
_test/struct56.go Normal file
View File

@@ -0,0 +1,23 @@
package main
import (
"encoding/json"
"fmt"
)
type A struct {
IA InnerA
}
type InnerA struct {
Timestamp int64
}
func main() {
a := &A{}
b, _ := json.Marshal(a)
fmt.Println(string(b))
}
// Output:
// {"IA":{"Timestamp":0}}