eliminate variable name requirement from query()
[scpubgit/DKit.git] / lib / DX / Op / Materialize.pm
index ee17e55..b9814fd 100644 (file)
@@ -4,15 +4,13 @@ use Moo;
 
 with 'DX::Role::Op';
 
-has var_name => (is => 'ro', required => 1);
-
 sub run {
   my ($self, $state) = @_;
-  my $var = $state->scope_var($self->var_name);
-  unless ($var->is_bound) {
-    die "Can't materialize unbound ".$self->var_name;
+  foreach my $k (keys %{$state->scope}) {
+    my $var = $state->scope_var($k);
+    next unless $var->is_bound;
+    $state->resolve_value($var);
   }
-  $state->resolve_value($var);
   $state->then($self->next);
 }