From 460a197c983748cbd4dd95eba77b875841cef4fd Mon Sep 17 00:00:00 2001 From: Brendan Gimby Date: Wed, 15 May 2024 17:46:05 -0600 Subject: [PATCH 1/3] Add handling for index expressions --- _fixtures/indexexpr.go | 3 +++ _fixtures/indexexpr__exp.go | 10 ++++++++++ shortener.go | 2 ++ 3 files changed, 15 insertions(+) create mode 100644 _fixtures/indexexpr.go create mode 100644 _fixtures/indexexpr__exp.go diff --git a/_fixtures/indexexpr.go b/_fixtures/indexexpr.go new file mode 100644 index 0000000..c0b8588 --- /dev/null +++ b/_fixtures/indexexpr.go @@ -0,0 +1,3 @@ +package fixtures + +var a = longlistfunc(bigarg, otherbigarg, verylongarg, veryverylongarg, veryveryverylongarg, extremelylongarg)[0] diff --git a/_fixtures/indexexpr__exp.go b/_fixtures/indexexpr__exp.go new file mode 100644 index 0000000..883f25b --- /dev/null +++ b/_fixtures/indexexpr__exp.go @@ -0,0 +1,10 @@ +package fixtures + +var a = longlistfunc( + bigarg, + otherbigarg, + verylongarg, + veryverylongarg, + veryveryverylongarg, + extremelylongarg, +)[0] diff --git a/shortener.go b/shortener.go index 144d78f..b2cfc90 100644 --- a/shortener.go +++ b/shortener.go @@ -545,6 +545,8 @@ func (s *Shortener) formatExpr(expr dst.Expr, force bool, isChain bool) { if shouldShorten { s.formatFieldList(e.Params) } + case *dst.IndexExpr: + s.formatExpr(e.X, shouldShorten, isChain) case *dst.InterfaceType: for _, method := range e.Methods.List { if HasAnnotation(method) { From 364c1a28efb3d7299b4f8829086ebbddf1850adb Mon Sep 17 00:00:00 2001 From: Brendan Gimby Date: Wed, 15 May 2024 21:13:23 -0600 Subject: [PATCH 2/3] Add negative test --- _fixtures/indexexpr.go | 1 + _fixtures/indexexpr__exp.go | 1 + 2 files changed, 2 insertions(+) diff --git a/_fixtures/indexexpr.go b/_fixtures/indexexpr.go index c0b8588..f76a367 100644 --- a/_fixtures/indexexpr.go +++ b/_fixtures/indexexpr.go @@ -1,3 +1,4 @@ package fixtures var a = longlistfunc(bigarg, otherbigarg, verylongarg, veryverylongarg, veryveryverylongarg, extremelylongarg)[0] +var b = shortfunc(c, d, e) diff --git a/_fixtures/indexexpr__exp.go b/_fixtures/indexexpr__exp.go index 883f25b..95cae23 100644 --- a/_fixtures/indexexpr__exp.go +++ b/_fixtures/indexexpr__exp.go @@ -8,3 +8,4 @@ var a = longlistfunc( veryveryverylongarg, extremelylongarg, )[0] +var b = shortfunc(c, d, e) From e4ea24fae45b4da6a9a82794cac3002f24aa162e Mon Sep 17 00:00:00 2001 From: Brendan Gimby Date: Wed, 15 May 2024 21:14:06 -0600 Subject: [PATCH 3/3] Actual negative tesT --- _fixtures/indexexpr.go | 2 +- _fixtures/indexexpr__exp.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/_fixtures/indexexpr.go b/_fixtures/indexexpr.go index f76a367..68b2f39 100644 --- a/_fixtures/indexexpr.go +++ b/_fixtures/indexexpr.go @@ -1,4 +1,4 @@ package fixtures var a = longlistfunc(bigarg, otherbigarg, verylongarg, veryverylongarg, veryveryverylongarg, extremelylongarg)[0] -var b = shortfunc(c, d, e) +var b = shortfunc(c, d, e)[1] diff --git a/_fixtures/indexexpr__exp.go b/_fixtures/indexexpr__exp.go index 95cae23..fb4f57b 100644 --- a/_fixtures/indexexpr__exp.go +++ b/_fixtures/indexexpr__exp.go @@ -8,4 +8,4 @@ var a = longlistfunc( veryveryverylongarg, extremelylongarg, )[0] -var b = shortfunc(c, d, e) +var b = shortfunc(c, d, e)[1]