From f91e38cc2da4758f42ca8ad14b4a9e0ba2b19c82 Mon Sep 17 00:00:00 2001 From: unwox Date: Wed, 9 Oct 2024 16:15:53 +0600 Subject: define utf lua module for utf-operations on strings --- main.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/main.go b/main.go index 3f75109..993c7bb 100644 --- a/main.go +++ b/main.go @@ -380,10 +380,35 @@ func main() { return 0 } + // define luna.utf module + utfModule := make(map[string]any) + utfModule["lower"] = func (l *Lua) int { + var str string + err := l.Scan(&str) + if err != nil { + // FIXME: handle. + return 0 + } + l.PushString(strings.ToLower(str)) + return 1 + } + utfModule["sub"] = func (l *Lua) int { + var str string + var start, length int + err := l.Scan(&str, &start, &length) + if err != nil { + // FIXME: handle. + return 0 + } + l.PushString(str[start-1:length]) + return 1 + } + module := make(map[string]any) module["router"] = routeModule module["http"] = httpModule module["db"] = dbModule + module["utf"] = utfModule wg := sync.WaitGroup{} wg.Add(*wrksNum) -- cgit v1.2.3