package SubSwitch; use strict; use base 'Exporter'; our @EXPORT_OK = qw( switch case ); our $SubSwitch = undef; sub switch { my ($val, $func) = @_; local $SubSwitch = $val; $func->(); } sub case { my ($val, $func) = @_; if ($val ne $SubSwitch) { return; } $func->(); } 1;