]> Cypherpunks repositories - gostls13.git/commit
go/printer: allow one-method interfaces to be printed on a single line
authorTim Cooper <tim.cooper@layeh.com>
Tue, 26 Sep 2017 01:34:23 +0000 (22:34 -0300)
committerRobert Griesemer <gri@golang.org>
Tue, 3 Oct 2017 16:41:54 +0000 (16:41 +0000)
commit92ba9b5c40c23dad771fa471cdf24a2f18847ab8
tree0299d0572c70ff63a72e2ad6c6dce88db812d095
parente04ff3d133913ae5665d0da1baeffdcd4dc93bdf
go/printer: allow one-method interfaces to be printed on a single line

Previously, only the empty interface could be formatted to print on a
single line. This behaviour made short one-method interfaces in function
definitions and type assertions more verbose than they had to be.

For example, the following type assertion:

    if c, ok := v.(interface {
        Close() error
    }); ok {
    }

Can now be formatted as:

    if c, ok := v.(interface{ Close() error }); ok {
    }

Fixes #21952

Change-Id: I896f796c5a30b9f4da2be3fe67cb6fea5871b835
Reviewed-on: https://go-review.googlesource.com/66130
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Robert Griesemer <gri@golang.org>
src/go/printer/nodes.go
src/go/printer/testdata/expressions.golden
src/go/printer/testdata/expressions.input
src/go/printer/testdata/expressions.raw