5#include <unordered_map>
12 std::unordered_map<std::uintptr_t, std::string>
names;
21 const std::vector<array>& outputs);
23inline void print_graph(std::ostream& os,
const std::vector<array>& outputs) {
28inline void print_graph(std::ostream& os, Arrays&&... outputs) {
30 os,
NodeNamer{}, std::vector<array>{std::forward<Arrays>(outputs)...});
39 std::vector<array>{std::forward<Arrays>(outputs)...});
45 const std::vector<array>& outputs);
47inline void export_to_dot(std::ostream& os,
const std::vector<array>& outputs) {
54 os,
NodeNamer{}, std::vector<array>{std::forward<Arrays>(outputs)...});
63 std::vector<array>{std::forward<Arrays>(outputs)...});
void export_to_dot(std::ostream &os, NodeNamer namer, const std::vector< array > &outputs)
void print_graph(std::ostream &os, NodeNamer namer, const std::vector< array > &outputs)
typename std::enable_if_t< is_arrays_v< T... > > enable_for_arrays_t
Definition array.h:630
Definition graph_utils.h:11
const std::string & get_name(const array &x)
std::unordered_map< std::uintptr_t, std::string > names
Definition graph_utils.h:12
void set_name(const array &x, std::string n)