GenAI.Graph.NodeProtocol.DefaultProvider (GenAI Core v0.2.0)

Default provider for GenAI.Graph.NodeProtocol. Uses function_exported? to invoke the passed module's implementation if any for calls.

Link to this section Summary

Functions

Apply/process a node. check/update fingerprint and add any appropriate directives to state.

Apply/process a node. check/update fingerprint and add any appropriate directives to state.

Apply/process a node. check/update fingerprint and add any appropriate directives to state.

Link to this section Functions

Link to this function

apply_node_directives(graph_node, graph_link, graph_container, session, context, options)

Apply/process a node. check/update fingerprint and add any appropriate directives to state.

Link to this function

build_handle_lookup(graph_node, options \\ nil)

Link to this function

build_node_lookup(graph_node, options \\ nil)

Link to this function

description(graph_node)

Link to this function

description(graph_node, default)

Link to this function

do_description(graph_node)

Link to this function

do_description(graph_node, default)

Link to this function

do_handle(graph_node)

Link to this function

do_handle(graph_node, default)

Link to this function

do_handle_record(graph_node)

Link to this function

do_id(graph_node)

Link to this function

do_inbound_links(graph_node, graph, options)

@spec do_inbound_links(
  GenAI.Types.Graph.graph_node(),
  GenAI.Types.Graph.graph(),
  map()
) ::
  {:ok, map()} | {:error, term()}
Link to this function

do_name(graph_node)

Link to this function

do_name(graph_node, default)

Link to this function

do_new(module, options)

@spec do_new(module(), any()) :: any()
Link to this function

do_node_type(graph_node)

Link to this function

do_outbound_links(graph_node, graph, options)

@spec do_outbound_links(
  GenAI.Types.Graph.graph_node(),
  GenAI.Types.Graph.graph(),
  map()
) ::
  {:ok, map()} | {:error, term()}
Link to this function

do_process_node(graph_node, graph_link, graph_container, session, context, options)

Link to this function

do_process_node_response(graph_node, graph_link, graph_container, session, context, options)

Link to this function

do_register_link(graph_node, graph, link, options)

Link to this function

do_with_id(graph_node)

Link to this function

do_with_id!(graph_node)

Link to this function

handle(graph_node)

Link to this function

handle(graph_node, default)

Link to this function

handle_record(graph_node)

Link to this function

inbound_links(graph_node, graph, options)

@spec inbound_links(GenAI.Types.Graph.graph_node(), GenAI.Types.Graph.graph(), map()) ::
  {:ok, map()} | {:error, term()}
Link to this function

inspect_custom_details(subject, opts)

Link to this function

inspect_full_detail(subject, opts)

Link to this function

inspect_high_detail(subject, opts)

Link to this function

inspect_low_detail(subject, opts)

Link to this function

inspect_medium_detail(subject, opts)

Link to this function

name(graph_node)

Link to this function

name(graph_node, default)

Link to this function

new(module, options)

@spec new(module(), any()) :: struct()
Link to this function

node(graph_node, id)

Link to this function

node_type(graph_node)

Link to this function

nodes(graph_node, options \\ nil)

Link to this function

outbound_links(graph_node, graph, options)

@spec outbound_links(GenAI.Types.Graph.graph_node(), GenAI.Types.Graph.graph(), map()) ::
  {:ok, map()} | {:error, term()}
Link to this function

process_node(graph_node, graph_link, graph_container, session, context, options)

Apply/process a node. check/update fingerprint and add any appropriate directives to state.

Link to this function

process_node_response(graph_node, graph_link, graph_container, session, context, options)

Apply/process a node. check/update fingerprint and add any appropriate directives to state.

Link to this function

register_link(graph_node, graph, link, options)

Link to this function

with_id(graph_node)