#include <node.hpp>
struct RawNodeOutput
{
// fields
Node \* node;
size_t index {0};
// construction
RawNodeOutput(const Output<Node>& value);
RawNodeOutput(Node \* node, size_t index);
RawNodeOutput(const RawNodeOutput&);
RawNodeOutput();
// methods
RawNodeOutput& operator = (const RawNodeOutput&);
operator Output< Node > ();
bool operator == (const RawNodeOutput& other) const;
bool operator != (const RawNodeOutput& other) const;
bool operator < (const RawNodeOutput& other) const;
bool operator > (const RawNodeOutput& other) const;
bool operator <= (const RawNodeOutput& other) const;
bool operator >= (const RawNodeOutput& other) const;
};