[Xapian-devel] Summer of Code help

Olly Betts olly at survex.com
Tue Feb 25 00:36:37 GMT 2014


On Tue, Feb 25, 2014 at 02:45:28AM +0530, Anish Kanchan wrote:
> Xapian is a search engine library written in C/C++. It can be
> integrated with web applications which handle large amount of data.
> But since the web applications may be written in a variety of languages a
> binding is required for the web app to be able to connect to the xapian
> software. And SWIG plays a role in generating intermediate code for the web
> app to link with the bindings.
> 
> I'd like to know if what I've understood is correct.

Yes.

Scripting languages generally provide a C API which allows you to write
a wrapper, but trying to maintain such wrappers by hand for a large API
is quite a lot of work.  SWIG helps to automate that job by generating
wrapper code which uses the available C API for you.

Often we can add a new method to the C++ API and need to do nothing
extra to have it available in the bindings.  Sometimes it gets wrapped,
but we need to give SWIG some help to wrap it in the best way.

You might find this talk I gave at Kiwi PyCon 2011 helpful - there
are slides and recorded audio there:

http://survex.com/~olly/talks/pythonic-swig/

Cheers,
    Olly



More information about the Xapian-devel mailing list