From 9595f7ef2085b5e390ec9178a6ad89731ebe5ac9 Mon Sep 17 00:00:00 2001 From: koki-develop Date: Wed, 6 Mar 2024 09:36:57 +0900 Subject: [PATCH] Add stringify function for IndexListExpr in mingo --- internal/mingo/expr.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/internal/mingo/expr.go b/internal/mingo/expr.go index ab6dd0a..6f49bc4 100644 --- a/internal/mingo/expr.go +++ b/internal/mingo/expr.go @@ -48,6 +48,8 @@ func stringifyExpr(expr ast.Expr) string { return stringifyStructType(x) case *ast.FuncType: return stringifyFuncType(x) + case *ast.IndexListExpr: + return stringifyIndexListExpr(x) case nil: return "" } @@ -55,6 +57,21 @@ func stringifyExpr(expr ast.Expr) string { return expr.(*ast.Ident).Name } +func stringifyIndexListExpr(expr *ast.IndexListExpr) string { + sb := new(strings.Builder) + + sb.WriteString("[") + for i, index := range expr.Indices { + if i > 0 { + sb.WriteString(",") + } + sb.WriteString(stringifyExpr(index)) + } + sb.WriteString("]") + + return sb.String() +} + func stringifySelectExpr(expr *ast.SelectorExpr) string { switch x := expr.X.(type) { case *ast.SelectorExpr: