MySQL是怎么在源码层表达对象的-----Item对象及子对象解析(二)

本文通过分析item_func.h文件,介绍了Item对象支持的函数类型、优化类型及遍历方式等内容,帮助读者理解Item对象的基本功能。
 

二 事例

分析item_func.h文件(不限于这个文件,只是用以示例做说明)的内容, 可以掌握Item对象的基本功能.

1 定义了支持的函数类型

enum Functype

继承了Item对象的Item_func对象,支持的函数有哪些,可以在此处观察到.

所以要注意每个对象支持的具体内容,可以观察对象的定义中类似Functype之处.


2 是否可以被优化,以及哪些可以被优化

optimize_type


3 父类Item中定义了'enum_walk'枚举,规定了这个对象遍历的方式,有向前遍历(WALK_PREFIX)、向后遍历(WALK_POSTFIX)、嵌套遍历(WALK_SUBQUERY)


遍历方式很重要,不同对象,可能有不同的遍历方式,甚至需要递归遍历参数代表的对象.


4 其他的一些重要内容,可以参见各类Item_*.h文件

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值