mirror of
https://github.com/BlackMATov/evolved.lua.git
synced 2025-12-15 04:15:28 +07:00
batch-multi-api declarations (not impl)
This commit is contained in:
@@ -73,6 +73,11 @@ batch_remove :: query, fragment... -> integer, boolean
|
|||||||
batch_clear :: query -> integer, boolean
|
batch_clear :: query -> integer, boolean
|
||||||
batch_destroy :: query -> integer, boolean
|
batch_destroy :: query -> integer, boolean
|
||||||
|
|
||||||
|
batch_multi_set :: query, fragment[], component[]? -> integer, boolean
|
||||||
|
batch_multi_assign :: query, fragment[], component[]? -> integer, boolean
|
||||||
|
batch_multi_insert :: query, fragment[], component[]? -> integer, boolean
|
||||||
|
batch_multi_remove :: query, fragment[] -> integer, boolean
|
||||||
|
|
||||||
chunk :: fragment... -> chunk?, entity[]?
|
chunk :: fragment... -> chunk?, entity[]?
|
||||||
select :: chunk, fragment... -> component[]...
|
select :: chunk, fragment... -> component[]...
|
||||||
|
|
||||||
|
|||||||
115
evolved.lua
115
evolved.lua
@@ -1573,8 +1573,13 @@ local __defer_op = {
|
|||||||
batch_clear = 15,
|
batch_clear = 15,
|
||||||
batch_destroy = 16,
|
batch_destroy = 16,
|
||||||
|
|
||||||
spawn_entity_at = 17,
|
batch_multi_set = 17,
|
||||||
spawn_entity_with = 18,
|
batch_multi_assign = 18,
|
||||||
|
batch_multi_insert = 19,
|
||||||
|
batch_multi_remove = 20,
|
||||||
|
|
||||||
|
spawn_entity_at = 21,
|
||||||
|
spawn_entity_with = 22,
|
||||||
}
|
}
|
||||||
|
|
||||||
---@type table<evolved.defer_op, fun(bytes: any[], index: integer): integer>
|
---@type table<evolved.defer_op, fun(bytes: any[], index: integer): integer>
|
||||||
@@ -1687,6 +1692,18 @@ local __defer_ops = {
|
|||||||
evolved.batch_destroy(query)
|
evolved.batch_destroy(query)
|
||||||
return 1
|
return 1
|
||||||
end,
|
end,
|
||||||
|
[__defer_op.batch_multi_set] = function(bytes, index)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end,
|
||||||
|
[__defer_op.batch_multi_assign] = function(bytes, index)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end,
|
||||||
|
[__defer_op.batch_multi_insert] = function(bytes, index)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end,
|
||||||
|
[__defer_op.batch_multi_remove] = function(bytes, index)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end,
|
||||||
[__defer_op.spawn_entity_at] = function(bytes, index)
|
[__defer_op.spawn_entity_at] = function(bytes, index)
|
||||||
local entity = bytes[index + 0]
|
local entity = bytes[index + 0]
|
||||||
local chunk = bytes[index + 1]
|
local chunk = bytes[index + 1]
|
||||||
@@ -2043,6 +2060,33 @@ local function __defer_batch_destroy(query)
|
|||||||
__defer_length = length + 2
|
__defer_length = length + 2
|
||||||
end
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@param components evolved.component[]
|
||||||
|
local function __defer_batch_multi_set(query, fragments, components)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@param components evolved.component[]
|
||||||
|
local function __defer_batch_multi_assign(query, fragments, components)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@param components evolved.component[]
|
||||||
|
local function __defer_batch_multi_insert(query, fragments, components)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
local function __defer_batch_multi_remove(query, fragments)
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
---@param entity evolved.entity
|
---@param entity evolved.entity
|
||||||
---@param chunk evolved.chunk
|
---@param chunk evolved.chunk
|
||||||
---@param fragments evolved.fragment[]
|
---@param fragments evolved.fragment[]
|
||||||
@@ -3480,6 +3524,73 @@ function evolved.batch_destroy(query)
|
|||||||
return destroyed_count, false
|
return destroyed_count, false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@param components? evolved.component[]
|
||||||
|
---@return integer set_count
|
||||||
|
---@return boolean is_deferred
|
||||||
|
function evolved.batch_multi_set(query, fragments, components)
|
||||||
|
if not components then
|
||||||
|
components = __EMPTY_COMPONENT_LIST
|
||||||
|
end
|
||||||
|
|
||||||
|
if __defer_depth > 0 then
|
||||||
|
__defer_batch_multi_set(query, fragments, components)
|
||||||
|
return 0, true
|
||||||
|
end
|
||||||
|
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@param components? evolved.component[]
|
||||||
|
---@return integer assigned_count
|
||||||
|
---@return boolean is_deferred
|
||||||
|
function evolved.batch_multi_assign(query, fragments, components)
|
||||||
|
if not components then
|
||||||
|
components = __EMPTY_COMPONENT_LIST
|
||||||
|
end
|
||||||
|
|
||||||
|
if __defer_depth > 0 then
|
||||||
|
__defer_batch_multi_assign(query, fragments, components)
|
||||||
|
return 0, true
|
||||||
|
end
|
||||||
|
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@param components? evolved.component[]
|
||||||
|
---@return integer inserted_count
|
||||||
|
---@return boolean is_deferred
|
||||||
|
function evolved.batch_multi_insert(query, fragments, components)
|
||||||
|
if not components then
|
||||||
|
components = __EMPTY_COMPONENT_LIST
|
||||||
|
end
|
||||||
|
|
||||||
|
if __defer_depth > 0 then
|
||||||
|
__defer_batch_multi_insert(query, fragments, components)
|
||||||
|
return 0, true
|
||||||
|
end
|
||||||
|
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param query evolved.query
|
||||||
|
---@param fragments evolved.fragment[]
|
||||||
|
---@return integer removed_count
|
||||||
|
---@return boolean is_deferred
|
||||||
|
function evolved.batch_multi_remove(query, fragments)
|
||||||
|
if __defer_depth > 0 then
|
||||||
|
__defer_batch_multi_remove(query, fragments)
|
||||||
|
return 0, true
|
||||||
|
end
|
||||||
|
|
||||||
|
error('not implemented yet', 2)
|
||||||
|
end
|
||||||
|
|
||||||
---
|
---
|
||||||
---
|
---
|
||||||
---
|
---
|
||||||
|
|||||||
Reference in New Issue
Block a user