#include "net_drizzle.h"
=head1 NAME
Net::Drizzle::Column - Column object for Net::Drizzle
=head1 METHODS
=over 4
=cut
MODULE = Net::Drizzle::Column PACKAGE = Net::Drizzle::Column
VERSIONCHECK: DISABLE
const char*
catalog(SV*self)
CODE:
/**
* my $catalog = $column->catalog;
*
* Get catalog for a column.
*
*/
const char *ret = drizzle_column_catalog((XS_STATE(net_col*, self))->col);
if (ret != NULL) {
RETVAL = ret;
} else {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
SV*
set_catalog(SV*self, const char* arg)
CODE:
/**
* my $catalog = $column->catalog;
*
* Set catalog for a column.
*
*/
drizzle_column_set_catalog((XS_STATE(net_col*, self))->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
const char*
db(SV*self)
CODE:
/**
* my $db = $column->db;
*
* Get db for a column.
*
*/
const char *ret = drizzle_column_db((XS_STATE(net_col*, self))->col);
if (ret != NULL) {
RETVAL = ret;
} else {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
SV*
set_db(SV*self, const char* arg)
CODE:
/**
* my $db = $column->db;
*
* Set db for a column.
*
*/
drizzle_column_set_db((XS_STATE(net_col*, self))->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
const char*
table(SV*self)
CODE:
/**
* my $table = $column->table;
*
* Get table for a column.
*
*/
const char *ret = drizzle_column_table((XS_STATE(net_col*, self))->col);
if (ret != NULL) {
RETVAL = ret;
} else {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
SV*
set_table(SV*self, const char* arg)
CODE:
/**
* my $table = $column->table;
*
* Set table for a column.
*
*/
drizzle_column_set_table((XS_STATE(net_col*, self))->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
const char*
orig_table(SV*self)
CODE:
/**
* my $orig_table = $column->orig_table;
*
* Get orig_table for a column.
*
*/
const char *ret = drizzle_column_orig_table((XS_STATE(net_col*, self))->col);
if (ret != NULL) {
RETVAL = ret;
} else {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
SV*
set_orig_table(SV*self, const char* arg)
CODE:
/**
* my $orig_table = $column->orig_table;
*
* Set orig_table for a column.
*
*/
drizzle_column_set_orig_table((XS_STATE(net_col*, self))->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
const char*
name(SV*self)
CODE:
/**
* my $name = $column->name;
*
* Get name for a column.
*
*/
const char *ret = drizzle_column_name((XS_STATE(net_col*, self))->col);
if (ret != NULL) {
RETVAL = ret;
} else {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
SV*
set_name(SV*self, const char* arg)
CODE:
/**
* my $name = $column->name;
*
* Set name for a column.
*
*/
drizzle_column_set_name((XS_STATE(net_col*, self))->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
const char*
orig_name(SV*self)
CODE:
/**
* my $orig_name = $column->orig_name;
*
* Get orig_name for a column.
*
*/
const char *ret = drizzle_column_orig_name((XS_STATE(net_col*, self))->col);
if (ret != NULL) {
RETVAL = ret;
} else {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
SV*
set_orig_name(SV*self, const char* arg)
CODE:
/**
* my $orig_name = $column->orig_name;
*
* Set orig_name for a column.
*
*/
drizzle_column_set_orig_name((XS_STATE(net_col*, self))->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
=item set_charset
Set charset for column.
=cut
SV*
set_charset(SV*self, U8 arg)
CODE:
drizzle_column_set_charset(XS_STATE(net_col*, self)->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
=item set_size
Set size for column.
=cut
SV*
set_size(SV*self, U32 arg)
CODE:
drizzle_column_set_size(XS_STATE(net_col*, self)->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
=item set_type
Set type for column.
=cut
SV*
set_type(SV*self, int arg)
CODE:
drizzle_column_set_type(XS_STATE(net_col*, self)->col, arg);
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
=item write
Write column information.
=back
=cut
SV*
write(SV * self)
CODE:
net_col *col = XS_STATE(net_col*, self);
drizzle_result_st * result = drizzle_column_drizzle_result(col->col);
drizzle_return_t ret = drizzle_column_write(result, col->col);
if (ret != DRIZZLE_RETURN_OK) {
drizzle_con_st * con = drizzle_result_drizzle_con(result);
drizzle_st * drizzle = drizzle_con_drizzle(con);
Perl_croak(aTHX_ "drizzle_column_write:%s\n", drizzle_error(drizzle));
}
RETVAL = SvREFCNT_inc(self);
OUTPUT:
RETVAL
void
DESTROY(net_col *self)
CODE:
/**
* Destructor.
*/
LOG("DESTROY column 0x%X\n", (unsigned int)self->drizzle);
if (self->drizzle != NULL) {
SvREFCNT_dec(self->drizzle);
}
if (self->con != NULL) {
SvREFCNT_dec(self->con);
}
if (self->result != NULL) {
SvREFCNT_dec(self->result);
}
Safefree(self);
=head1 SEE ALSO
L<Net::Drizzle>
=cut