@java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(productSet_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, productSet_);
    }
    for (int i = 0; i < productCategories_.size(); i++) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 7, productCategories_.getRaw(i));
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 8, filter_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      output.writeMessage(9, getBoundingPoly());
    }
    getUnknownFields().writeTo(output);
  }
<pre>
The filtering expression. This can be used to restrict search results based
on Product labels. We currently support an AND of OR of key-value
expressions, where each expression within an OR must have the same key. An
'=' should be used to connect the key and value.

For example, "(color = red OR color = blue) AND brand = Google" is
acceptable, but "(color = red OR brand = Google)" is not acceptable.
"color: red" is not acceptable because it uses a ':' instead of an '='.
</pre>

<code>string filter = 8;</code>

@return The bytes for filter.
java-vision/proto-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ProductSearchParams.java