[Bioperl-l] Bio::SeqIO can't guess the format of data from a pipe
Florent Angly
florent.angly at gmail.com
Mon Sep 5 02:14:37 UTC 2011
Thanks for your advice Chris. I put a format() and variant() method in
Bio::Root::IO. All the Bio::*IO methods inherit these methods.
Regarding the module naming, 8 follow the convention Bio::*IO and 8
follow the Bio::*::IO convention. If we decide to rename some IO modules
for consistency, I would prefer the Bio::*::IO convention.
Regards,
Florent
On 29/08/11 11:10, Chris Fields wrote:
> On Aug 28, 2011, at 5:35 PM, Florent Angly wrote:
>
>> Hi,
>>
>> I implemented the format() getter method in Bio::SeqIO as discussed, essentially following the way proposed by Hilmar. The variant() method is not needed since Bio::SeqIO::fastq already has a get/set method for that.
> Right, but the method could be used by other modules if it were moved to Bio::SeqIO. for instance.
>
>> I noticed that there are plenty more Bio*IO modules that could benefit from having a format() method, e.g.:
>> Bio::AlignIO
>> Bio::ClusterIO
>> Bio::FeatureIO
>> Bio::MapIO
>> Bio::OntologyIO
>> Bio::SearchIO
>> Bio::TreeIO
>> Bio::Assembly::IO *
>> The code could be copy-pasted for each of them but it is not very graceful. Is there a way we could have all these IO modules share the same format() method?
> Move the method to Bio::Root::IO, the common base class for all of the above.
>
>> * Note how the IO class for Bio::Assembly is called Bio::Assembly::IO, and not Bio::AssemblyIO like for other classes. This may be something to change in the future for consistency.
>>
>> Florent
> That's possible; one could take advantage of that for redesign/API issues if it were needed.
>
> chris
More information about the Bioperl-l
mailing list