bratwurst: Funktionen in einem hash

Hi,

siehe Thema. Deklarationsbeispiel:

die in untenstehenden hash %tasks definierten Funktionen brauchen lediglich zwei Angaben:

den Namen der Tabelle und die Spalte, die als primary Key festgelegt ist.

#===== dumping table blog =====================================#
$tasks{blog} = sub{
 my $table = 'blog'; # hmm, steht doch schon weiter oben
 my $key   = 'ts';

commonDump($table, $key);
 return;
};

Zwei Angaben - das ist eindeutig zuviel ;-)
Wie kann ich mit PERL in den hash greifen um rauszukriegen, wie die Tabelle heißt?

--roro

  1. Hey,
    du hast da ja ein absonderliches Konstrukt, keine Daten, sondern Code. Normalerweise kommt man an solche Innereien ja nicht heran, aber Perl wäre nicht Perl, wenn nicht doch ginge. Du möchtest peek_sub aus dem Modul PadWalker. http://search.cpan.org/dist/PadWalker

    Das Problem ist nur, dass die inneren lexikalischen Variablen noch nicht existieren, wenn du peek_sub vor der anonymen Sub aufrufst, und dass sie ihre Gültigkeit verloren haben, wenn du peek_sub nach Ablauf der Sub aufrufst.

    --
    水-金-地-火-木-土-天-海-冥
    1. 你好 迪拉斯,

      du hast da ja ein absonderliches Konstrukt, keine Daten, sondern Code. Normalerweise kommt man an solche Innereien ja nicht heran, aber Perl wäre nicht Perl, wenn nicht doch ginge. Du möchtest peek_sub aus dem Modul PadWalker. http://search.cpan.org/dist/PadWalker

      Ich glaube, bratwurst will das umgekehrt: er will an den Hashkey ran, in dem die Funktion gespeichert ist.

      Ich würde das ganz einfach mit einem Parameter lösen: der Key wird als Parameter übergeben.

      再见,
       克里斯蒂安

      --
      Einfallsreichster Spam ever | Safari-Erweiterungen mit Creammonkey
      Keine Schneeflocke faellt je auf die falsche Stelle.
      http://wwwtech.de/
      1. hi Christian,

        Ich würde das ganz einfach mit einem Parameter lösen: der Key wird als Parameter übergeben.

        ja, der Parameter machts, ich Depp, hatte mal wieder so einen Furz in der Platte...

        Danke Christian!

        Grüße an alle,

        --roro