#pragma once

#include "graph__tshell.h"

#include "graph/node__tshell.h"
#include "graph/edge__tshell.h"

#include <stdlib__tshell.h>

struct graph$$Graph {
    struct graph$node$$Node$$shell *nodes;
    struct graph$edge$$Edge$$shell *edges;
    int num_nodes;
    int num_edges;
};

struct graph$$Graph$$shell graph$$create_rand_graph(int num_nodes, int num_edges);

struct graph$node$$Node$$shell *graph$$grab_random_node(struct graph$$Graph$$shell *g);

int graph$$path_found(struct graph$node$$Node$$shell *first, struct graph$node$$Node$$shell *second);

int graph$$destroy_graph(struct graph$$Graph$$shell *g);
