[Bioperl-l] Bio::Range and Bio::Range
Jason Stajich
jason@chg.mc.duke.edu
Fri, 2 Feb 2001 09:00:09 -0500
----- Original Message -----
From: "Heikki Lehvaslaiho" <heikki@ebi.ac.uk>
To: "bioperl-l" <bioperl-l@bioperl.org>
Sent: Friday, February 02, 2001 6:29 AM
Subject: [Bioperl-l] Bio::Range and Bio::Range
>
> I'd like to update Bio::RangeI and Bio::Range before branching to
> 0.7.
> OK Hilmar?
>
> I already talked to Matthew Pocock who wrote them in the first place
> and I'll take the responsibility on caring for them from here on.
>
> Bio::Range will be useful for the up-coming Marker classes.
>
> What I am planning to do:
>
> 1. Bio::Range throws an error if both start and end attributes are not
> set in the constructor. Move to more relaxed bioperl style that allows
> the creation of an object and then setting the attributes one by one.
>
> 2. Check that values for start and end are integers (positive or
> negative). Negative values sets this class apart from Bio::LocationI
> compliant classes that store locations on real sequences, i.e. >0
> only.
>
> Jason, is this correct? Bio::Location::Simple does not
> enforce positive integers and returns '0' when
> undefined. Shouldn't the return value be 'undef'?
This is correct, we will need to add protection to length as well then since
it assumes (incorrectly of course) start/end will always return a valid
integer.
>
> 3. Add checks into range operator methods ->overlaps, ->contains and
> ->equals in Bio::RangeI.
> - $self->start
> - $self->end
> - $other->start
> - $other->end
> - $other->isa('Bio::RangeI')
>
> Bio::Location objects need these in place, too.
>
> 4. Rename union and intersection to _union and _intersection in
> Bio::RangeI. They return an array of three values. Instantiable
> classes like Bio::Range should recreate union and intersection and
> return a new object created from the array values. (->overlap_extent
> is kept as it is.)
I think this sounds fine, we should be sure and add some more tests to test
all the scenarios now.
>
> Shout if you object or these plans threaten to break something.
>
> -Heikki
>
> --
> ______ _/ _/_____________________________________________________
> _/ _/ http://www.ebi.ac.uk/mutations/
> _/ _/ _/ Heikki Lehvaslaiho heikki@ebi.ac.uk
> _/_/_/_/_/ EMBL Outstation, European Bioinformatics Institute
> _/ _/ _/ Wellcome Trust Genome Campus, Hinxton
> _/ _/ _/ Cambs. CB10 1SD, United Kingdom
> _/ Phone: +44 (0)1223 494 644 FAX: +44 (0)1223 494 468
> ___ _/_/_/_/_/________________________________________________________
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l
>