IDL(Interface Definition Language)——接口描述语言,是thrift用来定义通用接口的语言,定义好接口后,利用不同语言的工具转换为各自语言的定义,达到跨语言、平台的功能
IDL只用来定义接口,所以语法只与各种类型、错误相关,不含流程控制等内容
IDL的文法类似C语言
最新版本语法在http://thrift.apache.org/docs/idl
基本类型
BaseType ::= 'bool' | 'byte' | 'i8' | 'i16' | 'i32' | 'i64' | 'double' | 'string' | 'binary' | 'slist'
容器类型
IDL支持三种容器、对应线性表、哈希表、集合
集合内的元素可以是自定义类型、基本类型和容器类型
FieldType ::= Identifier | BaseType | ContainerType
ContainerType ::= MapType | SetType | ListType
MapType ::= 'map' CppType? '<' FieldType ',' FieldType '>'
SetType ::= 'set' CppType? '<' FieldType '>'
ListType ::= 'list' &#