Документация кажется неправильной.Источник лучше:
# FUNCTIONAL SEQUENCE for sunrise_sunset
#
# _GIVEN
#
# A sunrise class
# A DateTime object
#
# _THEN
#
# Validate the DateTime object is valid
# Compute sunrise and sunset
#
#
# _RETURN
#
# DateTime object that contains the rise times
Важной частью является то, что объект, на который вы его вызываете, должен иметь класс DateTime::Event::Sunrise
.Ваш $sunrise
объект относится к классу DateTime::Set
.
. Вы можете заставить его работать, либо создав $sunrise
как DateTime::Event::Sunrise
:
my $sunrise = DateTime::Event::Sunrise->new(
longitude => $longitude,
latitude => $latitude,
altitude => '-0.833',
iteration => '1'
);
, либо используя итерациюуслуги, предоставляемые DateTime::Set
вместо:
my $dt1 = $sunrise->next( $dt ); # or current, closest...