aboutsummaryrefslogtreecommitdiff
path: root/xapian
AgeCommit message (Collapse)Author
2023-01-20Catch C++ xapian exceptions and raise them as scheme exceptions.Arun Isaac
Uncaught C++ exceptions crash the guile process without providing scheme code any opportunity to respond. * except.i, xapian/error.scm: New files. * xapian.i.in: Include except.i. * Makefile.am (SOURCES): Add xapian/error.scm. (xapian_wrap.cc xapian/wrap.scm &): Depend on except.i.
2022-10-18xapian: Allow indexing text without position information.Arun Isaac
* xapian/xapian.scm (index-text!): Add positions? argument.
2022-10-17xapian: Explicitly specify default prefix for index-text!.Arun Isaac
* xapian/xapian.scm (index-text!): Explicitly specify default prefix.
2022-10-17xapian: Add docstring to index-text!.Arun Isaac
* xapian/xapian.scm (index-text!): Add docstring.
2022-10-17xapian: Support combining queries with OR, AND and FILTER operators.Arun Isaac
* xapian/xapian.scm: Import (srfi srfi-1). (query-combine): New function. (query-and, query-or, query-filter): New public functions.
2022-10-17xapian: Support generation of SXML snippets.Arun Isaac
* xapian/xapian.scm: Import (htmlprag). (mset-sxml-snippet): New public function.
2022-10-17xapian: Add docstring to mset-snippet.Arun Isaac
* xapian/xapian.scm (mset-snippet): Add docstring.
2022-06-07xapian: Accept bytevector slot values with document-slot-set!.Arun Isaac
* xapian/xapian.scm (make-document): Call document-slot-set! regardless of slot value type. (document-slot-set!): Accept bytevector slot values. (document-slot-set-bytes!): Deprecate.
2022-06-06xapian: Accept bytevector data with document-set-data!.Arun Isaac
* xapian/xapian.scm (make-document): Call document-set-data! regardless of data type. (document-set-data!): Accept bytevector data. (document-set-bytes!): Deprecate.
2021-09-07xapian: Introduce document setters.Bob131
* xapian/xapian.scm (document-set-data!, document-set-bytes!, document-slot-set!, document-slot-set-bytes!): New functions. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2021-09-07xapian: make-document: Accept bytevectors.Bob131
* xapian/xapian.scm (make-document): Support setting document values and body from bytevectors. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2021-09-07xapian: Introduce document-slot-ref-bytes.Bob131
* xapian/xapian.scm (document-slot-ref-bytes): New function. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2021-09-07xapian: Reimplement document-bytes.Bob131
The current implementation of document-bytes involves converting the document data string into a list of characters, mapping over the result with char->integer and passing the list of integers to u8-list->integer. This is quite an expensive operation (relative to what the user might expect), and may not reliably return a result if the document data couldn't be decoded as a UTF-8 string in the first place. Now that we have SWIG wrappers that return bytevectors directly, we can redefine document-bytes as an alias of Document-get-data-bytes. * xapian/xapian.scm (document-bytes): Redefine function in terms of Document-get-data-bytes. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2021-09-06xapian: Support in-memory databases.Arun Isaac
* xapian/xapian.scm (call-with-in-memory-database): New public function.
2020-10-17xapian: Introduce document-bytes.Arun Isaac
* xapian/xapian.scm (document-bytes): New function.
2020-10-14xapian: Wrap MSet-snippet.Arun Isaac
* xapian/xapian.scm (get-flag, mset-snippet): New functions.
2020-03-07xapian: Rename document-ref to document-slot-ref.v0.1.0Arun Isaac
* xapian/xapian.scm (document-ref): Rename to document-slot-ref.
2020-03-06xapian: Wrap document values.Arun Isaac
* xapian/xapian.scm (make-document): Support setting document values. (document-ref): New function.
2020-03-05xapian: Wrap Enquire-get-mset using keyword arguments.Arun Isaac
* xapian/xapian.scm (enquire-mset): Introduce offset and maximum-items keyword arguments. * examples/search.scm (search): Pass pagesize as keyword argument to enquire-mset. Remove argument offset.
2020-03-05xapian: Wrap Database-get-doccount.Arun Isaac
* xapian/xapian.scm (database-document-count): New function.
2020-02-18xapian: Remove generated scheme stub.Arun Isaac
xapian/wrap.scm is generated by swig. We need not commit it to the git repository. * xapian/wrap.scm: Delete file.
2020-02-15First commit.Arun Isaac