24namespace shamrock::solvergraph {
47 std::function<void(Tedge &)> set_edge;
55 NodeSetEdge(std::function<
void(Tedge &)> set_edge) : set_edge(
std::move(set_edge)) {}
66 inline void set_edges(std::shared_ptr<IEdge> to_set) {
79 set_edge(get_rw_edge<Tedge>(0));
98 std::string tex = R
"tex(
Inode is node between data edges, takes multiple inputs, multiple outputs.
void __internal_set_rw_edges(std::vector< std::shared_ptr< IEdge > > new_rw_edges)
Set the read write edges.
IEdge & get_rw_edge_base(int slot)
Get a reference to a read write edge and cast it to the type IEdge.
void __internal_set_ro_edges(std::vector< std::shared_ptr< IEdge > > new_ro_edges)
Set the read only edges.
A node that applies a custom function to modify connected edges.
virtual std::string _impl_get_label() const
Get the label of the node.
void set_edges(std::shared_ptr< IEdge > to_set)
Set the edges of the node.
virtual std::string _impl_get_tex() const
Get the TeX representation of the node.
void _impl_evaluate_internal()
Evaluate the node.
NodeSetEdge(std::function< void(Tedge &)> set_edge)
Construct a new NodeSetEdge object.
void replace_all(std::string &inout, std::string_view what, std::string_view with)
replace all occurence of a search string with another
This file contains the definition for the stacktrace related functionality.
#define __shamrock_stack_entry()
Macro to create a stack entry.