NAME

Mojo::PgX::Cursor::Results

SYNOPSIS

DESCRIPTION

Mojo::PgX::Cursor::Results is a container for a Mojo::PgX::Cursor::Cursor like Mojo::Pg::Results is for a statement handle. Therefore it tries to mimic the API of Mojo::Pg::Results whereever it makes sense to do do.

Mojo::PgX::Cursor::Results should behave like Mojo::Pg::Results for array, columns, hash, and expand.

Mojo::PgX::Cursor::Results does not support hashes or arrays since if you wish to use those you should just use query instead. Also note, rows returns the number of rows in the current iteration not the total rows for the query.

ATTRIBUTES

cursor

my $cursor = $results->cursor;
$results = $results->cursor($cursor);

The Mojo::PgX::Cursor::Cursor rows are fetched from.

fetch

$results->fetch(10);

The quantity of rows to fetch in each iteration. Since the next iteration is always pre-fetched up to twice this many rows will be in memory at any given time. Set this to optimize for time or memory in your specific use case.

Defaults to 100.

seconds_blocked

my $time_wasted = $results->seconds_blocked;

The cumulative time the cursor has spent waiting for rows.

METHODS

array

my $row = $results->array;

Return next row from "cursor" as an array reference.

columns

my $columns = $results->columns;

Return column names as an array reference.

expand

$results = $results->expand;

Decode json and jsonb fields automatically for all rows.

hash

my $row = $results->hash;

Return next row from "cursor" as a hash reference.

new

my $results = Mojo::PgX::Cursor::Results->new(cursor => $cursor);

Construct a new Mojo::PgX::Cursor::Results object.

rows

my $num = $results->rows;

Number of rows in current iteration; not the total for the original query.

LICENSE

Copyright (C) Nathaniel Nutter.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Nathaniel Nutter nnutter@cpan.org

SEE ALSO

Mojo::PgX::Cursor, Mojo::PgX::Cursor::Cursor, Mojo::PgX::Cursor::Database