NAME
Astro::STSDAS::Table::Columns - Container for table columns
SYNOPSIS
use Astro::STSDAS::Table::Columns;
DESCRIPTION
Astro::STSDAS::Table::Columns is a container for a set of Astro::STSDAS::Table::Column objects.
Column names are stored as mixed case, but case is ignored when searching by name. All methods which return column names return them as stored (i.e. in mixed case).
Methods
- new
-
$cols = Astro::STSDAS::Table::Columns->new;
The constructor. It takes no arguments.
- ncols
-
$ncols = $cols->ncols
The number of columns in the container
- add
-
$newcol = $cols->add( ... )
Add a column to the container. It takes the same arguments as the Astro::STSDAS::Table::Column constructor. It returns a reference to the new column object.
- del
-
$cols->del( $col )
Delete the passed Astro::STSDAS::Table::Column object from the container. It returns
1
if successful,0
if not. - delbyname
-
Delete the named column from the container. It returns
1
if successful,0
if not. - byidx
-
$col = $cols->byidx( $idx );
return the column with the specified zero-based index in the list of columns.
- byname
-
$col = $cols->byname( $name );
return the column with the specified name.
- cols
-
@cols = $cols->cols;
returns a list of the columns (as Astro::STSDAS::Table::Column objects) sorted on column index.
- names
-
@names = $cols->names;
returns a list of column names, sorted on column index.
- rename
-
$cols->rename( $oldname, $newname );
Rename the named column. It is important to use this method rather than a column's name method, to ensure the integrity of the container.
- copy
-
$new_cols = $cols->copy;
This returns a new Astro::STSDAS::Table::Columns object which is a copy of the current object. The contained Astro::STSDAS::Table::Column objects are copies of the originals.
EXPORT
None by default.
LICENSE
This software is released under the GNU General Public License. You may find a copy at
http://www.fsf.org/copyleft/gpl.html
AUTHOR
Diab Jerius (djerius@cpan.org)
SEE ALSO
Astro::STSDAS::Table, Astro::STSDAS::Table::Column, perl(1).