syntax = "proto3";

package anywhere;

message Where {
    oneof value {
        Primitive primitive_value = 1;
        Condition condition_value = 2;
    }
}

message Primitive {
    string field = 1;
    string op = 2;
    oneof value {
        int64 int_value = 3;
        double double_value = 4;
        string string_value = 5;
        bool bool_value = 6;
    };
}

message Condition {
    Operator op = 1;
    repeated Where values = 2;
}

enum Operator {
      AND = 0;
      OR = 1;
}
