Class: ArrowDuckDB::Result
- Inherits:
-
Object
- Object
- ArrowDuckDB::Result
- Includes:
- Enumerable
- Defined in:
- lib/arrow-duckdb/result.rb,
ext/arrow-duckdb/arrow-duckdb.cpp
Instance Method Summary collapse
- #each ⇒ Object
- #fetch ⇒ Object
- #n_changed_rows ⇒ Object
- #n_columns ⇒ Object
- #n_rows ⇒ Object
- #schema ⇒ Object
- #to_table ⇒ Object
Instance Method Details
#each ⇒ Object
160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 |
# File 'ext/arrow-duckdb/arrow-duckdb.cpp', line 160 VALUE result_each(VALUE self) { RETURN_ENUMERATOR(self, 0, 0); Result *result; TypedData_Get_Struct(self, Result, &result_type, result); result_ensure_gschema(result); while (true) { auto record_batch = result_fetch_internal(self, result); if (NIL_P(record_batch)) { break; } rb_yield(record_batch); } return self; } |
#fetch ⇒ Object
149 150 151 152 153 154 155 156 157 158 |
# File 'ext/arrow-duckdb/arrow-duckdb.cpp', line 149 VALUE result_fetch(VALUE self) { Result *result; TypedData_Get_Struct(self, Result, &result_type, result); result_ensure_gschema(result); return result_fetch_internal(self, result); } |
#n_changed_rows ⇒ Object
210 211 212 213 214 215 216 217 |
# File 'ext/arrow-duckdb/arrow-duckdb.cpp', line 210 VALUE result_n_changed_rows(VALUE self) { Result *result; TypedData_Get_Struct(self, Result, &result_type, result); return ULL2NUM(duckdb_arrow_rows_changed(result->arrow)); } |
#n_columns ⇒ Object
192 193 194 195 196 197 198 199 |
# File 'ext/arrow-duckdb/arrow-duckdb.cpp', line 192 VALUE result_n_columns(VALUE self) { Result *result; TypedData_Get_Struct(self, Result, &result_type, result); return ULL2NUM(duckdb_arrow_column_count(result->arrow)); } |
#n_rows ⇒ Object
201 202 203 204 205 206 207 208 |
# File 'ext/arrow-duckdb/arrow-duckdb.cpp', line 201 VALUE result_n_rows(VALUE self) { Result *result; TypedData_Get_Struct(self, Result, &result_type, result); return ULL2NUM(duckdb_arrow_row_count(result->arrow)); } |
#schema ⇒ Object
181 182 183 184 185 186 187 188 189 190 |
# File 'ext/arrow-duckdb/arrow-duckdb.cpp', line 181 VALUE result_schema(VALUE self) { Result *result; TypedData_Get_Struct(self, Result, &result_type, result); result_ensure_gschema(result); return GOBJ2RVAL(result->gschema); } |
#to_table ⇒ Object
17 18 19 |
# File 'lib/arrow-duckdb/result.rb', line 17 def to_table Arrow::Table.new(schema, to_a) end |