lucene javacc 语法解析器结构分析
2012-04-20 08:52
344 查看
/*****************************************/ >lucene javacc 语法解析器结构分析 /*****************************************/ /*****************************************/ // * Query ::= ( Clause )* // * Clause ::= ["+", "-"] [<TERM> ":"] ( <TERM> | "(" Query ")" ) /*****************************************/ /*****************************************/ //上面的表达式总结了当前.jjt文件的总体结构以及想法并且完整的表达出来他的思路 //上面的表达式需要javacc的写法来解释 //一个query是由多个Clause元素组成的因为(Clause)*被()*包围着这个表示循环 //并且在接着的第二行又解释了Cluase元素的组成 //clause是由可以带修饰符+或者-,或者可以有查询字段名字或者可以没有,然后后面 //跟着一本标准的查询单元或者是一个有括号包围分为一组的查询对象,因为上面写着 //query=(Clause)*从这里可以看出这里是不停的在递归寻找clause或者Query /*****************************************/ /*****************************************/ //QueryParser.jj[主要的语法描述文件] //CharStream.java[这个用于将输入的字符窜编程字符流] //FastCharStream.java //MultiFieldQueryParser.java[lucene用于多字段查询的解析器] //ParseException.java[在语法解析器中发生的异常都使用这个类] //QueryParser.java[这个类是重要的用于语法解析的类] //QueryParserConstants.java[这类描述了在.jj中定义的token] //QueryParserTokenManager.java //Token.java [kind=对应到QueryParserConstants中的token的标识,image=根据token截取到的字符窜,next=下一个字符窜,specialToken=被定义成特殊字符的东西] //TokenMgrError.java[在字符管理器中发生的异常都使用这个类] /*****************************************/
相关文章推荐
- lucene索引结构(五)--词频倒排索引(frq)文件结构分析
- JavaCC、解析树和 XQuery 语法
- 以太网报文结构分析,与解析代码
- Lucene系统结构分析
- VHDL的几个语法结构分析记录
- Tika解析非结构文档处理过程的简单分析
- Atitit.注解and属性解析(2)---------语法分析 生成AST attilax总结 java .net
- 数据库中间件 Sharding-JDBC 源码分析 —— SQL 解析(一)之语法解析
- USB gadget设备驱动解析(3)——驱动结构分析
- Solr源码解析之二 -- 支持Lucene查询语法变体
- PNG文件结构分析 ---Png解析
- Lucene系统结构分析
- Mysql Join语法解析与性能分析
- netlink监听网络变化代码(转载)+流程分析(原创+转载)+数据结构以及相关宏的解析(原创)
- Mysql Join语法解析与性能分析
- 对于C语言MFC的详细的解析(4)--MFC程序结构分析
- 视图之UINavigationController结构解析(侧重于文档分析)
- Mysql Join语法解析与性能分析详解
- FieldCache在lucene中使用的代码解析,使用场景个人分析
- 编译原理结构框架5自底向上的语法分析