pub fn derive_all_facts(
db_state: state.DbState,
rules: List(ast.Rule),
as_of_tx: option.Option(Int),
as_of_valid: option.Option(Int),
solve_clause_with_derived: fn(
state.DbState,
ast.BodyClause,
dict.Dict(String, fact.Value),
set.Set(fact.Datom),
option.Option(Int),
option.Option(Int),
) -> #(
List(dict.Dict(String, fact.Value)),
option.Option(dict.Dict(String, List(internal.StorageChunk))),
),
resolve_part_optional: fn(
ast.Part,
dict.Dict(String, fact.Value),
) -> option.Option(fact.Value),
) -> set.Set(fact.Datom)