MAN page from PLD perl-Set-IntRange-5.2-1.noarch.rpm
IntRange
Section: User Contributed Perl Documentation (3)
Updated: 2009-10-06
Index NAME
Set::IntRange - Sets of Integers
PURPOSE
Easy manipulation of sets of integers (arbitrary intervals)
SYNOPSIS
METHODS
Version $version = $Set::IntRange::VERSION; new $set = Set::IntRange->new($lower,$upper); $set = $any_set->new($lower,$upper); Resize $set->Resize($lower,$upper); Size ($lower,$upper) = $set->Size(); Empty $set->Empty(); Fill $set->Fill(); Flip $set->Flip(); Interval_Empty $set->Interval_Empty($lower,$upper); $set->Empty_Interval($lower,$upper); # (deprecated) Interval_Fill $set->Interval_Fill($lower,$upper); $set->Fill_Interval($lower,$upper); # (deprecated) Interval_Flip $set->Interval_Flip($lower,$upper); $set->Flip_Interval($lower,$upper); # (deprecated) Interval_Scan_inc while (($min,$max) = $set->Interval_Scan_inc($start)) Interval_Scan_dec while (($min,$max) = $set->Interval_Scan_dec($start)) Bit_Off $set->Bit_Off($index); $set->Delete($index); # (deprecated) Bit_On $set->Bit_On($index); $set->Insert($index); # (deprecated) bit_flip $bit = $set->bit_flip($index); if ($set->bit_flip($index)) $bit = $set->flip($index); # (deprecated) if ($set->flip($index)) # (deprecated) bit_test $bit = $set->bit_test($index); if ($set->bit_test($index)) $bit = $set->contains($index); if ($set->contains($index)) $bit = $set->in($index); # (deprecated) if ($set->in($index)) # (deprecated) Norm $norm = $set->Norm(); Min $min = $set->Min(); Max $max = $set->Max(); Union $set1->Union($set2,$set3); # in-place is possible! Intersection $set1->Intersection($set2,$set3); # in-place is possible! Difference $set1->Difference($set2,$set3); # in-place is possible! ExclusiveOr $set1->ExclusiveOr($set2,$set3); # in-place is possible! Complement $set1->Complement($set2); # in-place is possible! is_empty if ($set->is_empty()) is_full if ($set->is_full()) equal if ($set1->equal($set2)) subset if ($set1->subset($set2)) if ($set1->inclusion($set2)) # (deprecated) Lexicompare $cmp = $set1->Lexicompare($set2); # unsigned Compare $cmp = $set1->Compare($set2); # signed Copy $set1->Copy($set2); Shadow $other_set = $some_set->Shadow(); Clone $twin_set = $some_set->Clone(); to_Enum $string = $set->to_Enum(); # e.g., "-8..-5,-1..2,4,6..9" from_Enum eval { $set->from_Enum($string); }; to_Hex $string = $set->to_Hex(); # e.g., "0007AF1E" from_Hex eval { $set->from_Hex($string); }; BitVector $set->BitVector->any_Bit_Vector_method(); OVERLOADED OPERATORS
# "$index" is a number or a Perl scalar variable containing a # number which represents the set containing only that element: Emptyness if ($set) # if not empty if (! $set) # if empty unless ($set) # if empty Equality if ($set1 == $set2) if ($set1 != $set2) if ($set == $index) if ($set != $index) Lexical Comparison $cmp = $set1 cmp $set2; if ($set1 lt $set2) if ($set1 le $set2) if ($set1 gt $set2) if ($set1 ge $set2) if ($set1 eq $set2) if ($set1 ne $set2) $cmp = $set cmp $index; if ($set lt $index) if ($set le $index) if ($set gt $index) if ($set ge $index) if ($set eq $index) if ($set ne $index) String Conversion $string = "$set"; print "\$set = '$set'\n"; Union $set1 = $set2 + $set3; $set1 += $set2; $set1 = $set2 | $set3; $set1 |= $set2; $set1 = $set2 + $index; $set += $index; $set1 = $set2 | $index; $set |= $index; Intersection $set1 = $set2 * $set3; $set1 *= $set2; $set1 = $set2 & $set3; $set1 &= $set2; $set1 = $set2 * $index; $set *= $index; $set1 = $set2 & $index; $set &= $index; Difference $set1 = $set2 - $set3; $set1 -= $set2; $set1 = $set2 - $set1; $set1 = $set2 - $index; $set1 = $index - $set2; $set -= $index; ExclusiveOr $set1 = $set2 ^ $set3; $set1 ^= $set2; $set1 = $set2 ^ $index; $set ^= $index; Complement $set1 = -$set2; $set1 = ~$set2; $set = -$set; $set = ~$set; Subset Relationship if ($set1 <= $set2) True Subset Relationship if ($set1 < $set2) Superset Relationship if ($set1 >= $set2) True Superset Relationship if ($set1 > $set2) Norm $norm = abs($set);
DESCRIPTION
This class lets you dynamically create sets of arbitrary intervals ofintegers and perform all the basic operations for sets on them (for alist of available methods and operators, see above).
See Bit::Vector(3) for more details!
SEE ALSO
Bit::Vector(3),
Math::MatrixBool(3),
Math::MatrixReal(3),
DFA::Kleene(3),
Math::Kleene(3),
Graph::Kruskal(3).
VERSION
This man page documents ``Set::IntRange'' version 5.2.
AUTHOR
Steffen Beyer <STBEYAATTcpan.org>.
COPYRIGHT
Copyright (c) 1995 - 2009 by Steffen Beyer. All rights reserved.
LICENSE
This package is free software; you can redistribute it and/ormodify it under the same terms as Perl itself.
DISCLAIMER
This package is distributed in the hope that it will be useful,but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or
FITNESS FOR A
PARTICULAR PURPOSE.
Index
- NAME
- PURPOSE
- SYNOPSIS
- METHODS
- OVERLOADED OPERATORS
- DESCRIPTION
- SEE ALSO
- VERSION
- AUTHOR
- COPYRIGHT
- LICENSE
- DISCLAIMER
This document was created byman2html,using the manual pages.