view release on metacpan or search on metacpan
lib/Bio/DB/BioSQL/BaseDriver.pm view on Meta::CPAN
sub new {
my($class,@args) = @_;
my $self = $class->SUPER::new(@args);
# copy the static mapping tables into our private hashs
# you may then change individual mappings in your derived adaptor driver
$self->objrel_map(\%object_entity_map);
$self->slot_attribute_map(\%slot_attribute_map);
$self->not_select_attrs(\%dont_select_attrs);
$self->association_entity_map(\%association_entity_map);
return $self;
}
=head2 prepare_delete_sth
Title : prepare_delete_sth
Usage :
Function: Creates a prepared statement with one placeholder variable
lib/Bio/DB/BioSQL/BaseDriver.pm view on Meta::CPAN
sub _build_select_list{
my ($self,$adp,$fkobjs,$entitymap) = @_;
# get the persistent slots
my @slots = $adp->get_persistent_slots();
# get the slot/attribute map
my $table = $self->table_name($adp);
my $slotmap = $self->slot_attribute_map();
# get the map of columns excluded from SELECTs
my $dont_select_attrs = $self->not_select_attrs();
# default the entity-alias map if not provided
if(! $entitymap) {
$entitymap = {};
$entitymap->{$table} = [$table];
}
# Alias for the table. We'll use the first one if the table is in the
# FROM list with different aliases. Also note that the alias may come
# with context, which we need to strip off.
my ($alias) = split(/::/, $entitymap->{$table}->[0]);
# get the primary key name
lib/Bio/DB/BioSQL/BaseDriver.pm view on Meta::CPAN
$map = $self->{'_slot_attr_map'}->{$tablekey};
}
}
} else {
# return the overall map
$map = $self->{'_slot_attr_map'};
}
return $map;
}
=head2 not_select_attrs
Title : not_select_attrs
Usage : $obj->not_select_attrs($newval)
Function: Get/set a map of all columns that should not be included in
SELECT lists.
Example :
Returns : value of not_select_attrs (a reference to a hash map)
Args : new value (a reference to a hash map, optional)
=cut
sub not_select_attrs{
my ($self,$value) = @_;
if( defined $value) {
$self->{'not_select_attrs'} = $value;
}
return $self->{'not_select_attrs'};
}
=head2 association_entity_map
Title : association_entity_map
Usage : $obj->association_entity_map($newval)
Function: Get/set the association entity map. The map is an anonymous
hash with entities that participate in associations being
keys. The values are hash refs themselves, with the other
participating entity being the key, and the value being
lib/Bio/DB/BioSQL/BasePersistenceAdaptor.pm view on Meta::CPAN
override it to return something meaningful.
Example :
Returns : an array of method names constituting the serializable slots
Args : the object about to be inserted or updated
=cut
sub get_persistent_slots{
shift->throw_not_implemented();
}
=head2 get_persistent_slot_values
Title : get_persistent_slot_values
Usage :
Function: Obtain the values for the slots returned by get_persistent_slots(),
in exactly that order.
The reason this method is here is that sometimes the actual
lib/Bio/DB/BioSQL/BasePersistenceAdaptor.pm view on Meta::CPAN
Args : The object about to be serialized.
A reference to an array of foreign key objects if not retrievable
from the object itself.
=cut
sub get_persistent_slot_values {
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 get_foreign_key_objects
Title : get_foreign_key_objects
Usage :
Function: Gets the objects referenced by this object, and which therefore need
to be referenced as foreign keys in the datastore.
Note that the objects are expected to implement
lib/Bio/DB/BioSQL/BasePersistenceAdaptor.pm view on Meta::CPAN
Example :
Returns : TRUE on success and FALSE otherwise
Args : The persistent object that was just removed from the database.
Additional (named) parameter, as passed to remove().
=cut
sub remove_children{
shift->throw_not_implemented();
}
=head2 instantiate_from_row
Title : instantiate_from_row
Usage :
Function: Instantiates the class this object is an adaptor for, and populates
it with values from columns of the row.
Usually a derived class will instantiate the proper class and pass
lib/Bio/DB/BioSQL/BasePersistenceAdaptor.pm view on Meta::CPAN
A reference to an array of column values. The first column is the
primary key, the other columns are expected to be in the order
returned by get_persistent_slots().
=cut
sub populate_from_row{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 get_unique_key_query
Title : get_unique_key_query
Usage :
Function: Obtain the suitable unique key slots and values as
determined by the attribute values of the given object and
the additional foreign key objects, in case foreign keys
participate in a UK.
lib/Bio/DB/BioSQL/Oracle/SpeciesAdaptorDriver.pm view on Meta::CPAN
A reference to an array of foreign key objects; if any of those
foreign key values is NULL (some foreign keys may be nullable),
then give the class name.
=cut
sub update_object{
my ($self,$adp,$obj,$fkobjs) = @_;
$self->throw_not_implemented();
}
=head2 _build_select_list
Title : _build_select_list
Usage :
Function: Builds and returns the select list for an object query. The list
contains those columns, in the right order, that are necessary to
populate the object.
lib/Bio/DB/BioSQL/Pg/SpeciesAdaptorDriver.pm view on Meta::CPAN
A reference to an array of foreign key objects; if any of those
foreign key values is NULL (some foreign keys may be nullable),
then give the class name.
=cut
sub update_object{
my ($self,$adp,$obj,$fkobjs) = @_;
$self->throw_not_implemented();
}
=head2 _build_select_list
Title : _build_select_list
Usage :
Function: Builds and returns the select list for an object query. The list
contains those columns, in the right order, that are necessary to
populate the object.
lib/Bio/DB/BioSQL/mysql/SpeciesAdaptorDriver.pm view on Meta::CPAN
A reference to an array of foreign key objects; if any of those
foreign key values is NULL (some foreign keys may be nullable),
then give the class name.
=cut
sub update_object{
my ($self,$adp,$obj,$fkobjs) = @_;
$self->throw_not_implemented();
}
=head2 _build_select_list
Title : _build_select_list
Usage :
Function: Builds and returns the select list for an object query. The list
contains those columns, in the right order, that are necessary to
populate the object.
lib/Bio/DB/DBAdaptorI.pm view on Meta::CPAN
Args : The class (a string) or object for which the adaptor is to be
obtained. Optionally, a DBContextI implementing object to initialize
the adaptor with.
=cut
sub get_object_adaptor{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 create_persistent
Title : create_persistent
Usage : $dbadaptor->create_persistent($obj)
Function: Creates a PersistentObjectI implementing object that adapts the
given object to the datastore.
Example :
Returns : A Bio::DB::PeristentObjectI implementing object
lib/Bio/DB/DBAdaptorI.pm view on Meta::CPAN
by this factory. Alternatively, the class name of such an object.
All remaining arguments should be passed to the constructor of the
class if the first argument is a class name.
=cut
sub create_persistent{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
1;
lib/Bio/DB/DBContextI.pm view on Meta::CPAN
Example :
Returns : value of dsn (a scalar)
Args : on set, new value (a scalar or undef, optional)
=cut
sub dsn{
my ($self) = @_;
$self->throw_not_implemented();
}
=head2 dbname
Title : dbname
Usage : $obj->dbname($newval)
Function:
Example :
Returns : value of dbname (a scalar)
Args : new value (a scalar, optional)
=cut
sub dbname{
my ($self) = @_;
$self->throw_not_implemented();
}
=head2 driver
Title : driver
Usage : $obj->driver($newval)
Function:
Example :
Returns : value of driver (a scalar)
Args : new value (a scalar, optional)
=cut
sub driver{
my ($self) = @_;
$self->throw_not_implemented();
}
=head2 username
Title : username
Usage : $obj->username($newval)
Function:
Example :
Returns : value of username (a scalar)
Args : new value (a scalar, optional)
=cut
sub username {
my ($self) = @_;
$self->throw_not_implemented();
}
=head2 password
Title : password
Usage : $obj->password($newval)
Function:
Example :
Returns : value of password (a scalar)
Args : new value (a scalar, optional)
=cut
sub password{
my ($self,$value) = @_;
$self->throw_not_implemented();
}
=head2 host
Title : host
Usage : $obj->host($newval)
Function:
Example :
Returns : value of host (a scalar)
Args : new value (a scalar, optional)
=cut
sub host {
my ($self) = @_;
$self->throw_not_implemented();
}
=head2 port
Title : port
Usage : $obj->port($newval)
Function:
Example :
Returns : value of port (a scalar)
Args : new value (a scalar, optional)
=cut
sub port{
my ($self,$value) = @_;
$self->throw_not_implemented();
}
=head2 dbadaptor
Title : dbadaptor
Usage : $dbadp = $dbc->dbadaptor();
Function:
Example :
Returns : An Bio::DB::DBAdaptorI implementing object (an object adaptor
factory).
Args : Optionally, on set an Bio::DB::DBAdaptorI implementing object (to
be used as the object adaptor factory for the respective database)
=cut
sub dbadaptor{
my ($self) = @_;
$self->throw_not_implemented();
}
=head2 dbi
Title : dbi
Usage :
Function:
Example :
Returns : A Bio::DB::DBI implementing object
Args : Optionally, on set a Bio::DB::DBI implementing object
=cut
sub dbi{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 schema
Title : schema
Usage : $dbc->schema($newval)
Function: Get/set the schema in which the database tables reside.
A schema is typically equivalent to a namespace for a
collection of tables within a database. In Oracle, the
lib/Bio/DB/DBContextI.pm view on Meta::CPAN
Example :
Returns : value of schema (a scalar)
Args : on set, new value (a scalar or undef, optional)
=cut
sub schema{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
1;
lib/Bio/DB/DBD.pm view on Meta::CPAN
Args : The database handle to use for preparing the statement.
The class of which a corresponding entry shall be deleted.
Optionally, additional (named) arguments.
=cut
sub prepare_delete_sth{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 cascade_delete
Title : cascade_delete
Usage :
Function: Removes all persistent objects dependent from the given persistent
object from the database (foreign key integrity).
The method may throw an exception, or the database calls
lib/Bio/DB/DBD.pm view on Meta::CPAN
Args : The DBContextI implementing object for the database.
The object for which the dependent rows shall be deleted.
Optionally, additional (named) arguments.
=cut
sub cascade_delete{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
1;
lib/Bio/DB/DBI.pm view on Meta::CPAN
Optionally, the name of the primary key generating
sequence. The driver is not required to honor the argument
if present.
=cut
sub next_id_value{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 last_id_value
Title : last_id_value
Usage :
Function: Returns the last unique primary key value
allocated. Depending on the argument and the driver, the
value may be specific to a table, or independent of the
table.
lib/Bio/DB/DBI.pm view on Meta::CPAN
Optionally, the name of the primary key generating
sequence. The driver is not required to honor the argument
if present.
=cut
sub last_id_value{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 ifnull_sqlfunc
Title : nvl_sqlfunc
Usage :
Function: Get the name of the SQL function that takes two arguments
and returns the first if it is not null, and the second
otherwise.
lib/Bio/DB/DBI.pm view on Meta::CPAN
Returns : an open DBI database handle
Args : A Bio::DB::DBContextI implementing object. Additional hashref
parameter to be passed to DBI->connect() in case of a new
connection.
=cut
sub get_connection{
my ($self,$dbc,@args) = @_;
$self->throw_not_implemented();
}
=head2 new_connection
Title : new_connection
Usage :
Function: Obtains a new connection handle to the database represented by the
the DBContextI object, passing additional args to the DBI->connect()
method.
lib/Bio/DB/DBI.pm view on Meta::CPAN
Example :
Returns : an open DBI database handle
Args : A Bio::DB::DBContextI implementing object. Additional hashref
parameter to pass to DBI->connect().
=cut
sub new_connection{
my ($self,$dbc,@args) = @_;
$self->throw_not_implemented();
}
=head2 disconnect
Title : disconnect
Usage :
Function: Disconnects all or a certain number of connections matching the
parameters. The connections affected are those previously obtained
through get_connection() (shared connections from a pool).
Example :
lib/Bio/DB/DBI.pm view on Meta::CPAN
Args : Optionally, a Bio::DB::DBContextI implementing object.
Additional hashref parameter with settings that were passed to
get_connection().
=cut
sub disconnect{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 conn_params
Title : conn_params
Usage : $dbi->conn_params($requestor, $newval)
Function: Gets/sets connection parameters suitable for the specific driver and
the specific requestor.
A particular implementation may choose to ignore the
lib/Bio/DB/DBI.pm view on Meta::CPAN
Returns : a hashref to be passed to get_connection() or new_connection()
(which would pass it on to DBI->connect()).
Args : The requesting object, or alternatively its class name or interface.
Optionally, on set the new value (which must be undef or a hashref).
=cut
sub conn_params{
my ($self,$value) = @_;
$self->throw_not_implemented();
}
1;
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
Optionally, additional named parameters. A common parameter
will be -fkobjs, with a reference to an array of foreign
key objects if these cannot be obtained from the object
itself.
=cut
sub create{
shift->throw_not_implemented();
}
=head2 create_persistent
Title : create_persistent
Usage :
Function: Takes the given object and turns it onto a
L<Bio::DB::PersistentObjectI> implementing object. Returns
the result. Does not actually create the object in a
database.
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
Args : An object to be made into a PersistentObjectI object, and the class
of which is suitable for this adaptor.
Optionally, the class which actually implements wrapping
the object to become a PersistentObjectI.
=cut
sub create_persistent{
shift->throw_not_implemented();
}
=head2 store
Title : store
Usage : $objectstoreadp->store($persistent_obj)
Function: Updates the given persistent object in the datastore.
Implementations should be flexible and delegate to create()
if the primary_key() method of the object returns undef.
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
Optionally, additional named parameters. A common parameter
will be -fkobjs, with a reference to an array of foreign
key objects if these cannot be obtained from the object
itself.
=cut
sub store{
shift->throw_not_implemented();
}
=head2 remove
Title : remove
Usage : $objectstoreadp->remove($persistent_obj, @params)
Function: Removes the persistent object from the datastore.
Example :
Returns : TRUE on success and FALSE otherwise
Args : The object to be removed, and optionally additional (named)
parameters.
=cut
sub remove{
shift->throw_not_implemented();
}
=head1 Methods for locating objects
Find by primary key, by unique key, by association, and by query.
=cut
=head2 find_by_primary_key
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
Example :
Returns : An instance of the class this adaptor adapts, represented by an
object implementing Bio::DB::PersistentObjectI, or undef if no
matching entry was found.
Args : The primary key
=cut
sub find_by_primary_key{
shift->throw_not_implemented();
}
=head2 find_by_unique_key
Title : find_by_unique_key
Usage :
Function: Locates the entry matching the unique key attributes as set in the
passed object, and populates a persistent object with this entry.
Example :
Returns : A Bio::DB::PersistentObjectI implementing object, with the
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
chosen unique key (note that the class of the object must
be suitable for the adaptor).
Additional attributes and values if required, passed as a
reference to a hash map.
=cut
sub find_by_unique_key{
shift->throw_not_implemented();
}
=head2 find_by_association
Title : find_by_association
Usage :
Function: Locates those records associated between a number of
objects. The focus object (the type to be instantiated)
depends on the adaptor class that inherited from this
class.
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
each other
-obj_factory the factory to use for instantiating objects from
the found rows
Caveats: Make sure you *always* give the objects to be associated in the
same order.
=cut
sub find_by_association{
shift->throw_not_implemented();
}
=head2 find_by_query
Title : find_by_query
Usage :
Function: Locates entries that match a particular query and returns the
result as an array of peristent objects.
The query is represented by an instance of
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
the statement be a cached prepared statement, which
in subsequent invocations will only be re-bound with
parameters values, but not recreated
-values a reference to an array holding the values to be
bound, if the query is a named query
=cut
sub find_by_query{
shift->throw_not_implemented();
}
=head1 Methods for transactional control
Rollback and commit
=cut
=head2 commit
lib/Bio/DB/PersistenceAdaptorI.pm view on Meta::CPAN
Function: Commits the current transaction, if the underlying driver
supports transactions.
Example :
Returns : TRUE
Args : none
=cut
sub commit{
shift->throw_not_implemented();
}
=head2 rollback
Title : rollback
Usage :
Function: Triggers a rollback of the current transaction, if the
underlying driver supports transactions.
Example :
Returns : TRUE
Args : none
=cut
sub rollback{
shift->throw_not_implemented();
}
1;
lib/Bio/DB/Persistent/ObjectRelMapperI.pm view on Meta::CPAN
Example :
Returns : the name of the table (a string), or undef if the table cannot be
determined
Args : The referenced object, class name, or the persistence adaptor for
it.
=cut
sub table_name{
shift->throw_not_implemented();
}
=head2 association_table_name
Title : association_table_name
Usage :
Function: Obtain the name of the table in the relational schema corresponding
to the association of entities as represented by their
corresponding class names, objects, or persistence adaptors.
Example :
Returns : the name of the table (a string)
Args : A reference to an array of objects, class names, or persistence
adaptors. The array may freely mix types.
=cut
sub association_table_name{
shift->throw_not_implemented();
}
=head2 primary_key_name
Title : primary_key_name
Usage :
Function: Obtain the name of the primary key attribute for the given table in
the relational schema.
Example :
Returns : The name of the primary key (a string)
Args : The name of the table (a string)
=cut
sub primary_key_name{
shift->throw_not_implemented();
}
=head2 foreign_key_name
Title : foreign_key_name
Usage :
Function: Obtain the foreign key name for referencing an object, as
represented by object, class name, or the persistence adaptor.
Example :
Returns : the name of the foreign key (a string)
Args : The referenced object, class name, or the persistence adaptor for
it.
=cut
sub foreign_key_name{
shift->throw_not_implemented();
}
=head2 slot_attribute_map
Title : slot_attribute_map
Usage :
Function: Get/set the mapping for each entity from object slot names to column
names.
Example :
Returns : A reference to a hash map with entity names being the keys, if no
lib/Bio/DB/Persistent/ObjectRelMapperI.pm view on Meta::CPAN
corresponding column names.
Args : Optionally, the object, adaptor, or entity for which to obtain
the map.
Optionally, on set a reference to a hash map satisfying the features
of the returned value.
=cut
sub slot_attribute_map{
shift->throw_not_implemented();
}
1;
lib/Bio/DB/PersistentObjectI.pm view on Meta::CPAN
Args : Optionally, additional named parameters. A common parameter will
be -fkobjs, with a reference to an array of foreign key objects
that are not retrievable from the persistent object itself.
=cut
sub create{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 store
Title : store
Usage : $obj->store()
Function: Updates the persistent object in the datastore to reflect its
attribute values.
Example :
Returns : TRUE on success and FALSE otherwise
Args : Optionally, additional named parameters. A common parameter will
be -fkobjs, with a reference to an array of foreign key objects
that are not retrievable from the persistent object itself.
=cut
sub store{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 remove
Title : remove
Usage : $obj->remove()
Function: Removes the persistent object from the datastore.
Example :
Returns : TRUE on success and FALSE otherwise
Args : none
=cut
sub remove{
my ($self,@args) = @_;
$self->throw_not_implemented();
}
=head2 primary_key
Title : primary_key
Usage : $obj->primary_key($newval)
Function: Get the primary key of the persistent object in the datastore.
Note that an implementation may not permit changing the
primary key once it has been set. For most applications,
lib/Bio/DB/PersistentObjectI.pm view on Meta::CPAN
Example :
Returns : value of primary_key (a scalar)
Args : new value (a scalar, optional)
=cut
sub primary_key{
my ($self,$value) = @_;
$self->throw_not_implemented();
}
=head2 obj
Title : obj
Usage : $obj->obj()
Function: Get/set the object that is made persistent through this adaptor.
Note that an implementation is not required to allow
setting a value. In fact, an implementation is encouraged
lib/Bio/DB/PersistentObjectI.pm view on Meta::CPAN
Example :
Returns : The object made persistent through this adaptor
Args : On set, the new value. Read above for caveat.
=cut
sub obj{
my ($self,$value) = @_;
$self->throw_not_implemented();
}
=head1 Methods for transactional control
Rollback and commit
=cut
=head2 commit
lib/Bio/DB/PersistentObjectI.pm view on Meta::CPAN
Function: Commits the current transaction, if the underlying driver
supports transactions.
Example :
Returns : TRUE
Args : none
=cut
sub commit{
shift->throw_not_implemented();
}
=head2 rollback
Title : rollback
Usage :
Function: Triggers a rollback of the current transaction, if the
underlying driver supports transactions.
Example :
Returns : TRUE
Args : none
=cut
sub rollback{
shift->throw_not_implemented();
}
=head1 Decorating methods
These methods aren't intrinsically necessary on this interface, but
rather ease recurrent tasks when serializing objects and translate
from object model to relational model.
=cut
lib/Bio/DB/PersistentObjectI.pm view on Meta::CPAN
much effort.
Example :
Returns : value of rank (a scalar)
Args : new value (a scalar or undef, optional)
=cut
sub rank{
shift->throw_not_implemented();
}
=head2 foreign_key_slot
Title : foreign_key_slot
Usage : $obj->foreign_key_slot($newval)
Function: Get/set of the slot name that is referring to this persistent
object as a foreign key.
This should come in a fully-qualified form. The fully qualified
lib/Bio/DB/PersistentObjectI.pm view on Meta::CPAN
tampering with it.
Example :
Returns : value of foreign_key_slot (a scalar)
Args : new value (a scalar or undef, optional)
=cut
sub foreign_key_slot{
shift->throw_not_implemented();
}
1;
lib/Bio/DB/Query/QueryResultI.pm view on Meta::CPAN
Usage :
Function: Obtain the next object from the result stream and return it.
Example :
Returns : A Bioperl object (implementing at least Bio::Root::RootI)
Args : none
=cut
sub next_object{
shift->throw_not_implemented();
}
=head2 each_Object
Title : each_Object
Usage :
Function: This is primarily a convenience method and in most implementations
will just loop over next_object() and return an array of all
objects.
Example :
Returns : A reference to an array of objects.
Args : Optionally, an anonymous function for filtering objects. If given,
the function is passed one argument, the object to evaluate.
The object will be included in the returned array if the function
returns TRUE, and rejected otherwise.
=cut
sub each_Object{
shift->throw_not_implemented();
}
=head2 finish
Title : finish
Usage :
Function: Indicate being finished with this result so that possibly used
system resources can be released.
Example :
Returns : none
Args : none
=cut
sub finish{
shift->throw_not_implemented();
}
1;
t/data/AP000868.gb view on Meta::CPAN
repeat_region 46607..47082
/note="LOR1a: matches 1 to 497 of consensus"
misc 1..19151
/note="Component DNA fragment"
/note="accession=AP002765.3"
/note="start=159020"
/note="end=178170"
/note="orientation=1"
variation complement(2261..2261)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:552820"
/db_xref="HGBASE:SNP000375829"
variation 6896..6896
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:475710"
/db_xref="HGBASE:SNP000368989"
variation 8597..8597
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:552467"
/db_xref="HGBASE:SNP001202646"
variation 9185..9185
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:557862"
/db_xref="HGBASE:SNP000376288"
variation 9242..9242
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:558021"
/db_xref="HGBASE:SNP000843781"
variation complement(9593..9593)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:655756"
/db_xref="HGBASE:SNP000458091"
variation 10744..10744
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:503766"
/db_xref="HGBASE:SNP000076194"
variation complement(11324..11324)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:627134"
/db_xref="HGBASE:SNP000501198"
variation complement(11580..11580)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:625888"
/db_xref="HGBASE:SNP000410419"
variation complement(12055..12055)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:623707"
variation complement(12298..12298)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1791700"
/db_xref="HGBASE:SNP000404217"
/db_xref="TSC-CSHL:TSC0947239"
variation 15872..15872
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2276410"
prediction join(complement(15914..16090))
variation 16640..16640
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2282646"
/db_xref="HGBASE:SNP001239633"
variation 17550..17550
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2126708"
/db_xref="HGBASE:SNP001310527"
/db_xref="TSC-CSHL:TSC1134267"
misc 19152..181589
/note="Component DNA fragment"
/note="accession=AP000868.4"
/note="start=19153"
/note="end=181590"
/note="orientation=1"
variation 19560..19560
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2126709"
/db_xref="HGBASE:SNP001310528"
/db_xref="TSC-CSHL:TSC1134268"
variation complement(19688..19688)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:10904"
/db_xref="HGBASE:SNP000017373"
variation complement(22574..22574)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2282644"
/db_xref="HGBASE:SNP001241241"
variation complement(23148..23148)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:663471"
/db_xref="HGBASE:SNP000668983"
variation complement(23159..23159)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1720331"
/db_xref="HGBASE:SNP000606798"
variation complement(23419..23419)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:671898"
/db_xref="HGBASE:SNP000519992"
variation complement(24698..24698)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2282643"
/db_xref="HGBASE:SNP001357715"
prediction join(complement(24827..25228),complement(23955..24249),
complement(23394..23554),complement(22473..22662),
complement(21816..21935),complement(20460..21331))
variation complement(25549..25549)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2282642"
/db_xref="HGBASE:SNP001241241"
variation complement(25566..25566)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2282641"
/db_xref="HGBASE:SNP001241241"
variation complement(26578..26578)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1880058"
/db_xref="HGBASE:SNP000858034"
/db_xref="TSC-CSHL:TSC0891347"
variation complement(28686..28686)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1791715"
/db_xref="HGBASE:SNP000423743"
variation complement(29269..29269)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:682246"
variation complement(32214..32214)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1940185"
/db_xref="HGBASE:SNP000860124"
/db_xref="TSC-CSHL:TSC1009511"
variation complement(33267..33267)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1557429"
/db_xref="HGBASE:SNP000400840"
/db_xref="TSC-CSHL:TSC0444634"
variation complement(33395..33395)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1557428"
/db_xref="HGBASE:SNP000400839"
/db_xref="TSC-CSHL:TSC0444633"
variation complement(33396..33396)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1557427"
/db_xref="HGBASE:SNP000400838"
/db_xref="TSC-CSHL:TSC0444632"
variation complement(33424..33424)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1557426"
/db_xref="HGBASE:SNP000400837"
/db_xref="TSC-CSHL:TSC0444631"
variation complement(33565..33565)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1557425"
/db_xref="HGBASE:SNP000400836"
/db_xref="TSC-CSHL:TSC0444630"
variation 34696..34696
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1939924"
/db_xref="HGBASE:SNP000859985"
/db_xref="TSC-CSHL:TSC1009047"
variation 34809..34809
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1939925"
/db_xref="HGBASE:SNP000859986"
/db_xref="TSC-CSHL:TSC1009048"
variation complement(34928..34928)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1893061"
/db_xref="HGBASE:SNP000858271"
/db_xref="TSC-CSHL:TSC0919478"
variation 35738..35738
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2091068"
/db_xref="HGBASE:SNP001309950"
/db_xref="TSC-CSHL:TSC1312336"
variation 35970..35970
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:2272142"
/db_xref="HGBASE:SNP001314474"
variation 37832..37832
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1940191"
/db_xref="HGBASE:SNP000860129"
/db_xref="TSC-CSHL:TSC1009519"
variation complement(40576..40576)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:629647"
/db_xref="HGBASE:SNP000763754"
variation complement(40807..40807)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:628708"
/db_xref="HGBASE:SNP000111700"
variation complement(40856..40856)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:634148"
/db_xref="HGBASE:SNP000528519"
variation complement(40872..40872)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:607154"
/db_xref="HGBASE:SNP000380635"
variation complement(42902..42902)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1148082"
variation complement(42996..42996)
/replace=""
/evidence="not_experimental"
/db_xref="dbSNP:1291089"
/db_xref="HGBASE:SNP000157115"
BASE COUNT 52693 a 34921 c 36093 g 57882 t
ORIGIN
1 gaattcagtt gctggctctg ccacttactt ctgagtggcc tcaaattttg taacctctct
61 ggttaaaatc agctgttttc caattgacct tagccctggc ctttgctaac attaaatgag
121 tgttgtcacc actctaagct ttaattcctt cacatagaaa atgaagagat tggatagacc
181 agacaattgc cacatcccct tccaaatcca ggattctata gttctagtag gaagcaagga
241 aacaaaacat ttcagtttat tgtttggtat aaatgaatca tcttcttctt tgaagtcctt
301 gttaatcaac tttcccataa gccagaattc atcactccca ctgggccttg tgaaaatggg
t/lib/Test/Harness/Straps.pm view on Meta::CPAN
if ( $point ) {
$linetype = 'test';
$results->inc_seen;
$point->set_number( $self->{'next'} ) unless $point->number;
# sometimes the 'not ' and the 'ok' are on different lines,
# happens often on VMS if you do:
# print "not " unless $test;
# print "ok $num\n";
if ( $self->{lone_not_line} && ($self->{lone_not_line} == $self->{line} - 1) ) {
$point->set_ok( 0 );
}
if ( $self->{todo}{$point->number} ) {
$point->set_directive_type( 'todo' );
}
if ( $point->is_todo ) {
$results->inc_todo;
$results->inc_bonus if $point->ok;
t/lib/Test/Harness/Straps.pm view on Meta::CPAN
};
assert( defined( $details->{ok} ) && defined( $details->{actual_ok} ) );
$results->set_details( $point->number, $details );
}
} # test point
elsif ( $line =~ /^not\s+$/ ) {
$linetype = 'other';
# Sometimes the "not " and "ok" will be on separate lines on VMS.
# We catch this and remember we saw it.
$self->{lone_not_line} = $self->{line};
}
elsif ( $self->_is_header($line) ) {
$linetype = 'header';
$self->{saw_header}++;
$results->inc_max( $self->{max} );
}
elsif ( $self->_is_bail_out($line, \$self->{bailout_reason}) ) {
$linetype = 'bailout';
t/lib/Test/Harness/Straps.pm view on Meta::CPAN
=cut
sub _reset_file_state {
my($self) = shift;
delete @{$self}{qw(max skip_all todo too_many_tests)};
$self->{line} = 0;
$self->{saw_header} = 0;
$self->{saw_bailout}= 0;
$self->{lone_not_line} = 0;
$self->{bailout_reason} = '';
$self->{'next'} = 1;
}
=head1 EXAMPLES
See F<examples/mini_harness.plx> for an example of use.
=head1 AUTHOR
t/lib/Test/More.pm view on Meta::CPAN
local %Refs_Seen = %Refs_Seen;
{
# Quiet uninitialized value warnings when comparing undefs.
local $^W = 0;
$tb->_unoverload_str(\$e1, \$e2);
# Either they're both references or both not.
my $same_ref = !(!ref $e1 xor !ref $e2);
my $not_ref = (!ref $e1 and !ref $e2);
if( defined $e1 xor defined $e2 ) {
$ok = 0;
}
elsif ( $e1 == $DNE xor $e2 == $DNE ) {
$ok = 0;
}
elsif ( $same_ref and ($e1 eq $e2) ) {
$ok = 1;
}
elsif ( $not_ref ) {
push @Data_Stack, { type => '', vals => [$e1, $e2] };
$ok = 0;
}
else {
if( $Refs_Seen{$e1} ) {
return $Refs_Seen{$e1} eq $e2;
}
else {
$Refs_Seen{$e1} = "$e2";
}