From 1735c99d5defc1d188196ff35e81f2027d2fb04b Mon Sep 17 00:00:00 2001 From: Timo Stamm Date: Thu, 20 Mar 2025 15:26:34 +0100 Subject: [PATCH] Update to protovalidate 0.10.3 --- Makefile | 4 +- .../custom_constraints_pb2.py | 148 ++- .../custom_constraints_pb2.pyi | 208 +++- .../conformance/cases/ignore_proto2_pb2.py | 262 ++-- .../conformance/cases/ignore_proto2_pb2.pyi | 109 ++ .../conformance/cases/ignore_proto3_pb2.py | 226 ++-- .../conformance/cases/ignore_proto3_pb2.pyi | 91 ++ .../cases/ignore_proto_editions_pb2.py | 370 +++--- .../cases/ignore_proto_editions_pb2.pyi | 149 +++ .../validate/conformance/cases/library_pb2.py | 78 ++ .../conformance/cases/library_pb2.pyi | 70 ++ .../cases/required_field_proto2_pb2.py | 40 +- .../conformance/harness/results_pb2.py | 16 +- .../conformance/harness/results_pb2.pyi | 6 +- gen/buf/validate/validate_pb2.py | 118 +- tests/conformance/nonconforming.yaml | 1055 +++++++++++++++++ tests/conformance/runner.py | 1 + 17 files changed, 2494 insertions(+), 457 deletions(-) create mode 100644 gen/buf/validate/conformance/cases/library_pb2.py create mode 100644 gen/buf/validate/conformance/cases/library_pb2.pyi diff --git a/Makefile b/Makefile index e5dce156..86558adc 100644 --- a/Makefile +++ b/Makefile @@ -11,12 +11,12 @@ export PATH := $(BIN):$(PATH) export GOBIN := $(abspath $(BIN)) # Set to use a different Python interpreter. For example, `PYTHON=python make test`. PYTHON ?= python3 -CONFORMANCE_ARGS ?= --strict --strict_message --expected_failures=tests/conformance/nonconforming.yaml --timeout 10s +CONFORMANCE_ARGS ?= --strict_message --expected_failures=tests/conformance/nonconforming.yaml --timeout 10s ADD_LICENSE_HEADER := $(BIN)/license-header \ --license-type apache \ --copyright-holder "Buf Technologies, Inc." \ --year-range "2023-2025" -PROTOVALIDATE_VERSION ?= v0.10.0 +PROTOVALIDATE_VERSION ?= v0.10.3 .PHONY: help help: ## Describe useful make targets diff --git a/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.py b/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.py index 8c1ca0a5..68e4c1d2 100644 --- a/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.py +++ b/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.py @@ -39,7 +39,7 @@ from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nJbuf/validate/conformance/cases/custom_constraints/custom_constraints.proto\x12\x31\x62uf.validate.conformance.cases.custom_constraints\x1a\x1b\x62uf/validate/validate.proto\"\xc5\x01\n\rNoExpressions\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\x12\x45\n\x01\x62\x18\x02 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumR\x01\x62\x12U\n\x01\x63\x18\x03 \x01(\x0b\x32G.buf.validate.conformance.cases.custom_constraints.NoExpressions.NestedR\x01\x63\x1a\x08\n\x06Nested\"\xc3\x05\n\x12MessageExpressions\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\x12\x0c\n\x01\x62\x18\x02 \x01(\x05R\x01\x62\x12\x45\n\x01\x63\x18\x03 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumR\x01\x63\x12\x45\n\x01\x64\x18\x04 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumR\x01\x64\x12Z\n\x01\x65\x18\x05 \x01(\x0b\x32L.buf.validate.conformance.cases.custom_constraints.MessageExpressions.NestedR\x01\x65\x12Z\n\x01\x66\x18\x06 \x01(\x0b\x32L.buf.validate.conformance.cases.custom_constraints.MessageExpressions.NestedR\x01\x66\x1ax\n\x06Nested\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\x12\x0c\n\x01\x62\x18\x02 \x01(\x05R\x01\x62:R\xbaHO\x1aM\n\x19message_expression_nested\x1a\x30this.a > this.b ? \'\': \'a must be greater than b\':\xd0\x01\xbaH\xcc\x01\x1a\x43\n\x19message_expression_scalar\x12\x15\x61 must be less than b\x1a\x0fthis.a < this.b\x1a?\n\x17message_expression_enum\x12\x12\x63 must not equal d\x1a\x10this.c != this.d\x1a\x44\n\x18message_expression_embed\x12\x12\x65.a must equal f.a\x1a\x14this.e.a == this.f.a\"\xaa\x05\n\x10\x46ieldExpressions\x12Z\n\x01\x61\x18\x01 \x01(\x05\x42L\xbaHI\xba\x01\x46\n\x17\x66ield_expression_scalar\x1a+this > 42 ? \'\': \'a must be greater than 42\'R\x01\x61\x12\x7f\n\x01\x62\x18\x02 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumB8\xbaH5\xba\x01\x32\n\x15\x66ield_expression_enum\x12\x0e\x62 must be ~ONE\x1a\tthis == 1R\x01\x62\x12\xa6\x01\n\x01\x63\x18\x03 \x01(\x0b\x32J.buf.validate.conformance.cases.custom_constraints.FieldExpressions.NestedBL\xbaHI\xba\x01\x46\n\x16\x66ield_expression_embed\x12\x1b\x63.a must be a multiple of 4\x1a\x0fthis.a % 4 == 0R\x01\x63\x12\xb1\x01\n\x01\x64\x18\x04 \x01(\x05\x42\xa2\x01\xbaH\x9e\x01\xba\x01L\n\"field_expression_scalar_multiple_1\x1a&this < 1 ? \'\': \'d must be less than 1\'\xba\x01L\n\"field_expression_scalar_multiple_2\x1a&this < 2 ? \'\': \'d must be less than 2\'R\x01\x64\x1a\\\n\x06Nested\x12R\n\x01\x61\x18\x01 \x01(\x05\x42\x44\xbaHA\xba\x01>\n\x17\x66ield_expression_nested\x1a#this > 0 ? \'\': \'a must be positive\'R\x01\x61\"R\n\x0cMissingField\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61:4\xbaH1\x1a/\n\rmissing_field\x12\x12\x62 must be positive\x1a\nthis.b > 0\"g\n\rIncorrectType\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61:H\xbaHE\x1a\x43\n\x0eincorrect_type\x12\x17\x61 must start with \'foo\'\x1a\x18this.a.startsWith(\'foo\')\"}\n\x0f\x44ynRuntimeError\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61:\\\xbaHY\x1aW\n\x0f\x64yn_runtime_err\x12.dynamic type tries to use a non-existent field\x1a\x14\x64yn(this).b == \'foo\'\"\\\n\x0cNowEqualsNow:L\xbaHI\x1aG\n\x0enow_equals_now\x12)now should equal now within an expression\x1a\nnow == now**\n\x04\x45num\x12\x14\n\x10\x45NUM_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x45NUM_ONE\x10\x01\x42\xb5\x02\n5com.buf.validate.conformance.cases.custom_constraintsB\x16\x43ustomConstraintsProtoP\x01\xa2\x02\x05\x42VCCC\xaa\x02\x30\x42uf.Validate.Conformance.Cases.CustomConstraints\xca\x02\x30\x42uf\\Validate\\Conformance\\Cases\\CustomConstraints\xe2\x02 this.b ? \'\': \'a must be greater than b\':\xd0\x01\xbaH\xcc\x01\x1a\x43\n\x19message_expression_scalar\x12\x15\x61 must be less than b\x1a\x0fthis.a < this.b\x1a?\n\x17message_expression_enum\x12\x12\x63 must not equal d\x1a\x10this.c != this.d\x1a\x44\n\x18message_expression_embed\x12\x12\x65.a must equal f.a\x1a\x14this.e.a == this.f.a\"R\n\x0cMissingField\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61:4\xbaH1\x1a/\n\rmissing_field\x12\x12\x62 must be positive\x1a\nthis.b > 0\"g\n\rIncorrectType\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61:H\xbaHE\x1a\x43\n\x0eincorrect_type\x12\x17\x61 must start with \'foo\'\x1a\x18this.a.startsWith(\'foo\')\"}\n\x0f\x44ynRuntimeError\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61:\\\xbaHY\x1aW\n\x0f\x64yn_runtime_err\x12.dynamic type tries to use a non-existent field\x1a\x14\x64yn(this).b == \'foo\'\"\\\n\x0cNowEqualsNow:L\xbaHI\x1aG\n\x0enow_equals_now\x12)now should equal now within an expression\x1a\nnow == now\"\xdf\x02\n\x1d\x46ieldExpressionMultipleScalar\x12\xbd\x02\n\x03val\x18\x01 \x01(\x05\x42\xaa\x02\xbaH\xa6\x02\xba\x01_\n\"field_expression.multiple.scalar.1\x12/test message field_expression.multiple.scalar.1\x1a\x08this > 0\xba\x01_\n\"field_expression.multiple.scalar.2\x12/test message field_expression.multiple.scalar.2\x1a\x08this > 1\xba\x01_\n\"field_expression.multiple.scalar.3\x12/test message field_expression.multiple.scalar.3\x1a\x08this > 2R\x03val\"\x7f\n\x1b\x46ieldExpressionNestedScalar\x12`\n\x06nested\x18\x01 \x01(\x0b\x32H.buf.validate.conformance.cases.custom_constraints.FieldExpressionScalarR\x06nested\"\xa2\x01\n\x1d\x46ieldExpressionOptionalScalar\x12y\n\x03val\x18\x01 \x01(\x05\x42\x62\xbaH_\xba\x01\\\n field_expression.optional.scalar\x12-test message field_expression.optional.scalar\x1a\tthis == 1H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"{\n\x15\x46ieldExpressionScalar\x12\x62\n\x03val\x18\x01 \x01(\x05\x42P\xbaHM\xba\x01J\n\x17\x66ield_expression.scalar\x12$test message field_expression.scalar\x1a\tthis == 1R\x03val\"\xaf\x01\n\x13\x46ieldExpressionEnum\x12\x97\x01\n\x03val\x18\x01 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumBL\xbaHI\xba\x01\x46\n\x15\x66ield_expression.enum\x12\"test message field_expression.enum\x1a\tthis == 1R\x03val\"\xe5\x01\n\x16\x46ieldExpressionMessage\x12\xb5\x01\n\x03val\x18\x01 \x01(\x0b\x32M.buf.validate.conformance.cases.custom_constraints.FieldExpressionMessage.MsgBT\xbaHQ\xba\x01N\n\x18\x66ield_expression.message\x12%test message field_expression.message\x1a\x0bthis.a == 1R\x03val\x1a\x13\n\x03Msg\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\"\xa5\x02\n\x18\x46ieldExpressionMapScalar\x12\xd0\x01\n\x03val\x18\x01 \x03(\x0b\x32T.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapScalar.ValEntryBh\xbaHe\xba\x01\x62\n\x1b\x66ield_expression.map.scalar\x12(test message field_expression.map.scalar\x1a\x19this.all(k, this[k] == 1)R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xd6\x02\n\x16\x46ieldExpressionMapEnum\x12\xca\x01\n\x03val\x18\x01 \x03(\x0b\x32R.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapEnum.ValEntryBd\xbaHa\xba\x01^\n\x19\x66ield_expression.map.enum\x12&test message field_expression.map.enum\x1a\x19this.all(k, this[k] == 1)R\x03val\x1ao\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12M\n\x05value\x18\x02 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumR\x05value:\x02\x38\x01\"\x93\x03\n\x19\x46ieldExpressionMapMessage\x12\xd5\x01\n\x03val\x18\x01 \x03(\x0b\x32U.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapMessage.ValEntryBl\xbaHi\xba\x01\x66\n\x1c\x66ield_expression.map.message\x12)test message field_expression.map.message\x1a\x1bthis.all(k, this[k].a == 1)R\x03val\x1a\x88\x01\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x66\n\x05value\x18\x02 \x01(\x0b\x32P.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapMessage.MsgR\x05value:\x02\x38\x01\x1a\x13\n\x03Msg\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\"\x9f\x02\n\x16\x46ieldExpressionMapKeys\x12\xcc\x01\n\x03val\x18\x01 \x03(\x0b\x32R.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapKeys.ValEntryBf\xbaHc\x9a\x01`\"^\xba\x01[\n\x19\x66ield_expression.map.keys\x12&test message field_expression.map.keys\x1a\x16this == 4 || this == 8R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb4\x02\n\x1e\x46ieldExpressionMapScalarValues\x12\xd9\x01\n\x03val\x18\x01 \x03(\x0b\x32Z.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapScalarValues.ValEntryBk\xbaHh\x9a\x01\x65*c\xba\x01`\n\"field_expression.map.scalar.values\x12/test message field_expression.map.scalar.values\x1a\tthis == 1R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xe5\x02\n\x1c\x46ieldExpressionMapEnumValues\x12\xd3\x01\n\x03val\x18\x01 \x03(\x0b\x32X.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapEnumValues.ValEntryBg\xbaHd\x9a\x01\x61*_\xba\x01\\\n field_expression.map.enum.values\x12-test message field_expression.map.enum.values\x1a\tthis == 1R\x03val\x1ao\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12M\n\x05value\x18\x02 \x01(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumR\x05value:\x02\x38\x01\"\xa8\x03\n\x1f\x46ieldExpressionMapMessageValues\x12\xde\x01\n\x03val\x18\x01 \x03(\x0b\x32[.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapMessageValues.ValEntryBo\xbaHl\x9a\x01i*g\xba\x01\x64\n#field_expression.map.message.values\x12\x30test message field_expression.map.message.values\x1a\x0bthis.a == 1R\x03val\x1a\x8e\x01\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12l\n\x05value\x18\x02 \x01(\x0b\x32V.buf.validate.conformance.cases.custom_constraints.FieldExpressionMapMessageValues.MsgR\x05value:\x02\x38\x01\x1a\x13\n\x03Msg\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\"\x9f\x01\n\x1d\x46ieldExpressionRepeatedScalar\x12~\n\x03val\x18\x01 \x03(\x05\x42l\xbaHi\xba\x01\x66\n field_expression.repeated.scalar\x12-test message field_expression.repeated.scalar\x1a\x13this.all(e, e == 1)R\x03val\"\xd3\x01\n\x1b\x46ieldExpressionRepeatedEnum\x12\xb3\x01\n\x03val\x18\x01 \x03(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumBh\xbaHe\xba\x01\x62\n\x1e\x66ield_expression.repeated.enum\x12+test message field_expression.repeated.enum\x1a\x13this.all(e, e == 1)R\x03val\"\x91\x02\n\x1e\x46ieldExpressionRepeatedMessage\x12\xd9\x01\n\x03val\x18\x01 \x03(\x0b\x32U.buf.validate.conformance.cases.custom_constraints.FieldExpressionRepeatedMessage.MsgBp\xbaHm\xba\x01j\n!field_expression.repeated.message\x12.test message field_expression.repeated.message\x1a\x15this.all(e, e.a == 1)R\x03val\x1a\x13\n\x03Msg\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61\"\xac\x01\n\"FieldExpressionRepeatedScalarItems\x12\x85\x01\n\x03val\x18\x01 \x03(\x05\x42s\xbaHp\x92\x01m\"k\xba\x01h\n&field_expression.repeated.scalar.items\x12\x33test message field_expression.repeated.scalar.items\x1a\tthis == 1R\x03val\"\xdf\x01\n FieldExpressionRepeatedEnumItems\x12\xba\x01\n\x03val\x18\x01 \x03(\x0e\x32\x37.buf.validate.conformance.cases.custom_constraints.EnumBo\xbaHl\x92\x01i\"g\xba\x01\x64\n$field_expression.repeated.enum.items\x12\x31test message field_expression.repeated.enum.items\x1a\tthis == 1R\x03val\"\xa2\x02\n#FieldExpressionRepeatedMessageItems\x12\xe5\x01\n\x03val\x18\x01 \x03(\x0b\x32Z.buf.validate.conformance.cases.custom_constraints.FieldExpressionRepeatedMessageItems.MsgBw\xbaHt\x92\x01q\"o\xba\x01l\n\'field_expression.repeated.message.items\x12\x34test message field_expression.repeated.message.items\x1a\x0bthis.a == 1R\x03val\x1a\x13\n\x03Msg\x12\x0c\n\x01\x61\x18\x01 \x01(\x05R\x01\x61**\n\x04\x45num\x12\x14\n\x10\x45NUM_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x45NUM_ONE\x10\x01\x42\xb5\x02\n5com.buf.validate.conformance.cases.custom_constraintsB\x16\x43ustomConstraintsProtoP\x01\xa2\x02\x05\x42VCCC\xaa\x02\x30\x42uf.Validate.Conformance.Cases.CustomConstraints\xca\x02\x30\x42uf\\Validate\\Conformance\\Cases\\CustomConstraints\xe2\x02 this.b ? \'\': \'a must be greater than b\'' _globals['_MESSAGEEXPRESSIONS']._loaded_options = None _globals['_MESSAGEEXPRESSIONS']._serialized_options = b'\272H\314\001\032C\n\031message_expression_scalar\022\025a must be less than b\032\017this.a < this.b\032?\n\027message_expression_enum\022\022c must not equal d\032\020this.c != this.d\032D\n\030message_expression_embed\022\022e.a must equal f.a\032\024this.e.a == this.f.a' - _globals['_FIELDEXPRESSIONS_NESTED'].fields_by_name['a']._loaded_options = None - _globals['_FIELDEXPRESSIONS_NESTED'].fields_by_name['a']._serialized_options = b'\272HA\272\001>\n\027field_expression_nested\032#this > 0 ? \'\': \'a must be positive\'' - _globals['_FIELDEXPRESSIONS'].fields_by_name['a']._loaded_options = None - _globals['_FIELDEXPRESSIONS'].fields_by_name['a']._serialized_options = b'\272HI\272\001F\n\027field_expression_scalar\032+this > 42 ? \'\': \'a must be greater than 42\'' - _globals['_FIELDEXPRESSIONS'].fields_by_name['b']._loaded_options = None - _globals['_FIELDEXPRESSIONS'].fields_by_name['b']._serialized_options = b'\272H5\272\0012\n\025field_expression_enum\022\016b must be ~ONE\032\tthis == 1' - _globals['_FIELDEXPRESSIONS'].fields_by_name['c']._loaded_options = None - _globals['_FIELDEXPRESSIONS'].fields_by_name['c']._serialized_options = b'\272HI\272\001F\n\026field_expression_embed\022\033c.a must be a multiple of 4\032\017this.a % 4 == 0' - _globals['_FIELDEXPRESSIONS'].fields_by_name['d']._loaded_options = None - _globals['_FIELDEXPRESSIONS'].fields_by_name['d']._serialized_options = b'\272H\236\001\272\001L\n\"field_expression_scalar_multiple_1\032&this < 1 ? \'\': \'d must be less than 1\'\272\001L\n\"field_expression_scalar_multiple_2\032&this < 2 ? \'\': \'d must be less than 2\'' _globals['_MISSINGFIELD']._loaded_options = None _globals['_MISSINGFIELD']._serialized_options = b'\272H1\032/\n\rmissing_field\022\022b must be positive\032\nthis.b > 0' _globals['_INCORRECTTYPE']._loaded_options = None @@ -69,8 +59,58 @@ _globals['_DYNRUNTIMEERROR']._serialized_options = b'\272HY\032W\n\017dyn_runtime_err\022.dynamic type tries to use a non-existent field\032\024dyn(this).b == \'foo\'' _globals['_NOWEQUALSNOW']._loaded_options = None _globals['_NOWEQUALSNOW']._serialized_options = b'\272HI\032G\n\016now_equals_now\022)now should equal now within an expression\032\nnow == now' - _globals['_ENUM']._serialized_start=2163 - _globals['_ENUM']._serialized_end=2205 + _globals['_FIELDEXPRESSIONMULTIPLESCALAR'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMULTIPLESCALAR'].fields_by_name['val']._serialized_options = b'\272H\246\002\272\001_\n\"field_expression.multiple.scalar.1\022/test message field_expression.multiple.scalar.1\032\010this > 0\272\001_\n\"field_expression.multiple.scalar.2\022/test message field_expression.multiple.scalar.2\032\010this > 1\272\001_\n\"field_expression.multiple.scalar.3\022/test message field_expression.multiple.scalar.3\032\010this > 2' + _globals['_FIELDEXPRESSIONOPTIONALSCALAR'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONOPTIONALSCALAR'].fields_by_name['val']._serialized_options = b'\272H_\272\001\\\n field_expression.optional.scalar\022-test message field_expression.optional.scalar\032\tthis == 1' + _globals['_FIELDEXPRESSIONSCALAR'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONSCALAR'].fields_by_name['val']._serialized_options = b'\272HM\272\001J\n\027field_expression.scalar\022$test message field_expression.scalar\032\tthis == 1' + _globals['_FIELDEXPRESSIONENUM'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONENUM'].fields_by_name['val']._serialized_options = b'\272HI\272\001F\n\025field_expression.enum\022\"test message field_expression.enum\032\tthis == 1' + _globals['_FIELDEXPRESSIONMESSAGE'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMESSAGE'].fields_by_name['val']._serialized_options = b'\272HQ\272\001N\n\030field_expression.message\022%test message field_expression.message\032\013this.a == 1' + _globals['_FIELDEXPRESSIONMAPSCALAR_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPSCALAR_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPSCALAR'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPSCALAR'].fields_by_name['val']._serialized_options = b'\272He\272\001b\n\033field_expression.map.scalar\022(test message field_expression.map.scalar\032\031this.all(k, this[k] == 1)' + _globals['_FIELDEXPRESSIONMAPENUM_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPENUM_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPENUM'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPENUM'].fields_by_name['val']._serialized_options = b'\272Ha\272\001^\n\031field_expression.map.enum\022&test message field_expression.map.enum\032\031this.all(k, this[k] == 1)' + _globals['_FIELDEXPRESSIONMAPMESSAGE_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPMESSAGE_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPMESSAGE'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPMESSAGE'].fields_by_name['val']._serialized_options = b'\272Hi\272\001f\n\034field_expression.map.message\022)test message field_expression.map.message\032\033this.all(k, this[k].a == 1)' + _globals['_FIELDEXPRESSIONMAPKEYS_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPKEYS_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPKEYS'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPKEYS'].fields_by_name['val']._serialized_options = b'\272Hc\232\001`\"^\272\001[\n\031field_expression.map.keys\022&test message field_expression.map.keys\032\026this == 4 || this == 8' + _globals['_FIELDEXPRESSIONMAPSCALARVALUES_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPSCALARVALUES_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPSCALARVALUES'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPSCALARVALUES'].fields_by_name['val']._serialized_options = b'\272Hh\232\001e*c\272\001`\n\"field_expression.map.scalar.values\022/test message field_expression.map.scalar.values\032\tthis == 1' + _globals['_FIELDEXPRESSIONMAPENUMVALUES_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPENUMVALUES_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPENUMVALUES'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPENUMVALUES'].fields_by_name['val']._serialized_options = b'\272Hd\232\001a*_\272\001\\\n field_expression.map.enum.values\022-test message field_expression.map.enum.values\032\tthis == 1' + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES_VALENTRY']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES_VALENTRY']._serialized_options = b'8\001' + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES'].fields_by_name['val']._serialized_options = b'\272Hl\232\001i*g\272\001d\n#field_expression.map.message.values\0220test message field_expression.map.message.values\032\013this.a == 1' + _globals['_FIELDEXPRESSIONREPEATEDSCALAR'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONREPEATEDSCALAR'].fields_by_name['val']._serialized_options = b'\272Hi\272\001f\n field_expression.repeated.scalar\022-test message field_expression.repeated.scalar\032\023this.all(e, e == 1)' + _globals['_FIELDEXPRESSIONREPEATEDENUM'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONREPEATEDENUM'].fields_by_name['val']._serialized_options = b'\272He\272\001b\n\036field_expression.repeated.enum\022+test message field_expression.repeated.enum\032\023this.all(e, e == 1)' + _globals['_FIELDEXPRESSIONREPEATEDMESSAGE'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONREPEATEDMESSAGE'].fields_by_name['val']._serialized_options = b'\272Hm\272\001j\n!field_expression.repeated.message\022.test message field_expression.repeated.message\032\025this.all(e, e.a == 1)' + _globals['_FIELDEXPRESSIONREPEATEDSCALARITEMS'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONREPEATEDSCALARITEMS'].fields_by_name['val']._serialized_options = b'\272Hp\222\001m\"k\272\001h\n&field_expression.repeated.scalar.items\0223test message field_expression.repeated.scalar.items\032\tthis == 1' + _globals['_FIELDEXPRESSIONREPEATEDENUMITEMS'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONREPEATEDENUMITEMS'].fields_by_name['val']._serialized_options = b'\272Hl\222\001i\"g\272\001d\n$field_expression.repeated.enum.items\0221test message field_expression.repeated.enum.items\032\tthis == 1' + _globals['_FIELDEXPRESSIONREPEATEDMESSAGEITEMS'].fields_by_name['val']._loaded_options = None + _globals['_FIELDEXPRESSIONREPEATEDMESSAGEITEMS'].fields_by_name['val']._serialized_options = b'\272Ht\222\001q\"o\272\001l\n\'field_expression.repeated.message.items\0224test message field_expression.repeated.message.items\032\013this.a == 1' + _globals['_ENUM']._serialized_start=6442 + _globals['_ENUM']._serialized_end=6484 _globals['_NOEXPRESSIONS']._serialized_start=159 _globals['_NOEXPRESSIONS']._serialized_end=356 _globals['_NOEXPRESSIONS_NESTED']._serialized_start=348 @@ -79,16 +119,74 @@ _globals['_MESSAGEEXPRESSIONS']._serialized_end=1066 _globals['_MESSAGEEXPRESSIONS_NESTED']._serialized_start=735 _globals['_MESSAGEEXPRESSIONS_NESTED']._serialized_end=855 - _globals['_FIELDEXPRESSIONS']._serialized_start=1069 - _globals['_FIELDEXPRESSIONS']._serialized_end=1751 - _globals['_FIELDEXPRESSIONS_NESTED']._serialized_start=1659 - _globals['_FIELDEXPRESSIONS_NESTED']._serialized_end=1751 - _globals['_MISSINGFIELD']._serialized_start=1753 - _globals['_MISSINGFIELD']._serialized_end=1835 - _globals['_INCORRECTTYPE']._serialized_start=1837 - _globals['_INCORRECTTYPE']._serialized_end=1940 - _globals['_DYNRUNTIMEERROR']._serialized_start=1942 - _globals['_DYNRUNTIMEERROR']._serialized_end=2067 - _globals['_NOWEQUALSNOW']._serialized_start=2069 - _globals['_NOWEQUALSNOW']._serialized_end=2161 + _globals['_MISSINGFIELD']._serialized_start=1068 + _globals['_MISSINGFIELD']._serialized_end=1150 + _globals['_INCORRECTTYPE']._serialized_start=1152 + _globals['_INCORRECTTYPE']._serialized_end=1255 + _globals['_DYNRUNTIMEERROR']._serialized_start=1257 + _globals['_DYNRUNTIMEERROR']._serialized_end=1382 + _globals['_NOWEQUALSNOW']._serialized_start=1384 + _globals['_NOWEQUALSNOW']._serialized_end=1476 + _globals['_FIELDEXPRESSIONMULTIPLESCALAR']._serialized_start=1479 + _globals['_FIELDEXPRESSIONMULTIPLESCALAR']._serialized_end=1830 + _globals['_FIELDEXPRESSIONNESTEDSCALAR']._serialized_start=1832 + _globals['_FIELDEXPRESSIONNESTEDSCALAR']._serialized_end=1959 + _globals['_FIELDEXPRESSIONOPTIONALSCALAR']._serialized_start=1962 + _globals['_FIELDEXPRESSIONOPTIONALSCALAR']._serialized_end=2124 + _globals['_FIELDEXPRESSIONSCALAR']._serialized_start=2126 + _globals['_FIELDEXPRESSIONSCALAR']._serialized_end=2249 + _globals['_FIELDEXPRESSIONENUM']._serialized_start=2252 + _globals['_FIELDEXPRESSIONENUM']._serialized_end=2427 + _globals['_FIELDEXPRESSIONMESSAGE']._serialized_start=2430 + _globals['_FIELDEXPRESSIONMESSAGE']._serialized_end=2659 + _globals['_FIELDEXPRESSIONMESSAGE_MSG']._serialized_start=2640 + _globals['_FIELDEXPRESSIONMESSAGE_MSG']._serialized_end=2659 + _globals['_FIELDEXPRESSIONMAPSCALAR']._serialized_start=2662 + _globals['_FIELDEXPRESSIONMAPSCALAR']._serialized_end=2955 + _globals['_FIELDEXPRESSIONMAPSCALAR_VALENTRY']._serialized_start=2901 + _globals['_FIELDEXPRESSIONMAPSCALAR_VALENTRY']._serialized_end=2955 + _globals['_FIELDEXPRESSIONMAPENUM']._serialized_start=2958 + _globals['_FIELDEXPRESSIONMAPENUM']._serialized_end=3300 + _globals['_FIELDEXPRESSIONMAPENUM_VALENTRY']._serialized_start=3189 + _globals['_FIELDEXPRESSIONMAPENUM_VALENTRY']._serialized_end=3300 + _globals['_FIELDEXPRESSIONMAPMESSAGE']._serialized_start=3303 + _globals['_FIELDEXPRESSIONMAPMESSAGE']._serialized_end=3706 + _globals['_FIELDEXPRESSIONMAPMESSAGE_VALENTRY']._serialized_start=3549 + _globals['_FIELDEXPRESSIONMAPMESSAGE_VALENTRY']._serialized_end=3685 + _globals['_FIELDEXPRESSIONMAPMESSAGE_MSG']._serialized_start=2640 + _globals['_FIELDEXPRESSIONMAPMESSAGE_MSG']._serialized_end=2659 + _globals['_FIELDEXPRESSIONMAPKEYS']._serialized_start=3709 + _globals['_FIELDEXPRESSIONMAPKEYS']._serialized_end=3996 + _globals['_FIELDEXPRESSIONMAPKEYS_VALENTRY']._serialized_start=2901 + _globals['_FIELDEXPRESSIONMAPKEYS_VALENTRY']._serialized_end=2955 + _globals['_FIELDEXPRESSIONMAPSCALARVALUES']._serialized_start=3999 + _globals['_FIELDEXPRESSIONMAPSCALARVALUES']._serialized_end=4307 + _globals['_FIELDEXPRESSIONMAPSCALARVALUES_VALENTRY']._serialized_start=2901 + _globals['_FIELDEXPRESSIONMAPSCALARVALUES_VALENTRY']._serialized_end=2955 + _globals['_FIELDEXPRESSIONMAPENUMVALUES']._serialized_start=4310 + _globals['_FIELDEXPRESSIONMAPENUMVALUES']._serialized_end=4667 + _globals['_FIELDEXPRESSIONMAPENUMVALUES_VALENTRY']._serialized_start=3189 + _globals['_FIELDEXPRESSIONMAPENUMVALUES_VALENTRY']._serialized_end=3300 + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES']._serialized_start=4670 + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES']._serialized_end=5094 + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES_VALENTRY']._serialized_start=4931 + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES_VALENTRY']._serialized_end=5073 + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES_MSG']._serialized_start=2640 + _globals['_FIELDEXPRESSIONMAPMESSAGEVALUES_MSG']._serialized_end=2659 + _globals['_FIELDEXPRESSIONREPEATEDSCALAR']._serialized_start=5097 + _globals['_FIELDEXPRESSIONREPEATEDSCALAR']._serialized_end=5256 + _globals['_FIELDEXPRESSIONREPEATEDENUM']._serialized_start=5259 + _globals['_FIELDEXPRESSIONREPEATEDENUM']._serialized_end=5470 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGE']._serialized_start=5473 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGE']._serialized_end=5746 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGE_MSG']._serialized_start=2640 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGE_MSG']._serialized_end=2659 + _globals['_FIELDEXPRESSIONREPEATEDSCALARITEMS']._serialized_start=5749 + _globals['_FIELDEXPRESSIONREPEATEDSCALARITEMS']._serialized_end=5921 + _globals['_FIELDEXPRESSIONREPEATEDENUMITEMS']._serialized_start=5924 + _globals['_FIELDEXPRESSIONREPEATEDENUMITEMS']._serialized_end=6147 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGEITEMS']._serialized_start=6150 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGEITEMS']._serialized_end=6440 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGEITEMS_MSG']._serialized_start=2640 + _globals['_FIELDEXPRESSIONREPEATEDMESSAGEITEMS_MSG']._serialized_end=2659 # @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.pyi b/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.pyi index 1b7a8ffa..06e7a75a 100644 --- a/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.pyi +++ b/gen/buf/validate/conformance/cases/custom_constraints/custom_constraints_pb2.pyi @@ -13,10 +13,11 @@ # limitations under the License. from buf.validate import validate_pb2 as _validate_pb2 +from google.protobuf.internal import containers as _containers from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message -from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union DESCRIPTOR: _descriptor.FileDescriptor @@ -63,23 +64,6 @@ class MessageExpressions(_message.Message): f: MessageExpressions.Nested def __init__(self, a: _Optional[int] = ..., b: _Optional[int] = ..., c: _Optional[_Union[Enum, str]] = ..., d: _Optional[_Union[Enum, str]] = ..., e: _Optional[_Union[MessageExpressions.Nested, _Mapping]] = ..., f: _Optional[_Union[MessageExpressions.Nested, _Mapping]] = ...) -> None: ... -class FieldExpressions(_message.Message): - __slots__ = ("a", "b", "c", "d") - class Nested(_message.Message): - __slots__ = ("a",) - A_FIELD_NUMBER: _ClassVar[int] - a: int - def __init__(self, a: _Optional[int] = ...) -> None: ... - A_FIELD_NUMBER: _ClassVar[int] - B_FIELD_NUMBER: _ClassVar[int] - C_FIELD_NUMBER: _ClassVar[int] - D_FIELD_NUMBER: _ClassVar[int] - a: int - b: Enum - c: FieldExpressions.Nested - d: int - def __init__(self, a: _Optional[int] = ..., b: _Optional[_Union[Enum, str]] = ..., c: _Optional[_Union[FieldExpressions.Nested, _Mapping]] = ..., d: _Optional[int] = ...) -> None: ... - class MissingField(_message.Message): __slots__ = ("a",) A_FIELD_NUMBER: _ClassVar[int] @@ -101,3 +85,191 @@ class DynRuntimeError(_message.Message): class NowEqualsNow(_message.Message): __slots__ = () def __init__(self) -> None: ... + +class FieldExpressionMultipleScalar(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class FieldExpressionNestedScalar(_message.Message): + __slots__ = ("nested",) + NESTED_FIELD_NUMBER: _ClassVar[int] + nested: FieldExpressionScalar + def __init__(self, nested: _Optional[_Union[FieldExpressionScalar, _Mapping]] = ...) -> None: ... + +class FieldExpressionOptionalScalar(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class FieldExpressionScalar(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class FieldExpressionEnum(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: Enum + def __init__(self, val: _Optional[_Union[Enum, str]] = ...) -> None: ... + +class FieldExpressionMessage(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("a",) + A_FIELD_NUMBER: _ClassVar[int] + a: int + def __init__(self, a: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: FieldExpressionMessage.Msg + def __init__(self, val: _Optional[_Union[FieldExpressionMessage.Msg, _Mapping]] = ...) -> None: ... + +class FieldExpressionMapScalar(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + +class FieldExpressionMapEnum(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: Enum + def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[Enum, str]] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, Enum] + def __init__(self, val: _Optional[_Mapping[int, Enum]] = ...) -> None: ... + +class FieldExpressionMapMessage(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: FieldExpressionMapMessage.Msg + def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[FieldExpressionMapMessage.Msg, _Mapping]] = ...) -> None: ... + class Msg(_message.Message): + __slots__ = ("a",) + A_FIELD_NUMBER: _ClassVar[int] + a: int + def __init__(self, a: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.MessageMap[int, FieldExpressionMapMessage.Msg] + def __init__(self, val: _Optional[_Mapping[int, FieldExpressionMapMessage.Msg]] = ...) -> None: ... + +class FieldExpressionMapKeys(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + +class FieldExpressionMapScalarValues(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + +class FieldExpressionMapEnumValues(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: Enum + def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[Enum, str]] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, Enum] + def __init__(self, val: _Optional[_Mapping[int, Enum]] = ...) -> None: ... + +class FieldExpressionMapMessageValues(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: FieldExpressionMapMessageValues.Msg + def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[FieldExpressionMapMessageValues.Msg, _Mapping]] = ...) -> None: ... + class Msg(_message.Message): + __slots__ = ("a",) + A_FIELD_NUMBER: _ClassVar[int] + a: int + def __init__(self, a: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.MessageMap[int, FieldExpressionMapMessageValues.Msg] + def __init__(self, val: _Optional[_Mapping[int, FieldExpressionMapMessageValues.Msg]] = ...) -> None: ... + +class FieldExpressionRepeatedScalar(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + +class FieldExpressionRepeatedEnum(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[Enum] + def __init__(self, val: _Optional[_Iterable[_Union[Enum, str]]] = ...) -> None: ... + +class FieldExpressionRepeatedMessage(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("a",) + A_FIELD_NUMBER: _ClassVar[int] + a: int + def __init__(self, a: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedCompositeFieldContainer[FieldExpressionRepeatedMessage.Msg] + def __init__(self, val: _Optional[_Iterable[_Union[FieldExpressionRepeatedMessage.Msg, _Mapping]]] = ...) -> None: ... + +class FieldExpressionRepeatedScalarItems(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + +class FieldExpressionRepeatedEnumItems(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[Enum] + def __init__(self, val: _Optional[_Iterable[_Union[Enum, str]]] = ...) -> None: ... + +class FieldExpressionRepeatedMessageItems(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("a",) + A_FIELD_NUMBER: _ClassVar[int] + a: int + def __init__(self, a: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedCompositeFieldContainer[FieldExpressionRepeatedMessageItems.Msg] + def __init__(self, val: _Optional[_Iterable[_Union[FieldExpressionRepeatedMessageItems.Msg, _Mapping]]] = ...) -> None: ... diff --git a/gen/buf/validate/conformance/cases/ignore_proto2_pb2.py b/gen/buf/validate/conformance/cases/ignore_proto2_pb2.py index 966d7724..3cff91c1 100644 --- a/gen/buf/validate/conformance/cases/ignore_proto2_pb2.py +++ b/gen/buf/validate/conformance/cases/ignore_proto2_pb2.py @@ -39,7 +39,7 @@ from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2buf/validate/conformance/cases/ignore_proto2.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"B\n%Proto2ScalarOptionalIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"R\n0Proto2ScalarOptionalIgnoreUnspecifiedWithDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00R\x03val\"?\n\x1fProto2ScalarOptionalIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"O\n*Proto2ScalarOptionalIgnoreEmptyWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"A\n!Proto2ScalarOptionalIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"Q\n,Proto2ScalarOptionalIgnoreDefaultWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"B\n%Proto2ScalarRequiredIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x02(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"R\n0Proto2ScalarRequiredIgnoreUnspecifiedWithDefault\x12\x1e\n\x03val\x18\x01 \x02(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00R\x03val\"?\n\x1fProto2ScalarRequiredIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x02(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"O\n*Proto2ScalarRequiredIgnoreEmptyWithDefault\x12!\n\x03val\x18\x01 \x02(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"A\n!Proto2ScalarRequiredIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x02(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"Q\n,Proto2ScalarRequiredIgnoreDefaultWithDefault\x12!\n\x03val\x18\x01 \x02(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"\xe0\x01\n&Proto2MessageOptionalIgnoreUnspecified\x12\x9c\x01\n\x03val\x18\x01 \x01(\x0b\x32J.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xd7\x01\n Proto2MessageOptionalIgnoreEmpty\x12\x99\x01\n\x03val\x18\x01 \x01(\x0b\x32\x44.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xdb\x01\n\"Proto2MessageOptionalIgnoreDefault\x12\x9b\x01\n\x03val\x18\x01 \x01(\x0b\x32\x46.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xe0\x01\n&Proto2MessageRequiredIgnoreUnspecified\x12\x9c\x01\n\x03val\x18\x01 \x02(\x0b\x32J.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xd7\x01\n Proto2MessageRequiredIgnoreEmpty\x12\x99\x01\n\x03val\x18\x01 \x02(\x0b\x32\x44.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xdb\x01\n\"Proto2MessageRequiredIgnoreDefault\x12\x9b\x01\n\x03val\x18\x01 \x02(\x0b\x32\x46.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"@\n\x1cProto2OneofIgnoreUnspecified\x12\x1b\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"P\n\'Proto2OneofIgnoreUnspecifiedWithDefault\x12 \n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"=\n\x16Proto2OneofIgnoreEmpty\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"M\n!Proto2OneofIgnoreEmptyWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"?\n\x18Proto2OneofIgnoreDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"O\n#Proto2OneofIgnoreDefaultWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"=\n\x1fProto2RepeatedIgnoreUnspecified\x12\x1a\n\x03val\x18\x01 \x03(\x05\x42\x08\xbaH\x05\x92\x01\x02\x08\x03R\x03val\":\n\x19Proto2RepeatedIgnoreEmpty\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\"<\n\x1bProto2RepeatedIgnoreDefault\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\"\xb5\x01\n\x1aProto2MapIgnoreUnspecified\x12_\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.Proto2MapIgnoreUnspecified.ValEntryB\x08\xbaH\x05\x9a\x01\x02\x08\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xac\x01\n\x14Proto2MapIgnoreEmpty\x12\\\n\x03val\x18\x01 \x03(\x0b\x32=.buf.validate.conformance.cases.Proto2MapIgnoreEmpty.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb0\x01\n\x16Proto2MapIgnoreDefault\x12^\n\x03val\x18\x01 \x03(\x0b\x32?.buf.validate.conformance.cases.Proto2MapIgnoreDefault.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"E\n#Proto2RepeatedItemIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x03(\x05\x42\x0c\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"B\n\x1dProto2RepeatedItemIgnoreEmpty\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"D\n\x1fProto2RepeatedItemIgnoreDefault\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"\xbf\x01\n\x1dProto2MapKeyIgnoreUnspecified\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x46.buf.validate.conformance.cases.Proto2MapKeyIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06\"\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb6\x01\n\x17Proto2MapKeyIgnoreEmpty\x12\x63\n\x03val\x18\x01 \x03(\x0b\x32@.buf.validate.conformance.cases.Proto2MapKeyIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto2MapKeyIgnoreDefault\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto2MapKeyIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc3\x01\n\x1fProto2MapValueIgnoreUnspecified\x12h\n\x03val\x18\x01 \x03(\x0b\x32H.buf.validate.conformance.cases.Proto2MapValueIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06*\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto2MapValueIgnoreEmpty\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto2MapValueIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1bProto2MapValueIgnoreDefault\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.Proto2MapValueIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\x42\xd3\x01\n\"com.buf.validate.conformance.casesB\x11IgnoreProto2ProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Cases') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2buf/validate/conformance/cases/ignore_proto2.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"B\n%Proto2ScalarOptionalIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"R\n0Proto2ScalarOptionalIgnoreUnspecifiedWithDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00R\x03val\"?\n\x1fProto2ScalarOptionalIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"O\n*Proto2ScalarOptionalIgnoreEmptyWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"A\n!Proto2ScalarOptionalIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"Q\n,Proto2ScalarOptionalIgnoreDefaultWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"@\n Proto2ScalarOptionalIgnoreAlways\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"P\n+Proto2ScalarOptionalIgnoreAlwaysWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"B\n%Proto2ScalarRequiredIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x02(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"R\n0Proto2ScalarRequiredIgnoreUnspecifiedWithDefault\x12\x1e\n\x03val\x18\x01 \x02(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00R\x03val\"?\n\x1fProto2ScalarRequiredIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x02(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"O\n*Proto2ScalarRequiredIgnoreEmptyWithDefault\x12!\n\x03val\x18\x01 \x02(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"A\n!Proto2ScalarRequiredIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x02(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"Q\n,Proto2ScalarRequiredIgnoreDefaultWithDefault\x12!\n\x03val\x18\x01 \x02(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"@\n Proto2ScalarRequiredIgnoreAlways\x12\x1c\n\x03val\x18\x01 \x02(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"P\n+Proto2ScalarRequiredIgnoreAlwaysWithDefault\x12!\n\x03val\x18\x01 \x02(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"\xe0\x01\n&Proto2MessageOptionalIgnoreUnspecified\x12\x9c\x01\n\x03val\x18\x01 \x01(\x0b\x32J.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xd7\x01\n Proto2MessageOptionalIgnoreEmpty\x12\x99\x01\n\x03val\x18\x01 \x01(\x0b\x32\x44.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xdb\x01\n\"Proto2MessageOptionalIgnoreDefault\x12\x9b\x01\n\x03val\x18\x01 \x01(\x0b\x32\x46.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xda\x01\n!Proto2MessageOptionalIgnoreAlways\x12\x9b\x01\n\x03val\x18\x01 \x01(\x0b\x32\x45.buf.validate.conformance.cases.Proto2MessageOptionalIgnoreAlways.MsgBB\xbaH?\xba\x01\x39\n\x1cproto2.message.ignore.always\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xe0\x01\n&Proto2MessageRequiredIgnoreUnspecified\x12\x9c\x01\n\x03val\x18\x01 \x02(\x0b\x32J.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xd7\x01\n Proto2MessageRequiredIgnoreEmpty\x12\x99\x01\n\x03val\x18\x01 \x02(\x0b\x32\x44.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xdb\x01\n\"Proto2MessageRequiredIgnoreDefault\x12\x9b\x01\n\x03val\x18\x01 \x02(\x0b\x32\x46.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto2.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xda\x01\n!Proto2MessageRequiredIgnoreAlways\x12\x9b\x01\n\x03val\x18\x01 \x02(\x0b\x32\x45.buf.validate.conformance.cases.Proto2MessageRequiredIgnoreAlways.MsgBB\xbaH?\xba\x01\x39\n\x1cproto2.message.ignore.always\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"@\n\x1cProto2OneofIgnoreUnspecified\x12\x1b\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"P\n\'Proto2OneofIgnoreUnspecifiedWithDefault\x12 \n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"=\n\x16Proto2OneofIgnoreEmpty\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"M\n!Proto2OneofIgnoreEmptyWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"?\n\x18Proto2OneofIgnoreDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"O\n#Proto2OneofIgnoreDefaultWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\">\n\x17Proto2OneofIgnoreAlways\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03H\x00R\x03valB\x03\n\x01o\"N\n\"Proto2OneofIgnoreAlwaysWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03H\x00R\x03valB\x03\n\x01o\"=\n\x1fProto2RepeatedIgnoreUnspecified\x12\x1a\n\x03val\x18\x01 \x03(\x05\x42\x08\xbaH\x05\x92\x01\x02\x08\x03R\x03val\":\n\x19Proto2RepeatedIgnoreEmpty\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\"<\n\x1bProto2RepeatedIgnoreDefault\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\";\n\x1aProto2RepeatedIgnoreAlways\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x03R\x03val\"\xb5\x01\n\x1aProto2MapIgnoreUnspecified\x12_\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.Proto2MapIgnoreUnspecified.ValEntryB\x08\xbaH\x05\x9a\x01\x02\x08\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xac\x01\n\x14Proto2MapIgnoreEmpty\x12\\\n\x03val\x18\x01 \x03(\x0b\x32=.buf.validate.conformance.cases.Proto2MapIgnoreEmpty.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb0\x01\n\x16Proto2MapIgnoreDefault\x12^\n\x03val\x18\x01 \x03(\x0b\x32?.buf.validate.conformance.cases.Proto2MapIgnoreDefault.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xae\x01\n\x15Proto2MapIgnoreAlways\x12]\n\x03val\x18\x01 \x03(\x0b\x32>.buf.validate.conformance.cases.Proto2MapIgnoreAlways.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"E\n#Proto2RepeatedItemIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x03(\x05\x42\x0c\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"B\n\x1dProto2RepeatedItemIgnoreEmpty\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"D\n\x1fProto2RepeatedItemIgnoreDefault\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"C\n\x1eProto2RepeatedItemIgnoreAlways\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"\xbf\x01\n\x1dProto2MapKeyIgnoreUnspecified\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x46.buf.validate.conformance.cases.Proto2MapKeyIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06\"\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb6\x01\n\x17Proto2MapKeyIgnoreEmpty\x12\x63\n\x03val\x18\x01 \x03(\x0b\x32@.buf.validate.conformance.cases.Proto2MapKeyIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto2MapKeyIgnoreDefault\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto2MapKeyIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb8\x01\n\x18Proto2MapKeyIgnoreAlways\x12\x64\n\x03val\x18\x01 \x03(\x0b\x32\x41.buf.validate.conformance.cases.Proto2MapKeyIgnoreAlways.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc3\x01\n\x1fProto2MapValueIgnoreUnspecified\x12h\n\x03val\x18\x01 \x03(\x0b\x32H.buf.validate.conformance.cases.Proto2MapValueIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06*\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto2MapValueIgnoreEmpty\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto2MapValueIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1bProto2MapValueIgnoreDefault\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.Proto2MapValueIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbc\x01\n\x1aProto2MapValueIgnoreAlways\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.Proto2MapValueIgnoreAlways.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\x42\xd3\x01\n\"com.buf.validate.conformance.casesB\x11IgnoreProto2ProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Cases') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -59,6 +59,10 @@ _globals['_PROTO2SCALAROPTIONALIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' _globals['_PROTO2SCALAROPTIONALIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2SCALAROPTIONALIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\004\032\002 \000' _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT'].fields_by_name['val']._loaded_options = None @@ -71,18 +75,26 @@ _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H;\272\0018\n\033proto2.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'' _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto2.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\001' _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto2.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' + _globals['_PROTO2MESSAGEOPTIONALIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2MESSAGEOPTIONALIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H?\272\0019\n\034proto2.message.ignore.always\022\006foobar\032\021this.val == \'foo\'\330\001\003' _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H;\272\0018\n\033proto2.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'' _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto2.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\001' _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto2.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' + _globals['_PROTO2MESSAGEREQUIREDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2MESSAGEREQUIREDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H?\272\0019\n\034proto2.message.ignore.always\022\006foobar\032\021this.val == \'foo\'\330\001\003' _globals['_PROTO2ONEOFIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO2ONEOFIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\004\032\002 \000' _globals['_PROTO2ONEOFIGNOREUNSPECIFIEDWITHDEFAULT'].fields_by_name['val']._loaded_options = None @@ -95,12 +107,18 @@ _globals['_PROTO2ONEOFIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' _globals['_PROTO2ONEOFIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2ONEOFIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_PROTO2ONEOFIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2ONEOFIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' + _globals['_PROTO2ONEOFIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2ONEOFIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_PROTO2REPEATEDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO2REPEATEDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\005\222\001\002\010\003' _globals['_PROTO2REPEATEDIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO2REPEATEDIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\001' _globals['_PROTO2REPEATEDIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2REPEATEDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\002' + _globals['_PROTO2REPEATEDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2REPEATEDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\003' _globals['_PROTO2MAPIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_PROTO2MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO2MAPIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -113,12 +131,18 @@ _globals['_PROTO2MAPIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO2MAPIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MAPIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\010\232\001\002\010\003\330\001\002' + _globals['_PROTO2MAPIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_PROTO2MAPIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_PROTO2MAPIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2MAPIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\010\232\001\002\010\003\330\001\003' _globals['_PROTO2REPEATEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO2REPEATEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\t\222\001\006\"\004\032\002 \000' _globals['_PROTO2REPEATEDITEMIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO2REPEATEDITEMIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\001' _globals['_PROTO2REPEATEDITEMIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2REPEATEDITEMIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\002' + _globals['_PROTO2REPEATEDITEMIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2REPEATEDITEMIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\003' _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -131,6 +155,10 @@ _globals['_PROTO2MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO2MAPKEYIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MAPKEYIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t\"\007\032\002 \000\330\001\002' + _globals['_PROTO2MAPKEYIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_PROTO2MAPKEYIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_PROTO2MAPKEYIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2MAPKEYIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t\"\007\032\002 \000\330\001\003' _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -143,6 +171,10 @@ _globals['_PROTO2MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO2MAPVALUEIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO2MAPVALUEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t*\007\032\002 \000\330\001\002' + _globals['_PROTO2MAPVALUEIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_PROTO2MAPVALUEIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_PROTO2MAPVALUEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO2MAPVALUEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t*\007\032\002 \000\330\001\003' _globals['_PROTO2SCALAROPTIONALIGNOREUNSPECIFIED']._serialized_start=115 _globals['_PROTO2SCALAROPTIONALIGNOREUNSPECIFIED']._serialized_end=181 _globals['_PROTO2SCALAROPTIONALIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=183 @@ -155,100 +187,136 @@ _globals['_PROTO2SCALAROPTIONALIGNOREDEFAULT']._serialized_end=478 _globals['_PROTO2SCALAROPTIONALIGNOREDEFAULTWITHDEFAULT']._serialized_start=480 _globals['_PROTO2SCALAROPTIONALIGNOREDEFAULTWITHDEFAULT']._serialized_end=561 - _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIED']._serialized_start=563 - _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIED']._serialized_end=629 - _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=631 - _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=713 - _globals['_PROTO2SCALARREQUIREDIGNOREEMPTY']._serialized_start=715 - _globals['_PROTO2SCALARREQUIREDIGNOREEMPTY']._serialized_end=778 - _globals['_PROTO2SCALARREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_start=780 - _globals['_PROTO2SCALARREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_end=859 - _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULT']._serialized_start=861 - _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULT']._serialized_end=926 - _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_start=928 - _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_end=1009 - _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_start=1012 - _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_end=1236 - _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_start=1213 - _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_end=1236 - _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY']._serialized_start=1239 - _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY']._serialized_end=1454 - _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_start=1213 - _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_end=1236 - _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT']._serialized_start=1457 - _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT']._serialized_end=1676 - _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_start=1213 - _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_end=1236 - _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED']._serialized_start=1679 - _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED']._serialized_end=1903 - _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_start=1213 - _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_end=1236 - _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY']._serialized_start=1906 - _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY']._serialized_end=2121 - _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY_MSG']._serialized_start=1213 - _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY_MSG']._serialized_end=1236 - _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT']._serialized_start=2124 - _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT']._serialized_end=2343 - _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT_MSG']._serialized_start=1213 - _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT_MSG']._serialized_end=1236 - _globals['_PROTO2ONEOFIGNOREUNSPECIFIED']._serialized_start=2345 - _globals['_PROTO2ONEOFIGNOREUNSPECIFIED']._serialized_end=2409 - _globals['_PROTO2ONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=2411 - _globals['_PROTO2ONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=2491 - _globals['_PROTO2ONEOFIGNOREEMPTY']._serialized_start=2493 - _globals['_PROTO2ONEOFIGNOREEMPTY']._serialized_end=2554 - _globals['_PROTO2ONEOFIGNOREEMPTYWITHDEFAULT']._serialized_start=2556 - _globals['_PROTO2ONEOFIGNOREEMPTYWITHDEFAULT']._serialized_end=2633 - _globals['_PROTO2ONEOFIGNOREDEFAULT']._serialized_start=2635 - _globals['_PROTO2ONEOFIGNOREDEFAULT']._serialized_end=2698 - _globals['_PROTO2ONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_start=2700 - _globals['_PROTO2ONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_end=2779 - _globals['_PROTO2REPEATEDIGNOREUNSPECIFIED']._serialized_start=2781 - _globals['_PROTO2REPEATEDIGNOREUNSPECIFIED']._serialized_end=2842 - _globals['_PROTO2REPEATEDIGNOREEMPTY']._serialized_start=2844 - _globals['_PROTO2REPEATEDIGNOREEMPTY']._serialized_end=2902 - _globals['_PROTO2REPEATEDIGNOREDEFAULT']._serialized_start=2904 - _globals['_PROTO2REPEATEDIGNOREDEFAULT']._serialized_end=2964 - _globals['_PROTO2MAPIGNOREUNSPECIFIED']._serialized_start=2967 - _globals['_PROTO2MAPIGNOREUNSPECIFIED']._serialized_end=3148 - _globals['_PROTO2MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPIGNOREEMPTY']._serialized_start=3151 - _globals['_PROTO2MAPIGNOREEMPTY']._serialized_end=3323 - _globals['_PROTO2MAPIGNOREEMPTY_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPIGNOREEMPTY_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPIGNOREDEFAULT']._serialized_start=3326 - _globals['_PROTO2MAPIGNOREDEFAULT']._serialized_end=3502 - _globals['_PROTO2MAPIGNOREDEFAULT_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPIGNOREDEFAULT_VALENTRY']._serialized_end=3148 - _globals['_PROTO2REPEATEDITEMIGNOREUNSPECIFIED']._serialized_start=3504 - _globals['_PROTO2REPEATEDITEMIGNOREUNSPECIFIED']._serialized_end=3573 - _globals['_PROTO2REPEATEDITEMIGNOREEMPTY']._serialized_start=3575 - _globals['_PROTO2REPEATEDITEMIGNOREEMPTY']._serialized_end=3641 - _globals['_PROTO2REPEATEDITEMIGNOREDEFAULT']._serialized_start=3643 - _globals['_PROTO2REPEATEDITEMIGNOREDEFAULT']._serialized_end=3711 - _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED']._serialized_start=3714 - _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED']._serialized_end=3905 - _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPKEYIGNOREEMPTY']._serialized_start=3908 - _globals['_PROTO2MAPKEYIGNOREEMPTY']._serialized_end=4090 - _globals['_PROTO2MAPKEYIGNOREEMPTY_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPKEYIGNOREEMPTY_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPKEYIGNOREDEFAULT']._serialized_start=4093 - _globals['_PROTO2MAPKEYIGNOREDEFAULT']._serialized_end=4279 - _globals['_PROTO2MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED']._serialized_start=4282 - _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED']._serialized_end=4477 - _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPVALUEIGNOREEMPTY']._serialized_start=4480 - _globals['_PROTO2MAPVALUEIGNOREEMPTY']._serialized_end=4666 - _globals['_PROTO2MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_end=3148 - _globals['_PROTO2MAPVALUEIGNOREDEFAULT']._serialized_start=4669 - _globals['_PROTO2MAPVALUEIGNOREDEFAULT']._serialized_end=4859 - _globals['_PROTO2MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_start=3094 - _globals['_PROTO2MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_end=3148 + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYS']._serialized_start=563 + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYS']._serialized_end=627 + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYSWITHDEFAULT']._serialized_start=629 + _globals['_PROTO2SCALAROPTIONALIGNOREALWAYSWITHDEFAULT']._serialized_end=709 + _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIED']._serialized_start=711 + _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIED']._serialized_end=777 + _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=779 + _globals['_PROTO2SCALARREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=861 + _globals['_PROTO2SCALARREQUIREDIGNOREEMPTY']._serialized_start=863 + _globals['_PROTO2SCALARREQUIREDIGNOREEMPTY']._serialized_end=926 + _globals['_PROTO2SCALARREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_start=928 + _globals['_PROTO2SCALARREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_end=1007 + _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULT']._serialized_start=1009 + _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULT']._serialized_end=1074 + _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_start=1076 + _globals['_PROTO2SCALARREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_end=1157 + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYS']._serialized_start=1159 + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYS']._serialized_end=1223 + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYSWITHDEFAULT']._serialized_start=1225 + _globals['_PROTO2SCALARREQUIREDIGNOREALWAYSWITHDEFAULT']._serialized_end=1305 + _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_start=1308 + _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_end=1532 + _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY']._serialized_start=1535 + _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY']._serialized_end=1750 + _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT']._serialized_start=1753 + _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT']._serialized_end=1972 + _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEOPTIONALIGNOREALWAYS']._serialized_start=1975 + _globals['_PROTO2MESSAGEOPTIONALIGNOREALWAYS']._serialized_end=2193 + _globals['_PROTO2MESSAGEOPTIONALIGNOREALWAYS_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEOPTIONALIGNOREALWAYS_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED']._serialized_start=2196 + _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED']._serialized_end=2420 + _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY']._serialized_start=2423 + _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY']._serialized_end=2638 + _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEREQUIREDIGNOREEMPTY_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT']._serialized_start=2641 + _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT']._serialized_end=2860 + _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEREQUIREDIGNOREDEFAULT_MSG']._serialized_end=1532 + _globals['_PROTO2MESSAGEREQUIREDIGNOREALWAYS']._serialized_start=2863 + _globals['_PROTO2MESSAGEREQUIREDIGNOREALWAYS']._serialized_end=3081 + _globals['_PROTO2MESSAGEREQUIREDIGNOREALWAYS_MSG']._serialized_start=1509 + _globals['_PROTO2MESSAGEREQUIREDIGNOREALWAYS_MSG']._serialized_end=1532 + _globals['_PROTO2ONEOFIGNOREUNSPECIFIED']._serialized_start=3083 + _globals['_PROTO2ONEOFIGNOREUNSPECIFIED']._serialized_end=3147 + _globals['_PROTO2ONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=3149 + _globals['_PROTO2ONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=3229 + _globals['_PROTO2ONEOFIGNOREEMPTY']._serialized_start=3231 + _globals['_PROTO2ONEOFIGNOREEMPTY']._serialized_end=3292 + _globals['_PROTO2ONEOFIGNOREEMPTYWITHDEFAULT']._serialized_start=3294 + _globals['_PROTO2ONEOFIGNOREEMPTYWITHDEFAULT']._serialized_end=3371 + _globals['_PROTO2ONEOFIGNOREDEFAULT']._serialized_start=3373 + _globals['_PROTO2ONEOFIGNOREDEFAULT']._serialized_end=3436 + _globals['_PROTO2ONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_start=3438 + _globals['_PROTO2ONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_end=3517 + _globals['_PROTO2ONEOFIGNOREALWAYS']._serialized_start=3519 + _globals['_PROTO2ONEOFIGNOREALWAYS']._serialized_end=3581 + _globals['_PROTO2ONEOFIGNOREALWAYSWITHDEFAULT']._serialized_start=3583 + _globals['_PROTO2ONEOFIGNOREALWAYSWITHDEFAULT']._serialized_end=3661 + _globals['_PROTO2REPEATEDIGNOREUNSPECIFIED']._serialized_start=3663 + _globals['_PROTO2REPEATEDIGNOREUNSPECIFIED']._serialized_end=3724 + _globals['_PROTO2REPEATEDIGNOREEMPTY']._serialized_start=3726 + _globals['_PROTO2REPEATEDIGNOREEMPTY']._serialized_end=3784 + _globals['_PROTO2REPEATEDIGNOREDEFAULT']._serialized_start=3786 + _globals['_PROTO2REPEATEDIGNOREDEFAULT']._serialized_end=3846 + _globals['_PROTO2REPEATEDIGNOREALWAYS']._serialized_start=3848 + _globals['_PROTO2REPEATEDIGNOREALWAYS']._serialized_end=3907 + _globals['_PROTO2MAPIGNOREUNSPECIFIED']._serialized_start=3910 + _globals['_PROTO2MAPIGNOREUNSPECIFIED']._serialized_end=4091 + _globals['_PROTO2MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPIGNOREEMPTY']._serialized_start=4094 + _globals['_PROTO2MAPIGNOREEMPTY']._serialized_end=4266 + _globals['_PROTO2MAPIGNOREEMPTY_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPIGNOREEMPTY_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPIGNOREDEFAULT']._serialized_start=4269 + _globals['_PROTO2MAPIGNOREDEFAULT']._serialized_end=4445 + _globals['_PROTO2MAPIGNOREDEFAULT_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPIGNOREDEFAULT_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPIGNOREALWAYS']._serialized_start=4448 + _globals['_PROTO2MAPIGNOREALWAYS']._serialized_end=4622 + _globals['_PROTO2MAPIGNOREALWAYS_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPIGNOREALWAYS_VALENTRY']._serialized_end=4091 + _globals['_PROTO2REPEATEDITEMIGNOREUNSPECIFIED']._serialized_start=4624 + _globals['_PROTO2REPEATEDITEMIGNOREUNSPECIFIED']._serialized_end=4693 + _globals['_PROTO2REPEATEDITEMIGNOREEMPTY']._serialized_start=4695 + _globals['_PROTO2REPEATEDITEMIGNOREEMPTY']._serialized_end=4761 + _globals['_PROTO2REPEATEDITEMIGNOREDEFAULT']._serialized_start=4763 + _globals['_PROTO2REPEATEDITEMIGNOREDEFAULT']._serialized_end=4831 + _globals['_PROTO2REPEATEDITEMIGNOREALWAYS']._serialized_start=4833 + _globals['_PROTO2REPEATEDITEMIGNOREALWAYS']._serialized_end=4900 + _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED']._serialized_start=4903 + _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED']._serialized_end=5094 + _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPKEYIGNOREEMPTY']._serialized_start=5097 + _globals['_PROTO2MAPKEYIGNOREEMPTY']._serialized_end=5279 + _globals['_PROTO2MAPKEYIGNOREEMPTY_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPKEYIGNOREEMPTY_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPKEYIGNOREDEFAULT']._serialized_start=5282 + _globals['_PROTO2MAPKEYIGNOREDEFAULT']._serialized_end=5468 + _globals['_PROTO2MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPKEYIGNOREALWAYS']._serialized_start=5471 + _globals['_PROTO2MAPKEYIGNOREALWAYS']._serialized_end=5655 + _globals['_PROTO2MAPKEYIGNOREALWAYS_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPKEYIGNOREALWAYS_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED']._serialized_start=5658 + _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED']._serialized_end=5853 + _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPVALUEIGNOREEMPTY']._serialized_start=5856 + _globals['_PROTO2MAPVALUEIGNOREEMPTY']._serialized_end=6042 + _globals['_PROTO2MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPVALUEIGNOREDEFAULT']._serialized_start=6045 + _globals['_PROTO2MAPVALUEIGNOREDEFAULT']._serialized_end=6235 + _globals['_PROTO2MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_end=4091 + _globals['_PROTO2MAPVALUEIGNOREALWAYS']._serialized_start=6238 + _globals['_PROTO2MAPVALUEIGNOREALWAYS']._serialized_end=6426 + _globals['_PROTO2MAPVALUEIGNOREALWAYS_VALENTRY']._serialized_start=4037 + _globals['_PROTO2MAPVALUEIGNOREALWAYS_VALENTRY']._serialized_end=4091 # @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/cases/ignore_proto2_pb2.pyi b/gen/buf/validate/conformance/cases/ignore_proto2_pb2.pyi index 79f8be28..041e2497 100644 --- a/gen/buf/validate/conformance/cases/ignore_proto2_pb2.pyi +++ b/gen/buf/validate/conformance/cases/ignore_proto2_pb2.pyi @@ -56,6 +56,18 @@ class Proto2ScalarOptionalIgnoreDefaultWithDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class Proto2ScalarOptionalIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class Proto2ScalarOptionalIgnoreAlwaysWithDefault(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class Proto2ScalarRequiredIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -92,6 +104,18 @@ class Proto2ScalarRequiredIgnoreDefaultWithDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class Proto2ScalarRequiredIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class Proto2ScalarRequiredIgnoreAlwaysWithDefault(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class Proto2MessageOptionalIgnoreUnspecified(_message.Message): __slots__ = ("val",) class Msg(_message.Message): @@ -125,6 +149,17 @@ class Proto2MessageOptionalIgnoreDefault(_message.Message): val: Proto2MessageOptionalIgnoreDefault.Msg def __init__(self, val: _Optional[_Union[Proto2MessageOptionalIgnoreDefault.Msg, _Mapping]] = ...) -> None: ... +class Proto2MessageOptionalIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: Proto2MessageOptionalIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[Proto2MessageOptionalIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + class Proto2MessageRequiredIgnoreUnspecified(_message.Message): __slots__ = ("val",) class Msg(_message.Message): @@ -158,6 +193,17 @@ class Proto2MessageRequiredIgnoreDefault(_message.Message): val: Proto2MessageRequiredIgnoreDefault.Msg def __init__(self, val: _Optional[_Union[Proto2MessageRequiredIgnoreDefault.Msg, _Mapping]] = ...) -> None: ... +class Proto2MessageRequiredIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: Proto2MessageRequiredIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[Proto2MessageRequiredIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + class Proto2OneofIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -194,6 +240,18 @@ class Proto2OneofIgnoreDefaultWithDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class Proto2OneofIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class Proto2OneofIgnoreAlwaysWithDefault(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class Proto2RepeatedIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -212,6 +270,12 @@ class Proto2RepeatedIgnoreDefault(_message.Message): val: _containers.RepeatedScalarFieldContainer[int] def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... +class Proto2RepeatedIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + class Proto2MapIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -251,6 +315,19 @@ class Proto2MapIgnoreDefault(_message.Message): val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... +class Proto2MapIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + class Proto2RepeatedItemIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -269,6 +346,12 @@ class Proto2RepeatedItemIgnoreDefault(_message.Message): val: _containers.RepeatedScalarFieldContainer[int] def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... +class Proto2RepeatedItemIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + class Proto2MapKeyIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -308,6 +391,19 @@ class Proto2MapKeyIgnoreDefault(_message.Message): val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... +class Proto2MapKeyIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + class Proto2MapValueIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -346,3 +442,16 @@ class Proto2MapValueIgnoreDefault(_message.Message): VAL_FIELD_NUMBER: _ClassVar[int] val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + +class Proto2MapValueIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... diff --git a/gen/buf/validate/conformance/cases/ignore_proto3_pb2.py b/gen/buf/validate/conformance/cases/ignore_proto3_pb2.py index 4c6beb8b..3afc4712 100644 --- a/gen/buf/validate/conformance/cases/ignore_proto3_pb2.py +++ b/gen/buf/validate/conformance/cases/ignore_proto3_pb2.py @@ -39,7 +39,7 @@ from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2buf/validate/conformance/cases/ignore_proto3.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"O\n%Proto3ScalarOptionalIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"L\n\x1fProto3ScalarOptionalIgnoreEmpty\x12!\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"N\n!Proto3ScalarOptionalIgnoreDefault\x12!\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\":\n\x1dProto3ScalarIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"7\n\x17Proto3ScalarIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"9\n\x19Proto3ScalarIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"\xfa\x01\n&Proto3MessageOptionalIgnoreUnspecified\x12\xa1\x01\n\x03val\x18\x01 \x01(\x0b\x32J.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xf1\x01\n Proto3MessageOptionalIgnoreEmpty\x12\x9e\x01\n\x03val\x18\x01 \x01(\x0b\x32\x44.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xf5\x01\n\"Proto3MessageOptionalIgnoreDefault\x12\xa0\x01\n\x03val\x18\x01 \x01(\x0b\x32\x46.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xdd\x01\n\x1eProto3MessageIgnoreUnspecified\x12\x94\x01\n\x03val\x18\x01 \x01(\x0b\x32\x42.buf.validate.conformance.cases.Proto3MessageIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"\xd4\x01\n\x18Proto3MessageIgnoreEmpty\x12\x91\x01\n\x03val\x18\x01 \x01(\x0b\x32<.buf.validate.conformance.cases.Proto3MessageIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"\xd8\x01\n\x1aProto3MessageIgnoreDefault\x12\x93\x01\n\x03val\x18\x01 \x01(\x0b\x32>.buf.validate.conformance.cases.Proto3MessageIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"@\n\x1cProto3OneofIgnoreUnspecified\x12\x1b\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"=\n\x16Proto3OneofIgnoreEmpty\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"?\n\x18Proto3OneofIgnoreDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"=\n\x1fProto3RepeatedIgnoreUnspecified\x12\x1a\n\x03val\x18\x01 \x03(\x05\x42\x08\xbaH\x05\x92\x01\x02\x08\x03R\x03val\":\n\x19Proto3RepeatedIgnoreEmpty\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\"<\n\x1bProto3RepeatedIgnoreDefault\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\"\xb5\x01\n\x1aProto3MapIgnoreUnspecified\x12_\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.Proto3MapIgnoreUnspecified.ValEntryB\x08\xbaH\x05\x9a\x01\x02\x08\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xac\x01\n\x14Proto3MapIgnoreEmpty\x12\\\n\x03val\x18\x01 \x03(\x0b\x32=.buf.validate.conformance.cases.Proto3MapIgnoreEmpty.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb0\x01\n\x16Proto3MapIgnoreDefault\x12^\n\x03val\x18\x01 \x03(\x0b\x32?.buf.validate.conformance.cases.Proto3MapIgnoreDefault.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"E\n#Proto3RepeatedItemIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x03(\x05\x42\x0c\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"B\n\x1dProto3RepeatedItemIgnoreEmpty\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"D\n\x1fProto3RepeatedItemIgnoreDefault\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"\xbf\x01\n\x1dProto3MapKeyIgnoreUnspecified\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x46.buf.validate.conformance.cases.Proto3MapKeyIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06\"\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb6\x01\n\x17Proto3MapKeyIgnoreEmpty\x12\x63\n\x03val\x18\x01 \x03(\x0b\x32@.buf.validate.conformance.cases.Proto3MapKeyIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto3MapKeyIgnoreDefault\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto3MapKeyIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc3\x01\n\x1fProto3MapValueIgnoreUnspecified\x12h\n\x03val\x18\x01 \x03(\x0b\x32H.buf.validate.conformance.cases.Proto3MapValueIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06*\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto3MapValueIgnoreEmpty\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto3MapValueIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1bProto3MapValueIgnoreDefault\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.Proto3MapValueIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\x42\xd3\x01\n\"com.buf.validate.conformance.casesB\x11IgnoreProto3ProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Casesb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2buf/validate/conformance/cases/ignore_proto3.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"O\n%Proto3ScalarOptionalIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"L\n\x1fProto3ScalarOptionalIgnoreEmpty\x12!\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"N\n!Proto3ScalarOptionalIgnoreDefault\x12!\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"M\n Proto3ScalarOptionalIgnoreAlways\x12!\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03H\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\":\n\x1dProto3ScalarIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"7\n\x17Proto3ScalarIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"9\n\x19Proto3ScalarIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"8\n\x18Proto3ScalarIgnoreAlways\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"\xfa\x01\n&Proto3MessageOptionalIgnoreUnspecified\x12\xa1\x01\n\x03val\x18\x01 \x01(\x0b\x32J.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xf1\x01\n Proto3MessageOptionalIgnoreEmpty\x12\x9e\x01\n\x03val\x18\x01 \x01(\x0b\x32\x44.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xf5\x01\n\"Proto3MessageOptionalIgnoreDefault\x12\xa0\x01\n\x03val\x18\x01 \x01(\x0b\x32\x46.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xf4\x01\n!Proto3MessageOptionalIgnoreAlways\x12\xa0\x01\n\x03val\x18\x01 \x01(\x0b\x32\x45.buf.validate.conformance.cases.Proto3MessageOptionalIgnoreAlways.MsgBB\xbaH?\xba\x01\x39\n\x1cproto3.message.ignore.always\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03H\x00R\x03val\x88\x01\x01\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_valB\x06\n\x04_val\"\xdd\x01\n\x1eProto3MessageIgnoreUnspecified\x12\x94\x01\n\x03val\x18\x01 \x01(\x0b\x32\x42.buf.validate.conformance.cases.Proto3MessageIgnoreUnspecified.MsgB>\xbaH;\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"\xd4\x01\n\x18Proto3MessageIgnoreEmpty\x12\x91\x01\n\x03val\x18\x01 \x01(\x0b\x32<.buf.validate.conformance.cases.Proto3MessageIgnoreEmpty.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"\xd8\x01\n\x1aProto3MessageIgnoreDefault\x12\x93\x01\n\x03val\x18\x01 \x01(\x0b\x32>.buf.validate.conformance.cases.Proto3MessageIgnoreDefault.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"\xd6\x01\n\x19Proto3MessageIgnoreAlways\x12\x92\x01\n\x03val\x18\x01 \x01(\x0b\x32=.buf.validate.conformance.cases.Proto3MessageIgnoreAlways.MsgBA\xbaH>\xba\x01\x38\n\x1bproto3.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a$\n\x03Msg\x12\x15\n\x03val\x18\x01 \x01(\tH\x00R\x03val\x88\x01\x01\x42\x06\n\x04_val\"@\n\x1cProto3OneofIgnoreUnspecified\x12\x1b\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"=\n\x16Proto3OneofIgnoreEmpty\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"?\n\x18Proto3OneofIgnoreDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\">\n\x17Proto3OneofIgnoreAlways\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03H\x00R\x03valB\x03\n\x01o\"=\n\x1fProto3RepeatedIgnoreUnspecified\x12\x1a\n\x03val\x18\x01 \x03(\x05\x42\x08\xbaH\x05\x92\x01\x02\x08\x03R\x03val\":\n\x19Proto3RepeatedIgnoreEmpty\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\"<\n\x1bProto3RepeatedIgnoreDefault\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\";\n\x1aProto3RepeatedIgnoreAlways\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x03R\x03val\"\xb5\x01\n\x1aProto3MapIgnoreUnspecified\x12_\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.Proto3MapIgnoreUnspecified.ValEntryB\x08\xbaH\x05\x9a\x01\x02\x08\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xac\x01\n\x14Proto3MapIgnoreEmpty\x12\\\n\x03val\x18\x01 \x03(\x0b\x32=.buf.validate.conformance.cases.Proto3MapIgnoreEmpty.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb0\x01\n\x16Proto3MapIgnoreDefault\x12^\n\x03val\x18\x01 \x03(\x0b\x32?.buf.validate.conformance.cases.Proto3MapIgnoreDefault.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xae\x01\n\x15Proto3MapIgnoreAlways\x12]\n\x03val\x18\x01 \x03(\x0b\x32>.buf.validate.conformance.cases.Proto3MapIgnoreAlways.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"E\n#Proto3RepeatedItemIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x03(\x05\x42\x0c\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"B\n\x1dProto3RepeatedItemIgnoreEmpty\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"D\n\x1fProto3RepeatedItemIgnoreDefault\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"C\n\x1eProto3RepeatedItemIgnoreAlways\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"\xbf\x01\n\x1dProto3MapKeyIgnoreUnspecified\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x46.buf.validate.conformance.cases.Proto3MapKeyIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06\"\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb6\x01\n\x17Proto3MapKeyIgnoreEmpty\x12\x63\n\x03val\x18\x01 \x03(\x0b\x32@.buf.validate.conformance.cases.Proto3MapKeyIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto3MapKeyIgnoreDefault\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto3MapKeyIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb8\x01\n\x18Proto3MapKeyIgnoreAlways\x12\x64\n\x03val\x18\x01 \x03(\x0b\x32\x41.buf.validate.conformance.cases.Proto3MapKeyIgnoreAlways.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc3\x01\n\x1fProto3MapValueIgnoreUnspecified\x12h\n\x03val\x18\x01 \x03(\x0b\x32H.buf.validate.conformance.cases.Proto3MapValueIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06*\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19Proto3MapValueIgnoreEmpty\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.Proto3MapValueIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1bProto3MapValueIgnoreDefault\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.Proto3MapValueIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbc\x01\n\x1aProto3MapValueIgnoreAlways\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.Proto3MapValueIgnoreAlways.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\x42\xd3\x01\n\"com.buf.validate.conformance.casesB\x11IgnoreProto3ProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Casesb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -53,36 +53,48 @@ _globals['_PROTO3SCALAROPTIONALIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\001' _globals['_PROTO3SCALAROPTIONALIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3SCALAROPTIONALIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_PROTO3SCALAROPTIONALIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3SCALAROPTIONALIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_PROTO3SCALARIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO3SCALARIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\004\032\002 \000' _globals['_PROTO3SCALARIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO3SCALARIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\001' _globals['_PROTO3SCALARIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3SCALARIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_PROTO3SCALARIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3SCALARIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H;\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'' _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\001' _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' + _globals['_PROTO3MESSAGEOPTIONALIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3MESSAGEOPTIONALIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H?\272\0019\n\034proto3.message.ignore.always\022\006foobar\032\021this.val == \'foo\'\330\001\003' _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H;\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'' _globals['_PROTO3MESSAGEIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MESSAGEIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\001' _globals['_PROTO3MESSAGEIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MESSAGEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' + _globals['_PROTO3MESSAGEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3MESSAGEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H>\272\0018\n\033proto3.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' _globals['_PROTO3ONEOFIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO3ONEOFIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\004\032\002 \000' _globals['_PROTO3ONEOFIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO3ONEOFIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\001' _globals['_PROTO3ONEOFIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3ONEOFIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_PROTO3ONEOFIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3ONEOFIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_PROTO3REPEATEDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO3REPEATEDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\005\222\001\002\010\003' _globals['_PROTO3REPEATEDIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO3REPEATEDIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\001' _globals['_PROTO3REPEATEDIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3REPEATEDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\002' + _globals['_PROTO3REPEATEDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3REPEATEDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\003' _globals['_PROTO3MAPIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_PROTO3MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO3MAPIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -95,12 +107,18 @@ _globals['_PROTO3MAPIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO3MAPIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MAPIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\010\232\001\002\010\003\330\001\002' + _globals['_PROTO3MAPIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_PROTO3MAPIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_PROTO3MAPIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3MAPIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\010\232\001\002\010\003\330\001\003' _globals['_PROTO3REPEATEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_PROTO3REPEATEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\t\222\001\006\"\004\032\002 \000' _globals['_PROTO3REPEATEDITEMIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_PROTO3REPEATEDITEMIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\001' _globals['_PROTO3REPEATEDITEMIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3REPEATEDITEMIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\002' + _globals['_PROTO3REPEATEDITEMIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3REPEATEDITEMIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\003' _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -113,6 +131,10 @@ _globals['_PROTO3MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO3MAPKEYIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MAPKEYIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t\"\007\032\002 \000\330\001\002' + _globals['_PROTO3MAPKEYIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_PROTO3MAPKEYIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_PROTO3MAPKEYIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3MAPKEYIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t\"\007\032\002 \000\330\001\003' _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -125,94 +147,128 @@ _globals['_PROTO3MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_PROTO3MAPVALUEIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_PROTO3MAPVALUEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t*\007\032\002 \000\330\001\002' + _globals['_PROTO3MAPVALUEIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_PROTO3MAPVALUEIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_PROTO3MAPVALUEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_PROTO3MAPVALUEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t*\007\032\002 \000\330\001\003' _globals['_PROTO3SCALAROPTIONALIGNOREUNSPECIFIED']._serialized_start=115 _globals['_PROTO3SCALAROPTIONALIGNOREUNSPECIFIED']._serialized_end=194 _globals['_PROTO3SCALAROPTIONALIGNOREEMPTY']._serialized_start=196 _globals['_PROTO3SCALAROPTIONALIGNOREEMPTY']._serialized_end=272 _globals['_PROTO3SCALAROPTIONALIGNOREDEFAULT']._serialized_start=274 _globals['_PROTO3SCALAROPTIONALIGNOREDEFAULT']._serialized_end=352 - _globals['_PROTO3SCALARIGNOREUNSPECIFIED']._serialized_start=354 - _globals['_PROTO3SCALARIGNOREUNSPECIFIED']._serialized_end=412 - _globals['_PROTO3SCALARIGNOREEMPTY']._serialized_start=414 - _globals['_PROTO3SCALARIGNOREEMPTY']._serialized_end=469 - _globals['_PROTO3SCALARIGNOREDEFAULT']._serialized_start=471 - _globals['_PROTO3SCALARIGNOREDEFAULT']._serialized_end=528 - _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_start=531 - _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_end=781 - _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_start=737 - _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_end=773 - _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY']._serialized_start=784 - _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY']._serialized_end=1025 - _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_start=737 - _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_end=773 - _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT']._serialized_start=1028 - _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT']._serialized_end=1273 - _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_start=737 - _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_end=773 - _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED']._serialized_start=1276 - _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED']._serialized_end=1497 - _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED_MSG']._serialized_start=737 - _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED_MSG']._serialized_end=773 - _globals['_PROTO3MESSAGEIGNOREEMPTY']._serialized_start=1500 - _globals['_PROTO3MESSAGEIGNOREEMPTY']._serialized_end=1712 - _globals['_PROTO3MESSAGEIGNOREEMPTY_MSG']._serialized_start=737 - _globals['_PROTO3MESSAGEIGNOREEMPTY_MSG']._serialized_end=773 - _globals['_PROTO3MESSAGEIGNOREDEFAULT']._serialized_start=1715 - _globals['_PROTO3MESSAGEIGNOREDEFAULT']._serialized_end=1931 - _globals['_PROTO3MESSAGEIGNOREDEFAULT_MSG']._serialized_start=737 - _globals['_PROTO3MESSAGEIGNOREDEFAULT_MSG']._serialized_end=773 - _globals['_PROTO3ONEOFIGNOREUNSPECIFIED']._serialized_start=1933 - _globals['_PROTO3ONEOFIGNOREUNSPECIFIED']._serialized_end=1997 - _globals['_PROTO3ONEOFIGNOREEMPTY']._serialized_start=1999 - _globals['_PROTO3ONEOFIGNOREEMPTY']._serialized_end=2060 - _globals['_PROTO3ONEOFIGNOREDEFAULT']._serialized_start=2062 - _globals['_PROTO3ONEOFIGNOREDEFAULT']._serialized_end=2125 - _globals['_PROTO3REPEATEDIGNOREUNSPECIFIED']._serialized_start=2127 - _globals['_PROTO3REPEATEDIGNOREUNSPECIFIED']._serialized_end=2188 - _globals['_PROTO3REPEATEDIGNOREEMPTY']._serialized_start=2190 - _globals['_PROTO3REPEATEDIGNOREEMPTY']._serialized_end=2248 - _globals['_PROTO3REPEATEDIGNOREDEFAULT']._serialized_start=2250 - _globals['_PROTO3REPEATEDIGNOREDEFAULT']._serialized_end=2310 - _globals['_PROTO3MAPIGNOREUNSPECIFIED']._serialized_start=2313 - _globals['_PROTO3MAPIGNOREUNSPECIFIED']._serialized_end=2494 - _globals['_PROTO3MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPIGNOREEMPTY']._serialized_start=2497 - _globals['_PROTO3MAPIGNOREEMPTY']._serialized_end=2669 - _globals['_PROTO3MAPIGNOREEMPTY_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPIGNOREEMPTY_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPIGNOREDEFAULT']._serialized_start=2672 - _globals['_PROTO3MAPIGNOREDEFAULT']._serialized_end=2848 - _globals['_PROTO3MAPIGNOREDEFAULT_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPIGNOREDEFAULT_VALENTRY']._serialized_end=2494 - _globals['_PROTO3REPEATEDITEMIGNOREUNSPECIFIED']._serialized_start=2850 - _globals['_PROTO3REPEATEDITEMIGNOREUNSPECIFIED']._serialized_end=2919 - _globals['_PROTO3REPEATEDITEMIGNOREEMPTY']._serialized_start=2921 - _globals['_PROTO3REPEATEDITEMIGNOREEMPTY']._serialized_end=2987 - _globals['_PROTO3REPEATEDITEMIGNOREDEFAULT']._serialized_start=2989 - _globals['_PROTO3REPEATEDITEMIGNOREDEFAULT']._serialized_end=3057 - _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED']._serialized_start=3060 - _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED']._serialized_end=3251 - _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPKEYIGNOREEMPTY']._serialized_start=3254 - _globals['_PROTO3MAPKEYIGNOREEMPTY']._serialized_end=3436 - _globals['_PROTO3MAPKEYIGNOREEMPTY_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPKEYIGNOREEMPTY_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPKEYIGNOREDEFAULT']._serialized_start=3439 - _globals['_PROTO3MAPKEYIGNOREDEFAULT']._serialized_end=3625 - _globals['_PROTO3MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED']._serialized_start=3628 - _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED']._serialized_end=3823 - _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPVALUEIGNOREEMPTY']._serialized_start=3826 - _globals['_PROTO3MAPVALUEIGNOREEMPTY']._serialized_end=4012 - _globals['_PROTO3MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_end=2494 - _globals['_PROTO3MAPVALUEIGNOREDEFAULT']._serialized_start=4015 - _globals['_PROTO3MAPVALUEIGNOREDEFAULT']._serialized_end=4205 - _globals['_PROTO3MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_start=2440 - _globals['_PROTO3MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_end=2494 + _globals['_PROTO3SCALAROPTIONALIGNOREALWAYS']._serialized_start=354 + _globals['_PROTO3SCALAROPTIONALIGNOREALWAYS']._serialized_end=431 + _globals['_PROTO3SCALARIGNOREUNSPECIFIED']._serialized_start=433 + _globals['_PROTO3SCALARIGNOREUNSPECIFIED']._serialized_end=491 + _globals['_PROTO3SCALARIGNOREEMPTY']._serialized_start=493 + _globals['_PROTO3SCALARIGNOREEMPTY']._serialized_end=548 + _globals['_PROTO3SCALARIGNOREDEFAULT']._serialized_start=550 + _globals['_PROTO3SCALARIGNOREDEFAULT']._serialized_end=607 + _globals['_PROTO3SCALARIGNOREALWAYS']._serialized_start=609 + _globals['_PROTO3SCALARIGNOREALWAYS']._serialized_end=665 + _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_start=668 + _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED']._serialized_end=918 + _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEOPTIONALIGNOREUNSPECIFIED_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY']._serialized_start=921 + _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY']._serialized_end=1162 + _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEOPTIONALIGNOREEMPTY_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT']._serialized_start=1165 + _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT']._serialized_end=1410 + _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEOPTIONALIGNOREDEFAULT_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEOPTIONALIGNOREALWAYS']._serialized_start=1413 + _globals['_PROTO3MESSAGEOPTIONALIGNOREALWAYS']._serialized_end=1657 + _globals['_PROTO3MESSAGEOPTIONALIGNOREALWAYS_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEOPTIONALIGNOREALWAYS_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED']._serialized_start=1660 + _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED']._serialized_end=1881 + _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEIGNOREUNSPECIFIED_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEIGNOREEMPTY']._serialized_start=1884 + _globals['_PROTO3MESSAGEIGNOREEMPTY']._serialized_end=2096 + _globals['_PROTO3MESSAGEIGNOREEMPTY_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEIGNOREEMPTY_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEIGNOREDEFAULT']._serialized_start=2099 + _globals['_PROTO3MESSAGEIGNOREDEFAULT']._serialized_end=2315 + _globals['_PROTO3MESSAGEIGNOREDEFAULT_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEIGNOREDEFAULT_MSG']._serialized_end=910 + _globals['_PROTO3MESSAGEIGNOREALWAYS']._serialized_start=2318 + _globals['_PROTO3MESSAGEIGNOREALWAYS']._serialized_end=2532 + _globals['_PROTO3MESSAGEIGNOREALWAYS_MSG']._serialized_start=874 + _globals['_PROTO3MESSAGEIGNOREALWAYS_MSG']._serialized_end=910 + _globals['_PROTO3ONEOFIGNOREUNSPECIFIED']._serialized_start=2534 + _globals['_PROTO3ONEOFIGNOREUNSPECIFIED']._serialized_end=2598 + _globals['_PROTO3ONEOFIGNOREEMPTY']._serialized_start=2600 + _globals['_PROTO3ONEOFIGNOREEMPTY']._serialized_end=2661 + _globals['_PROTO3ONEOFIGNOREDEFAULT']._serialized_start=2663 + _globals['_PROTO3ONEOFIGNOREDEFAULT']._serialized_end=2726 + _globals['_PROTO3ONEOFIGNOREALWAYS']._serialized_start=2728 + _globals['_PROTO3ONEOFIGNOREALWAYS']._serialized_end=2790 + _globals['_PROTO3REPEATEDIGNOREUNSPECIFIED']._serialized_start=2792 + _globals['_PROTO3REPEATEDIGNOREUNSPECIFIED']._serialized_end=2853 + _globals['_PROTO3REPEATEDIGNOREEMPTY']._serialized_start=2855 + _globals['_PROTO3REPEATEDIGNOREEMPTY']._serialized_end=2913 + _globals['_PROTO3REPEATEDIGNOREDEFAULT']._serialized_start=2915 + _globals['_PROTO3REPEATEDIGNOREDEFAULT']._serialized_end=2975 + _globals['_PROTO3REPEATEDIGNOREALWAYS']._serialized_start=2977 + _globals['_PROTO3REPEATEDIGNOREALWAYS']._serialized_end=3036 + _globals['_PROTO3MAPIGNOREUNSPECIFIED']._serialized_start=3039 + _globals['_PROTO3MAPIGNOREUNSPECIFIED']._serialized_end=3220 + _globals['_PROTO3MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPIGNOREUNSPECIFIED_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPIGNOREEMPTY']._serialized_start=3223 + _globals['_PROTO3MAPIGNOREEMPTY']._serialized_end=3395 + _globals['_PROTO3MAPIGNOREEMPTY_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPIGNOREEMPTY_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPIGNOREDEFAULT']._serialized_start=3398 + _globals['_PROTO3MAPIGNOREDEFAULT']._serialized_end=3574 + _globals['_PROTO3MAPIGNOREDEFAULT_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPIGNOREDEFAULT_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPIGNOREALWAYS']._serialized_start=3577 + _globals['_PROTO3MAPIGNOREALWAYS']._serialized_end=3751 + _globals['_PROTO3MAPIGNOREALWAYS_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPIGNOREALWAYS_VALENTRY']._serialized_end=3220 + _globals['_PROTO3REPEATEDITEMIGNOREUNSPECIFIED']._serialized_start=3753 + _globals['_PROTO3REPEATEDITEMIGNOREUNSPECIFIED']._serialized_end=3822 + _globals['_PROTO3REPEATEDITEMIGNOREEMPTY']._serialized_start=3824 + _globals['_PROTO3REPEATEDITEMIGNOREEMPTY']._serialized_end=3890 + _globals['_PROTO3REPEATEDITEMIGNOREDEFAULT']._serialized_start=3892 + _globals['_PROTO3REPEATEDITEMIGNOREDEFAULT']._serialized_end=3960 + _globals['_PROTO3REPEATEDITEMIGNOREALWAYS']._serialized_start=3962 + _globals['_PROTO3REPEATEDITEMIGNOREALWAYS']._serialized_end=4029 + _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED']._serialized_start=4032 + _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED']._serialized_end=4223 + _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPKEYIGNOREEMPTY']._serialized_start=4226 + _globals['_PROTO3MAPKEYIGNOREEMPTY']._serialized_end=4408 + _globals['_PROTO3MAPKEYIGNOREEMPTY_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPKEYIGNOREEMPTY_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPKEYIGNOREDEFAULT']._serialized_start=4411 + _globals['_PROTO3MAPKEYIGNOREDEFAULT']._serialized_end=4597 + _globals['_PROTO3MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPKEYIGNOREDEFAULT_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPKEYIGNOREALWAYS']._serialized_start=4600 + _globals['_PROTO3MAPKEYIGNOREALWAYS']._serialized_end=4784 + _globals['_PROTO3MAPKEYIGNOREALWAYS_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPKEYIGNOREALWAYS_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED']._serialized_start=4787 + _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED']._serialized_end=4982 + _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPVALUEIGNOREEMPTY']._serialized_start=4985 + _globals['_PROTO3MAPVALUEIGNOREEMPTY']._serialized_end=5171 + _globals['_PROTO3MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPVALUEIGNOREEMPTY_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPVALUEIGNOREDEFAULT']._serialized_start=5174 + _globals['_PROTO3MAPVALUEIGNOREDEFAULT']._serialized_end=5364 + _globals['_PROTO3MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_end=3220 + _globals['_PROTO3MAPVALUEIGNOREALWAYS']._serialized_start=5367 + _globals['_PROTO3MAPVALUEIGNOREALWAYS']._serialized_end=5555 + _globals['_PROTO3MAPVALUEIGNOREALWAYS_VALENTRY']._serialized_start=3166 + _globals['_PROTO3MAPVALUEIGNOREALWAYS_VALENTRY']._serialized_end=3220 # @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/cases/ignore_proto3_pb2.pyi b/gen/buf/validate/conformance/cases/ignore_proto3_pb2.pyi index 5dd8e1d3..f7715ac1 100644 --- a/gen/buf/validate/conformance/cases/ignore_proto3_pb2.pyi +++ b/gen/buf/validate/conformance/cases/ignore_proto3_pb2.pyi @@ -38,6 +38,12 @@ class Proto3ScalarOptionalIgnoreDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class Proto3ScalarOptionalIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class Proto3ScalarIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -56,6 +62,12 @@ class Proto3ScalarIgnoreDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class Proto3ScalarIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class Proto3MessageOptionalIgnoreUnspecified(_message.Message): __slots__ = ("val",) class Msg(_message.Message): @@ -89,6 +101,17 @@ class Proto3MessageOptionalIgnoreDefault(_message.Message): val: Proto3MessageOptionalIgnoreDefault.Msg def __init__(self, val: _Optional[_Union[Proto3MessageOptionalIgnoreDefault.Msg, _Mapping]] = ...) -> None: ... +class Proto3MessageOptionalIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: Proto3MessageOptionalIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[Proto3MessageOptionalIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + class Proto3MessageIgnoreUnspecified(_message.Message): __slots__ = ("val",) class Msg(_message.Message): @@ -122,6 +145,17 @@ class Proto3MessageIgnoreDefault(_message.Message): val: Proto3MessageIgnoreDefault.Msg def __init__(self, val: _Optional[_Union[Proto3MessageIgnoreDefault.Msg, _Mapping]] = ...) -> None: ... +class Proto3MessageIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: Proto3MessageIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[Proto3MessageIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + class Proto3OneofIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -140,6 +174,12 @@ class Proto3OneofIgnoreDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class Proto3OneofIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class Proto3RepeatedIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -158,6 +198,12 @@ class Proto3RepeatedIgnoreDefault(_message.Message): val: _containers.RepeatedScalarFieldContainer[int] def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... +class Proto3RepeatedIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + class Proto3MapIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -197,6 +243,19 @@ class Proto3MapIgnoreDefault(_message.Message): val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... +class Proto3MapIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + class Proto3RepeatedItemIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -215,6 +274,12 @@ class Proto3RepeatedItemIgnoreDefault(_message.Message): val: _containers.RepeatedScalarFieldContainer[int] def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... +class Proto3RepeatedItemIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + class Proto3MapKeyIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -254,6 +319,19 @@ class Proto3MapKeyIgnoreDefault(_message.Message): val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... +class Proto3MapKeyIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + class Proto3MapValueIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -292,3 +370,16 @@ class Proto3MapValueIgnoreDefault(_message.Message): VAL_FIELD_NUMBER: _ClassVar[int] val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + +class Proto3MapValueIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... diff --git a/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.py b/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.py index a50e462a..aaa46363 100644 --- a/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.py +++ b/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.py @@ -39,7 +39,7 @@ from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n:buf/validate/conformance/cases/ignore_proto_editions.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"L\n/EditionsScalarExplicitPresenceIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"\\\n:EditionsScalarExplicitPresenceIgnoreUnspecifiedWithDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00R\x03val\"I\n)EditionsScalarExplicitPresenceIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"Y\n4EditionsScalarExplicitPresenceIgnoreEmptyWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"K\n+EditionsScalarExplicitPresenceIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"[\n6EditionsScalarExplicitPresenceIgnoreDefaultWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"Q\n/EditionsScalarImplicitPresenceIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\x0c\xaa\x01\x02\x08\x02\xbaH\x04\x1a\x02 \x00R\x03val\"N\n)EditionsScalarImplicitPresenceIgnoreEmpty\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x02\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"P\n+EditionsScalarImplicitPresenceIgnoreDefault\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x02\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"O\n-EditionsScalarLegacyRequiredIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\x0c\xaa\x01\x02\x08\x03\xbaH\x04\x1a\x02 \x00R\x03val\"_\n8EditionsScalarLegacyRequiredIgnoreUnspecifiedWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0c\xaa\x01\x02\x08\x03\xbaH\x04\x1a\x02 \x00R\x03val\"L\n\'EditionsScalarLegacyRequiredIgnoreEmpty\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"\\\n2EditionsScalarLegacyRequiredIgnoreEmptyWithDefault\x12&\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"N\n)EditionsScalarLegacyRequiredIgnoreDefault\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"^\n4EditionsScalarLegacyRequiredIgnoreDefaultWithDefault\x12&\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"\xfc\x01\n0EditionsMessageExplicitPresenceIgnoreUnspecified\x12\xae\x01\n\x03val\x18\x01 \x01(\x0b\x32T.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreUnspecified.MsgBF\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x93\x02\n9EditionsMessageExplicitPresenceDelimitedIgnoreUnspecified\x12\xbc\x01\n\x03val\x18\x01 \x01(\x0b\x32].buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreUnspecified.MsgBK\xaa\x01\x02(\x02\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf3\x01\n*EditionsMessageExplicitPresenceIgnoreEmpty\x12\xab\x01\n\x03val\x18\x01 \x01(\x0b\x32N.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreEmpty.MsgBI\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8a\x02\n3EditionsMessageExplicitPresenceDelimitedIgnoreEmpty\x12\xb9\x01\n\x03val\x18\x01 \x01(\x0b\x32W.buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreEmpty.MsgBN\xaa\x01\x02(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf7\x01\n,EditionsMessageExplicitPresenceIgnoreDefault\x12\xad\x01\n\x03val\x18\x01 \x01(\x0b\x32P.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreDefault.MsgBI\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8e\x02\n5EditionsMessageExplicitPresenceDelimitedIgnoreDefault\x12\xbb\x01\n\x03val\x18\x01 \x01(\x0b\x32Y.buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreDefault.MsgBN\xaa\x01\x02(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xfd\x01\n.EditionsMessageLegacyRequiredIgnoreUnspecified\x12\xb1\x01\n\x03val\x18\x01 \x01(\x0b\x32R.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreUnspecified.MsgBK\xaa\x01\x02\x08\x03\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x91\x02\n7EditionsMessageLegacyRequiredDelimitedIgnoreUnspecified\x12\xbc\x01\n\x03val\x18\x01 \x01(\x0b\x32[.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreUnspecified.MsgBM\xaa\x01\x04\x08\x03(\x02\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf4\x01\n(EditionsMessageLegacyRequiredIgnoreEmpty\x12\xae\x01\n\x03val\x18\x01 \x01(\x0b\x32L.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreEmpty.MsgBN\xaa\x01\x02\x08\x03\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x88\x02\n1EditionsMessageLegacyRequiredDelimitedIgnoreEmpty\x12\xb9\x01\n\x03val\x18\x01 \x01(\x0b\x32U.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreEmpty.MsgBP\xaa\x01\x04\x08\x03(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf8\x01\n*EditionsMessageLegacyRequiredIgnoreDefault\x12\xb0\x01\n\x03val\x18\x01 \x01(\x0b\x32N.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreDefault.MsgBN\xaa\x01\x02\x08\x03\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8c\x02\n3EditionsMessageLegacyRequiredDelimitedIgnoreDefault\x12\xbb\x01\n\x03val\x18\x01 \x01(\x0b\x32W.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreDefault.MsgBP\xaa\x01\x04\x08\x03(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"B\n\x1e\x45\x64itionsOneofIgnoreUnspecified\x12\x1b\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"R\n)EditionsOneofIgnoreUnspecifiedWithDefault\x12 \n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"?\n\x18\x45\x64itionsOneofIgnoreEmpty\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"O\n#EditionsOneofIgnoreEmptyWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"A\n\x1a\x45\x64itionsOneofIgnoreDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"Q\n%EditionsOneofIgnoreDefaultWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"?\n!EditionsRepeatedIgnoreUnspecified\x12\x1a\n\x03val\x18\x01 \x03(\x05\x42\x08\xbaH\x05\x92\x01\x02\x08\x03R\x03val\"L\n)EditionsRepeatedExpandedIgnoreUnspecified\x12\x1f\n\x03val\x18\x01 \x03(\x05\x42\r\xaa\x01\x02\x18\x02\xbaH\x05\x92\x01\x02\x08\x03R\x03val\"<\n\x1b\x45\x64itionsRepeatedIgnoreEmpty\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\"I\n#EditionsRepeatedExpandedIgnoreEmpty\x12\"\n\x03val\x18\x01 \x03(\x05\x42\x10\xaa\x01\x02\x18\x02\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\">\n\x1d\x45\x64itionsRepeatedIgnoreDefault\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\"K\n%EditionsRepeatedExpandedIgnoreDefault\x12\"\n\x03val\x18\x01 \x03(\x05\x42\x10\xaa\x01\x02\x18\x02\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\"\xb9\x01\n\x1c\x45\x64itionsMapIgnoreUnspecified\x12\x61\n\x03val\x18\x01 \x03(\x0b\x32\x45.buf.validate.conformance.cases.EditionsMapIgnoreUnspecified.ValEntryB\x08\xbaH\x05\x9a\x01\x02\x08\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb0\x01\n\x16\x45\x64itionsMapIgnoreEmpty\x12^\n\x03val\x18\x01 \x03(\x0b\x32?.buf.validate.conformance.cases.EditionsMapIgnoreEmpty.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb4\x01\n\x18\x45\x64itionsMapIgnoreDefault\x12`\n\x03val\x18\x01 \x03(\x0b\x32\x41.buf.validate.conformance.cases.EditionsMapIgnoreDefault.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"G\n%EditionsRepeatedItemIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x03(\x05\x42\x0c\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"T\n-EditionsRepeatedExpandedItemIgnoreUnspecified\x12#\n\x03val\x18\x01 \x03(\x05\x42\x11\xaa\x01\x02\x18\x02\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"D\n\x1f\x45\x64itionsRepeatedItemIgnoreEmpty\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"Q\n\'EditionsRepeatedExpandedItemIgnoreEmpty\x12&\n\x03val\x18\x01 \x03(\x05\x42\x14\xaa\x01\x02\x18\x02\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"F\n!EditionsRepeatedItemIgnoreDefault\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"S\n)EditionsRepeatedExpandedItemIgnoreDefault\x12&\n\x03val\x18\x01 \x03(\x05\x42\x14\xaa\x01\x02\x18\x02\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"\xc3\x01\n\x1f\x45\x64itionsMapKeyIgnoreUnspecified\x12h\n\x03val\x18\x01 \x03(\x0b\x32H.buf.validate.conformance.cases.EditionsMapKeyIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06\"\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19\x45\x64itionsMapKeyIgnoreEmpty\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.EditionsMapKeyIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1b\x45\x64itionsMapKeyIgnoreDefault\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.EditionsMapKeyIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc7\x01\n!EditionsMapValueIgnoreUnspecified\x12j\n\x03val\x18\x01 \x03(\x0b\x32J.buf.validate.conformance.cases.EditionsMapValueIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06*\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1b\x45\x64itionsMapValueIgnoreEmpty\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.EditionsMapValueIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc2\x01\n\x1d\x45\x64itionsMapValueIgnoreDefault\x12i\n\x03val\x18\x01 \x03(\x0b\x32\x46.buf.validate.conformance.cases.EditionsMapValueIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\x42\xda\x01\n\"com.buf.validate.conformance.casesB\x18IgnoreProtoEditionsProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Casesb\x08\x65\x64itionsp\xe8\x07') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n:buf/validate/conformance/cases/ignore_proto_editions.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"L\n/EditionsScalarExplicitPresenceIgnoreUnspecified\x12\x19\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\x03val\"\\\n:EditionsScalarExplicitPresenceIgnoreUnspecifiedWithDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00R\x03val\"I\n)EditionsScalarExplicitPresenceIgnoreEmpty\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"Y\n4EditionsScalarExplicitPresenceIgnoreEmptyWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"K\n+EditionsScalarExplicitPresenceIgnoreDefault\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"[\n6EditionsScalarExplicitPresenceIgnoreDefaultWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"J\n*EditionsScalarExplicitPresenceIgnoreAlways\x12\x1c\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"Z\n5EditionsScalarExplicitPresenceIgnoreAlwaysWithDefault\x12!\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"Q\n/EditionsScalarImplicitPresenceIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\x0c\xaa\x01\x02\x08\x02\xbaH\x04\x1a\x02 \x00R\x03val\"N\n)EditionsScalarImplicitPresenceIgnoreEmpty\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x02\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"P\n+EditionsScalarImplicitPresenceIgnoreDefault\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x02\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"O\n*EditionsScalarImplicitPresenceIgnoreAlways\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x02\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"O\n-EditionsScalarLegacyRequiredIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\x0c\xaa\x01\x02\x08\x03\xbaH\x04\x1a\x02 \x00R\x03val\"_\n8EditionsScalarLegacyRequiredIgnoreUnspecifiedWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0c\xaa\x01\x02\x08\x03\xbaH\x04\x1a\x02 \x00R\x03val\"L\n\'EditionsScalarLegacyRequiredIgnoreEmpty\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"\\\n2EditionsScalarLegacyRequiredIgnoreEmptyWithDefault\x12&\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"N\n)EditionsScalarLegacyRequiredIgnoreDefault\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"^\n4EditionsScalarLegacyRequiredIgnoreDefaultWithDefault\x12&\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"M\n(EditionsScalarLegacyRequiredIgnoreAlways\x12!\n\x03val\x18\x01 \x01(\x05\x42\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"]\n3EditionsScalarLegacyRequiredIgnoreAlwaysWithDefault\x12&\n\x03val\x18\x01 \x01(\x05:\x03-42B\x0f\xaa\x01\x02\x08\x03\xbaH\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"\xfc\x01\n0EditionsMessageExplicitPresenceIgnoreUnspecified\x12\xae\x01\n\x03val\x18\x01 \x01(\x0b\x32T.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreUnspecified.MsgBF\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x93\x02\n9EditionsMessageExplicitPresenceDelimitedIgnoreUnspecified\x12\xbc\x01\n\x03val\x18\x01 \x01(\x0b\x32].buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreUnspecified.MsgBK\xaa\x01\x02(\x02\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf3\x01\n*EditionsMessageExplicitPresenceIgnoreEmpty\x12\xab\x01\n\x03val\x18\x01 \x01(\x0b\x32N.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreEmpty.MsgBI\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8a\x02\n3EditionsMessageExplicitPresenceDelimitedIgnoreEmpty\x12\xb9\x01\n\x03val\x18\x01 \x01(\x0b\x32W.buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreEmpty.MsgBN\xaa\x01\x02(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf7\x01\n,EditionsMessageExplicitPresenceIgnoreDefault\x12\xad\x01\n\x03val\x18\x01 \x01(\x0b\x32P.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreDefault.MsgBI\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8e\x02\n5EditionsMessageExplicitPresenceDelimitedIgnoreDefault\x12\xbb\x01\n\x03val\x18\x01 \x01(\x0b\x32Y.buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreDefault.MsgBN\xaa\x01\x02(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf6\x01\n+EditionsMessageExplicitPresenceIgnoreAlways\x12\xad\x01\n\x03val\x18\x01 \x01(\x0b\x32O.buf.validate.conformance.cases.EditionsMessageExplicitPresenceIgnoreAlways.MsgBJ\xbaHG\xba\x01\x41\n$proto.editions.message.ignore.always\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8d\x02\n4EditionsMessageExplicitPresenceDelimitedIgnoreAlways\x12\xbb\x01\n\x03val\x18\x01 \x01(\x0b\x32X.buf.validate.conformance.cases.EditionsMessageExplicitPresenceDelimitedIgnoreAlways.MsgBO\xaa\x01\x02(\x02\xbaHG\xba\x01\x41\n$proto.editions.message.ignore.always\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xfd\x01\n.EditionsMessageLegacyRequiredIgnoreUnspecified\x12\xb1\x01\n\x03val\x18\x01 \x01(\x0b\x32R.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreUnspecified.MsgBK\xaa\x01\x02\x08\x03\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x91\x02\n7EditionsMessageLegacyRequiredDelimitedIgnoreUnspecified\x12\xbc\x01\n\x03val\x18\x01 \x01(\x0b\x32[.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreUnspecified.MsgBM\xaa\x01\x04\x08\x03(\x02\xbaHC\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf4\x01\n(EditionsMessageLegacyRequiredIgnoreEmpty\x12\xae\x01\n\x03val\x18\x01 \x01(\x0b\x32L.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreEmpty.MsgBN\xaa\x01\x02\x08\x03\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x88\x02\n1EditionsMessageLegacyRequiredDelimitedIgnoreEmpty\x12\xb9\x01\n\x03val\x18\x01 \x01(\x0b\x32U.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreEmpty.MsgBP\xaa\x01\x04\x08\x03(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf8\x01\n*EditionsMessageLegacyRequiredIgnoreDefault\x12\xb0\x01\n\x03val\x18\x01 \x01(\x0b\x32N.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreDefault.MsgBN\xaa\x01\x02\x08\x03\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8c\x02\n3EditionsMessageLegacyRequiredDelimitedIgnoreDefault\x12\xbb\x01\n\x03val\x18\x01 \x01(\x0b\x32W.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreDefault.MsgBP\xaa\x01\x04\x08\x03(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x02R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\xf6\x01\n)EditionsMessageLegacyRequiredIgnoreAlways\x12\xaf\x01\n\x03val\x18\x01 \x01(\x0b\x32M.buf.validate.conformance.cases.EditionsMessageLegacyRequiredIgnoreAlways.MsgBN\xaa\x01\x02\x08\x03\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"\x8a\x02\n2EditionsMessageLegacyRequiredDelimitedIgnoreAlways\x12\xba\x01\n\x03val\x18\x01 \x01(\x0b\x32V.buf.validate.conformance.cases.EditionsMessageLegacyRequiredDelimitedIgnoreAlways.MsgBP\xaa\x01\x04\x08\x03(\x02\xbaHF\xba\x01@\n#proto.editions.message.ignore.empty\x12\x06\x66oobar\x1a\x11this.val == \'foo\'\xd8\x01\x03R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"B\n\x1e\x45\x64itionsOneofIgnoreUnspecified\x12\x1b\n\x03val\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"R\n)EditionsOneofIgnoreUnspecifiedWithDefault\x12 \n\x03val\x18\x01 \x01(\x05:\x03-42B\x07\xbaH\x04\x1a\x02 \x00H\x00R\x03valB\x03\n\x01o\"?\n\x18\x45\x64itionsOneofIgnoreEmpty\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"O\n#EditionsOneofIgnoreEmptyWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x01H\x00R\x03valB\x03\n\x01o\"A\n\x1a\x45\x64itionsOneofIgnoreDefault\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"Q\n%EditionsOneofIgnoreDefaultWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x02H\x00R\x03valB\x03\n\x01o\"@\n\x19\x45\x64itionsOneofIgnoreAlways\x12\x1e\n\x03val\x18\x01 \x01(\x05\x42\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03H\x00R\x03valB\x03\n\x01o\"P\n$EditionsOneofIgnoreAlwaysWithDefault\x12#\n\x03val\x18\x01 \x01(\x05:\x03-42B\n\xbaH\x07\x1a\x02 \x00\xd8\x01\x03H\x00R\x03valB\x03\n\x01o\"?\n!EditionsRepeatedIgnoreUnspecified\x12\x1a\n\x03val\x18\x01 \x03(\x05\x42\x08\xbaH\x05\x92\x01\x02\x08\x03R\x03val\"L\n)EditionsRepeatedExpandedIgnoreUnspecified\x12\x1f\n\x03val\x18\x01 \x03(\x05\x42\r\xaa\x01\x02\x18\x02\xbaH\x05\x92\x01\x02\x08\x03R\x03val\"<\n\x1b\x45\x64itionsRepeatedIgnoreEmpty\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\"I\n#EditionsRepeatedExpandedIgnoreEmpty\x12\"\n\x03val\x18\x01 \x03(\x05\x42\x10\xaa\x01\x02\x18\x02\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x01R\x03val\">\n\x1d\x45\x64itionsRepeatedIgnoreDefault\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\"K\n%EditionsRepeatedExpandedIgnoreDefault\x12\"\n\x03val\x18\x01 \x03(\x05\x42\x10\xaa\x01\x02\x18\x02\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x02R\x03val\"=\n\x1c\x45\x64itionsRepeatedIgnoreAlways\x12\x1d\n\x03val\x18\x01 \x03(\x05\x42\x0b\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x03R\x03val\"J\n$EditionsRepeatedExpandedIgnoreAlways\x12\"\n\x03val\x18\x01 \x03(\x05\x42\x10\xaa\x01\x02\x18\x02\xbaH\x08\x92\x01\x02\x08\x03\xd8\x01\x03R\x03val\"\xb9\x01\n\x1c\x45\x64itionsMapIgnoreUnspecified\x12\x61\n\x03val\x18\x01 \x03(\x0b\x32\x45.buf.validate.conformance.cases.EditionsMapIgnoreUnspecified.ValEntryB\x08\xbaH\x05\x9a\x01\x02\x08\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb0\x01\n\x16\x45\x64itionsMapIgnoreEmpty\x12^\n\x03val\x18\x01 \x03(\x0b\x32?.buf.validate.conformance.cases.EditionsMapIgnoreEmpty.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb4\x01\n\x18\x45\x64itionsMapIgnoreDefault\x12`\n\x03val\x18\x01 \x03(\x0b\x32\x41.buf.validate.conformance.cases.EditionsMapIgnoreDefault.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xb2\x01\n\x17\x45\x64itionsMapIgnoreAlways\x12_\n\x03val\x18\x01 \x03(\x0b\x32@.buf.validate.conformance.cases.EditionsMapIgnoreAlways.ValEntryB\x0b\xbaH\x08\x9a\x01\x02\x08\x03\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"G\n%EditionsRepeatedItemIgnoreUnspecified\x12\x1e\n\x03val\x18\x01 \x03(\x05\x42\x0c\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"T\n-EditionsRepeatedExpandedItemIgnoreUnspecified\x12#\n\x03val\x18\x01 \x03(\x05\x42\x11\xaa\x01\x02\x18\x02\xbaH\t\x92\x01\x06\"\x04\x1a\x02 \x00R\x03val\"D\n\x1f\x45\x64itionsRepeatedItemIgnoreEmpty\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"Q\n\'EditionsRepeatedExpandedItemIgnoreEmpty\x12&\n\x03val\x18\x01 \x03(\x05\x42\x14\xaa\x01\x02\x18\x02\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\"F\n!EditionsRepeatedItemIgnoreDefault\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"S\n)EditionsRepeatedExpandedItemIgnoreDefault\x12&\n\x03val\x18\x01 \x03(\x05\x42\x14\xaa\x01\x02\x18\x02\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\"E\n EditionsRepeatedItemIgnoreAlways\x12!\n\x03val\x18\x01 \x03(\x05\x42\x0f\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"R\n(EditionsRepeatedExpandedItemIgnoreAlways\x12&\n\x03val\x18\x01 \x03(\x05\x42\x14\xaa\x01\x02\x18\x02\xbaH\x0c\x92\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\"\xc3\x01\n\x1f\x45\x64itionsMapKeyIgnoreUnspecified\x12h\n\x03val\x18\x01 \x03(\x0b\x32H.buf.validate.conformance.cases.EditionsMapKeyIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06\"\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xba\x01\n\x19\x45\x64itionsMapKeyIgnoreEmpty\x12\x65\n\x03val\x18\x01 \x03(\x0b\x32\x42.buf.validate.conformance.cases.EditionsMapKeyIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1b\x45\x64itionsMapKeyIgnoreDefault\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.EditionsMapKeyIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbc\x01\n\x1a\x45\x64itionsMapKeyIgnoreAlways\x12\x66\n\x03val\x18\x01 \x03(\x0b\x32\x43.buf.validate.conformance.cases.EditionsMapKeyIgnoreAlways.ValEntryB\x0f\xbaH\x0c\x9a\x01\t\"\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc7\x01\n!EditionsMapValueIgnoreUnspecified\x12j\n\x03val\x18\x01 \x03(\x0b\x32J.buf.validate.conformance.cases.EditionsMapValueIgnoreUnspecified.ValEntryB\x0c\xbaH\t\x9a\x01\x06*\x04\x1a\x02 \x00R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xbe\x01\n\x1b\x45\x64itionsMapValueIgnoreEmpty\x12g\n\x03val\x18\x01 \x03(\x0b\x32\x44.buf.validate.conformance.cases.EditionsMapValueIgnoreEmpty.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc2\x01\n\x1d\x45\x64itionsMapValueIgnoreDefault\x12i\n\x03val\x18\x01 \x03(\x0b\x32\x46.buf.validate.conformance.cases.EditionsMapValueIgnoreDefault.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x02R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\"\xc0\x01\n\x1c\x45\x64itionsMapValueIgnoreAlways\x12h\n\x03val\x18\x01 \x03(\x0b\x32\x45.buf.validate.conformance.cases.EditionsMapValueIgnoreAlways.ValEntryB\x0f\xbaH\x0c\x9a\x01\t*\x07\x1a\x02 \x00\xd8\x01\x03R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n\x05value\x18\x02 \x01(\x05R\x05value:\x02\x38\x01\x42\xda\x01\n\"com.buf.validate.conformance.casesB\x18IgnoreProtoEditionsProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Casesb\x08\x65\x64itionsp\xe8\x07') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -59,12 +59,18 @@ _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\252\001\002\010\002\272H\004\032\002 \000' _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREEMPTY'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREEMPTY'].fields_by_name['val']._serialized_options = b'\252\001\002\010\002\272H\007\032\002 \000\330\001\001' _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\010\002\272H\007\032\002 \000\330\001\002' + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\002\010\002\272H\007\032\002 \000\330\001\003' _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272H\004\032\002 \000' _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT'].fields_by_name['val']._loaded_options = None @@ -77,6 +83,10 @@ _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272H\007\032\002 \000\330\001\002' _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272H\007\032\002 \000\330\001\002' + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272H\007\032\002 \000\330\001\003' + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272H\007\032\002 \000\330\001\003' _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272HC\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'' _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -89,6 +99,10 @@ _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272HF\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002(\002\272HF\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272HG\272\001A\n$proto.editions.message.ignore.always\022\006foobar\032\021this.val == \'foo\'\330\001\003' + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\002(\002\272HG\272\001A\n$proto.editions.message.ignore.always\022\006foobar\032\021this.val == \'foo\'\330\001\003' _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272HC\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'' _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -101,6 +115,10 @@ _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272HF\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\004\010\003(\002\272HF\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\002' + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\002\010\003\272HF\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\003' + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\004\010\003(\002\272HF\272\001@\n#proto.editions.message.ignore.empty\022\006foobar\032\021this.val == \'foo\'\330\001\003' _globals['_EDITIONSONEOFIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSONEOFIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\004\032\002 \000' _globals['_EDITIONSONEOFIGNOREUNSPECIFIEDWITHDEFAULT'].fields_by_name['val']._loaded_options = None @@ -113,6 +131,10 @@ _globals['_EDITIONSONEOFIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' _globals['_EDITIONSONEOFIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSONEOFIGNOREDEFAULTWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\002' + _globals['_EDITIONSONEOFIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSONEOFIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' + _globals['_EDITIONSONEOFIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSONEOFIGNOREALWAYSWITHDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\007\032\002 \000\330\001\003' _globals['_EDITIONSREPEATEDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSREPEATEDIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\005\222\001\002\010\003' _globals['_EDITIONSREPEATEDEXPANDEDIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -125,6 +147,10 @@ _globals['_EDITIONSREPEATEDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\002' _globals['_EDITIONSREPEATEDEXPANDEDIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSREPEATEDEXPANDEDIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\030\002\272H\010\222\001\002\010\003\330\001\002' + _globals['_EDITIONSREPEATEDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSREPEATEDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\010\222\001\002\010\003\330\001\003' + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\002\030\002\272H\010\222\001\002\010\003\330\001\003' _globals['_EDITIONSMAPIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_EDITIONSMAPIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_EDITIONSMAPIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -137,6 +163,10 @@ _globals['_EDITIONSMAPIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_EDITIONSMAPIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMAPIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\010\232\001\002\010\003\330\001\002' + _globals['_EDITIONSMAPIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_EDITIONSMAPIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_EDITIONSMAPIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMAPIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\010\232\001\002\010\003\330\001\003' _globals['_EDITIONSREPEATEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSREPEATEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._serialized_options = b'\272H\t\222\001\006\"\004\032\002 \000' _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -149,6 +179,10 @@ _globals['_EDITIONSREPEATEDITEMIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\002' _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\252\001\002\030\002\272H\014\222\001\t\"\007\032\002 \000\330\001\002' + _globals['_EDITIONSREPEATEDITEMIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSREPEATEDITEMIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\222\001\t\"\007\032\002 \000\330\001\003' + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\252\001\002\030\002\272H\014\222\001\t\"\007\032\002 \000\330\001\003' _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -161,6 +195,10 @@ _globals['_EDITIONSMAPKEYIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_EDITIONSMAPKEYIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMAPKEYIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t\"\007\032\002 \000\330\001\002' + _globals['_EDITIONSMAPKEYIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_EDITIONSMAPKEYIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_EDITIONSMAPKEYIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMAPKEYIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t\"\007\032\002 \000\330\001\003' _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED_VALENTRY']._loaded_options = None _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_options = b'8\001' _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED'].fields_by_name['val']._loaded_options = None @@ -173,6 +211,10 @@ _globals['_EDITIONSMAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_options = b'8\001' _globals['_EDITIONSMAPVALUEIGNOREDEFAULT'].fields_by_name['val']._loaded_options = None _globals['_EDITIONSMAPVALUEIGNOREDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t*\007\032\002 \000\330\001\002' + _globals['_EDITIONSMAPVALUEIGNOREALWAYS_VALENTRY']._loaded_options = None + _globals['_EDITIONSMAPVALUEIGNOREALWAYS_VALENTRY']._serialized_options = b'8\001' + _globals['_EDITIONSMAPVALUEIGNOREALWAYS'].fields_by_name['val']._loaded_options = None + _globals['_EDITIONSMAPVALUEIGNOREALWAYS'].fields_by_name['val']._serialized_options = b'\272H\014\232\001\t*\007\032\002 \000\330\001\003' _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_start=123 _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_end=199 _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=201 @@ -185,142 +227,192 @@ _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREDEFAULT']._serialized_end=536 _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREDEFAULTWITHDEFAULT']._serialized_start=538 _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREDEFAULTWITHDEFAULT']._serialized_end=629 - _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_start=631 - _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_end=712 - _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREEMPTY']._serialized_start=714 - _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREEMPTY']._serialized_end=792 - _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREDEFAULT']._serialized_start=794 - _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREDEFAULT']._serialized_end=874 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_start=876 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_end=955 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=957 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=1052 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTY']._serialized_start=1054 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTY']._serialized_end=1130 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_start=1132 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_end=1224 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULT']._serialized_start=1226 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULT']._serialized_end=1304 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_start=1306 - _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_end=1400 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_start=1403 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_end=1655 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED']._serialized_start=1658 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED']._serialized_end=1933 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY']._serialized_start=1936 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY']._serialized_end=2179 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY']._serialized_start=2182 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY']._serialized_end=2448 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT']._serialized_start=2451 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT']._serialized_end=2698 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT']._serialized_start=2701 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT']._serialized_end=2971 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_start=2974 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_end=3227 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED']._serialized_start=3230 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED']._serialized_end=3503 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY']._serialized_start=3506 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY']._serialized_end=3750 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY']._serialized_start=3753 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY']._serialized_end=4017 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT']._serialized_start=4020 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT']._serialized_end=4268 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT_MSG']._serialized_end=1655 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT']._serialized_start=4271 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT']._serialized_end=4539 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT_MSG']._serialized_start=1632 - _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT_MSG']._serialized_end=1655 - _globals['_EDITIONSONEOFIGNOREUNSPECIFIED']._serialized_start=4541 - _globals['_EDITIONSONEOFIGNOREUNSPECIFIED']._serialized_end=4607 - _globals['_EDITIONSONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=4609 - _globals['_EDITIONSONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=4691 - _globals['_EDITIONSONEOFIGNOREEMPTY']._serialized_start=4693 - _globals['_EDITIONSONEOFIGNOREEMPTY']._serialized_end=4756 - _globals['_EDITIONSONEOFIGNOREEMPTYWITHDEFAULT']._serialized_start=4758 - _globals['_EDITIONSONEOFIGNOREEMPTYWITHDEFAULT']._serialized_end=4837 - _globals['_EDITIONSONEOFIGNOREDEFAULT']._serialized_start=4839 - _globals['_EDITIONSONEOFIGNOREDEFAULT']._serialized_end=4904 - _globals['_EDITIONSONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_start=4906 - _globals['_EDITIONSONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_end=4987 - _globals['_EDITIONSREPEATEDIGNOREUNSPECIFIED']._serialized_start=4989 - _globals['_EDITIONSREPEATEDIGNOREUNSPECIFIED']._serialized_end=5052 - _globals['_EDITIONSREPEATEDEXPANDEDIGNOREUNSPECIFIED']._serialized_start=5054 - _globals['_EDITIONSREPEATEDEXPANDEDIGNOREUNSPECIFIED']._serialized_end=5130 - _globals['_EDITIONSREPEATEDIGNOREEMPTY']._serialized_start=5132 - _globals['_EDITIONSREPEATEDIGNOREEMPTY']._serialized_end=5192 - _globals['_EDITIONSREPEATEDEXPANDEDIGNOREEMPTY']._serialized_start=5194 - _globals['_EDITIONSREPEATEDEXPANDEDIGNOREEMPTY']._serialized_end=5267 - _globals['_EDITIONSREPEATEDIGNOREDEFAULT']._serialized_start=5269 - _globals['_EDITIONSREPEATEDIGNOREDEFAULT']._serialized_end=5331 - _globals['_EDITIONSREPEATEDEXPANDEDIGNOREDEFAULT']._serialized_start=5333 - _globals['_EDITIONSREPEATEDEXPANDEDIGNOREDEFAULT']._serialized_end=5408 - _globals['_EDITIONSMAPIGNOREUNSPECIFIED']._serialized_start=5411 - _globals['_EDITIONSMAPIGNOREUNSPECIFIED']._serialized_end=5596 - _globals['_EDITIONSMAPIGNOREUNSPECIFIED_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPIGNOREUNSPECIFIED_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPIGNOREEMPTY']._serialized_start=5599 - _globals['_EDITIONSMAPIGNOREEMPTY']._serialized_end=5775 - _globals['_EDITIONSMAPIGNOREEMPTY_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPIGNOREEMPTY_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPIGNOREDEFAULT']._serialized_start=5778 - _globals['_EDITIONSMAPIGNOREDEFAULT']._serialized_end=5958 - _globals['_EDITIONSMAPIGNOREDEFAULT_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPIGNOREDEFAULT_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSREPEATEDITEMIGNOREUNSPECIFIED']._serialized_start=5960 - _globals['_EDITIONSREPEATEDITEMIGNOREUNSPECIFIED']._serialized_end=6031 - _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREUNSPECIFIED']._serialized_start=6033 - _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREUNSPECIFIED']._serialized_end=6117 - _globals['_EDITIONSREPEATEDITEMIGNOREEMPTY']._serialized_start=6119 - _globals['_EDITIONSREPEATEDITEMIGNOREEMPTY']._serialized_end=6187 - _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREEMPTY']._serialized_start=6189 - _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREEMPTY']._serialized_end=6270 - _globals['_EDITIONSREPEATEDITEMIGNOREDEFAULT']._serialized_start=6272 - _globals['_EDITIONSREPEATEDITEMIGNOREDEFAULT']._serialized_end=6342 - _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREDEFAULT']._serialized_start=6344 - _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREDEFAULT']._serialized_end=6427 - _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED']._serialized_start=6430 - _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED']._serialized_end=6625 - _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPKEYIGNOREEMPTY']._serialized_start=6628 - _globals['_EDITIONSMAPKEYIGNOREEMPTY']._serialized_end=6814 - _globals['_EDITIONSMAPKEYIGNOREEMPTY_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPKEYIGNOREEMPTY_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPKEYIGNOREDEFAULT']._serialized_start=6817 - _globals['_EDITIONSMAPKEYIGNOREDEFAULT']._serialized_end=7007 - _globals['_EDITIONSMAPKEYIGNOREDEFAULT_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPKEYIGNOREDEFAULT_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED']._serialized_start=7010 - _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED']._serialized_end=7209 - _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPVALUEIGNOREEMPTY']._serialized_start=7212 - _globals['_EDITIONSMAPVALUEIGNOREEMPTY']._serialized_end=7402 - _globals['_EDITIONSMAPVALUEIGNOREEMPTY_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPVALUEIGNOREEMPTY_VALENTRY']._serialized_end=5596 - _globals['_EDITIONSMAPVALUEIGNOREDEFAULT']._serialized_start=7405 - _globals['_EDITIONSMAPVALUEIGNOREDEFAULT']._serialized_end=7599 - _globals['_EDITIONSMAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_start=5542 - _globals['_EDITIONSMAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_end=5596 + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYS']._serialized_start=631 + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYS']._serialized_end=705 + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYSWITHDEFAULT']._serialized_start=707 + _globals['_EDITIONSSCALAREXPLICITPRESENCEIGNOREALWAYSWITHDEFAULT']._serialized_end=797 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_start=799 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_end=880 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREEMPTY']._serialized_start=882 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREEMPTY']._serialized_end=960 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREDEFAULT']._serialized_start=962 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREDEFAULT']._serialized_end=1042 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREALWAYS']._serialized_start=1044 + _globals['_EDITIONSSCALARIMPLICITPRESENCEIGNOREALWAYS']._serialized_end=1123 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_start=1125 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_end=1204 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=1206 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=1301 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTY']._serialized_start=1303 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTY']._serialized_end=1379 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_start=1381 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREEMPTYWITHDEFAULT']._serialized_end=1473 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULT']._serialized_start=1475 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULT']._serialized_end=1553 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_start=1555 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREDEFAULTWITHDEFAULT']._serialized_end=1649 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYS']._serialized_start=1651 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYS']._serialized_end=1728 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYSWITHDEFAULT']._serialized_start=1730 + _globals['_EDITIONSSCALARLEGACYREQUIREDIGNOREALWAYSWITHDEFAULT']._serialized_end=1823 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_start=1826 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREUNSPECIFIED_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED']._serialized_start=2081 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED']._serialized_end=2356 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY']._serialized_start=2359 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY']._serialized_end=2602 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREEMPTY_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY']._serialized_start=2605 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY']._serialized_end=2871 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREEMPTY_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT']._serialized_start=2874 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT']._serialized_end=3121 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREDEFAULT_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT']._serialized_start=3124 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT']._serialized_end=3394 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREDEFAULT_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREALWAYS']._serialized_start=3397 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREALWAYS']._serialized_end=3643 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREALWAYS_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEIGNOREALWAYS_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREALWAYS']._serialized_start=3646 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREALWAYS']._serialized_end=3915 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREALWAYS_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGEEXPLICITPRESENCEDELIMITEDIGNOREALWAYS_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_start=3918 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED']._serialized_end=4171 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREUNSPECIFIED_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED']._serialized_start=4174 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED']._serialized_end=4447 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREUNSPECIFIED_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY']._serialized_start=4450 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY']._serialized_end=4694 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREEMPTY_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY']._serialized_start=4697 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY']._serialized_end=4961 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREEMPTY_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT']._serialized_start=4964 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT']._serialized_end=5212 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREDEFAULT_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT']._serialized_start=5215 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT']._serialized_end=5483 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREDEFAULT_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREALWAYS']._serialized_start=5486 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREALWAYS']._serialized_end=5732 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREALWAYS_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDIGNOREALWAYS_MSG']._serialized_end=2078 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREALWAYS']._serialized_start=5735 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREALWAYS']._serialized_end=6001 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREALWAYS_MSG']._serialized_start=2055 + _globals['_EDITIONSMESSAGELEGACYREQUIREDDELIMITEDIGNOREALWAYS_MSG']._serialized_end=2078 + _globals['_EDITIONSONEOFIGNOREUNSPECIFIED']._serialized_start=6003 + _globals['_EDITIONSONEOFIGNOREUNSPECIFIED']._serialized_end=6069 + _globals['_EDITIONSONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_start=6071 + _globals['_EDITIONSONEOFIGNOREUNSPECIFIEDWITHDEFAULT']._serialized_end=6153 + _globals['_EDITIONSONEOFIGNOREEMPTY']._serialized_start=6155 + _globals['_EDITIONSONEOFIGNOREEMPTY']._serialized_end=6218 + _globals['_EDITIONSONEOFIGNOREEMPTYWITHDEFAULT']._serialized_start=6220 + _globals['_EDITIONSONEOFIGNOREEMPTYWITHDEFAULT']._serialized_end=6299 + _globals['_EDITIONSONEOFIGNOREDEFAULT']._serialized_start=6301 + _globals['_EDITIONSONEOFIGNOREDEFAULT']._serialized_end=6366 + _globals['_EDITIONSONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_start=6368 + _globals['_EDITIONSONEOFIGNOREDEFAULTWITHDEFAULT']._serialized_end=6449 + _globals['_EDITIONSONEOFIGNOREALWAYS']._serialized_start=6451 + _globals['_EDITIONSONEOFIGNOREALWAYS']._serialized_end=6515 + _globals['_EDITIONSONEOFIGNOREALWAYSWITHDEFAULT']._serialized_start=6517 + _globals['_EDITIONSONEOFIGNOREALWAYSWITHDEFAULT']._serialized_end=6597 + _globals['_EDITIONSREPEATEDIGNOREUNSPECIFIED']._serialized_start=6599 + _globals['_EDITIONSREPEATEDIGNOREUNSPECIFIED']._serialized_end=6662 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREUNSPECIFIED']._serialized_start=6664 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREUNSPECIFIED']._serialized_end=6740 + _globals['_EDITIONSREPEATEDIGNOREEMPTY']._serialized_start=6742 + _globals['_EDITIONSREPEATEDIGNOREEMPTY']._serialized_end=6802 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREEMPTY']._serialized_start=6804 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREEMPTY']._serialized_end=6877 + _globals['_EDITIONSREPEATEDIGNOREDEFAULT']._serialized_start=6879 + _globals['_EDITIONSREPEATEDIGNOREDEFAULT']._serialized_end=6941 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREDEFAULT']._serialized_start=6943 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREDEFAULT']._serialized_end=7018 + _globals['_EDITIONSREPEATEDIGNOREALWAYS']._serialized_start=7020 + _globals['_EDITIONSREPEATEDIGNOREALWAYS']._serialized_end=7081 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREALWAYS']._serialized_start=7083 + _globals['_EDITIONSREPEATEDEXPANDEDIGNOREALWAYS']._serialized_end=7157 + _globals['_EDITIONSMAPIGNOREUNSPECIFIED']._serialized_start=7160 + _globals['_EDITIONSMAPIGNOREUNSPECIFIED']._serialized_end=7345 + _globals['_EDITIONSMAPIGNOREUNSPECIFIED_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPIGNOREUNSPECIFIED_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPIGNOREEMPTY']._serialized_start=7348 + _globals['_EDITIONSMAPIGNOREEMPTY']._serialized_end=7524 + _globals['_EDITIONSMAPIGNOREEMPTY_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPIGNOREEMPTY_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPIGNOREDEFAULT']._serialized_start=7527 + _globals['_EDITIONSMAPIGNOREDEFAULT']._serialized_end=7707 + _globals['_EDITIONSMAPIGNOREDEFAULT_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPIGNOREDEFAULT_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPIGNOREALWAYS']._serialized_start=7710 + _globals['_EDITIONSMAPIGNOREALWAYS']._serialized_end=7888 + _globals['_EDITIONSMAPIGNOREALWAYS_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPIGNOREALWAYS_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSREPEATEDITEMIGNOREUNSPECIFIED']._serialized_start=7890 + _globals['_EDITIONSREPEATEDITEMIGNOREUNSPECIFIED']._serialized_end=7961 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREUNSPECIFIED']._serialized_start=7963 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREUNSPECIFIED']._serialized_end=8047 + _globals['_EDITIONSREPEATEDITEMIGNOREEMPTY']._serialized_start=8049 + _globals['_EDITIONSREPEATEDITEMIGNOREEMPTY']._serialized_end=8117 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREEMPTY']._serialized_start=8119 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREEMPTY']._serialized_end=8200 + _globals['_EDITIONSREPEATEDITEMIGNOREDEFAULT']._serialized_start=8202 + _globals['_EDITIONSREPEATEDITEMIGNOREDEFAULT']._serialized_end=8272 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREDEFAULT']._serialized_start=8274 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREDEFAULT']._serialized_end=8357 + _globals['_EDITIONSREPEATEDITEMIGNOREALWAYS']._serialized_start=8359 + _globals['_EDITIONSREPEATEDITEMIGNOREALWAYS']._serialized_end=8428 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREALWAYS']._serialized_start=8430 + _globals['_EDITIONSREPEATEDEXPANDEDITEMIGNOREALWAYS']._serialized_end=8512 + _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED']._serialized_start=8515 + _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED']._serialized_end=8710 + _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPKEYIGNOREUNSPECIFIED_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPKEYIGNOREEMPTY']._serialized_start=8713 + _globals['_EDITIONSMAPKEYIGNOREEMPTY']._serialized_end=8899 + _globals['_EDITIONSMAPKEYIGNOREEMPTY_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPKEYIGNOREEMPTY_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPKEYIGNOREDEFAULT']._serialized_start=8902 + _globals['_EDITIONSMAPKEYIGNOREDEFAULT']._serialized_end=9092 + _globals['_EDITIONSMAPKEYIGNOREDEFAULT_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPKEYIGNOREDEFAULT_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPKEYIGNOREALWAYS']._serialized_start=9095 + _globals['_EDITIONSMAPKEYIGNOREALWAYS']._serialized_end=9283 + _globals['_EDITIONSMAPKEYIGNOREALWAYS_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPKEYIGNOREALWAYS_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED']._serialized_start=9286 + _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED']._serialized_end=9485 + _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPVALUEIGNOREUNSPECIFIED_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPVALUEIGNOREEMPTY']._serialized_start=9488 + _globals['_EDITIONSMAPVALUEIGNOREEMPTY']._serialized_end=9678 + _globals['_EDITIONSMAPVALUEIGNOREEMPTY_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPVALUEIGNOREEMPTY_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPVALUEIGNOREDEFAULT']._serialized_start=9681 + _globals['_EDITIONSMAPVALUEIGNOREDEFAULT']._serialized_end=9875 + _globals['_EDITIONSMAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPVALUEIGNOREDEFAULT_VALENTRY']._serialized_end=7345 + _globals['_EDITIONSMAPVALUEIGNOREALWAYS']._serialized_start=9878 + _globals['_EDITIONSMAPVALUEIGNOREALWAYS']._serialized_end=10070 + _globals['_EDITIONSMAPVALUEIGNOREALWAYS_VALENTRY']._serialized_start=7291 + _globals['_EDITIONSMAPVALUEIGNOREALWAYS_VALENTRY']._serialized_end=7345 # @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.pyi b/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.pyi index b8ea323e..daea8881 100644 --- a/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.pyi +++ b/gen/buf/validate/conformance/cases/ignore_proto_editions_pb2.pyi @@ -56,6 +56,18 @@ class EditionsScalarExplicitPresenceIgnoreDefaultWithDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class EditionsScalarExplicitPresenceIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class EditionsScalarExplicitPresenceIgnoreAlwaysWithDefault(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class EditionsScalarImplicitPresenceIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -74,6 +86,12 @@ class EditionsScalarImplicitPresenceIgnoreDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class EditionsScalarImplicitPresenceIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class EditionsScalarLegacyRequiredIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -110,6 +128,18 @@ class EditionsScalarLegacyRequiredIgnoreDefaultWithDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class EditionsScalarLegacyRequiredIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class EditionsScalarLegacyRequiredIgnoreAlwaysWithDefault(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class EditionsMessageExplicitPresenceIgnoreUnspecified(_message.Message): __slots__ = ("val",) class Msg(_message.Message): @@ -176,6 +206,28 @@ class EditionsMessageExplicitPresenceDelimitedIgnoreDefault(_message.Message): val: EditionsMessageExplicitPresenceDelimitedIgnoreDefault.Msg def __init__(self, val: _Optional[_Union[EditionsMessageExplicitPresenceDelimitedIgnoreDefault.Msg, _Mapping]] = ...) -> None: ... +class EditionsMessageExplicitPresenceIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: EditionsMessageExplicitPresenceIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[EditionsMessageExplicitPresenceIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + +class EditionsMessageExplicitPresenceDelimitedIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: EditionsMessageExplicitPresenceDelimitedIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[EditionsMessageExplicitPresenceDelimitedIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + class EditionsMessageLegacyRequiredIgnoreUnspecified(_message.Message): __slots__ = ("val",) class Msg(_message.Message): @@ -242,6 +294,28 @@ class EditionsMessageLegacyRequiredDelimitedIgnoreDefault(_message.Message): val: EditionsMessageLegacyRequiredDelimitedIgnoreDefault.Msg def __init__(self, val: _Optional[_Union[EditionsMessageLegacyRequiredDelimitedIgnoreDefault.Msg, _Mapping]] = ...) -> None: ... +class EditionsMessageLegacyRequiredIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: EditionsMessageLegacyRequiredIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[EditionsMessageLegacyRequiredIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + +class EditionsMessageLegacyRequiredDelimitedIgnoreAlways(_message.Message): + __slots__ = ("val",) + class Msg(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: EditionsMessageLegacyRequiredDelimitedIgnoreAlways.Msg + def __init__(self, val: _Optional[_Union[EditionsMessageLegacyRequiredDelimitedIgnoreAlways.Msg, _Mapping]] = ...) -> None: ... + class EditionsOneofIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -278,6 +352,18 @@ class EditionsOneofIgnoreDefaultWithDefault(_message.Message): val: int def __init__(self, val: _Optional[int] = ...) -> None: ... +class EditionsOneofIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + +class EditionsOneofIgnoreAlwaysWithDefault(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: int + def __init__(self, val: _Optional[int] = ...) -> None: ... + class EditionsRepeatedIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -314,6 +400,18 @@ class EditionsRepeatedExpandedIgnoreDefault(_message.Message): val: _containers.RepeatedScalarFieldContainer[int] def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... +class EditionsRepeatedIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + +class EditionsRepeatedExpandedIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + class EditionsMapIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -353,6 +451,19 @@ class EditionsMapIgnoreDefault(_message.Message): val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... +class EditionsMapIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + class EditionsRepeatedItemIgnoreUnspecified(_message.Message): __slots__ = ("val",) VAL_FIELD_NUMBER: _ClassVar[int] @@ -389,6 +500,18 @@ class EditionsRepeatedExpandedItemIgnoreDefault(_message.Message): val: _containers.RepeatedScalarFieldContainer[int] def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... +class EditionsRepeatedItemIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + +class EditionsRepeatedExpandedItemIgnoreAlways(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.RepeatedScalarFieldContainer[int] + def __init__(self, val: _Optional[_Iterable[int]] = ...) -> None: ... + class EditionsMapKeyIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -428,6 +551,19 @@ class EditionsMapKeyIgnoreDefault(_message.Message): val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... +class EditionsMapKeyIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + class EditionsMapValueIgnoreUnspecified(_message.Message): __slots__ = ("val",) class ValEntry(_message.Message): @@ -466,3 +602,16 @@ class EditionsMapValueIgnoreDefault(_message.Message): VAL_FIELD_NUMBER: _ClassVar[int] val: _containers.ScalarMap[int, int] def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... + +class EditionsMapValueIgnoreAlways(_message.Message): + __slots__ = ("val",) + class ValEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: int + value: int + def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ... + VAL_FIELD_NUMBER: _ClassVar[int] + val: _containers.ScalarMap[int, int] + def __init__(self, val: _Optional[_Mapping[int, int]] = ...) -> None: ... diff --git a/gen/buf/validate/conformance/cases/library_pb2.py b/gen/buf/validate/conformance/cases/library_pb2.py new file mode 100644 index 00000000..dda813f8 --- /dev/null +++ b/gen/buf/validate/conformance/cases/library_pb2.py @@ -0,0 +1,78 @@ +# Copyright 2023-2025 Buf Technologies, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: buf/validate/conformance/cases/library.proto +# Protobuf Python Version: 5.29.3 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 5, + 29, + 3, + '', + 'buf/validate/conformance/cases/library.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n,buf/validate/conformance/cases/library.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"Q\n\nIsHostname\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val:1\xbaH.\x1a,\n\x13library.is_hostname\x1a\x15this.val.isHostname()\"\x93\x01\n\rIsHostAndPort\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\x12#\n\rport_required\x18\x02 \x01(\x08R\x0cportRequired:K\xbaHH\x1a\x46\n\x18library.is_host_and_port\x1a*this.val.isHostAndPort(this.port_required)\"\xf0\x02\n\nIsIpPrefix\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\x12\x1d\n\x07version\x18\x02 \x01(\x05H\x00R\x07version\x88\x01\x01\x12\x1b\n\x06strict\x18\x03 \x01(\x08H\x01R\x06strict\x88\x01\x01:\xfc\x01\xbaH\xf8\x01\x1a\xf5\x01\n\x14library.is_ip_prefix\x1a\xdc\x01has(this.version) && has(this.strict) ? this.val.isIpPrefix(this.version, this.strict) : has(this.version) ? this.val.isIpPrefix(this.version) : has(this.strict) ? this.val.isIpPrefix(this.strict) : this.val.isIpPrefix()B\n\n\x08_versionB\t\n\x07_strict\"\x9c\x01\n\x04IsIp\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\x12\x1d\n\x07version\x18\x02 \x01(\x05H\x00R\x07version\x88\x01\x01:W\xbaHT\x1aR\n\rlibrary.is_ip\x1a\x41has(this.version) ? this.val.isIp(this.version) : this.val.isIp()B\n\n\x08_version\"H\n\x07IsEmail\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val:+\xbaH(\x1a&\n\x10library.is_email\x1a\x12this.val.isEmail()\"B\n\x05IsUri\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val:\'\xbaH$\x1a\"\n\x0elibrary.is_uri\x1a\x10this.val.isUri()\"L\n\x08IsUriRef\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val:.\xbaH+\x1a)\n\x12library.is_uri_ref\x1a\x13this.val.isUriRef()B\xce\x01\n\"com.buf.validate.conformance.casesB\x0cLibraryProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Casesb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'buf.validate.conformance.cases.library_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\"com.buf.validate.conformance.casesB\014LibraryProtoP\001\242\002\004BVCC\252\002\036Buf.Validate.Conformance.Cases\312\002\036Buf\\Validate\\Conformance\\Cases\342\002*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\352\002!Buf::Validate::Conformance::Cases' + _globals['_ISHOSTNAME']._loaded_options = None + _globals['_ISHOSTNAME']._serialized_options = b'\272H.\032,\n\023library.is_hostname\032\025this.val.isHostname()' + _globals['_ISHOSTANDPORT']._loaded_options = None + _globals['_ISHOSTANDPORT']._serialized_options = b'\272HH\032F\n\030library.is_host_and_port\032*this.val.isHostAndPort(this.port_required)' + _globals['_ISIPPREFIX']._loaded_options = None + _globals['_ISIPPREFIX']._serialized_options = b'\272H\370\001\032\365\001\n\024library.is_ip_prefix\032\334\001has(this.version) && has(this.strict) ? this.val.isIpPrefix(this.version, this.strict) : has(this.version) ? this.val.isIpPrefix(this.version) : has(this.strict) ? this.val.isIpPrefix(this.strict) : this.val.isIpPrefix()' + _globals['_ISIP']._loaded_options = None + _globals['_ISIP']._serialized_options = b'\272HT\032R\n\rlibrary.is_ip\032Ahas(this.version) ? this.val.isIp(this.version) : this.val.isIp()' + _globals['_ISEMAIL']._loaded_options = None + _globals['_ISEMAIL']._serialized_options = b'\272H(\032&\n\020library.is_email\032\022this.val.isEmail()' + _globals['_ISURI']._loaded_options = None + _globals['_ISURI']._serialized_options = b'\272H$\032\"\n\016library.is_uri\032\020this.val.isUri()' + _globals['_ISURIREF']._loaded_options = None + _globals['_ISURIREF']._serialized_options = b'\272H+\032)\n\022library.is_uri_ref\032\023this.val.isUriRef()' + _globals['_ISHOSTNAME']._serialized_start=109 + _globals['_ISHOSTNAME']._serialized_end=190 + _globals['_ISHOSTANDPORT']._serialized_start=193 + _globals['_ISHOSTANDPORT']._serialized_end=340 + _globals['_ISIPPREFIX']._serialized_start=343 + _globals['_ISIPPREFIX']._serialized_end=711 + _globals['_ISIP']._serialized_start=714 + _globals['_ISIP']._serialized_end=870 + _globals['_ISEMAIL']._serialized_start=872 + _globals['_ISEMAIL']._serialized_end=944 + _globals['_ISURI']._serialized_start=946 + _globals['_ISURI']._serialized_end=1012 + _globals['_ISURIREF']._serialized_start=1014 + _globals['_ISURIREF']._serialized_end=1090 +# @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/cases/library_pb2.pyi b/gen/buf/validate/conformance/cases/library_pb2.pyi new file mode 100644 index 00000000..21049d4e --- /dev/null +++ b/gen/buf/validate/conformance/cases/library_pb2.pyi @@ -0,0 +1,70 @@ +# Copyright 2023-2025 Buf Technologies, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from buf.validate import validate_pb2 as _validate_pb2 +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Optional as _Optional + +DESCRIPTOR: _descriptor.FileDescriptor + +class IsHostname(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + +class IsHostAndPort(_message.Message): + __slots__ = ("val", "port_required") + VAL_FIELD_NUMBER: _ClassVar[int] + PORT_REQUIRED_FIELD_NUMBER: _ClassVar[int] + val: str + port_required: bool + def __init__(self, val: _Optional[str] = ..., port_required: bool = ...) -> None: ... + +class IsIpPrefix(_message.Message): + __slots__ = ("val", "version", "strict") + VAL_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + STRICT_FIELD_NUMBER: _ClassVar[int] + val: str + version: int + strict: bool + def __init__(self, val: _Optional[str] = ..., version: _Optional[int] = ..., strict: bool = ...) -> None: ... + +class IsIp(_message.Message): + __slots__ = ("val", "version") + VAL_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + val: str + version: int + def __init__(self, val: _Optional[str] = ..., version: _Optional[int] = ...) -> None: ... + +class IsEmail(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + +class IsUri(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... + +class IsUriRef(_message.Message): + __slots__ = ("val",) + VAL_FIELD_NUMBER: _ClassVar[int] + val: str + def __init__(self, val: _Optional[str] = ...) -> None: ... diff --git a/gen/buf/validate/conformance/cases/required_field_proto2_pb2.py b/gen/buf/validate/conformance/cases/required_field_proto2_pb2.py index 608a4007..0f969fc1 100644 --- a/gen/buf/validate/conformance/cases/required_field_proto2_pb2.py +++ b/gen/buf/validate/conformance/cases/required_field_proto2_pb2.py @@ -39,7 +39,7 @@ from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n:buf/validate/conformance/cases/required_field_proto2.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\"8\n\x1cRequiredProto2ScalarOptional\x12\x18\n\x03val\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\x03val\"D\n#RequiredProto2ScalarOptionalDefault\x12\x1d\n\x03val\x18\x01 \x01(\t:\x03\x66ooB\x06\xbaH\x03\xc8\x01\x01R\x03val\"8\n\x1cRequiredProto2ScalarRequired\x12\x18\n\x03val\x18\x01 \x02(\tB\x06\xbaH\x03\xc8\x01\x01R\x03val\"\x85\x01\n\x15RequiredProto2Message\x12S\n\x03val\x18\x01 \x01(\x0b\x32\x39.buf.validate.conformance.cases.RequiredProto2Message.MsgB\x06\xbaH\x03\xc8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"D\n\x13RequiredProto2Oneof\x12\x16\n\x01\x61\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01H\x00R\x01\x61\x12\x0e\n\x01\x62\x18\x02 \x01(\tH\x00R\x01\x62\x42\x05\n\x03val\"2\n\x16RequiredProto2Repeated\x12\x18\n\x03val\x18\x01 \x03(\tB\x06\xbaH\x03\xc8\x01\x01R\x03val\"\xa1\x01\n\x11RequiredProto2Map\x12T\n\x03val\x18\x01 \x03(\x0b\x32:.buf.validate.conformance.cases.RequiredProto2Map.ValEntryB\x06\xbaH\x03\xc8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\xda\x01\n\"com.buf.validate.conformance.casesB\x18RequiredFieldProto2ProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Cases') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n:buf/validate/conformance/cases/required_field_proto2.proto\x12\x1e\x62uf.validate.conformance.cases\x1a\x1b\x62uf/validate/validate.proto\";\n\x1cRequiredProto2ScalarOptional\x12\x1b\n\x03val\x18\x01 \x01(\tB\t\xbaH\x06\xc8\x01\x01\xd8\x01\x03R\x03val\"G\n#RequiredProto2ScalarOptionalDefault\x12 \n\x03val\x18\x01 \x01(\t:\x03\x66ooB\t\xbaH\x06\xc8\x01\x01\xd8\x01\x03R\x03val\"8\n\x1cRequiredProto2ScalarRequired\x12\x18\n\x03val\x18\x01 \x02(\tB\x06\xbaH\x03\xc8\x01\x01R\x03val\"\x85\x01\n\x15RequiredProto2Message\x12S\n\x03val\x18\x01 \x01(\x0b\x32\x39.buf.validate.conformance.cases.RequiredProto2Message.MsgB\x06\xbaH\x03\xc8\x01\x01R\x03val\x1a\x17\n\x03Msg\x12\x10\n\x03val\x18\x01 \x01(\tR\x03val\"D\n\x13RequiredProto2Oneof\x12\x16\n\x01\x61\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01H\x00R\x01\x61\x12\x0e\n\x01\x62\x18\x02 \x01(\tH\x00R\x01\x62\x42\x05\n\x03val\"2\n\x16RequiredProto2Repeated\x12\x18\n\x03val\x18\x01 \x03(\tB\x06\xbaH\x03\xc8\x01\x01R\x03val\"\xa1\x01\n\x11RequiredProto2Map\x12T\n\x03val\x18\x01 \x03(\x0b\x32:.buf.validate.conformance.cases.RequiredProto2Map.ValEntryB\x06\xbaH\x03\xc8\x01\x01R\x03val\x1a\x36\n\x08ValEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\xda\x01\n\"com.buf.validate.conformance.casesB\x18RequiredFieldProto2ProtoP\x01\xa2\x02\x04\x42VCC\xaa\x02\x1e\x42uf.Validate.Conformance.Cases\xca\x02\x1e\x42uf\\Validate\\Conformance\\Cases\xe2\x02*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\xea\x02!Buf::Validate::Conformance::Cases') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -48,9 +48,9 @@ _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'\n\"com.buf.validate.conformance.casesB\030RequiredFieldProto2ProtoP\001\242\002\004BVCC\252\002\036Buf.Validate.Conformance.Cases\312\002\036Buf\\Validate\\Conformance\\Cases\342\002*Buf\\Validate\\Conformance\\Cases\\GPBMetadata\352\002!Buf::Validate::Conformance::Cases' _globals['_REQUIREDPROTO2SCALAROPTIONAL'].fields_by_name['val']._loaded_options = None - _globals['_REQUIREDPROTO2SCALAROPTIONAL'].fields_by_name['val']._serialized_options = b'\272H\003\310\001\001' + _globals['_REQUIREDPROTO2SCALAROPTIONAL'].fields_by_name['val']._serialized_options = b'\272H\006\310\001\001\330\001\003' _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT'].fields_by_name['val']._loaded_options = None - _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\003\310\001\001' + _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT'].fields_by_name['val']._serialized_options = b'\272H\006\310\001\001\330\001\003' _globals['_REQUIREDPROTO2SCALARREQUIRED'].fields_by_name['val']._loaded_options = None _globals['_REQUIREDPROTO2SCALARREQUIRED'].fields_by_name['val']._serialized_options = b'\272H\003\310\001\001' _globals['_REQUIREDPROTO2MESSAGE'].fields_by_name['val']._loaded_options = None @@ -64,21 +64,21 @@ _globals['_REQUIREDPROTO2MAP'].fields_by_name['val']._loaded_options = None _globals['_REQUIREDPROTO2MAP'].fields_by_name['val']._serialized_options = b'\272H\003\310\001\001' _globals['_REQUIREDPROTO2SCALAROPTIONAL']._serialized_start=123 - _globals['_REQUIREDPROTO2SCALAROPTIONAL']._serialized_end=179 - _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT']._serialized_start=181 - _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT']._serialized_end=249 - _globals['_REQUIREDPROTO2SCALARREQUIRED']._serialized_start=251 - _globals['_REQUIREDPROTO2SCALARREQUIRED']._serialized_end=307 - _globals['_REQUIREDPROTO2MESSAGE']._serialized_start=310 - _globals['_REQUIREDPROTO2MESSAGE']._serialized_end=443 - _globals['_REQUIREDPROTO2MESSAGE_MSG']._serialized_start=420 - _globals['_REQUIREDPROTO2MESSAGE_MSG']._serialized_end=443 - _globals['_REQUIREDPROTO2ONEOF']._serialized_start=445 - _globals['_REQUIREDPROTO2ONEOF']._serialized_end=513 - _globals['_REQUIREDPROTO2REPEATED']._serialized_start=515 - _globals['_REQUIREDPROTO2REPEATED']._serialized_end=565 - _globals['_REQUIREDPROTO2MAP']._serialized_start=568 - _globals['_REQUIREDPROTO2MAP']._serialized_end=729 - _globals['_REQUIREDPROTO2MAP_VALENTRY']._serialized_start=675 - _globals['_REQUIREDPROTO2MAP_VALENTRY']._serialized_end=729 + _globals['_REQUIREDPROTO2SCALAROPTIONAL']._serialized_end=182 + _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT']._serialized_start=184 + _globals['_REQUIREDPROTO2SCALAROPTIONALDEFAULT']._serialized_end=255 + _globals['_REQUIREDPROTO2SCALARREQUIRED']._serialized_start=257 + _globals['_REQUIREDPROTO2SCALARREQUIRED']._serialized_end=313 + _globals['_REQUIREDPROTO2MESSAGE']._serialized_start=316 + _globals['_REQUIREDPROTO2MESSAGE']._serialized_end=449 + _globals['_REQUIREDPROTO2MESSAGE_MSG']._serialized_start=426 + _globals['_REQUIREDPROTO2MESSAGE_MSG']._serialized_end=449 + _globals['_REQUIREDPROTO2ONEOF']._serialized_start=451 + _globals['_REQUIREDPROTO2ONEOF']._serialized_end=519 + _globals['_REQUIREDPROTO2REPEATED']._serialized_start=521 + _globals['_REQUIREDPROTO2REPEATED']._serialized_end=571 + _globals['_REQUIREDPROTO2MAP']._serialized_start=574 + _globals['_REQUIREDPROTO2MAP']._serialized_end=735 + _globals['_REQUIREDPROTO2MAP_VALENTRY']._serialized_start=681 + _globals['_REQUIREDPROTO2MAP_VALENTRY']._serialized_end=735 # @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/harness/results_pb2.py b/gen/buf/validate/conformance/harness/results_pb2.py index c5f2e9fc..8147c744 100644 --- a/gen/buf/validate/conformance/harness/results_pb2.py +++ b/gen/buf/validate/conformance/harness/results_pb2.py @@ -41,7 +41,7 @@ from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.buf/validate/conformance/harness/results.proto\x12 buf.validate.conformance.harness\x1a.buf/validate/conformance/harness/harness.proto\x1a\x19google/protobuf/any.proto\x1a google/protobuf/descriptor.proto\"\xcf\x01\n\rResultOptions\x12!\n\x0csuite_filter\x18\x01 \x01(\tR\x0bsuiteFilter\x12\x1f\n\x0b\x63\x61se_filter\x18\x02 \x01(\tR\ncaseFilter\x12\x18\n\x07verbose\x18\x03 \x01(\x08R\x07verbose\x12\x16\n\x06strict\x18\x04 \x01(\x08R\x06strict\x12%\n\x0estrict_message\x18\x05 \x01(\x08R\rstrictMessage\x12!\n\x0cstrict_error\x18\x06 \x01(\x08R\x0bstrictError\"\x85\x02\n\tResultSet\x12\x1c\n\tsuccesses\x18\x01 \x01(\x05R\tsuccesses\x12\x1a\n\x08\x66\x61ilures\x18\x02 \x01(\x05R\x08\x66\x61ilures\x12\x46\n\x06suites\x18\x03 \x03(\x0b\x32..buf.validate.conformance.harness.SuiteResultsR\x06suites\x12I\n\x07options\x18\x04 \x01(\x0b\x32/.buf.validate.conformance.harness.ResultOptionsR\x07options\x12+\n\x11\x65xpected_failures\x18\x05 \x01(\x05R\x10\x65xpectedFailures\"\x87\x02\n\x0cSuiteResults\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1c\n\tsuccesses\x18\x02 \x01(\x05R\tsuccesses\x12\x1a\n\x08\x66\x61ilures\x18\x03 \x01(\x05R\x08\x66\x61ilures\x12\x42\n\x05\x63\x61ses\x18\x04 \x03(\x0b\x32,.buf.validate.conformance.harness.CaseResultR\x05\x63\x61ses\x12\x38\n\x05\x66\x64set\x18\x05 \x01(\x0b\x32\".google.protobuf.FileDescriptorSetR\x05\x66\x64set\x12+\n\x11\x65xpected_failures\x18\x06 \x01(\x05R\x10\x65xpectedFailures\"\x97\x02\n\nCaseResult\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n\x07success\x18\x02 \x01(\x08R\x07success\x12\x44\n\x06wanted\x18\x03 \x01(\x0b\x32,.buf.validate.conformance.harness.TestResultR\x06wanted\x12>\n\x03got\x18\x04 \x01(\x0b\x32,.buf.validate.conformance.harness.TestResultR\x03got\x12*\n\x05input\x18\x05 \x01(\x0b\x32\x14.google.protobuf.AnyR\x05input\x12)\n\x10\x65xpected_failure\x18\x06 \x01(\x08R\x0f\x65xpectedFailureB\xd8\x01\n$com.buf.validate.conformance.harnessB\x0cResultsProtoP\x01\xa2\x02\x04\x42VCH\xaa\x02 Buf.Validate.Conformance.Harness\xca\x02 Buf\\Validate\\Conformance\\Harness\xe2\x02,Buf\\Validate\\Conformance\\Harness\\GPBMetadata\xea\x02#Buf::Validate::Conformance::Harnessb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.buf/validate/conformance/harness/results.proto\x12 buf.validate.conformance.harness\x1a.buf/validate/conformance/harness/harness.proto\x1a\x19google/protobuf/any.proto\x1a google/protobuf/descriptor.proto\"\xc5\x01\n\rResultOptions\x12!\n\x0csuite_filter\x18\x01 \x01(\tR\x0bsuiteFilter\x12\x1f\n\x0b\x63\x61se_filter\x18\x02 \x01(\tR\ncaseFilter\x12\x18\n\x07verbose\x18\x03 \x01(\x08R\x07verbose\x12%\n\x0estrict_message\x18\x05 \x01(\x08R\rstrictMessage\x12!\n\x0cstrict_error\x18\x06 \x01(\x08R\x0bstrictErrorJ\x04\x08\x04\x10\x05R\x06strict\"\x85\x02\n\tResultSet\x12\x1c\n\tsuccesses\x18\x01 \x01(\x05R\tsuccesses\x12\x1a\n\x08\x66\x61ilures\x18\x02 \x01(\x05R\x08\x66\x61ilures\x12\x46\n\x06suites\x18\x03 \x03(\x0b\x32..buf.validate.conformance.harness.SuiteResultsR\x06suites\x12I\n\x07options\x18\x04 \x01(\x0b\x32/.buf.validate.conformance.harness.ResultOptionsR\x07options\x12+\n\x11\x65xpected_failures\x18\x05 \x01(\x05R\x10\x65xpectedFailures\"\x87\x02\n\x0cSuiteResults\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1c\n\tsuccesses\x18\x02 \x01(\x05R\tsuccesses\x12\x1a\n\x08\x66\x61ilures\x18\x03 \x01(\x05R\x08\x66\x61ilures\x12\x42\n\x05\x63\x61ses\x18\x04 \x03(\x0b\x32,.buf.validate.conformance.harness.CaseResultR\x05\x63\x61ses\x12\x38\n\x05\x66\x64set\x18\x05 \x01(\x0b\x32\".google.protobuf.FileDescriptorSetR\x05\x66\x64set\x12+\n\x11\x65xpected_failures\x18\x06 \x01(\x05R\x10\x65xpectedFailures\"\x97\x02\n\nCaseResult\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n\x07success\x18\x02 \x01(\x08R\x07success\x12\x44\n\x06wanted\x18\x03 \x01(\x0b\x32,.buf.validate.conformance.harness.TestResultR\x06wanted\x12>\n\x03got\x18\x04 \x01(\x0b\x32,.buf.validate.conformance.harness.TestResultR\x03got\x12*\n\x05input\x18\x05 \x01(\x0b\x32\x14.google.protobuf.AnyR\x05input\x12)\n\x10\x65xpected_failure\x18\x06 \x01(\x08R\x0f\x65xpectedFailureB\xd8\x01\n$com.buf.validate.conformance.harnessB\x0cResultsProtoP\x01\xa2\x02\x04\x42VCH\xaa\x02 Buf.Validate.Conformance.Harness\xca\x02 Buf\\Validate\\Conformance\\Harness\xe2\x02,Buf\\Validate\\Conformance\\Harness\\GPBMetadata\xea\x02#Buf::Validate::Conformance::Harnessb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -50,11 +50,11 @@ _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'\n$com.buf.validate.conformance.harnessB\014ResultsProtoP\001\242\002\004BVCH\252\002 Buf.Validate.Conformance.Harness\312\002 Buf\\Validate\\Conformance\\Harness\342\002,Buf\\Validate\\Conformance\\Harness\\GPBMetadata\352\002#Buf::Validate::Conformance::Harness' _globals['_RESULTOPTIONS']._serialized_start=194 - _globals['_RESULTOPTIONS']._serialized_end=401 - _globals['_RESULTSET']._serialized_start=404 - _globals['_RESULTSET']._serialized_end=665 - _globals['_SUITERESULTS']._serialized_start=668 - _globals['_SUITERESULTS']._serialized_end=931 - _globals['_CASERESULT']._serialized_start=934 - _globals['_CASERESULT']._serialized_end=1213 + _globals['_RESULTOPTIONS']._serialized_end=391 + _globals['_RESULTSET']._serialized_start=394 + _globals['_RESULTSET']._serialized_end=655 + _globals['_SUITERESULTS']._serialized_start=658 + _globals['_SUITERESULTS']._serialized_end=921 + _globals['_CASERESULT']._serialized_start=924 + _globals['_CASERESULT']._serialized_end=1203 # @@protoc_insertion_point(module_scope) diff --git a/gen/buf/validate/conformance/harness/results_pb2.pyi b/gen/buf/validate/conformance/harness/results_pb2.pyi index b8ec7ddf..d56a31d4 100644 --- a/gen/buf/validate/conformance/harness/results_pb2.pyi +++ b/gen/buf/validate/conformance/harness/results_pb2.pyi @@ -23,20 +23,18 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map DESCRIPTOR: _descriptor.FileDescriptor class ResultOptions(_message.Message): - __slots__ = ("suite_filter", "case_filter", "verbose", "strict", "strict_message", "strict_error") + __slots__ = ("suite_filter", "case_filter", "verbose", "strict_message", "strict_error") SUITE_FILTER_FIELD_NUMBER: _ClassVar[int] CASE_FILTER_FIELD_NUMBER: _ClassVar[int] VERBOSE_FIELD_NUMBER: _ClassVar[int] - STRICT_FIELD_NUMBER: _ClassVar[int] STRICT_MESSAGE_FIELD_NUMBER: _ClassVar[int] STRICT_ERROR_FIELD_NUMBER: _ClassVar[int] suite_filter: str case_filter: str verbose: bool - strict: bool strict_message: bool strict_error: bool - def __init__(self, suite_filter: _Optional[str] = ..., case_filter: _Optional[str] = ..., verbose: bool = ..., strict: bool = ..., strict_message: bool = ..., strict_error: bool = ...) -> None: ... + def __init__(self, suite_filter: _Optional[str] = ..., case_filter: _Optional[str] = ..., verbose: bool = ..., strict_message: bool = ..., strict_error: bool = ...) -> None: ... class ResultSet(_message.Message): __slots__ = ("successes", "failures", "suites", "options", "expected_failures") diff --git a/gen/buf/validate/validate_pb2.py b/gen/buf/validate/validate_pb2.py index 7a2d9957..d861355a 100644 --- a/gen/buf/validate/validate_pb2.py +++ b/gen/buf/validate/validate_pb2.py @@ -41,7 +41,7 @@ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x62uf/validate/validate.proto\x12\x0c\x62uf.validate\x1a google/protobuf/descriptor.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"V\n\nConstraint\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12\x1e\n\nexpression\x18\x03 \x01(\tR\nexpression\"\\\n\x12MessageConstraints\x12\x1a\n\x08\x64isabled\x18\x01 \x01(\x08R\x08\x64isabled\x12*\n\x03\x63\x65l\x18\x03 \x03(\x0b\x32\x18.buf.validate.ConstraintR\x03\x63\x65l\".\n\x10OneofConstraints\x12\x1a\n\x08required\x18\x01 \x01(\x08R\x08required\"\xe6\t\n\x10\x46ieldConstraints\x12*\n\x03\x63\x65l\x18\x17 \x03(\x0b\x32\x18.buf.validate.ConstraintR\x03\x63\x65l\x12\x1a\n\x08required\x18\x19 \x01(\x08R\x08required\x12,\n\x06ignore\x18\x1b \x01(\x0e\x32\x14.buf.validate.IgnoreR\x06ignore\x12\x30\n\x05\x66loat\x18\x01 \x01(\x0b\x32\x18.buf.validate.FloatRulesH\x00R\x05\x66loat\x12\x33\n\x06\x64ouble\x18\x02 \x01(\x0b\x32\x19.buf.validate.DoubleRulesH\x00R\x06\x64ouble\x12\x30\n\x05int32\x18\x03 \x01(\x0b\x32\x18.buf.validate.Int32RulesH\x00R\x05int32\x12\x30\n\x05int64\x18\x04 \x01(\x0b\x32\x18.buf.validate.Int64RulesH\x00R\x05int64\x12\x33\n\x06uint32\x18\x05 \x01(\x0b\x32\x19.buf.validate.UInt32RulesH\x00R\x06uint32\x12\x33\n\x06uint64\x18\x06 \x01(\x0b\x32\x19.buf.validate.UInt64RulesH\x00R\x06uint64\x12\x33\n\x06sint32\x18\x07 \x01(\x0b\x32\x19.buf.validate.SInt32RulesH\x00R\x06sint32\x12\x33\n\x06sint64\x18\x08 \x01(\x0b\x32\x19.buf.validate.SInt64RulesH\x00R\x06sint64\x12\x36\n\x07\x66ixed32\x18\t \x01(\x0b\x32\x1a.buf.validate.Fixed32RulesH\x00R\x07\x66ixed32\x12\x36\n\x07\x66ixed64\x18\n \x01(\x0b\x32\x1a.buf.validate.Fixed64RulesH\x00R\x07\x66ixed64\x12\x39\n\x08sfixed32\x18\x0b \x01(\x0b\x32\x1b.buf.validate.SFixed32RulesH\x00R\x08sfixed32\x12\x39\n\x08sfixed64\x18\x0c \x01(\x0b\x32\x1b.buf.validate.SFixed64RulesH\x00R\x08sfixed64\x12-\n\x04\x62ool\x18\r \x01(\x0b\x32\x17.buf.validate.BoolRulesH\x00R\x04\x62ool\x12\x33\n\x06string\x18\x0e \x01(\x0b\x32\x19.buf.validate.StringRulesH\x00R\x06string\x12\x30\n\x05\x62ytes\x18\x0f \x01(\x0b\x32\x18.buf.validate.BytesRulesH\x00R\x05\x62ytes\x12-\n\x04\x65num\x18\x10 \x01(\x0b\x32\x17.buf.validate.EnumRulesH\x00R\x04\x65num\x12\x39\n\x08repeated\x18\x12 \x01(\x0b\x32\x1b.buf.validate.RepeatedRulesH\x00R\x08repeated\x12*\n\x03map\x18\x13 \x01(\x0b\x32\x16.buf.validate.MapRulesH\x00R\x03map\x12*\n\x03\x61ny\x18\x14 \x01(\x0b\x32\x16.buf.validate.AnyRulesH\x00R\x03\x61ny\x12\x39\n\x08\x64uration\x18\x15 \x01(\x0b\x32\x1b.buf.validate.DurationRulesH\x00R\x08\x64uration\x12<\n\ttimestamp\x18\x16 \x01(\x0b\x32\x1c.buf.validate.TimestampRulesH\x00R\ttimestampB\x06\n\x04type\"d\n\x15PredefinedConstraints\x12*\n\x03\x63\x65l\x18\x01 \x03(\x0b\x32\x18.buf.validate.ConstraintR\x03\x63\x65lJ\x04\x08\x18\x10\x19J\x04\x08\x1a\x10\x1bR\x13skippedignore_empty\"\xea\x17\n\nFloatRules\x12p\n\x05\x63onst\x18\x01 \x01(\x02\x42Z\xc2HW\nU\n\x0b\x66loat.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xa3\x01\n\x02lt\x18\x02 \x01(\x02\x42\x90\x01\xc2H\x8c\x01\n\x89\x01\n\x08\x66loat.lt\x1a}!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xb4\x01\n\x03lte\x18\x03 \x01(\x02\x42\x9f\x01\xc2H\x9b\x01\n\x98\x01\n\tfloat.lte\x1a\x8a\x01!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xf3\x07\n\x02gt\x18\x04 \x01(\x02\x42\xe0\x07\xc2H\xdc\x07\n\x8d\x01\n\x08\x66loat.gt\x1a\x80\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xc3\x01\n\x0b\x66loat.gt_lt\x1a\xb3\x01has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xcd\x01\n\x15\x66loat.gt_lt_exclusive\x1a\xb3\x01has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xd3\x01\n\x0c\x66loat.gt_lte\x1a\xc2\x01has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xdd\x01\n\x16\x66loat.gt_lte_exclusive\x1a\xc2\x01has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xbf\x08\n\x03gte\x18\x05 \x01(\x02\x42\xaa\x08\xc2H\xa6\x08\n\x9b\x01\n\tfloat.gte\x1a\x8d\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xd2\x01\n\x0c\x66loat.gte_lt\x1a\xc1\x01has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xdc\x01\n\x16\x66loat.gte_lt_exclusive\x1a\xc1\x01has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xe2\x01\n\rfloat.gte_lte\x1a\xd0\x01has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xec\x01\n\x17\x66loat.gte_lte_exclusive\x1a\xd0\x01has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12y\n\x02in\x18\x06 \x03(\x02\x42i\xc2Hf\nd\n\x08\x66loat.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\x07 \x03(\x02\x42\x66\xc2Hc\na\n\x0c\x66loat.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12}\n\x06\x66inite\x18\x08 \x01(\x08\x42\x65\xc2Hb\n`\n\x0c\x66loat.finite\x1aPrules.finite ? (this.isNan() || this.isInf() ? \'value must be finite\' : \'\') : \'\'R\x06\x66inite\x12\x34\n\x07\x65xample\x18\t \x03(\x02\x42\x1a\xc2H\x17\n\x15\n\rfloat.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xfc\x17\n\x0b\x44oubleRules\x12q\n\x05\x63onst\x18\x01 \x01(\x01\x42[\xc2HX\nV\n\x0c\x64ouble.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xa4\x01\n\x02lt\x18\x02 \x01(\x01\x42\x91\x01\xc2H\x8d\x01\n\x8a\x01\n\tdouble.lt\x1a}!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xb5\x01\n\x03lte\x18\x03 \x01(\x01\x42\xa0\x01\xc2H\x9c\x01\n\x99\x01\n\ndouble.lte\x1a\x8a\x01!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xf8\x07\n\x02gt\x18\x04 \x01(\x01\x42\xe5\x07\xc2H\xe1\x07\n\x8e\x01\n\tdouble.gt\x1a\x80\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xc4\x01\n\x0c\x64ouble.gt_lt\x1a\xb3\x01has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xce\x01\n\x16\x64ouble.gt_lt_exclusive\x1a\xb3\x01has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xd4\x01\n\rdouble.gt_lte\x1a\xc2\x01has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xde\x01\n\x17\x64ouble.gt_lte_exclusive\x1a\xc2\x01has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xc4\x08\n\x03gte\x18\x05 \x01(\x01\x42\xaf\x08\xc2H\xab\x08\n\x9c\x01\n\ndouble.gte\x1a\x8d\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xd3\x01\n\rdouble.gte_lt\x1a\xc1\x01has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xdd\x01\n\x17\x64ouble.gte_lt_exclusive\x1a\xc1\x01has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xe3\x01\n\x0e\x64ouble.gte_lte\x1a\xd0\x01has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xed\x01\n\x18\x64ouble.gte_lte_exclusive\x1a\xd0\x01has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x01\x42j\xc2Hg\ne\n\tdouble.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x01\x42g\xc2Hd\nb\n\rdouble.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12~\n\x06\x66inite\x18\x08 \x01(\x08\x42\x66\xc2Hc\na\n\rdouble.finite\x1aPrules.finite ? (this.isNan() || this.isInf() ? \'value must be finite\' : \'\') : \'\'R\x06\x66inite\x12\x35\n\x07\x65xample\x18\t \x03(\x01\x42\x1b\xc2H\x18\n\x16\n\x0e\x64ouble.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x94\x15\n\nInt32Rules\x12p\n\x05\x63onst\x18\x01 \x01(\x05\x42Z\xc2HW\nU\n\x0bint32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8e\x01\n\x02lt\x18\x02 \x01(\x05\x42|\xc2Hy\nw\n\x08int32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa1\x01\n\x03lte\x18\x03 \x01(\x05\x42\x8c\x01\xc2H\x88\x01\n\x85\x01\n\tint32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x9b\x07\n\x02gt\x18\x04 \x01(\x05\x42\x88\x07\xc2H\x84\x07\nz\n\x08int32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb3\x01\n\x0bint32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbb\x01\n\x15int32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc3\x01\n\x0cint32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcb\x01\n\x16int32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xe8\x07\n\x03gte\x18\x05 \x01(\x05\x42\xd3\x07\xc2H\xcf\x07\n\x88\x01\n\tint32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc2\x01\n\x0cint32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xca\x01\n\x16int32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd2\x01\n\rint32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xda\x01\n\x17int32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12y\n\x02in\x18\x06 \x03(\x05\x42i\xc2Hf\nd\n\x08int32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\x07 \x03(\x05\x42\x66\xc2Hc\na\n\x0cint32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x34\n\x07\x65xample\x18\x08 \x03(\x05\x42\x1a\xc2H\x17\n\x15\n\rint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x94\x15\n\nInt64Rules\x12p\n\x05\x63onst\x18\x01 \x01(\x03\x42Z\xc2HW\nU\n\x0bint64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8e\x01\n\x02lt\x18\x02 \x01(\x03\x42|\xc2Hy\nw\n\x08int64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa1\x01\n\x03lte\x18\x03 \x01(\x03\x42\x8c\x01\xc2H\x88\x01\n\x85\x01\n\tint64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x9b\x07\n\x02gt\x18\x04 \x01(\x03\x42\x88\x07\xc2H\x84\x07\nz\n\x08int64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb3\x01\n\x0bint64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbb\x01\n\x15int64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc3\x01\n\x0cint64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcb\x01\n\x16int64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xe8\x07\n\x03gte\x18\x05 \x01(\x03\x42\xd3\x07\xc2H\xcf\x07\n\x88\x01\n\tint64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc2\x01\n\x0cint64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xca\x01\n\x16int64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd2\x01\n\rint64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xda\x01\n\x17int64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12y\n\x02in\x18\x06 \x03(\x03\x42i\xc2Hf\nd\n\x08int64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\x07 \x03(\x03\x42\x66\xc2Hc\na\n\x0cint64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x34\n\x07\x65xample\x18\t \x03(\x03\x42\x1a\xc2H\x17\n\x15\n\rint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bUInt32Rules\x12q\n\x05\x63onst\x18\x01 \x01(\rB[\xc2HX\nV\n\x0cuint32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\rB}\xc2Hz\nx\n\tuint32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\rB\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nuint32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\rB\x8d\x07\xc2H\x89\x07\n{\n\tuint32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0cuint32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16uint32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\ruint32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17uint32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\rB\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nuint32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\ruint32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17uint32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0euint32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18uint32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\rBj\xc2Hg\ne\n\tuint32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\rBg\xc2Hd\nb\n\ruint32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\rB\x1b\xc2H\x18\n\x16\n\x0euint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bUInt64Rules\x12q\n\x05\x63onst\x18\x01 \x01(\x04\x42[\xc2HX\nV\n\x0cuint64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\x04\x42}\xc2Hz\nx\n\tuint64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\x04\x42\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nuint64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\x04\x42\x8d\x07\xc2H\x89\x07\n{\n\tuint64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0cuint64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16uint64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\ruint64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17uint64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\x04\x42\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nuint64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\ruint64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17uint64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0euint64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18uint64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x04\x42j\xc2Hg\ne\n\tuint64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x04\x42g\xc2Hd\nb\n\ruint64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x04\x42\x1b\xc2H\x18\n\x16\n\x0euint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bSInt32Rules\x12q\n\x05\x63onst\x18\x01 \x01(\x11\x42[\xc2HX\nV\n\x0csint32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\x11\x42}\xc2Hz\nx\n\tsint32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\x11\x42\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nsint32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\x11\x42\x8d\x07\xc2H\x89\x07\n{\n\tsint32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0csint32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16sint32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\rsint32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17sint32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\x11\x42\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nsint32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\rsint32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17sint32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0esint32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18sint32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x11\x42j\xc2Hg\ne\n\tsint32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x11\x42g\xc2Hd\nb\n\rsint32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x11\x42\x1b\xc2H\x18\n\x16\n\x0esint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bSInt64Rules\x12q\n\x05\x63onst\x18\x01 \x01(\x12\x42[\xc2HX\nV\n\x0csint64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\x12\x42}\xc2Hz\nx\n\tsint64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\x12\x42\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nsint64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\x12\x42\x8d\x07\xc2H\x89\x07\n{\n\tsint64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0csint64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16sint64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\rsint64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17sint64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\x12\x42\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nsint64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\rsint64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17sint64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0esint64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18sint64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x12\x42j\xc2Hg\ne\n\tsint64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x12\x42g\xc2Hd\nb\n\rsint64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x12\x42\x1b\xc2H\x18\n\x16\n\x0esint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xb6\x15\n\x0c\x46ixed32Rules\x12r\n\x05\x63onst\x18\x01 \x01(\x07\x42\\\xc2HY\nW\n\rfixed32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x90\x01\n\x02lt\x18\x02 \x01(\x07\x42~\xc2H{\ny\n\nfixed32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa3\x01\n\x03lte\x18\x03 \x01(\x07\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x0b\x66ixed32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa5\x07\n\x02gt\x18\x04 \x01(\x07\x42\x92\x07\xc2H\x8e\x07\n|\n\nfixed32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb5\x01\n\rfixed32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbd\x01\n\x17\x66ixed32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc5\x01\n\x0e\x66ixed32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcd\x01\n\x18\x66ixed32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf2\x07\n\x03gte\x18\x05 \x01(\x07\x42\xdd\x07\xc2H\xd9\x07\n\x8a\x01\n\x0b\x66ixed32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc4\x01\n\x0e\x66ixed32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcc\x01\n\x18\x66ixed32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd4\x01\n\x0f\x66ixed32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdc\x01\n\x19\x66ixed32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12{\n\x02in\x18\x06 \x03(\x07\x42k\xc2Hh\nf\n\nfixed32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x7f\n\x06not_in\x18\x07 \x03(\x07\x42h\xc2He\nc\n\x0e\x66ixed32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x36\n\x07\x65xample\x18\x08 \x03(\x07\x42\x1c\xc2H\x19\n\x17\n\x0f\x66ixed32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xb6\x15\n\x0c\x46ixed64Rules\x12r\n\x05\x63onst\x18\x01 \x01(\x06\x42\\\xc2HY\nW\n\rfixed64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x90\x01\n\x02lt\x18\x02 \x01(\x06\x42~\xc2H{\ny\n\nfixed64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa3\x01\n\x03lte\x18\x03 \x01(\x06\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x0b\x66ixed64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa5\x07\n\x02gt\x18\x04 \x01(\x06\x42\x92\x07\xc2H\x8e\x07\n|\n\nfixed64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb5\x01\n\rfixed64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbd\x01\n\x17\x66ixed64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc5\x01\n\x0e\x66ixed64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcd\x01\n\x18\x66ixed64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf2\x07\n\x03gte\x18\x05 \x01(\x06\x42\xdd\x07\xc2H\xd9\x07\n\x8a\x01\n\x0b\x66ixed64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc4\x01\n\x0e\x66ixed64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcc\x01\n\x18\x66ixed64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd4\x01\n\x0f\x66ixed64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdc\x01\n\x19\x66ixed64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12{\n\x02in\x18\x06 \x03(\x06\x42k\xc2Hh\nf\n\nfixed64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x7f\n\x06not_in\x18\x07 \x03(\x06\x42h\xc2He\nc\n\x0e\x66ixed64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x36\n\x07\x65xample\x18\x08 \x03(\x06\x42\x1c\xc2H\x19\n\x17\n\x0f\x66ixed64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xc8\x15\n\rSFixed32Rules\x12s\n\x05\x63onst\x18\x01 \x01(\x0f\x42]\xc2HZ\nX\n\x0esfixed32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x91\x01\n\x02lt\x18\x02 \x01(\x0f\x42\x7f\xc2H|\nz\n\x0bsfixed32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa4\x01\n\x03lte\x18\x03 \x01(\x0f\x42\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x0csfixed32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xaa\x07\n\x02gt\x18\x04 \x01(\x0f\x42\x97\x07\xc2H\x93\x07\n}\n\x0bsfixed32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb6\x01\n\x0esfixed32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\x18sfixed32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc6\x01\n\x0fsfixed32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xce\x01\n\x19sfixed32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf7\x07\n\x03gte\x18\x05 \x01(\x0f\x42\xe2\x07\xc2H\xde\x07\n\x8b\x01\n\x0csfixed32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc5\x01\n\x0fsfixed32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x19sfixed32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd5\x01\n\x10sfixed32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdd\x01\n\x1asfixed32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12|\n\x02in\x18\x06 \x03(\x0f\x42l\xc2Hi\ng\n\x0bsfixed32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x80\x01\n\x06not_in\x18\x07 \x03(\x0f\x42i\xc2Hf\nd\n\x0fsfixed32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x37\n\x07\x65xample\x18\x08 \x03(\x0f\x42\x1d\xc2H\x1a\n\x18\n\x10sfixed32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xc8\x15\n\rSFixed64Rules\x12s\n\x05\x63onst\x18\x01 \x01(\x10\x42]\xc2HZ\nX\n\x0esfixed64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x91\x01\n\x02lt\x18\x02 \x01(\x10\x42\x7f\xc2H|\nz\n\x0bsfixed64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa4\x01\n\x03lte\x18\x03 \x01(\x10\x42\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x0csfixed64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xaa\x07\n\x02gt\x18\x04 \x01(\x10\x42\x97\x07\xc2H\x93\x07\n}\n\x0bsfixed64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb6\x01\n\x0esfixed64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\x18sfixed64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc6\x01\n\x0fsfixed64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xce\x01\n\x19sfixed64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf7\x07\n\x03gte\x18\x05 \x01(\x10\x42\xe2\x07\xc2H\xde\x07\n\x8b\x01\n\x0csfixed64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc5\x01\n\x0fsfixed64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x19sfixed64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd5\x01\n\x10sfixed64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdd\x01\n\x1asfixed64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12|\n\x02in\x18\x06 \x03(\x10\x42l\xc2Hi\ng\n\x0bsfixed64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x80\x01\n\x06not_in\x18\x07 \x03(\x10\x42i\xc2Hf\nd\n\x0fsfixed64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x37\n\x07\x65xample\x18\x08 \x03(\x10\x42\x1d\xc2H\x1a\n\x18\n\x10sfixed64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xbc\x01\n\tBoolRules\x12o\n\x05\x63onst\x18\x01 \x01(\x08\x42Y\xc2HV\nT\n\nbool.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x33\n\x07\x65xample\x18\x02 \x03(\x08\x42\x19\xc2H\x16\n\x14\n\x0c\x62ool.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xa1\x39\n\x0bStringRules\x12s\n\x05\x63onst\x18\x01 \x01(\tB]\xc2HZ\nX\n\x0cstring.const\x1aHthis != rules.const ? \'value must equal `%s`\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x83\x01\n\x03len\x18\x13 \x01(\x04\x42q\xc2Hn\nl\n\nstring.len\x1a^uint(this.size()) != rules.len ? \'value length must be %s characters\'.format([rules.len]) : \'\'R\x03len\x12\xa1\x01\n\x07min_len\x18\x02 \x01(\x04\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\x0estring.min_len\x1anuint(this.size()) < rules.min_len ? \'value length must be at least %s characters\'.format([rules.min_len]) : \'\'R\x06minLen\x12\x9f\x01\n\x07max_len\x18\x03 \x01(\x04\x42\x85\x01\xc2H\x81\x01\n\x7f\n\x0estring.max_len\x1amuint(this.size()) > rules.max_len ? \'value length must be at most %s characters\'.format([rules.max_len]) : \'\'R\x06maxLen\x12\xa5\x01\n\tlen_bytes\x18\x14 \x01(\x04\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\x10string.len_bytes\x1aluint(bytes(this).size()) != rules.len_bytes ? \'value length must be %s bytes\'.format([rules.len_bytes]) : \'\'R\x08lenBytes\x12\xad\x01\n\tmin_bytes\x18\x04 \x01(\x04\x42\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x10string.min_bytes\x1atuint(bytes(this).size()) < rules.min_bytes ? \'value length must be at least %s bytes\'.format([rules.min_bytes]) : \'\'R\x08minBytes\x12\xac\x01\n\tmax_bytes\x18\x05 \x01(\x04\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x10string.max_bytes\x1asuint(bytes(this).size()) > rules.max_bytes ? \'value length must be at most %s bytes\'.format([rules.max_bytes]) : \'\'R\x08maxBytes\x12\x96\x01\n\x07pattern\x18\x06 \x01(\tB|\xc2Hy\nw\n\x0estring.pattern\x1a\x65!this.matches(rules.pattern) ? \'value does not match regex pattern `%s`\'.format([rules.pattern]) : \'\'R\x07pattern\x12\x8c\x01\n\x06prefix\x18\x07 \x01(\tBt\xc2Hq\no\n\rstring.prefix\x1a^!this.startsWith(rules.prefix) ? \'value does not have prefix `%s`\'.format([rules.prefix]) : \'\'R\x06prefix\x12\x8a\x01\n\x06suffix\x18\x08 \x01(\tBr\xc2Ho\nm\n\rstring.suffix\x1a\\!this.endsWith(rules.suffix) ? \'value does not have suffix `%s`\'.format([rules.suffix]) : \'\'R\x06suffix\x12\x9a\x01\n\x08\x63ontains\x18\t \x01(\tB~\xc2H{\ny\n\x0fstring.contains\x1a\x66!this.contains(rules.contains) ? \'value does not contain substring `%s`\'.format([rules.contains]) : \'\'R\x08\x63ontains\x12\xa5\x01\n\x0cnot_contains\x18\x17 \x01(\tB\x81\x01\xc2H~\n|\n\x13string.not_contains\x1a\x65this.contains(rules.not_contains) ? \'value contains substring `%s`\'.format([rules.not_contains]) : \'\'R\x0bnotContains\x12z\n\x02in\x18\n \x03(\tBj\xc2Hg\ne\n\tstring.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x0b \x03(\tBg\xc2Hd\nb\n\rstring.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\xe6\x01\n\x05\x65mail\x18\x0c \x01(\x08\x42\xcd\x01\xc2H\xc9\x01\na\n\x0cstring.email\x12#value must be a valid email address\x1a,!rules.email || this == \'\' || this.isEmail()\nd\n\x12string.email_empty\x12\x32value is empty, which is not a valid email address\x1a\x1a!rules.email || this != \'\'H\x00R\x05\x65mail\x12\xf1\x01\n\x08hostname\x18\r \x01(\x08\x42\xd2\x01\xc2H\xce\x01\ne\n\x0fstring.hostname\x12\x1evalue must be a valid hostname\x1a\x32!rules.hostname || this == \'\' || this.isHostname()\ne\n\x15string.hostname_empty\x12-value is empty, which is not a valid hostname\x1a\x1d!rules.hostname || this != \'\'H\x00R\x08hostname\x12\xcb\x01\n\x02ip\x18\x0e \x01(\x08\x42\xb8\x01\xc2H\xb4\x01\nU\n\tstring.ip\x12 value must be a valid IP address\x1a&!rules.ip || this == \'\' || this.isIp()\n[\n\x0fstring.ip_empty\x12/value is empty, which is not a valid IP address\x1a\x17!rules.ip || this != \'\'H\x00R\x02ip\x12\xdc\x01\n\x04ipv4\x18\x0f \x01(\x08\x42\xc5\x01\xc2H\xc1\x01\n\\\n\x0bstring.ipv4\x12\"value must be a valid IPv4 address\x1a)!rules.ipv4 || this == \'\' || this.isIp(4)\na\n\x11string.ipv4_empty\x12\x31value is empty, which is not a valid IPv4 address\x1a\x19!rules.ipv4 || this != \'\'H\x00R\x04ipv4\x12\xdc\x01\n\x04ipv6\x18\x10 \x01(\x08\x42\xc5\x01\xc2H\xc1\x01\n\\\n\x0bstring.ipv6\x12\"value must be a valid IPv6 address\x1a)!rules.ipv6 || this == \'\' || this.isIp(6)\na\n\x11string.ipv6_empty\x12\x31value is empty, which is not a valid IPv6 address\x1a\x19!rules.ipv6 || this != \'\'H\x00R\x04ipv6\x12\xc4\x01\n\x03uri\x18\x11 \x01(\x08\x42\xaf\x01\xc2H\xab\x01\nQ\n\nstring.uri\x12\x19value must be a valid URI\x1a(!rules.uri || this == \'\' || this.isUri()\nV\n\x10string.uri_empty\x12(value is empty, which is not a valid URI\x1a\x18!rules.uri || this != \'\'H\x00R\x03uri\x12n\n\x07uri_ref\x18\x12 \x01(\x08\x42S\xc2HP\nN\n\x0estring.uri_ref\x12\x19value must be a valid URI\x1a!!rules.uri_ref || this.isUriRef()H\x00R\x06uriRef\x12\x99\x02\n\x07\x61\x64\x64ress\x18\x15 \x01(\x08\x42\xfc\x01\xc2H\xf8\x01\n\x81\x01\n\x0estring.address\x12-value must be a valid hostname, or ip address\x1a@!rules.address || this == \'\' || this.isHostname() || this.isIp()\nr\n\x14string.address_empty\x12!rules.ipv4_with_prefixlen || this == \'\' || this.isIpPrefix(4)\n\x92\x01\n string.ipv4_with_prefixlen_empty\x12\x44value is empty, which is not a valid IPv4 address with prefix length\x1a(!rules.ipv4_with_prefixlen || this != \'\'H\x00R\x11ipv4WithPrefixlen\x12\xe2\x02\n\x13ipv6_with_prefixlen\x18\x1c \x01(\x08\x42\xaf\x02\xc2H\xab\x02\n\x93\x01\n\x1astring.ipv6_with_prefixlen\x12\x35value must be a valid IPv6 address with prefix length\x1a>!rules.ipv6_with_prefixlen || this == \'\' || this.isIpPrefix(6)\n\x92\x01\n string.ipv6_with_prefixlen_empty\x12\x44value is empty, which is not a valid IPv6 address with prefix length\x1a(!rules.ipv6_with_prefixlen || this != \'\'H\x00R\x11ipv6WithPrefixlen\x12\xfc\x01\n\tip_prefix\x18\x1d \x01(\x08\x42\xdc\x01\xc2H\xd8\x01\nl\n\x10string.ip_prefix\x12\x1fvalue must be a valid IP prefix\x1a\x37!rules.ip_prefix || this == \'\' || this.isIpPrefix(true)\nh\n\x16string.ip_prefix_empty\x12.value is empty, which is not a valid IP prefix\x1a\x1e!rules.ip_prefix || this != \'\'H\x00R\x08ipPrefix\x12\x8f\x02\n\x0bipv4_prefix\x18\x1e \x01(\x08\x42\xeb\x01\xc2H\xe7\x01\nu\n\x12string.ipv4_prefix\x12!value must be a valid IPv4 prefix\x1a!rules.host_and_port || this == \'\' || this.isHostAndPort(true)\ny\n\x1astring.host_and_port_empty\x12\x37value is empty, which is not a valid host and port pair\x1a\"!rules.host_and_port || this != \'\'H\x00R\x0bhostAndPort\x12\xb8\x05\n\x10well_known_regex\x18\x18 \x01(\x0e\x32\x18.buf.validate.KnownRegexB\xf1\x04\xc2H\xed\x04\n\xf0\x01\n#string.well_known_regex.header_name\x12&value must be a valid HTTP header name\x1a\xa0\x01rules.well_known_regex != 1 || this == \'\' || this.matches(!has(rules.strict) || rules.strict ?\'^:?[0-9a-zA-Z!#$%&\\\'*+-.^_|~\\x60]+$\' :\'^[^\\u0000\\u000A\\u000D]+$\')\n\x8d\x01\n)string.well_known_regex.header_name_empty\x12\x35value is empty, which is not a valid HTTP header name\x1a)rules.well_known_regex != 1 || this != \'\'\n\xe7\x01\n$string.well_known_regex.header_value\x12\'value must be a valid HTTP header value\x1a\x95\x01rules.well_known_regex != 2 || this.matches(!has(rules.strict) || rules.strict ?\'^[^\\u0000-\\u0008\\u000A-\\u001F\\u007F]*$\' :\'^[^\\u0000\\u000A\\u000D]*$\')H\x00R\x0ewellKnownRegex\x12\x16\n\x06strict\x18\x19 \x01(\x08R\x06strict\x12\x35\n\x07\x65xample\x18\" \x03(\tB\x1b\xc2H\x18\n\x16\n\x0estring.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0c\n\nwell_known\"\xa3\x11\n\nBytesRules\x12m\n\x05\x63onst\x18\x01 \x01(\x0c\x42W\xc2HT\nR\n\x0b\x62ytes.const\x1a\x43this != rules.const ? \'value must be %x\'.format([rules.const]) : \'\'R\x05\x63onst\x12}\n\x03len\x18\r \x01(\x04\x42k\xc2Hh\nf\n\tbytes.len\x1aYuint(this.size()) != rules.len ? \'value length must be %s bytes\'.format([rules.len]) : \'\'R\x03len\x12\x98\x01\n\x07min_len\x18\x02 \x01(\x04\x42\x7f\xc2H|\nz\n\rbytes.min_len\x1aiuint(this.size()) < rules.min_len ? \'value length must be at least %s bytes\'.format([rules.min_len]) : \'\'R\x06minLen\x12\x90\x01\n\x07max_len\x18\x03 \x01(\x04\x42w\xc2Ht\nr\n\rbytes.max_len\x1a\x61uint(this.size()) > rules.max_len ? \'value must be at most %s bytes\'.format([rules.max_len]) : \'\'R\x06maxLen\x12\x99\x01\n\x07pattern\x18\x04 \x01(\tB\x7f\xc2H|\nz\n\rbytes.pattern\x1ai!string(this).matches(rules.pattern) ? \'value must match regex pattern `%s`\'.format([rules.pattern]) : \'\'R\x07pattern\x12\x89\x01\n\x06prefix\x18\x05 \x01(\x0c\x42q\xc2Hn\nl\n\x0c\x62ytes.prefix\x1a\\!this.startsWith(rules.prefix) ? \'value does not have prefix %x\'.format([rules.prefix]) : \'\'R\x06prefix\x12\x87\x01\n\x06suffix\x18\x06 \x01(\x0c\x42o\xc2Hl\nj\n\x0c\x62ytes.suffix\x1aZ!this.endsWith(rules.suffix) ? \'value does not have suffix %x\'.format([rules.suffix]) : \'\'R\x06suffix\x12\x8d\x01\n\x08\x63ontains\x18\x07 \x01(\x0c\x42q\xc2Hn\nl\n\x0e\x62ytes.contains\x1aZ!this.contains(rules.contains) ? \'value does not contain %x\'.format([rules.contains]) : \'\'R\x08\x63ontains\x12\x9b\x01\n\x02in\x18\x08 \x03(\x0c\x42\x8a\x01\xc2H\x86\x01\n\x83\x01\n\x08\x62ytes.in\x1awdyn(rules)[\'in\'].size() > 0 && !(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\t \x03(\x0c\x42\x66\xc2Hc\na\n\x0c\x62ytes.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\xef\x01\n\x02ip\x18\n \x01(\x08\x42\xdc\x01\xc2H\xd8\x01\nt\n\x08\x62ytes.ip\x12 value must be a valid IP address\x1a\x46!rules.ip || this.size() == 0 || this.size() == 4 || this.size() == 16\n`\n\x0e\x62ytes.ip_empty\x12/value is empty, which is not a valid IP address\x1a\x1d!rules.ip || this.size() != 0H\x00R\x02ip\x12\xea\x01\n\x04ipv4\x18\x0b \x01(\x08\x42\xd3\x01\xc2H\xcf\x01\ne\n\nbytes.ipv4\x12\"value must be a valid IPv4 address\x1a\x33!rules.ipv4 || this.size() == 0 || this.size() == 4\nf\n\x10\x62ytes.ipv4_empty\x12\x31value is empty, which is not a valid IPv4 address\x1a\x1f!rules.ipv4 || this.size() != 0H\x00R\x04ipv4\x12\xeb\x01\n\x04ipv6\x18\x0c \x01(\x08\x42\xd4\x01\xc2H\xd0\x01\nf\n\nbytes.ipv6\x12\"value must be a valid IPv6 address\x1a\x34!rules.ipv6 || this.size() == 0 || this.size() == 16\nf\n\x10\x62ytes.ipv6_empty\x12\x31value is empty, which is not a valid IPv6 address\x1a\x1f!rules.ipv6 || this.size() != 0H\x00R\x04ipv6\x12\x34\n\x07\x65xample\x18\x0e \x03(\x0c\x42\x1a\xc2H\x17\n\x15\n\rbytes.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0c\n\nwell_known\"\xd7\x03\n\tEnumRules\x12o\n\x05\x63onst\x18\x01 \x01(\x05\x42Y\xc2HV\nT\n\nenum.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12!\n\x0c\x64\x65\x66ined_only\x18\x02 \x01(\x08R\x0b\x64\x65\x66inedOnly\x12x\n\x02in\x18\x03 \x03(\x05\x42h\xc2He\nc\n\x07\x65num.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12|\n\x06not_in\x18\x04 \x03(\x05\x42\x65\xc2Hb\n`\n\x0b\x65num.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x33\n\x07\x65xample\x18\x05 \x03(\x05\x42\x19\xc2H\x16\n\x14\n\x0c\x65num.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xa4\x04\n\rRepeatedRules\x12\xa8\x01\n\tmin_items\x18\x01 \x01(\x04\x42\x8a\x01\xc2H\x86\x01\n\x83\x01\n\x12repeated.min_items\x1amuint(this.size()) < rules.min_items ? \'value must contain at least %d item(s)\'.format([rules.min_items]) : \'\'R\x08minItems\x12\xac\x01\n\tmax_items\x18\x02 \x01(\x04\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x12repeated.max_items\x1aquint(this.size()) > rules.max_items ? \'value must contain no more than %s item(s)\'.format([rules.max_items]) : \'\'R\x08maxItems\x12x\n\x06unique\x18\x03 \x01(\x08\x42`\xc2H]\n[\n\x0frepeated.unique\x12(repeated value must contain unique items\x1a\x1e!rules.unique || this.unique()R\x06unique\x12\x34\n\x05items\x18\x04 \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x05items*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xb8\x03\n\x08MapRules\x12\x99\x01\n\tmin_pairs\x18\x01 \x01(\x04\x42|\xc2Hy\nw\n\rmap.min_pairs\x1a\x66uint(this.size()) < rules.min_pairs ? \'map must be at least %d entries\'.format([rules.min_pairs]) : \'\'R\x08minPairs\x12\x98\x01\n\tmax_pairs\x18\x02 \x01(\x04\x42{\xc2Hx\nv\n\rmap.max_pairs\x1a\x65uint(this.size()) > rules.max_pairs ? \'map must be at most %d entries\'.format([rules.max_pairs]) : \'\'R\x08maxPairs\x12\x32\n\x04keys\x18\x04 \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x04keys\x12\x36\n\x06values\x18\x05 \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x06values*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"1\n\x08\x41nyRules\x12\x0e\n\x02in\x18\x02 \x03(\tR\x02in\x12\x15\n\x06not_in\x18\x03 \x03(\tR\x05notIn\"\xa2\x17\n\rDurationRules\x12\x8e\x01\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationB]\xc2HZ\nX\n\x0e\x64uration.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xac\x01\n\x02lt\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x7f\xc2H|\nz\n\x0b\x64uration.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xbf\x01\n\x03lte\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationB\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x0c\x64uration.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xc5\x07\n\x02gt\x18\x05 \x01(\x0b\x32\x19.google.protobuf.DurationB\x97\x07\xc2H\x93\x07\n}\n\x0b\x64uration.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb6\x01\n\x0e\x64uration.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\x18\x64uration.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc6\x01\n\x0f\x64uration.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xce\x01\n\x19\x64uration.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\x92\x08\n\x03gte\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\xe2\x07\xc2H\xde\x07\n\x8b\x01\n\x0c\x64uration.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc5\x01\n\x0f\x64uration.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x19\x64uration.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd5\x01\n\x10\x64uration.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdd\x01\n\x1a\x64uration.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x97\x01\n\x02in\x18\x07 \x03(\x0b\x32\x19.google.protobuf.DurationBl\xc2Hi\ng\n\x0b\x64uration.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x9b\x01\n\x06not_in\x18\x08 \x03(\x0b\x32\x19.google.protobuf.DurationBi\xc2Hf\nd\n\x0f\x64uration.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12R\n\x07\x65xample\x18\t \x03(\x0b\x32\x19.google.protobuf.DurationB\x1d\xc2H\x1a\n\x18\n\x10\x64uration.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xb0\x18\n\x0eTimestampRules\x12\x90\x01\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB^\xc2H[\nY\n\x0ftimestamp.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xaf\x01\n\x02lt\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x80\x01\xc2H}\n{\n\x0ctimestamp.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xc1\x01\n\x03lte\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x90\x01\xc2H\x8c\x01\n\x89\x01\n\rtimestamp.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12s\n\x06lt_now\x18\x07 \x01(\x08\x42Z\xc2HW\nU\n\x10timestamp.lt_now\x1a\x41(rules.lt_now && this > now) ? \'value must be less than now\' : \'\'H\x00R\x05ltNow\x12\xcb\x07\n\x02gt\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x9c\x07\xc2H\x98\x07\n~\n\x0ctimestamp.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb7\x01\n\x0ftimestamp.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbf\x01\n\x19timestamp.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc7\x01\n\x10timestamp.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcf\x01\n\x1atimestamp.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\x98\x08\n\x03gte\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\xe7\x07\xc2H\xe3\x07\n\x8c\x01\n\rtimestamp.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc6\x01\n\x10timestamp.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xce\x01\n\x1atimestamp.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd6\x01\n\x11timestamp.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xde\x01\n\x1btimestamp.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12v\n\x06gt_now\x18\x08 \x01(\x08\x42]\xc2HZ\nX\n\x10timestamp.gt_now\x1a\x44(rules.gt_now && this < now) ? \'value must be greater than now\' : \'\'H\x01R\x05gtNow\x12\xc0\x01\n\x06within\x18\t \x01(\x0b\x32\x19.google.protobuf.DurationB\x8c\x01\xc2H\x88\x01\n\x85\x01\n\x10timestamp.within\x1aqthis < now-rules.within || this > now+rules.within ? \'value must be within %s of now\'.format([rules.within]) : \'\'R\x06within\x12T\n\x07\x65xample\x18\n \x03(\x0b\x32\x1a.google.protobuf.TimestampB\x1e\xc2H\x1b\n\x19\n\x11timestamp.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"E\n\nViolations\x12\x37\n\nviolations\x18\x01 \x03(\x0b\x32\x17.buf.validate.ViolationR\nviolations\"\xd1\x01\n\tViolation\x12-\n\x05\x66ield\x18\x05 \x01(\x0b\x32\x17.buf.validate.FieldPathR\x05\x66ield\x12+\n\x04rule\x18\x06 \x01(\x0b\x32\x17.buf.validate.FieldPathR\x04rule\x12#\n\rconstraint_id\x18\x02 \x01(\tR\x0c\x63onstraintId\x12\x18\n\x07message\x18\x03 \x01(\tR\x07message\x12\x17\n\x07\x66or_key\x18\x04 \x01(\x08R\x06\x66orKeyJ\x04\x08\x01\x10\x02R\nfield_path\"G\n\tFieldPath\x12:\n\x08\x65lements\x18\x01 \x03(\x0b\x32\x1e.buf.validate.FieldPathElementR\x08\x65lements\"\xcc\x03\n\x10\x46ieldPathElement\x12!\n\x0c\x66ield_number\x18\x01 \x01(\x05R\x0b\x66ieldNumber\x12\x1d\n\nfield_name\x18\x02 \x01(\tR\tfieldName\x12I\n\nfield_type\x18\x03 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\tfieldType\x12\x45\n\x08key_type\x18\x04 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\x07keyType\x12I\n\nvalue_type\x18\x05 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\tvalueType\x12\x16\n\x05index\x18\x06 \x01(\x04H\x00R\x05index\x12\x1b\n\x08\x62ool_key\x18\x07 \x01(\x08H\x00R\x07\x62oolKey\x12\x19\n\x07int_key\x18\x08 \x01(\x03H\x00R\x06intKey\x12\x1b\n\x08uint_key\x18\t \x01(\x04H\x00R\x07uintKey\x12\x1f\n\nstring_key\x18\n \x01(\tH\x00R\tstringKeyB\x0b\n\tsubscript*\x87\x01\n\x06Ignore\x12\x16\n\x12IGNORE_UNSPECIFIED\x10\x00\x12\x19\n\x15IGNORE_IF_UNPOPULATED\x10\x01\x12\x1b\n\x17IGNORE_IF_DEFAULT_VALUE\x10\x02\x12\x11\n\rIGNORE_ALWAYS\x10\x03*\x1aIGNORE_EMPTYIGNORE_DEFAULT*n\n\nKnownRegex\x12\x1b\n\x17KNOWN_REGEX_UNSPECIFIED\x10\x00\x12 \n\x1cKNOWN_REGEX_HTTP_HEADER_NAME\x10\x01\x12!\n\x1dKNOWN_REGEX_HTTP_HEADER_VALUE\x10\x02:\\\n\x07message\x12\x1f.google.protobuf.MessageOptions\x18\x87\t \x01(\x0b\x32 .buf.validate.MessageConstraintsR\x07message:T\n\x05oneof\x12\x1d.google.protobuf.OneofOptions\x18\x87\t \x01(\x0b\x32\x1e.buf.validate.OneofConstraintsR\x05oneof:T\n\x05\x66ield\x12\x1d.google.protobuf.FieldOptions\x18\x87\t \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x05\x66ield:c\n\npredefined\x12\x1d.google.protobuf.FieldOptions\x18\x88\t \x01(\x0b\x32#.buf.validate.PredefinedConstraintsR\npredefinedB\xbb\x01\n\x10\x63om.buf.validateB\rValidateProtoP\x01ZGbuf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate\xa2\x02\x03\x42VX\xaa\x02\x0c\x42uf.Validate\xca\x02\x0c\x42uf\\Validate\xe2\x02\x18\x42uf\\Validate\\GPBMetadata\xea\x02\rBuf::Validate') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x62uf/validate/validate.proto\x12\x0c\x62uf.validate\x1a google/protobuf/descriptor.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"V\n\nConstraint\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12\x1e\n\nexpression\x18\x03 \x01(\tR\nexpression\"\\\n\x12MessageConstraints\x12\x1a\n\x08\x64isabled\x18\x01 \x01(\x08R\x08\x64isabled\x12*\n\x03\x63\x65l\x18\x03 \x03(\x0b\x32\x18.buf.validate.ConstraintR\x03\x63\x65l\".\n\x10OneofConstraints\x12\x1a\n\x08required\x18\x01 \x01(\x08R\x08required\"\x89\n\n\x10\x46ieldConstraints\x12*\n\x03\x63\x65l\x18\x17 \x03(\x0b\x32\x18.buf.validate.ConstraintR\x03\x63\x65l\x12\x1a\n\x08required\x18\x19 \x01(\x08R\x08required\x12,\n\x06ignore\x18\x1b \x01(\x0e\x32\x14.buf.validate.IgnoreR\x06ignore\x12\x30\n\x05\x66loat\x18\x01 \x01(\x0b\x32\x18.buf.validate.FloatRulesH\x00R\x05\x66loat\x12\x33\n\x06\x64ouble\x18\x02 \x01(\x0b\x32\x19.buf.validate.DoubleRulesH\x00R\x06\x64ouble\x12\x30\n\x05int32\x18\x03 \x01(\x0b\x32\x18.buf.validate.Int32RulesH\x00R\x05int32\x12\x30\n\x05int64\x18\x04 \x01(\x0b\x32\x18.buf.validate.Int64RulesH\x00R\x05int64\x12\x33\n\x06uint32\x18\x05 \x01(\x0b\x32\x19.buf.validate.UInt32RulesH\x00R\x06uint32\x12\x33\n\x06uint64\x18\x06 \x01(\x0b\x32\x19.buf.validate.UInt64RulesH\x00R\x06uint64\x12\x33\n\x06sint32\x18\x07 \x01(\x0b\x32\x19.buf.validate.SInt32RulesH\x00R\x06sint32\x12\x33\n\x06sint64\x18\x08 \x01(\x0b\x32\x19.buf.validate.SInt64RulesH\x00R\x06sint64\x12\x36\n\x07\x66ixed32\x18\t \x01(\x0b\x32\x1a.buf.validate.Fixed32RulesH\x00R\x07\x66ixed32\x12\x36\n\x07\x66ixed64\x18\n \x01(\x0b\x32\x1a.buf.validate.Fixed64RulesH\x00R\x07\x66ixed64\x12\x39\n\x08sfixed32\x18\x0b \x01(\x0b\x32\x1b.buf.validate.SFixed32RulesH\x00R\x08sfixed32\x12\x39\n\x08sfixed64\x18\x0c \x01(\x0b\x32\x1b.buf.validate.SFixed64RulesH\x00R\x08sfixed64\x12-\n\x04\x62ool\x18\r \x01(\x0b\x32\x17.buf.validate.BoolRulesH\x00R\x04\x62ool\x12\x33\n\x06string\x18\x0e \x01(\x0b\x32\x19.buf.validate.StringRulesH\x00R\x06string\x12\x30\n\x05\x62ytes\x18\x0f \x01(\x0b\x32\x18.buf.validate.BytesRulesH\x00R\x05\x62ytes\x12-\n\x04\x65num\x18\x10 \x01(\x0b\x32\x17.buf.validate.EnumRulesH\x00R\x04\x65num\x12\x39\n\x08repeated\x18\x12 \x01(\x0b\x32\x1b.buf.validate.RepeatedRulesH\x00R\x08repeated\x12*\n\x03map\x18\x13 \x01(\x0b\x32\x16.buf.validate.MapRulesH\x00R\x03map\x12*\n\x03\x61ny\x18\x14 \x01(\x0b\x32\x16.buf.validate.AnyRulesH\x00R\x03\x61ny\x12\x39\n\x08\x64uration\x18\x15 \x01(\x0b\x32\x1b.buf.validate.DurationRulesH\x00R\x08\x64uration\x12<\n\ttimestamp\x18\x16 \x01(\x0b\x32\x1c.buf.validate.TimestampRulesH\x00R\ttimestampB\x06\n\x04typeJ\x04\x08\x18\x10\x19J\x04\x08\x1a\x10\x1bR\x07skippedR\x0cignore_empty\"d\n\x15PredefinedConstraints\x12*\n\x03\x63\x65l\x18\x01 \x03(\x0b\x32\x18.buf.validate.ConstraintR\x03\x63\x65lJ\x04\x08\x18\x10\x19J\x04\x08\x1a\x10\x1bR\x13skippedignore_empty\"\xea\x17\n\nFloatRules\x12p\n\x05\x63onst\x18\x01 \x01(\x02\x42Z\xc2HW\nU\n\x0b\x66loat.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xa3\x01\n\x02lt\x18\x02 \x01(\x02\x42\x90\x01\xc2H\x8c\x01\n\x89\x01\n\x08\x66loat.lt\x1a}!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xb4\x01\n\x03lte\x18\x03 \x01(\x02\x42\x9f\x01\xc2H\x9b\x01\n\x98\x01\n\tfloat.lte\x1a\x8a\x01!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xf3\x07\n\x02gt\x18\x04 \x01(\x02\x42\xe0\x07\xc2H\xdc\x07\n\x8d\x01\n\x08\x66loat.gt\x1a\x80\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xc3\x01\n\x0b\x66loat.gt_lt\x1a\xb3\x01has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xcd\x01\n\x15\x66loat.gt_lt_exclusive\x1a\xb3\x01has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xd3\x01\n\x0c\x66loat.gt_lte\x1a\xc2\x01has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xdd\x01\n\x16\x66loat.gt_lte_exclusive\x1a\xc2\x01has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xbf\x08\n\x03gte\x18\x05 \x01(\x02\x42\xaa\x08\xc2H\xa6\x08\n\x9b\x01\n\tfloat.gte\x1a\x8d\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xd2\x01\n\x0c\x66loat.gte_lt\x1a\xc1\x01has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xdc\x01\n\x16\x66loat.gte_lt_exclusive\x1a\xc1\x01has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xe2\x01\n\rfloat.gte_lte\x1a\xd0\x01has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xec\x01\n\x17\x66loat.gte_lte_exclusive\x1a\xd0\x01has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12y\n\x02in\x18\x06 \x03(\x02\x42i\xc2Hf\nd\n\x08\x66loat.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\x07 \x03(\x02\x42\x66\xc2Hc\na\n\x0c\x66loat.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12}\n\x06\x66inite\x18\x08 \x01(\x08\x42\x65\xc2Hb\n`\n\x0c\x66loat.finite\x1aPrules.finite ? (this.isNan() || this.isInf() ? \'value must be finite\' : \'\') : \'\'R\x06\x66inite\x12\x34\n\x07\x65xample\x18\t \x03(\x02\x42\x1a\xc2H\x17\n\x15\n\rfloat.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xfc\x17\n\x0b\x44oubleRules\x12q\n\x05\x63onst\x18\x01 \x01(\x01\x42[\xc2HX\nV\n\x0c\x64ouble.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xa4\x01\n\x02lt\x18\x02 \x01(\x01\x42\x91\x01\xc2H\x8d\x01\n\x8a\x01\n\tdouble.lt\x1a}!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xb5\x01\n\x03lte\x18\x03 \x01(\x01\x42\xa0\x01\xc2H\x9c\x01\n\x99\x01\n\ndouble.lte\x1a\x8a\x01!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xf8\x07\n\x02gt\x18\x04 \x01(\x01\x42\xe5\x07\xc2H\xe1\x07\n\x8e\x01\n\tdouble.gt\x1a\x80\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xc4\x01\n\x0c\x64ouble.gt_lt\x1a\xb3\x01has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xce\x01\n\x16\x64ouble.gt_lt_exclusive\x1a\xb3\x01has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xd4\x01\n\rdouble.gt_lte\x1a\xc2\x01has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xde\x01\n\x17\x64ouble.gt_lte_exclusive\x1a\xc2\x01has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xc4\x08\n\x03gte\x18\x05 \x01(\x01\x42\xaf\x08\xc2H\xab\x08\n\x9c\x01\n\ndouble.gte\x1a\x8d\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xd3\x01\n\rdouble.gte_lt\x1a\xc1\x01has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xdd\x01\n\x17\x64ouble.gte_lt_exclusive\x1a\xc1\x01has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xe3\x01\n\x0e\x64ouble.gte_lte\x1a\xd0\x01has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xed\x01\n\x18\x64ouble.gte_lte_exclusive\x1a\xd0\x01has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x01\x42j\xc2Hg\ne\n\tdouble.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x01\x42g\xc2Hd\nb\n\rdouble.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12~\n\x06\x66inite\x18\x08 \x01(\x08\x42\x66\xc2Hc\na\n\rdouble.finite\x1aPrules.finite ? (this.isNan() || this.isInf() ? \'value must be finite\' : \'\') : \'\'R\x06\x66inite\x12\x35\n\x07\x65xample\x18\t \x03(\x01\x42\x1b\xc2H\x18\n\x16\n\x0e\x64ouble.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x94\x15\n\nInt32Rules\x12p\n\x05\x63onst\x18\x01 \x01(\x05\x42Z\xc2HW\nU\n\x0bint32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8e\x01\n\x02lt\x18\x02 \x01(\x05\x42|\xc2Hy\nw\n\x08int32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa1\x01\n\x03lte\x18\x03 \x01(\x05\x42\x8c\x01\xc2H\x88\x01\n\x85\x01\n\tint32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x9b\x07\n\x02gt\x18\x04 \x01(\x05\x42\x88\x07\xc2H\x84\x07\nz\n\x08int32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb3\x01\n\x0bint32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbb\x01\n\x15int32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc3\x01\n\x0cint32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcb\x01\n\x16int32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xe8\x07\n\x03gte\x18\x05 \x01(\x05\x42\xd3\x07\xc2H\xcf\x07\n\x88\x01\n\tint32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc2\x01\n\x0cint32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xca\x01\n\x16int32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd2\x01\n\rint32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xda\x01\n\x17int32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12y\n\x02in\x18\x06 \x03(\x05\x42i\xc2Hf\nd\n\x08int32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\x07 \x03(\x05\x42\x66\xc2Hc\na\n\x0cint32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x34\n\x07\x65xample\x18\x08 \x03(\x05\x42\x1a\xc2H\x17\n\x15\n\rint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x94\x15\n\nInt64Rules\x12p\n\x05\x63onst\x18\x01 \x01(\x03\x42Z\xc2HW\nU\n\x0bint64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8e\x01\n\x02lt\x18\x02 \x01(\x03\x42|\xc2Hy\nw\n\x08int64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa1\x01\n\x03lte\x18\x03 \x01(\x03\x42\x8c\x01\xc2H\x88\x01\n\x85\x01\n\tint64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x9b\x07\n\x02gt\x18\x04 \x01(\x03\x42\x88\x07\xc2H\x84\x07\nz\n\x08int64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb3\x01\n\x0bint64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbb\x01\n\x15int64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc3\x01\n\x0cint64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcb\x01\n\x16int64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xe8\x07\n\x03gte\x18\x05 \x01(\x03\x42\xd3\x07\xc2H\xcf\x07\n\x88\x01\n\tint64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc2\x01\n\x0cint64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xca\x01\n\x16int64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd2\x01\n\rint64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xda\x01\n\x17int64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12y\n\x02in\x18\x06 \x03(\x03\x42i\xc2Hf\nd\n\x08int64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\x07 \x03(\x03\x42\x66\xc2Hc\na\n\x0cint64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x34\n\x07\x65xample\x18\t \x03(\x03\x42\x1a\xc2H\x17\n\x15\n\rint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bUInt32Rules\x12q\n\x05\x63onst\x18\x01 \x01(\rB[\xc2HX\nV\n\x0cuint32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\rB}\xc2Hz\nx\n\tuint32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\rB\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nuint32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\rB\x8d\x07\xc2H\x89\x07\n{\n\tuint32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0cuint32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16uint32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\ruint32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17uint32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\rB\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nuint32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\ruint32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17uint32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0euint32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18uint32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\rBj\xc2Hg\ne\n\tuint32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\rBg\xc2Hd\nb\n\ruint32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\rB\x1b\xc2H\x18\n\x16\n\x0euint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bUInt64Rules\x12q\n\x05\x63onst\x18\x01 \x01(\x04\x42[\xc2HX\nV\n\x0cuint64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\x04\x42}\xc2Hz\nx\n\tuint64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\x04\x42\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nuint64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\x04\x42\x8d\x07\xc2H\x89\x07\n{\n\tuint64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0cuint64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16uint64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\ruint64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17uint64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\x04\x42\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nuint64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\ruint64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17uint64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0euint64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18uint64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x04\x42j\xc2Hg\ne\n\tuint64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x04\x42g\xc2Hd\nb\n\ruint64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x04\x42\x1b\xc2H\x18\n\x16\n\x0euint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bSInt32Rules\x12q\n\x05\x63onst\x18\x01 \x01(\x11\x42[\xc2HX\nV\n\x0csint32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\x11\x42}\xc2Hz\nx\n\tsint32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\x11\x42\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nsint32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\x11\x42\x8d\x07\xc2H\x89\x07\n{\n\tsint32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0csint32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16sint32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\rsint32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17sint32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\x11\x42\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nsint32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\rsint32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17sint32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0esint32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18sint32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x11\x42j\xc2Hg\ne\n\tsint32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x11\x42g\xc2Hd\nb\n\rsint32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x11\x42\x1b\xc2H\x18\n\x16\n\x0esint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xa5\x15\n\x0bSInt64Rules\x12q\n\x05\x63onst\x18\x01 \x01(\x12\x42[\xc2HX\nV\n\x0csint64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x8f\x01\n\x02lt\x18\x02 \x01(\x12\x42}\xc2Hz\nx\n\tsint64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa2\x01\n\x03lte\x18\x03 \x01(\x12\x42\x8d\x01\xc2H\x89\x01\n\x86\x01\n\nsint64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa0\x07\n\x02gt\x18\x04 \x01(\x12\x42\x8d\x07\xc2H\x89\x07\n{\n\tsint64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb4\x01\n\x0csint64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbc\x01\n\x16sint64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc4\x01\n\rsint64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcc\x01\n\x17sint64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xed\x07\n\x03gte\x18\x05 \x01(\x12\x42\xd8\x07\xc2H\xd4\x07\n\x89\x01\n\nsint64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc3\x01\n\rsint64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcb\x01\n\x17sint64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd3\x01\n\x0esint64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdb\x01\n\x18sint64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12z\n\x02in\x18\x06 \x03(\x12\x42j\xc2Hg\ne\n\tsint64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x07 \x03(\x12\x42g\xc2Hd\nb\n\rsint64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x12\x42\x1b\xc2H\x18\n\x16\n\x0esint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xb6\x15\n\x0c\x46ixed32Rules\x12r\n\x05\x63onst\x18\x01 \x01(\x07\x42\\\xc2HY\nW\n\rfixed32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x90\x01\n\x02lt\x18\x02 \x01(\x07\x42~\xc2H{\ny\n\nfixed32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa3\x01\n\x03lte\x18\x03 \x01(\x07\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x0b\x66ixed32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa5\x07\n\x02gt\x18\x04 \x01(\x07\x42\x92\x07\xc2H\x8e\x07\n|\n\nfixed32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb5\x01\n\rfixed32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbd\x01\n\x17\x66ixed32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc5\x01\n\x0e\x66ixed32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcd\x01\n\x18\x66ixed32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf2\x07\n\x03gte\x18\x05 \x01(\x07\x42\xdd\x07\xc2H\xd9\x07\n\x8a\x01\n\x0b\x66ixed32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc4\x01\n\x0e\x66ixed32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcc\x01\n\x18\x66ixed32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd4\x01\n\x0f\x66ixed32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdc\x01\n\x19\x66ixed32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12{\n\x02in\x18\x06 \x03(\x07\x42k\xc2Hh\nf\n\nfixed32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x7f\n\x06not_in\x18\x07 \x03(\x07\x42h\xc2He\nc\n\x0e\x66ixed32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x36\n\x07\x65xample\x18\x08 \x03(\x07\x42\x1c\xc2H\x19\n\x17\n\x0f\x66ixed32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xb6\x15\n\x0c\x46ixed64Rules\x12r\n\x05\x63onst\x18\x01 \x01(\x06\x42\\\xc2HY\nW\n\rfixed64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x90\x01\n\x02lt\x18\x02 \x01(\x06\x42~\xc2H{\ny\n\nfixed64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa3\x01\n\x03lte\x18\x03 \x01(\x06\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x0b\x66ixed64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa5\x07\n\x02gt\x18\x04 \x01(\x06\x42\x92\x07\xc2H\x8e\x07\n|\n\nfixed64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb5\x01\n\rfixed64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbd\x01\n\x17\x66ixed64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc5\x01\n\x0e\x66ixed64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcd\x01\n\x18\x66ixed64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf2\x07\n\x03gte\x18\x05 \x01(\x06\x42\xdd\x07\xc2H\xd9\x07\n\x8a\x01\n\x0b\x66ixed64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc4\x01\n\x0e\x66ixed64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcc\x01\n\x18\x66ixed64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd4\x01\n\x0f\x66ixed64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdc\x01\n\x19\x66ixed64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12{\n\x02in\x18\x06 \x03(\x06\x42k\xc2Hh\nf\n\nfixed64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x7f\n\x06not_in\x18\x07 \x03(\x06\x42h\xc2He\nc\n\x0e\x66ixed64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x36\n\x07\x65xample\x18\x08 \x03(\x06\x42\x1c\xc2H\x19\n\x17\n\x0f\x66ixed64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xc8\x15\n\rSFixed32Rules\x12s\n\x05\x63onst\x18\x01 \x01(\x0f\x42]\xc2HZ\nX\n\x0esfixed32.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x91\x01\n\x02lt\x18\x02 \x01(\x0f\x42\x7f\xc2H|\nz\n\x0bsfixed32.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa4\x01\n\x03lte\x18\x03 \x01(\x0f\x42\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x0csfixed32.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xaa\x07\n\x02gt\x18\x04 \x01(\x0f\x42\x97\x07\xc2H\x93\x07\n}\n\x0bsfixed32.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb6\x01\n\x0esfixed32.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\x18sfixed32.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc6\x01\n\x0fsfixed32.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xce\x01\n\x19sfixed32.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf7\x07\n\x03gte\x18\x05 \x01(\x0f\x42\xe2\x07\xc2H\xde\x07\n\x8b\x01\n\x0csfixed32.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc5\x01\n\x0fsfixed32.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x19sfixed32.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd5\x01\n\x10sfixed32.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdd\x01\n\x1asfixed32.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12|\n\x02in\x18\x06 \x03(\x0f\x42l\xc2Hi\ng\n\x0bsfixed32.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x80\x01\n\x06not_in\x18\x07 \x03(\x0f\x42i\xc2Hf\nd\n\x0fsfixed32.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x37\n\x07\x65xample\x18\x08 \x03(\x0f\x42\x1d\xc2H\x1a\n\x18\n\x10sfixed32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xc8\x15\n\rSFixed64Rules\x12s\n\x05\x63onst\x18\x01 \x01(\x10\x42]\xc2HZ\nX\n\x0esfixed64.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x91\x01\n\x02lt\x18\x02 \x01(\x10\x42\x7f\xc2H|\nz\n\x0bsfixed64.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xa4\x01\n\x03lte\x18\x03 \x01(\x10\x42\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x0csfixed64.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xaa\x07\n\x02gt\x18\x04 \x01(\x10\x42\x97\x07\xc2H\x93\x07\n}\n\x0bsfixed64.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb6\x01\n\x0esfixed64.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\x18sfixed64.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc6\x01\n\x0fsfixed64.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xce\x01\n\x19sfixed64.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf7\x07\n\x03gte\x18\x05 \x01(\x10\x42\xe2\x07\xc2H\xde\x07\n\x8b\x01\n\x0csfixed64.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc5\x01\n\x0fsfixed64.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x19sfixed64.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd5\x01\n\x10sfixed64.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdd\x01\n\x1asfixed64.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12|\n\x02in\x18\x06 \x03(\x10\x42l\xc2Hi\ng\n\x0bsfixed64.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x80\x01\n\x06not_in\x18\x07 \x03(\x10\x42i\xc2Hf\nd\n\x0fsfixed64.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x37\n\x07\x65xample\x18\x08 \x03(\x10\x42\x1d\xc2H\x1a\n\x18\n\x10sfixed64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xbc\x01\n\tBoolRules\x12o\n\x05\x63onst\x18\x01 \x01(\x08\x42Y\xc2HV\nT\n\nbool.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x33\n\x07\x65xample\x18\x02 \x03(\x08\x42\x19\xc2H\x16\n\x14\n\x0c\x62ool.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xab\x39\n\x0bStringRules\x12s\n\x05\x63onst\x18\x01 \x01(\tB]\xc2HZ\nX\n\x0cstring.const\x1aHthis != rules.const ? \'value must equal `%s`\'.format([rules.const]) : \'\'R\x05\x63onst\x12\x83\x01\n\x03len\x18\x13 \x01(\x04\x42q\xc2Hn\nl\n\nstring.len\x1a^uint(this.size()) != rules.len ? \'value length must be %s characters\'.format([rules.len]) : \'\'R\x03len\x12\xa1\x01\n\x07min_len\x18\x02 \x01(\x04\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\x0estring.min_len\x1anuint(this.size()) < rules.min_len ? \'value length must be at least %s characters\'.format([rules.min_len]) : \'\'R\x06minLen\x12\x9f\x01\n\x07max_len\x18\x03 \x01(\x04\x42\x85\x01\xc2H\x81\x01\n\x7f\n\x0estring.max_len\x1amuint(this.size()) > rules.max_len ? \'value length must be at most %s characters\'.format([rules.max_len]) : \'\'R\x06maxLen\x12\xa5\x01\n\tlen_bytes\x18\x14 \x01(\x04\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\x10string.len_bytes\x1aluint(bytes(this).size()) != rules.len_bytes ? \'value length must be %s bytes\'.format([rules.len_bytes]) : \'\'R\x08lenBytes\x12\xad\x01\n\tmin_bytes\x18\x04 \x01(\x04\x42\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x10string.min_bytes\x1atuint(bytes(this).size()) < rules.min_bytes ? \'value length must be at least %s bytes\'.format([rules.min_bytes]) : \'\'R\x08minBytes\x12\xac\x01\n\tmax_bytes\x18\x05 \x01(\x04\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x10string.max_bytes\x1asuint(bytes(this).size()) > rules.max_bytes ? \'value length must be at most %s bytes\'.format([rules.max_bytes]) : \'\'R\x08maxBytes\x12\x96\x01\n\x07pattern\x18\x06 \x01(\tB|\xc2Hy\nw\n\x0estring.pattern\x1a\x65!this.matches(rules.pattern) ? \'value does not match regex pattern `%s`\'.format([rules.pattern]) : \'\'R\x07pattern\x12\x8c\x01\n\x06prefix\x18\x07 \x01(\tBt\xc2Hq\no\n\rstring.prefix\x1a^!this.startsWith(rules.prefix) ? \'value does not have prefix `%s`\'.format([rules.prefix]) : \'\'R\x06prefix\x12\x8a\x01\n\x06suffix\x18\x08 \x01(\tBr\xc2Ho\nm\n\rstring.suffix\x1a\\!this.endsWith(rules.suffix) ? \'value does not have suffix `%s`\'.format([rules.suffix]) : \'\'R\x06suffix\x12\x9a\x01\n\x08\x63ontains\x18\t \x01(\tB~\xc2H{\ny\n\x0fstring.contains\x1a\x66!this.contains(rules.contains) ? \'value does not contain substring `%s`\'.format([rules.contains]) : \'\'R\x08\x63ontains\x12\xa5\x01\n\x0cnot_contains\x18\x17 \x01(\tB\x81\x01\xc2H~\n|\n\x13string.not_contains\x1a\x65this.contains(rules.not_contains) ? \'value contains substring `%s`\'.format([rules.not_contains]) : \'\'R\x0bnotContains\x12z\n\x02in\x18\n \x03(\tBj\xc2Hg\ne\n\tstring.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12~\n\x06not_in\x18\x0b \x03(\tBg\xc2Hd\nb\n\rstring.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\xe6\x01\n\x05\x65mail\x18\x0c \x01(\x08\x42\xcd\x01\xc2H\xc9\x01\na\n\x0cstring.email\x12#value must be a valid email address\x1a,!rules.email || this == \'\' || this.isEmail()\nd\n\x12string.email_empty\x12\x32value is empty, which is not a valid email address\x1a\x1a!rules.email || this != \'\'H\x00R\x05\x65mail\x12\xf1\x01\n\x08hostname\x18\r \x01(\x08\x42\xd2\x01\xc2H\xce\x01\ne\n\x0fstring.hostname\x12\x1evalue must be a valid hostname\x1a\x32!rules.hostname || this == \'\' || this.isHostname()\ne\n\x15string.hostname_empty\x12-value is empty, which is not a valid hostname\x1a\x1d!rules.hostname || this != \'\'H\x00R\x08hostname\x12\xcb\x01\n\x02ip\x18\x0e \x01(\x08\x42\xb8\x01\xc2H\xb4\x01\nU\n\tstring.ip\x12 value must be a valid IP address\x1a&!rules.ip || this == \'\' || this.isIp()\n[\n\x0fstring.ip_empty\x12/value is empty, which is not a valid IP address\x1a\x17!rules.ip || this != \'\'H\x00R\x02ip\x12\xdc\x01\n\x04ipv4\x18\x0f \x01(\x08\x42\xc5\x01\xc2H\xc1\x01\n\\\n\x0bstring.ipv4\x12\"value must be a valid IPv4 address\x1a)!rules.ipv4 || this == \'\' || this.isIp(4)\na\n\x11string.ipv4_empty\x12\x31value is empty, which is not a valid IPv4 address\x1a\x19!rules.ipv4 || this != \'\'H\x00R\x04ipv4\x12\xdc\x01\n\x04ipv6\x18\x10 \x01(\x08\x42\xc5\x01\xc2H\xc1\x01\n\\\n\x0bstring.ipv6\x12\"value must be a valid IPv6 address\x1a)!rules.ipv6 || this == \'\' || this.isIp(6)\na\n\x11string.ipv6_empty\x12\x31value is empty, which is not a valid IPv6 address\x1a\x19!rules.ipv6 || this != \'\'H\x00R\x04ipv6\x12\xc4\x01\n\x03uri\x18\x11 \x01(\x08\x42\xaf\x01\xc2H\xab\x01\nQ\n\nstring.uri\x12\x19value must be a valid URI\x1a(!rules.uri || this == \'\' || this.isUri()\nV\n\x10string.uri_empty\x12(value is empty, which is not a valid URI\x1a\x18!rules.uri || this != \'\'H\x00R\x03uri\x12x\n\x07uri_ref\x18\x12 \x01(\x08\x42]\xc2HZ\nX\n\x0estring.uri_ref\x12#value must be a valid URI Reference\x1a!!rules.uri_ref || this.isUriRef()H\x00R\x06uriRef\x12\x99\x02\n\x07\x61\x64\x64ress\x18\x15 \x01(\x08\x42\xfc\x01\xc2H\xf8\x01\n\x81\x01\n\x0estring.address\x12-value must be a valid hostname, or ip address\x1a@!rules.address || this == \'\' || this.isHostname() || this.isIp()\nr\n\x14string.address_empty\x12!rules.ipv4_with_prefixlen || this == \'\' || this.isIpPrefix(4)\n\x92\x01\n string.ipv4_with_prefixlen_empty\x12\x44value is empty, which is not a valid IPv4 address with prefix length\x1a(!rules.ipv4_with_prefixlen || this != \'\'H\x00R\x11ipv4WithPrefixlen\x12\xe2\x02\n\x13ipv6_with_prefixlen\x18\x1c \x01(\x08\x42\xaf\x02\xc2H\xab\x02\n\x93\x01\n\x1astring.ipv6_with_prefixlen\x12\x35value must be a valid IPv6 address with prefix length\x1a>!rules.ipv6_with_prefixlen || this == \'\' || this.isIpPrefix(6)\n\x92\x01\n string.ipv6_with_prefixlen_empty\x12\x44value is empty, which is not a valid IPv6 address with prefix length\x1a(!rules.ipv6_with_prefixlen || this != \'\'H\x00R\x11ipv6WithPrefixlen\x12\xfc\x01\n\tip_prefix\x18\x1d \x01(\x08\x42\xdc\x01\xc2H\xd8\x01\nl\n\x10string.ip_prefix\x12\x1fvalue must be a valid IP prefix\x1a\x37!rules.ip_prefix || this == \'\' || this.isIpPrefix(true)\nh\n\x16string.ip_prefix_empty\x12.value is empty, which is not a valid IP prefix\x1a\x1e!rules.ip_prefix || this != \'\'H\x00R\x08ipPrefix\x12\x8f\x02\n\x0bipv4_prefix\x18\x1e \x01(\x08\x42\xeb\x01\xc2H\xe7\x01\nu\n\x12string.ipv4_prefix\x12!value must be a valid IPv4 prefix\x1a!rules.host_and_port || this == \'\' || this.isHostAndPort(true)\ny\n\x1astring.host_and_port_empty\x12\x37value is empty, which is not a valid host and port pair\x1a\"!rules.host_and_port || this != \'\'H\x00R\x0bhostAndPort\x12\xb8\x05\n\x10well_known_regex\x18\x18 \x01(\x0e\x32\x18.buf.validate.KnownRegexB\xf1\x04\xc2H\xed\x04\n\xf0\x01\n#string.well_known_regex.header_name\x12&value must be a valid HTTP header name\x1a\xa0\x01rules.well_known_regex != 1 || this == \'\' || this.matches(!has(rules.strict) || rules.strict ?\'^:?[0-9a-zA-Z!#$%&\\\'*+-.^_|~\\x60]+$\' :\'^[^\\u0000\\u000A\\u000D]+$\')\n\x8d\x01\n)string.well_known_regex.header_name_empty\x12\x35value is empty, which is not a valid HTTP header name\x1a)rules.well_known_regex != 1 || this != \'\'\n\xe7\x01\n$string.well_known_regex.header_value\x12\'value must be a valid HTTP header value\x1a\x95\x01rules.well_known_regex != 2 || this.matches(!has(rules.strict) || rules.strict ?\'^[^\\u0000-\\u0008\\u000A-\\u001F\\u007F]*$\' :\'^[^\\u0000\\u000A\\u000D]*$\')H\x00R\x0ewellKnownRegex\x12\x16\n\x06strict\x18\x19 \x01(\x08R\x06strict\x12\x35\n\x07\x65xample\x18\" \x03(\tB\x1b\xc2H\x18\n\x16\n\x0estring.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0c\n\nwell_known\"\xa3\x11\n\nBytesRules\x12m\n\x05\x63onst\x18\x01 \x01(\x0c\x42W\xc2HT\nR\n\x0b\x62ytes.const\x1a\x43this != rules.const ? \'value must be %x\'.format([rules.const]) : \'\'R\x05\x63onst\x12}\n\x03len\x18\r \x01(\x04\x42k\xc2Hh\nf\n\tbytes.len\x1aYuint(this.size()) != rules.len ? \'value length must be %s bytes\'.format([rules.len]) : \'\'R\x03len\x12\x98\x01\n\x07min_len\x18\x02 \x01(\x04\x42\x7f\xc2H|\nz\n\rbytes.min_len\x1aiuint(this.size()) < rules.min_len ? \'value length must be at least %s bytes\'.format([rules.min_len]) : \'\'R\x06minLen\x12\x90\x01\n\x07max_len\x18\x03 \x01(\x04\x42w\xc2Ht\nr\n\rbytes.max_len\x1a\x61uint(this.size()) > rules.max_len ? \'value must be at most %s bytes\'.format([rules.max_len]) : \'\'R\x06maxLen\x12\x99\x01\n\x07pattern\x18\x04 \x01(\tB\x7f\xc2H|\nz\n\rbytes.pattern\x1ai!string(this).matches(rules.pattern) ? \'value must match regex pattern `%s`\'.format([rules.pattern]) : \'\'R\x07pattern\x12\x89\x01\n\x06prefix\x18\x05 \x01(\x0c\x42q\xc2Hn\nl\n\x0c\x62ytes.prefix\x1a\\!this.startsWith(rules.prefix) ? \'value does not have prefix %x\'.format([rules.prefix]) : \'\'R\x06prefix\x12\x87\x01\n\x06suffix\x18\x06 \x01(\x0c\x42o\xc2Hl\nj\n\x0c\x62ytes.suffix\x1aZ!this.endsWith(rules.suffix) ? \'value does not have suffix %x\'.format([rules.suffix]) : \'\'R\x06suffix\x12\x8d\x01\n\x08\x63ontains\x18\x07 \x01(\x0c\x42q\xc2Hn\nl\n\x0e\x62ytes.contains\x1aZ!this.contains(rules.contains) ? \'value does not contain %x\'.format([rules.contains]) : \'\'R\x08\x63ontains\x12\x9b\x01\n\x02in\x18\x08 \x03(\x0c\x42\x8a\x01\xc2H\x86\x01\n\x83\x01\n\x08\x62ytes.in\x1awdyn(rules)[\'in\'].size() > 0 && !(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12}\n\x06not_in\x18\t \x03(\x0c\x42\x66\xc2Hc\na\n\x0c\x62ytes.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\xef\x01\n\x02ip\x18\n \x01(\x08\x42\xdc\x01\xc2H\xd8\x01\nt\n\x08\x62ytes.ip\x12 value must be a valid IP address\x1a\x46!rules.ip || this.size() == 0 || this.size() == 4 || this.size() == 16\n`\n\x0e\x62ytes.ip_empty\x12/value is empty, which is not a valid IP address\x1a\x1d!rules.ip || this.size() != 0H\x00R\x02ip\x12\xea\x01\n\x04ipv4\x18\x0b \x01(\x08\x42\xd3\x01\xc2H\xcf\x01\ne\n\nbytes.ipv4\x12\"value must be a valid IPv4 address\x1a\x33!rules.ipv4 || this.size() == 0 || this.size() == 4\nf\n\x10\x62ytes.ipv4_empty\x12\x31value is empty, which is not a valid IPv4 address\x1a\x1f!rules.ipv4 || this.size() != 0H\x00R\x04ipv4\x12\xeb\x01\n\x04ipv6\x18\x0c \x01(\x08\x42\xd4\x01\xc2H\xd0\x01\nf\n\nbytes.ipv6\x12\"value must be a valid IPv6 address\x1a\x34!rules.ipv6 || this.size() == 0 || this.size() == 16\nf\n\x10\x62ytes.ipv6_empty\x12\x31value is empty, which is not a valid IPv6 address\x1a\x1f!rules.ipv6 || this.size() != 0H\x00R\x04ipv6\x12\x34\n\x07\x65xample\x18\x0e \x03(\x0c\x42\x1a\xc2H\x17\n\x15\n\rbytes.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0c\n\nwell_known\"\xd7\x03\n\tEnumRules\x12o\n\x05\x63onst\x18\x01 \x01(\x05\x42Y\xc2HV\nT\n\nenum.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12!\n\x0c\x64\x65\x66ined_only\x18\x02 \x01(\x08R\x0b\x64\x65\x66inedOnly\x12x\n\x02in\x18\x03 \x03(\x05\x42h\xc2He\nc\n\x07\x65num.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12|\n\x06not_in\x18\x04 \x03(\x05\x42\x65\xc2Hb\n`\n\x0b\x65num.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x33\n\x07\x65xample\x18\x05 \x03(\x05\x42\x19\xc2H\x16\n\x14\n\x0c\x65num.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xa4\x04\n\rRepeatedRules\x12\xa8\x01\n\tmin_items\x18\x01 \x01(\x04\x42\x8a\x01\xc2H\x86\x01\n\x83\x01\n\x12repeated.min_items\x1amuint(this.size()) < rules.min_items ? \'value must contain at least %d item(s)\'.format([rules.min_items]) : \'\'R\x08minItems\x12\xac\x01\n\tmax_items\x18\x02 \x01(\x04\x42\x8e\x01\xc2H\x8a\x01\n\x87\x01\n\x12repeated.max_items\x1aquint(this.size()) > rules.max_items ? \'value must contain no more than %s item(s)\'.format([rules.max_items]) : \'\'R\x08maxItems\x12x\n\x06unique\x18\x03 \x01(\x08\x42`\xc2H]\n[\n\x0frepeated.unique\x12(repeated value must contain unique items\x1a\x1e!rules.unique || this.unique()R\x06unique\x12\x34\n\x05items\x18\x04 \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x05items*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xb8\x03\n\x08MapRules\x12\x99\x01\n\tmin_pairs\x18\x01 \x01(\x04\x42|\xc2Hy\nw\n\rmap.min_pairs\x1a\x66uint(this.size()) < rules.min_pairs ? \'map must be at least %d entries\'.format([rules.min_pairs]) : \'\'R\x08minPairs\x12\x98\x01\n\tmax_pairs\x18\x02 \x01(\x04\x42{\xc2Hx\nv\n\rmap.max_pairs\x1a\x65uint(this.size()) > rules.max_pairs ? \'map must be at most %d entries\'.format([rules.max_pairs]) : \'\'R\x08maxPairs\x12\x32\n\x04keys\x18\x04 \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x04keys\x12\x36\n\x06values\x18\x05 \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x06values*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"1\n\x08\x41nyRules\x12\x0e\n\x02in\x18\x02 \x03(\tR\x02in\x12\x15\n\x06not_in\x18\x03 \x03(\tR\x05notIn\"\xa2\x17\n\rDurationRules\x12\x8e\x01\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationB]\xc2HZ\nX\n\x0e\x64uration.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xac\x01\n\x02lt\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x7f\xc2H|\nz\n\x0b\x64uration.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xbf\x01\n\x03lte\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationB\x8f\x01\xc2H\x8b\x01\n\x88\x01\n\x0c\x64uration.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xc5\x07\n\x02gt\x18\x05 \x01(\x0b\x32\x19.google.protobuf.DurationB\x97\x07\xc2H\x93\x07\n}\n\x0b\x64uration.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb6\x01\n\x0e\x64uration.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\x18\x64uration.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc6\x01\n\x0f\x64uration.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xce\x01\n\x19\x64uration.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\x92\x08\n\x03gte\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\xe2\x07\xc2H\xde\x07\n\x8b\x01\n\x0c\x64uration.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc5\x01\n\x0f\x64uration.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x19\x64uration.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd5\x01\n\x10\x64uration.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xdd\x01\n\x1a\x64uration.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x97\x01\n\x02in\x18\x07 \x03(\x0b\x32\x19.google.protobuf.DurationBl\xc2Hi\ng\n\x0b\x64uration.in\x1aX!(this in dyn(rules)[\'in\']) ? \'value must be in list %s\'.format([dyn(rules)[\'in\']]) : \'\'R\x02in\x12\x9b\x01\n\x06not_in\x18\x08 \x03(\x0b\x32\x19.google.protobuf.DurationBi\xc2Hf\nd\n\x0f\x64uration.not_in\x1aQthis in rules.not_in ? \'value must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12R\n\x07\x65xample\x18\t \x03(\x0b\x32\x19.google.protobuf.DurationB\x1d\xc2H\x1a\n\x18\n\x10\x64uration.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xb0\x18\n\x0eTimestampRules\x12\x90\x01\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB^\xc2H[\nY\n\x0ftimestamp.const\x1a\x46this != rules.const ? \'value must equal %s\'.format([rules.const]) : \'\'R\x05\x63onst\x12\xaf\x01\n\x02lt\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x80\x01\xc2H}\n{\n\x0ctimestamp.lt\x1ak!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'value must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xc1\x01\n\x03lte\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x90\x01\xc2H\x8c\x01\n\x89\x01\n\rtimestamp.lte\x1ax!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'value must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12s\n\x06lt_now\x18\x07 \x01(\x08\x42Z\xc2HW\nU\n\x10timestamp.lt_now\x1a\x41(rules.lt_now && this > now) ? \'value must be less than now\' : \'\'H\x00R\x05ltNow\x12\xcb\x07\n\x02gt\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x9c\x07\xc2H\x98\x07\n~\n\x0ctimestamp.gt\x1an!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'value must be greater than %s\'.format([rules.gt]) : \'\'\n\xb7\x01\n\x0ftimestamp.gt_lt\x1a\xa3\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'value must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbf\x01\n\x19timestamp.gt_lt_exclusive\x1a\xa1\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'value must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc7\x01\n\x10timestamp.gt_lte\x1a\xb2\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'value must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xcf\x01\n\x1atimestamp.gt_lte_exclusive\x1a\xb0\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'value must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\x98\x08\n\x03gte\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\xe7\x07\xc2H\xe3\x07\n\x8c\x01\n\rtimestamp.gte\x1a{!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'value must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc6\x01\n\x10timestamp.gte_lt\x1a\xb1\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'value must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xce\x01\n\x1atimestamp.gte_lt_exclusive\x1a\xaf\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'value must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd6\x01\n\x11timestamp.gte_lte\x1a\xc0\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'value must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xde\x01\n\x1btimestamp.gte_lte_exclusive\x1a\xbe\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'value must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12v\n\x06gt_now\x18\x08 \x01(\x08\x42]\xc2HZ\nX\n\x10timestamp.gt_now\x1a\x44(rules.gt_now && this < now) ? \'value must be greater than now\' : \'\'H\x01R\x05gtNow\x12\xc0\x01\n\x06within\x18\t \x01(\x0b\x32\x19.google.protobuf.DurationB\x8c\x01\xc2H\x88\x01\n\x85\x01\n\x10timestamp.within\x1aqthis < now-rules.within || this > now+rules.within ? \'value must be within %s of now\'.format([rules.within]) : \'\'R\x06within\x12T\n\x07\x65xample\x18\n \x03(\x0b\x32\x1a.google.protobuf.TimestampB\x1e\xc2H\x1b\n\x19\n\x11timestamp.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"E\n\nViolations\x12\x37\n\nviolations\x18\x01 \x03(\x0b\x32\x17.buf.validate.ViolationR\nviolations\"\xd1\x01\n\tViolation\x12-\n\x05\x66ield\x18\x05 \x01(\x0b\x32\x17.buf.validate.FieldPathR\x05\x66ield\x12+\n\x04rule\x18\x06 \x01(\x0b\x32\x17.buf.validate.FieldPathR\x04rule\x12#\n\rconstraint_id\x18\x02 \x01(\tR\x0c\x63onstraintId\x12\x18\n\x07message\x18\x03 \x01(\tR\x07message\x12\x17\n\x07\x66or_key\x18\x04 \x01(\x08R\x06\x66orKeyJ\x04\x08\x01\x10\x02R\nfield_path\"G\n\tFieldPath\x12:\n\x08\x65lements\x18\x01 \x03(\x0b\x32\x1e.buf.validate.FieldPathElementR\x08\x65lements\"\xcc\x03\n\x10\x46ieldPathElement\x12!\n\x0c\x66ield_number\x18\x01 \x01(\x05R\x0b\x66ieldNumber\x12\x1d\n\nfield_name\x18\x02 \x01(\tR\tfieldName\x12I\n\nfield_type\x18\x03 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\tfieldType\x12\x45\n\x08key_type\x18\x04 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\x07keyType\x12I\n\nvalue_type\x18\x05 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\tvalueType\x12\x16\n\x05index\x18\x06 \x01(\x04H\x00R\x05index\x12\x1b\n\x08\x62ool_key\x18\x07 \x01(\x08H\x00R\x07\x62oolKey\x12\x19\n\x07int_key\x18\x08 \x01(\x03H\x00R\x06intKey\x12\x1b\n\x08uint_key\x18\t \x01(\x04H\x00R\x07uintKey\x12\x1f\n\nstring_key\x18\n \x01(\tH\x00R\tstringKeyB\x0b\n\tsubscript*\x87\x01\n\x06Ignore\x12\x16\n\x12IGNORE_UNSPECIFIED\x10\x00\x12\x19\n\x15IGNORE_IF_UNPOPULATED\x10\x01\x12\x1b\n\x17IGNORE_IF_DEFAULT_VALUE\x10\x02\x12\x11\n\rIGNORE_ALWAYS\x10\x03*\x1aIGNORE_EMPTYIGNORE_DEFAULT*n\n\nKnownRegex\x12\x1b\n\x17KNOWN_REGEX_UNSPECIFIED\x10\x00\x12 \n\x1cKNOWN_REGEX_HTTP_HEADER_NAME\x10\x01\x12!\n\x1dKNOWN_REGEX_HTTP_HEADER_VALUE\x10\x02:\\\n\x07message\x12\x1f.google.protobuf.MessageOptions\x18\x87\t \x01(\x0b\x32 .buf.validate.MessageConstraintsR\x07message:T\n\x05oneof\x12\x1d.google.protobuf.OneofOptions\x18\x87\t \x01(\x0b\x32\x1e.buf.validate.OneofConstraintsR\x05oneof:T\n\x05\x66ield\x12\x1d.google.protobuf.FieldOptions\x18\x87\t \x01(\x0b\x32\x1e.buf.validate.FieldConstraintsR\x05\x66ield:c\n\npredefined\x12\x1d.google.protobuf.FieldOptions\x18\x88\t \x01(\x0b\x32#.buf.validate.PredefinedConstraintsR\npredefinedB\xbb\x01\n\x10\x63om.buf.validateB\rValidateProtoP\x01ZGbuf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate\xa2\x02\x03\x42VX\xaa\x02\x0c\x42uf.Validate\xca\x02\x0c\x42uf\\Validate\xe2\x02\x18\x42uf\\Validate\\GPBMetadata\xea\x02\rBuf::Validate') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -290,7 +290,7 @@ _globals['_STRINGRULES'].fields_by_name['uri']._loaded_options = None _globals['_STRINGRULES'].fields_by_name['uri']._serialized_options = b'\302H\253\001\nQ\n\nstring.uri\022\031value must be a valid URI\032(!rules.uri || this == \'\' || this.isUri()\nV\n\020string.uri_empty\022(value is empty, which is not a valid URI\032\030!rules.uri || this != \'\'' _globals['_STRINGRULES'].fields_by_name['uri_ref']._loaded_options = None - _globals['_STRINGRULES'].fields_by_name['uri_ref']._serialized_options = b'\302HP\nN\n\016string.uri_ref\022\031value must be a valid URI\032!!rules.uri_ref || this.isUriRef()' + _globals['_STRINGRULES'].fields_by_name['uri_ref']._serialized_options = b'\302HZ\nX\n\016string.uri_ref\022#value must be a valid URI Reference\032!!rules.uri_ref || this.isUriRef()' _globals['_STRINGRULES'].fields_by_name['address']._loaded_options = None _globals['_STRINGRULES'].fields_by_name['address']._serialized_options = b'\302H\370\001\n\201\001\n\016string.address\022-value must be a valid hostname, or ip address\032@!rules.address || this == \'\' || this.isHostname() || this.isIp()\nr\n\024string.address_empty\022 now+rules.within ? \'value must be within %s of now\'.format([rules.within]) : \'\'' _globals['_TIMESTAMPRULES'].fields_by_name['example']._loaded_options = None _globals['_TIMESTAMPRULES'].fields_by_name['example']._serialized_options = b'\302H\033\n\031\n\021timestamp.example\032\004true' - _globals['_IGNORE']._serialized_start=53387 - _globals['_IGNORE']._serialized_end=53522 - _globals['_KNOWNREGEX']._serialized_start=53524 - _globals['_KNOWNREGEX']._serialized_end=53634 + _globals['_IGNORE']._serialized_start=53432 + _globals['_IGNORE']._serialized_end=53567 + _globals['_KNOWNREGEX']._serialized_start=53569 + _globals['_KNOWNREGEX']._serialized_end=53679 _globals['_CONSTRAINT']._serialized_start=144 _globals['_CONSTRAINT']._serialized_end=230 _globals['_MESSAGECONSTRAINTS']._serialized_start=232 @@ -406,57 +406,57 @@ _globals['_ONEOFCONSTRAINTS']._serialized_start=326 _globals['_ONEOFCONSTRAINTS']._serialized_end=372 _globals['_FIELDCONSTRAINTS']._serialized_start=375 - _globals['_FIELDCONSTRAINTS']._serialized_end=1629 - _globals['_PREDEFINEDCONSTRAINTS']._serialized_start=1631 - _globals['_PREDEFINEDCONSTRAINTS']._serialized_end=1731 - _globals['_FLOATRULES']._serialized_start=1734 - _globals['_FLOATRULES']._serialized_end=4784 - _globals['_DOUBLERULES']._serialized_start=4787 - _globals['_DOUBLERULES']._serialized_end=7855 - _globals['_INT32RULES']._serialized_start=7858 - _globals['_INT32RULES']._serialized_end=10566 - _globals['_INT64RULES']._serialized_start=10569 - _globals['_INT64RULES']._serialized_end=13277 - _globals['_UINT32RULES']._serialized_start=13280 - _globals['_UINT32RULES']._serialized_end=16005 - _globals['_UINT64RULES']._serialized_start=16008 - _globals['_UINT64RULES']._serialized_end=18733 - _globals['_SINT32RULES']._serialized_start=18736 - _globals['_SINT32RULES']._serialized_end=21461 - _globals['_SINT64RULES']._serialized_start=21464 - _globals['_SINT64RULES']._serialized_end=24189 - _globals['_FIXED32RULES']._serialized_start=24192 - _globals['_FIXED32RULES']._serialized_end=26934 - _globals['_FIXED64RULES']._serialized_start=26937 - _globals['_FIXED64RULES']._serialized_end=29679 - _globals['_SFIXED32RULES']._serialized_start=29682 - _globals['_SFIXED32RULES']._serialized_end=32442 - _globals['_SFIXED64RULES']._serialized_start=32445 - _globals['_SFIXED64RULES']._serialized_end=35205 - _globals['_BOOLRULES']._serialized_start=35208 - _globals['_BOOLRULES']._serialized_end=35396 - _globals['_STRINGRULES']._serialized_start=35399 - _globals['_STRINGRULES']._serialized_end=42728 - _globals['_BYTESRULES']._serialized_start=42731 - _globals['_BYTESRULES']._serialized_end=44942 - _globals['_ENUMRULES']._serialized_start=44945 - _globals['_ENUMRULES']._serialized_end=45416 - _globals['_REPEATEDRULES']._serialized_start=45419 - _globals['_REPEATEDRULES']._serialized_end=45967 - _globals['_MAPRULES']._serialized_start=45970 - _globals['_MAPRULES']._serialized_end=46410 - _globals['_ANYRULES']._serialized_start=46412 - _globals['_ANYRULES']._serialized_end=46461 - _globals['_DURATIONRULES']._serialized_start=46464 - _globals['_DURATIONRULES']._serialized_end=49442 - _globals['_TIMESTAMPRULES']._serialized_start=49445 - _globals['_TIMESTAMPRULES']._serialized_end=52565 - _globals['_VIOLATIONS']._serialized_start=52567 - _globals['_VIOLATIONS']._serialized_end=52636 - _globals['_VIOLATION']._serialized_start=52639 - _globals['_VIOLATION']._serialized_end=52848 - _globals['_FIELDPATH']._serialized_start=52850 - _globals['_FIELDPATH']._serialized_end=52921 - _globals['_FIELDPATHELEMENT']._serialized_start=52924 - _globals['_FIELDPATHELEMENT']._serialized_end=53384 + _globals['_FIELDCONSTRAINTS']._serialized_end=1664 + _globals['_PREDEFINEDCONSTRAINTS']._serialized_start=1666 + _globals['_PREDEFINEDCONSTRAINTS']._serialized_end=1766 + _globals['_FLOATRULES']._serialized_start=1769 + _globals['_FLOATRULES']._serialized_end=4819 + _globals['_DOUBLERULES']._serialized_start=4822 + _globals['_DOUBLERULES']._serialized_end=7890 + _globals['_INT32RULES']._serialized_start=7893 + _globals['_INT32RULES']._serialized_end=10601 + _globals['_INT64RULES']._serialized_start=10604 + _globals['_INT64RULES']._serialized_end=13312 + _globals['_UINT32RULES']._serialized_start=13315 + _globals['_UINT32RULES']._serialized_end=16040 + _globals['_UINT64RULES']._serialized_start=16043 + _globals['_UINT64RULES']._serialized_end=18768 + _globals['_SINT32RULES']._serialized_start=18771 + _globals['_SINT32RULES']._serialized_end=21496 + _globals['_SINT64RULES']._serialized_start=21499 + _globals['_SINT64RULES']._serialized_end=24224 + _globals['_FIXED32RULES']._serialized_start=24227 + _globals['_FIXED32RULES']._serialized_end=26969 + _globals['_FIXED64RULES']._serialized_start=26972 + _globals['_FIXED64RULES']._serialized_end=29714 + _globals['_SFIXED32RULES']._serialized_start=29717 + _globals['_SFIXED32RULES']._serialized_end=32477 + _globals['_SFIXED64RULES']._serialized_start=32480 + _globals['_SFIXED64RULES']._serialized_end=35240 + _globals['_BOOLRULES']._serialized_start=35243 + _globals['_BOOLRULES']._serialized_end=35431 + _globals['_STRINGRULES']._serialized_start=35434 + _globals['_STRINGRULES']._serialized_end=42773 + _globals['_BYTESRULES']._serialized_start=42776 + _globals['_BYTESRULES']._serialized_end=44987 + _globals['_ENUMRULES']._serialized_start=44990 + _globals['_ENUMRULES']._serialized_end=45461 + _globals['_REPEATEDRULES']._serialized_start=45464 + _globals['_REPEATEDRULES']._serialized_end=46012 + _globals['_MAPRULES']._serialized_start=46015 + _globals['_MAPRULES']._serialized_end=46455 + _globals['_ANYRULES']._serialized_start=46457 + _globals['_ANYRULES']._serialized_end=46506 + _globals['_DURATIONRULES']._serialized_start=46509 + _globals['_DURATIONRULES']._serialized_end=49487 + _globals['_TIMESTAMPRULES']._serialized_start=49490 + _globals['_TIMESTAMPRULES']._serialized_end=52610 + _globals['_VIOLATIONS']._serialized_start=52612 + _globals['_VIOLATIONS']._serialized_end=52681 + _globals['_VIOLATION']._serialized_start=52684 + _globals['_VIOLATION']._serialized_end=52893 + _globals['_FIELDPATH']._serialized_start=52895 + _globals['_FIELDPATH']._serialized_end=52966 + _globals['_FIELDPATHELEMENT']._serialized_start=52969 + _globals['_FIELDPATHELEMENT']._serialized_end=53429 # @@protoc_insertion_point(module_scope) diff --git a/tests/conformance/nonconforming.yaml b/tests/conformance/nonconforming.yaml index 25744e50..531cf553 100644 --- a/tests/conformance/nonconforming.yaml +++ b/tests/conformance/nonconforming.yaml @@ -7,3 +7,1058 @@ standard_constraints/well_known_types/duration: standard_constraints/well_known_types/timestamp: - gte_lte/invalid/above - lte/invalid + +library/is_email: + - invalid/left_side_empty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"@example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # got: valid + - invalid/non_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"ยต@example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # got: valid + - invalid/quoted-string/a + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"\"foo bar\"@example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # got: valid + - invalid/quoted-string/b + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"\"foo..bar\"@example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # got: valid + - invalid/trailing_dot + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"foo@example.com."} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # got: valid + - valid/exhaust_atext + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'*+-/=?^_`{|}~@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # message: "" + # for_key: false + - valid/label_all_digits + # input: [type.googleapis.com/buf.validate.conformance.cases.IsEmail]:{val:"foo@0.1.2.3.4.5.6.7.8.9"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_email" + # message: "" + # for_key: false +library/is_host_and_port: + - port_required/false/invalid/port_number_sign + # input: [type.googleapis.com/buf.validate.conformance.cases.IsHostAndPort]:{val:"example.com:+0"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_host_and_port" + # got: valid + - port_required/false/valid/ipv6_zone-id_any_non_null_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsHostAndPort]:{val:"[::1%% :x\x1f]"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_host_and_port" + # message: "" + # for_key: false + - port_required/true/invalid/port_number_sign + # input: [type.googleapis.com/buf.validate.conformance.cases.IsHostAndPort]:{val:"example.com:+0" port_required:true} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_host_and_port" + # got: valid +library/is_ip: + - version/0/valid/ipv4 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"127.0.0.1" version:0} + # want: valid + # got: runtime error: invalid argument, expected 4 or 6 + - version/0/valid/ipv6 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"::1" version:0} + # want: valid + # got: runtime error: invalid argument, expected 4 or 6 + - version/1/invalid/empty_string + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{version:1} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/1/invalid/ipv4 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"127.0.0.1" version:1} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/1/invalid/ipv6 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"::1" version:1} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/5/invalid/ipv4 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"127.0.0.1" version:5} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/5/invalid/ipv6 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"::1" version:5} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/7/invalid/ipv4 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"127.0.0.1" version:7} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/7/invalid/ipv6 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"::1" version:7} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # got: runtime error: invalid argument, expected 4 or 6 + - version/omitted/valid/ipv6_zone-id_any_non_null_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIp]:{val:"::1%% :x\x1f"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_ip" + # message: "" + # for_key: false +library/is_ip_prefix: + - version/0/strict/omitted/valid/ipv4_prefix + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"127.0.0.1/16" version:0} + # want: valid + # got: runtime error: invalid argument, expected 4 or 6 + - version/0/strict/omitted/valid/ipv6_prefix + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"::1/64" version:0} + # want: valid + # got: runtime error: invalid argument, expected 4 or 6 + - version/1/strict/omitted/invalid/empty_string + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{version:1} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: runtime error: invalid argument, expected 4 or 6 + - version/5/strict/omitted/invalid/ipv6_prefix + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"::1/64" version:5} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: runtime error: invalid argument, expected 4 or 6 + - version/7/strict/omitted/invalid/ipv6_prefix + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"::1/64" version:7} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: runtime error: invalid argument, expected 4 or 6 + - version/omitted/strict/omitted/invalid/ipv4_bad_leading_zero_in_prefix-length + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"192.168.1.0/024"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: valid + - version/omitted/strict/omitted/invalid/ipv4_missing_prefix + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"192.168.1.0"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: valid + - version/omitted/strict/omitted/invalid/ipv6_bad_leading_zero_in_prefix-length + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"2001:0DB8:ABCD:0012:FFFF:FFFF:FFFF:FFFF/024"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: valid + - version/omitted/strict/omitted/invalid/ipv6_missing_prefix + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"2001:0DB8:ABCD:0012:FFFF:FFFF:FFFF:FFFF"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: valid + - version/omitted/strict/omitted/invalid/ipv6_zone-id/a + # input: [type.googleapis.com/buf.validate.conformance.cases.IsIpPrefix]:{val:"::1%en1/64"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_ip_prefix" + # got: valid +library/is_uri: + - invalid/authority_path-abempty_segment_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo://example.com/^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: valid + - invalid/authority_path-abempty_segment_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo://example.com/\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: valid + - invalid/authority_path-abempty_segment_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo://example.com/%x"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: valid + - invalid/host_ipfuture + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[v1x]"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ('IPvFuture address is invalid',)) + - invalid/host_ipv6/b + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[2001::0370::7334]"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ("'2001::0370::7334' does not appear to be an IPv4 or IPv6 address",)) + - invalid/host_ipv6_zone-id_bad_pct-encoded/a + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[::1%25foo%]"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ("'::1%25foo%' does not appear to be an IPv4 or IPv6 address",)) + - invalid/host_ipv6_zone-id_bad_pct-encoded/b + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[::1%25foo%2x]"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ("'::1%25foo%2x' does not appear to be an IPv4 or IPv6 address",)) + - invalid/host_ipv6_zone-id_pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[::1%25foo%c3x%96]"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ("'::1%25foo%c3x%96' does not appear to be an IPv4 or IPv6 address",)) + - invalid/userinfo_reserved_square_bracket_close + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://]@example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ('Invalid IPv6 URL',)) + - invalid/userinfo_reserved_square_bracket_open + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[@example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # got: runtime error: ('return error for overflow', , ('Invalid IPv6 URL',)) + - valid/authority_path-abempty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo://example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/example + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/fragment_pchar_extra + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com#/?"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/fragment_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com#%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/fragment_pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com#%c3x%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/fragment_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com#%c3%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/fragment_sub-delims + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com#!$&'()*+,;="} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ip4v_bad_octet + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://256.0.0.1"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipfuture_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[vF.-!$&'()*+,;=._~0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipfuture_long + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[v1234AF.x]"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipfuture_short + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[v1.x]"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipv4 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://127.0.0.1"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipv6 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipv6_zone-id + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[::1%25eth0]"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_ipv6_zone-id_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[::1%25foo%61%20%23]"} + # want: valid + # got: runtime error: ('return error for overflow', , ("'::1%25foo%61%20%23' does not appear to be an IPv4 or IPv6 address",)) + - valid/host_ipv6_zone-id_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://[::1%25foo%c3%96]"} + # want: valid + # got: runtime error: ('return error for overflow', , ("'::1%25foo%c3%96' does not appear to be an IPv4 or IPv6 address",)) + - valid/host_reg-name + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://foo"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_reg-name_empty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://:8080"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_reg-name_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://!$&'()*+,;=._~0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_reg-name_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://foo%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/host_reg-name_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://foo%c3%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_exhaust_segment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz/0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ%20!$&'()*+,;=:@%20"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_exhaust_segment-nz + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/@%20!$&()*+,;=0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~:"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_segment-nz-pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_segment-nz-pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/%c3x%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_segment-nz-pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/%c3%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_segment_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz/%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_segment_pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz/%c3x%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_segment_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz/%c3%96%c3"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_with_empty_pchar + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_with_query_and_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz?q#f"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_with_segment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz/a"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-absolute_with_segments + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:/nz//segment//segment/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-empty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-empty_with_query_and_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:?q#f"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment-nz_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:@%20!$&()*+,;=0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~:"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment-nz_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment-nz_pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:%c3x%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment-nz_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:%c3%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment_empty_pchar + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz/0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ%20!$&'()*+,;=:@%20"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz/%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment_pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz/%c3x%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_segment_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz/%c3%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_with_query_and_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz?q#f"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_with_segment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz/a"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/path-rootless_with_segments + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo:nz//segment//segment/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_0 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com:0"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_1 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com:1"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_65535 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com:65535"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_65536 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com:65536"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_8080 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com:8080"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_empty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com:"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/port_empty_reg-name_empty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://:"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?baz=quux"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_extra + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?/?"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_pchar_extra + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?:@"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?%61%20%23"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_pct-encoded_invalid_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?%c3x%96"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?%c3%96%c3"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_sub-delim_semicolon + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?;"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_sub-delims + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?!$&'()*+,="} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/query_unusual_key_value_structure + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://example.com?a=b&c&&=1&=="} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/scheme_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"foo0123456789azAZ+-.://example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/scheme_ftp + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"ftp://example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_exhaust + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~!$&'()*+,;=::@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_extra + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://:@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_multiple_colons + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://:::@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_name + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://user@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_name_password + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://user:password@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_pct-encoded_ascii + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://%61%20%23@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_pct-encoded_invalid-utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://%c3x%963@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_pct-encoded_utf8 + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://%c3%963@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_reserved_hash_parses_as_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://#@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_reserved_questionmark_parses_as_query + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://?@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_reserved_slash_parses_as_path-abempty + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https:///@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_sub-delims + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://!$&'()*+,;=@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false + - valid/userinfo_unreserved + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUri]:{val:"https://0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~@example.com"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri" + # message: "" + # for_key: false +library/is_uri_ref: + - invalid/authority_path-abempty_segment_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host/\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/bad_relative-part + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:":"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/leading_space + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:" ./foo"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-abempty_query_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host?^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-abempty_query_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host?\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-abempty_query_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host?%"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-abempty_segment_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host/%x"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/foo/\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_query_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/?^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_query_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/?\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_query_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/?%"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_segment-nz_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_segment-nz_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_segment-nz_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/%x"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_segment_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/nz/^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_segment_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/nz/\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-absolute_segment_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/nz/%x"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-empty_query_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"?^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-empty_query_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"?\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-empty_query_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"?%"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./foo/\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_query_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:".?^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_query_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:".?\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_query_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:".?%"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment-bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment-nz_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment-nz_bad_colon + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:":"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment-nz_bad_control_character + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"\x1f"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment-nz_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"%x"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment_bad_caret + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./^"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/path-noscheme_segment_bad_pct-encoded + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./%x"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/space + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:" "} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/trailing_space + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./foo "} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - invalid/uri_with_bad_scheme + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"1foo://example.com"} + # want: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # got: valid + - valid/authority_path-abempty_with_segment_query_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host/foo?baz=quux#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/extreme + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//userinfo0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~!$&'()*+,;=::@host!$&'()*+,;=._~0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:0123456789/path0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ%20!$&'()*+,;=:@%20//foo/?query0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?#fragment0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-abempty_exhaust_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host#0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-abempty_with_fragment/a + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-abempty_with_fragment/b + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"//host/foo/bar#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-absolute_exhaust_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/#0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-absolute_with_fragment/a + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-absolute_with_fragment/b + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"/foo/bar#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-empty_exhaust_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"#0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-noscheme_exhaust_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:".#0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-._~%20!$&'()*+,=;:@?/"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-noscheme_with_fragment/a + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:".#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-noscheme_with_fragment/b + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./foo/bar#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false + - valid/path-noscheme_with_segment_query_fragment + # input: [type.googleapis.com/buf.validate.conformance.cases.IsUriRef]:{val:"./foo/bar?baz=quux#frag"} + # want: valid + # got: validation error (1 violation) + # 1. constraint_id: "library.is_uri_ref" + # message: "" + # for_key: false +standard_constraints/required: + - proto2/scalar/optional/unset + # input: [type.googleapis.com/buf.validate.conformance.cases.RequiredProto2ScalarOptional]:{} + # want: validation error (1 violation) + # 1. constraint_id: "required" + # field: "val" elements:{field_number:1 field_name:"val" field_type:TYPE_STRING} + # rule: "required" elements:{field_number:25 field_name:"required" field_type:TYPE_BOOL} + # got: valid + - proto2/scalar/optional_with_default/unset + # input: [type.googleapis.com/buf.validate.conformance.cases.RequiredProto2ScalarOptionalDefault]:{} + # want: validation error (1 violation) + # 1. constraint_id: "required" + # field: "val" elements:{field_number:1 field_name:"val" field_type:TYPE_STRING} + # rule: "required" elements:{field_number:25 field_name:"required" field_type:TYPE_BOOL} + # got: valid diff --git a/tests/conformance/runner.py b/tests/conformance/runner.py index 7e56acbf..7bd6a4c1 100644 --- a/tests/conformance/runner.py +++ b/tests/conformance/runner.py @@ -35,6 +35,7 @@ ignore_proto3_pb2, # noqa: F401 ignore_proto_editions_pb2, # noqa: F401 kitchen_sink_pb2, # noqa: F401 + library_pb2, # noqa: F401 maps_pb2, # noqa: F401 messages_pb2, # noqa: F401 numbers_pb2, # noqa: F401