[Xapian-devel] Deprecation

Richard Boulton richard at lemurconsulting.com
Tue Apr 17 14:55:48 BST 2007


Olly Betts wrote:
> On Tue, Apr 17, 2007 at 10:17:19AM +0100, Richard Boulton wrote:
>> Finally, I'm not convinced that the replacement for Stem::stem_word() of 
>> using operator() will work for all the bindings - checking whether it 
>> can be accessed from PHP, Ruby, Tcl8, and CSharp would be useful 
>> (ideally, changing smoketest and the examples to demonstrate how).  It 
>> works in Python, though. ;-)
> 
> Except for Python, operator() is renamed to apply() (or Apply() for C#).
> See xapian.i around line 122 (in current SVN HEAD).

Interesting.  apply() works for PHP and TCL8, I haven't tested with C#, 
but doesn't work for Ruby.

Looking at the generated code, Ruby provides access to operator() with a 
call() method: ie, @stem.call() works with Ruby, @stem.apply() doesn't.

I assume that this is a bug in SWIG, or something like that.  I've 
opened a bug in Xapian (#131) to make a note of it.

I've updated the smoketests and examples for PHP and TCL to use 
stem.apply().

I've also updated the smoketest and examples for CSharp, but haven't 
tested them because the CSharp bindings don't work on my machine 
presently (see bug #132).

-- 
Richard



More information about the Xapian-devel mailing list