Set::Infinite::Arithmetic(3pm)

Set::Infinite::Arithmetic3pm

Name

Set::Infinite::Arithmetic - Scalar operations used by quantize() and offset()

%_MODE hash of subs

    $a->offset ( value => [1,2], mode => 'offset', unit => 'days' );
    $a->offset ( value => [1,2, -5,-4], mode => 'offset', unit => 'days' );

note: if mode = circle, then "-5" counts from end (like a Perl negative array index).

    $a->offset ( value => [1,2], mode => 'offset', unit => 'days', strict => $a );

option 'strict' will return intersection($a,offset). Default: none.

%subs_offset2($object, $offset1, $offset2)

    &{ $subs_offset2{$unit} } ($object, $offset1, $offset2);

A hash of functions that return:

    ($object+$offset1, $object+$offset2)

in $unit context.

Returned $object+$offset1, $object+$offset2 may be scalars or objects.

%Offset_to_value($object, $offset)

%Init_quantizer($object)

    $Offset_to_value{$unit} ($object, $offset);
    $Init_quantizer{$unit} ($object);

Maps an 'offset value' to a 'value'

A hash of functions that return ( int($object) + $offset ) in $unit context.

Init_quantizer subroutines must be called before using subs_offset1 functions.

int(object)+offset is a scalar.

Offset_to_value is optimized for calling it multiple times on the same object, with different offsets. That's why there is a separate initialization subroutine.

$self->{offset} is created on initialization. It is an index used by the memoization cache.

Releases

10 releases since Debian 5.0 (Lenny); the text changed 3 times.

  1. 5.0–8
  2. 9–11
  3. 12–13
  4. Arch

Author

Flavio Soibelmann Glock - [email protected]

From perl-set-infinite 0.65-7 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.