%% 测试协议 注释可以用 %% 也可以用 //
|
|
test {
|
|
string aa;
|
|
}
|
|
|
|
// phoneNumber info
|
|
phoneNumber{
|
|
test number; //电话号码
|
|
int32 type; //类型
|
|
}
|
|
|
|
%% person info
|
|
//注释 $errcode[err1:辅导费, err2 : 444 ] tttttt33 辅导费
|
|
%%1111 $errcode[err3:辅导费, err4:dfsf ] tttttt33 辅导费
|
|
person{
|
|
string name; %% 名字
|
|
int32 id; //错误码 $errcode[err5:其他注释辅导费 err6:dfff] 其他注释辅导费
|
|
string email; //fdfd $errcode[err7:def, err8:其他注释辅导费] tttttt33 辅导费
|
|
list[phoneNumber] phone; // list of phoneNumber
|
|
}
|
|
|
|
%% addressBook info
|
|
addressBook {
|
|
list[person] person;
|
|
list[person] other;
|
|
}
|
|
|
|
union{
|
|
string test;
|
|
int32 type;
|
|
}
|
|
|
|
tbool{
|
|
bool bool;
|
|
}
|
|
|
|
tint8{
|
|
int8 int1;
|
|
int8 int2;
|
|
}
|
|
|
|
tuint8{
|
|
uint8 int1;
|
|
uint8 int2;
|
|
}
|
|
|
|
tint16{
|
|
int16 int1;
|
|
int16 int2;
|
|
}
|
|
|
|
tuint16{
|
|
uint16 int1;
|
|
uint16 int2;
|
|
}
|
|
|
|
tint32{
|
|
int32 int1;
|
|
int32 int2;
|
|
int32 int3;
|
|
int32 int4;
|
|
int32 int5;
|
|
int32 int6;
|
|
int32 int7;
|
|
int32 int8;
|
|
int32 int9;
|
|
int32 int10;
|
|
}
|
|
|
|
tuint32{
|
|
uint32 int1;
|
|
uint32 int2;
|
|
}
|
|
|
|
tint64{
|
|
int64 int1;
|
|
int64 int2;
|
|
}
|
|
|
|
tuint64{
|
|
uint64 int1;
|
|
uint64 int2;
|
|
}
|
|
|
|
tinteger{
|
|
integer int1;
|
|
integer int2;
|
|
integer int3;
|
|
integer int4;
|
|
integer int5;
|
|
integer int6;
|
|
integer int7;
|
|
integer int8;
|
|
}
|
|
|
|
tnumber{
|
|
number int1;
|
|
number int2;
|
|
number int3;
|
|
number int4;
|
|
number int5;
|
|
number int6;
|
|
number int7;
|
|
number int8;
|
|
number float1;
|
|
number float2;
|
|
}
|
|
|
|
tfloat{
|
|
float int1;
|
|
float int2;
|
|
}
|
|
|
|
tdouble{
|
|
double int1;
|
|
double int2;
|
|
}
|
|
|
|
tstring{
|
|
string int1;
|
|
string int2;
|
|
}
|
|
|
|
tlistbool{
|
|
list[bool] int1;
|
|
}
|
|
|
|
tlistint8{
|
|
list[int8] int1;
|
|
}
|
|
|
|
tlistuint8{
|
|
list[uint8] int1;
|
|
}
|
|
|
|
tlistint16{
|
|
list[int16] int1;
|
|
}
|
|
|
|
tlistuint16{
|
|
list[uint16] int1;
|
|
}
|
|
|
|
tlistint32{
|
|
list[int32] int1;
|
|
}
|
|
|
|
tlistuint32{
|
|
list[uint32] int1;
|
|
}
|
|
|
|
tlistint64{
|
|
list[int64] int1;
|
|
}
|
|
|
|
tlistuint64{
|
|
list[uint64] int1;
|
|
}
|
|
|
|
tlistinteger{
|
|
list[integer] int1;
|
|
}
|
|
|
|
tlistnumber{
|
|
list[number] int1;
|
|
}
|
|
|
|
tlistfloat{
|
|
list[float] int1;
|
|
}
|
|
|
|
tlistdouble{
|
|
list[double] int1;
|
|
}
|
|
|
|
tliststring{
|
|
list[string] int1;
|
|
}
|
|
|
|
tlistunion{
|
|
list[union] int1;
|
|
}
|
|
|
|
%% 测试所有类型数据
|
|
allType{
|
|
bool bool;
|
|
int8 int8;
|
|
uint8 uint8;
|
|
int16 int16;
|
|
uint16 uint16;
|
|
int32 int32;
|
|
uint32 uint32;
|
|
int64 int64;
|
|
uint64 uint64;
|
|
integer inte8;
|
|
integer uinte8;
|
|
integer inte16;
|
|
integer uinte16;
|
|
integer inte32;
|
|
integer uinte32;
|
|
integer inte64;
|
|
integer uinte64;
|
|
number num8;
|
|
number unum8;
|
|
number num16;
|
|
number unum16;
|
|
number num32;
|
|
number unum32;
|
|
number num64;
|
|
number unum64;
|
|
number numfloat;
|
|
number numdouble;
|
|
float float;
|
|
double double;
|
|
string string1; //英文
|
|
string string2; //汉字
|
|
union union;
|
|
list[bool] lbool;
|
|
list[int8] lint8;
|
|
list[uint8] luint8;
|
|
list[int16] lint16;
|
|
list[uint16] luint16;
|
|
list[int32] lint32;
|
|
list[uint32] luint32;
|
|
list[int64] lint64;
|
|
list[uint64] luint64;
|
|
list[integer] linte8;
|
|
list[integer] linte16;
|
|
list[integer] linte32;
|
|
list[integer] linte64;
|
|
list[number] lnum8;
|
|
list[number] lnum16;
|
|
list[number] lnum32;
|
|
list[number] lnum64;
|
|
list[number] lnfloat32;
|
|
list[number] lnfloat64;
|
|
list[float] lfloat;
|
|
list[double] ldouble;
|
|
list[string] lstring;
|
|
list[union] lunion;
|
|
}
|
|
|
|
testnull {
|
|
}
|