X7ROOT File Manager
Current Path:
/usr/share/perl5/URI
usr
/
share
/
perl5
/
URI
/
📁
..
📄
Escape.pm
(6.49 KB)
📄
Heuristic.pm
(6.41 KB)
📄
IRI.pm
(769 B)
📄
QueryParam.pm
(4.47 KB)
📄
Split.pm
(2.3 KB)
📄
URL.pm
(5.4 KB)
📄
WithBase.pm
(3.74 KB)
📄
_foreign.pm
(75 B)
📄
_generic.pm
(5.63 KB)
📄
_idna.pm
(1.99 KB)
📄
_ldap.pm
(3.17 KB)
📄
_login.pm
(222 B)
📄
_punycode.pm
(4.52 KB)
📄
_query.pm
(2.39 KB)
📄
_segment.pm
(377 B)
📄
_server.pm
(3.62 KB)
📄
_userpass.pm
(977 B)
📄
data.pm
(3.28 KB)
📁
file
📄
file.pm
(9.58 KB)
📄
ftp.pm
(1.03 KB)
📄
gopher.pm
(2.34 KB)
📄
http.pm
(405 B)
📄
https.pm
(107 B)
📄
ldap.pm
(2.9 KB)
📄
ldapi.pm
(460 B)
📄
ldaps.pm
(107 B)
📄
mailto.pm
(1.24 KB)
📄
mms.pm
(89 B)
📄
news.pm
(1.39 KB)
📄
nntp.pm
(91 B)
📄
pop.pm
(1.15 KB)
📄
rlogin.pm
(96 B)
📄
rsync.pm
(197 B)
📄
rtsp.pm
(89 B)
📄
rtspu.pm
(90 B)
📄
sip.pm
(1.72 KB)
📄
sips.pm
(105 B)
📄
snews.pm
(136 B)
📄
ssh.pm
(140 B)
📄
telnet.pm
(95 B)
📄
tn3270.pm
(95 B)
📁
urn
📄
urn.pm
(1.91 KB)
Editing: urn.pm
package URI::urn; # RFC 2141 require URI; @ISA=qw(URI); use strict; use Carp qw(carp); use vars qw(%implementor); sub _init { my $class = shift; my $self = $class->SUPER::_init(@_); my $nid = $self->nid; my $impclass = $implementor{$nid}; return $impclass->_urn_init($self, $nid) if $impclass; $impclass = "URI::urn"; if ($nid =~ /^[A-Za-z\d][A-Za-z\d\-]*\z/) { my $id = $nid; # make it a legal perl identifier $id =~ s/-/_/g; $id = "_$id" if $id =~ /^\d/; $impclass = "URI::urn::$id"; no strict 'refs'; unless (@{"${impclass}::ISA"}) { # Try to load it eval "require $impclass"; die $@ if $@ && $@ !~ /Can\'t locate.*in \@INC/; $impclass = "URI::urn" unless @{"${impclass}::ISA"}; } } else { carp("Illegal namespace identifier '$nid' for URN '$self'") if $^W; } $implementor{$nid} = $impclass; return $impclass->_urn_init($self, $nid); } sub _urn_init { my($class, $self, $nid) = @_; bless $self, $class; } sub _nid { my $self = shift; my $opaque = $self->opaque; if (@_) { my $v = $opaque; my $new = shift; $v =~ s/[^:]*/$new/; $self->opaque($v); # XXX possible rebless } $opaque =~ s/:.*//s; return $opaque; } sub nid { # namespace identifier my $self = shift; my $nid = $self->_nid(@_); $nid = lc($nid) if defined($nid); return $nid; } sub nss { # namespace specific string my $self = shift; my $opaque = $self->opaque; if (@_) { my $v = $opaque; my $new = shift; if (defined $new) { $v =~ s/(:|\z).*/:$new/; } else { $v =~ s/:.*//s; } $self->opaque($v); } return undef unless $opaque =~ s/^[^:]*://; return $opaque; } sub canonical { my $self = shift; my $nid = $self->_nid; my $new = $self->SUPER::canonical; return $new if $nid !~ /[A-Z]/ || $nid =~ /%/; $new = $new->clone if $new == $self; $new->nid(lc($nid)); return $new; } 1;
Upload File
Create Folder