@java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(productSet_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, productSet_);
    }
    {
      int dataSize = 0;
      for (int i = 0; i < productCategories_.size(); i++) {
        dataSize += computeStringSizeNoTag(productCategories_.getRaw(i));
      }
      size += dataSize;
      size += 1 * getProductCategoriesList().size();
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, filter_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, getBoundingPoly());
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }
<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-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ProductSearchParams.java