.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "HTML::Microformats::Datatype::Duration 3pm" .TH HTML::Microformats::Datatype::Duration 3pm "2021-09-12" "perl v5.32.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" HTML::Microformats::Datatype::Duration \- floating periods of time .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& my $duration = HTML::Microformats::Datatype::Duration\->new($d); \& print "$duration\en"; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" .SS "Constructors" .IX Subsection "Constructors" .ie n .IP """$d = HTML::Microformats::Datatype::Duration\->new($duration)""" 4 .el .IP "\f(CW$d = HTML::Microformats::Datatype::Duration\->new($duration)\fR" 4 .IX Item "$d = HTML::Microformats::Datatype::Duration->new($duration)" Creates a new HTML::Microformats::Datatype::Duration object. .Sp \&\f(CW$duration\fR is a DateTime::Duration object. .ie n .IP """$d = HTML::Microformats::Datatype::Duration\->parse($string, $elem, $context)""" 4 .el .IP "\f(CW$d = HTML::Microformats::Datatype::Duration\->parse($string, $elem, $context)\fR" 4 .IX Item "$d = HTML::Microformats::Datatype::Duration->parse($string, $elem, $context)" Creates a new HTML::Microformats::Datatype::Duration object. .Sp \&\f(CW$string\fR is a duration represented in \s-1ISO 8601\s0 format, for example: \&'P1Y' or '\s-1PT2H29M58.682S\s0'. \f(CW$elem\fR is the XML::LibXML::Element being parsed. \f(CW$context\fR is the document context. .Sp The standard way of representing durations in Microformats is as an \s-1ISO 8601\s0 string: .Sp .Vb 1 \& 4 and a half days .Ve .Sp This constructor also supports a number of experimental microformat duration patterns. \s-1ISO\-31\s0 class names are supported: .Sp .Vb 4 \&
\& 4 and \& a half days. \&
.Ve .Sp As are metric/SI measures (in seconds): .Sp .Vb 2 \& 124 s \& 124 seconds .Ve .Sp Or using an hMeasure microformat with no 'item' property, the 'type' property either absent or a case-insensitive match of 'duration' and a unit property of 's'/'sec'/'seconds', 'min'/'minutes', 'h'/'hours' or 'd'/'days'. For example: .Sp .Vb 3 \& \& Days: 4.5 \& .Ve .SS "Public Methods" .IX Subsection "Public Methods" .ie n .IP """$d\->duration""" 4 .el .IP "\f(CW$d\->duration\fR" 4 .IX Item "$d->duration" Returns a DateTime::Duration object. .ie n .IP """$d\->to_string""" 4 .el .IP "\f(CW$d\->to_string\fR" 4 .IX Item "$d->to_string" Returns an \s-1ISO 8601\s0 formatted string representing the duration. .ie n .IP """$d\->datatype""" 4 .el .IP "\f(CW$d\->datatype\fR" 4 .IX Item "$d->datatype" Returns an the \s-1RDF\s0 datatype \s-1URI\s0 representing the data type of this literal. .SS "Functions" .IX Subsection "Functions" .ie n .IP """compare($a, $b)""" 4 .el .IP "\f(CWcompare($a, $b)\fR" 4 .IX Item "compare($a, $b)" Compares durations \f(CW$a\fR and \f(CW$b\fR. Return values are as per 'cmp' (see perlfunc). .Sp Note that there is not always a consistent answer when comparing durations. 30 days is longer than a month in February, but shorter than a month in January. Durations are compared as if they were applied to the current datetime (i.e. now). .Sp This function is not exported by default. .Sp Can also be used as a method: .Sp .Vb 1 \& $a\->compare($b); .Ve .ie n .IP """$c = add($a, $b)""" 4 .el .IP "\f(CW$c = add($a, $b)\fR" 4 .IX Item "$c = add($a, $b)" Adds two durations together. .Sp This function is not exported by default. .Sp Can also be used as a method: .Sp .Vb 1 \& $c = $a\->add($b); .Ve .ie n .IP """$c = subtract($a, $b)""" 4 .el .IP "\f(CW$c = subtract($a, $b)\fR" 4 .IX Item "$c = subtract($a, $b)" Subtracts duration \f(CW$b\fR from \f(CW$a\fR. .Sp This function is not exported by default. .Sp Can also be used as a method: .Sp .Vb 1 \& $c = $a\->subtract($b); .Ve .SH "BUGS" .IX Header "BUGS" Please report any bugs to . .SH "SEE ALSO" .IX Header "SEE ALSO" HTML::Microformats, HTML::Microformats::Datatype, DateTime::Duration. .SH "AUTHOR" .IX Header "AUTHOR" Toby Inkster . .SH "COPYRIGHT AND LICENCE" .IX Header "COPYRIGHT AND LICENCE" Copyright 2008\-2012 Toby Inkster .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. .SH "DISCLAIMER OF WARRANTIES" .IX Header "DISCLAIMER OF WARRANTIES" \&\s-1THIS PACKAGE IS PROVIDED \*(L"AS IS\*(R" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.\s0