The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
use strict;
use warnings;
use Test::More 'no_plan';

sub action (&) { return shift; }

sub handle_action {
  return (undef, undef, 'my ($self, $c) = (shift, shift);');
}

use Devel::Declare;
use Devel::Declare action => [ DECLARE_NONE, \&handle_action ];

my $args;

my $a = action {
  $args = join(', ', $self, $c);
};

$a->("SELF", "CONTEXT");

is($args, "SELF, CONTEXT", "args passed ok");