5#include "testing/testing.h"
61 : side_effect_nodes_(side_effect_nodes)
66 const Context & )
const override
68 return side_effect_nodes_;
77 add_fn,
nullptr,
nullptr, std::make_tuple(30, 5), std::make_tuple(&
result));
101 const int value_10 = 10;
102 const int value_100 = 100;
110 GraphExecutor executor_fn{graph, {&graph_input}, {},
nullptr, &side_effect_provider,
nullptr};
112 executor_fn,
nullptr,
nullptr, std::make_tuple(5), std::make_tuple());
150 const int input_index = output_index;
173 GraphExecutor executor_fn{graph, {&input_socket}, {&output_socket},
nullptr,
nullptr,
nullptr};
176 executor_fn,
nullptr,
nullptr, std::make_tuple(10), std::make_tuple(&
result));
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
void BLI_task_scheduler_init(void)
static const CPPType & get()
GraphExecutorSideEffectProvider SideEffectProvider
void update_node_indices()
FunctionNode & add_function(const LazyFunction &fn)
void add_link(OutputSocket &from, InputSocket &to)
GraphOutputSocket & add_output(const CPPType &type, std::string name="")
GraphInputSocket & add_input(const CPPType &type, std::string name="")
Vector< Output > outputs_
bool allow_missing_requested_inputs_
const InputSocket & input(int index) const
const OutputSocket & output(int index) const
void set_output(int index, T &&value)
void * try_get_input_data_ptr_or_request(int index)
void * try_get_input_data_ptr(int index) const
T & get_input(int index) const
bool output_was_set(int index) const
void execute_impl(Params ¶ms, const Context &) const override
void execute_impl(Params ¶ms, const Context &) const override
void possible_output_dependencies(const int output_index, FunctionRef< void(Span< int >)> fn) const override
PartialEvaluationTestFunction()
SimpleSideEffectProvider(Span< const FunctionNode * > side_effect_nodes)
Vector< const FunctionNode * > get_nodes_with_side_effects(const Context &) const override
StoreValueFunction(int *dst1, int *dst2)
void execute_impl(Params ¶ms, const Context &) const override
TEST(lazy_function, SimpleAdd)
InputSocket GraphOutputSocket
OutputSocket GraphInputSocket
void execute_lazy_function_eagerly(const LazyFunction &fn, UserData *user_data, LocalUserData *local_user_data, std::tuple< Inputs... > inputs, std::tuple< Outputs *... > outputs)