概要
词法分析是反序列化的重要基础,在其他框架druid
、parsii
等框架都用到了词法分析的技术,个人认为在讲反序列化之前讲词法分析更重要。
写出优秀框架之前,先理解大量优秀框架的实现对未来自己写框架非常有帮助!!!
好了,废话不多说,来看看fastjson
中定义的token吧。
JSONToken成员
com.alibaba.fastjson.parser.JSONToken
定义了fastjson需要的token标识符:
/** 1 关联到 error */
public final static int ERROR = 1;
/** 2 关联到 int */
public final static int LITERAL_INT = 2;
/** 3 关联到 float */
public final static int LITERAL_FLOAT = 3;
/** 4 关联到 string */
public final static int LITERAL_STRING = 4;
/** 5 关联到 iso8601 */
public final static int LITERAL_ISO8601_DATE = 5;
/** 6 关联到 true */
public final static int TRUE = 6;
/** 7 关联到 false */
public final static int FALSE = 7;
/** 8 关联到 null */