Home | History | Annotate | Download | only in testdata
      1 // This is a package for testing comment placement by go/printer.
      2 //
      3 package main
      4 
      5 // The SZ struct; it is empty.
      6 type SZ struct{}
      7 
      8 // The S0 struct; no field is exported.
      9 type S0 struct {
     10 	// contains filtered or unexported fields
     11 }
     12 
     13 // The S1 struct; some fields are not exported.
     14 type S1 struct {
     15 	S0
     16 	A, B, C	float	// 3 exported fields
     17 	D	int	// 2 unexported fields
     18 	// contains filtered or unexported fields
     19 }
     20 
     21 // The S2 struct; all fields are exported.
     22 type S2 struct {
     23 	S1
     24 	A, B, C	float	// 3 exported fields
     25 }
     26 
     27 // The IZ interface; it is empty.
     28 type SZ interface{}
     29 
     30 // The I0 interface; no method is exported.
     31 type I0 interface {
     32 	// contains filtered or unexported methods
     33 }
     34 
     35 // The I1 interface; some methods are not exported.
     36 type I1 interface {
     37 	I0
     38 	F(x float) float	// exported methods
     39 	// contains filtered or unexported methods
     40 }
     41 
     42 // The I2 interface; all methods are exported.
     43 type I2 interface {
     44 	I0
     45 	F(x float) float	// exported method
     46 	G(x float) float	// exported method
     47 }
     48 
     49 // The S3 struct; all comments except for the last one must appear in the export.
     50 type S3 struct {
     51 	// lead comment for F1
     52 	F1	int	// line comment for F1
     53 	// lead comment for F2
     54 	F2	int	// line comment for F2
     55 	// contains filtered or unexported fields
     56 }
     57