use 5.036; *unmask_secrets_to = eval { require Crypt::SecretBuffer; \&Crypt::SecretBuffer::unmask_secrets_to } || sub($cb, @args) { &$cb(@args) } ; sub private_fn { say "@_"; } sub my_api_function($user, $password, $secret) { unmask_secrets_to(\&private_fn, $user, $password, $secret); }