MCPcopy Index your code
hub / github.com/go-openapi/jsonpointer / Example_struct

Function Example_struct

struct_example_test.go:35–117  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

33}
34
35func Example_struct() {
36 doc := ExampleDoc{
37 PromotedDoc: PromotedDoc{
38 C: "c",
39 },
40 Promoted: EmbeddedDoc{
41 B: "promoted",
42 },
43 A: "a",
44 Ignored: "ignored",
45 unexported: "unexported",
46 }
47
48 {
49 // tagged simple field
50 pointerA, _ := jsonpointer.New("/propA")
51 a, _, err := pointerA.Get(doc)
52 if err != nil {
53 fmt.Println(err)
54 return
55 }
56 fmt.Printf("a: %v\n", a)
57 }
58
59 {
60 // tagged struct field is resolved
61 pointerB, _ := jsonpointer.New("/promoted/propB")
62 b, _, err := pointerB.Get(doc)
63 if err != nil {
64 fmt.Println(err)
65 return
66 }
67 fmt.Printf("b: %v\n", b)
68 }
69
70 {
71 // tagged embedded field is resolved
72 pointerC, _ := jsonpointer.New("/propC")
73 c, _, err := pointerC.Get(doc)
74 if err != nil {
75 fmt.Println(err)
76 return
77 }
78 fmt.Printf("c: %v\n", c)
79 }
80
81 {
82 // exlicitly ignored by JSON tag.
83 pointerI, _ := jsonpointer.New("/ignored")
84 _, _, err := pointerI.Get(doc)
85 fmt.Printf("ignored: %v\n", err)
86 }
87
88 {
89 // unexported field is ignored: use [JSONPointable] to alter this behavior.
90 pointerX, _ := jsonpointer.New("/unexported")
91 _, _, err := pointerX.Get(doc)
92 fmt.Printf("unexported: %v\n", err)

Callers

nothing calls this directly

Calls 2

NewFunction · 0.92
GetMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…