Search Binding
JMMackenzie opened this issue · 3 comments
We'll need to complete the search binding. However, in PISA, query processing is done via one of two binaries -- queries
or evaluate_queries
-- perhaps we need to consider creating a PISA-side "search" interface to simplify the binding here? Otherwise, there might be some difficulty with the templating of indexes (although I haven't tried yet). Any thoughts or comments?
We're not going to link to either of this binaries. These are not really part of the PISA library in that sense. I think we just need to add a function (with options) or two functions in binder.cpp
that expose template-independent API. Ultimately, all template instantiations will be done when compiling the binder.cpp
compilation unit.
We might need to either duplicate some code or extract some code into a header.
On a side note, any moder linker shouldn't have problems linking two instantiations of the same function, I believe. The real problem would be if two symbols aren't pointing at the same exact code.
Yeah that's exactly what I meant. We don't want to link to either binary, but we will need a "search" (header?) in PISA which we can then directly expose here. We may have to think carefully about what to expose, but it shouldn't be too difficult. I guess this is another issue better suited for the PISA repo itself?
I think pisa-engine/pisa#439 is what would be nice to have here. I haven't had time to look at it again. When I find some time, I'll first try to figure out pisa-engine/pisa#461, then rebase and try again the former.