ext/duckdb/result.c in duckdb-0.0.5 vs ext/duckdb/result.c in duckdb-0.0.6
- old
+ new
@@ -14,41 +14,48 @@
{
rubyDuckDBResult *ctx = xcalloc((size_t)1, sizeof(rubyDuckDBResult));
return Data_Wrap_Struct(klass, NULL, deallocate, ctx);
}
-static VALUE to_ruby_obj_boolean(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj_boolean(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
bool bval = duckdb_value_boolean(result, col_idx, row_idx);
return bval ? Qtrue : Qnil;
}
-static VALUE to_ruby_obj_smallint(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj_smallint(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
int16_t i16val = duckdb_value_int16(result, col_idx, row_idx);
return INT2FIX(i16val);
}
-static VALUE to_ruby_obj_integer(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj_integer(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
int32_t i32val = duckdb_value_int32(result, col_idx, row_idx);
return INT2NUM(i32val);
}
-static VALUE to_ruby_obj_bigint(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj_bigint(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
int64_t i64val = duckdb_value_int64(result, col_idx, row_idx);
return rb_int2big(i64val);
}
-static VALUE to_ruby_obj_float(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj_float(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
float fval = duckdb_value_float(result, col_idx, row_idx);
return DBL2NUM(fval);
}
-static VALUE to_ruby_obj_double(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj_double(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
double dval = duckdb_value_double(result, col_idx, row_idx);
return DBL2NUM(dval);
}
-static VALUE to_ruby_obj(duckdb_result *result, size_t col_idx, size_t row_idx) {
+static VALUE to_ruby_obj(duckdb_result *result, index_t col_idx, index_t row_idx)
+{
char *p;
VALUE obj = Qnil;
if (result->columns[col_idx].nullmask[row_idx]) {
return obj;
}
@@ -71,39 +78,43 @@
free(p);
}
return obj;
}
-static VALUE row_array(rubyDuckDBResult *ctx, size_t row_idx) {
- size_t col_idx;
+static VALUE row_array(rubyDuckDBResult *ctx, index_t row_idx)
+{
+ index_t col_idx;
VALUE ary = rb_ary_new2(ctx->result.column_count);
for(col_idx = 0; col_idx < ctx->result.column_count; col_idx++) {
rb_ary_store(ary, col_idx, to_ruby_obj(&(ctx->result), col_idx, row_idx));
}
return ary;
}
-static VALUE duckdb_result_row_size(VALUE oDuckDBResult, VALUE args, VALUE obj) {
+static VALUE duckdb_result_row_size(VALUE oDuckDBResult, VALUE args, VALUE obj)
+{
rubyDuckDBResult *ctx;
Data_Get_Struct(oDuckDBResult, rubyDuckDBResult, ctx);
return LONG2FIX(ctx->result.row_count);
}
-static VALUE duckdb_result_each(VALUE oDuckDBResult) {
+static VALUE duckdb_result_each(VALUE oDuckDBResult)
+{
rubyDuckDBResult *ctx;
- size_t row_idx = 0;
+ index_t row_idx = 0;
RETURN_SIZED_ENUMERATOR(oDuckDBResult, 0, 0, duckdb_result_row_size);
Data_Get_Struct(oDuckDBResult, rubyDuckDBResult, ctx);
for (row_idx = 0; row_idx < ctx->result.row_count; row_idx++) {
rb_yield(row_array(ctx, row_idx));
}
return oDuckDBResult;
}
-VALUE create_result(void) {
+VALUE create_result(void)
+{
return allocate(cDuckDBResult);
}
void init_duckdb_result(void)
{