use DX::Utils qw(step INDICES_OF EXISTENCE_OF CONTENTS_OF string);
use DX::ActionBuilder::ProxySetToAdd;
+use DX::ActionBuilder::Null;
use DX::Class;
with 'DX::Role::Predicate';
}
: ()
),
- ($key->can_set_value
+ (!$key->is_set
+ && $key->action_builder->isa('DX::ActionBuilder::UnsetValue')
? map {
- my $set_key = $key->action_for_set_value(string(my $kstr = $_));
+ my $set_key = DX::Action::SetValue->new(
+ target_path => $key->action_builder->target_path,
+ new_value => DX::ActionBuilder::Null->new(
+ target_path => $key->action_builder->target_path,
+ )->apply_to_value(string(my $kstr = $_))
+ );
map $_->but_first($set_key)
->but_with_dependencies_on(
[ undef ,=>