use DX::Role;
sub resolution_step_for {
- my ($self, @args) = @_;
+ my ($self, $prop, @args) = @_;
my ($last, @rest) = reverse $self->_possible_resolution_list(@args);
return undef unless $last;
- my $targ = $last;
- $targ = $_->but_with_alternative_step($targ) for @rest;
+ my $targ = $last->but(resolves => $prop);
+ $targ = $_->but(
+ alternative_step => $targ,
+ resolves => $prop
+ ) for @rest;
return $targ;
}