fix: invalid schema for function 'func_name': None is not of type 'object' (#429)(#432) (#434)

* fix: invalid schema for function 'func_name': None is not of type 'object' (#429)(#432)

* test: add integration test for function call (#429)(#432)

* style: remove duplicate import (#429)(#432)
This commit is contained in:
渡邉祐一 / Yuichi Watanabe
2023-07-11 20:48:15 +09:00
committed by GitHub
parent f028c289d2
commit c3b2451f7c
3 changed files with 63 additions and 30 deletions

View File

@@ -36,23 +36,14 @@ type Definition struct {
Items *Definition `json:"items,omitempty"`
}
func (d *Definition) MarshalJSON() ([]byte, error) {
d.initializeProperties()
return json.Marshal(*d)
}
func (d *Definition) initializeProperties() {
func (d Definition) MarshalJSON() ([]byte, error) {
if d.Properties == nil {
d.Properties = make(map[string]Definition)
return
}
for k, v := range d.Properties {
if v.Properties == nil {
v.Properties = make(map[string]Definition)
} else {
v.initializeProperties()
}
d.Properties[k] = v
}
type Alias Definition
return json.Marshal(struct {
Alias
}{
Alias: (Alias)(d),
})
}