types and deparsing and recalculation part working
[scpubgit/DX.git] / lib / DX / Role / SimpleAction.pm
CommitLineData
9d759b64 1package DX::Role::SimpleAction;
2
3use DX::Role;
4
3e465d5d 5with 'DX::Role::Action';
6
0498469a 7has target_path => (is => 'ro', required => 1);
9d759b64 8
0498469a 9has _updates => (is => 'lazy');
9d759b64 10
0498469a 11requires '_build__updates';
12
13sub dry_run {
9d759b64 14 my ($self, $hyp) = @_;
0498469a 15 my ($scope, @events) = $hyp->scope->apply_updates($self->_updates);
9d759b64 16 return (
17 $hyp->but(
18 scope => $scope,
19 actions => [ @{$hyp->actions}, $self ],
20 ),
21 @events
22 );
23}
24
25sub run { shift->updates }
26
271;