Represents a single match of a DQL query, similar to a "row" in SQL terms. It is a reference type serving as a "cursor", allowing for efficient access of the underlying data in various formats. More...
Public Member Functions | |
| std::shared_ptr< ValueMap > | value () const |
| Returns the content as a materialized value map. | |
| bool | is_materialized () const |
Returns true if value is currently held materialized in memory, otherwise returns false. | |
| void | materialize () |
Loads the CBOR representation of the item's content, decodes it as a dictionary so it can be accessed via value(). Keeps the nlohman::json in memory until dematerialize() is called. No-op if value is already materialized. | |
| void | dematerialize () |
| Releases the materialized value from memory. No-op if item is not materialized. | |
| std::vector< uint8_t > | cbor_data () const |
| Returns the content of the item as CBOR data. | |
| std::string | json_string () const |
| Returns the content of the item as a JSON string. | |
Represents a single match of a DQL query, similar to a "row" in SQL terms. It is a reference type serving as a "cursor", allowing for efficient access of the underlying data in various formats.
| std::vector< uint8_t > ditto::QueryResultItem::cbor_data | ( | ) | const |
Returns the content of the item as CBOR data.
| void ditto::QueryResultItem::dematerialize | ( | ) |
Releases the materialized value from memory. No-op if item is not materialized.
C++ note: this mutates the object and is thus not thread-safe.
| bool ditto::QueryResultItem::is_materialized | ( | ) | const |
| std::string ditto::QueryResultItem::json_string | ( | ) | const |
Returns the content of the item as a JSON string.
| void ditto::QueryResultItem::materialize | ( | ) |
Loads the CBOR representation of the item's content, decodes it as a dictionary so it can be accessed via value(). Keeps the nlohman::json in memory until dematerialize() is called. No-op if value is already materialized.
C++ note: this mutates the object and is thus not thread-safe.
| std::shared_ptr< ValueMap > ditto::QueryResultItem::value | ( | ) | const |
Returns the content as a materialized value map.
The item's value is materialize()-ed on first access and subsequently on each access after performing dematerialize(). Once materialized, the value is kept in memory until explicitly dematerialize()-ed or the item goes out of scope.
Note: This property is very similar to
Document.value().
C++ note: this mutates the object, but in a synchronized thread-safe fashion.