dump

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Aug 12, 2022 License: BSD-3-Clause Imports: 12 Imported by: 0

Documentation

Overview

Original from https://github.com/gookit/goutil/tree/master/dump Package dump like fmt.Println but more pretty and beautiful print Go values.

Index

Examples

Constants

View Source
const (
	Fnopos = 1 << iota // no position
	Ffunc
	Ffile
	Ffname
	Fline
)

These flags define which print caller information

Variables

This section is empty.

Functions

func Clear

func Clear(vs ...interface{})

Clear dump clear data, without location.

func Config

func Config(fn func(opts *Options))

Config std dumper

func Format

func Format(vs ...interface{}) string

Format like fmt.Println, but the output is clearer and more beautiful

func Fprint

func Fprint(w io.Writer, vs ...interface{})

Fprint like fmt.Println, but the output is clearer and more beautiful

func NoLoc

func NoLoc(vs ...interface{})

NoLoc dump vars data, without location.

func P

func P(vs ...interface{})

P like fmt.Println, but the output is clearer and more beautiful

func Print

func Print(vs ...interface{})

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]interface{}{
		"sub": map[string]string{"k": "v"},
	},
	struct {
		ab string
		Cd int
	}{
		"ab", 23,
	},
)

// Output like:
// PRINT AT github.com/gookit/goutil/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,
// }
//

func Println

func Println(vs ...interface{})

Println like fmt.Println, but the output is clearer and more beautiful

func Reset

func Reset()

Reset std dumper

func V

func V(vs ...interface{})

V like fmt.Println, but the output is clearer and more beautiful

func WrapTag

func WrapTag(s string, tag string) string

WrapTag wrap a tag for a string "<tag>content</>"

Types

type Dumper

type Dumper struct {
	*Options
	// contains filtered or unexported fields
}

Dumper struct definition

func NewDumper

func NewDumper(out io.Writer, skip int) *Dumper

NewDumper create

func NewWithOptions

func NewWithOptions(fn func(opts *Options)) *Dumper

NewWithOptions create

func Std

func Std() *Dumper

Std dumper

func (*Dumper) Dump

func (d *Dumper) Dump(vs ...interface{})

Dump vars

func (*Dumper) Fprint

func (d *Dumper) Fprint(w io.Writer, vs ...interface{})

Fprint print vars to io.Writer

func (*Dumper) Print

func (d *Dumper) Print(vs ...interface{})

Print vars. alias of Dump()

func (*Dumper) Println

func (d *Dumper) Println(vs ...interface{})

Println vars. alias of Dump()

func (*Dumper) ResetOptions

func (d *Dumper) ResetOptions()

ResetOptions for dumper

func (*Dumper) WithOptions

func (d *Dumper) WithOptions(fn func(opts *Options)) *Dumper

WithOptions for dumper

func (*Dumper) WithSkip

func (d *Dumper) WithSkip(skip int) *Dumper

WithSkip for dumper

func (*Dumper) WithoutColor

func (d *Dumper) WithoutColor() *Dumper

WithoutColor for dumper

type Options

type Options struct {
	// Output the output writer
	Output io.Writer
	// NoType dont 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
	// MoreLenNL array/slice elements length > MoreLenNL, will wrap new line
	// MoreLenNL int
	// CallerSkip skip for call runtime.Caller()
	CallerSkip int
	// ColorTheme for print result.
	ColorTheme Theme
}

Options for dump vars

func NewDefaultOptions

func NewDefaultOptions(out io.Writer, skip int) *Options

NewDefaultOptions create.

type Theme

type Theme map[string]string

Theme color code/tag map for dump

Jump to

Keyboard shortcuts

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