From: Matt S Trout Date: Sat, 25 Jun 2016 17:48:57 +0000 (+0000) Subject: tighten up SearchState new() signature slightly X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=cb3a1c0ca4d4a42094314a33a51dda98205dc50b;p=scpubgit%2FDX.git tighten up SearchState new() signature slightly --- diff --git a/lib/DX/SearchState.pm b/lib/DX/SearchState.pm index 0702168..4966512 100644 --- a/lib/DX/SearchState.pm +++ b/lib/DX/SearchState.pm @@ -8,7 +8,7 @@ use DX::Class; has current_hypothesis => (is => 'ro', isa => Hypothesis, required => 1); -has next_step => (is => 'ro', isa => Maybe[Step]); +has next_step => (is => 'ro', isa => Maybe[Step], required => 1); has propositions => (is => 'ro', isa => PropositionSequence, required => 1); @@ -16,9 +16,9 @@ has alternatives => (is => 'ro', isa => AlternativeList, required => 1); has is_solution_state => (is => 'ro', required => 1); -has on_exhaustion_step => (is => 'ro', required => 1); +has on_exhaustion_step => (is => 'ro', isa => Maybe[Step], required => 1); -has on_solution_step => (is => 'ro', required => 1); +has on_solution_step => (is => 'ro', isa => Maybe[Step], required => 1); sub next_proposition { my ($self, $hyp) = @_; @@ -41,7 +41,7 @@ sub new_for { ), is_solution_state => 0, ) - : ( is_solution_state => 1 ) + : ( next_step => undef, is_solution_state => 1 ) ), on_exhaustion_step => undef, on_solution_step => DX::Step::MarkAsSolution->new,