Skip to content

First Native app

This example uses the C++ SDK.

#include <barq_native/sdk.hpp>
using namespace barq;
struct Dog {
std::string name;
int64_t age;
};
BARQ_SCHEMA(Dog, name, age)
int main() {
db_config config;
auto database = db(std::move(config));
auto dog = Dog{.name = "Rex", .age = 1};
auto managed_dog = database.write([&] {
return database.add(std::move(dog));
});
}
Terminal window
cd native
cmake -S . -B build -DBARQ_NATIVE_NO_TESTS=ON
cmake --build build --target barq_native
  • BARQ_SCHEMA() declares stored fields.
  • db_config holds open options.
  • db opens the database.
  • database.write() runs a write transaction.
  • database.add() stores an object and returns a managed object.