Advertisement
Guest User

Untitled

a guest
Jan 17th, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 0.35 KB | None | 0 0
  1. package MyAwesomeDSL;
  2.  
  3. use Sub::Info;
  4.  
  5. sub define_blabla {
  6.   ...
  7. }
  8.  
  9. sub define_something (&;) {
  10.   my ($coderef) = @_;
  11.  
  12.   my $info = sub_info($coderef);
  13.  
  14.   local *{$info->{package} . '::define_blabla' } = \&define_blabla;
  15.  
  16.   $coderef->();
  17.  
  18. }
  19.  
  20. package main;
  21.  
  22.  
  23. use MyAwesomeDSL;
  24.  
  25.  
  26. define_something {
  27.   define_blabla(...);
  28. };
  29.  
  30. 1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement