MarpaX::ESLIF::URI::_generic - URI Generic syntax as per RFC3986/RFC6874
version 0.005
Instantiate a new object, or croak on failure. Takes as parameter an URI that will be parsed. The object instance is noted $self below.
$self
Returns the BNF used to parse the input.
Returns a MarpaX::ESLIF singleton.
Returns the compiled BNF used to parse the input as MarpaX::ESLIF::Grammar singleton.
Returns the string version of the URI, $type is either 'decoded' (default value), 'origin' or 'normalized'.
$type
Returns the scheme, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the authority, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the userinfo, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the host (which may contain [] delimiters in case of IPv6 literal), or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
[]
Returns the hostname (without eventual [] delimiters), or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the IP when host is such a literal, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Note that this is the full concatenation of what makes an IP, in particular you will get the eventual IPv6 Zone Id if there is one.
Returns the IPv4 when host is such a literal, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the IPv6 when host is such a literal, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the decoded IPvfuture (as per the spec) when host is such a literal, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the IPv6 Zone Id, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the port, or undef.
Returns the path, or the empty string. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the path segments as an array reference, which may be empty. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the query, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns the fragment, or undef. $type is either 'decoded' (default value), 'origin' or 'normalized'.
Returns a true value if the URI is absolute.
Returns a instance that is the absolute version of $self if possible, or croak on failure.
When $self is absolute, $self itself is returned, otherwise it must have a scheme and a new instance without the origin fragment is returned.
Returns the normalized string of $self.
Equivalent to $self->string('normalized').
$self->string('normalized')
Returns the decoded string of $self.
Equivalent to $self->string('decoded').
$self->string('decoded')
Returns a instance that converts $self into $base URI, or croak on failure.
$base
Default base is $self->base.
$self->base
If $strict is a true value, $self is always considered relative to $base, otherwise a new URI without $self's dot segments is returned when $self has a scheme. Default is a true value.
$strict
Returns a instance that is the absolute version of current instance if possible, or croak on failure.
Returns a clone of current instance.
Alias to string method.
string
Implementation of RFC3896's remove_dot_segments.
This package is Log::Any aware, and will use the later in case parsing fails to output error messages.
MarpaX::ESLIF::URI, RFC3986, RFC6874
Jean-Damien Durand <jeandamiendurand@free.fr>
This software is copyright (c) 2017 by Jean-Damien Durand.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install MarpaX::ESLIF::URI, copy and paste the appropriate command in to your terminal.
cpanm
cpanm MarpaX::ESLIF::URI
CPAN shell
perl -MCPAN -e shell install MarpaX::ESLIF::URI
For more information on module installation, please visit the detailed CPAN module installation guide.