Documentation
¶
Overview ¶
Package dump like fmt.Println but more pretty and beautiful print Go values.
Package goutil 💪 Useful utils for Go: int, string, array/slice, map, error, time, format, CLI, ENV, filesystem, system, testing, debug and more.
Index ¶
- Constants
- func Clear(vs ...any)
- func Config(fns ...OptionFunc)
- func ErrOnFail(cond bool, err error) error
- func Format(vs ...any) string
- func Fprint(w io.Writer, vs ...any)
- func MustOK(err error)
- func NoLoc(vs ...any)
- func OrError(cond bool, err error) error
- func OrReturn[T any](cond bool, okFn, elseFn func() T) T
- func OrValue[T any](cond bool, okVal, elVal T) T
- func P(vs ...any)
- func PanicErr(err error)
- func PanicIfErr(err error)
- func Panicf(format string, v ...any)
- func PkgName(funcName string) string
- func Print(vs ...any)
- func Println(vs ...any)
- func Reset()
- func Reset2()
- func V(vs ...any)
- type Dumper
- func (d *Dumper) Dump(vs ...any)
- func (d *Dumper) Fprint(w io.Writer, vs ...any)
- func (d *Dumper) Print(vs ...any)
- func (d *Dumper) Println(vs ...any)
- func (d *Dumper) ResetOptions()
- func (d *Dumper) WithOptions(fns ...OptionFunc) *Dumper
- func (d *Dumper) WithSkip(skip int) *Dumper
- func (d *Dumper) WithoutColor() *Dumper
- type OptionFunc
- type Options
- type Theme
- type Value
Examples ¶
Constants ¶
const ( Fnopos = 1 << iota // no position Ffunc Ffile Ffname Fline )
These flags define which print caller information
Variables ¶
This section is empty.
Functions ¶
func ErrOnFail ¶ added in v0.0.3
ErrOnFail return input error on cond is false, otherwise return nil
func PanicIfErr ¶ added in v0.0.3
func PanicIfErr(err error)
PanicIfErr if error is not empty, will panic
func PkgName ¶ added in v0.0.3
PkgName get current package name. alias of stdutil.PkgName()
Usage:
funcName := goutil.FuncName(fn) pgkName := goutil.PkgName(funcName)
func Print ¶
func Print(vs ...any)
Print like fmt.Println, but the output is clearer and more beautiful
Example ¶
Config(func(d *Options) { d.NoColor = true }) defer Reset() Print( 23, []string{"ab", "cd"}, []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}, map[string]string{"key": "val"}, map[string]any{ "sub": map[string]string{"k": "v"}, }, struct { ab string Cd int }{ "ab", 23, }, ) // Output like: // PRINT AT github.com/zhangyiming748/pretty/dump.ExamplePrint(LINE 14): // int(23) // []string{"ab", "cd"} // []int [ // 1, // 2, // 3, // 4, // 5, // 6, // 7, // 8, // 9, // 10, // 11, // ] // map[string]string { // key: "val", // } // map[string]interface {} { // sub: map[string]string{"k":"v"}, // } // struct { ab string; Cd int } { // ab: "ab", // Cd: 23, // } //
Output:
Types ¶
type Dumper ¶
type Dumper struct { *Options // contains filtered or unexported fields }
Dumper struct definition
func (*Dumper) WithOptions ¶
func (d *Dumper) WithOptions(fns ...OptionFunc) *Dumper
WithOptions for dumper
type OptionFunc ¶
type OptionFunc func(opts *Options)
OptionFunc type
func WithCallerSkip ¶
func WithCallerSkip(skip int) OptionFunc
WithCallerSkip on print caller position information.
func WithoutPosition ¶
func WithoutPosition() OptionFunc
WithoutPosition dont print call dump position information.
type Options ¶
type Options struct { // Output the output writer Output io.Writer // NoType don't show data type TODO NoType bool // NoColor don't with color NoColor bool // IndentLen width. default is 2 IndentLen int // IndentChar default is one space IndentChar byte // MaxDepth for nested print MaxDepth int // ShowFlag for display caller position ShowFlag int // CallerSkip skip for call runtime.Caller() CallerSkip int // ColorTheme for print result. ColorTheme Theme // SkipNilField value dump on map, struct. SkipNilField bool // SkipPrivate field dump on struct. SkipPrivate bool // BytesAsString dump handle. BytesAsString bool }
Options for dumper
Directories
¶
Path | Synopsis |
---|---|
Package arrutil provides some util functions for array, slice
|
Package arrutil provides some util functions for array, slice |
Package byteutil Provide some bytes utils functions or structs
|
Package byteutil Provide some bytes utils functions or structs |
Package cflag Wraps and extends go `flag.FlagSet` to build simple command line applications
|
Package cflag Wraps and extends go `flag.FlagSet` to build simple command line applications |
Package cliutil provides some util functions for CLI
|
Package cliutil provides some util functions for CLI |
cmdline
Package cmdline provide quick build and parse cmd line string.
|
Package cmdline provide quick build and parse cmd line string. |
termctrl
Package termctrl provide some simple term control utils
|
Package termctrl provide some simple term control utils |
Package color is command line color library.
|
Package color is command line color library. |
Package comdef provide some common type or constant definitions
|
Package comdef provide some common type or constant definitions |
Package envutil provide some commonly ENV util functions.
|
Package envutil provide some commonly ENV util functions. |
Package errorx provide an enhanced error implements for go, allow with stacktraces and wrap another error.
|
Package errorx provide an enhanced error implements for go, allow with stacktraces and wrap another error. |
Package fmtutil provide some format util functions.
|
Package fmtutil provide some format util functions. |
Package fsutil Filesystem util functions, quick create, read and write file.
|
Package fsutil Filesystem util functions, quick create, read and write file. |
finder
Package finder provide a finder tool for find files
|
Package finder provide a finder tool for find files |
internal
|
|
Package jsonutil provide some util functions for quick operate JSON data
|
Package jsonutil provide some util functions for quick operate JSON data |
Package maputil provide map data util functions.
|
Package maputil provide map data util functions. |
Package mathutil provide math(int, number) util functions.
|
Package mathutil provide math(int, number) util functions. |
Package reflects Provide extends reflect util functions.
|
Package reflects Provide extends reflect util functions. |
Package stdio provide some standard IO util functions.
|
Package stdio provide some standard IO util functions. |
Package stdutil provide some standard util functions for go.
|
Package stdutil provide some standard util functions for go. |
Package structs Provide some extends util functions for struct.
|
Package structs Provide some extends util functions for struct. |
Package strutil provide some string,char,byte util functions
|
Package strutil provide some string,char,byte util functions |
secutil
Package secutil provide some security utils
|
Package secutil provide some security utils |
textscan
Package textscan Implemented a parser that quickly scans and analyzes text content.
|
Package textscan Implemented a parser that quickly scans and analyzes text content. |
textutil
Package textutil provide some extra text handle util
|
Package textutil provide some extra text handle util |
Package sysutil provide some system util functions.
|
Package sysutil provide some system util functions. |
clipboard
Package clipboard provide a simple clipboard read and write operations.
|
Package clipboard provide a simple clipboard read and write operations. |
cmdr
Package cmdr Provide for quick build and run a cmd, batch run multi cmd tasks
|
Package cmdr Provide for quick build and run a cmd, batch run multi cmd tasks |
process
Package process Provide some process handle util functions
|
Package process Provide some process handle util functions |
Package testutil provide some test help util functions.
|
Package testutil provide some test help util functions. |
assert
Package assert provides some tool functions for use with the Go testing.
|
Package assert provides some tool functions for use with the Go testing. |
Package timex provides an enhanced time.Time implementation.
|
Package timex provides an enhanced time.Time implementation. |