jy2struct

package
v1.0.30 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2024 License: MIT Imports: 14 Imported by: 0

README

jy2struct

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/18721889353/sunshine/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) (interface{}, error)

ParseJSON parse json to struct

func ParseYaml

func ParseYaml(input io.Reader) (interface{}, 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) (interface{}, error)

Parser parser function

Jump to

Keyboard shortcuts

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