/usr/local/CPAN/XML-XPathScript/XML/XPathScript/Processor/B.pm
use strict;
use warnings;
package XML::XPathScript::Processor::B;
use base qw/ XML::XPathScript::Processor /;
our $VERSION = '1.54';
# No namespaces here
sub get_namespace { }
sub get_child_nodes { $_[1]->get_children }
sub findnodes {
my ( $self, $xpath, $context ) = @_;
$context ||= $self->{dom};
return $context->match( $xpath );
}
sub to_string {
my ( $self, $node ) = @_;
my $string = $self->start_tag( $node );
$string .= $self->to_string( $_ ) for $node->get_children;
$string .= $self->end_tag( $node );
return $string;
}
sub get_node_name { $_[1]->get_name }
sub get_attributes {
if ( $_[1]->can( 'get_attr_names' ) ) {
return map { ( [ $_ => $_[1]->get_attr_value( $_ ) ] )
x !! defined $_[1]->get_attr_value( $_ ) }
$_[1]->get_attr_names ;
}
return;
}
sub get_attribute { " $_[1][0]='$_[1][1]' " }
# it's all element nodes
sub is_element_node { 1 }
sub is_nodelist { 0 }
sub is_text_node { 0 }
sub is_comment_node { 0 }
sub is_pi_node { 0 }
1;