Copy a range with table.move and read one copied value.

Move Value

move_value.lua
local pick = 
local value = table.move({"red", "green", "blue"}, 1, 3, 1, {})[pick]
print("pick=" .. pick)
print("value=" .. value)
local pick = 
local value = table.move({"red", "green", "blue"}, 1, 3, 1, {})[pick]
print("pick=" .. pick)
print("value=" .. value)
local pick = 
local value = table.move({"red", "green", "blue"}, 1, 3, 1, {})[pick]
print("pick=" .. pick)
print("value=" .. value)
copied range `table.move` returns the destination table; this example immediately reads one copied value so the visible trace stays scalar.