fix grammar for struct and interface types to make final semicolon optional

SVN=111810
This commit is contained in:
Rob Pike 2008-03-07 18:01:09 -08:00
parent e6626dafa8
commit 2aae3fcbaf

View file

@ -601,8 +601,8 @@ Struct types are similar to C structs.
Each field of a struct represents a variable within the data
structure.
StructType = 'struct' '{' { FieldDecl } '}' .
FieldDecl = IdentifierList Type ';' .
StructType = 'struct' '{' [ FieldDecl { ';' FieldDecl } [ ';' ] ] '}' .
FieldDecl = IdentifierList Type .
// An empty struct.
struct {}
@ -768,8 +768,8 @@ Interface types
An interface type denotes a set of methods.
InterfaceType = 'interface' '{' { MethodDecl } '}' .
MethodDecl = identifier Parameters [ Result ] ';' .
InterfaceType = 'interface' '{' [ MethodDecl { ';' MethodDecl } [ ';' ] ] '}' .
MethodDecl = identifier Parameters [ Result ] .
// A basic file interface.
type File interface {