24namespace shamrock::solvergraph {
37 IEdge(
const IEdge &) =
delete;
42 IEdge(IEdge &&) noexcept = default;
43 IEdge &operator=(IEdge &&) noexcept = default;
45 inline std::
string get_label()
const {
return _impl_get_dot_label(); }
46 inline std::string get_tex_symbol()
const {
return _impl_get_tex_symbol(); }
48 virtual std::string _impl_get_dot_label()
const = 0;
49 virtual std::string _impl_get_tex_symbol()
const = 0;
Callback API to track the lifetime, state updates and operations of solvergraph objects.
std::uint64_t u64
64 bit unsigned integer
u64 get_uuid() const
Get the UUID of the edge.
IEdge(IEdge &&) noexcept=default
would duplicate the uuid
IEdge & operator=(const IEdge &)=delete
would duplicate the uuid
Interface for data edges that can free their allocated memory.
Inode is node between data edges, takes multiple inputs, multiple outputs.
Tracks the lifetime of an object of type T and notifies observers through static callbacks.