X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=apps%2Firssi%2Fsrc%2Fperl%2Firssi-core.pl;fp=apps%2Firssi%2Fsrc%2Fperl%2Firssi-core.pl;h=0000000000000000000000000000000000000000;hb=72c2de619079457f7a68100eb13385275a424a23;hp=11aa0f6f50275cf51ec50629c6927dacb8ae7a80;hpb=e7b6c157b80152bf9fb9266e6bdd93f9fb0db776;p=runtime.git diff --git a/apps/irssi/src/perl/irssi-core.pl b/apps/irssi/src/perl/irssi-core.pl deleted file mode 100644 index 11aa0f6f..00000000 --- a/apps/irssi/src/perl/irssi-core.pl +++ /dev/null @@ -1,50 +0,0 @@ -# NOTE: this is printed through printf()-like function, -# so no extra percent characters. - -# %%d : must be first - 1 if perl libraries are to be linked -# statically with irssi binary, 0 if not -# %%s : must be second - use Irssi; use Irssi::Irc; etc.. -package Irssi::Core; - -use Symbol; - -sub is_static { - return %d; -} - -sub destroy { - eval { $_[0]->UNLOAD() if $_[0]->can('UNLOAD'); }; - Symbol::delete_package($_[0]); -} - -sub eval_data { - my ($data, $id) = @_; - destroy("Irssi::Script::$id"); - - my $package = "Irssi::Script::$id"; - my $eval = qq{package $package; %s sub handler { $data; }}; - { - # hide our variables within this block - my ($filename, $package, $data); - eval $eval; - } - die $@ if $@; - - my $ret; - eval { $ret = $package->handler; }; - die $@ if $@; - return $ret; -} - -sub eval_file { - my ($filename, $id) = @_; - - local *FH; - open FH, $filename or die "File not found: $filename"; - local($/) = undef; - my $data = ; - close FH; - local($/) = "\n"; - - eval_data($data, $id); -}