diff options
| author | Dave Collins <[email protected]> | 2013-01-08 23:51:09 -0600 |
|---|---|---|
| committer | Dave Collins <[email protected]> | 2013-01-08 23:51:09 -0600 |
| commit | 948e0316453d9334644088984539d2e9c9da0b8c (patch) | |
| tree | e712b64ae3ecaa87a237fecbfd46b1871d890bfe | |
| parent | 1a599b7b25608caff9eb93899deac25a13e0490d (diff) | |
Update README.md
| -rw-r--r-- | README.md | 59 |
1 files changed, 58 insertions, 1 deletions
@@ -1,4 +1,61 @@ go-spew ======= -Implements a deep pretty printer for Go data structures to aid in debugging
\ No newline at end of file +Go-spew implements a deep pretty printer for Go data structures to aid in +debugging. It is still under initial development, so some of the formatting +output is likely to change, however it is already quite capable. It is +licensed under the liberal ISC license, so it may be used in open source or +commercial projects. + +## Documentation + +Full `go doc` style documentation for the project can be viewed online without +installing this package by using the excellent GoDoc site here: +http://godoc.org/github.com/davecgh/go-spew/spew + +You can also view the documentation locally once the package is installed with +the `godoc` tool by running `godoc -http=":6060"` and pointing your browser to +http://localhost:6060/pkg/github.com/davecgh/go-spew/spew + +## Installation + +```bash +$ go get github.com/davecgh/go-spew/spew +``` + +## Quick Start + +To dump a variable with full newlines, indentation, type, and pointer +information use Dump or Fdump: + +```Go +spew.Dump(myVar1, myVar2, ...) +spew.Fdump(someWriter, myVar1, myVar2, ...) +``` + +Alternatively, if you would prefer to use format strings with a compacted inline +printing style, use the convenience wrappers Printf, Fprintf, etc with either +%v (most compact) or %+v (adds pointer addresses): + +```Go +spew.Printf("myVar1: %v -- myVar2: %+v", myVar1, myVar2) +spew.Fprintf(someWriter, "myVar1: %v -- myVar2: %+v", myVar1, myVar2) +``` + +## Sample Dump Output + +``` + (main.Foo) { + unexportedField: (*main.Bar)(0xf84002e210)({ + flag: (main.Flag) flagTwo, + data: (uintptr) <nil> + }), + ExportedField: (map[interface {}]interface {}) { + (string) "one": (bool) true + } + } +``` + +## License + +Go-spew is licensed under the liberal ISC License. |
