【问题标题】:Semi-colon required, optional, or disallowed in gRPC option value?gRPC 选项值中的分号是必需的、可选的还是不允许的?
【发布时间】:2017-02-08 22:40:19
【问题描述】:

我看到如下一段代码:

rpc SayFallback (FooRequest) returns (FooResponse) { option (com.example.proto.options.bar) = { value : "{ message:\"baz\" }"; }; }

还有一个像下面这样的:

rpc SayFallback (FooRequest) returns (FooResponse) { option (com.example.proto.options.bar) = { value : "{ message:\"baz\" }" }; }

第一个有一个;value 在线,而第二个没有。是否符合标准?

【问题讨论】:

    标签: grpc proto3


    【解决方案1】:

    是的,它们被认为是可选的。见protobuf file sourcesn-p:

      while (!TryConsumeEndOfDeclaration("}", NULL)) {
        if (AtEnd()) {
          AddError("Reached end of input in method options (missing '}').");
          return false;
        }
    
        if (TryConsumeEndOfDeclaration(";", NULL)) {
          // empty statement; ignore
        } else {
          ...
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-06
      • 2017-02-28
      • 1970-01-01
      • 1970-01-01
      • 2018-09-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多