Algorithm::DependencySolver::Operation - An operation representation
my $operation = Algorithm::DependencySolver::Operation->new( id => 2, depends => [qw(x)], affects => [qw(y)], prerequisites => , obj => $whatever );
An arbitrary object, which is never used by anything in the
An arrayref of other Operation objects, identified by their id strings.
If an operation
$b depends on operation <C$a>, then any cycle which would have resulted in
$b running before
$a will be broken just before operation
That is, if there exists a cycle containing both
$b, then edge
$e will be removed, where
$e is any edge within the cycle which points directly to
A string which uniquely identifies this operation
An arrayref of resources (each resource is simply a string identifier) that this operation depends on.
An arrayref of resources (each resource is simply a string identifier) that this operation affects (i.e., modifies).