X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDX%2FStep%2FResolveProposition.pm;h=cc38d4b2a2a9ecfbbb40b97172a9d1ef24935f40;hb=161534ffafd09ed5f1135e28414f345f88b26d6f;hp=acd38d5fa66ba945a68111fd8bf3ea4039014cf9;hpb=0630503012d83a86a3d01e96f4d1be0d8791fc4b;p=scpubgit%2FDX.git diff --git a/lib/DX/Step/ResolveProposition.pm b/lib/DX/Step/ResolveProposition.pm index acd38d5..cc38d4b 100644 --- a/lib/DX/Step/ResolveProposition.pm +++ b/lib/DX/Step/ResolveProposition.pm @@ -71,20 +71,13 @@ sub apply_to { @{$old_ss->decisions_taken} ], ); - my $new_ss = $self->_apply_to_ss($ss); - return $ss->but(next_step => DX::Step::Backtrack->new) unless $new_ss; - return $new_ss; -} - -sub _apply_to_ss { - my ($self, $old_ss) = @_; my $old_hyp = $old_ss->current_hypothesis; (my $hyp, my @recheck) = $old_hyp->with_resolution( $self->resolves, $self->depends_on, $self->actions ); - return undef unless $hyp; + return $ss->but(next_step => DX::Step::Backtrack->new) unless $hyp; return $self->_recheck_for( - $old_ss->but(current_hypothesis => $hyp), + $ss->but(current_hypothesis => $hyp), @recheck ); }