pervasive type constraints
[scpubgit/DX.git] / lib / DX / ActionBuilder / BoundValue.pm
index 7c06e1c..db3cf22 100644 (file)
@@ -7,13 +7,15 @@ use DX::Class;
 
 with 'DX::Role::ActionBuilder';
 
-has target_path => (is => 'ro', required => 1);
+has target_path => (is => 'ro', required => 1, isa => ValuePath);
 
-has rebind_path => (is => 'ro', required => 1);
+has rebind_path => (is => 'ro', required => 1, isa => ValuePath);
 
-has bound_to_path => (is => 'ro', required => 1);
+has bound_to_path => (is => 'ro', required => 1, isa => ValuePath);
 
-has inner_action_builder => (is => 'ro', required => 1);
+has inner_action_builder => (
+  is => 'ro', required => 1, isa => ActionBuilder
+);
 
 sub can_set_value { shift->inner_action_builder->can_set_value }