/usr/share/perl5/Bio/LiveSeq/Exon.pm is in libbio-perl-perl 1.6.924-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | #
# bioperl module for Bio::LiveSeq::Exon
#
# Please direct questions and support issues to <bioperl-l@bioperl.org>
#
# Cared for by Joseph Insana <insana@ebi.ac.uk> <jinsana@gmx.net>
#
# Copyright Joseph Insana
#
# You may distribute this module under the same terms as perl itself
#
# POD documentation - main docs before the code
=head1 NAME
Bio::LiveSeq::Exon - Range abstract class for LiveSeq
=head1 SYNOPSIS
# documentation needed
=head1 DESCRIPTION
Class for EXON objects. They consist of a beginlabel, an endlabel (both
referring to a LiveSeq DNA object) and a strand.
The strand could be 1 (forward strand, default), -1 (reverse strand).
=head1 AUTHOR - Joseph A.L. Insana
Email: Insana@ebi.ac.uk, jinsana@gmx.net
=head1 APPENDIX
The rest of the documentation details each of the object
methods. Internal methods are usually preceded with a _
=cut
# Let the code begin...
package Bio::LiveSeq::Exon;
use strict;
use base qw(Bio::LiveSeq::Range);
=head2 new
Title : new
Usage : $exon1 = Bio::LiveSeq::Exon-> new(-seq => $objref,
-start => $startlabel,
-end => $endlabel, -strand => 1);
Function: generates a new Bio::LiveSeq::Exon
Returns : reference to a new object of class Exon
Errorcode -1
Args : two labels and an integer
=cut
=head2 get_Transcript
Title : get_Transcript
Usage : $transcript = $obj->get_Transcript()
Function: retrieves the reference to the object of class Transcript (if any)
attached to a LiveSeq object
Returns : object reference
Args : none
Note : only Exons that compose a Transcript (i.e. those created out of
a CDS Entry-Feature) will have an attached Transcript
=cut
sub get_Transcript {
my $self=shift;
return ($self->{'transcript'}); # this is set on all Exons a Transcript is made of when Transcript->new is called
}
# this checks if the attached Transcript has a Gene object attached
sub gene {
my ($self,$value) = @_;
if (defined $value) {
$self->{'gene'} = $value;
}
unless (exists $self->{'gene'}) {
unless (exists $self->get_Transcript->{'gene'}) {
return (0);
} else {
return ($self->get_Transcript->{'gene'});
}
} else {
return $self->{'gene'};
}
}
1;
|