1 package DX::Value::Dict;
3 use DX::Utils qw(string);
6 with 'DX::Role::StructuredValue';
8 has '+action_builder' => (
10 can_set_value action_for_set_value
11 action_for_add_member action_for_remove_member
15 has members => (is => 'ro', required => 1);
19 $self->members->{ref($at) ? $at->string_value : $at};
23 my ($self, $at, $value) = @_;
27 (ref($at) ? $at->string_value : $at) => $value
32 sub without_member_at {
34 my %members = %{$self->members};
36 $self->but(members => \%members);