]> Cypherpunks repositories - gostls13.git/commitdiff
- receiver ident may be optional
authorRobert Griesemer <gri@golang.org>
Thu, 18 Dec 2008 21:29:11 +0000 (13:29 -0800)
committerRobert Griesemer <gri@golang.org>
Thu, 18 Dec 2008 21:29:11 +0000 (13:29 -0800)
R=r
DELTA=5  (2 added, 0 deleted, 3 changed)
OCL=21508
CL=21510

doc/go_spec.txt

index d3fd4714ed248d4b0219f1b393a7135271ea5b53..a3af04af3a1f1205f40e75362467b635a2d85657 100644 (file)
@@ -3,7 +3,7 @@ The Go Programming Language Specification (DRAFT)
 
 Robert Griesemer, Rob Pike, Ken Thompson
 
-(December 17, 2008)
+(December 18, 2008)
 
 ----
 
@@ -3045,10 +3045,12 @@ as a type name, or as a pointer to a type name. The type specified by the
 type name is called ``receiver base type''. The receiver base type must be a
 type declared in the current file, and it must not be a pointer type.
 The method is said to be ``bound'' to the receiver base type; specifically
-it is declared within the scope of that type (§Type declarations).
+it is declared within the scope of that type (§Type declarations). If the
+receiver value is not needed inside the method, its identifier may be omitted
+in the declaration.
 
        MethodDecl = "func" Receiver identifier FunctionType [ Block ] .
-       Receiver = "(" identifier [ "*" ] TypeName ")" .
+       Receiver = "(" [ identifier ] [ "*" ] TypeName ")" .
 
 All methods bound to a receiver base type must have the same receiver type:
 Either all receiver types are pointers to the base type or they are the base