Thread Bad name after... (52 answers)
Opened by bianca at 2015-02-19 12:08

bianca
 2015-02-21 23:10
#179819 #179819
User since
2009-09-13
6977 Artikel
BenutzerIn

user image
Ich bekomme die Idee nicht umgesetzt.

Ausgangslage ist dieses fehlerfreie Script basirend auf Linuxer's Idee:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/perl
use strict;
use warnings;

my @dispatchtab = (
    {
        moduldatei      => 'test_extern.pl',
        aufruf_neu      => 'testsub',
        unit            => 'unit1',
    },
    {
        moduldatei      => 'test_extern2.pl',
        aufruf_neu      => 'testsub',
        unit            => 'unit2',
    },
    # hier sind natürlich noch ganz viele
);
for my $ref ( @dispatchtab ) {
    eval <<"EVAL_CODE";
package $ref->{unit};
require "$ref->{moduldatei}";
$ref->{'aufruf_neu'}('a');
EVAL_CODE
    warn "ACHTUNG: '$@'\n" if $@;
}


Aber sobald ich versuche, das Ergebnis einer Variable zuzuordnen wie z.B. mit $back = $ref->{'aufruf_neu'}('a'); erhalte ich zig Fehlermeldungen. Ganz zu schweigen wenn ich versuche, nicht ein konstantes 'a' zu übergeben sondern eine Variable.

Wie muss man das schreiben innerhalb von eval?
10 print "Hallo"
20 goto 10

View full thread Bad name after...