Object-oriented spelling of the db_* operations: call db%insert(...)
is exactly call db_insert(db, ...). The free db_* procedures remain
public and callable unchanged; these bindings are a thin alternative
face on the same module procedures (which is why the passed-object
db argument is class(db_t) throughout).