Platon Technologies
neprihlásený Prihlásiť Registrácia
SlovakEnglish
open source software development oslavujeme 10 rokov vývoja otvoreného softvéru! Utorok, 16. apríl 2024

Súbor: [Platon] / iotta / Iotta / Output / MkName.pm (stiahnutie)

Revízia 1.2, Sun Mar 30 11:33:55 2003 UTC (21 years ago) by yenar


Zmeny od 1.1: +5 -1 [lines]

add @STEM@ and @DIR@ as possible template parts [MkName.pm]

package Iotta::Output::MkName;
use strict;
require Iotta::Elem;
our @ISA = ("Iotta::Elem");

sub run {
    my $s = shift;
    my $meta = shift;
    my $data = shift;
    my $outp = $s->outp;
    my $inp = $s->inp;
    #print "using template ".$s->templ." for $outp\n";
    $$meta{$outp} = $s->templ;
    my $f = $$meta{$inp};
    my $dir = $f;
    $$meta{$outp} =~ s/\@INPUT\@/$f/g;
    $f =~ s#^.*/##;
    $dir =~ s#^(.*)/.*?#$1#;
    $$meta{$outp} =~ s/\@BASE\@/$f/g;
    $f =~ s#\..*?$##;
    $$meta{$outp} =~ s/\@STEM\@/$f/g;
    $$meta{$outp} =~ s/\@DIR\@/$dir/g;
    $s->next->run ($meta, $data) if ($s->next);
    return 0;
}

sub setup {
    my $s = shift;
    my $o = shift;
    $s->templ ($$o{template}) if $$o{template};
    $s->inp ($$o{"prop-in"}) if $$o{"prop-in"};
    $s->outp ($$o{"prop-out"}) if $$o{"prop-out"};
}

sub initialize {
    my $self = shift;
    $self->SUPER::initialize (@_);
    $self->{templ}='@INPUT@';
    $self->{inp}='input';
    $self->{outp}='output';
}

1;

Platon Group <platon@platon.sk> http://platon.sk/
Copyright © 2002-2006 Platon Group
Stránka používa redakčný systém Metafox
Na začiatok