An exon is represented by the basic feature representation (see
documentation of Bio::EnsEMBL::Collection) and by the following extended
feature representation:
1.
Phase
2.
End phase
3.
Is-current
4.
Stable ID
5.
Version
6.
Created date
7.
Modified date
None available.
sub _columns
{ my ($this) = @_;
my @columns = $this->SUPER::_columns();
if ( $this->lightweight() ) {
@columns[ Bio::EnsEMBL::Collection::BASIC_SLOTS .. $#columns ] =
map( 1, Bio::EnsEMBL::Collection::BASIC_SLOTS .. $#columns );
}
return @columns; } |
sub _create_feature
{ my ( $this, $feature_type, $args ) = @_;
my $feature = $this->SUPER::_create_feature( $feature_type, $args );
if ( !$this->lightweight() ) {
my ( $phase, $end_phase, $is_current, $stable_id, $version,
$created_date, $modified_date )
= rearrange( [ 'PHASE', 'END_PHASE',
'IS_CURRENT', 'STABLE_ID',
'VERSION', 'CREATED_DATE',
'MODIFIED_DATE'
],
%{$args} );
push( @{$feature},
$phase, $end_phase, $is_current, $stable_id, $version,
$created_date, $modified_date );
}
return $feature; } |
sub _create_feature_fast
{ my ( $this, $feature_type, $args ) = @_;
throw( '_create_feature_fast() '
. 'is not implemented for '
. 'exon collections' ); } |
sub _tables
{ my ($this) = @_;
my @tables = $this->SUPER::_tables();
if ( $this->lightweight() ) { return ( $tables[0] ) }
return @tables; } |