Skip to content

Add Lua scripting wrapper #641

@imperugo

Description

@imperugo

Summary

Add a typed wrapper for Lua script execution via SE.Redis `ScriptEvaluateAsync`.

Proposed API

```csharp
Task<T?> ScriptEvaluateAsync(string script, string[]? keys = null, RedisValue[]? values = null, CommandFlags flag = CommandFlags.None);
Task ScriptEvaluateAsync(string script, string[]? keys = null, RedisValue[]? values = null, CommandFlags flag = CommandFlags.None);
```

Considerations

  • The library already uses Lua internally (`HashGetAllAsyncAtOneTimeAsync`)
  • Consider a `LoadedLuaScript` pattern for pre-loaded scripts (SCRIPT LOAD + EVALSHA)
  • Consider read-only variant (`ScriptEvaluateReadOnlyAsync`) for replica routing

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions