Dave Collins 13 rokov pred
rodič
commit
596fe65916
1 zmenil súbory, kde vykonal 28 pridanie a 10 odobranie
  1. 28 10
      README.md

+ 28 - 10
README.md

@@ -39,12 +39,15 @@ spew.Fdump(someWriter, myVar1, myVar2, ...)
 ```
 ```
 
 
 Alternatively, if you would prefer to use format strings with a compacted inline
 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):
+printing style, use the convenience wrappers Printf, Fprintf, etc with %v (most
+compact), %+v (adds pointer addresses), %#v (adds types), or %#+v (adds types
+and pointer addresses): 
 
 
 ```Go
 ```Go
 spew.Printf("myVar1: %v -- myVar2: %+v", myVar1, myVar2)
 spew.Printf("myVar1: %v -- myVar2: %+v", myVar1, myVar2)
+spew.Printf("myVar3: %#v -- myVar4: %#+v", myVar3, myVar4)
 spew.Fprintf(someWriter, "myVar1: %v -- myVar2: %+v", myVar1, myVar2)
 spew.Fprintf(someWriter, "myVar1: %v -- myVar2: %+v", myVar1, myVar2)
+spew.Fprintf(someWriter, "myVar3: %#v -- myVar4: %#+v", myVar3, myVar4)
 ```
 ```
 
 
 ## Sample Dump Output
 ## Sample Dump Output
@@ -63,32 +66,47 @@ spew.Fprintf(someWriter, "myVar1: %v -- myVar2: %+v", myVar1, myVar2)
 
 
 ## Sample Formatter Output
 ## Sample Formatter Output
 
 
-Double pointer to a uint8 via %v:
+Double pointer to a uint8:
 ```
 ```
-	<**>5
+	  %v: <**>5
+	 %+v: <**>(0xf8400420d0->0xf8400420c8)5
+	 %#v: (**uint8)5
+	%#+v: (**uint8)(0xf8400420d0->0xf8400420c8)5
 ```
 ```
 
 
-Circular struct with a uint8 field and a pointer to itself via %+v:
+Pointer to circular struct with a uint8 field and a pointer to itself:
 ```
 ```
-	{ui8:1 c:<*>(0xf84002d200){ui8:1 c:<*>(0xf84002d200)<shown>}}
+	  %v: <*>{1 <*><shown>}
+	 %+v: <*>(0xf84003e260){ui8:1 c:<*>(0xf84003e260)<shown>}
+	 %#v: (*main.circular){ui8:(uint8)1 c:(*main.circular)<shown>}
+	%#+v: (*main.circular)(0xf84003e260){ui8:(uint8)1 c:(*main.circular)(0xf84003e260)<shown>}
 ```
 ```
 
 
 ## Configuration Options
 ## Configuration Options
 
 
+Configuration of spew is handled by fields in the ConfigState type. For
+convenience, all of the top-level functions use a global state available via the
+spew.Config global.
+
+It is also possible to create a SpewState instance which provides a unique
+ConfigState accessible via the Config method. The methods of SpewState are
+equivalent to the top-level functions. This allows concurrent configuration
+options. See the SpewState documentation for more details.
+
 ```
 ```
-* spew.Config.MaxDepth
+* MaxDepth
 	Maximum number of levels to descend into nested data structures.
 	Maximum number of levels to descend into nested data structures.
 	There is no limit by default.
 	There is no limit by default.
 
 
-* spew.Config.Indent
+* Indent
 	String to use for each indentation level for Dump functions.
 	String to use for each indentation level for Dump functions.
 	It is a single space by default.  A popular alternative is "\t".
 	It is a single space by default.  A popular alternative is "\t".
 
 
-* spew.Config.DisableMethods
+* DisableMethods
 	Disables invocation of error and Stringer interface methods.
 	Disables invocation of error and Stringer interface methods.
 	Method invocation is enabled by default.
 	Method invocation is enabled by default.
 
 
-* spew.Config.DisablePointerMethods
+* DisablePointerMethods
 	Disables invocation of error and Stringer interface methods on types
 	Disables invocation of error and Stringer interface methods on types
 	which only accept pointer receivers from non-pointer variables.
 	which only accept pointer receivers from non-pointer variables.
 	Pointer method invocation is enabled by default.
 	Pointer method invocation is enabled by default.