Commit | Line | Data |
---|---|---|
55131db4 | 1 | package DX::Step::Backtrack; |
2 | ||
3 | use DX::Class; | |
4 | ||
5 | with 'DX::Role::Step'; | |
6 | ||
7 | sub apply_to { | |
8 | my ($self, $ss) = @_; | |
df377b33 | 9 | my ($first_alt, @rest_alt) = @{$ss->adjustments_made}; |
6a0483ff | 10 | return $ss->but(next_step => $ss->on_exhaustion_step) unless $first_alt; |
a3ff9ce3 | 11 | return $first_alt->[1]->but(next_step => $first_alt->[0]->alternative_step); |
55131db4 | 12 | } |
13 | ||
14 | 1; |