/
githubmirror
/
sqlc
Обзор
Документация
Войти
/
githubmirror
/
sqlc
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
scripts/test-json-process-plugin/main.go
39 строк
751 B
rouzier
Add support for json format from process plugins (#3827)
08 фев 2025, 22:02
Не верифицирован
08 фев 2025, 22:02
223fd03
Код
Авторство
О чём код?
package main import ( "bytes" "encoding/json" "fmt" "os" ) type Out struct { Files []File `json:"files"` } type File struct { Name string `json:"name"` Contents []byte `json:"contents"` } func main() { in := make(map[string]interface{}) decoder := json.NewDecoder(os.Stdin) err := decoder.Decode(&in) if err != nil { fmt.Fprintf(os.Stderr, "error generating JSON: %s", err) os.Exit(2) } buf := bytes.NewBuffer(nil) queries := in["queries"].([]interface{}) for _, q := range queries { text := q.(map[string]interface{})["text"].(string) buf.WriteString(text) buf.WriteString("\n") } e := json.NewEncoder(os.Stdout) e.SetIndent("", " ") e.Encode(&Out{Files: []File{{Name: "hello.txt", Contents: buf.Bytes()}}}) }