5252
5353``` go
5454func longFunctionDefinition (
55- paramX int ,
56- paramY string ,
57- paramZ bool ,
55+ paramX int ,
56+ paramY string ,
57+ paramZ bool ,
5858) (string , error ){}
5959
6060// and
6161
6262s := myStruct{
63- field1: 1 ,
64- field2: 2 ,
65- field3: 3 ,
63+ field1: 1 ,
64+ field2: 2 ,
65+ field3: 3 ,
6666}
6767```
6868
6969DO NOT:
7070
7171``` go
7272func longFunctionDefinition (paramX int , paramY string ,
73- paramZ bool ,
73+ paramZ bool ,
7474) (string , error ){}
7575
7676// or
7777
7878func longFunctionDefinition (
79- paramX int , paramY string ,
80- paramZ bool ,
79+ paramX int , paramY string ,
80+ paramZ bool ,
8181) (string , error ){}
8282
8383// or
@@ -92,12 +92,12 @@ Example:
9292
9393``` go
9494cfg := foo.Config {
95- Site: " example.com" ,
96- Out: os.Stdout ,
97- Dest: c.KeyPair {
98- Key: " style" ,
99- Value: " well formatted" ,
100- },
95+ Site : " example.com" ,
96+ Out : os.Stdout ,
97+ Dest : c.KeyPair {
98+ Key: " style" ,
99+ Value: " well formatted" ,
100+ },
101101}
102102```
103103
@@ -176,7 +176,7 @@ DO NOT:
176176
177177```go
178178func(int required, int optional) {
179- if optional {...}
179+ if optional {...}
180180}
181181```
182182
@@ -186,15 +186,15 @@ DO:
186186type Option func (o *Object)
187187
188188func Optional (string optional ) Option {
189- return func (o *Object) {
190- o.optional = optional
191- }
189+ return func (o *Object) {
190+ o.optional = optional
191+ }
192192}
193193
194194func (int required , ...Options ) {
195- for o := range Options {
196- o (self)
197- }
195+ for o := range Options {
196+ o (self)
197+ }
198198}
199199```
200200
@@ -217,22 +217,22 @@ DO NOT:
217217
218218``` go
219219func badAtStuff (noData string ) error {
220- if len (noData) == 0 {
221- fmt.Printf (" Received no data" )
222- }
220+ if len (noData) == 0 {
221+ fmt.Printf (" Received no data" )
222+ }
223223
224- return errors.New (" received no data" )
224+ return errors.New (" received no data" )
225225}
226226```
227227
228228DO
229229
230230``` go
231231func badAtStuff (noData string ) error {
232- if len (noData) == 0 {
233- return errors.New (" received no data" )
234- }
235- ...
232+ if len (noData) == 0 {
233+ return errors.New (" received no data" )
234+ }
235+ ...
236236}
237237```
238238
@@ -253,21 +253,21 @@ func onError(err error) {
253253}
254254
255255func ReadAsync (r io .Reader , onError ) {
256- err := r ()
257- if err != nil {
258- onError (err)
259- }
256+ err := r ()
257+ if err != nil {
258+ onError (err)
259+ }
260260}
261261
262262go ReadAsync (reader, onError)
263263
264264// OR errs := make(chan error)
265265
266266func ReadAsync (r io .Reader , errs chan <- error ) {
267- err := r ()
268- if err != nil {
269- // put error on errs channel, but don't block forever.
270- }
267+ err := r ()
268+ if err != nil {
269+ // put error on errs channel, but don't block forever.
270+ }
271271}
272272```
273273
@@ -281,35 +281,35 @@ Example:
281281
282282``` go
283283func readFile (filename string ) ([]byte , error ) {
284- file , err := os.Open (filename)
285- if err != nil {
286- return nil , fmt.Errorf (" failed to open file: % w" , err)
287- }
288- defer file.Close ()
289-
290- data , err := ioutil.ReadAll (file)
291- if err != nil {
292- return nil , fmt.Errorf (" failed to read file: % w" , err)
293- }
294-
295- return data, nil
284+ file , err := os.Open (filename)
285+ if err != nil {
286+ return nil , fmt.Errorf (" failed to open file: % w" , err)
287+ }
288+ defer file.Close ()
289+
290+ data , err := ioutil.ReadAll (file)
291+ if err != nil {
292+ return nil , fmt.Errorf (" failed to read file: % w" , err)
293+ }
294+
295+ return data, nil
296296}
297297
298298func processFile (filename string ) error {
299- data , err := readFile (filename)
300- if err != nil {
301- return fmt.Errorf (" failed to process file: % w" , err)
302- }
303- // Process the file data here
304- return nil
299+ data , err := readFile (filename)
300+ if err != nil {
301+ return fmt.Errorf (" failed to process file: % w" , err)
302+ }
303+ // Process the file data here
304+ return nil
305305}
306306
307307func main () {
308- filename := " example.txt"
309- err := processFile (filename)
310- if err != nil {
311- fmt.Printf (" Error processing file: %v \n " , err) // caller handles the error
312- }
308+ filename := " example.txt"
309+ err := processFile (filename)
310+ if err != nil {
311+ fmt.Printf (" Error processing file: %v \n " , err) // caller handles the error
312+ }
313313}
314314```
315315
@@ -413,27 +413,27 @@ FAVOR:
413413
414414``` go
415415type Object struct {
416- subobject SubObject
416+ subobject SubObject
417417}
418418
419419func New () Object {
420- return Object{
421- subobject: SubObject{},
422- }
420+ return Object{
421+ subobject: SubObject{},
422+ }
423423}
424424```
425425
426426DISFAVOR:
427427
428428``` go
429429type Object struct {
430- subobject *SubObject
430+ subobject *SubObject
431431}
432432
433433func New () *Object {
434- return &Object{
435- subobject: &SubObject{},
436- }
434+ return &Object{
435+ subobject: &SubObject{},
436+ }
437437}
438438```
439439
@@ -455,8 +455,8 @@ DO NOT:
455455
456456``` go
457457func (s string ) *string {
458- s := s + " more strings"
459- return &s // this will move to heap
458+ s := s + " more strings"
459+ return &s // this will move to heap
460460}
461461```
462462
0 commit comments