github.com/tsuna/gohbase@v0.0.0-20250731002811-4ffcadfba63e/pb/Comparator.proto (about)

     1  /**
     2   * Licensed to the Apache Software Foundation (ASF) under one
     3   * or more contributor license agreements.  See the NOTICE file
     4   * distributed with this work for additional information
     5   * regarding copyright ownership.  The ASF licenses this file
     6   * to you under the Apache License, Version 2.0 (the
     7   * "License"); you may not use this file except in compliance
     8   * with the License.  You may obtain a copy of the License at
     9   *
    10   *     http://www.apache.org/licenses/LICENSE-2.0
    11   *
    12   * Unless required by applicable law or agreed to in writing, software
    13   * distributed under the License is distributed on an "AS IS" BASIS,
    14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    15   * See the License for the specific language governing permissions and
    16   * limitations under the License.
    17   */
    18  
    19  // This file contains protocol buffers that are used for filters
    20  syntax = "proto2";
    21  package pb;
    22  
    23  option java_package = "org.apache.hadoop.hbase.protobuf.generated";
    24  option java_outer_classname = "ComparatorProtos";
    25  option java_generic_services = true;
    26  option java_generate_equals_and_hash = true;
    27  option optimize_for = SPEED;
    28  option go_package = "../pb";
    29  
    30  // This file contains protocol buffers that are used for comparators (e.g. in filters)
    31  
    32  message Comparator {
    33    required string name = 1;
    34    optional bytes serialized_comparator = 2;
    35  }
    36  
    37  message ByteArrayComparable {
    38    optional bytes value = 1;
    39  }
    40  
    41  message BinaryComparator {
    42    required ByteArrayComparable comparable = 1;
    43  }
    44  
    45  message LongComparator {
    46    required ByteArrayComparable comparable = 1;
    47  }
    48  
    49  message BinaryPrefixComparator {
    50    required ByteArrayComparable comparable = 1;
    51  }
    52  
    53  message BitComparator {
    54    required ByteArrayComparable comparable = 1;
    55    required BitwiseOp bitwise_op = 2;
    56  
    57    enum BitwiseOp {
    58      AND = 1;
    59      OR = 2;
    60      XOR = 3;
    61    }
    62  }
    63  
    64  message NullComparator {
    65  }
    66  
    67  message RegexStringComparator {
    68    required string pattern = 1;
    69    required int32 pattern_flags = 2;
    70    required string charset = 3;
    71    optional string engine = 4;
    72  }
    73  
    74  message SubstringComparator {
    75    required string substr = 1;
    76  }