Open liguangsheng opened 1 year ago
抱歉,目前这部分还是不完善。
当时想过要不要对于嵌套类型生成 mask 相关的代码:可能存在深层次甚至循环问题,就没有识别嵌套类型(User)的字段
目前好像是必须指定为同名的Response,不能直接指定为真正想要mask的那个message,只能想办法识别嵌套类型。
改成直接指定真正想要mask的message是不是好点?比如对于BatchGetUserRequest,我真正想要mask的时User而不是BatchGetUserResponse?
protoc-gen-fieldmask只会在当前文件中查找,同package但是不同文件的message就找不到了。
举个例子: grpc.proto
types.proto
一开始直接指定的BatchGetUserResponse,但是repeated只能识别users这个字段,无法识别User里的每个字段。
后来我改成
message: "User"
,但是找不到User的定义。再后来我改成
message: "user.User"
,这回找到User定义了,但是生成的go代码会多一个当前package的import,形成循环依赖。