From f6a75e14ae83d320264c592e434358e0492f801e Mon Sep 17 00:00:00 2001 From: Kyle Xiao Date: Fri, 10 Jan 2025 13:43:24 +0800 Subject: [PATCH] runtime(go): minimum requirement go1.18 golang.org/x/exp, which requires newer go version, is too heavy for previous implementation Signed-off-by: Kyle Xiao --- runtime/Go/antlr/v4/go.mod | 4 +--- runtime/Go/antlr/v4/go.sum | 4 ---- runtime/Go/antlr/v4/lexer_action_executor.go | 11 ++++++----- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/runtime/Go/antlr/v4/go.mod b/runtime/Go/antlr/v4/go.mod index cc695e09ba..c0a8196b4b 100644 --- a/runtime/Go/antlr/v4/go.mod +++ b/runtime/Go/antlr/v4/go.mod @@ -1,5 +1,3 @@ module github.com/antlr4-go/antlr/v4 -go 1.20 - -require golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc +go 1.18 diff --git a/runtime/Go/antlr/v4/go.sum b/runtime/Go/antlr/v4/go.sum index 5bdfc81b53..e69de29bb2 100644 --- a/runtime/Go/antlr/v4/go.sum +++ b/runtime/Go/antlr/v4/go.sum @@ -1,4 +0,0 @@ -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e/go.mod h1:Kr81I6Kryrl9sr8s2FK3vxD90NdsKWRuOIl2O4CvYbA= -golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc h1:mCRnTeVUjcrhlRmO0VK8a6k6Rrf6TF9htwo2pJVSjIU= -golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc/go.mod h1:V1LtkGg67GoY2N1AnLN78QLrzxkLyJw7RJb1gzOOz9w= diff --git a/runtime/Go/antlr/v4/lexer_action_executor.go b/runtime/Go/antlr/v4/lexer_action_executor.go index dfc28c32b3..76f943feb3 100644 --- a/runtime/Go/antlr/v4/lexer_action_executor.go +++ b/runtime/Go/antlr/v4/lexer_action_executor.go @@ -4,8 +4,6 @@ package antlr -import "golang.org/x/exp/slices" - // Represents an executor for a sequence of lexer actions which traversed during // the Matching operation of a lexer rule (token). // @@ -167,7 +165,10 @@ func (l *LexerActionExecutor) Equals(other interface{}) bool { if len(l.lexerActions) != len(othert.lexerActions) { return false } - return slices.EqualFunc(l.lexerActions, othert.lexerActions, func(i, j LexerAction) bool { - return i.Equals(j) - }) + for i, v := range l.lexerActions { + if !v.Equals(othert.lexerActions[i]) { + return false + } + } + return true }