| line | stmt | bran | cond | sub | pod | time | code | 
| 1 |  |  |  |  |  |  | package WWW::Mechanize::Link; | 
| 2 |  |  |  |  |  |  |  | 
| 3 | 15 |  |  | 15 |  | 118424 | use strict; | 
|  | 15 |  |  |  |  | 41 |  | 
|  | 15 |  |  |  |  | 490 |  | 
| 4 | 15 |  |  | 15 |  | 72 | use warnings; | 
|  | 15 |  |  |  |  | 87 |  | 
|  | 15 |  |  |  |  | 4979 |  | 
| 5 |  |  |  |  |  |  |  | 
| 6 |  |  |  |  |  |  | our $VERSION = '2.15'; | 
| 7 |  |  |  |  |  |  |  | 
| 8 |  |  |  |  |  |  | #ABSTRACT: Link object for WWW::Mechanize | 
| 9 |  |  |  |  |  |  |  | 
| 10 |  |  |  |  |  |  |  | 
| 11 |  |  |  |  |  |  | sub new { | 
| 12 | 189 |  |  | 189 | 1 | 1673 | my $class = shift; | 
| 13 |  |  |  |  |  |  |  | 
| 14 | 189 |  |  |  |  | 210 | my $self; | 
| 15 |  |  |  |  |  |  |  | 
| 16 |  |  |  |  |  |  | # The order of the first four must stay as they are for | 
| 17 |  |  |  |  |  |  | # compatibility with older code. | 
| 18 | 189 | 100 |  |  |  | 359 | if ( ref $_[0] eq 'HASH' ) { | 
| 19 | 187 |  |  |  |  | 270 | $self = [ @{$_[0]}{ qw( url text name tag base attrs ) } ]; | 
|  | 187 |  |  |  |  | 529 |  | 
| 20 |  |  |  |  |  |  | } | 
| 21 |  |  |  |  |  |  | else { | 
| 22 | 2 |  |  |  |  | 9 | $self = [ @_ ]; | 
| 23 |  |  |  |  |  |  | } | 
| 24 |  |  |  |  |  |  |  | 
| 25 | 189 |  |  |  |  | 494 | return bless $self, $class; | 
| 26 |  |  |  |  |  |  | } | 
| 27 |  |  |  |  |  |  |  | 
| 28 |  |  |  |  |  |  |  | 
| 29 | 316 |  |  | 316 | 1 | 14480 | sub url   { return ($_[0])->[0]; } | 
| 30 | 411 |  |  | 411 | 1 | 1890 | sub text  { return ($_[0])->[1]; } | 
| 31 | 34 |  |  | 34 | 1 | 166 | sub name  { return ($_[0])->[2]; } | 
| 32 | 48 |  |  | 48 | 1 | 264 | sub tag   { return ($_[0])->[3]; } | 
| 33 | 57 |  |  | 57 | 1 | 143 | sub base  { return ($_[0])->[4]; } | 
| 34 | 28 |  |  | 28 | 1 | 171 | sub attrs { return ($_[0])->[5]; } | 
| 35 |  |  |  |  |  |  |  | 
| 36 |  |  |  |  |  |  |  | 
| 37 |  |  |  |  |  |  | sub URI { | 
| 38 | 55 |  |  | 55 | 1 | 443 | my $self = shift; | 
| 39 |  |  |  |  |  |  |  | 
| 40 | 55 |  |  |  |  | 1488 | require URI::URL; | 
| 41 | 55 |  |  |  |  | 17563 | my $URI = URI::URL->new( $self->url, $self->base ); | 
| 42 |  |  |  |  |  |  |  | 
| 43 | 55 |  |  |  |  | 21051 | return $URI; | 
| 44 |  |  |  |  |  |  | } | 
| 45 |  |  |  |  |  |  |  | 
| 46 |  |  |  |  |  |  |  | 
| 47 |  |  |  |  |  |  | sub url_abs { | 
| 48 | 53 |  |  | 53 | 1 | 2598 | my $self = shift; | 
| 49 |  |  |  |  |  |  |  | 
| 50 | 53 |  |  |  |  | 84 | return $self->URI->abs; | 
| 51 |  |  |  |  |  |  | } | 
| 52 |  |  |  |  |  |  |  | 
| 53 |  |  |  |  |  |  |  | 
| 54 |  |  |  |  |  |  | 1; | 
| 55 |  |  |  |  |  |  |  | 
| 56 |  |  |  |  |  |  | __END__ |