Name

dispatch —

ATTRIBUTES

Attribute Pos. Req. Default Description

DESCRIPTION

BEHAVIOR

This tag does not appear to be affected by, or affect, the rest of Interchange.

EXAMPLES

No examples are available at this time. We do consider this a problem and will try to supply some.

NOTES

AVAILABILITY

dispatch is available in Interchange versions:

4.6.0-5.9.0 (git-head)

SOURCE

Interchange 5.9.0:

Source: lib/Vend/Interpolate.pm
Lines: 3999

sub tag_dispatch {
my($tag, $count, $item, $hash, $chunk) = @_;
$tag = lc $tag;
$tag =~ tr/-/_/;
my $full = lc "$Orig_prefix-tag-$tag";
$full =~ tr/-/_/;
#::logDebug("tag_dispatch: tag=$tag count=$count chunk=$chunk");
my $attrseq = [];
my $attrhash = {};
my $eaten;
my $this_tag;

$eaten = Vend::Parse::_find_tag(\$chunk, $attrhash, $attrseq);
substr($chunk, 0, 1) = '';

$this_tag = Vend::Parse::find_matching_end($full, \$chunk);

$attrhash->{prefix} = $tag unless $attrhash->{prefix};

my $out;
if(defined $Dispatch_hash{$tag}) {
  $out = $Dispatch_hash{$tag}->($count, $item, $hash, $attrhash, $this_tag);
}
else {
  $attrhash->{body} = $this_tag unless defined $attrhash->{body};
#::logDebug("calling tag tag=$tag this_tag=$this_tag attrhash=" . uneval($attrhash));
  $Tag ||= new Vend::Tags;
  $out = $Tag->$tag($attrhash);
}
return $out . $chunk;
}

AUTHORS

Interchange Development Group

SEE ALSO

DocBook! Interchange!