=pod
=head1 NAME
Data::Range::Compare::Stream::Iterator::Compare::Result - Range Compare Result Object
=head1 DESCRIPTION
This module is a result object for classes that implement:
Data::Range::Compare::Stream::Iterator::Compare::Asc
=head2 OO Methods
=over 3
=item * my $result=new Data::Range::Compare::Stream::Iterator::Compare::Result (COMMON_RANGE,[OVERLAP_RESULTS],[OVERLAP_IDS],[NON_OVERLAP_IDS],[COLUMN_MAP],[ROOT_IDS]);
Object constructor: All arguments are mandatory!
COMMON_RANGE
Implements Data::Range::Compare::Stream
OVERLAP_RESULTS
An array ref with any of the following objects
Data::Range::Compare::Stream::Consolidate::Result
Data::Range::Compare::Stream::Compare::Result
undef
OVERLAP_IDS
An array ref representing the ids in OVERLAP_RESULTS that are not undef
NON_OVERLAP_IDS
An array ref representing the ids of OVERLAP_RESULTS that are undef
COLUMN_MAP
An array ref that maps each element to the root_id column
ROOT_IDS
An array ref that represents the non auto generated columns
=item * print $result
When used in a string context the object will return $result->to_string.
=item * my $range=$result->get_common
Returns the common range.
=item * my $range=$result->get_common_range
Alias to $result->get_common.
=item * my $count=$result->get_overlap_count;
Returns the number of elements in OVERLAP_RESULTS that matched the common range
=item * my $string=$result->to_string;
Returns a string representing the result
=item * my $count=$result->get_column_count;
Returns the number of columns that are in OVERLAP_RESULTS
=item * my $ref=$result->get_overlap_ids;
Returns an array ref of column ids that overlap with the column range
=item * my $ref=$result->get_non_overlap_ids;
Returns an array ref of column ids that do not overlap with the column range
=item * my $count=$result->get_non_overlap_count;
Returns the number of columns that did not overlap with the common range
=item * my $result=$result->get_consolidator_result_by_id($id);
$result will be an object that implements: Data::Range::Compare::Stream::Iterator::Consolidate::Result. When the column $id did not overlap $result will be undef.
=item * my $result=$result->get_result_by_id($id);
Alias to get_consolidator_result_by_id.
=item * my $boolean=$result->is_empty;
$boolean is true when no ranges overlapped with the common range.
=item * my $boolean=$result->none_overlap;
Alias to is_empty.
=item * my $boolean=$result->is_full;
$boolean is true when all OVERLAP_RESULTS overlapped with the common range.
=item * my $ref=$result->get_overlapping_containers;
Returns an array ref of each object that overlapped with the common range.
=item * my $ref=$result->get_all_containers;
Returns an array ref of OVERLAP_RESULTS.
=item * my $ref=$result->get_non_overlapping_containers;
Returns an array ref of undef for every column that did not overlap.
=item * my $ref=$result->get_column_map;
Returns a unique copy of the column map array ref.
=item * my $ref=$result->get_root_ids;
Returns a unique copy of the column map array ref.
=item * my $ref=$result->get_root_results;
Returns an anonymous array: element ids represent the root_ids. Values are anonymous arrays that contain the result objects from the consolidation process associated with the root_id.
=item * my $ref=$result->get_root_result_ids;
Returns an anonymous array: element ids represent the root_ids. Values are anonymous arrays that contain the result ids from the consolidation process associated with the root_id.
=back
=head1 SEE ALSO
Data::Range::Compare::Stream::Iterator::Compare::Asc
Data::Range::Compare::Stream::Iterator::Compare::Base
=head1 AUTHOR
Michael Shipper
=head1 Source-Forge Project
As of version 0.001 the Project has been moved to Source-Forge.net
L<Data Range Compare|https://sourceforge.net/projects/data-range-comp/>
L<https://sourceforge.net/projects/data-range-comp/>
=head1 COPYRIGHT
Copyright 2011 Michael Shipper. All rights reserved.
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
=cut