lua 中protobuf repeated 嵌套类 复合类型

PB基础知识科普

syntax = "proto2";
package PB;

message  Item
{
    required string name = 1;
}
message  Role
{
    required string name = 1;  
    optional string email = 2;  
    repeated string t =3;
    repeated Item item1 = 4;
    optional  Item item2 =5;  
}

lua中解析 required  optional  repeated  类型

   require "proto.player_pb"

    local role = player_pb.Role()
    role.name="444"   --require字段

    role.email ="eiail2222222" --optional
    role.t:append("111") --repeated 基本类型

    local tt =role.item1:add() -- repeated 嵌套类 复合类型
    tt.name ="555"

    role.item2.name = "6666" -- optional 嵌套类 复合类型

    local pb_data1 = role:SerializeToString()
    
    local msg = player_pb.Role()
    msg:ParseFromString(pb_data1)

    print(msg.email.."   "..msg.item1[1].name.."  "..msg.item2.name)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值