LICENSE

Copyright [1999-2015] Wellcome Trust Sanger Institute and the EMBL-European Bioinformatics Institute Copyright [2016-2024] EMBL-European Bioinformatics Institute

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

CONTACT

Please email comments or questions to the public Ensembl
developers list at <http://lists.ensembl.org/mailman/listinfo/dev>.

Questions may also be sent to the Ensembl help desk at
<http://www.ensembl.org/Help/Contact>.

NAME

Bio::EnsEMBL::Utils::ScriptUtils;

SYNOPSIS

DESCRIPTION

METHODS

user_proceed

Arg[1]      : (optional) String $text - notification text to present to user
Example     : # run a code snipped conditionally
              if ($support->user_proceed("Run the next code snipped?")) {
                  # run some code
              }

              # exit if requested by user
              exit unless ($support->user_proceed("Want to continue?"));
Description : If running interactively, the user is asked if he wants to
              perform a script action. If he doesn't, this section is skipped
              and the script proceeds with the code. When running
              non-interactively, the section is run by default.
Return type : TRUE to proceed, FALSE to skip.
Exceptions  : none
Caller      : general

sort_chromosomes

Arg[1]      : (optional) Hashref $chr_hashref - Hashref with chr_name as keys
Example     : my $chr = { '6-COX' => 1, '1' => 1, 'X' => 1 };
              my @sorted = $support->sort_chromosomes($chr);
Description : Sorts chromosomes in an intuitive way (numerically, then
              alphabetically). If no chromosome hashref is passed, it's
              retrieve by calling $self->get_chrlength()
Return type : List - sorted chromosome names
Exceptions  : thrown if no hashref is provided
Caller      : general

_by_chr_num

Example     : my @sorted = sort _by_chr_num qw(X, 6-COX, 14, 7);
Description : Subroutine to use in sort for sorting chromosomes. Sorts
              numerically, then alphabetically
Return type : values to be used by sort
Exceptions  : none
Caller      : internal ($self->sort_chromosomes)

commify

Arg[1]      : Int $num - a number to commify
Example     : print "An easy to read number: ".$self->commify(100000000);
              # will print 100,000,000
Description : put commas into a number to make it easier to read
Return type : a string representing the commified number
Exceptions  : none
Caller      : general
Status      : stable

inject

Arg [1]    : String $classname - The name of the class to require/import
Example    : $self->inject('Bio::EnsEMBL::DBSQL::DBAdaptor');
Description: Requires and imports the methods for the classname provided,
             checks the symbol table so that it doesnot re-require modules
             that have already been required.
Returntype : true on success
Exceptions : Warns to standard error if module fails to compile
Caller     : internal