Graph query
StorageGraphs.get_prop
— Method.get_prop(g)
get_prop(g, v)
get_prop(g, e)
get_prop(g, s, d)
Return the specific property (data for vertices, ids for edges, max id for the graph) defined for graph g
, vertex v
, or edge e
(optionally referenced by source vertex s
and destination vertex d
). If property does not exist, return an empty collection.
StorageGraphs.has_prop
— Method.has_prop(g, v, prop)
has_prop(g, e, prop)
has_prop(g, s, d, prop)
Return true if the property prop
belongs to the specific property (data for vertices, ids for dges) for graph g
, vertex v
, or edge e
(optionally referenced by source vertex s
and destination vertex d
). For nodes this will check if prop
is a key of the node, while for edges it will check if prop
belongs to the id list.
StorageGraphs.set_prop!
— Method.set_prop!(g, val)
set_prop!(g, v, val)
set_prop!(g, e, val)
set_prop!(g, s, d, val)
Set (replace) the specific property (data for vertices, ids for edges, max id for the graph) with value val
in graph g
, vertex v
, or edge e
(optionally referenced by source vertex s
and destination vertex d
). Will return false if vertex or edge does not exist, true otherwise.
StorageGraphs.final_neighborhs
— Method.final_neighborhs(g, dep::Pair; dir=:out)
Return the vertex indices for the neighbors at the end of the dependency chain. Note: this assumes that the dependency chain is valid (all the nodes exist).
StorageGraphs.paths_through
— Method.paths_through(g, v::Integer; dir=:out)
Return a vector of the paths going through the given vertex. If dir
is specified, use the corresponding edge direction (:in
and :out
are acceptable values).
StorageGraphs.nextid
— Method.nextid(g, dep::Pair)
Find the next available id such that a dead end (a node with no outgoing paths) along the dependency chain (dep
) is continued. If there is no such case, it gives the maximum id (see walkdep
).
StorageGraphs.on_path
— Method.on_path(g, v, path)
Check if the vertex is on the given path.
StorageGraphs.walkdep
— Method.function walkdep(g, dep::Pair; stopcond=(g,v)->false)
Walk along the dependency chain, but only on already existing paths, and return the last node and the compatible paths.
StorageGraphs.walkpath
— Method.walkpath(g, paths, start; dir=:out, stopcond=(g,v)->false)
Walk on the given paths
starting from start
and return the last nodes. If dir
is specified, use the corresponding edge direction (:in
and :out
are acceptable values).