diff options
author | Bob131 | 2021-09-02 07:14:37 +1000 |
---|---|---|
committer | Arun Isaac | 2021-09-07 01:23:59 +0530 |
commit | 3e74ce5db678ab36178920a7d071b408e4ea2efe (patch) | |
tree | 07d1fe590f820a9a050d71c0410086fb6900fffe /xapian/xapian.scm | |
parent | e95d5405593176df126d0b5d0c83d4ce71f4ac24 (diff) | |
download | guile-xapian-3e74ce5db678ab36178920a7d071b408e4ea2efe.tar.gz guile-xapian-3e74ce5db678ab36178920a7d071b408e4ea2efe.tar.lz guile-xapian-3e74ce5db678ab36178920a7d071b408e4ea2efe.zip |
Add SWIG wrappers for bytevector method variants.
Several Xapian methods use `std::string' to represent opaque binary
blobs. SWIG treats these as UTF-8 strings and converts them to an SCM
representation via `scm_from_utf8_string', which will throw an error
if the input is not valid UTF-8.
This commit updates the SWIG interface file to add wrappers taking or
returning bytevectors instead of strings for Xapian methods dealing
with document values and bodies.
* xapian.i.in (SWIG_bytevector, typemap_in_SWIG_bytevector,
typemap_out_SWIG_bytevector): Add machinery for defining
bytevector-variant wrappers of existing methods taking or returning
std::string.
* (Xapian::ValueIterator::get_value_bytes,
Xapian::Document::get_value_bytes, Xapian::Document::add_value_bytes,
Xapian::Document::get_data_bytes, Xapian::Document::set_data_bytes,
Xapian::Database::get_metadata_bytes,
Xapian::WritableDatabase::set_metadata_bytes,
Xapian::Query::Query): Add bytevector variants of methods.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
Diffstat (limited to 'xapian/xapian.scm')
0 files changed, 0 insertions, 0 deletions