jy2struct

package
v0.0.0-...-8d2f45b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2026 License: MIT Imports: 14 Imported by: 0

README

jy2struct

jy2structis a library for generating go struct code, supporting json and yaml.


Example of use

Main setting parameters.

type Args struct {
	Format    string // document format, json or yaml
	Data      string // json or yaml content
	InputFile string // file
	Name      string // name of structure
	SubStruct bool   // are sub-structures separated
	Tags      string // add additional tags, multiple tags separated by commas
}

Example of conversion.

    import "github.com/KosAIGoLa/sponge/pkg/jy2struct"

    // json convert to struct
    code, err := jy2struct.Convert(&jy2struct.Args{
        Format: "json",
        // InputFile: "user.json", // source from json file
        SubStruct: true,
    })

    // yaml convert to struct
    code, err := jy2struct.Convert(&jy2struct.Args{
        Format: "yaml",
        // InputFile: "user.yaml", // Source from yaml file
        SubStruct: true,
    })

Documentation

Overview

Package jy2struct is a library for generating go struct code, supporting json and yaml.

Index

Constants

This section is empty.

Variables

View Source
var ForceFloats bool

ForceFloats whether to force a change to float

Functions

func Convert

func Convert(args *Args) (string, error)

Convert json or yaml to go struct

func FmtFieldName

func FmtFieldName(s string) string

FmtFieldName formats a string as a struct key

Example:

FmtFieldName("foo_id")

Output: FooID

func ParseJSON

func ParseJSON(input io.Reader) (any, error)

ParseJSON parse json to struct

func ParseYaml

func ParseYaml(input io.Reader) (any, error)

ParseYaml parse yaml to struct

Types

type Args

type Args struct {
	Format    string // document format, json or yaml
	Data      string // json or yaml content
	InputFile string // file
	Name      string // name of structure
	SubStruct bool   // are sub-structures separated
	Tags      string // add additional tags, multiple tags separated by commas
	// contains filtered or unexported fields
}

Args convert arguments

type Parser

type Parser func(io.Reader) (any, error)

Parser parser function

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL