Boost logo

Boost :

From: Дмитрий Архипов (grisumbras_at_[hidden])
Date: 2024-11-14 16:07:52


чт, 14 нояб. 2024 г. в 16:13, Klemens Morgenstern via Boost
<boost_at_[hidden]>:
> If you create an extension, you'll need to call into the database differently
> using the indirections in sqlite3ext.h.
> In order to avoid conflicts, this library puts everything you include into
> an inline namespace (sqlite::ext), to avoid linker issues.
>
> That way you get access to the host db with the same API, but the
> internal calls are different,
> so you'll need to link to sqlite3-ext.
>
> You can then use a regular sqlite3 library from the same binary, but
> not the same TU.
> If you accidentally include boost/sqlite in both modes, but only link
> one you'll get linker errors.

All of this should be in the documentation.

> I don't exactly know what you mean here. You can use pfr in C++20 for
> a static_result_set (and describe for earlier standards).

Boost.PFR is a C++14 library, so I don't understand where the C++20
restriction comes from.

> I don't think I fully understand. What would `f`/`this` be pointing to
> when `step` gets called?

This is a simplified implementation of what I meant:
https://godbolt.org/z/Mb5eqfvW4. Here, the state of the aggregate
function is stored in the object whose member functions are called,
and also the arguments are passed separately.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk