Things About Codase Source Code Search Engine

Wednesday, October 19, 2005

Smart Query Parser

Our current interface provides different forms for different kinds of searches, for example, method call search has its own form, whereas variable search has another different form. This interface requires extra clicks, also a bit different from what programmers usually type everyday.

After we released our Codase service, there are feedbacks requesting us to provide a free style typing box that a user can simply type texts to perform different searches. In other words, typing into the same input box will redirect to different types of searches, such as method call, method definition, class, field definition, field reference, variables, and so on.

The good news is that we are implementing this feature, which should be ready for use in a couple of weeks. Basically, we come up with a smart query parser, so a user can type something similar to the regular code that he or she types everyday. The parser will generate different search queries and deliver them to our Codase search engine.

For example,
(1) search the main function def, one can type:
int main(int argc, char** argv) {}

(2) search fopen and fseek function calls,
fopen(); fseek;

We will try our best to implement a flexible query syntax, please tell us if you have suggestions.


Post a Comment

<< Home