26 out <<
"#ifndef JOEDB_INTROSPECTION\n";
28 if (db.get_freedom(tid).size() > 0)
29 out <<
"#define JOEDB_INTROSPECTION(field_type, field_name, initial)\n";
31 out <<
"#define JOEDB_INTROSPECTION(field_type, field_name)\n";
35 for (
const auto &[fid, fname]: db.get_fields(table.first))
37 out <<
"JOEDB_INTROSPECTION(";
39 const joedb::Type &type = db.get_field_type(tid, fid);
41 if (type.
get_type_id() == joedb::Type::Type_Id::boolean)
45 if (type.
get_type_id() == joedb::Type::Type_Id::reference)
55 if (db.get_freedom(tid).size() > 0)
58 const Record_Id record_id{db.get_freedom(tid).get_first_used() - 1};
64 out <<
"\n#undef JOEDB_INTROSPECTION\n";