use DX::Step::Backtrack;
use DX::Step::ResolveProposition;
-use DX::Utils qw(expand_deps);
+use DX::Utils qw(compact_deps);
use DX::Class;
has proposition => (is => 'ro', isa => Proposition);
map [ statement => [
[ symbol => (split '::', ${$_->[0]})[-1] ],
[ value_path => [ @{$_}[1..$#$_] ] ],
- ] ], @{expand_deps($self->geometry_depends_on)}
+ ] ], @{$self->geometry_depends_on}
] ] ],
(@{$self->aperture}
? [ aperture => [ block => [
return "DX::Step::${step_type}"->new(resolution_space => $self);
}
+sub with_geometry_dependencies {
+ my ($self, $deps) = @_;
+ my $new_deps = compact_deps([ @{$self->geometry_depends_on}, @$deps ]);
+ return $self->but(geometry_depends_on => $new_deps);
+}
+
1;