How To Call It
Array is a global table: call its functions with a dot (Array.<method>(...)), not a colon.
Reduces the items to a single value.
Documented for app version 1.0.51Updated:
Array is a global table: call its functions with a dot (Array.<method>(...)), not a colon.
In data flow, chaining JSON, Regex, Str, Map, and File steps to normalize intermediate values reduces error risk.
Required: list, reducer. Optional: initial (omit to pass nil and use the runtime default). Returns a Lua value of whatever type was stored or read.
When combined with Str, JSON, Regex, Array, Map, and File, data transformation becomes much more readable in script flow.
The snippet below is a starter pattern that can be applied directly in runtime flow.
local result = Array.reduce({ 3, 1, 2 }, function(total, item) return total + item end)From foundation to combined usage, each level is provided as a separate code block so you can copy the level you need and adapt it directly.
local result = Array.reduce({ 3, 1, 2 }, function(total, item) return total + item end)local stepOk = true
local result = Array.reduce({ 3, 1, 2 }, function(total, item) return total + item end)
if stepOk then
wait(200)
endlocal ok, err = pcall(function()
local result = Array.reduce({ 3, 1, 2 }, function(total, item) return total + item end)
end)
if not ok then
print("API step failed: Array.reduce: " .. tostring(err))
requestStop()
end-- In data flow, chaining JSON, Regex, Str, Map, and File steps to normalize intermediate values reduces error risk.
local function run_reduce_step()
local result = Array.reduce({ 3, 1, 2 }, function(total, item) return total + item end)
end
local ok, err = pcall(run_reduce_step)
if not ok then
toast("Step failed")
print(err)
endlocal result = Array.reduce({ 3, 1, 2 }, function(total, item) return total + item end)
local raw = File.read("macro.log")
local normalized = Str.trim(raw)
print(normalized)