From 8d040f91d1c96bff5df93b9922a758e9e37b60bf Mon Sep 17 00:00:00 2001 From: "Philip K. Warren" Date: Tue, 13 Feb 2024 10:20:32 -0600 Subject: [PATCH 1/5] Run go mod tidy (#96) --- go.sum | 4 ---- 1 file changed, 4 deletions(-) diff --git a/go.sum b/go.sum index 1432010c..5aaf484f 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,3 @@ -buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20231115204500-e097f827e652.1 h1:u0olL4yf2p7Tl5jfsAK5keaFi+JFJuv1CDHrbiXkxkk= -buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20231115204500-e097f827e652.1/go.mod h1:tiTMKD8j6Pd/D2WzREoweufjzaJKHZg35f/VGcZ2v3I= buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240212200630-3014d81c3a48.1 h1:rOe/itdO7+9cWOnKqvpn1K7VmTDwp3vI4juPz6aNQbc= buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240212200630-3014d81c3a48.1/go.mod h1:tiTMKD8j6Pd/D2WzREoweufjzaJKHZg35f/VGcZ2v3I= github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= @@ -11,8 +9,6 @@ github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs github.com/envoyproxy/protoc-gen-validate v1.0.4 h1:gVPz/FMfvh57HdSJQyvBtF00j8JU4zdyUgIUNhlgg0A= github.com/envoyproxy/protoc-gen-validate v1.0.4/go.mod h1:qys6tmnRsYrQqIhm2bvKZH4Blx/1gTIZ2UKVY1M+Yew= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/google/cel-go v0.18.2 h1:L0B6sNBSVmt0OyECi8v6VOS74KOc9W/tLiWKfZABvf4= -github.com/google/cel-go v0.18.2/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= github.com/google/cel-go v0.19.0 h1:vVgaZoHPBDd1lXCYGQOh5A06L4EtuIfmqQ/qnSXSKiU= github.com/google/cel-go v0.19.0/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= From cb44f8a29f37a8bc423623b14350f2412596a1c9 Mon Sep 17 00:00:00 2001 From: Chris Pine Date: Tue, 13 Feb 2024 14:25:00 -0800 Subject: [PATCH 2/5] Create add-to-project workflow (#97) Creates GitHub workflow to add new issues/PRs to the project board, using the existing shared workflow. We first tested this in https://github.com/bufbuild/knit/pull/28 --- .github/workflows/add-to-project.yaml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/add-to-project.yaml diff --git a/.github/workflows/add-to-project.yaml b/.github/workflows/add-to-project.yaml new file mode 100644 index 00000000..e3c0b422 --- /dev/null +++ b/.github/workflows/add-to-project.yaml @@ -0,0 +1,21 @@ +name: Add issues and PRs to project + +on: + issues: + types: + - opened + - reopened + - transferred + pull_request_target: + types: + - opened + - reopened + issue_comment: + types: + - created + +jobs: + call-workflow-add-to-project: + name: Call workflow to add issue to project + uses: bufbuild/base-workflows/.github/workflows/add-to-project.yaml@main + secrets: inherit From f88ac7816dadcef1a16587fae332c109cdd6ef86 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Feb 2024 09:09:46 -0800 Subject: [PATCH 3/5] Bump the go group with 1 update (#98) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps the go group with 1 update: [github.com/google/cel-go](https://github.com/google/cel-go). Updates `github.com/google/cel-go` from 0.19.0 to 0.20.0
Release notes

Sourced from github.com/google/cel-go's releases.

Release v0.20.0

What's Changed

  • Minor adjustment to inlining to fix a bad bind #888
  • Ensure error typed variables are returned as errors from Resolve b #889
  • ext.NativeTypes: Recursively add sub-types #892
  • DefaultTypeAdapter: Add support for missing custom scalars #893
  • Lists: Fix handling of go arrays #894

New Contributors

Full Changelog: https://github.com/google/cel-go/compare/v0.19.0...v0.20.0

Commits
  • f221e70 Lists: Fix handling of go arrays (#894)
  • 19b2ad1 DefaultTypeAdapter: Add support for missing custom scalars (#893)
  • 5883379 ext.NativeTypes: Recursively add sub-types (#892)
  • ba58735 Revert the AST copy as some users were relying on Check to be mutable (#890)
  • 6b5d14c Ensure error typed variables are returned as errors from Resolve (#889)
  • fb9a6ce Minor adjustment to inlining to fix a bad bind (#888)
  • a53bdc9 Copy the AST before type-checking to avoid concurrency issues (#887)
  • 38d2641 Pin Bazel builds to 6.4.0 (#886)
  • See full diff in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/google/cel-go&package-manager=go_modules&previous-version=0.19.0&new-version=0.20.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index d84a80c4..dfe1c5ab 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.19 require ( buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240212200630-3014d81c3a48.1 github.com/envoyproxy/protoc-gen-validate v1.0.4 - github.com/google/cel-go v0.19.0 + github.com/google/cel-go v0.20.0 github.com/stretchr/testify v1.8.4 google.golang.org/protobuf v1.32.0 ) diff --git a/go.sum b/go.sum index 5aaf484f..d12333c5 100644 --- a/go.sum +++ b/go.sum @@ -9,8 +9,8 @@ github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs github.com/envoyproxy/protoc-gen-validate v1.0.4 h1:gVPz/FMfvh57HdSJQyvBtF00j8JU4zdyUgIUNhlgg0A= github.com/envoyproxy/protoc-gen-validate v1.0.4/go.mod h1:qys6tmnRsYrQqIhm2bvKZH4Blx/1gTIZ2UKVY1M+Yew= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/google/cel-go v0.19.0 h1:vVgaZoHPBDd1lXCYGQOh5A06L4EtuIfmqQ/qnSXSKiU= -github.com/google/cel-go v0.19.0/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= +github.com/google/cel-go v0.20.0 h1:h4n6DOCppEMpWERzllyNkntl7JrDyxoE543KWS6BLpc= +github.com/google/cel-go v0.20.0/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= From fff4e5183113074bb2af2625bc7a50a01a752bb5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Feb 2024 09:12:13 -0500 Subject: [PATCH 4/5] Bump the github-actions group with 1 update (#100) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps the github-actions group with 1 update: [morrisoncole/pr-lint-action](https://github.com/morrisoncole/pr-lint-action). Updates `morrisoncole/pr-lint-action` from 1.7.0 to 1.7.1
Release notes

Sourced from morrisoncole/pr-lint-action's releases.

v1.7.1

What's Changed

New Contributors

Full Changelog: https://github.com/MorrisonCole/pr-lint-action/compare/v1.7.0...v.1.7.1

Commits
  • 51f3cfa release: v1.7.1 (#737)
  • 2197723 chore: updated version of node (#735)
  • bb440cf chore(deps): update typescript-eslint monorepo to v7.0.2 #ex-123
  • 04c8c32 chore(deps): update dependency @​types/node to v20.11.19 #ex-123
  • b5e5d0b chore(deps): update dependency @​types/node to v20.11.18 #ex-123
  • 28dcd80 chore(deps): update typescript-eslint monorepo to v7 #ex-123 (#732)
  • dba2a98 chore(deps): update dependency @​types/node to v20.11.17 #ex-123
  • 8962a4a chore(deps): update typescript-eslint monorepo to v6.21.0 #ex-123
  • 5d54b4d chore(deps): update dependency prettier to v3.2.5 #ex-123
  • 09e3838 chore(deps): update dependency @​types/node to v20.11.16 #ex-123
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=morrisoncole/pr-lint-action&package-manager=github_actions&previous-version=1.7.0&new-version=1.7.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/pr-hygiene.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-hygiene.yaml b/.github/workflows/pr-hygiene.yaml index 29e48ab3..79e9a19d 100644 --- a/.github/workflows/pr-hygiene.yaml +++ b/.github/workflows/pr-hygiene.yaml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Lint title - uses: morrisoncole/pr-lint-action@v1.7.0 + uses: morrisoncole/pr-lint-action@v1.7.1 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" # https://regex101.com/r/I6oK5v/1 From df2d53c7da752937205def823f23f7511ae35cb4 Mon Sep 17 00:00:00 2001 From: "Philip K. Warren" Date: Mon, 26 Feb 2024 11:15:53 -0600 Subject: [PATCH 5/5] Update protovalidate-go to work with 0.6.1 protos (#101) Update protovalidate-go to work with the latest protovalidate proto rules, including the Ignore enum. Update to the latest golangci-lint and fix lint warnings. --------- Co-authored-by: Chris Roche --- .golangci.yml | 3 +- Makefile | 4 +- go.mod | 2 +- go.sum | 4 +- internal/constraints/cache.go | 2 +- internal/constraints/cache_test.go | 6 +- internal/errors/utils_test.go | 4 +- internal/errors/validation.go | 16 +- internal/errors/validation_test.go | 2 +- internal/evaluator/builder.go | 36 +- internal/evaluator/field.go | 8 + internal/expression/ast_test.go | 4 +- internal/expression/compile_test.go | 10 +- .../conformance/cases/ignore_proto2.pb.go | 3321 +++++++++++++++++ .../conformance/cases/ignore_proto3.pb.go | 2638 +++++++++++++ .../validate/conformance/cases/messages.pb.go | 2 +- .../validate/conformance/cases/repeated.pb.go | 2 +- legacy/resolver_test.go | 5 +- legacy/translate.go | 4 +- legacy/translate_test.go | 4 +- proto/buf.lock | 8 +- validator_bench_test.go | 6 +- validator_example_test.go | 4 +- validator_test.go | 20 +- 24 files changed, 6051 insertions(+), 64 deletions(-) create mode 100644 internal/gen/buf/validate/conformance/cases/ignore_proto2.pb.go create mode 100644 internal/gen/buf/validate/conformance/cases/ignore_proto3.pb.go diff --git a/.golangci.yml b/.golangci.yml index f3bb66be..3001d2f8 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -57,6 +57,7 @@ issues: exclude: # we will continue to support the deprecated field until it's removed - "IgnoreEmpty is deprecated" + - "Skipped is deprecated" exclude-rules: # Loosen requirements on conformance executor - path: internal/cmd/ @@ -84,4 +85,4 @@ issues: - path: resolver/resolver.go linters: # uses deprecated fields on protoimpl.ExtensionInfo but its the only way - - staticcheck \ No newline at end of file + - staticcheck diff --git a/Makefile b/Makefile index cae2e88d..3fa089ba 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ ARGS ?= --strict --strict_message --strict_error # Set to use a different version of protovalidate-conformance. # Should be kept in sync with the version referenced in proto/buf.lock and # 'buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go' in go.mod. -CONFORMANCE_VERSION ?= v0.5.6 +CONFORMANCE_VERSION ?= v0.6.1 .PHONY: help help: ## Describe useful make targets @@ -94,7 +94,7 @@ $(BIN)/license-header: $(BIN) Makefile $(BIN)/golangci-lint: $(BIN) Makefile GOBIN=$(abspath $(@D)) $(GO) install \ - github.com/golangci/golangci-lint/cmd/golangci-lint@v1.52.2 + github.com/golangci/golangci-lint/cmd/golangci-lint@v1.56.1 $(BIN)/protovalidate-conformance: $(BIN) Makefile GOBIN=$(abspath $(BIN)) $(GO) install \ diff --git a/go.mod b/go.mod index dfe1c5ab..1813016b 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/bufbuild/protovalidate-go go 1.19 require ( - buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240212200630-3014d81c3a48.1 + buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240221180331-f05a6f4403ce.1 github.com/envoyproxy/protoc-gen-validate v1.0.4 github.com/google/cel-go v0.20.0 github.com/stretchr/testify v1.8.4 diff --git a/go.sum b/go.sum index d12333c5..2e838e7e 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240212200630-3014d81c3a48.1 h1:rOe/itdO7+9cWOnKqvpn1K7VmTDwp3vI4juPz6aNQbc= -buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240212200630-3014d81c3a48.1/go.mod h1:tiTMKD8j6Pd/D2WzREoweufjzaJKHZg35f/VGcZ2v3I= +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240221180331-f05a6f4403ce.1 h1:AmmAwHbvaeOIxDKG2+aTn5C36HjmFIMkrdTp49rp80Q= +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240221180331-f05a6f4403ce.1/go.mod h1:tiTMKD8j6Pd/D2WzREoweufjzaJKHZg35f/VGcZ2v3I= github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= github.com/antlr4-go/antlr/v4 v4.13.0/go.mod h1:pfChB/xh/Unjila75QW7+VU4TSnWnnk9UTnmpPaOR2g= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= diff --git a/internal/constraints/cache.go b/internal/constraints/cache.go index 7d07123b..0c0c91e5 100644 --- a/internal/constraints/cache.go +++ b/internal/constraints/cache.go @@ -57,7 +57,7 @@ func (c *Cache) Build( } var asts expression.ASTSet - constraints.Range(func(desc protoreflect.FieldDescriptor, val protoreflect.Value) bool { + constraints.Range(func(desc protoreflect.FieldDescriptor, _ protoreflect.Value) bool { precomputedASTs, compileErr := c.loadOrCompileStandardConstraint(env, desc) if compileErr != nil { err = compileErr diff --git a/internal/constraints/cache_test.go b/internal/constraints/cache_test.go index 5d16f17e..16d4e3d5 100644 --- a/internal/constraints/cache_test.go +++ b/internal/constraints/cache_test.go @@ -104,7 +104,7 @@ func TestCache_BuildStandardConstraints(t *testing.T) { if test.exErr { assert.Error(t, err) } else { - assert.NoError(t, err) + require.NoError(t, err) assert.Len(t, set, test.exCt) } }) @@ -126,7 +126,7 @@ func TestCache_LoadOrCompileStandardConstraint(t *testing.T) { assert.False(t, ok) asts, err := cache.loadOrCompileStandardConstraint(env, desc) - assert.NoError(t, err) + require.NoError(t, err) assert.NotNil(t, asts) cached, ok := cache.cache[desc] @@ -134,7 +134,7 @@ func TestCache_LoadOrCompileStandardConstraint(t *testing.T) { assert.Equal(t, cached, asts) asts, err = cache.loadOrCompileStandardConstraint(env, desc) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, cached, asts) } diff --git a/internal/errors/utils_test.go b/internal/errors/utils_test.go index f1926500..ed0e1dec 100644 --- a/internal/errors/utils_test.go +++ b/internal/errors/utils_test.go @@ -30,10 +30,10 @@ func TestMerge(t *testing.T) { t.Run("no errors", func(t *testing.T) { t.Parallel() ok, err := Merge(nil, nil, true) - assert.NoError(t, err) + require.NoError(t, err) assert.True(t, ok) ok, err = Merge(nil, nil, false) - assert.NoError(t, err) + require.NoError(t, err) assert.True(t, ok) }) diff --git a/internal/errors/validation.go b/internal/errors/validation.go index 682f366b..e60408ff 100644 --- a/internal/errors/validation.go +++ b/internal/errors/validation.go @@ -30,13 +30,13 @@ func (err *ValidationError) Error() string { bldr.WriteString("validation error:") for _, violation := range err.Violations { bldr.WriteString("\n - ") - if violation.FieldPath != "" { - bldr.WriteString(violation.FieldPath) + if fieldPath := violation.GetFieldPath(); fieldPath != "" { + bldr.WriteString(fieldPath) bldr.WriteString(": ") } _, _ = fmt.Fprintf(bldr, "%s [%s]", - violation.Message, - violation.ConstraintId) + violation.GetMessage(), + violation.GetConstraintId()) } return bldr.String() } @@ -52,12 +52,12 @@ func PrefixFieldPaths(err *ValidationError, format string, args ...any) { prefix := fmt.Sprintf(format, args...) for _, violation := range err.Violations { switch { - case violation.FieldPath == "": // no existing field path + case violation.GetFieldPath() == "": // no existing field path violation.FieldPath = prefix - case violation.FieldPath[0] == '[': // field is a map/list - violation.FieldPath = prefix + violation.FieldPath + case violation.GetFieldPath()[0] == '[': // field is a map/list + violation.FieldPath = prefix + violation.GetFieldPath() default: // any other field - violation.FieldPath = fmt.Sprintf("%s.%s", prefix, violation.FieldPath) + violation.FieldPath = fmt.Sprintf("%s.%s", prefix, violation.GetFieldPath()) } } } diff --git a/internal/errors/validation_test.go b/internal/errors/validation_test.go index fa73ab38..e8922088 100644 --- a/internal/errors/validation_test.go +++ b/internal/errors/validation_test.go @@ -66,7 +66,7 @@ func TestPrefixFieldPaths(t *testing.T) { }} PrefixFieldPaths(err, test.format, test.args...) for _, v := range err.Violations { - assert.Equal(t, test.expected, v.FieldPath) + assert.Equal(t, test.expected, v.GetFieldPath()) } }) } diff --git a/internal/evaluator/builder.go b/internal/evaluator/builder.go index 4264b013..abf32d6c 100644 --- a/internal/evaluator/builder.go +++ b/internal/evaluator/builder.go @@ -204,9 +204,21 @@ func (bldr *Builder) buildField( cache MessageCache, ) (field, error) { fld := field{ - Descriptor: fieldDescriptor, - Required: fieldConstraints.GetRequired(), - IgnoreEmpty: fieldDescriptor.HasPresence() || fieldConstraints.GetIgnoreEmpty(), + Descriptor: fieldDescriptor, + Required: fieldConstraints.GetRequired(), + IgnoreEmpty: fieldDescriptor.HasPresence() || + fieldConstraints.GetIgnoreEmpty() || + fieldConstraints.GetIgnore() == validate.Ignore_IGNORE_IF_UNPOPULATED || + fieldConstraints.GetIgnore() == validate.Ignore_IGNORE_IF_DEFAULT_VALUE, + IgnoreDefault: fieldDescriptor.HasPresence() && fieldConstraints.GetIgnore() == validate.Ignore_IGNORE_IF_DEFAULT_VALUE, + } + if fld.IgnoreDefault { + if fieldDescriptor.Kind() == protoreflect.MessageKind && fieldDescriptor.Cardinality() != protoreflect.Repeated { + msg := dynamicpb.NewMessage(fieldDescriptor.Message()) + fld.Zero = protoreflect.ValueOfMessage(msg) + } else { + fld.Zero = fieldDescriptor.Default() + } } err := bldr.buildValue(fieldDescriptor, fieldConstraints, false, &fld.Value, cache) return fld, err @@ -254,15 +266,21 @@ func (bldr *Builder) processIgnoreEmpty( ) error { // the only time we need to ignore empty on a value is if it's evaluating a // field item (repeated element or map key/value). - val.IgnoreEmpty = forItems && constraints.GetIgnoreEmpty() - if !val.IgnoreEmpty { + val.IgnoreEmpty = forItems && (constraints.GetIgnoreEmpty() || + constraints.GetIgnore() == validate.Ignore_IGNORE_IF_UNPOPULATED || + constraints.GetIgnore() == validate.Ignore_IGNORE_IF_DEFAULT_VALUE) + switch { + case !val.IgnoreEmpty: // only need the zero value for checking ignore_empty constraint return nil - } - val.Zero = fdesc.Default() - if forItems && fdesc.IsList() { + case fdesc.IsList(): msg := dynamicpb.NewMessage(fdesc.ContainingMessage()) val.Zero = msg.Get(fdesc).List().NewElement() + case fdesc.Kind() == protoreflect.MessageKind: + msg := dynamicpb.NewMessage(fdesc.Message()) + val.Zero = protoreflect.ValueOfMessage(msg) + default: + val.Zero = fdesc.Default() } return nil } @@ -303,6 +321,7 @@ func (bldr *Builder) processEmbeddedMessage( ) error { if fdesc.Kind() != protoreflect.MessageKind || rules.GetSkipped() || + rules.GetIgnore() == validate.Ignore_IGNORE_ALWAYS || fdesc.IsMap() || (fdesc.IsList() && !forItems) { return nil } @@ -327,6 +346,7 @@ func (bldr *Builder) processWrapperConstraints( ) error { if fdesc.Kind() != protoreflect.MessageKind || rules.GetSkipped() || + rules.GetIgnore() == validate.Ignore_IGNORE_ALWAYS || fdesc.IsMap() || (fdesc.IsList() && !forItems) { return nil } diff --git a/internal/evaluator/field.go b/internal/evaluator/field.go index b37cacf8..a773fe08 100644 --- a/internal/evaluator/field.go +++ b/internal/evaluator/field.go @@ -33,6 +33,11 @@ type field struct { // This field is generally true for nullable fields or fields with the // ignore_empty constraint explicitly set. IgnoreEmpty bool + // IgnoreDefault indicates if a field should skip validation on its zero value, + // including for fields which have field presence and are set to the zero value. + IgnoreDefault bool + // Zero is the default or zero-value for this value's type + Zero protoreflect.Value } func (f field) Evaluate(val protoreflect.Value, failFast bool) error { @@ -53,6 +58,9 @@ func (f field) EvaluateMessage(msg protoreflect.Message, failFast bool) (err err } val := msg.Get(f.Descriptor) + if f.IgnoreDefault && val.Equal(f.Zero) { + return nil + } if err = f.Value.Evaluate(val, failFast); err != nil { errors.PrefixErrorPaths(err, "%s", f.Descriptor.Name()) } diff --git a/internal/expression/ast_test.go b/internal/expression/ast_test.go index b15606ba..38f7e3f0 100644 --- a/internal/expression/ast_test.go +++ b/internal/expression/ast_test.go @@ -71,7 +71,7 @@ func TestASTSet_ToProgramSet(t *testing.T) { empty := ASTSet{} set, err = empty.ToProgramSet() assert.Empty(t, set) - assert.NoError(t, err) + require.NoError(t, err) } func TestASTSet_ReduceResiduals(t *testing.T) { @@ -86,6 +86,6 @@ func TestASTSet_ReduceResiduals(t *testing.T) { require.NoError(t, err) assert.Len(t, asts.asts, 1) set, err := asts.ReduceResiduals(cel.Globals(&Variable{Name: "foo", Val: true})) - assert.NoError(t, err) + require.NoError(t, err) assert.Empty(t, set) } diff --git a/internal/expression/compile_test.go b/internal/expression/compile_test.go index 321d07fa..456338b1 100644 --- a/internal/expression/compile_test.go +++ b/internal/expression/compile_test.go @@ -36,7 +36,7 @@ func TestCompile(t *testing.T) { var exprs []*validate.Constraint set, err := Compile(exprs, baseEnv) assert.Nil(t, set) - assert.NoError(t, err) + require.NoError(t, err) }) t.Run("success", func(t *testing.T) { @@ -47,7 +47,7 @@ func TestCompile(t *testing.T) { } set, err := Compile(exprs, baseEnv, cel.Variable("this", cel.IntType)) assert.Len(t, set, len(exprs)) - assert.NoError(t, err) + require.NoError(t, err) }) t.Run("env extension err", func(t *testing.T) { @@ -58,7 +58,7 @@ func TestCompile(t *testing.T) { set, err := Compile(exprs, baseEnv, cel.Types(true)) assert.Nil(t, set) var compErr *errors.CompilationError - assert.ErrorAs(t, err, &compErr) + require.ErrorAs(t, err, &compErr) }) t.Run("bad syntax", func(t *testing.T) { @@ -69,7 +69,7 @@ func TestCompile(t *testing.T) { set, err := Compile(exprs, baseEnv) assert.Nil(t, set) var compErr *errors.CompilationError - assert.ErrorAs(t, err, &compErr) + require.ErrorAs(t, err, &compErr) }) t.Run("invalid output type", func(t *testing.T) { @@ -80,6 +80,6 @@ func TestCompile(t *testing.T) { set, err := Compile(exprs, baseEnv) assert.Nil(t, set) var compErr *errors.CompilationError - assert.ErrorAs(t, err, &compErr) + require.ErrorAs(t, err, &compErr) }) } diff --git a/internal/gen/buf/validate/conformance/cases/ignore_proto2.pb.go b/internal/gen/buf/validate/conformance/cases/ignore_proto2.pb.go new file mode 100644 index 00000000..a422e728 --- /dev/null +++ b/internal/gen/buf/validate/conformance/cases/ignore_proto2.pb.go @@ -0,0 +1,3321 @@ +// Copyright 2023 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. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: buf/validate/conformance/cases/ignore_proto2.proto + +package cases + +import ( + _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type Proto2ScalarOptionalIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2ScalarOptionalIgnoreUnspecified) Reset() { + *x = Proto2ScalarOptionalIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarOptionalIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarOptionalIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2ScalarOptionalIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarOptionalIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2ScalarOptionalIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{0} +} + +func (x *Proto2ScalarOptionalIgnoreUnspecified) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto2ScalarOptionalIgnoreUnspecifiedWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val,def=-42" json:"val,omitempty"` +} + +// Default values for Proto2ScalarOptionalIgnoreUnspecifiedWithDefault fields. +const ( + Default_Proto2ScalarOptionalIgnoreUnspecifiedWithDefault_Val = int32(-42) +) + +func (x *Proto2ScalarOptionalIgnoreUnspecifiedWithDefault) Reset() { + *x = Proto2ScalarOptionalIgnoreUnspecifiedWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarOptionalIgnoreUnspecifiedWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarOptionalIgnoreUnspecifiedWithDefault) ProtoMessage() {} + +func (x *Proto2ScalarOptionalIgnoreUnspecifiedWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarOptionalIgnoreUnspecifiedWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarOptionalIgnoreUnspecifiedWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{1} +} + +func (x *Proto2ScalarOptionalIgnoreUnspecifiedWithDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return Default_Proto2ScalarOptionalIgnoreUnspecifiedWithDefault_Val +} + +type Proto2ScalarOptionalIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2ScalarOptionalIgnoreEmpty) Reset() { + *x = Proto2ScalarOptionalIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarOptionalIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarOptionalIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2ScalarOptionalIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarOptionalIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2ScalarOptionalIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{2} +} + +func (x *Proto2ScalarOptionalIgnoreEmpty) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto2ScalarOptionalIgnoreEmptyWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val,def=-42" json:"val,omitempty"` +} + +// Default values for Proto2ScalarOptionalIgnoreEmptyWithDefault fields. +const ( + Default_Proto2ScalarOptionalIgnoreEmptyWithDefault_Val = int32(-42) +) + +func (x *Proto2ScalarOptionalIgnoreEmptyWithDefault) Reset() { + *x = Proto2ScalarOptionalIgnoreEmptyWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarOptionalIgnoreEmptyWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarOptionalIgnoreEmptyWithDefault) ProtoMessage() {} + +func (x *Proto2ScalarOptionalIgnoreEmptyWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarOptionalIgnoreEmptyWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarOptionalIgnoreEmptyWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{3} +} + +func (x *Proto2ScalarOptionalIgnoreEmptyWithDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return Default_Proto2ScalarOptionalIgnoreEmptyWithDefault_Val +} + +type Proto2ScalarOptionalIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2ScalarOptionalIgnoreDefault) Reset() { + *x = Proto2ScalarOptionalIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarOptionalIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarOptionalIgnoreDefault) ProtoMessage() {} + +func (x *Proto2ScalarOptionalIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarOptionalIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarOptionalIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{4} +} + +func (x *Proto2ScalarOptionalIgnoreDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto2ScalarOptionalIgnoreDefaultWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val,def=-42" json:"val,omitempty"` +} + +// Default values for Proto2ScalarOptionalIgnoreDefaultWithDefault fields. +const ( + Default_Proto2ScalarOptionalIgnoreDefaultWithDefault_Val = int32(-42) +) + +func (x *Proto2ScalarOptionalIgnoreDefaultWithDefault) Reset() { + *x = Proto2ScalarOptionalIgnoreDefaultWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarOptionalIgnoreDefaultWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarOptionalIgnoreDefaultWithDefault) ProtoMessage() {} + +func (x *Proto2ScalarOptionalIgnoreDefaultWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarOptionalIgnoreDefaultWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarOptionalIgnoreDefaultWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{5} +} + +func (x *Proto2ScalarOptionalIgnoreDefaultWithDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return Default_Proto2ScalarOptionalIgnoreDefaultWithDefault_Val +} + +type Proto2ScalarRequiredIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,req,name=val" json:"val,omitempty"` +} + +func (x *Proto2ScalarRequiredIgnoreUnspecified) Reset() { + *x = Proto2ScalarRequiredIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarRequiredIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarRequiredIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2ScalarRequiredIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarRequiredIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2ScalarRequiredIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{6} +} + +func (x *Proto2ScalarRequiredIgnoreUnspecified) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto2ScalarRequiredIgnoreUnspecifiedWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,req,name=val,def=-42" json:"val,omitempty"` +} + +// Default values for Proto2ScalarRequiredIgnoreUnspecifiedWithDefault fields. +const ( + Default_Proto2ScalarRequiredIgnoreUnspecifiedWithDefault_Val = int32(-42) +) + +func (x *Proto2ScalarRequiredIgnoreUnspecifiedWithDefault) Reset() { + *x = Proto2ScalarRequiredIgnoreUnspecifiedWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarRequiredIgnoreUnspecifiedWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarRequiredIgnoreUnspecifiedWithDefault) ProtoMessage() {} + +func (x *Proto2ScalarRequiredIgnoreUnspecifiedWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarRequiredIgnoreUnspecifiedWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarRequiredIgnoreUnspecifiedWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{7} +} + +func (x *Proto2ScalarRequiredIgnoreUnspecifiedWithDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return Default_Proto2ScalarRequiredIgnoreUnspecifiedWithDefault_Val +} + +type Proto2ScalarRequiredIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,req,name=val" json:"val,omitempty"` +} + +func (x *Proto2ScalarRequiredIgnoreEmpty) Reset() { + *x = Proto2ScalarRequiredIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarRequiredIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarRequiredIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2ScalarRequiredIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarRequiredIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2ScalarRequiredIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{8} +} + +func (x *Proto2ScalarRequiredIgnoreEmpty) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto2ScalarRequiredIgnoreEmptyWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,req,name=val,def=-42" json:"val,omitempty"` +} + +// Default values for Proto2ScalarRequiredIgnoreEmptyWithDefault fields. +const ( + Default_Proto2ScalarRequiredIgnoreEmptyWithDefault_Val = int32(-42) +) + +func (x *Proto2ScalarRequiredIgnoreEmptyWithDefault) Reset() { + *x = Proto2ScalarRequiredIgnoreEmptyWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarRequiredIgnoreEmptyWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarRequiredIgnoreEmptyWithDefault) ProtoMessage() {} + +func (x *Proto2ScalarRequiredIgnoreEmptyWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarRequiredIgnoreEmptyWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarRequiredIgnoreEmptyWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{9} +} + +func (x *Proto2ScalarRequiredIgnoreEmptyWithDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return Default_Proto2ScalarRequiredIgnoreEmptyWithDefault_Val +} + +type Proto2ScalarRequiredIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,req,name=val" json:"val,omitempty"` +} + +func (x *Proto2ScalarRequiredIgnoreDefault) Reset() { + *x = Proto2ScalarRequiredIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarRequiredIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarRequiredIgnoreDefault) ProtoMessage() {} + +func (x *Proto2ScalarRequiredIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarRequiredIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarRequiredIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{10} +} + +func (x *Proto2ScalarRequiredIgnoreDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto2ScalarRequiredIgnoreDefaultWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,req,name=val,def=-42" json:"val,omitempty"` +} + +// Default values for Proto2ScalarRequiredIgnoreDefaultWithDefault fields. +const ( + Default_Proto2ScalarRequiredIgnoreDefaultWithDefault_Val = int32(-42) +) + +func (x *Proto2ScalarRequiredIgnoreDefaultWithDefault) Reset() { + *x = Proto2ScalarRequiredIgnoreDefaultWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2ScalarRequiredIgnoreDefaultWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2ScalarRequiredIgnoreDefaultWithDefault) ProtoMessage() {} + +func (x *Proto2ScalarRequiredIgnoreDefaultWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2ScalarRequiredIgnoreDefaultWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2ScalarRequiredIgnoreDefaultWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{11} +} + +func (x *Proto2ScalarRequiredIgnoreDefaultWithDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return Default_Proto2ScalarRequiredIgnoreDefaultWithDefault_Val +} + +type Proto2MessageOptionalIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto2MessageOptionalIgnoreUnspecified_Msg `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageOptionalIgnoreUnspecified) Reset() { + *x = Proto2MessageOptionalIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageOptionalIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageOptionalIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2MessageOptionalIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageOptionalIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2MessageOptionalIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{12} +} + +func (x *Proto2MessageOptionalIgnoreUnspecified) GetVal() *Proto2MessageOptionalIgnoreUnspecified_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MessageOptionalIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto2MessageOptionalIgnoreEmpty_Msg `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageOptionalIgnoreEmpty) Reset() { + *x = Proto2MessageOptionalIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageOptionalIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageOptionalIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2MessageOptionalIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageOptionalIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2MessageOptionalIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{13} +} + +func (x *Proto2MessageOptionalIgnoreEmpty) GetVal() *Proto2MessageOptionalIgnoreEmpty_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MessageOptionalIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto2MessageOptionalIgnoreDefault_Msg `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageOptionalIgnoreDefault) Reset() { + *x = Proto2MessageOptionalIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageOptionalIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageOptionalIgnoreDefault) ProtoMessage() {} + +func (x *Proto2MessageOptionalIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageOptionalIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2MessageOptionalIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{14} +} + +func (x *Proto2MessageOptionalIgnoreDefault) GetVal() *Proto2MessageOptionalIgnoreDefault_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MessageRequiredIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto2MessageRequiredIgnoreUnspecified_Msg `protobuf:"bytes,1,req,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageRequiredIgnoreUnspecified) Reset() { + *x = Proto2MessageRequiredIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageRequiredIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageRequiredIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2MessageRequiredIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageRequiredIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2MessageRequiredIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{15} +} + +func (x *Proto2MessageRequiredIgnoreUnspecified) GetVal() *Proto2MessageRequiredIgnoreUnspecified_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MessageRequiredIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto2MessageRequiredIgnoreEmpty_Msg `protobuf:"bytes,1,req,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageRequiredIgnoreEmpty) Reset() { + *x = Proto2MessageRequiredIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageRequiredIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageRequiredIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2MessageRequiredIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageRequiredIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2MessageRequiredIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{16} +} + +func (x *Proto2MessageRequiredIgnoreEmpty) GetVal() *Proto2MessageRequiredIgnoreEmpty_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MessageRequiredIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto2MessageRequiredIgnoreDefault_Msg `protobuf:"bytes,1,req,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageRequiredIgnoreDefault) Reset() { + *x = Proto2MessageRequiredIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageRequiredIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageRequiredIgnoreDefault) ProtoMessage() {} + +func (x *Proto2MessageRequiredIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageRequiredIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2MessageRequiredIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{17} +} + +func (x *Proto2MessageRequiredIgnoreDefault) GetVal() *Proto2MessageRequiredIgnoreDefault_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto2OneofIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto2OneofIgnoreUnspecified_Val + O isProto2OneofIgnoreUnspecified_O `protobuf_oneof:"o"` +} + +func (x *Proto2OneofIgnoreUnspecified) Reset() { + *x = Proto2OneofIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2OneofIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2OneofIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2OneofIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2OneofIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2OneofIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{18} +} + +func (m *Proto2OneofIgnoreUnspecified) GetO() isProto2OneofIgnoreUnspecified_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto2OneofIgnoreUnspecified) GetVal() int32 { + if x, ok := x.GetO().(*Proto2OneofIgnoreUnspecified_Val); ok { + return x.Val + } + return 0 +} + +type isProto2OneofIgnoreUnspecified_O interface { + isProto2OneofIgnoreUnspecified_O() +} + +type Proto2OneofIgnoreUnspecified_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,oneof"` +} + +func (*Proto2OneofIgnoreUnspecified_Val) isProto2OneofIgnoreUnspecified_O() {} + +type Proto2OneofIgnoreUnspecifiedWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto2OneofIgnoreUnspecifiedWithDefault_Val + O isProto2OneofIgnoreUnspecifiedWithDefault_O `protobuf_oneof:"o"` +} + +// Default values for Proto2OneofIgnoreUnspecifiedWithDefault fields. +const ( + Default_Proto2OneofIgnoreUnspecifiedWithDefault_Val = int32(-42) +) + +func (x *Proto2OneofIgnoreUnspecifiedWithDefault) Reset() { + *x = Proto2OneofIgnoreUnspecifiedWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2OneofIgnoreUnspecifiedWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2OneofIgnoreUnspecifiedWithDefault) ProtoMessage() {} + +func (x *Proto2OneofIgnoreUnspecifiedWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2OneofIgnoreUnspecifiedWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2OneofIgnoreUnspecifiedWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{19} +} + +func (m *Proto2OneofIgnoreUnspecifiedWithDefault) GetO() isProto2OneofIgnoreUnspecifiedWithDefault_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto2OneofIgnoreUnspecifiedWithDefault) GetVal() int32 { + if x, ok := x.GetO().(*Proto2OneofIgnoreUnspecifiedWithDefault_Val); ok { + return x.Val + } + return Default_Proto2OneofIgnoreUnspecifiedWithDefault_Val +} + +type isProto2OneofIgnoreUnspecifiedWithDefault_O interface { + isProto2OneofIgnoreUnspecifiedWithDefault_O() +} + +type Proto2OneofIgnoreUnspecifiedWithDefault_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,oneof,def=-42"` +} + +func (*Proto2OneofIgnoreUnspecifiedWithDefault_Val) isProto2OneofIgnoreUnspecifiedWithDefault_O() {} + +type Proto2OneofIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto2OneofIgnoreEmpty_Val + O isProto2OneofIgnoreEmpty_O `protobuf_oneof:"o"` +} + +func (x *Proto2OneofIgnoreEmpty) Reset() { + *x = Proto2OneofIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2OneofIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2OneofIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2OneofIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2OneofIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2OneofIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{20} +} + +func (m *Proto2OneofIgnoreEmpty) GetO() isProto2OneofIgnoreEmpty_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto2OneofIgnoreEmpty) GetVal() int32 { + if x, ok := x.GetO().(*Proto2OneofIgnoreEmpty_Val); ok { + return x.Val + } + return 0 +} + +type isProto2OneofIgnoreEmpty_O interface { + isProto2OneofIgnoreEmpty_O() +} + +type Proto2OneofIgnoreEmpty_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,oneof"` +} + +func (*Proto2OneofIgnoreEmpty_Val) isProto2OneofIgnoreEmpty_O() {} + +type Proto2OneofIgnoreEmptyWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto2OneofIgnoreEmptyWithDefault_Val + O isProto2OneofIgnoreEmptyWithDefault_O `protobuf_oneof:"o"` +} + +// Default values for Proto2OneofIgnoreEmptyWithDefault fields. +const ( + Default_Proto2OneofIgnoreEmptyWithDefault_Val = int32(-42) +) + +func (x *Proto2OneofIgnoreEmptyWithDefault) Reset() { + *x = Proto2OneofIgnoreEmptyWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2OneofIgnoreEmptyWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2OneofIgnoreEmptyWithDefault) ProtoMessage() {} + +func (x *Proto2OneofIgnoreEmptyWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2OneofIgnoreEmptyWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2OneofIgnoreEmptyWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{21} +} + +func (m *Proto2OneofIgnoreEmptyWithDefault) GetO() isProto2OneofIgnoreEmptyWithDefault_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto2OneofIgnoreEmptyWithDefault) GetVal() int32 { + if x, ok := x.GetO().(*Proto2OneofIgnoreEmptyWithDefault_Val); ok { + return x.Val + } + return Default_Proto2OneofIgnoreEmptyWithDefault_Val +} + +type isProto2OneofIgnoreEmptyWithDefault_O interface { + isProto2OneofIgnoreEmptyWithDefault_O() +} + +type Proto2OneofIgnoreEmptyWithDefault_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,oneof,def=-42"` +} + +func (*Proto2OneofIgnoreEmptyWithDefault_Val) isProto2OneofIgnoreEmptyWithDefault_O() {} + +type Proto2OneofIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto2OneofIgnoreDefault_Val + O isProto2OneofIgnoreDefault_O `protobuf_oneof:"o"` +} + +func (x *Proto2OneofIgnoreDefault) Reset() { + *x = Proto2OneofIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2OneofIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2OneofIgnoreDefault) ProtoMessage() {} + +func (x *Proto2OneofIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2OneofIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2OneofIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{22} +} + +func (m *Proto2OneofIgnoreDefault) GetO() isProto2OneofIgnoreDefault_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto2OneofIgnoreDefault) GetVal() int32 { + if x, ok := x.GetO().(*Proto2OneofIgnoreDefault_Val); ok { + return x.Val + } + return 0 +} + +type isProto2OneofIgnoreDefault_O interface { + isProto2OneofIgnoreDefault_O() +} + +type Proto2OneofIgnoreDefault_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,oneof"` +} + +func (*Proto2OneofIgnoreDefault_Val) isProto2OneofIgnoreDefault_O() {} + +type Proto2OneofIgnoreDefaultWithDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto2OneofIgnoreDefaultWithDefault_Val + O isProto2OneofIgnoreDefaultWithDefault_O `protobuf_oneof:"o"` +} + +// Default values for Proto2OneofIgnoreDefaultWithDefault fields. +const ( + Default_Proto2OneofIgnoreDefaultWithDefault_Val = int32(-42) +) + +func (x *Proto2OneofIgnoreDefaultWithDefault) Reset() { + *x = Proto2OneofIgnoreDefaultWithDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2OneofIgnoreDefaultWithDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2OneofIgnoreDefaultWithDefault) ProtoMessage() {} + +func (x *Proto2OneofIgnoreDefaultWithDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2OneofIgnoreDefaultWithDefault.ProtoReflect.Descriptor instead. +func (*Proto2OneofIgnoreDefaultWithDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{23} +} + +func (m *Proto2OneofIgnoreDefaultWithDefault) GetO() isProto2OneofIgnoreDefaultWithDefault_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto2OneofIgnoreDefaultWithDefault) GetVal() int32 { + if x, ok := x.GetO().(*Proto2OneofIgnoreDefaultWithDefault_Val); ok { + return x.Val + } + return Default_Proto2OneofIgnoreDefaultWithDefault_Val +} + +type isProto2OneofIgnoreDefaultWithDefault_O interface { + isProto2OneofIgnoreDefaultWithDefault_O() +} + +type Proto2OneofIgnoreDefaultWithDefault_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,oneof,def=-42"` +} + +func (*Proto2OneofIgnoreDefaultWithDefault_Val) isProto2OneofIgnoreDefaultWithDefault_O() {} + +type Proto2RepeatedIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,name=val" json:"val,omitempty"` +} + +func (x *Proto2RepeatedIgnoreUnspecified) Reset() { + *x = Proto2RepeatedIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2RepeatedIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2RepeatedIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2RepeatedIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2RepeatedIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2RepeatedIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{24} +} + +func (x *Proto2RepeatedIgnoreUnspecified) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2RepeatedIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,name=val" json:"val,omitempty"` +} + +func (x *Proto2RepeatedIgnoreEmpty) Reset() { + *x = Proto2RepeatedIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2RepeatedIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2RepeatedIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2RepeatedIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2RepeatedIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2RepeatedIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{25} +} + +func (x *Proto2RepeatedIgnoreEmpty) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2RepeatedIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,name=val" json:"val,omitempty"` +} + +func (x *Proto2RepeatedIgnoreDefault) Reset() { + *x = Proto2RepeatedIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2RepeatedIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2RepeatedIgnoreDefault) ProtoMessage() {} + +func (x *Proto2RepeatedIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2RepeatedIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2RepeatedIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{26} +} + +func (x *Proto2RepeatedIgnoreDefault) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapIgnoreUnspecified) Reset() { + *x = Proto2MapIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2MapIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2MapIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{27} +} + +func (x *Proto2MapIgnoreUnspecified) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapIgnoreEmpty) Reset() { + *x = Proto2MapIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2MapIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2MapIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{28} +} + +func (x *Proto2MapIgnoreEmpty) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapIgnoreDefault) Reset() { + *x = Proto2MapIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapIgnoreDefault) ProtoMessage() {} + +func (x *Proto2MapIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2MapIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{29} +} + +func (x *Proto2MapIgnoreDefault) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2RepeatedItemIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,name=val" json:"val,omitempty"` +} + +func (x *Proto2RepeatedItemIgnoreUnspecified) Reset() { + *x = Proto2RepeatedItemIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2RepeatedItemIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2RepeatedItemIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2RepeatedItemIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2RepeatedItemIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2RepeatedItemIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{30} +} + +func (x *Proto2RepeatedItemIgnoreUnspecified) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2RepeatedItemIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,name=val" json:"val,omitempty"` +} + +func (x *Proto2RepeatedItemIgnoreEmpty) Reset() { + *x = Proto2RepeatedItemIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2RepeatedItemIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2RepeatedItemIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2RepeatedItemIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2RepeatedItemIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2RepeatedItemIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{31} +} + +func (x *Proto2RepeatedItemIgnoreEmpty) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2RepeatedItemIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,name=val" json:"val,omitempty"` +} + +func (x *Proto2RepeatedItemIgnoreDefault) Reset() { + *x = Proto2RepeatedItemIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2RepeatedItemIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2RepeatedItemIgnoreDefault) ProtoMessage() {} + +func (x *Proto2RepeatedItemIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2RepeatedItemIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2RepeatedItemIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{32} +} + +func (x *Proto2RepeatedItemIgnoreDefault) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapKeyIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapKeyIgnoreUnspecified) Reset() { + *x = Proto2MapKeyIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapKeyIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapKeyIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2MapKeyIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapKeyIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2MapKeyIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{33} +} + +func (x *Proto2MapKeyIgnoreUnspecified) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapKeyIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapKeyIgnoreEmpty) Reset() { + *x = Proto2MapKeyIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapKeyIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapKeyIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2MapKeyIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapKeyIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2MapKeyIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{34} +} + +func (x *Proto2MapKeyIgnoreEmpty) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapKeyIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapKeyIgnoreDefault) Reset() { + *x = Proto2MapKeyIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapKeyIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapKeyIgnoreDefault) ProtoMessage() {} + +func (x *Proto2MapKeyIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapKeyIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2MapKeyIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{35} +} + +func (x *Proto2MapKeyIgnoreDefault) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapValueIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapValueIgnoreUnspecified) Reset() { + *x = Proto2MapValueIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapValueIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapValueIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto2MapValueIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapValueIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto2MapValueIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{36} +} + +func (x *Proto2MapValueIgnoreUnspecified) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapValueIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapValueIgnoreEmpty) Reset() { + *x = Proto2MapValueIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapValueIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapValueIgnoreEmpty) ProtoMessage() {} + +func (x *Proto2MapValueIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapValueIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto2MapValueIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{37} +} + +func (x *Proto2MapValueIgnoreEmpty) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MapValueIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` +} + +func (x *Proto2MapValueIgnoreDefault) Reset() { + *x = Proto2MapValueIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MapValueIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MapValueIgnoreDefault) ProtoMessage() {} + +func (x *Proto2MapValueIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[38] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MapValueIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto2MapValueIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{38} +} + +func (x *Proto2MapValueIgnoreDefault) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto2MessageOptionalIgnoreUnspecified_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageOptionalIgnoreUnspecified_Msg) Reset() { + *x = Proto2MessageOptionalIgnoreUnspecified_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageOptionalIgnoreUnspecified_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageOptionalIgnoreUnspecified_Msg) ProtoMessage() {} + +func (x *Proto2MessageOptionalIgnoreUnspecified_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[39] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageOptionalIgnoreUnspecified_Msg.ProtoReflect.Descriptor instead. +func (*Proto2MessageOptionalIgnoreUnspecified_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{12, 0} +} + +func (x *Proto2MessageOptionalIgnoreUnspecified_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto2MessageOptionalIgnoreEmpty_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageOptionalIgnoreEmpty_Msg) Reset() { + *x = Proto2MessageOptionalIgnoreEmpty_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageOptionalIgnoreEmpty_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageOptionalIgnoreEmpty_Msg) ProtoMessage() {} + +func (x *Proto2MessageOptionalIgnoreEmpty_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[40] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageOptionalIgnoreEmpty_Msg.ProtoReflect.Descriptor instead. +func (*Proto2MessageOptionalIgnoreEmpty_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{13, 0} +} + +func (x *Proto2MessageOptionalIgnoreEmpty_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto2MessageOptionalIgnoreDefault_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageOptionalIgnoreDefault_Msg) Reset() { + *x = Proto2MessageOptionalIgnoreDefault_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageOptionalIgnoreDefault_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageOptionalIgnoreDefault_Msg) ProtoMessage() {} + +func (x *Proto2MessageOptionalIgnoreDefault_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[41] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageOptionalIgnoreDefault_Msg.ProtoReflect.Descriptor instead. +func (*Proto2MessageOptionalIgnoreDefault_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{14, 0} +} + +func (x *Proto2MessageOptionalIgnoreDefault_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto2MessageRequiredIgnoreUnspecified_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageRequiredIgnoreUnspecified_Msg) Reset() { + *x = Proto2MessageRequiredIgnoreUnspecified_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageRequiredIgnoreUnspecified_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageRequiredIgnoreUnspecified_Msg) ProtoMessage() {} + +func (x *Proto2MessageRequiredIgnoreUnspecified_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[42] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageRequiredIgnoreUnspecified_Msg.ProtoReflect.Descriptor instead. +func (*Proto2MessageRequiredIgnoreUnspecified_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{15, 0} +} + +func (x *Proto2MessageRequiredIgnoreUnspecified_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto2MessageRequiredIgnoreEmpty_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageRequiredIgnoreEmpty_Msg) Reset() { + *x = Proto2MessageRequiredIgnoreEmpty_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageRequiredIgnoreEmpty_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageRequiredIgnoreEmpty_Msg) ProtoMessage() {} + +func (x *Proto2MessageRequiredIgnoreEmpty_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[43] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageRequiredIgnoreEmpty_Msg.ProtoReflect.Descriptor instead. +func (*Proto2MessageRequiredIgnoreEmpty_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{16, 0} +} + +func (x *Proto2MessageRequiredIgnoreEmpty_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto2MessageRequiredIgnoreDefault_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *Proto2MessageRequiredIgnoreDefault_Msg) Reset() { + *x = Proto2MessageRequiredIgnoreDefault_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto2MessageRequiredIgnoreDefault_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto2MessageRequiredIgnoreDefault_Msg) ProtoMessage() {} + +func (x *Proto2MessageRequiredIgnoreDefault_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[44] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto2MessageRequiredIgnoreDefault_Msg.ProtoReflect.Descriptor instead. +func (*Proto2MessageRequiredIgnoreDefault_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP(), []int{17, 0} +} + +func (x *Proto2MessageRequiredIgnoreDefault_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +var File_buf_validate_conformance_cases_ignore_proto2_proto protoreflect.FileDescriptor + +var file_buf_validate_conformance_cases_ignore_proto2_proto_rawDesc = []byte{ + 0x0a, 0x32, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, + 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, + 0x2f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, + 0x61, 0x73, 0x65, 0x73, 0x1a, 0x1b, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x22, 0x42, 0x0a, 0x25, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, + 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, + 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x52, 0x0a, 0x30, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, + 0x63, 0x61, 0x6c, 0x61, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x57, 0x69, + 0x74, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, 0x42, 0x07, 0xba, 0x48, 0x04, + 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3f, 0x0a, 0x1f, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, + 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x4f, 0x0a, 0x2a, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x57, 0x69, 0x74, + 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, + 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x41, 0x0a, 0x21, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x12, 0x1c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, + 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x51, + 0x0a, 0x2c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x57, 0x69, 0x74, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, + 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x42, 0x0a, 0x25, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, + 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, + 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x52, 0x0a, 0x30, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, + 0x63, 0x61, 0x6c, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x57, 0x69, + 0x74, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, 0x42, 0x07, 0xba, 0x48, 0x04, + 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3f, 0x0a, 0x1f, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, + 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x4f, 0x0a, 0x2a, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x57, 0x69, 0x74, + 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x02, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, + 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x41, 0x0a, 0x21, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x12, 0x1c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x42, 0x0a, 0xba, + 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x51, + 0x0a, 0x2c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x52, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x57, 0x69, 0x74, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, + 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0xe0, 0x01, 0x0a, 0x26, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x9c, 0x01, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x62, 0x75, 0x66, + 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x3e, 0xba, 0x48, 0x3b, 0xba, 0x01, 0x38, 0x0a, 0x1b, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, + 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, + 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x17, 0x0a, 0x03, 0x4d, + 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0xd7, 0x01, 0x0a, 0x20, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x99, 0x01, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, + 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, 0xba, + 0x48, 0x3e, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, + 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, 0x01, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x17, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xdb, + 0x01, 0x0a, 0x22, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x9b, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, + 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, 0xba, 0x48, 0x3e, + 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, + 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, 0x02, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x1a, 0x17, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xe0, 0x01, 0x0a, + 0x26, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x9c, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, + 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x4d, 0x73, + 0x67, 0x42, 0x3e, 0xba, 0x48, 0x3b, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, + 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, + 0x27, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x17, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x10, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0xd7, 0x01, 0x0a, 0x20, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x12, 0x99, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x02, + 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, + 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, 0xba, 0x48, 0x3e, 0xba, 0x01, 0x38, + 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, + 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, + 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x1a, 0x17, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xdb, 0x01, 0x0a, 0x22, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x12, 0x9b, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x46, + 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, 0xba, 0x48, 0x3e, 0xba, 0x01, 0x38, 0x0a, 0x1b, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, + 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, + 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, 0x02, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x17, + 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, 0x00, 0x48, 0x00, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x50, 0x0a, 0x27, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x57, 0x69, 0x74, 0x68, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x3a, 0x03, 0x2d, 0x34, 0x32, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, 0x00, 0x48, + 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x3d, 0x0a, 0x16, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x48, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x4d, 0x0a, 0x21, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x57, 0x69, 0x74, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, + 0x23, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x3a, 0x03, 0x2d, 0x34, + 0x32, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x48, 0x00, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x3f, 0x0a, 0x18, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x48, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x4f, 0x0a, 0x23, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x57, 0x69, 0x74, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x12, 0x23, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x3a, 0x03, + 0x2d, 0x34, 0x32, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x48, + 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x3d, 0x0a, 0x1f, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1a, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x08, 0xba, 0x48, 0x05, + 0x92, 0x01, 0x02, 0x08, 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, 0x19, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x05, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x92, 0x01, 0x02, 0x08, + 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3c, 0x0a, 0x1b, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x05, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x02, 0x92, 0x01, 0x02, 0x08, 0x03, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0xb5, 0x01, 0x0a, 0x1a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, + 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x12, 0x5f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x43, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, + 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x56, 0x61, 0x6c, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x08, 0xba, 0x48, 0x05, 0x9a, 0x01, 0x02, 0x08, 0x03, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xac, 0x01, 0x0a, + 0x14, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, + 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x9a, 0x01, 0x02, 0x08, 0x03, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb0, 0x01, 0x0a, 0x16, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x5e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, + 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x49, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x02, 0x9a, 0x01, 0x02, 0x08, + 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x45, + 0x0a, 0x23, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x49, 0x74, 0x65, 0x6d, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x05, 0x42, 0x0c, 0xba, 0x48, 0x09, 0x92, 0x01, 0x06, 0x22, 0x04, 0x1a, 0x02, 0x20, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x42, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x52, + 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x05, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x92, 0x01, 0x09, 0x22, 0x07, 0xd8, 0x01, 0x01, + 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x44, 0x0a, 0x1f, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x92, 0x01, + 0x09, 0x22, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0xbf, 0x01, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, + 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x12, 0x66, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, + 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x56, 0x61, + 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0c, 0xba, 0x48, 0x09, 0x9a, 0x01, 0x06, 0x22, 0x04, + 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0xb6, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x4b, + 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x63, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x62, 0x75, 0x66, + 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, 0xba, 0x48, + 0x0c, 0x9a, 0x01, 0x09, 0x22, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xba, 0x01, 0x0a, 0x19, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x65, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, + 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, + 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x9a, 0x01, + 0x09, 0x22, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, + 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc3, 0x01, 0x0a, 0x1f, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x68, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x42, 0x0c, 0xba, 0x48, 0x09, 0x9a, 0x01, 0x06, 0x2a, 0x04, 0x1a, 0x02, 0x20, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xba, 0x01, + 0x0a, 0x19, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x65, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, 0xba, 0x48, + 0x0c, 0x9a, 0x01, 0x09, 0x2a, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xbe, 0x01, 0x0a, 0x1b, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x67, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, + 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x4d, + 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, 0xba, + 0x48, 0x0c, 0x9a, 0x01, 0x09, 0x2a, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0xa5, 0x02, 0x0a, 0x22, + 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, + 0x65, 0x73, 0x42, 0x11, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x50, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x69, 0x6e, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, 0x2f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, 0x43, 0x43, + 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, 0x73, 0x65, + 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, + 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, + 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, + 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x3a, + 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x43, 0x61, + 0x73, 0x65, 0x73, +} + +var ( + file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescOnce sync.Once + file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescData = file_buf_validate_conformance_cases_ignore_proto2_proto_rawDesc +) + +func file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescGZIP() []byte { + file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescOnce.Do(func() { + file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescData = protoimpl.X.CompressGZIP(file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescData) + }) + return file_buf_validate_conformance_cases_ignore_proto2_proto_rawDescData +} + +var file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes = make([]protoimpl.MessageInfo, 54) +var file_buf_validate_conformance_cases_ignore_proto2_proto_goTypes = []interface{}{ + (*Proto2ScalarOptionalIgnoreUnspecified)(nil), // 0: buf.validate.conformance.cases.Proto2ScalarOptionalIgnoreUnspecified + (*Proto2ScalarOptionalIgnoreUnspecifiedWithDefault)(nil), // 1: buf.validate.conformance.cases.Proto2ScalarOptionalIgnoreUnspecifiedWithDefault + (*Proto2ScalarOptionalIgnoreEmpty)(nil), // 2: buf.validate.conformance.cases.Proto2ScalarOptionalIgnoreEmpty + (*Proto2ScalarOptionalIgnoreEmptyWithDefault)(nil), // 3: buf.validate.conformance.cases.Proto2ScalarOptionalIgnoreEmptyWithDefault + (*Proto2ScalarOptionalIgnoreDefault)(nil), // 4: buf.validate.conformance.cases.Proto2ScalarOptionalIgnoreDefault + (*Proto2ScalarOptionalIgnoreDefaultWithDefault)(nil), // 5: buf.validate.conformance.cases.Proto2ScalarOptionalIgnoreDefaultWithDefault + (*Proto2ScalarRequiredIgnoreUnspecified)(nil), // 6: buf.validate.conformance.cases.Proto2ScalarRequiredIgnoreUnspecified + (*Proto2ScalarRequiredIgnoreUnspecifiedWithDefault)(nil), // 7: buf.validate.conformance.cases.Proto2ScalarRequiredIgnoreUnspecifiedWithDefault + (*Proto2ScalarRequiredIgnoreEmpty)(nil), // 8: buf.validate.conformance.cases.Proto2ScalarRequiredIgnoreEmpty + (*Proto2ScalarRequiredIgnoreEmptyWithDefault)(nil), // 9: buf.validate.conformance.cases.Proto2ScalarRequiredIgnoreEmptyWithDefault + (*Proto2ScalarRequiredIgnoreDefault)(nil), // 10: buf.validate.conformance.cases.Proto2ScalarRequiredIgnoreDefault + (*Proto2ScalarRequiredIgnoreDefaultWithDefault)(nil), // 11: buf.validate.conformance.cases.Proto2ScalarRequiredIgnoreDefaultWithDefault + (*Proto2MessageOptionalIgnoreUnspecified)(nil), // 12: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreUnspecified + (*Proto2MessageOptionalIgnoreEmpty)(nil), // 13: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreEmpty + (*Proto2MessageOptionalIgnoreDefault)(nil), // 14: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreDefault + (*Proto2MessageRequiredIgnoreUnspecified)(nil), // 15: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreUnspecified + (*Proto2MessageRequiredIgnoreEmpty)(nil), // 16: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreEmpty + (*Proto2MessageRequiredIgnoreDefault)(nil), // 17: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreDefault + (*Proto2OneofIgnoreUnspecified)(nil), // 18: buf.validate.conformance.cases.Proto2OneofIgnoreUnspecified + (*Proto2OneofIgnoreUnspecifiedWithDefault)(nil), // 19: buf.validate.conformance.cases.Proto2OneofIgnoreUnspecifiedWithDefault + (*Proto2OneofIgnoreEmpty)(nil), // 20: buf.validate.conformance.cases.Proto2OneofIgnoreEmpty + (*Proto2OneofIgnoreEmptyWithDefault)(nil), // 21: buf.validate.conformance.cases.Proto2OneofIgnoreEmptyWithDefault + (*Proto2OneofIgnoreDefault)(nil), // 22: buf.validate.conformance.cases.Proto2OneofIgnoreDefault + (*Proto2OneofIgnoreDefaultWithDefault)(nil), // 23: buf.validate.conformance.cases.Proto2OneofIgnoreDefaultWithDefault + (*Proto2RepeatedIgnoreUnspecified)(nil), // 24: buf.validate.conformance.cases.Proto2RepeatedIgnoreUnspecified + (*Proto2RepeatedIgnoreEmpty)(nil), // 25: buf.validate.conformance.cases.Proto2RepeatedIgnoreEmpty + (*Proto2RepeatedIgnoreDefault)(nil), // 26: buf.validate.conformance.cases.Proto2RepeatedIgnoreDefault + (*Proto2MapIgnoreUnspecified)(nil), // 27: buf.validate.conformance.cases.Proto2MapIgnoreUnspecified + (*Proto2MapIgnoreEmpty)(nil), // 28: buf.validate.conformance.cases.Proto2MapIgnoreEmpty + (*Proto2MapIgnoreDefault)(nil), // 29: buf.validate.conformance.cases.Proto2MapIgnoreDefault + (*Proto2RepeatedItemIgnoreUnspecified)(nil), // 30: buf.validate.conformance.cases.Proto2RepeatedItemIgnoreUnspecified + (*Proto2RepeatedItemIgnoreEmpty)(nil), // 31: buf.validate.conformance.cases.Proto2RepeatedItemIgnoreEmpty + (*Proto2RepeatedItemIgnoreDefault)(nil), // 32: buf.validate.conformance.cases.Proto2RepeatedItemIgnoreDefault + (*Proto2MapKeyIgnoreUnspecified)(nil), // 33: buf.validate.conformance.cases.Proto2MapKeyIgnoreUnspecified + (*Proto2MapKeyIgnoreEmpty)(nil), // 34: buf.validate.conformance.cases.Proto2MapKeyIgnoreEmpty + (*Proto2MapKeyIgnoreDefault)(nil), // 35: buf.validate.conformance.cases.Proto2MapKeyIgnoreDefault + (*Proto2MapValueIgnoreUnspecified)(nil), // 36: buf.validate.conformance.cases.Proto2MapValueIgnoreUnspecified + (*Proto2MapValueIgnoreEmpty)(nil), // 37: buf.validate.conformance.cases.Proto2MapValueIgnoreEmpty + (*Proto2MapValueIgnoreDefault)(nil), // 38: buf.validate.conformance.cases.Proto2MapValueIgnoreDefault + (*Proto2MessageOptionalIgnoreUnspecified_Msg)(nil), // 39: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreUnspecified.Msg + (*Proto2MessageOptionalIgnoreEmpty_Msg)(nil), // 40: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreEmpty.Msg + (*Proto2MessageOptionalIgnoreDefault_Msg)(nil), // 41: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreDefault.Msg + (*Proto2MessageRequiredIgnoreUnspecified_Msg)(nil), // 42: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreUnspecified.Msg + (*Proto2MessageRequiredIgnoreEmpty_Msg)(nil), // 43: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreEmpty.Msg + (*Proto2MessageRequiredIgnoreDefault_Msg)(nil), // 44: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreDefault.Msg + nil, // 45: buf.validate.conformance.cases.Proto2MapIgnoreUnspecified.ValEntry + nil, // 46: buf.validate.conformance.cases.Proto2MapIgnoreEmpty.ValEntry + nil, // 47: buf.validate.conformance.cases.Proto2MapIgnoreDefault.ValEntry + nil, // 48: buf.validate.conformance.cases.Proto2MapKeyIgnoreUnspecified.ValEntry + nil, // 49: buf.validate.conformance.cases.Proto2MapKeyIgnoreEmpty.ValEntry + nil, // 50: buf.validate.conformance.cases.Proto2MapKeyIgnoreDefault.ValEntry + nil, // 51: buf.validate.conformance.cases.Proto2MapValueIgnoreUnspecified.ValEntry + nil, // 52: buf.validate.conformance.cases.Proto2MapValueIgnoreEmpty.ValEntry + nil, // 53: buf.validate.conformance.cases.Proto2MapValueIgnoreDefault.ValEntry +} +var file_buf_validate_conformance_cases_ignore_proto2_proto_depIdxs = []int32{ + 39, // 0: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto2MessageOptionalIgnoreUnspecified.Msg + 40, // 1: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto2MessageOptionalIgnoreEmpty.Msg + 41, // 2: buf.validate.conformance.cases.Proto2MessageOptionalIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto2MessageOptionalIgnoreDefault.Msg + 42, // 3: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto2MessageRequiredIgnoreUnspecified.Msg + 43, // 4: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto2MessageRequiredIgnoreEmpty.Msg + 44, // 5: buf.validate.conformance.cases.Proto2MessageRequiredIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto2MessageRequiredIgnoreDefault.Msg + 45, // 6: buf.validate.conformance.cases.Proto2MapIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto2MapIgnoreUnspecified.ValEntry + 46, // 7: buf.validate.conformance.cases.Proto2MapIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto2MapIgnoreEmpty.ValEntry + 47, // 8: buf.validate.conformance.cases.Proto2MapIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto2MapIgnoreDefault.ValEntry + 48, // 9: buf.validate.conformance.cases.Proto2MapKeyIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto2MapKeyIgnoreUnspecified.ValEntry + 49, // 10: buf.validate.conformance.cases.Proto2MapKeyIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto2MapKeyIgnoreEmpty.ValEntry + 50, // 11: buf.validate.conformance.cases.Proto2MapKeyIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto2MapKeyIgnoreDefault.ValEntry + 51, // 12: buf.validate.conformance.cases.Proto2MapValueIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto2MapValueIgnoreUnspecified.ValEntry + 52, // 13: buf.validate.conformance.cases.Proto2MapValueIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto2MapValueIgnoreEmpty.ValEntry + 53, // 14: buf.validate.conformance.cases.Proto2MapValueIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto2MapValueIgnoreDefault.ValEntry + 15, // [15:15] is the sub-list for method output_type + 15, // [15:15] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name +} + +func init() { file_buf_validate_conformance_cases_ignore_proto2_proto_init() } +func file_buf_validate_conformance_cases_ignore_proto2_proto_init() { + if File_buf_validate_conformance_cases_ignore_proto2_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarOptionalIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarOptionalIgnoreUnspecifiedWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarOptionalIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarOptionalIgnoreEmptyWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarOptionalIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarOptionalIgnoreDefaultWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarRequiredIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarRequiredIgnoreUnspecifiedWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarRequiredIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarRequiredIgnoreEmptyWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarRequiredIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2ScalarRequiredIgnoreDefaultWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageOptionalIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageOptionalIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageOptionalIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageRequiredIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageRequiredIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageRequiredIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2OneofIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2OneofIgnoreUnspecifiedWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2OneofIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2OneofIgnoreEmptyWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2OneofIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2OneofIgnoreDefaultWithDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2RepeatedIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2RepeatedIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2RepeatedIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2RepeatedItemIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2RepeatedItemIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2RepeatedItemIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapKeyIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapKeyIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapKeyIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapValueIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapValueIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MapValueIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageOptionalIgnoreUnspecified_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageOptionalIgnoreEmpty_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageOptionalIgnoreDefault_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageRequiredIgnoreUnspecified_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageRequiredIgnoreEmpty_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto2MessageRequiredIgnoreDefault_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[18].OneofWrappers = []interface{}{ + (*Proto2OneofIgnoreUnspecified_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[19].OneofWrappers = []interface{}{ + (*Proto2OneofIgnoreUnspecifiedWithDefault_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[20].OneofWrappers = []interface{}{ + (*Proto2OneofIgnoreEmpty_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[21].OneofWrappers = []interface{}{ + (*Proto2OneofIgnoreEmptyWithDefault_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[22].OneofWrappers = []interface{}{ + (*Proto2OneofIgnoreDefault_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes[23].OneofWrappers = []interface{}{ + (*Proto2OneofIgnoreDefaultWithDefault_Val)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_buf_validate_conformance_cases_ignore_proto2_proto_rawDesc, + NumEnums: 0, + NumMessages: 54, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_buf_validate_conformance_cases_ignore_proto2_proto_goTypes, + DependencyIndexes: file_buf_validate_conformance_cases_ignore_proto2_proto_depIdxs, + MessageInfos: file_buf_validate_conformance_cases_ignore_proto2_proto_msgTypes, + }.Build() + File_buf_validate_conformance_cases_ignore_proto2_proto = out.File + file_buf_validate_conformance_cases_ignore_proto2_proto_rawDesc = nil + file_buf_validate_conformance_cases_ignore_proto2_proto_goTypes = nil + file_buf_validate_conformance_cases_ignore_proto2_proto_depIdxs = nil +} diff --git a/internal/gen/buf/validate/conformance/cases/ignore_proto3.pb.go b/internal/gen/buf/validate/conformance/cases/ignore_proto3.pb.go new file mode 100644 index 00000000..e8a6585b --- /dev/null +++ b/internal/gen/buf/validate/conformance/cases/ignore_proto3.pb.go @@ -0,0 +1,2638 @@ +// Copyright 2023 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. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: buf/validate/conformance/cases/ignore_proto3.proto + +package cases + +import ( + _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type Proto3ScalarOptionalIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3ScalarOptionalIgnoreUnspecified) Reset() { + *x = Proto3ScalarOptionalIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3ScalarOptionalIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3ScalarOptionalIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3ScalarOptionalIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3ScalarOptionalIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3ScalarOptionalIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{0} +} + +func (x *Proto3ScalarOptionalIgnoreUnspecified) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto3ScalarOptionalIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3ScalarOptionalIgnoreEmpty) Reset() { + *x = Proto3ScalarOptionalIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3ScalarOptionalIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3ScalarOptionalIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3ScalarOptionalIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3ScalarOptionalIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3ScalarOptionalIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{1} +} + +func (x *Proto3ScalarOptionalIgnoreEmpty) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto3ScalarOptionalIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *int32 `protobuf:"varint,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3ScalarOptionalIgnoreDefault) Reset() { + *x = Proto3ScalarOptionalIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3ScalarOptionalIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3ScalarOptionalIgnoreDefault) ProtoMessage() {} + +func (x *Proto3ScalarOptionalIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3ScalarOptionalIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3ScalarOptionalIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{2} +} + +func (x *Proto3ScalarOptionalIgnoreDefault) GetVal() int32 { + if x != nil && x.Val != nil { + return *x.Val + } + return 0 +} + +type Proto3ScalarIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val int32 `protobuf:"varint,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3ScalarIgnoreUnspecified) Reset() { + *x = Proto3ScalarIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3ScalarIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3ScalarIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3ScalarIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3ScalarIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3ScalarIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{3} +} + +func (x *Proto3ScalarIgnoreUnspecified) GetVal() int32 { + if x != nil { + return x.Val + } + return 0 +} + +type Proto3ScalarIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val int32 `protobuf:"varint,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3ScalarIgnoreEmpty) Reset() { + *x = Proto3ScalarIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3ScalarIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3ScalarIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3ScalarIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3ScalarIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3ScalarIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{4} +} + +func (x *Proto3ScalarIgnoreEmpty) GetVal() int32 { + if x != nil { + return x.Val + } + return 0 +} + +type Proto3ScalarIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val int32 `protobuf:"varint,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3ScalarIgnoreDefault) Reset() { + *x = Proto3ScalarIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3ScalarIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3ScalarIgnoreDefault) ProtoMessage() {} + +func (x *Proto3ScalarIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3ScalarIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3ScalarIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{5} +} + +func (x *Proto3ScalarIgnoreDefault) GetVal() int32 { + if x != nil { + return x.Val + } + return 0 +} + +type Proto3MessageOptionalIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto3MessageOptionalIgnoreUnspecified_Msg `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageOptionalIgnoreUnspecified) Reset() { + *x = Proto3MessageOptionalIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageOptionalIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageOptionalIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3MessageOptionalIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageOptionalIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3MessageOptionalIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{6} +} + +func (x *Proto3MessageOptionalIgnoreUnspecified) GetVal() *Proto3MessageOptionalIgnoreUnspecified_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MessageOptionalIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto3MessageOptionalIgnoreEmpty_Msg `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageOptionalIgnoreEmpty) Reset() { + *x = Proto3MessageOptionalIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageOptionalIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageOptionalIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3MessageOptionalIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageOptionalIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3MessageOptionalIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{7} +} + +func (x *Proto3MessageOptionalIgnoreEmpty) GetVal() *Proto3MessageOptionalIgnoreEmpty_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MessageOptionalIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto3MessageOptionalIgnoreDefault_Msg `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageOptionalIgnoreDefault) Reset() { + *x = Proto3MessageOptionalIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageOptionalIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageOptionalIgnoreDefault) ProtoMessage() {} + +func (x *Proto3MessageOptionalIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageOptionalIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3MessageOptionalIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{8} +} + +func (x *Proto3MessageOptionalIgnoreDefault) GetVal() *Proto3MessageOptionalIgnoreDefault_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MessageIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto3MessageIgnoreUnspecified_Msg `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3MessageIgnoreUnspecified) Reset() { + *x = Proto3MessageIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3MessageIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3MessageIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{9} +} + +func (x *Proto3MessageIgnoreUnspecified) GetVal() *Proto3MessageIgnoreUnspecified_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MessageIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto3MessageIgnoreEmpty_Msg `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3MessageIgnoreEmpty) Reset() { + *x = Proto3MessageIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3MessageIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3MessageIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{10} +} + +func (x *Proto3MessageIgnoreEmpty) GetVal() *Proto3MessageIgnoreEmpty_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MessageIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *Proto3MessageIgnoreDefault_Msg `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3MessageIgnoreDefault) Reset() { + *x = Proto3MessageIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageIgnoreDefault) ProtoMessage() {} + +func (x *Proto3MessageIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3MessageIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{11} +} + +func (x *Proto3MessageIgnoreDefault) GetVal() *Proto3MessageIgnoreDefault_Msg { + if x != nil { + return x.Val + } + return nil +} + +type Proto3OneofIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto3OneofIgnoreUnspecified_Val + O isProto3OneofIgnoreUnspecified_O `protobuf_oneof:"o"` +} + +func (x *Proto3OneofIgnoreUnspecified) Reset() { + *x = Proto3OneofIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3OneofIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3OneofIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3OneofIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3OneofIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3OneofIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{12} +} + +func (m *Proto3OneofIgnoreUnspecified) GetO() isProto3OneofIgnoreUnspecified_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto3OneofIgnoreUnspecified) GetVal() int32 { + if x, ok := x.GetO().(*Proto3OneofIgnoreUnspecified_Val); ok { + return x.Val + } + return 0 +} + +type isProto3OneofIgnoreUnspecified_O interface { + isProto3OneofIgnoreUnspecified_O() +} + +type Proto3OneofIgnoreUnspecified_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,proto3,oneof"` +} + +func (*Proto3OneofIgnoreUnspecified_Val) isProto3OneofIgnoreUnspecified_O() {} + +type Proto3OneofIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto3OneofIgnoreEmpty_Val + O isProto3OneofIgnoreEmpty_O `protobuf_oneof:"o"` +} + +func (x *Proto3OneofIgnoreEmpty) Reset() { + *x = Proto3OneofIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3OneofIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3OneofIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3OneofIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3OneofIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3OneofIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{13} +} + +func (m *Proto3OneofIgnoreEmpty) GetO() isProto3OneofIgnoreEmpty_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto3OneofIgnoreEmpty) GetVal() int32 { + if x, ok := x.GetO().(*Proto3OneofIgnoreEmpty_Val); ok { + return x.Val + } + return 0 +} + +type isProto3OneofIgnoreEmpty_O interface { + isProto3OneofIgnoreEmpty_O() +} + +type Proto3OneofIgnoreEmpty_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,proto3,oneof"` +} + +func (*Proto3OneofIgnoreEmpty_Val) isProto3OneofIgnoreEmpty_O() {} + +type Proto3OneofIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to O: + // + // *Proto3OneofIgnoreDefault_Val + O isProto3OneofIgnoreDefault_O `protobuf_oneof:"o"` +} + +func (x *Proto3OneofIgnoreDefault) Reset() { + *x = Proto3OneofIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3OneofIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3OneofIgnoreDefault) ProtoMessage() {} + +func (x *Proto3OneofIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3OneofIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3OneofIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{14} +} + +func (m *Proto3OneofIgnoreDefault) GetO() isProto3OneofIgnoreDefault_O { + if m != nil { + return m.O + } + return nil +} + +func (x *Proto3OneofIgnoreDefault) GetVal() int32 { + if x, ok := x.GetO().(*Proto3OneofIgnoreDefault_Val); ok { + return x.Val + } + return 0 +} + +type isProto3OneofIgnoreDefault_O interface { + isProto3OneofIgnoreDefault_O() +} + +type Proto3OneofIgnoreDefault_Val struct { + Val int32 `protobuf:"varint,1,opt,name=val,proto3,oneof"` +} + +func (*Proto3OneofIgnoreDefault_Val) isProto3OneofIgnoreDefault_O() {} + +type Proto3RepeatedIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,packed,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3RepeatedIgnoreUnspecified) Reset() { + *x = Proto3RepeatedIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3RepeatedIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3RepeatedIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3RepeatedIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3RepeatedIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3RepeatedIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{15} +} + +func (x *Proto3RepeatedIgnoreUnspecified) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3RepeatedIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,packed,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3RepeatedIgnoreEmpty) Reset() { + *x = Proto3RepeatedIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3RepeatedIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3RepeatedIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3RepeatedIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3RepeatedIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3RepeatedIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{16} +} + +func (x *Proto3RepeatedIgnoreEmpty) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3RepeatedIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,packed,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3RepeatedIgnoreDefault) Reset() { + *x = Proto3RepeatedIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3RepeatedIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3RepeatedIgnoreDefault) ProtoMessage() {} + +func (x *Proto3RepeatedIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3RepeatedIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3RepeatedIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{17} +} + +func (x *Proto3RepeatedIgnoreDefault) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapIgnoreUnspecified) Reset() { + *x = Proto3MapIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3MapIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3MapIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{18} +} + +func (x *Proto3MapIgnoreUnspecified) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapIgnoreEmpty) Reset() { + *x = Proto3MapIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3MapIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3MapIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{19} +} + +func (x *Proto3MapIgnoreEmpty) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapIgnoreDefault) Reset() { + *x = Proto3MapIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapIgnoreDefault) ProtoMessage() {} + +func (x *Proto3MapIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3MapIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{20} +} + +func (x *Proto3MapIgnoreDefault) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3RepeatedItemIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,packed,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3RepeatedItemIgnoreUnspecified) Reset() { + *x = Proto3RepeatedItemIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3RepeatedItemIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3RepeatedItemIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3RepeatedItemIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3RepeatedItemIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3RepeatedItemIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{21} +} + +func (x *Proto3RepeatedItemIgnoreUnspecified) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3RepeatedItemIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,packed,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3RepeatedItemIgnoreEmpty) Reset() { + *x = Proto3RepeatedItemIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3RepeatedItemIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3RepeatedItemIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3RepeatedItemIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3RepeatedItemIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3RepeatedItemIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{22} +} + +func (x *Proto3RepeatedItemIgnoreEmpty) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3RepeatedItemIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []int32 `protobuf:"varint,1,rep,packed,name=val,proto3" json:"val,omitempty"` +} + +func (x *Proto3RepeatedItemIgnoreDefault) Reset() { + *x = Proto3RepeatedItemIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3RepeatedItemIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3RepeatedItemIgnoreDefault) ProtoMessage() {} + +func (x *Proto3RepeatedItemIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3RepeatedItemIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3RepeatedItemIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{23} +} + +func (x *Proto3RepeatedItemIgnoreDefault) GetVal() []int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapKeyIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapKeyIgnoreUnspecified) Reset() { + *x = Proto3MapKeyIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapKeyIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapKeyIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3MapKeyIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapKeyIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3MapKeyIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{24} +} + +func (x *Proto3MapKeyIgnoreUnspecified) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapKeyIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapKeyIgnoreEmpty) Reset() { + *x = Proto3MapKeyIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapKeyIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapKeyIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3MapKeyIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapKeyIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3MapKeyIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{25} +} + +func (x *Proto3MapKeyIgnoreEmpty) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapKeyIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapKeyIgnoreDefault) Reset() { + *x = Proto3MapKeyIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapKeyIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapKeyIgnoreDefault) ProtoMessage() {} + +func (x *Proto3MapKeyIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapKeyIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3MapKeyIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{26} +} + +func (x *Proto3MapKeyIgnoreDefault) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapValueIgnoreUnspecified struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapValueIgnoreUnspecified) Reset() { + *x = Proto3MapValueIgnoreUnspecified{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapValueIgnoreUnspecified) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapValueIgnoreUnspecified) ProtoMessage() {} + +func (x *Proto3MapValueIgnoreUnspecified) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapValueIgnoreUnspecified.ProtoReflect.Descriptor instead. +func (*Proto3MapValueIgnoreUnspecified) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{27} +} + +func (x *Proto3MapValueIgnoreUnspecified) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapValueIgnoreEmpty struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapValueIgnoreEmpty) Reset() { + *x = Proto3MapValueIgnoreEmpty{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapValueIgnoreEmpty) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapValueIgnoreEmpty) ProtoMessage() {} + +func (x *Proto3MapValueIgnoreEmpty) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapValueIgnoreEmpty.ProtoReflect.Descriptor instead. +func (*Proto3MapValueIgnoreEmpty) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{28} +} + +func (x *Proto3MapValueIgnoreEmpty) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MapValueIgnoreDefault struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val map[int32]int32 `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` +} + +func (x *Proto3MapValueIgnoreDefault) Reset() { + *x = Proto3MapValueIgnoreDefault{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MapValueIgnoreDefault) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MapValueIgnoreDefault) ProtoMessage() {} + +func (x *Proto3MapValueIgnoreDefault) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MapValueIgnoreDefault.ProtoReflect.Descriptor instead. +func (*Proto3MapValueIgnoreDefault) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{29} +} + +func (x *Proto3MapValueIgnoreDefault) GetVal() map[int32]int32 { + if x != nil { + return x.Val + } + return nil +} + +type Proto3MessageOptionalIgnoreUnspecified_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageOptionalIgnoreUnspecified_Msg) Reset() { + *x = Proto3MessageOptionalIgnoreUnspecified_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageOptionalIgnoreUnspecified_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageOptionalIgnoreUnspecified_Msg) ProtoMessage() {} + +func (x *Proto3MessageOptionalIgnoreUnspecified_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageOptionalIgnoreUnspecified_Msg.ProtoReflect.Descriptor instead. +func (*Proto3MessageOptionalIgnoreUnspecified_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{6, 0} +} + +func (x *Proto3MessageOptionalIgnoreUnspecified_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto3MessageOptionalIgnoreEmpty_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageOptionalIgnoreEmpty_Msg) Reset() { + *x = Proto3MessageOptionalIgnoreEmpty_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageOptionalIgnoreEmpty_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageOptionalIgnoreEmpty_Msg) ProtoMessage() {} + +func (x *Proto3MessageOptionalIgnoreEmpty_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageOptionalIgnoreEmpty_Msg.ProtoReflect.Descriptor instead. +func (*Proto3MessageOptionalIgnoreEmpty_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{7, 0} +} + +func (x *Proto3MessageOptionalIgnoreEmpty_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto3MessageOptionalIgnoreDefault_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageOptionalIgnoreDefault_Msg) Reset() { + *x = Proto3MessageOptionalIgnoreDefault_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageOptionalIgnoreDefault_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageOptionalIgnoreDefault_Msg) ProtoMessage() {} + +func (x *Proto3MessageOptionalIgnoreDefault_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageOptionalIgnoreDefault_Msg.ProtoReflect.Descriptor instead. +func (*Proto3MessageOptionalIgnoreDefault_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{8, 0} +} + +func (x *Proto3MessageOptionalIgnoreDefault_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto3MessageIgnoreUnspecified_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageIgnoreUnspecified_Msg) Reset() { + *x = Proto3MessageIgnoreUnspecified_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageIgnoreUnspecified_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageIgnoreUnspecified_Msg) ProtoMessage() {} + +func (x *Proto3MessageIgnoreUnspecified_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageIgnoreUnspecified_Msg.ProtoReflect.Descriptor instead. +func (*Proto3MessageIgnoreUnspecified_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{9, 0} +} + +func (x *Proto3MessageIgnoreUnspecified_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto3MessageIgnoreEmpty_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageIgnoreEmpty_Msg) Reset() { + *x = Proto3MessageIgnoreEmpty_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageIgnoreEmpty_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageIgnoreEmpty_Msg) ProtoMessage() {} + +func (x *Proto3MessageIgnoreEmpty_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageIgnoreEmpty_Msg.ProtoReflect.Descriptor instead. +func (*Proto3MessageIgnoreEmpty_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{10, 0} +} + +func (x *Proto3MessageIgnoreEmpty_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +type Proto3MessageIgnoreDefault_Msg struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *string `protobuf:"bytes,1,opt,name=val,proto3,oneof" json:"val,omitempty"` +} + +func (x *Proto3MessageIgnoreDefault_Msg) Reset() { + *x = Proto3MessageIgnoreDefault_Msg{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Proto3MessageIgnoreDefault_Msg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Proto3MessageIgnoreDefault_Msg) ProtoMessage() {} + +func (x *Proto3MessageIgnoreDefault_Msg) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Proto3MessageIgnoreDefault_Msg.ProtoReflect.Descriptor instead. +func (*Proto3MessageIgnoreDefault_Msg) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP(), []int{11, 0} +} + +func (x *Proto3MessageIgnoreDefault_Msg) GetVal() string { + if x != nil && x.Val != nil { + return *x.Val + } + return "" +} + +var File_buf_validate_conformance_cases_ignore_proto3_proto protoreflect.FileDescriptor + +var file_buf_validate_conformance_cases_ignore_proto3_proto_rawDesc = []byte{ + 0x0a, 0x32, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, + 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, + 0x2f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, + 0x61, 0x73, 0x65, 0x73, 0x1a, 0x1b, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x22, 0x4f, 0x0a, 0x25, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x53, 0x63, 0x61, 0x6c, 0x61, + 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, + 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, 0x00, + 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, + 0x61, 0x6c, 0x22, 0x4c, 0x0a, 0x1f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x53, 0x63, 0x61, 0x6c, + 0x61, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x48, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, + 0x22, 0x4e, 0x0a, 0x21, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x48, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, + 0x22, 0x3a, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, + 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x12, 0x19, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, + 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x17, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x19, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x53, + 0x63, 0x61, 0x6c, 0x61, 0x72, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x12, 0x1c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, + 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0xfa, 0x01, 0x0a, 0x26, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0xa1, 0x01, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x62, 0x75, 0x66, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x3e, 0xba, 0x48, 0x3b, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, + 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, + 0x27, 0x66, 0x6f, 0x6f, 0x27, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x1a, + 0x24, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x15, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, + 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x22, 0xf1, 0x01, + 0x0a, 0x20, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x9e, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, + 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, 0xba, 0x48, 0x3e, 0xba, 0x01, 0x38, 0x0a, 0x1b, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, + 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, + 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, 0x01, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x88, 0x01, 0x01, 0x1a, 0x24, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x15, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, + 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, + 0x6c, 0x22, 0xf5, 0x01, 0x0a, 0x22, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0xa0, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, + 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, + 0xba, 0x48, 0x3e, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, + 0x02, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x1a, 0x24, 0x0a, 0x03, 0x4d, + 0x73, 0x67, 0x12, 0x15, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, + 0x6c, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x22, 0xdd, 0x01, 0x0a, 0x1e, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x94, 0x01, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x62, 0x75, 0x66, + 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, + 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x3e, + 0xba, 0x48, 0x3b, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x1a, 0x24, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x15, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, + 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x22, 0xd4, 0x01, 0x0a, 0x18, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x91, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, + 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x4d, + 0x73, 0x67, 0x42, 0x41, 0xba, 0x48, 0x3e, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x2e, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, + 0x11, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, + 0x6f, 0x27, 0xd8, 0x01, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x24, 0x0a, 0x03, 0x4d, 0x73, + 0x67, 0x12, 0x15, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, + 0x22, 0xd8, 0x01, 0x0a, 0x1a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, + 0x93, 0x01, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, + 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x41, 0xba, + 0x48, 0x3e, 0xba, 0x01, 0x38, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x06, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x1a, 0x11, 0x74, 0x68, 0x69, 0x73, + 0x2e, 0x76, 0x61, 0x6c, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x66, 0x6f, 0x6f, 0x27, 0xd8, 0x01, 0x02, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x24, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x15, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x1c, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x20, + 0x00, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x3d, 0x0a, + 0x16, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, + 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x3f, 0x0a, 0x18, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, + 0x00, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x42, 0x03, 0x0a, 0x01, 0x6f, 0x22, 0x3d, 0x0a, + 0x1f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x08, 0xba, + 0x48, 0x05, 0x92, 0x01, 0x02, 0x08, 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, 0x19, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x92, 0x01, + 0x02, 0x08, 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3c, 0x0a, 0x1b, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x05, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x02, 0x92, 0x01, 0x02, 0x08, + 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xb5, 0x01, 0x0a, 0x1a, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x5f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, + 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x56, + 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x08, 0xba, 0x48, 0x05, 0x9a, 0x01, 0x02, 0x08, + 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xac, + 0x01, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, + 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x49, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x01, 0x9a, 0x01, 0x02, 0x08, 0x03, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb0, 0x01, + 0x0a, 0x16, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x5e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, + 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, + 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x56, 0x61, + 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0b, 0xba, 0x48, 0x08, 0xd8, 0x01, 0x02, 0x9a, 0x01, + 0x02, 0x08, 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x22, 0x45, 0x0a, 0x23, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x05, 0x42, 0x0c, 0xba, 0x48, 0x09, 0x92, 0x01, 0x06, 0x22, 0x04, 0x1a, 0x02, + 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x42, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x92, 0x01, 0x09, 0x22, 0x07, 0xd8, + 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x44, 0x0a, 0x1f, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, + 0x6d, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x21, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x0f, 0xba, 0x48, 0x0c, + 0x92, 0x01, 0x09, 0x22, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0xbf, 0x01, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x4b, + 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x12, 0x66, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x46, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, + 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, + 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0c, 0xba, 0x48, 0x09, 0x9a, 0x01, 0x06, + 0x22, 0x04, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, + 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0xb6, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, + 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, + 0x63, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x62, + 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, + 0xba, 0x48, 0x0c, 0x9a, 0x01, 0x09, 0x22, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xba, 0x01, 0x0a, + 0x19, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x65, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, + 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, + 0x61, 0x70, 0x4b, 0x65, 0x79, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, 0xba, 0x48, 0x0c, + 0x9a, 0x01, 0x09, 0x22, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc3, 0x01, 0x0a, 0x1f, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x68, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x62, 0x75, 0x66, + 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x56, 0x61, 0x6c, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0c, 0xba, 0x48, 0x09, 0x9a, 0x01, 0x06, 0x2a, 0x04, 0x1a, 0x02, + 0x20, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0xba, 0x01, 0x0a, 0x19, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x65, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x62, 0x75, 0x66, + 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0f, + 0xba, 0x48, 0x0c, 0x9a, 0x01, 0x09, 0x2a, 0x07, 0xd8, 0x01, 0x01, 0x1a, 0x02, 0x20, 0x00, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xbe, 0x01, 0x0a, + 0x1b, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x67, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, + 0x0f, 0xba, 0x48, 0x0c, 0x9a, 0x01, 0x09, 0x2a, 0x07, 0xd8, 0x01, 0x02, 0x1a, 0x02, 0x20, 0x00, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0xa5, 0x02, + 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, + 0x61, 0x73, 0x65, 0x73, 0x42, 0x11, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x50, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2d, 0x67, 0x6f, 0x2f, + 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, + 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, + 0x43, 0x43, 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, + 0x73, 0x65, 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, + 0x61, 0x73, 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, + 0x43, 0x61, 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0xea, 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, + 0x43, 0x61, 0x73, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescOnce sync.Once + file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescData = file_buf_validate_conformance_cases_ignore_proto3_proto_rawDesc +) + +func file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescGZIP() []byte { + file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescOnce.Do(func() { + file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescData = protoimpl.X.CompressGZIP(file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescData) + }) + return file_buf_validate_conformance_cases_ignore_proto3_proto_rawDescData +} + +var file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes = make([]protoimpl.MessageInfo, 45) +var file_buf_validate_conformance_cases_ignore_proto3_proto_goTypes = []interface{}{ + (*Proto3ScalarOptionalIgnoreUnspecified)(nil), // 0: buf.validate.conformance.cases.Proto3ScalarOptionalIgnoreUnspecified + (*Proto3ScalarOptionalIgnoreEmpty)(nil), // 1: buf.validate.conformance.cases.Proto3ScalarOptionalIgnoreEmpty + (*Proto3ScalarOptionalIgnoreDefault)(nil), // 2: buf.validate.conformance.cases.Proto3ScalarOptionalIgnoreDefault + (*Proto3ScalarIgnoreUnspecified)(nil), // 3: buf.validate.conformance.cases.Proto3ScalarIgnoreUnspecified + (*Proto3ScalarIgnoreEmpty)(nil), // 4: buf.validate.conformance.cases.Proto3ScalarIgnoreEmpty + (*Proto3ScalarIgnoreDefault)(nil), // 5: buf.validate.conformance.cases.Proto3ScalarIgnoreDefault + (*Proto3MessageOptionalIgnoreUnspecified)(nil), // 6: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreUnspecified + (*Proto3MessageOptionalIgnoreEmpty)(nil), // 7: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreEmpty + (*Proto3MessageOptionalIgnoreDefault)(nil), // 8: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreDefault + (*Proto3MessageIgnoreUnspecified)(nil), // 9: buf.validate.conformance.cases.Proto3MessageIgnoreUnspecified + (*Proto3MessageIgnoreEmpty)(nil), // 10: buf.validate.conformance.cases.Proto3MessageIgnoreEmpty + (*Proto3MessageIgnoreDefault)(nil), // 11: buf.validate.conformance.cases.Proto3MessageIgnoreDefault + (*Proto3OneofIgnoreUnspecified)(nil), // 12: buf.validate.conformance.cases.Proto3OneofIgnoreUnspecified + (*Proto3OneofIgnoreEmpty)(nil), // 13: buf.validate.conformance.cases.Proto3OneofIgnoreEmpty + (*Proto3OneofIgnoreDefault)(nil), // 14: buf.validate.conformance.cases.Proto3OneofIgnoreDefault + (*Proto3RepeatedIgnoreUnspecified)(nil), // 15: buf.validate.conformance.cases.Proto3RepeatedIgnoreUnspecified + (*Proto3RepeatedIgnoreEmpty)(nil), // 16: buf.validate.conformance.cases.Proto3RepeatedIgnoreEmpty + (*Proto3RepeatedIgnoreDefault)(nil), // 17: buf.validate.conformance.cases.Proto3RepeatedIgnoreDefault + (*Proto3MapIgnoreUnspecified)(nil), // 18: buf.validate.conformance.cases.Proto3MapIgnoreUnspecified + (*Proto3MapIgnoreEmpty)(nil), // 19: buf.validate.conformance.cases.Proto3MapIgnoreEmpty + (*Proto3MapIgnoreDefault)(nil), // 20: buf.validate.conformance.cases.Proto3MapIgnoreDefault + (*Proto3RepeatedItemIgnoreUnspecified)(nil), // 21: buf.validate.conformance.cases.Proto3RepeatedItemIgnoreUnspecified + (*Proto3RepeatedItemIgnoreEmpty)(nil), // 22: buf.validate.conformance.cases.Proto3RepeatedItemIgnoreEmpty + (*Proto3RepeatedItemIgnoreDefault)(nil), // 23: buf.validate.conformance.cases.Proto3RepeatedItemIgnoreDefault + (*Proto3MapKeyIgnoreUnspecified)(nil), // 24: buf.validate.conformance.cases.Proto3MapKeyIgnoreUnspecified + (*Proto3MapKeyIgnoreEmpty)(nil), // 25: buf.validate.conformance.cases.Proto3MapKeyIgnoreEmpty + (*Proto3MapKeyIgnoreDefault)(nil), // 26: buf.validate.conformance.cases.Proto3MapKeyIgnoreDefault + (*Proto3MapValueIgnoreUnspecified)(nil), // 27: buf.validate.conformance.cases.Proto3MapValueIgnoreUnspecified + (*Proto3MapValueIgnoreEmpty)(nil), // 28: buf.validate.conformance.cases.Proto3MapValueIgnoreEmpty + (*Proto3MapValueIgnoreDefault)(nil), // 29: buf.validate.conformance.cases.Proto3MapValueIgnoreDefault + (*Proto3MessageOptionalIgnoreUnspecified_Msg)(nil), // 30: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreUnspecified.Msg + (*Proto3MessageOptionalIgnoreEmpty_Msg)(nil), // 31: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreEmpty.Msg + (*Proto3MessageOptionalIgnoreDefault_Msg)(nil), // 32: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreDefault.Msg + (*Proto3MessageIgnoreUnspecified_Msg)(nil), // 33: buf.validate.conformance.cases.Proto3MessageIgnoreUnspecified.Msg + (*Proto3MessageIgnoreEmpty_Msg)(nil), // 34: buf.validate.conformance.cases.Proto3MessageIgnoreEmpty.Msg + (*Proto3MessageIgnoreDefault_Msg)(nil), // 35: buf.validate.conformance.cases.Proto3MessageIgnoreDefault.Msg + nil, // 36: buf.validate.conformance.cases.Proto3MapIgnoreUnspecified.ValEntry + nil, // 37: buf.validate.conformance.cases.Proto3MapIgnoreEmpty.ValEntry + nil, // 38: buf.validate.conformance.cases.Proto3MapIgnoreDefault.ValEntry + nil, // 39: buf.validate.conformance.cases.Proto3MapKeyIgnoreUnspecified.ValEntry + nil, // 40: buf.validate.conformance.cases.Proto3MapKeyIgnoreEmpty.ValEntry + nil, // 41: buf.validate.conformance.cases.Proto3MapKeyIgnoreDefault.ValEntry + nil, // 42: buf.validate.conformance.cases.Proto3MapValueIgnoreUnspecified.ValEntry + nil, // 43: buf.validate.conformance.cases.Proto3MapValueIgnoreEmpty.ValEntry + nil, // 44: buf.validate.conformance.cases.Proto3MapValueIgnoreDefault.ValEntry +} +var file_buf_validate_conformance_cases_ignore_proto3_proto_depIdxs = []int32{ + 30, // 0: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto3MessageOptionalIgnoreUnspecified.Msg + 31, // 1: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto3MessageOptionalIgnoreEmpty.Msg + 32, // 2: buf.validate.conformance.cases.Proto3MessageOptionalIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto3MessageOptionalIgnoreDefault.Msg + 33, // 3: buf.validate.conformance.cases.Proto3MessageIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto3MessageIgnoreUnspecified.Msg + 34, // 4: buf.validate.conformance.cases.Proto3MessageIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto3MessageIgnoreEmpty.Msg + 35, // 5: buf.validate.conformance.cases.Proto3MessageIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto3MessageIgnoreDefault.Msg + 36, // 6: buf.validate.conformance.cases.Proto3MapIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto3MapIgnoreUnspecified.ValEntry + 37, // 7: buf.validate.conformance.cases.Proto3MapIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto3MapIgnoreEmpty.ValEntry + 38, // 8: buf.validate.conformance.cases.Proto3MapIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto3MapIgnoreDefault.ValEntry + 39, // 9: buf.validate.conformance.cases.Proto3MapKeyIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto3MapKeyIgnoreUnspecified.ValEntry + 40, // 10: buf.validate.conformance.cases.Proto3MapKeyIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto3MapKeyIgnoreEmpty.ValEntry + 41, // 11: buf.validate.conformance.cases.Proto3MapKeyIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto3MapKeyIgnoreDefault.ValEntry + 42, // 12: buf.validate.conformance.cases.Proto3MapValueIgnoreUnspecified.val:type_name -> buf.validate.conformance.cases.Proto3MapValueIgnoreUnspecified.ValEntry + 43, // 13: buf.validate.conformance.cases.Proto3MapValueIgnoreEmpty.val:type_name -> buf.validate.conformance.cases.Proto3MapValueIgnoreEmpty.ValEntry + 44, // 14: buf.validate.conformance.cases.Proto3MapValueIgnoreDefault.val:type_name -> buf.validate.conformance.cases.Proto3MapValueIgnoreDefault.ValEntry + 15, // [15:15] is the sub-list for method output_type + 15, // [15:15] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name +} + +func init() { file_buf_validate_conformance_cases_ignore_proto3_proto_init() } +func file_buf_validate_conformance_cases_ignore_proto3_proto_init() { + if File_buf_validate_conformance_cases_ignore_proto3_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3ScalarOptionalIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3ScalarOptionalIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3ScalarOptionalIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3ScalarIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3ScalarIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3ScalarIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageOptionalIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageOptionalIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageOptionalIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3OneofIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3OneofIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3OneofIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3RepeatedIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3RepeatedIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3RepeatedIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3RepeatedItemIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3RepeatedItemIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3RepeatedItemIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapKeyIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapKeyIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapKeyIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapValueIgnoreUnspecified); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapValueIgnoreEmpty); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MapValueIgnoreDefault); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageOptionalIgnoreUnspecified_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageOptionalIgnoreEmpty_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageOptionalIgnoreDefault_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageIgnoreUnspecified_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageIgnoreEmpty_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Proto3MessageIgnoreDefault_Msg); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[0].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[1].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[2].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[6].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[7].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[8].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[12].OneofWrappers = []interface{}{ + (*Proto3OneofIgnoreUnspecified_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[13].OneofWrappers = []interface{}{ + (*Proto3OneofIgnoreEmpty_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[14].OneofWrappers = []interface{}{ + (*Proto3OneofIgnoreDefault_Val)(nil), + } + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[30].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[31].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[32].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[33].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[34].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes[35].OneofWrappers = []interface{}{} + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_buf_validate_conformance_cases_ignore_proto3_proto_rawDesc, + NumEnums: 0, + NumMessages: 45, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_buf_validate_conformance_cases_ignore_proto3_proto_goTypes, + DependencyIndexes: file_buf_validate_conformance_cases_ignore_proto3_proto_depIdxs, + MessageInfos: file_buf_validate_conformance_cases_ignore_proto3_proto_msgTypes, + }.Build() + File_buf_validate_conformance_cases_ignore_proto3_proto = out.File + file_buf_validate_conformance_cases_ignore_proto3_proto_rawDesc = nil + file_buf_validate_conformance_cases_ignore_proto3_proto_goTypes = nil + file_buf_validate_conformance_cases_ignore_proto3_proto_depIdxs = nil +} diff --git a/internal/gen/buf/validate/conformance/cases/messages.pb.go b/internal/gen/buf/validate/conformance/cases/messages.pb.go index 24f0f939..0fa6b1f4 100644 --- a/internal/gen/buf/validate/conformance/cases/messages.pb.go +++ b/internal/gen/buf/validate/conformance/cases/messages.pb.go @@ -607,7 +607,7 @@ var file_buf_validate_conformance_cases_messages_proto_rawDesc = []byte{ 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x54, 0x65, 0x73, 0x74, - 0x4d, 0x73, 0x67, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc0, 0x01, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x4d, 0x73, 0x67, 0x42, 0x06, 0xba, 0x48, 0x03, 0xd8, 0x01, 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x54, 0x0a, 0x0f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x41, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, diff --git a/internal/gen/buf/validate/conformance/cases/repeated.pb.go b/internal/gen/buf/validate/conformance/cases/repeated.pb.go index fda137af..440b676a 100644 --- a/internal/gen/buf/validate/conformance/cases/repeated.pb.go +++ b/internal/gen/buf/validate/conformance/cases/repeated.pb.go @@ -1435,7 +1435,7 @@ var file_buf_validate_conformance_cases_repeated_proto_rawDesc = []byte{ 0x32, 0x25, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x42, 0x0b, 0xba, 0x48, 0x08, 0x92, 0x01, 0x05, 0x22, - 0x03, 0xc0, 0x01, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x0e, 0x52, 0x65, 0x70, + 0x03, 0xd8, 0x01, 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x12, 0x26, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x14, 0xba, 0x48, 0x11, 0x92, 0x01, 0x0e, 0x22, 0x0c, 0x72, 0x0a, 0x52, 0x03, 0x66, 0x6f, 0x6f, 0x52, 0x03, 0x62, 0x61, 0x72, 0x52, 0x03, diff --git a/legacy/resolver_test.go b/legacy/resolver_test.go index edcfb874..42637922 100644 --- a/legacy/resolver_test.go +++ b/legacy/resolver_test.go @@ -19,7 +19,6 @@ import ( "github.com/bufbuild/protovalidate-go" examplev1 "github.com/bufbuild/protovalidate-go/internal/gen/tests/example/v1" - "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "google.golang.org/protobuf/proto" ) @@ -131,9 +130,9 @@ func TestWithLegacySupport(t *testing.T) { err = val.Validate(test.msg) if test.exErr { valErr := &protovalidate.ValidationError{} - assert.ErrorAs(t, err, &valErr) + require.ErrorAs(t, err, &valErr) } else { - assert.NoError(t, err) + require.NoError(t, err) } }) } diff --git a/legacy/translate.go b/legacy/translate.go index 79c2915e..100c110b 100644 --- a/legacy/translate.go +++ b/legacy/translate.go @@ -70,7 +70,7 @@ func translateRules(rules protoreflect.Message) *pv.FieldConstraints { if msgRules.Get(msgDesc.Fields().ByName("required")).Bool() { constraints.Required = true } else if msgRules.Get(msgDesc.Fields().ByName("skip")).Bool() { - constraints.Skipped = true + constraints.Ignore = pv.Ignore_IGNORE_ALWAYS } } @@ -105,7 +105,7 @@ func translateRule( return true } else if pgvDesc.Name() == "ignore_empty" && pgvDesc.Kind() == protoreflect.BoolKind && value.Bool() { // old `ignore_empty` fields on the type rules need to be lifted to the top level - constraints.IgnoreEmpty = true + constraints.Ignore = pv.Ignore_IGNORE_IF_UNPOPULATED return true } diff --git a/legacy/translate_test.go b/legacy/translate_test.go index 9d3b5ea2..19ba17a6 100644 --- a/legacy/translate_test.go +++ b/legacy/translate_test.go @@ -113,7 +113,7 @@ func TestTranslateFieldOptions(t *testing.T) { msg: &examplev1.LegacySkipped{}, field: "x", ex: &validate.FieldConstraints{ - Skipped: true, + Ignore: validate.Ignore_IGNORE_ALWAYS, }, }, { @@ -200,7 +200,7 @@ func TestTranslateFieldOptions(t *testing.T) { msg: &examplev1.LegacyIgnoreEmpty{}, field: "x", ex: &validate.FieldConstraints{ - IgnoreEmpty: true, + Ignore: validate.Ignore_IGNORE_IF_UNPOPULATED, Type: &validate.FieldConstraints_Int32{ Int32: &validate.Int32Rules{ GreaterThan: &validate.Int32Rules_Gt{ diff --git a/proto/buf.lock b/proto/buf.lock index acfcfcf5..18a4f6ae 100644 --- a/proto/buf.lock +++ b/proto/buf.lock @@ -4,13 +4,13 @@ deps: - remote: buf.build owner: bufbuild repository: protovalidate - commit: 3014d81c3a48461dbcc5b57536699f9e - digest: shake256:6b40454a0754bf624c8fc965f3576bd26bf72a480c554514672d2fac887f420c82d68cf50d40f5a77d8b6e96dda87e395aeedae84d513dde7c4bfd4d95f5657a + commit: f05a6f4403ce4327bae4f50f281c3ed0 + digest: shake256:668a0661b8df44d41839194896329330965fc215f3d2f88057fd60eeb759c2daf6cc6edfdd13b2a653d49fe2896ebedcb1a33c4c5b2dd10919f03ffb7fc52ae6 - remote: buf.build owner: bufbuild repository: protovalidate-testing - commit: 00584229605e4543975a563acab42ffa - digest: shake256:46068826ec54bc7745617d5faa334cbe89f13261d789754748c463a2a671aef0b8c8c94ea7704344bc14798903924d9bf677bec9dd6dc4a0367256defc70cdee + commit: 264a18f78b774bbfad639697fe4f02c7 + digest: shake256:c8a3e4a536724dcebe33d25ce8b804e7b0f9aae91c00ae31bdb2eb4483cd3bb6fd221ed6861aa6c27ad58e497cbf48793a1aefbfff35d6f050dc420b03095a93 - remote: buf.build owner: envoyproxy repository: protoc-gen-validate diff --git a/validator_bench_test.go b/validator_bench_test.go index ba749d85..33ea579a 100644 --- a/validator_bench_test.go +++ b/validator_bench_test.go @@ -33,7 +33,7 @@ func BenchmarkValidator(b *testing.B) { val, err := New() require.NoError(b, err) err = val.Validate(successMsg) - assert.NoError(b, err) + require.NoError(b, err) } }) }) @@ -46,7 +46,7 @@ func BenchmarkValidator(b *testing.B) { b.RunParallel(func(p *testing.PB) { for p.Next() { err := val.Validate(successMsg) - assert.NoError(b, err) + require.NoError(b, err) } }) }) @@ -88,7 +88,7 @@ func BenchmarkValidator(b *testing.B) { b.RunParallel(func(p *testing.PB) { for p.Next() { err := val.Validate(successMsg) - assert.NoError(b, err) + require.NoError(b, err) } }) }) diff --git a/validator_example_test.go b/validator_example_test.go index 6b3eb25f..7e2622ba 100644 --- a/validator_example_test.go +++ b/validator_example_test.go @@ -141,7 +141,7 @@ func ExampleWithDisableLazy() { log.Fatal(err) } - err = validator.Validate(person.Home) + err = validator.Validate(person.GetHome()) fmt.Println("person.Home:", err) err = validator.Validate(person) fmt.Println("person:", err) @@ -162,7 +162,7 @@ func ExampleValidationError() { var valErr *ValidationError if ok := errors.As(err, &valErr); ok { msg := valErr.ToProto() - fmt.Println(msg.Violations[0].FieldPath, msg.Violations[0].ConstraintId) + fmt.Println(msg.GetViolations()[0].GetFieldPath(), msg.GetViolations()[0].GetConstraintId()) } // output: lat double.gte_lte diff --git a/validator_test.go b/validator_test.go index 10b631d1..f722229b 100644 --- a/validator_test.go +++ b/validator_test.go @@ -53,7 +53,7 @@ func TestValidator_Validate(t *testing.T) { if test.exErr { assert.Error(t, err) } else { - assert.NoError(t, err) + require.NoError(t, err) } } }) @@ -66,11 +66,11 @@ func TestRecursive(t *testing.T) { selfRec := &pb.SelfRecursive{X: 123, Turtle: &pb.SelfRecursive{X: 456}} err = val.Validate(selfRec) - assert.NoError(t, err) + require.NoError(t, err) loopRec := &pb.LoopRecursiveA{B: &pb.LoopRecursiveB{}} err = val.Validate(loopRec) - assert.NoError(t, err) + require.NoError(t, err) } func TestValidator_ValidateOneof(t *testing.T) { @@ -79,15 +79,15 @@ func TestValidator_ValidateOneof(t *testing.T) { require.NoError(t, err) oneofMessage := &pb.MsgHasOneof{O: &pb.MsgHasOneof_X{X: "foo"}} err = val.Validate(oneofMessage) - assert.NoError(t, err) + require.NoError(t, err) oneofMessage = &pb.MsgHasOneof{O: &pb.MsgHasOneof_Y{Y: 42}} err = val.Validate(oneofMessage) - assert.NoError(t, err) + require.NoError(t, err) oneofMessage = &pb.MsgHasOneof{O: &pb.MsgHasOneof_Msg{Msg: &pb.HasMsgExprs{X: 4, Y: 50}}} err = val.Validate(oneofMessage) - assert.NoError(t, err) + require.NoError(t, err) oneofMessage = &pb.MsgHasOneof{} err = val.Validate(oneofMessage) @@ -178,11 +178,11 @@ func TestValidator_Validate_CelMapOnARepeated(t *testing.T) { {Name: "baz"}, }} err = val.Validate(msg) - assert.NoError(t, err) + require.NoError(t, err) msg.Values = append(msg.Values, &pb.CelMapOnARepeated_Value{Name: "foo"}) err = val.Validate(msg) valErr := &ValidationError{} - assert.ErrorAs(t, err, &valErr) + require.ErrorAs(t, err, &valErr) } func TestValidator_Validate_RepeatedItemCel(t *testing.T) { @@ -195,6 +195,6 @@ func TestValidator_Validate_RepeatedItemCel(t *testing.T) { msg.Paths = append(msg.Paths, " bar") err = val.Validate(msg) valErr := &ValidationError{} - assert.ErrorAs(t, err, &valErr) - assert.Equal(t, "paths.no_space", valErr.Violations[0].ConstraintId) + require.ErrorAs(t, err, &valErr) + assert.Equal(t, "paths.no_space", valErr.Violations[0].GetConstraintId()) }