📄 attribute.pm
字号:
# $Id: Attribute.pm 4532 2004-05-11 05:15:40Z ezra $package XML::XPath::Node::Attribute;use strict;use vars qw/@ISA/;@ISA = ('XML::XPath::Node');package XML::XPath::Node::AttributeImpl;use vars qw/@ISA/;@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Attribute');use XML::XPath::Node ':node_keys';sub new { my $class = shift; my ($key, $val, $prefix) = @_; my $pos = XML::XPath::Node->nextPos; my @vals; @vals[node_global_pos, node_prefix, node_key, node_value] = ($pos, $prefix, $key, $val); my $self = \@vals; bless $self, $class; }sub getNodeType { ATTRIBUTE_NODE }sub isAttributeNode { 1; }sub getName { my $self = shift; $self->[node_key];}sub getLocalName { my $self = shift; my $local = $self->[node_key]; $local =~ s/.*://; return $local;}sub getNodeValue { my $self = shift; $self->[node_value];}sub getData { shift->getNodeValue(@_);}sub setNodeValue { my $self = shift; $self->[node_value] = shift;}sub getPrefix { my $self = shift; $self->[node_prefix];}sub string_value { my $self = shift; return $self->[node_value];}sub toString { my $self = shift; my $string = ' ';# if ($self->[node_prefix]) {# $string .= $self->[node_prefix] . ':';# } $string .= join('', $self->[node_key], '="', XML::XPath::Node::XMLescape($self->[node_value], '"&><'), '"'); return $string;}sub getNamespace { my $self = shift; my ($prefix) = @_; $prefix ||= $self->getPrefix; if (my $parent = $self->getParentNode) { return $parent->getNamespace($prefix); }}1;__END__=head1 NAMEAttribute - a single attribute=head1 API=head2 new ( key, value, prefix )Create a new attribute node.=head2 getNameReturns the key for the attribute=head2 getLocalNameAs getName above, but without namespace information=head2 getNodeValue / getDataReturns the value=head2 setNodeValueSets the value of the attribute node.=head2 getPrefixReturns the prefix=head2 getNamespaceReturn the namespace.=head2 toStringGenerates key="value", encoded correctly.=cut
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -