Graph::AdjacencyMap(3p)

NAME
Graph::AdjacencyMap - map of graph vertices or edges

SYNOPSIS
    Internal.

DESCRIPTION
This module is meant for internal use by the Graph module.

OBJECT METHODS

  del_path(\@seq)
Delete a Map path.

  del_path_by_multi_id(\@seq, $id)
Delete a Map path by a multi(vertex) id.

  get_multi_ids(\@seq)
Return the multi ids.

  has_path(\@seq)
Returns the integer ID of the path, or undef if Map doesn't have it.

  has_any_paths
Return true if the Map has any paths, false if not.

  has_path_by_multi_id(\@seq, $id)
Return true if the Map has the path by a multi(vertex) id, false if not.

  paths
Return all the paths (left-hand sides) of the Map.

  ids
Return all the right-hand sides of the Map, unsorted.

  set_paths(\@seq1, \@seq2, ...)
    @ids = set_paths($seq1, $seq2, ...)

Create/identify the path of "$seq*". Returns the integer ID of each path. For arity other than 1, the sequence items must be integers. For arity 1, do not wrap the item in an array. For "_UNORD", you must give the sequence already sorted.

  set_path_by_multi_id(\@seq, $id)
    ($integer_ID, $multi_ID) = $m->set_path_by_multi_id(\@seq, $id)

Set the path in the Map by the multi id.

  get_paths_by_ids([ \@idlist1, \@idlist2... ], $deep)
Given an array-ref of array-refs of vertex IDs, returns a list of array-refs of vertex-names. This is to look up vertex paths for use in edges. Only useful for arity 1. The $deep option is useful with directed hyperedges.

  get_ids_by_paths
    @ids = $m->get_ids_by_paths([ \@seq1, \@seq2... ], $ensure, 0);
    @id_lists = $m->get_ids_by_paths([ \@seq1, \@seq2... ], $ensure, 1);

This is to look up vertex IDs for use in edges. Only useful for arity 1. Given an array-ref of array-refs with paths, returns a list of IDs of existing paths.

If $ensure is true, will first create paths that do not already exist. If it is not, any non-existing paths will cause an empty list to be returned.

If $deep is true, each sequence will be treated as a list of paths, and IDs filled in for the return values. This can have a value up to 2.

  rename_path($from, $to)
Rename the path.

  stringify
Return a string describing the object in a human-friendly(ish) way.

  successors
    @successors = $m->successors(@v)

Only valid for a map of arity other than 1.

  predecessors
    @predecessors = $m->predecessors($v)

Only valid for a non-"_UNORD" map of arity other than 1.

  paths_from
    @paths = $m->paths_from(@v)

Only valid for a map of arity other than 1.

  paths_to
    @paths = $m->paths_to($v)

Only valid for a non-"_UNORD" map of arity other than 1.

  has_successor
    $bool = $m->has_successor($u, $v)

Only valid for a map of arity other than 1.

  reindex
Will recreate the mapping from paths to indexes. Intended for use after a deep copy.

AUTHOR AND COPYRIGHT
Jarkko Hietaniemi jhi@iki.fi

LICENSE
This module is licensed under the same terms as Perl itself.