You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

14448 lines
343 KiB

7 years ago
7 years ago
7 years ago
7 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
7 years ago
7 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
7 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
add support for block pruning via ABCI Commit response (#4588) * Added BlockStore.DeleteBlock() * Added initial block pruner prototype * wip * Added BlockStore.PruneBlocks() * Added consensus setting for block pruning * Added BlockStore base * Error on replay if base does not have blocks * Handle missing blocks when sending VoteSetMaj23Message * Error message tweak * Properly update blockstore state * Error message fix again * blockchain: ignore peer missing blocks * Added FIXME * Added test for block replay with truncated history * Handle peer base in blockchain reactor * Improved replay error handling * Added tests for Store.PruneBlocks() * Fix non-RPC handling of truncated block history * Panic on missing block meta in needProofBlock() * Updated changelog * Handle truncated block history in RPC layer * Added info about earliest block in /status RPC * Reorder height and base in blockchain reactor messages * Updated changelog * Fix tests * Appease linter * Minor review fixes * Non-empty BlockStores should always have base > 0 * Update code to assume base > 0 invariant * Added blockstore tests for pruning to 0 * Make sure we don't prune below the current base * Added BlockStore.Size() * config: added retain_blocks recommendations * Update v1 blockchain reactor to handle blockstore base * Added state database pruning * Propagate errors on missing validator sets * Comment tweaks * Improved error message Co-Authored-By: Anton Kaliaev <anton.kalyaev@gmail.com> * use ABCI field ResponseCommit.retain_height instead of retain-blocks config option * remove State.RetainHeight, return value instead * fix minor issues * rename pruneHeights() to pruneBlocks() * noop to fix GitHub borkage Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
5 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
abci: Refactor tagging events using list of lists (#3643) ## PR This PR introduces a fundamental breaking change to the structure of ABCI response and tx tags and the way they're processed. Namely, the SDK can support more complex and aggregated events for distribution and slashing. In addition, block responses can include duplicate keys in events. Implement new Event type. An event has a type and a list of KV pairs (ie. list-of-lists). Typical events may look like: "rewards": [{"amount": "5000uatom", "validator": "...", "recipient": "..."}] "sender": [{"address": "...", "balance": "100uatom"}] The events are indexed by {even.type}.{even.attribute[i].key}/.... In this case a client would subscribe or query for rewards.recipient='...' ABCI response types and related types now include Events []Event instead of Tags []cmn.KVPair. PubSub logic now publishes/matches against map[string][]string instead of map[string]string to support duplicate keys in response events (from #1385). A match is successful if the value is found in the slice of strings. closes: #1859 closes: #2905 ## Commits: * Implement Event ABCI type and updates responses to use events * Update messages_test.go * Update kvstore.go * Update event_bus.go * Update subscription.go * Update pubsub.go * Update kvstore.go * Update query logic to handle slice of strings in events * Update Empty#Matches and unit tests * Update pubsub logic * Update EventBus#Publish * Update kv tx indexer * Update godocs * Update ResultEvent to use slice of strings; update RPC * Update more tests * Update abci.md * Check for key in validateAndStringifyEvents * Fix KV indexer to skip empty keys * Fix linting errors * Update CHANGELOG_PENDING.md * Update docs/spec/abci/abci.md Co-Authored-By: Federico Kunze <31522760+fedekunze@users.noreply.github.com> * Update abci/types/types.proto Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update docs/spec/abci/abci.md Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update libs/pubsub/query/query.go Co-Authored-By: Ethan Buchman <ethan@coinculture.info> * Update match function to match if ANY value matches * Implement TestSubscribeDuplicateKeys * Update TestMatches to include multi-key test cases * Update events.go * Update Query interface godoc * Update match godoc * Add godoc for matchValue * DRY-up tx indexing * Return error from PublishWithEvents in EventBus#Publish * Update PublishEventNewBlockHeader to return an error * Fix build * Update events doc in ABCI * Update ABCI events godoc * Implement TestEventBusPublishEventTxDuplicateKeys * Update TestSubscribeDuplicateKeys to be table-driven * Remove mod file * Remove markdown from events godoc * Implement TestTxSearchDeprecatedIndexing test
6 years ago
  1. // Code generated by protoc-gen-gogo. DO NOT EDIT.
  2. // source: tendermint/abci/types.proto
  3. package types
  4. import (
  5. context "context"
  6. fmt "fmt"
  7. _ "github.com/gogo/protobuf/gogoproto"
  8. proto "github.com/gogo/protobuf/proto"
  9. _ "github.com/gogo/protobuf/types"
  10. github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
  11. crypto "github.com/tendermint/tendermint/proto/tendermint/crypto"
  12. types1 "github.com/tendermint/tendermint/proto/tendermint/types"
  13. grpc "google.golang.org/grpc"
  14. codes "google.golang.org/grpc/codes"
  15. status "google.golang.org/grpc/status"
  16. io "io"
  17. math "math"
  18. math_bits "math/bits"
  19. time "time"
  20. )
  21. // Reference imports to suppress errors if they are not otherwise used.
  22. var _ = proto.Marshal
  23. var _ = fmt.Errorf
  24. var _ = math.Inf
  25. var _ = time.Kitchen
  26. // This is a compile-time assertion to ensure that this generated file
  27. // is compatible with the proto package it is being compiled against.
  28. // A compilation error at this line likely means your copy of the
  29. // proto package needs to be updated.
  30. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
  31. type CheckTxType int32
  32. const (
  33. CheckTxType_New CheckTxType = 0
  34. CheckTxType_Recheck CheckTxType = 1
  35. )
  36. var CheckTxType_name = map[int32]string{
  37. 0: "NEW",
  38. 1: "RECHECK",
  39. }
  40. var CheckTxType_value = map[string]int32{
  41. "NEW": 0,
  42. "RECHECK": 1,
  43. }
  44. func (x CheckTxType) String() string {
  45. return proto.EnumName(CheckTxType_name, int32(x))
  46. }
  47. func (CheckTxType) EnumDescriptor() ([]byte, []int) {
  48. return fileDescriptor_252557cfdd89a31a, []int{0}
  49. }
  50. type ResponseOfferSnapshot_Result int32
  51. const (
  52. ResponseOfferSnapshot_UNKNOWN ResponseOfferSnapshot_Result = 0
  53. ResponseOfferSnapshot_ACCEPT ResponseOfferSnapshot_Result = 1
  54. ResponseOfferSnapshot_ABORT ResponseOfferSnapshot_Result = 2
  55. ResponseOfferSnapshot_REJECT ResponseOfferSnapshot_Result = 3
  56. ResponseOfferSnapshot_REJECT_FORMAT ResponseOfferSnapshot_Result = 4
  57. ResponseOfferSnapshot_REJECT_SENDER ResponseOfferSnapshot_Result = 5
  58. )
  59. var ResponseOfferSnapshot_Result_name = map[int32]string{
  60. 0: "UNKNOWN",
  61. 1: "ACCEPT",
  62. 2: "ABORT",
  63. 3: "REJECT",
  64. 4: "REJECT_FORMAT",
  65. 5: "REJECT_SENDER",
  66. }
  67. var ResponseOfferSnapshot_Result_value = map[string]int32{
  68. "UNKNOWN": 0,
  69. "ACCEPT": 1,
  70. "ABORT": 2,
  71. "REJECT": 3,
  72. "REJECT_FORMAT": 4,
  73. "REJECT_SENDER": 5,
  74. }
  75. func (x ResponseOfferSnapshot_Result) String() string {
  76. return proto.EnumName(ResponseOfferSnapshot_Result_name, int32(x))
  77. }
  78. func (ResponseOfferSnapshot_Result) EnumDescriptor() ([]byte, []int) {
  79. return fileDescriptor_252557cfdd89a31a, []int{30, 0}
  80. }
  81. type ResponseApplySnapshotChunk_Result int32
  82. const (
  83. ResponseApplySnapshotChunk_UNKNOWN ResponseApplySnapshotChunk_Result = 0
  84. ResponseApplySnapshotChunk_ACCEPT ResponseApplySnapshotChunk_Result = 1
  85. ResponseApplySnapshotChunk_ABORT ResponseApplySnapshotChunk_Result = 2
  86. ResponseApplySnapshotChunk_RETRY ResponseApplySnapshotChunk_Result = 3
  87. ResponseApplySnapshotChunk_RETRY_SNAPSHOT ResponseApplySnapshotChunk_Result = 4
  88. ResponseApplySnapshotChunk_REJECT_SNAPSHOT ResponseApplySnapshotChunk_Result = 5
  89. )
  90. var ResponseApplySnapshotChunk_Result_name = map[int32]string{
  91. 0: "UNKNOWN",
  92. 1: "ACCEPT",
  93. 2: "ABORT",
  94. 3: "RETRY",
  95. 4: "RETRY_SNAPSHOT",
  96. 5: "REJECT_SNAPSHOT",
  97. }
  98. var ResponseApplySnapshotChunk_Result_value = map[string]int32{
  99. "UNKNOWN": 0,
  100. "ACCEPT": 1,
  101. "ABORT": 2,
  102. "RETRY": 3,
  103. "RETRY_SNAPSHOT": 4,
  104. "REJECT_SNAPSHOT": 5,
  105. }
  106. func (x ResponseApplySnapshotChunk_Result) String() string {
  107. return proto.EnumName(ResponseApplySnapshotChunk_Result_name, int32(x))
  108. }
  109. func (ResponseApplySnapshotChunk_Result) EnumDescriptor() ([]byte, []int) {
  110. return fileDescriptor_252557cfdd89a31a, []int{32, 0}
  111. }
  112. type Request struct {
  113. // Types that are valid to be assigned to Value:
  114. // *Request_Echo
  115. // *Request_Flush
  116. // *Request_Info
  117. // *Request_SetOption
  118. // *Request_InitChain
  119. // *Request_Query
  120. // *Request_BeginBlock
  121. // *Request_CheckTx
  122. // *Request_DeliverTx
  123. // *Request_EndBlock
  124. // *Request_Commit
  125. // *Request_ListSnapshots
  126. // *Request_OfferSnapshot
  127. // *Request_LoadSnapshotChunk
  128. // *Request_ApplySnapshotChunk
  129. Value isRequest_Value `protobuf_oneof:"value"`
  130. }
  131. func (m *Request) Reset() { *m = Request{} }
  132. func (m *Request) String() string { return proto.CompactTextString(m) }
  133. func (*Request) ProtoMessage() {}
  134. func (*Request) Descriptor() ([]byte, []int) {
  135. return fileDescriptor_252557cfdd89a31a, []int{0}
  136. }
  137. func (m *Request) XXX_Unmarshal(b []byte) error {
  138. return m.Unmarshal(b)
  139. }
  140. func (m *Request) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  141. if deterministic {
  142. return xxx_messageInfo_Request.Marshal(b, m, deterministic)
  143. } else {
  144. b = b[:cap(b)]
  145. n, err := m.MarshalToSizedBuffer(b)
  146. if err != nil {
  147. return nil, err
  148. }
  149. return b[:n], nil
  150. }
  151. }
  152. func (m *Request) XXX_Merge(src proto.Message) {
  153. xxx_messageInfo_Request.Merge(m, src)
  154. }
  155. func (m *Request) XXX_Size() int {
  156. return m.Size()
  157. }
  158. func (m *Request) XXX_DiscardUnknown() {
  159. xxx_messageInfo_Request.DiscardUnknown(m)
  160. }
  161. var xxx_messageInfo_Request proto.InternalMessageInfo
  162. type isRequest_Value interface {
  163. isRequest_Value()
  164. MarshalTo([]byte) (int, error)
  165. Size() int
  166. }
  167. type Request_Echo struct {
  168. Echo *RequestEcho `protobuf:"bytes,1,opt,name=echo,proto3,oneof" json:"echo,omitempty"`
  169. }
  170. type Request_Flush struct {
  171. Flush *RequestFlush `protobuf:"bytes,2,opt,name=flush,proto3,oneof" json:"flush,omitempty"`
  172. }
  173. type Request_Info struct {
  174. Info *RequestInfo `protobuf:"bytes,3,opt,name=info,proto3,oneof" json:"info,omitempty"`
  175. }
  176. type Request_SetOption struct {
  177. SetOption *RequestSetOption `protobuf:"bytes,4,opt,name=set_option,json=setOption,proto3,oneof" json:"set_option,omitempty"`
  178. }
  179. type Request_InitChain struct {
  180. InitChain *RequestInitChain `protobuf:"bytes,5,opt,name=init_chain,json=initChain,proto3,oneof" json:"init_chain,omitempty"`
  181. }
  182. type Request_Query struct {
  183. Query *RequestQuery `protobuf:"bytes,6,opt,name=query,proto3,oneof" json:"query,omitempty"`
  184. }
  185. type Request_BeginBlock struct {
  186. BeginBlock *RequestBeginBlock `protobuf:"bytes,7,opt,name=begin_block,json=beginBlock,proto3,oneof" json:"begin_block,omitempty"`
  187. }
  188. type Request_CheckTx struct {
  189. CheckTx *RequestCheckTx `protobuf:"bytes,8,opt,name=check_tx,json=checkTx,proto3,oneof" json:"check_tx,omitempty"`
  190. }
  191. type Request_DeliverTx struct {
  192. DeliverTx *RequestDeliverTx `protobuf:"bytes,9,opt,name=deliver_tx,json=deliverTx,proto3,oneof" json:"deliver_tx,omitempty"`
  193. }
  194. type Request_EndBlock struct {
  195. EndBlock *RequestEndBlock `protobuf:"bytes,10,opt,name=end_block,json=endBlock,proto3,oneof" json:"end_block,omitempty"`
  196. }
  197. type Request_Commit struct {
  198. Commit *RequestCommit `protobuf:"bytes,11,opt,name=commit,proto3,oneof" json:"commit,omitempty"`
  199. }
  200. type Request_ListSnapshots struct {
  201. ListSnapshots *RequestListSnapshots `protobuf:"bytes,12,opt,name=list_snapshots,json=listSnapshots,proto3,oneof" json:"list_snapshots,omitempty"`
  202. }
  203. type Request_OfferSnapshot struct {
  204. OfferSnapshot *RequestOfferSnapshot `protobuf:"bytes,13,opt,name=offer_snapshot,json=offerSnapshot,proto3,oneof" json:"offer_snapshot,omitempty"`
  205. }
  206. type Request_LoadSnapshotChunk struct {
  207. LoadSnapshotChunk *RequestLoadSnapshotChunk `protobuf:"bytes,14,opt,name=load_snapshot_chunk,json=loadSnapshotChunk,proto3,oneof" json:"load_snapshot_chunk,omitempty"`
  208. }
  209. type Request_ApplySnapshotChunk struct {
  210. ApplySnapshotChunk *RequestApplySnapshotChunk `protobuf:"bytes,15,opt,name=apply_snapshot_chunk,json=applySnapshotChunk,proto3,oneof" json:"apply_snapshot_chunk,omitempty"`
  211. }
  212. func (*Request_Echo) isRequest_Value() {}
  213. func (*Request_Flush) isRequest_Value() {}
  214. func (*Request_Info) isRequest_Value() {}
  215. func (*Request_SetOption) isRequest_Value() {}
  216. func (*Request_InitChain) isRequest_Value() {}
  217. func (*Request_Query) isRequest_Value() {}
  218. func (*Request_BeginBlock) isRequest_Value() {}
  219. func (*Request_CheckTx) isRequest_Value() {}
  220. func (*Request_DeliverTx) isRequest_Value() {}
  221. func (*Request_EndBlock) isRequest_Value() {}
  222. func (*Request_Commit) isRequest_Value() {}
  223. func (*Request_ListSnapshots) isRequest_Value() {}
  224. func (*Request_OfferSnapshot) isRequest_Value() {}
  225. func (*Request_LoadSnapshotChunk) isRequest_Value() {}
  226. func (*Request_ApplySnapshotChunk) isRequest_Value() {}
  227. func (m *Request) GetValue() isRequest_Value {
  228. if m != nil {
  229. return m.Value
  230. }
  231. return nil
  232. }
  233. func (m *Request) GetEcho() *RequestEcho {
  234. if x, ok := m.GetValue().(*Request_Echo); ok {
  235. return x.Echo
  236. }
  237. return nil
  238. }
  239. func (m *Request) GetFlush() *RequestFlush {
  240. if x, ok := m.GetValue().(*Request_Flush); ok {
  241. return x.Flush
  242. }
  243. return nil
  244. }
  245. func (m *Request) GetInfo() *RequestInfo {
  246. if x, ok := m.GetValue().(*Request_Info); ok {
  247. return x.Info
  248. }
  249. return nil
  250. }
  251. func (m *Request) GetSetOption() *RequestSetOption {
  252. if x, ok := m.GetValue().(*Request_SetOption); ok {
  253. return x.SetOption
  254. }
  255. return nil
  256. }
  257. func (m *Request) GetInitChain() *RequestInitChain {
  258. if x, ok := m.GetValue().(*Request_InitChain); ok {
  259. return x.InitChain
  260. }
  261. return nil
  262. }
  263. func (m *Request) GetQuery() *RequestQuery {
  264. if x, ok := m.GetValue().(*Request_Query); ok {
  265. return x.Query
  266. }
  267. return nil
  268. }
  269. func (m *Request) GetBeginBlock() *RequestBeginBlock {
  270. if x, ok := m.GetValue().(*Request_BeginBlock); ok {
  271. return x.BeginBlock
  272. }
  273. return nil
  274. }
  275. func (m *Request) GetCheckTx() *RequestCheckTx {
  276. if x, ok := m.GetValue().(*Request_CheckTx); ok {
  277. return x.CheckTx
  278. }
  279. return nil
  280. }
  281. func (m *Request) GetDeliverTx() *RequestDeliverTx {
  282. if x, ok := m.GetValue().(*Request_DeliverTx); ok {
  283. return x.DeliverTx
  284. }
  285. return nil
  286. }
  287. func (m *Request) GetEndBlock() *RequestEndBlock {
  288. if x, ok := m.GetValue().(*Request_EndBlock); ok {
  289. return x.EndBlock
  290. }
  291. return nil
  292. }
  293. func (m *Request) GetCommit() *RequestCommit {
  294. if x, ok := m.GetValue().(*Request_Commit); ok {
  295. return x.Commit
  296. }
  297. return nil
  298. }
  299. func (m *Request) GetListSnapshots() *RequestListSnapshots {
  300. if x, ok := m.GetValue().(*Request_ListSnapshots); ok {
  301. return x.ListSnapshots
  302. }
  303. return nil
  304. }
  305. func (m *Request) GetOfferSnapshot() *RequestOfferSnapshot {
  306. if x, ok := m.GetValue().(*Request_OfferSnapshot); ok {
  307. return x.OfferSnapshot
  308. }
  309. return nil
  310. }
  311. func (m *Request) GetLoadSnapshotChunk() *RequestLoadSnapshotChunk {
  312. if x, ok := m.GetValue().(*Request_LoadSnapshotChunk); ok {
  313. return x.LoadSnapshotChunk
  314. }
  315. return nil
  316. }
  317. func (m *Request) GetApplySnapshotChunk() *RequestApplySnapshotChunk {
  318. if x, ok := m.GetValue().(*Request_ApplySnapshotChunk); ok {
  319. return x.ApplySnapshotChunk
  320. }
  321. return nil
  322. }
  323. // XXX_OneofWrappers is for the internal use of the proto package.
  324. func (*Request) XXX_OneofWrappers() []interface{} {
  325. return []interface{}{
  326. (*Request_Echo)(nil),
  327. (*Request_Flush)(nil),
  328. (*Request_Info)(nil),
  329. (*Request_SetOption)(nil),
  330. (*Request_InitChain)(nil),
  331. (*Request_Query)(nil),
  332. (*Request_BeginBlock)(nil),
  333. (*Request_CheckTx)(nil),
  334. (*Request_DeliverTx)(nil),
  335. (*Request_EndBlock)(nil),
  336. (*Request_Commit)(nil),
  337. (*Request_ListSnapshots)(nil),
  338. (*Request_OfferSnapshot)(nil),
  339. (*Request_LoadSnapshotChunk)(nil),
  340. (*Request_ApplySnapshotChunk)(nil),
  341. }
  342. }
  343. type RequestEcho struct {
  344. Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
  345. }
  346. func (m *RequestEcho) Reset() { *m = RequestEcho{} }
  347. func (m *RequestEcho) String() string { return proto.CompactTextString(m) }
  348. func (*RequestEcho) ProtoMessage() {}
  349. func (*RequestEcho) Descriptor() ([]byte, []int) {
  350. return fileDescriptor_252557cfdd89a31a, []int{1}
  351. }
  352. func (m *RequestEcho) XXX_Unmarshal(b []byte) error {
  353. return m.Unmarshal(b)
  354. }
  355. func (m *RequestEcho) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  356. if deterministic {
  357. return xxx_messageInfo_RequestEcho.Marshal(b, m, deterministic)
  358. } else {
  359. b = b[:cap(b)]
  360. n, err := m.MarshalToSizedBuffer(b)
  361. if err != nil {
  362. return nil, err
  363. }
  364. return b[:n], nil
  365. }
  366. }
  367. func (m *RequestEcho) XXX_Merge(src proto.Message) {
  368. xxx_messageInfo_RequestEcho.Merge(m, src)
  369. }
  370. func (m *RequestEcho) XXX_Size() int {
  371. return m.Size()
  372. }
  373. func (m *RequestEcho) XXX_DiscardUnknown() {
  374. xxx_messageInfo_RequestEcho.DiscardUnknown(m)
  375. }
  376. var xxx_messageInfo_RequestEcho proto.InternalMessageInfo
  377. func (m *RequestEcho) GetMessage() string {
  378. if m != nil {
  379. return m.Message
  380. }
  381. return ""
  382. }
  383. type RequestFlush struct {
  384. }
  385. func (m *RequestFlush) Reset() { *m = RequestFlush{} }
  386. func (m *RequestFlush) String() string { return proto.CompactTextString(m) }
  387. func (*RequestFlush) ProtoMessage() {}
  388. func (*RequestFlush) Descriptor() ([]byte, []int) {
  389. return fileDescriptor_252557cfdd89a31a, []int{2}
  390. }
  391. func (m *RequestFlush) XXX_Unmarshal(b []byte) error {
  392. return m.Unmarshal(b)
  393. }
  394. func (m *RequestFlush) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  395. if deterministic {
  396. return xxx_messageInfo_RequestFlush.Marshal(b, m, deterministic)
  397. } else {
  398. b = b[:cap(b)]
  399. n, err := m.MarshalToSizedBuffer(b)
  400. if err != nil {
  401. return nil, err
  402. }
  403. return b[:n], nil
  404. }
  405. }
  406. func (m *RequestFlush) XXX_Merge(src proto.Message) {
  407. xxx_messageInfo_RequestFlush.Merge(m, src)
  408. }
  409. func (m *RequestFlush) XXX_Size() int {
  410. return m.Size()
  411. }
  412. func (m *RequestFlush) XXX_DiscardUnknown() {
  413. xxx_messageInfo_RequestFlush.DiscardUnknown(m)
  414. }
  415. var xxx_messageInfo_RequestFlush proto.InternalMessageInfo
  416. type RequestInfo struct {
  417. Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
  418. BlockVersion uint64 `protobuf:"varint,2,opt,name=block_version,json=blockVersion,proto3" json:"block_version,omitempty"`
  419. P2PVersion uint64 `protobuf:"varint,3,opt,name=p2p_version,json=p2pVersion,proto3" json:"p2p_version,omitempty"`
  420. }
  421. func (m *RequestInfo) Reset() { *m = RequestInfo{} }
  422. func (m *RequestInfo) String() string { return proto.CompactTextString(m) }
  423. func (*RequestInfo) ProtoMessage() {}
  424. func (*RequestInfo) Descriptor() ([]byte, []int) {
  425. return fileDescriptor_252557cfdd89a31a, []int{3}
  426. }
  427. func (m *RequestInfo) XXX_Unmarshal(b []byte) error {
  428. return m.Unmarshal(b)
  429. }
  430. func (m *RequestInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  431. if deterministic {
  432. return xxx_messageInfo_RequestInfo.Marshal(b, m, deterministic)
  433. } else {
  434. b = b[:cap(b)]
  435. n, err := m.MarshalToSizedBuffer(b)
  436. if err != nil {
  437. return nil, err
  438. }
  439. return b[:n], nil
  440. }
  441. }
  442. func (m *RequestInfo) XXX_Merge(src proto.Message) {
  443. xxx_messageInfo_RequestInfo.Merge(m, src)
  444. }
  445. func (m *RequestInfo) XXX_Size() int {
  446. return m.Size()
  447. }
  448. func (m *RequestInfo) XXX_DiscardUnknown() {
  449. xxx_messageInfo_RequestInfo.DiscardUnknown(m)
  450. }
  451. var xxx_messageInfo_RequestInfo proto.InternalMessageInfo
  452. func (m *RequestInfo) GetVersion() string {
  453. if m != nil {
  454. return m.Version
  455. }
  456. return ""
  457. }
  458. func (m *RequestInfo) GetBlockVersion() uint64 {
  459. if m != nil {
  460. return m.BlockVersion
  461. }
  462. return 0
  463. }
  464. func (m *RequestInfo) GetP2PVersion() uint64 {
  465. if m != nil {
  466. return m.P2PVersion
  467. }
  468. return 0
  469. }
  470. // nondeterministic
  471. type RequestSetOption struct {
  472. Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
  473. Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  474. }
  475. func (m *RequestSetOption) Reset() { *m = RequestSetOption{} }
  476. func (m *RequestSetOption) String() string { return proto.CompactTextString(m) }
  477. func (*RequestSetOption) ProtoMessage() {}
  478. func (*RequestSetOption) Descriptor() ([]byte, []int) {
  479. return fileDescriptor_252557cfdd89a31a, []int{4}
  480. }
  481. func (m *RequestSetOption) XXX_Unmarshal(b []byte) error {
  482. return m.Unmarshal(b)
  483. }
  484. func (m *RequestSetOption) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  485. if deterministic {
  486. return xxx_messageInfo_RequestSetOption.Marshal(b, m, deterministic)
  487. } else {
  488. b = b[:cap(b)]
  489. n, err := m.MarshalToSizedBuffer(b)
  490. if err != nil {
  491. return nil, err
  492. }
  493. return b[:n], nil
  494. }
  495. }
  496. func (m *RequestSetOption) XXX_Merge(src proto.Message) {
  497. xxx_messageInfo_RequestSetOption.Merge(m, src)
  498. }
  499. func (m *RequestSetOption) XXX_Size() int {
  500. return m.Size()
  501. }
  502. func (m *RequestSetOption) XXX_DiscardUnknown() {
  503. xxx_messageInfo_RequestSetOption.DiscardUnknown(m)
  504. }
  505. var xxx_messageInfo_RequestSetOption proto.InternalMessageInfo
  506. func (m *RequestSetOption) GetKey() string {
  507. if m != nil {
  508. return m.Key
  509. }
  510. return ""
  511. }
  512. func (m *RequestSetOption) GetValue() string {
  513. if m != nil {
  514. return m.Value
  515. }
  516. return ""
  517. }
  518. type RequestInitChain struct {
  519. Time time.Time `protobuf:"bytes,1,opt,name=time,proto3,stdtime" json:"time"`
  520. ChainId string `protobuf:"bytes,2,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
  521. ConsensusParams *ConsensusParams `protobuf:"bytes,3,opt,name=consensus_params,json=consensusParams,proto3" json:"consensus_params,omitempty"`
  522. Validators []ValidatorUpdate `protobuf:"bytes,4,rep,name=validators,proto3" json:"validators"`
  523. AppStateBytes []byte `protobuf:"bytes,5,opt,name=app_state_bytes,json=appStateBytes,proto3" json:"app_state_bytes,omitempty"`
  524. }
  525. func (m *RequestInitChain) Reset() { *m = RequestInitChain{} }
  526. func (m *RequestInitChain) String() string { return proto.CompactTextString(m) }
  527. func (*RequestInitChain) ProtoMessage() {}
  528. func (*RequestInitChain) Descriptor() ([]byte, []int) {
  529. return fileDescriptor_252557cfdd89a31a, []int{5}
  530. }
  531. func (m *RequestInitChain) XXX_Unmarshal(b []byte) error {
  532. return m.Unmarshal(b)
  533. }
  534. func (m *RequestInitChain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  535. if deterministic {
  536. return xxx_messageInfo_RequestInitChain.Marshal(b, m, deterministic)
  537. } else {
  538. b = b[:cap(b)]
  539. n, err := m.MarshalToSizedBuffer(b)
  540. if err != nil {
  541. return nil, err
  542. }
  543. return b[:n], nil
  544. }
  545. }
  546. func (m *RequestInitChain) XXX_Merge(src proto.Message) {
  547. xxx_messageInfo_RequestInitChain.Merge(m, src)
  548. }
  549. func (m *RequestInitChain) XXX_Size() int {
  550. return m.Size()
  551. }
  552. func (m *RequestInitChain) XXX_DiscardUnknown() {
  553. xxx_messageInfo_RequestInitChain.DiscardUnknown(m)
  554. }
  555. var xxx_messageInfo_RequestInitChain proto.InternalMessageInfo
  556. func (m *RequestInitChain) GetTime() time.Time {
  557. if m != nil {
  558. return m.Time
  559. }
  560. return time.Time{}
  561. }
  562. func (m *RequestInitChain) GetChainId() string {
  563. if m != nil {
  564. return m.ChainId
  565. }
  566. return ""
  567. }
  568. func (m *RequestInitChain) GetConsensusParams() *ConsensusParams {
  569. if m != nil {
  570. return m.ConsensusParams
  571. }
  572. return nil
  573. }
  574. func (m *RequestInitChain) GetValidators() []ValidatorUpdate {
  575. if m != nil {
  576. return m.Validators
  577. }
  578. return nil
  579. }
  580. func (m *RequestInitChain) GetAppStateBytes() []byte {
  581. if m != nil {
  582. return m.AppStateBytes
  583. }
  584. return nil
  585. }
  586. type RequestQuery struct {
  587. Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
  588. Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
  589. Height int64 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
  590. Prove bool `protobuf:"varint,4,opt,name=prove,proto3" json:"prove,omitempty"`
  591. }
  592. func (m *RequestQuery) Reset() { *m = RequestQuery{} }
  593. func (m *RequestQuery) String() string { return proto.CompactTextString(m) }
  594. func (*RequestQuery) ProtoMessage() {}
  595. func (*RequestQuery) Descriptor() ([]byte, []int) {
  596. return fileDescriptor_252557cfdd89a31a, []int{6}
  597. }
  598. func (m *RequestQuery) XXX_Unmarshal(b []byte) error {
  599. return m.Unmarshal(b)
  600. }
  601. func (m *RequestQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  602. if deterministic {
  603. return xxx_messageInfo_RequestQuery.Marshal(b, m, deterministic)
  604. } else {
  605. b = b[:cap(b)]
  606. n, err := m.MarshalToSizedBuffer(b)
  607. if err != nil {
  608. return nil, err
  609. }
  610. return b[:n], nil
  611. }
  612. }
  613. func (m *RequestQuery) XXX_Merge(src proto.Message) {
  614. xxx_messageInfo_RequestQuery.Merge(m, src)
  615. }
  616. func (m *RequestQuery) XXX_Size() int {
  617. return m.Size()
  618. }
  619. func (m *RequestQuery) XXX_DiscardUnknown() {
  620. xxx_messageInfo_RequestQuery.DiscardUnknown(m)
  621. }
  622. var xxx_messageInfo_RequestQuery proto.InternalMessageInfo
  623. func (m *RequestQuery) GetData() []byte {
  624. if m != nil {
  625. return m.Data
  626. }
  627. return nil
  628. }
  629. func (m *RequestQuery) GetPath() string {
  630. if m != nil {
  631. return m.Path
  632. }
  633. return ""
  634. }
  635. func (m *RequestQuery) GetHeight() int64 {
  636. if m != nil {
  637. return m.Height
  638. }
  639. return 0
  640. }
  641. func (m *RequestQuery) GetProve() bool {
  642. if m != nil {
  643. return m.Prove
  644. }
  645. return false
  646. }
  647. type RequestBeginBlock struct {
  648. Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
  649. Header types1.Header `protobuf:"bytes,2,opt,name=header,proto3" json:"header"`
  650. LastCommitInfo LastCommitInfo `protobuf:"bytes,3,opt,name=last_commit_info,json=lastCommitInfo,proto3" json:"last_commit_info"`
  651. ByzantineValidators []Evidence `protobuf:"bytes,4,rep,name=byzantine_validators,json=byzantineValidators,proto3" json:"byzantine_validators"`
  652. }
  653. func (m *RequestBeginBlock) Reset() { *m = RequestBeginBlock{} }
  654. func (m *RequestBeginBlock) String() string { return proto.CompactTextString(m) }
  655. func (*RequestBeginBlock) ProtoMessage() {}
  656. func (*RequestBeginBlock) Descriptor() ([]byte, []int) {
  657. return fileDescriptor_252557cfdd89a31a, []int{7}
  658. }
  659. func (m *RequestBeginBlock) XXX_Unmarshal(b []byte) error {
  660. return m.Unmarshal(b)
  661. }
  662. func (m *RequestBeginBlock) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  663. if deterministic {
  664. return xxx_messageInfo_RequestBeginBlock.Marshal(b, m, deterministic)
  665. } else {
  666. b = b[:cap(b)]
  667. n, err := m.MarshalToSizedBuffer(b)
  668. if err != nil {
  669. return nil, err
  670. }
  671. return b[:n], nil
  672. }
  673. }
  674. func (m *RequestBeginBlock) XXX_Merge(src proto.Message) {
  675. xxx_messageInfo_RequestBeginBlock.Merge(m, src)
  676. }
  677. func (m *RequestBeginBlock) XXX_Size() int {
  678. return m.Size()
  679. }
  680. func (m *RequestBeginBlock) XXX_DiscardUnknown() {
  681. xxx_messageInfo_RequestBeginBlock.DiscardUnknown(m)
  682. }
  683. var xxx_messageInfo_RequestBeginBlock proto.InternalMessageInfo
  684. func (m *RequestBeginBlock) GetHash() []byte {
  685. if m != nil {
  686. return m.Hash
  687. }
  688. return nil
  689. }
  690. func (m *RequestBeginBlock) GetHeader() types1.Header {
  691. if m != nil {
  692. return m.Header
  693. }
  694. return types1.Header{}
  695. }
  696. func (m *RequestBeginBlock) GetLastCommitInfo() LastCommitInfo {
  697. if m != nil {
  698. return m.LastCommitInfo
  699. }
  700. return LastCommitInfo{}
  701. }
  702. func (m *RequestBeginBlock) GetByzantineValidators() []Evidence {
  703. if m != nil {
  704. return m.ByzantineValidators
  705. }
  706. return nil
  707. }
  708. type RequestCheckTx struct {
  709. Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
  710. Type CheckTxType `protobuf:"varint,2,opt,name=type,proto3,enum=tendermint.abci.CheckTxType" json:"type,omitempty"`
  711. }
  712. func (m *RequestCheckTx) Reset() { *m = RequestCheckTx{} }
  713. func (m *RequestCheckTx) String() string { return proto.CompactTextString(m) }
  714. func (*RequestCheckTx) ProtoMessage() {}
  715. func (*RequestCheckTx) Descriptor() ([]byte, []int) {
  716. return fileDescriptor_252557cfdd89a31a, []int{8}
  717. }
  718. func (m *RequestCheckTx) XXX_Unmarshal(b []byte) error {
  719. return m.Unmarshal(b)
  720. }
  721. func (m *RequestCheckTx) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  722. if deterministic {
  723. return xxx_messageInfo_RequestCheckTx.Marshal(b, m, deterministic)
  724. } else {
  725. b = b[:cap(b)]
  726. n, err := m.MarshalToSizedBuffer(b)
  727. if err != nil {
  728. return nil, err
  729. }
  730. return b[:n], nil
  731. }
  732. }
  733. func (m *RequestCheckTx) XXX_Merge(src proto.Message) {
  734. xxx_messageInfo_RequestCheckTx.Merge(m, src)
  735. }
  736. func (m *RequestCheckTx) XXX_Size() int {
  737. return m.Size()
  738. }
  739. func (m *RequestCheckTx) XXX_DiscardUnknown() {
  740. xxx_messageInfo_RequestCheckTx.DiscardUnknown(m)
  741. }
  742. var xxx_messageInfo_RequestCheckTx proto.InternalMessageInfo
  743. func (m *RequestCheckTx) GetTx() []byte {
  744. if m != nil {
  745. return m.Tx
  746. }
  747. return nil
  748. }
  749. func (m *RequestCheckTx) GetType() CheckTxType {
  750. if m != nil {
  751. return m.Type
  752. }
  753. return CheckTxType_New
  754. }
  755. type RequestDeliverTx struct {
  756. Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
  757. }
  758. func (m *RequestDeliverTx) Reset() { *m = RequestDeliverTx{} }
  759. func (m *RequestDeliverTx) String() string { return proto.CompactTextString(m) }
  760. func (*RequestDeliverTx) ProtoMessage() {}
  761. func (*RequestDeliverTx) Descriptor() ([]byte, []int) {
  762. return fileDescriptor_252557cfdd89a31a, []int{9}
  763. }
  764. func (m *RequestDeliverTx) XXX_Unmarshal(b []byte) error {
  765. return m.Unmarshal(b)
  766. }
  767. func (m *RequestDeliverTx) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  768. if deterministic {
  769. return xxx_messageInfo_RequestDeliverTx.Marshal(b, m, deterministic)
  770. } else {
  771. b = b[:cap(b)]
  772. n, err := m.MarshalToSizedBuffer(b)
  773. if err != nil {
  774. return nil, err
  775. }
  776. return b[:n], nil
  777. }
  778. }
  779. func (m *RequestDeliverTx) XXX_Merge(src proto.Message) {
  780. xxx_messageInfo_RequestDeliverTx.Merge(m, src)
  781. }
  782. func (m *RequestDeliverTx) XXX_Size() int {
  783. return m.Size()
  784. }
  785. func (m *RequestDeliverTx) XXX_DiscardUnknown() {
  786. xxx_messageInfo_RequestDeliverTx.DiscardUnknown(m)
  787. }
  788. var xxx_messageInfo_RequestDeliverTx proto.InternalMessageInfo
  789. func (m *RequestDeliverTx) GetTx() []byte {
  790. if m != nil {
  791. return m.Tx
  792. }
  793. return nil
  794. }
  795. type RequestEndBlock struct {
  796. Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
  797. }
  798. func (m *RequestEndBlock) Reset() { *m = RequestEndBlock{} }
  799. func (m *RequestEndBlock) String() string { return proto.CompactTextString(m) }
  800. func (*RequestEndBlock) ProtoMessage() {}
  801. func (*RequestEndBlock) Descriptor() ([]byte, []int) {
  802. return fileDescriptor_252557cfdd89a31a, []int{10}
  803. }
  804. func (m *RequestEndBlock) XXX_Unmarshal(b []byte) error {
  805. return m.Unmarshal(b)
  806. }
  807. func (m *RequestEndBlock) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  808. if deterministic {
  809. return xxx_messageInfo_RequestEndBlock.Marshal(b, m, deterministic)
  810. } else {
  811. b = b[:cap(b)]
  812. n, err := m.MarshalToSizedBuffer(b)
  813. if err != nil {
  814. return nil, err
  815. }
  816. return b[:n], nil
  817. }
  818. }
  819. func (m *RequestEndBlock) XXX_Merge(src proto.Message) {
  820. xxx_messageInfo_RequestEndBlock.Merge(m, src)
  821. }
  822. func (m *RequestEndBlock) XXX_Size() int {
  823. return m.Size()
  824. }
  825. func (m *RequestEndBlock) XXX_DiscardUnknown() {
  826. xxx_messageInfo_RequestEndBlock.DiscardUnknown(m)
  827. }
  828. var xxx_messageInfo_RequestEndBlock proto.InternalMessageInfo
  829. func (m *RequestEndBlock) GetHeight() int64 {
  830. if m != nil {
  831. return m.Height
  832. }
  833. return 0
  834. }
  835. type RequestCommit struct {
  836. }
  837. func (m *RequestCommit) Reset() { *m = RequestCommit{} }
  838. func (m *RequestCommit) String() string { return proto.CompactTextString(m) }
  839. func (*RequestCommit) ProtoMessage() {}
  840. func (*RequestCommit) Descriptor() ([]byte, []int) {
  841. return fileDescriptor_252557cfdd89a31a, []int{11}
  842. }
  843. func (m *RequestCommit) XXX_Unmarshal(b []byte) error {
  844. return m.Unmarshal(b)
  845. }
  846. func (m *RequestCommit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  847. if deterministic {
  848. return xxx_messageInfo_RequestCommit.Marshal(b, m, deterministic)
  849. } else {
  850. b = b[:cap(b)]
  851. n, err := m.MarshalToSizedBuffer(b)
  852. if err != nil {
  853. return nil, err
  854. }
  855. return b[:n], nil
  856. }
  857. }
  858. func (m *RequestCommit) XXX_Merge(src proto.Message) {
  859. xxx_messageInfo_RequestCommit.Merge(m, src)
  860. }
  861. func (m *RequestCommit) XXX_Size() int {
  862. return m.Size()
  863. }
  864. func (m *RequestCommit) XXX_DiscardUnknown() {
  865. xxx_messageInfo_RequestCommit.DiscardUnknown(m)
  866. }
  867. var xxx_messageInfo_RequestCommit proto.InternalMessageInfo
  868. // lists available snapshots
  869. type RequestListSnapshots struct {
  870. }
  871. func (m *RequestListSnapshots) Reset() { *m = RequestListSnapshots{} }
  872. func (m *RequestListSnapshots) String() string { return proto.CompactTextString(m) }
  873. func (*RequestListSnapshots) ProtoMessage() {}
  874. func (*RequestListSnapshots) Descriptor() ([]byte, []int) {
  875. return fileDescriptor_252557cfdd89a31a, []int{12}
  876. }
  877. func (m *RequestListSnapshots) XXX_Unmarshal(b []byte) error {
  878. return m.Unmarshal(b)
  879. }
  880. func (m *RequestListSnapshots) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  881. if deterministic {
  882. return xxx_messageInfo_RequestListSnapshots.Marshal(b, m, deterministic)
  883. } else {
  884. b = b[:cap(b)]
  885. n, err := m.MarshalToSizedBuffer(b)
  886. if err != nil {
  887. return nil, err
  888. }
  889. return b[:n], nil
  890. }
  891. }
  892. func (m *RequestListSnapshots) XXX_Merge(src proto.Message) {
  893. xxx_messageInfo_RequestListSnapshots.Merge(m, src)
  894. }
  895. func (m *RequestListSnapshots) XXX_Size() int {
  896. return m.Size()
  897. }
  898. func (m *RequestListSnapshots) XXX_DiscardUnknown() {
  899. xxx_messageInfo_RequestListSnapshots.DiscardUnknown(m)
  900. }
  901. var xxx_messageInfo_RequestListSnapshots proto.InternalMessageInfo
  902. // offers a snapshot to the application
  903. type RequestOfferSnapshot struct {
  904. Snapshot *Snapshot `protobuf:"bytes,1,opt,name=snapshot,proto3" json:"snapshot,omitempty"`
  905. AppHash []byte `protobuf:"bytes,2,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty"`
  906. }
  907. func (m *RequestOfferSnapshot) Reset() { *m = RequestOfferSnapshot{} }
  908. func (m *RequestOfferSnapshot) String() string { return proto.CompactTextString(m) }
  909. func (*RequestOfferSnapshot) ProtoMessage() {}
  910. func (*RequestOfferSnapshot) Descriptor() ([]byte, []int) {
  911. return fileDescriptor_252557cfdd89a31a, []int{13}
  912. }
  913. func (m *RequestOfferSnapshot) XXX_Unmarshal(b []byte) error {
  914. return m.Unmarshal(b)
  915. }
  916. func (m *RequestOfferSnapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  917. if deterministic {
  918. return xxx_messageInfo_RequestOfferSnapshot.Marshal(b, m, deterministic)
  919. } else {
  920. b = b[:cap(b)]
  921. n, err := m.MarshalToSizedBuffer(b)
  922. if err != nil {
  923. return nil, err
  924. }
  925. return b[:n], nil
  926. }
  927. }
  928. func (m *RequestOfferSnapshot) XXX_Merge(src proto.Message) {
  929. xxx_messageInfo_RequestOfferSnapshot.Merge(m, src)
  930. }
  931. func (m *RequestOfferSnapshot) XXX_Size() int {
  932. return m.Size()
  933. }
  934. func (m *RequestOfferSnapshot) XXX_DiscardUnknown() {
  935. xxx_messageInfo_RequestOfferSnapshot.DiscardUnknown(m)
  936. }
  937. var xxx_messageInfo_RequestOfferSnapshot proto.InternalMessageInfo
  938. func (m *RequestOfferSnapshot) GetSnapshot() *Snapshot {
  939. if m != nil {
  940. return m.Snapshot
  941. }
  942. return nil
  943. }
  944. func (m *RequestOfferSnapshot) GetAppHash() []byte {
  945. if m != nil {
  946. return m.AppHash
  947. }
  948. return nil
  949. }
  950. // loads a snapshot chunk
  951. type RequestLoadSnapshotChunk struct {
  952. Height uint64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
  953. Format uint32 `protobuf:"varint,2,opt,name=format,proto3" json:"format,omitempty"`
  954. Chunk uint32 `protobuf:"varint,3,opt,name=chunk,proto3" json:"chunk,omitempty"`
  955. }
  956. func (m *RequestLoadSnapshotChunk) Reset() { *m = RequestLoadSnapshotChunk{} }
  957. func (m *RequestLoadSnapshotChunk) String() string { return proto.CompactTextString(m) }
  958. func (*RequestLoadSnapshotChunk) ProtoMessage() {}
  959. func (*RequestLoadSnapshotChunk) Descriptor() ([]byte, []int) {
  960. return fileDescriptor_252557cfdd89a31a, []int{14}
  961. }
  962. func (m *RequestLoadSnapshotChunk) XXX_Unmarshal(b []byte) error {
  963. return m.Unmarshal(b)
  964. }
  965. func (m *RequestLoadSnapshotChunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  966. if deterministic {
  967. return xxx_messageInfo_RequestLoadSnapshotChunk.Marshal(b, m, deterministic)
  968. } else {
  969. b = b[:cap(b)]
  970. n, err := m.MarshalToSizedBuffer(b)
  971. if err != nil {
  972. return nil, err
  973. }
  974. return b[:n], nil
  975. }
  976. }
  977. func (m *RequestLoadSnapshotChunk) XXX_Merge(src proto.Message) {
  978. xxx_messageInfo_RequestLoadSnapshotChunk.Merge(m, src)
  979. }
  980. func (m *RequestLoadSnapshotChunk) XXX_Size() int {
  981. return m.Size()
  982. }
  983. func (m *RequestLoadSnapshotChunk) XXX_DiscardUnknown() {
  984. xxx_messageInfo_RequestLoadSnapshotChunk.DiscardUnknown(m)
  985. }
  986. var xxx_messageInfo_RequestLoadSnapshotChunk proto.InternalMessageInfo
  987. func (m *RequestLoadSnapshotChunk) GetHeight() uint64 {
  988. if m != nil {
  989. return m.Height
  990. }
  991. return 0
  992. }
  993. func (m *RequestLoadSnapshotChunk) GetFormat() uint32 {
  994. if m != nil {
  995. return m.Format
  996. }
  997. return 0
  998. }
  999. func (m *RequestLoadSnapshotChunk) GetChunk() uint32 {
  1000. if m != nil {
  1001. return m.Chunk
  1002. }
  1003. return 0
  1004. }
  1005. // Applies a snapshot chunk
  1006. type RequestApplySnapshotChunk struct {
  1007. Index uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
  1008. Chunk []byte `protobuf:"bytes,2,opt,name=chunk,proto3" json:"chunk,omitempty"`
  1009. Sender string `protobuf:"bytes,3,opt,name=sender,proto3" json:"sender,omitempty"`
  1010. }
  1011. func (m *RequestApplySnapshotChunk) Reset() { *m = RequestApplySnapshotChunk{} }
  1012. func (m *RequestApplySnapshotChunk) String() string { return proto.CompactTextString(m) }
  1013. func (*RequestApplySnapshotChunk) ProtoMessage() {}
  1014. func (*RequestApplySnapshotChunk) Descriptor() ([]byte, []int) {
  1015. return fileDescriptor_252557cfdd89a31a, []int{15}
  1016. }
  1017. func (m *RequestApplySnapshotChunk) XXX_Unmarshal(b []byte) error {
  1018. return m.Unmarshal(b)
  1019. }
  1020. func (m *RequestApplySnapshotChunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1021. if deterministic {
  1022. return xxx_messageInfo_RequestApplySnapshotChunk.Marshal(b, m, deterministic)
  1023. } else {
  1024. b = b[:cap(b)]
  1025. n, err := m.MarshalToSizedBuffer(b)
  1026. if err != nil {
  1027. return nil, err
  1028. }
  1029. return b[:n], nil
  1030. }
  1031. }
  1032. func (m *RequestApplySnapshotChunk) XXX_Merge(src proto.Message) {
  1033. xxx_messageInfo_RequestApplySnapshotChunk.Merge(m, src)
  1034. }
  1035. func (m *RequestApplySnapshotChunk) XXX_Size() int {
  1036. return m.Size()
  1037. }
  1038. func (m *RequestApplySnapshotChunk) XXX_DiscardUnknown() {
  1039. xxx_messageInfo_RequestApplySnapshotChunk.DiscardUnknown(m)
  1040. }
  1041. var xxx_messageInfo_RequestApplySnapshotChunk proto.InternalMessageInfo
  1042. func (m *RequestApplySnapshotChunk) GetIndex() uint32 {
  1043. if m != nil {
  1044. return m.Index
  1045. }
  1046. return 0
  1047. }
  1048. func (m *RequestApplySnapshotChunk) GetChunk() []byte {
  1049. if m != nil {
  1050. return m.Chunk
  1051. }
  1052. return nil
  1053. }
  1054. func (m *RequestApplySnapshotChunk) GetSender() string {
  1055. if m != nil {
  1056. return m.Sender
  1057. }
  1058. return ""
  1059. }
  1060. type Response struct {
  1061. // Types that are valid to be assigned to Value:
  1062. // *Response_Exception
  1063. // *Response_Echo
  1064. // *Response_Flush
  1065. // *Response_Info
  1066. // *Response_SetOption
  1067. // *Response_InitChain
  1068. // *Response_Query
  1069. // *Response_BeginBlock
  1070. // *Response_CheckTx
  1071. // *Response_DeliverTx
  1072. // *Response_EndBlock
  1073. // *Response_Commit
  1074. // *Response_ListSnapshots
  1075. // *Response_OfferSnapshot
  1076. // *Response_LoadSnapshotChunk
  1077. // *Response_ApplySnapshotChunk
  1078. Value isResponse_Value `protobuf_oneof:"value"`
  1079. }
  1080. func (m *Response) Reset() { *m = Response{} }
  1081. func (m *Response) String() string { return proto.CompactTextString(m) }
  1082. func (*Response) ProtoMessage() {}
  1083. func (*Response) Descriptor() ([]byte, []int) {
  1084. return fileDescriptor_252557cfdd89a31a, []int{16}
  1085. }
  1086. func (m *Response) XXX_Unmarshal(b []byte) error {
  1087. return m.Unmarshal(b)
  1088. }
  1089. func (m *Response) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1090. if deterministic {
  1091. return xxx_messageInfo_Response.Marshal(b, m, deterministic)
  1092. } else {
  1093. b = b[:cap(b)]
  1094. n, err := m.MarshalToSizedBuffer(b)
  1095. if err != nil {
  1096. return nil, err
  1097. }
  1098. return b[:n], nil
  1099. }
  1100. }
  1101. func (m *Response) XXX_Merge(src proto.Message) {
  1102. xxx_messageInfo_Response.Merge(m, src)
  1103. }
  1104. func (m *Response) XXX_Size() int {
  1105. return m.Size()
  1106. }
  1107. func (m *Response) XXX_DiscardUnknown() {
  1108. xxx_messageInfo_Response.DiscardUnknown(m)
  1109. }
  1110. var xxx_messageInfo_Response proto.InternalMessageInfo
  1111. type isResponse_Value interface {
  1112. isResponse_Value()
  1113. MarshalTo([]byte) (int, error)
  1114. Size() int
  1115. }
  1116. type Response_Exception struct {
  1117. Exception *ResponseException `protobuf:"bytes,1,opt,name=exception,proto3,oneof" json:"exception,omitempty"`
  1118. }
  1119. type Response_Echo struct {
  1120. Echo *ResponseEcho `protobuf:"bytes,2,opt,name=echo,proto3,oneof" json:"echo,omitempty"`
  1121. }
  1122. type Response_Flush struct {
  1123. Flush *ResponseFlush `protobuf:"bytes,3,opt,name=flush,proto3,oneof" json:"flush,omitempty"`
  1124. }
  1125. type Response_Info struct {
  1126. Info *ResponseInfo `protobuf:"bytes,4,opt,name=info,proto3,oneof" json:"info,omitempty"`
  1127. }
  1128. type Response_SetOption struct {
  1129. SetOption *ResponseSetOption `protobuf:"bytes,5,opt,name=set_option,json=setOption,proto3,oneof" json:"set_option,omitempty"`
  1130. }
  1131. type Response_InitChain struct {
  1132. InitChain *ResponseInitChain `protobuf:"bytes,6,opt,name=init_chain,json=initChain,proto3,oneof" json:"init_chain,omitempty"`
  1133. }
  1134. type Response_Query struct {
  1135. Query *ResponseQuery `protobuf:"bytes,7,opt,name=query,proto3,oneof" json:"query,omitempty"`
  1136. }
  1137. type Response_BeginBlock struct {
  1138. BeginBlock *ResponseBeginBlock `protobuf:"bytes,8,opt,name=begin_block,json=beginBlock,proto3,oneof" json:"begin_block,omitempty"`
  1139. }
  1140. type Response_CheckTx struct {
  1141. CheckTx *ResponseCheckTx `protobuf:"bytes,9,opt,name=check_tx,json=checkTx,proto3,oneof" json:"check_tx,omitempty"`
  1142. }
  1143. type Response_DeliverTx struct {
  1144. DeliverTx *ResponseDeliverTx `protobuf:"bytes,10,opt,name=deliver_tx,json=deliverTx,proto3,oneof" json:"deliver_tx,omitempty"`
  1145. }
  1146. type Response_EndBlock struct {
  1147. EndBlock *ResponseEndBlock `protobuf:"bytes,11,opt,name=end_block,json=endBlock,proto3,oneof" json:"end_block,omitempty"`
  1148. }
  1149. type Response_Commit struct {
  1150. Commit *ResponseCommit `protobuf:"bytes,12,opt,name=commit,proto3,oneof" json:"commit,omitempty"`
  1151. }
  1152. type Response_ListSnapshots struct {
  1153. ListSnapshots *ResponseListSnapshots `protobuf:"bytes,13,opt,name=list_snapshots,json=listSnapshots,proto3,oneof" json:"list_snapshots,omitempty"`
  1154. }
  1155. type Response_OfferSnapshot struct {
  1156. OfferSnapshot *ResponseOfferSnapshot `protobuf:"bytes,14,opt,name=offer_snapshot,json=offerSnapshot,proto3,oneof" json:"offer_snapshot,omitempty"`
  1157. }
  1158. type Response_LoadSnapshotChunk struct {
  1159. LoadSnapshotChunk *ResponseLoadSnapshotChunk `protobuf:"bytes,15,opt,name=load_snapshot_chunk,json=loadSnapshotChunk,proto3,oneof" json:"load_snapshot_chunk,omitempty"`
  1160. }
  1161. type Response_ApplySnapshotChunk struct {
  1162. ApplySnapshotChunk *ResponseApplySnapshotChunk `protobuf:"bytes,16,opt,name=apply_snapshot_chunk,json=applySnapshotChunk,proto3,oneof" json:"apply_snapshot_chunk,omitempty"`
  1163. }
  1164. func (*Response_Exception) isResponse_Value() {}
  1165. func (*Response_Echo) isResponse_Value() {}
  1166. func (*Response_Flush) isResponse_Value() {}
  1167. func (*Response_Info) isResponse_Value() {}
  1168. func (*Response_SetOption) isResponse_Value() {}
  1169. func (*Response_InitChain) isResponse_Value() {}
  1170. func (*Response_Query) isResponse_Value() {}
  1171. func (*Response_BeginBlock) isResponse_Value() {}
  1172. func (*Response_CheckTx) isResponse_Value() {}
  1173. func (*Response_DeliverTx) isResponse_Value() {}
  1174. func (*Response_EndBlock) isResponse_Value() {}
  1175. func (*Response_Commit) isResponse_Value() {}
  1176. func (*Response_ListSnapshots) isResponse_Value() {}
  1177. func (*Response_OfferSnapshot) isResponse_Value() {}
  1178. func (*Response_LoadSnapshotChunk) isResponse_Value() {}
  1179. func (*Response_ApplySnapshotChunk) isResponse_Value() {}
  1180. func (m *Response) GetValue() isResponse_Value {
  1181. if m != nil {
  1182. return m.Value
  1183. }
  1184. return nil
  1185. }
  1186. func (m *Response) GetException() *ResponseException {
  1187. if x, ok := m.GetValue().(*Response_Exception); ok {
  1188. return x.Exception
  1189. }
  1190. return nil
  1191. }
  1192. func (m *Response) GetEcho() *ResponseEcho {
  1193. if x, ok := m.GetValue().(*Response_Echo); ok {
  1194. return x.Echo
  1195. }
  1196. return nil
  1197. }
  1198. func (m *Response) GetFlush() *ResponseFlush {
  1199. if x, ok := m.GetValue().(*Response_Flush); ok {
  1200. return x.Flush
  1201. }
  1202. return nil
  1203. }
  1204. func (m *Response) GetInfo() *ResponseInfo {
  1205. if x, ok := m.GetValue().(*Response_Info); ok {
  1206. return x.Info
  1207. }
  1208. return nil
  1209. }
  1210. func (m *Response) GetSetOption() *ResponseSetOption {
  1211. if x, ok := m.GetValue().(*Response_SetOption); ok {
  1212. return x.SetOption
  1213. }
  1214. return nil
  1215. }
  1216. func (m *Response) GetInitChain() *ResponseInitChain {
  1217. if x, ok := m.GetValue().(*Response_InitChain); ok {
  1218. return x.InitChain
  1219. }
  1220. return nil
  1221. }
  1222. func (m *Response) GetQuery() *ResponseQuery {
  1223. if x, ok := m.GetValue().(*Response_Query); ok {
  1224. return x.Query
  1225. }
  1226. return nil
  1227. }
  1228. func (m *Response) GetBeginBlock() *ResponseBeginBlock {
  1229. if x, ok := m.GetValue().(*Response_BeginBlock); ok {
  1230. return x.BeginBlock
  1231. }
  1232. return nil
  1233. }
  1234. func (m *Response) GetCheckTx() *ResponseCheckTx {
  1235. if x, ok := m.GetValue().(*Response_CheckTx); ok {
  1236. return x.CheckTx
  1237. }
  1238. return nil
  1239. }
  1240. func (m *Response) GetDeliverTx() *ResponseDeliverTx {
  1241. if x, ok := m.GetValue().(*Response_DeliverTx); ok {
  1242. return x.DeliverTx
  1243. }
  1244. return nil
  1245. }
  1246. func (m *Response) GetEndBlock() *ResponseEndBlock {
  1247. if x, ok := m.GetValue().(*Response_EndBlock); ok {
  1248. return x.EndBlock
  1249. }
  1250. return nil
  1251. }
  1252. func (m *Response) GetCommit() *ResponseCommit {
  1253. if x, ok := m.GetValue().(*Response_Commit); ok {
  1254. return x.Commit
  1255. }
  1256. return nil
  1257. }
  1258. func (m *Response) GetListSnapshots() *ResponseListSnapshots {
  1259. if x, ok := m.GetValue().(*Response_ListSnapshots); ok {
  1260. return x.ListSnapshots
  1261. }
  1262. return nil
  1263. }
  1264. func (m *Response) GetOfferSnapshot() *ResponseOfferSnapshot {
  1265. if x, ok := m.GetValue().(*Response_OfferSnapshot); ok {
  1266. return x.OfferSnapshot
  1267. }
  1268. return nil
  1269. }
  1270. func (m *Response) GetLoadSnapshotChunk() *ResponseLoadSnapshotChunk {
  1271. if x, ok := m.GetValue().(*Response_LoadSnapshotChunk); ok {
  1272. return x.LoadSnapshotChunk
  1273. }
  1274. return nil
  1275. }
  1276. func (m *Response) GetApplySnapshotChunk() *ResponseApplySnapshotChunk {
  1277. if x, ok := m.GetValue().(*Response_ApplySnapshotChunk); ok {
  1278. return x.ApplySnapshotChunk
  1279. }
  1280. return nil
  1281. }
  1282. // XXX_OneofWrappers is for the internal use of the proto package.
  1283. func (*Response) XXX_OneofWrappers() []interface{} {
  1284. return []interface{}{
  1285. (*Response_Exception)(nil),
  1286. (*Response_Echo)(nil),
  1287. (*Response_Flush)(nil),
  1288. (*Response_Info)(nil),
  1289. (*Response_SetOption)(nil),
  1290. (*Response_InitChain)(nil),
  1291. (*Response_Query)(nil),
  1292. (*Response_BeginBlock)(nil),
  1293. (*Response_CheckTx)(nil),
  1294. (*Response_DeliverTx)(nil),
  1295. (*Response_EndBlock)(nil),
  1296. (*Response_Commit)(nil),
  1297. (*Response_ListSnapshots)(nil),
  1298. (*Response_OfferSnapshot)(nil),
  1299. (*Response_LoadSnapshotChunk)(nil),
  1300. (*Response_ApplySnapshotChunk)(nil),
  1301. }
  1302. }
  1303. // nondeterministic
  1304. type ResponseException struct {
  1305. Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
  1306. }
  1307. func (m *ResponseException) Reset() { *m = ResponseException{} }
  1308. func (m *ResponseException) String() string { return proto.CompactTextString(m) }
  1309. func (*ResponseException) ProtoMessage() {}
  1310. func (*ResponseException) Descriptor() ([]byte, []int) {
  1311. return fileDescriptor_252557cfdd89a31a, []int{17}
  1312. }
  1313. func (m *ResponseException) XXX_Unmarshal(b []byte) error {
  1314. return m.Unmarshal(b)
  1315. }
  1316. func (m *ResponseException) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1317. if deterministic {
  1318. return xxx_messageInfo_ResponseException.Marshal(b, m, deterministic)
  1319. } else {
  1320. b = b[:cap(b)]
  1321. n, err := m.MarshalToSizedBuffer(b)
  1322. if err != nil {
  1323. return nil, err
  1324. }
  1325. return b[:n], nil
  1326. }
  1327. }
  1328. func (m *ResponseException) XXX_Merge(src proto.Message) {
  1329. xxx_messageInfo_ResponseException.Merge(m, src)
  1330. }
  1331. func (m *ResponseException) XXX_Size() int {
  1332. return m.Size()
  1333. }
  1334. func (m *ResponseException) XXX_DiscardUnknown() {
  1335. xxx_messageInfo_ResponseException.DiscardUnknown(m)
  1336. }
  1337. var xxx_messageInfo_ResponseException proto.InternalMessageInfo
  1338. func (m *ResponseException) GetError() string {
  1339. if m != nil {
  1340. return m.Error
  1341. }
  1342. return ""
  1343. }
  1344. type ResponseEcho struct {
  1345. Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
  1346. }
  1347. func (m *ResponseEcho) Reset() { *m = ResponseEcho{} }
  1348. func (m *ResponseEcho) String() string { return proto.CompactTextString(m) }
  1349. func (*ResponseEcho) ProtoMessage() {}
  1350. func (*ResponseEcho) Descriptor() ([]byte, []int) {
  1351. return fileDescriptor_252557cfdd89a31a, []int{18}
  1352. }
  1353. func (m *ResponseEcho) XXX_Unmarshal(b []byte) error {
  1354. return m.Unmarshal(b)
  1355. }
  1356. func (m *ResponseEcho) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1357. if deterministic {
  1358. return xxx_messageInfo_ResponseEcho.Marshal(b, m, deterministic)
  1359. } else {
  1360. b = b[:cap(b)]
  1361. n, err := m.MarshalToSizedBuffer(b)
  1362. if err != nil {
  1363. return nil, err
  1364. }
  1365. return b[:n], nil
  1366. }
  1367. }
  1368. func (m *ResponseEcho) XXX_Merge(src proto.Message) {
  1369. xxx_messageInfo_ResponseEcho.Merge(m, src)
  1370. }
  1371. func (m *ResponseEcho) XXX_Size() int {
  1372. return m.Size()
  1373. }
  1374. func (m *ResponseEcho) XXX_DiscardUnknown() {
  1375. xxx_messageInfo_ResponseEcho.DiscardUnknown(m)
  1376. }
  1377. var xxx_messageInfo_ResponseEcho proto.InternalMessageInfo
  1378. func (m *ResponseEcho) GetMessage() string {
  1379. if m != nil {
  1380. return m.Message
  1381. }
  1382. return ""
  1383. }
  1384. type ResponseFlush struct {
  1385. }
  1386. func (m *ResponseFlush) Reset() { *m = ResponseFlush{} }
  1387. func (m *ResponseFlush) String() string { return proto.CompactTextString(m) }
  1388. func (*ResponseFlush) ProtoMessage() {}
  1389. func (*ResponseFlush) Descriptor() ([]byte, []int) {
  1390. return fileDescriptor_252557cfdd89a31a, []int{19}
  1391. }
  1392. func (m *ResponseFlush) XXX_Unmarshal(b []byte) error {
  1393. return m.Unmarshal(b)
  1394. }
  1395. func (m *ResponseFlush) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1396. if deterministic {
  1397. return xxx_messageInfo_ResponseFlush.Marshal(b, m, deterministic)
  1398. } else {
  1399. b = b[:cap(b)]
  1400. n, err := m.MarshalToSizedBuffer(b)
  1401. if err != nil {
  1402. return nil, err
  1403. }
  1404. return b[:n], nil
  1405. }
  1406. }
  1407. func (m *ResponseFlush) XXX_Merge(src proto.Message) {
  1408. xxx_messageInfo_ResponseFlush.Merge(m, src)
  1409. }
  1410. func (m *ResponseFlush) XXX_Size() int {
  1411. return m.Size()
  1412. }
  1413. func (m *ResponseFlush) XXX_DiscardUnknown() {
  1414. xxx_messageInfo_ResponseFlush.DiscardUnknown(m)
  1415. }
  1416. var xxx_messageInfo_ResponseFlush proto.InternalMessageInfo
  1417. type ResponseInfo struct {
  1418. Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
  1419. Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
  1420. AppVersion uint64 `protobuf:"varint,3,opt,name=app_version,json=appVersion,proto3" json:"app_version,omitempty"`
  1421. LastBlockHeight int64 `protobuf:"varint,4,opt,name=last_block_height,json=lastBlockHeight,proto3" json:"last_block_height,omitempty"`
  1422. LastBlockAppHash []byte `protobuf:"bytes,5,opt,name=last_block_app_hash,json=lastBlockAppHash,proto3" json:"last_block_app_hash,omitempty"`
  1423. }
  1424. func (m *ResponseInfo) Reset() { *m = ResponseInfo{} }
  1425. func (m *ResponseInfo) String() string { return proto.CompactTextString(m) }
  1426. func (*ResponseInfo) ProtoMessage() {}
  1427. func (*ResponseInfo) Descriptor() ([]byte, []int) {
  1428. return fileDescriptor_252557cfdd89a31a, []int{20}
  1429. }
  1430. func (m *ResponseInfo) XXX_Unmarshal(b []byte) error {
  1431. return m.Unmarshal(b)
  1432. }
  1433. func (m *ResponseInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1434. if deterministic {
  1435. return xxx_messageInfo_ResponseInfo.Marshal(b, m, deterministic)
  1436. } else {
  1437. b = b[:cap(b)]
  1438. n, err := m.MarshalToSizedBuffer(b)
  1439. if err != nil {
  1440. return nil, err
  1441. }
  1442. return b[:n], nil
  1443. }
  1444. }
  1445. func (m *ResponseInfo) XXX_Merge(src proto.Message) {
  1446. xxx_messageInfo_ResponseInfo.Merge(m, src)
  1447. }
  1448. func (m *ResponseInfo) XXX_Size() int {
  1449. return m.Size()
  1450. }
  1451. func (m *ResponseInfo) XXX_DiscardUnknown() {
  1452. xxx_messageInfo_ResponseInfo.DiscardUnknown(m)
  1453. }
  1454. var xxx_messageInfo_ResponseInfo proto.InternalMessageInfo
  1455. func (m *ResponseInfo) GetData() string {
  1456. if m != nil {
  1457. return m.Data
  1458. }
  1459. return ""
  1460. }
  1461. func (m *ResponseInfo) GetVersion() string {
  1462. if m != nil {
  1463. return m.Version
  1464. }
  1465. return ""
  1466. }
  1467. func (m *ResponseInfo) GetAppVersion() uint64 {
  1468. if m != nil {
  1469. return m.AppVersion
  1470. }
  1471. return 0
  1472. }
  1473. func (m *ResponseInfo) GetLastBlockHeight() int64 {
  1474. if m != nil {
  1475. return m.LastBlockHeight
  1476. }
  1477. return 0
  1478. }
  1479. func (m *ResponseInfo) GetLastBlockAppHash() []byte {
  1480. if m != nil {
  1481. return m.LastBlockAppHash
  1482. }
  1483. return nil
  1484. }
  1485. // nondeterministic
  1486. type ResponseSetOption struct {
  1487. Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
  1488. // bytes data = 2;
  1489. Log string `protobuf:"bytes,3,opt,name=log,proto3" json:"log,omitempty"`
  1490. Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
  1491. }
  1492. func (m *ResponseSetOption) Reset() { *m = ResponseSetOption{} }
  1493. func (m *ResponseSetOption) String() string { return proto.CompactTextString(m) }
  1494. func (*ResponseSetOption) ProtoMessage() {}
  1495. func (*ResponseSetOption) Descriptor() ([]byte, []int) {
  1496. return fileDescriptor_252557cfdd89a31a, []int{21}
  1497. }
  1498. func (m *ResponseSetOption) XXX_Unmarshal(b []byte) error {
  1499. return m.Unmarshal(b)
  1500. }
  1501. func (m *ResponseSetOption) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1502. if deterministic {
  1503. return xxx_messageInfo_ResponseSetOption.Marshal(b, m, deterministic)
  1504. } else {
  1505. b = b[:cap(b)]
  1506. n, err := m.MarshalToSizedBuffer(b)
  1507. if err != nil {
  1508. return nil, err
  1509. }
  1510. return b[:n], nil
  1511. }
  1512. }
  1513. func (m *ResponseSetOption) XXX_Merge(src proto.Message) {
  1514. xxx_messageInfo_ResponseSetOption.Merge(m, src)
  1515. }
  1516. func (m *ResponseSetOption) XXX_Size() int {
  1517. return m.Size()
  1518. }
  1519. func (m *ResponseSetOption) XXX_DiscardUnknown() {
  1520. xxx_messageInfo_ResponseSetOption.DiscardUnknown(m)
  1521. }
  1522. var xxx_messageInfo_ResponseSetOption proto.InternalMessageInfo
  1523. func (m *ResponseSetOption) GetCode() uint32 {
  1524. if m != nil {
  1525. return m.Code
  1526. }
  1527. return 0
  1528. }
  1529. func (m *ResponseSetOption) GetLog() string {
  1530. if m != nil {
  1531. return m.Log
  1532. }
  1533. return ""
  1534. }
  1535. func (m *ResponseSetOption) GetInfo() string {
  1536. if m != nil {
  1537. return m.Info
  1538. }
  1539. return ""
  1540. }
  1541. type ResponseInitChain struct {
  1542. ConsensusParams *ConsensusParams `protobuf:"bytes,1,opt,name=consensus_params,json=consensusParams,proto3" json:"consensus_params,omitempty"`
  1543. Validators []ValidatorUpdate `protobuf:"bytes,2,rep,name=validators,proto3" json:"validators"`
  1544. }
  1545. func (m *ResponseInitChain) Reset() { *m = ResponseInitChain{} }
  1546. func (m *ResponseInitChain) String() string { return proto.CompactTextString(m) }
  1547. func (*ResponseInitChain) ProtoMessage() {}
  1548. func (*ResponseInitChain) Descriptor() ([]byte, []int) {
  1549. return fileDescriptor_252557cfdd89a31a, []int{22}
  1550. }
  1551. func (m *ResponseInitChain) XXX_Unmarshal(b []byte) error {
  1552. return m.Unmarshal(b)
  1553. }
  1554. func (m *ResponseInitChain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1555. if deterministic {
  1556. return xxx_messageInfo_ResponseInitChain.Marshal(b, m, deterministic)
  1557. } else {
  1558. b = b[:cap(b)]
  1559. n, err := m.MarshalToSizedBuffer(b)
  1560. if err != nil {
  1561. return nil, err
  1562. }
  1563. return b[:n], nil
  1564. }
  1565. }
  1566. func (m *ResponseInitChain) XXX_Merge(src proto.Message) {
  1567. xxx_messageInfo_ResponseInitChain.Merge(m, src)
  1568. }
  1569. func (m *ResponseInitChain) XXX_Size() int {
  1570. return m.Size()
  1571. }
  1572. func (m *ResponseInitChain) XXX_DiscardUnknown() {
  1573. xxx_messageInfo_ResponseInitChain.DiscardUnknown(m)
  1574. }
  1575. var xxx_messageInfo_ResponseInitChain proto.InternalMessageInfo
  1576. func (m *ResponseInitChain) GetConsensusParams() *ConsensusParams {
  1577. if m != nil {
  1578. return m.ConsensusParams
  1579. }
  1580. return nil
  1581. }
  1582. func (m *ResponseInitChain) GetValidators() []ValidatorUpdate {
  1583. if m != nil {
  1584. return m.Validators
  1585. }
  1586. return nil
  1587. }
  1588. type ResponseQuery struct {
  1589. Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
  1590. // bytes data = 2; // use "value" instead.
  1591. Log string `protobuf:"bytes,3,opt,name=log,proto3" json:"log,omitempty"`
  1592. Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
  1593. Index int64 `protobuf:"varint,5,opt,name=index,proto3" json:"index,omitempty"`
  1594. Key []byte `protobuf:"bytes,6,opt,name=key,proto3" json:"key,omitempty"`
  1595. Value []byte `protobuf:"bytes,7,opt,name=value,proto3" json:"value,omitempty"`
  1596. ProofOps *crypto.ProofOps `protobuf:"bytes,8,opt,name=proof_ops,json=proofOps,proto3" json:"proof_ops,omitempty"`
  1597. Height int64 `protobuf:"varint,9,opt,name=height,proto3" json:"height,omitempty"`
  1598. Codespace string `protobuf:"bytes,10,opt,name=codespace,proto3" json:"codespace,omitempty"`
  1599. }
  1600. func (m *ResponseQuery) Reset() { *m = ResponseQuery{} }
  1601. func (m *ResponseQuery) String() string { return proto.CompactTextString(m) }
  1602. func (*ResponseQuery) ProtoMessage() {}
  1603. func (*ResponseQuery) Descriptor() ([]byte, []int) {
  1604. return fileDescriptor_252557cfdd89a31a, []int{23}
  1605. }
  1606. func (m *ResponseQuery) XXX_Unmarshal(b []byte) error {
  1607. return m.Unmarshal(b)
  1608. }
  1609. func (m *ResponseQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1610. if deterministic {
  1611. return xxx_messageInfo_ResponseQuery.Marshal(b, m, deterministic)
  1612. } else {
  1613. b = b[:cap(b)]
  1614. n, err := m.MarshalToSizedBuffer(b)
  1615. if err != nil {
  1616. return nil, err
  1617. }
  1618. return b[:n], nil
  1619. }
  1620. }
  1621. func (m *ResponseQuery) XXX_Merge(src proto.Message) {
  1622. xxx_messageInfo_ResponseQuery.Merge(m, src)
  1623. }
  1624. func (m *ResponseQuery) XXX_Size() int {
  1625. return m.Size()
  1626. }
  1627. func (m *ResponseQuery) XXX_DiscardUnknown() {
  1628. xxx_messageInfo_ResponseQuery.DiscardUnknown(m)
  1629. }
  1630. var xxx_messageInfo_ResponseQuery proto.InternalMessageInfo
  1631. func (m *ResponseQuery) GetCode() uint32 {
  1632. if m != nil {
  1633. return m.Code
  1634. }
  1635. return 0
  1636. }
  1637. func (m *ResponseQuery) GetLog() string {
  1638. if m != nil {
  1639. return m.Log
  1640. }
  1641. return ""
  1642. }
  1643. func (m *ResponseQuery) GetInfo() string {
  1644. if m != nil {
  1645. return m.Info
  1646. }
  1647. return ""
  1648. }
  1649. func (m *ResponseQuery) GetIndex() int64 {
  1650. if m != nil {
  1651. return m.Index
  1652. }
  1653. return 0
  1654. }
  1655. func (m *ResponseQuery) GetKey() []byte {
  1656. if m != nil {
  1657. return m.Key
  1658. }
  1659. return nil
  1660. }
  1661. func (m *ResponseQuery) GetValue() []byte {
  1662. if m != nil {
  1663. return m.Value
  1664. }
  1665. return nil
  1666. }
  1667. func (m *ResponseQuery) GetProofOps() *crypto.ProofOps {
  1668. if m != nil {
  1669. return m.ProofOps
  1670. }
  1671. return nil
  1672. }
  1673. func (m *ResponseQuery) GetHeight() int64 {
  1674. if m != nil {
  1675. return m.Height
  1676. }
  1677. return 0
  1678. }
  1679. func (m *ResponseQuery) GetCodespace() string {
  1680. if m != nil {
  1681. return m.Codespace
  1682. }
  1683. return ""
  1684. }
  1685. type ResponseBeginBlock struct {
  1686. Events []Event `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"`
  1687. }
  1688. func (m *ResponseBeginBlock) Reset() { *m = ResponseBeginBlock{} }
  1689. func (m *ResponseBeginBlock) String() string { return proto.CompactTextString(m) }
  1690. func (*ResponseBeginBlock) ProtoMessage() {}
  1691. func (*ResponseBeginBlock) Descriptor() ([]byte, []int) {
  1692. return fileDescriptor_252557cfdd89a31a, []int{24}
  1693. }
  1694. func (m *ResponseBeginBlock) XXX_Unmarshal(b []byte) error {
  1695. return m.Unmarshal(b)
  1696. }
  1697. func (m *ResponseBeginBlock) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1698. if deterministic {
  1699. return xxx_messageInfo_ResponseBeginBlock.Marshal(b, m, deterministic)
  1700. } else {
  1701. b = b[:cap(b)]
  1702. n, err := m.MarshalToSizedBuffer(b)
  1703. if err != nil {
  1704. return nil, err
  1705. }
  1706. return b[:n], nil
  1707. }
  1708. }
  1709. func (m *ResponseBeginBlock) XXX_Merge(src proto.Message) {
  1710. xxx_messageInfo_ResponseBeginBlock.Merge(m, src)
  1711. }
  1712. func (m *ResponseBeginBlock) XXX_Size() int {
  1713. return m.Size()
  1714. }
  1715. func (m *ResponseBeginBlock) XXX_DiscardUnknown() {
  1716. xxx_messageInfo_ResponseBeginBlock.DiscardUnknown(m)
  1717. }
  1718. var xxx_messageInfo_ResponseBeginBlock proto.InternalMessageInfo
  1719. func (m *ResponseBeginBlock) GetEvents() []Event {
  1720. if m != nil {
  1721. return m.Events
  1722. }
  1723. return nil
  1724. }
  1725. type ResponseCheckTx struct {
  1726. Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
  1727. Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
  1728. Log string `protobuf:"bytes,3,opt,name=log,proto3" json:"log,omitempty"`
  1729. Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
  1730. GasWanted int64 `protobuf:"varint,5,opt,name=gas_wanted,json=gasWanted,proto3" json:"gas_wanted,omitempty"`
  1731. GasUsed int64 `protobuf:"varint,6,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
  1732. Events []Event `protobuf:"bytes,7,rep,name=events,proto3" json:"events,omitempty"`
  1733. Codespace string `protobuf:"bytes,8,opt,name=codespace,proto3" json:"codespace,omitempty"`
  1734. }
  1735. func (m *ResponseCheckTx) Reset() { *m = ResponseCheckTx{} }
  1736. func (m *ResponseCheckTx) String() string { return proto.CompactTextString(m) }
  1737. func (*ResponseCheckTx) ProtoMessage() {}
  1738. func (*ResponseCheckTx) Descriptor() ([]byte, []int) {
  1739. return fileDescriptor_252557cfdd89a31a, []int{25}
  1740. }
  1741. func (m *ResponseCheckTx) XXX_Unmarshal(b []byte) error {
  1742. return m.Unmarshal(b)
  1743. }
  1744. func (m *ResponseCheckTx) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1745. if deterministic {
  1746. return xxx_messageInfo_ResponseCheckTx.Marshal(b, m, deterministic)
  1747. } else {
  1748. b = b[:cap(b)]
  1749. n, err := m.MarshalToSizedBuffer(b)
  1750. if err != nil {
  1751. return nil, err
  1752. }
  1753. return b[:n], nil
  1754. }
  1755. }
  1756. func (m *ResponseCheckTx) XXX_Merge(src proto.Message) {
  1757. xxx_messageInfo_ResponseCheckTx.Merge(m, src)
  1758. }
  1759. func (m *ResponseCheckTx) XXX_Size() int {
  1760. return m.Size()
  1761. }
  1762. func (m *ResponseCheckTx) XXX_DiscardUnknown() {
  1763. xxx_messageInfo_ResponseCheckTx.DiscardUnknown(m)
  1764. }
  1765. var xxx_messageInfo_ResponseCheckTx proto.InternalMessageInfo
  1766. func (m *ResponseCheckTx) GetCode() uint32 {
  1767. if m != nil {
  1768. return m.Code
  1769. }
  1770. return 0
  1771. }
  1772. func (m *ResponseCheckTx) GetData() []byte {
  1773. if m != nil {
  1774. return m.Data
  1775. }
  1776. return nil
  1777. }
  1778. func (m *ResponseCheckTx) GetLog() string {
  1779. if m != nil {
  1780. return m.Log
  1781. }
  1782. return ""
  1783. }
  1784. func (m *ResponseCheckTx) GetInfo() string {
  1785. if m != nil {
  1786. return m.Info
  1787. }
  1788. return ""
  1789. }
  1790. func (m *ResponseCheckTx) GetGasWanted() int64 {
  1791. if m != nil {
  1792. return m.GasWanted
  1793. }
  1794. return 0
  1795. }
  1796. func (m *ResponseCheckTx) GetGasUsed() int64 {
  1797. if m != nil {
  1798. return m.GasUsed
  1799. }
  1800. return 0
  1801. }
  1802. func (m *ResponseCheckTx) GetEvents() []Event {
  1803. if m != nil {
  1804. return m.Events
  1805. }
  1806. return nil
  1807. }
  1808. func (m *ResponseCheckTx) GetCodespace() string {
  1809. if m != nil {
  1810. return m.Codespace
  1811. }
  1812. return ""
  1813. }
  1814. type ResponseDeliverTx struct {
  1815. Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
  1816. Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
  1817. Log string `protobuf:"bytes,3,opt,name=log,proto3" json:"log,omitempty"`
  1818. Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
  1819. GasWanted int64 `protobuf:"varint,5,opt,name=gas_wanted,json=gasWanted,proto3" json:"gas_wanted,omitempty"`
  1820. GasUsed int64 `protobuf:"varint,6,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
  1821. Events []Event `protobuf:"bytes,7,rep,name=events,proto3" json:"events,omitempty"`
  1822. Codespace string `protobuf:"bytes,8,opt,name=codespace,proto3" json:"codespace,omitempty"`
  1823. }
  1824. func (m *ResponseDeliverTx) Reset() { *m = ResponseDeliverTx{} }
  1825. func (m *ResponseDeliverTx) String() string { return proto.CompactTextString(m) }
  1826. func (*ResponseDeliverTx) ProtoMessage() {}
  1827. func (*ResponseDeliverTx) Descriptor() ([]byte, []int) {
  1828. return fileDescriptor_252557cfdd89a31a, []int{26}
  1829. }
  1830. func (m *ResponseDeliverTx) XXX_Unmarshal(b []byte) error {
  1831. return m.Unmarshal(b)
  1832. }
  1833. func (m *ResponseDeliverTx) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1834. if deterministic {
  1835. return xxx_messageInfo_ResponseDeliverTx.Marshal(b, m, deterministic)
  1836. } else {
  1837. b = b[:cap(b)]
  1838. n, err := m.MarshalToSizedBuffer(b)
  1839. if err != nil {
  1840. return nil, err
  1841. }
  1842. return b[:n], nil
  1843. }
  1844. }
  1845. func (m *ResponseDeliverTx) XXX_Merge(src proto.Message) {
  1846. xxx_messageInfo_ResponseDeliverTx.Merge(m, src)
  1847. }
  1848. func (m *ResponseDeliverTx) XXX_Size() int {
  1849. return m.Size()
  1850. }
  1851. func (m *ResponseDeliverTx) XXX_DiscardUnknown() {
  1852. xxx_messageInfo_ResponseDeliverTx.DiscardUnknown(m)
  1853. }
  1854. var xxx_messageInfo_ResponseDeliverTx proto.InternalMessageInfo
  1855. func (m *ResponseDeliverTx) GetCode() uint32 {
  1856. if m != nil {
  1857. return m.Code
  1858. }
  1859. return 0
  1860. }
  1861. func (m *ResponseDeliverTx) GetData() []byte {
  1862. if m != nil {
  1863. return m.Data
  1864. }
  1865. return nil
  1866. }
  1867. func (m *ResponseDeliverTx) GetLog() string {
  1868. if m != nil {
  1869. return m.Log
  1870. }
  1871. return ""
  1872. }
  1873. func (m *ResponseDeliverTx) GetInfo() string {
  1874. if m != nil {
  1875. return m.Info
  1876. }
  1877. return ""
  1878. }
  1879. func (m *ResponseDeliverTx) GetGasWanted() int64 {
  1880. if m != nil {
  1881. return m.GasWanted
  1882. }
  1883. return 0
  1884. }
  1885. func (m *ResponseDeliverTx) GetGasUsed() int64 {
  1886. if m != nil {
  1887. return m.GasUsed
  1888. }
  1889. return 0
  1890. }
  1891. func (m *ResponseDeliverTx) GetEvents() []Event {
  1892. if m != nil {
  1893. return m.Events
  1894. }
  1895. return nil
  1896. }
  1897. func (m *ResponseDeliverTx) GetCodespace() string {
  1898. if m != nil {
  1899. return m.Codespace
  1900. }
  1901. return ""
  1902. }
  1903. type ResponseEndBlock struct {
  1904. ValidatorUpdates []ValidatorUpdate `protobuf:"bytes,1,rep,name=validator_updates,json=validatorUpdates,proto3" json:"validator_updates"`
  1905. ConsensusParamUpdates *ConsensusParams `protobuf:"bytes,2,opt,name=consensus_param_updates,json=consensusParamUpdates,proto3" json:"consensus_param_updates,omitempty"`
  1906. Events []Event `protobuf:"bytes,3,rep,name=events,proto3" json:"events,omitempty"`
  1907. }
  1908. func (m *ResponseEndBlock) Reset() { *m = ResponseEndBlock{} }
  1909. func (m *ResponseEndBlock) String() string { return proto.CompactTextString(m) }
  1910. func (*ResponseEndBlock) ProtoMessage() {}
  1911. func (*ResponseEndBlock) Descriptor() ([]byte, []int) {
  1912. return fileDescriptor_252557cfdd89a31a, []int{27}
  1913. }
  1914. func (m *ResponseEndBlock) XXX_Unmarshal(b []byte) error {
  1915. return m.Unmarshal(b)
  1916. }
  1917. func (m *ResponseEndBlock) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1918. if deterministic {
  1919. return xxx_messageInfo_ResponseEndBlock.Marshal(b, m, deterministic)
  1920. } else {
  1921. b = b[:cap(b)]
  1922. n, err := m.MarshalToSizedBuffer(b)
  1923. if err != nil {
  1924. return nil, err
  1925. }
  1926. return b[:n], nil
  1927. }
  1928. }
  1929. func (m *ResponseEndBlock) XXX_Merge(src proto.Message) {
  1930. xxx_messageInfo_ResponseEndBlock.Merge(m, src)
  1931. }
  1932. func (m *ResponseEndBlock) XXX_Size() int {
  1933. return m.Size()
  1934. }
  1935. func (m *ResponseEndBlock) XXX_DiscardUnknown() {
  1936. xxx_messageInfo_ResponseEndBlock.DiscardUnknown(m)
  1937. }
  1938. var xxx_messageInfo_ResponseEndBlock proto.InternalMessageInfo
  1939. func (m *ResponseEndBlock) GetValidatorUpdates() []ValidatorUpdate {
  1940. if m != nil {
  1941. return m.ValidatorUpdates
  1942. }
  1943. return nil
  1944. }
  1945. func (m *ResponseEndBlock) GetConsensusParamUpdates() *ConsensusParams {
  1946. if m != nil {
  1947. return m.ConsensusParamUpdates
  1948. }
  1949. return nil
  1950. }
  1951. func (m *ResponseEndBlock) GetEvents() []Event {
  1952. if m != nil {
  1953. return m.Events
  1954. }
  1955. return nil
  1956. }
  1957. type ResponseCommit struct {
  1958. // reserve 1
  1959. Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
  1960. RetainHeight int64 `protobuf:"varint,3,opt,name=retain_height,json=retainHeight,proto3" json:"retain_height,omitempty"`
  1961. }
  1962. func (m *ResponseCommit) Reset() { *m = ResponseCommit{} }
  1963. func (m *ResponseCommit) String() string { return proto.CompactTextString(m) }
  1964. func (*ResponseCommit) ProtoMessage() {}
  1965. func (*ResponseCommit) Descriptor() ([]byte, []int) {
  1966. return fileDescriptor_252557cfdd89a31a, []int{28}
  1967. }
  1968. func (m *ResponseCommit) XXX_Unmarshal(b []byte) error {
  1969. return m.Unmarshal(b)
  1970. }
  1971. func (m *ResponseCommit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1972. if deterministic {
  1973. return xxx_messageInfo_ResponseCommit.Marshal(b, m, deterministic)
  1974. } else {
  1975. b = b[:cap(b)]
  1976. n, err := m.MarshalToSizedBuffer(b)
  1977. if err != nil {
  1978. return nil, err
  1979. }
  1980. return b[:n], nil
  1981. }
  1982. }
  1983. func (m *ResponseCommit) XXX_Merge(src proto.Message) {
  1984. xxx_messageInfo_ResponseCommit.Merge(m, src)
  1985. }
  1986. func (m *ResponseCommit) XXX_Size() int {
  1987. return m.Size()
  1988. }
  1989. func (m *ResponseCommit) XXX_DiscardUnknown() {
  1990. xxx_messageInfo_ResponseCommit.DiscardUnknown(m)
  1991. }
  1992. var xxx_messageInfo_ResponseCommit proto.InternalMessageInfo
  1993. func (m *ResponseCommit) GetData() []byte {
  1994. if m != nil {
  1995. return m.Data
  1996. }
  1997. return nil
  1998. }
  1999. func (m *ResponseCommit) GetRetainHeight() int64 {
  2000. if m != nil {
  2001. return m.RetainHeight
  2002. }
  2003. return 0
  2004. }
  2005. type ResponseListSnapshots struct {
  2006. Snapshots []*Snapshot `protobuf:"bytes,1,rep,name=snapshots,proto3" json:"snapshots,omitempty"`
  2007. }
  2008. func (m *ResponseListSnapshots) Reset() { *m = ResponseListSnapshots{} }
  2009. func (m *ResponseListSnapshots) String() string { return proto.CompactTextString(m) }
  2010. func (*ResponseListSnapshots) ProtoMessage() {}
  2011. func (*ResponseListSnapshots) Descriptor() ([]byte, []int) {
  2012. return fileDescriptor_252557cfdd89a31a, []int{29}
  2013. }
  2014. func (m *ResponseListSnapshots) XXX_Unmarshal(b []byte) error {
  2015. return m.Unmarshal(b)
  2016. }
  2017. func (m *ResponseListSnapshots) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2018. if deterministic {
  2019. return xxx_messageInfo_ResponseListSnapshots.Marshal(b, m, deterministic)
  2020. } else {
  2021. b = b[:cap(b)]
  2022. n, err := m.MarshalToSizedBuffer(b)
  2023. if err != nil {
  2024. return nil, err
  2025. }
  2026. return b[:n], nil
  2027. }
  2028. }
  2029. func (m *ResponseListSnapshots) XXX_Merge(src proto.Message) {
  2030. xxx_messageInfo_ResponseListSnapshots.Merge(m, src)
  2031. }
  2032. func (m *ResponseListSnapshots) XXX_Size() int {
  2033. return m.Size()
  2034. }
  2035. func (m *ResponseListSnapshots) XXX_DiscardUnknown() {
  2036. xxx_messageInfo_ResponseListSnapshots.DiscardUnknown(m)
  2037. }
  2038. var xxx_messageInfo_ResponseListSnapshots proto.InternalMessageInfo
  2039. func (m *ResponseListSnapshots) GetSnapshots() []*Snapshot {
  2040. if m != nil {
  2041. return m.Snapshots
  2042. }
  2043. return nil
  2044. }
  2045. type ResponseOfferSnapshot struct {
  2046. Result ResponseOfferSnapshot_Result `protobuf:"varint,1,opt,name=result,proto3,enum=tendermint.abci.ResponseOfferSnapshot_Result" json:"result,omitempty"`
  2047. }
  2048. func (m *ResponseOfferSnapshot) Reset() { *m = ResponseOfferSnapshot{} }
  2049. func (m *ResponseOfferSnapshot) String() string { return proto.CompactTextString(m) }
  2050. func (*ResponseOfferSnapshot) ProtoMessage() {}
  2051. func (*ResponseOfferSnapshot) Descriptor() ([]byte, []int) {
  2052. return fileDescriptor_252557cfdd89a31a, []int{30}
  2053. }
  2054. func (m *ResponseOfferSnapshot) XXX_Unmarshal(b []byte) error {
  2055. return m.Unmarshal(b)
  2056. }
  2057. func (m *ResponseOfferSnapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2058. if deterministic {
  2059. return xxx_messageInfo_ResponseOfferSnapshot.Marshal(b, m, deterministic)
  2060. } else {
  2061. b = b[:cap(b)]
  2062. n, err := m.MarshalToSizedBuffer(b)
  2063. if err != nil {
  2064. return nil, err
  2065. }
  2066. return b[:n], nil
  2067. }
  2068. }
  2069. func (m *ResponseOfferSnapshot) XXX_Merge(src proto.Message) {
  2070. xxx_messageInfo_ResponseOfferSnapshot.Merge(m, src)
  2071. }
  2072. func (m *ResponseOfferSnapshot) XXX_Size() int {
  2073. return m.Size()
  2074. }
  2075. func (m *ResponseOfferSnapshot) XXX_DiscardUnknown() {
  2076. xxx_messageInfo_ResponseOfferSnapshot.DiscardUnknown(m)
  2077. }
  2078. var xxx_messageInfo_ResponseOfferSnapshot proto.InternalMessageInfo
  2079. func (m *ResponseOfferSnapshot) GetResult() ResponseOfferSnapshot_Result {
  2080. if m != nil {
  2081. return m.Result
  2082. }
  2083. return ResponseOfferSnapshot_UNKNOWN
  2084. }
  2085. type ResponseLoadSnapshotChunk struct {
  2086. Chunk []byte `protobuf:"bytes,1,opt,name=chunk,proto3" json:"chunk,omitempty"`
  2087. }
  2088. func (m *ResponseLoadSnapshotChunk) Reset() { *m = ResponseLoadSnapshotChunk{} }
  2089. func (m *ResponseLoadSnapshotChunk) String() string { return proto.CompactTextString(m) }
  2090. func (*ResponseLoadSnapshotChunk) ProtoMessage() {}
  2091. func (*ResponseLoadSnapshotChunk) Descriptor() ([]byte, []int) {
  2092. return fileDescriptor_252557cfdd89a31a, []int{31}
  2093. }
  2094. func (m *ResponseLoadSnapshotChunk) XXX_Unmarshal(b []byte) error {
  2095. return m.Unmarshal(b)
  2096. }
  2097. func (m *ResponseLoadSnapshotChunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2098. if deterministic {
  2099. return xxx_messageInfo_ResponseLoadSnapshotChunk.Marshal(b, m, deterministic)
  2100. } else {
  2101. b = b[:cap(b)]
  2102. n, err := m.MarshalToSizedBuffer(b)
  2103. if err != nil {
  2104. return nil, err
  2105. }
  2106. return b[:n], nil
  2107. }
  2108. }
  2109. func (m *ResponseLoadSnapshotChunk) XXX_Merge(src proto.Message) {
  2110. xxx_messageInfo_ResponseLoadSnapshotChunk.Merge(m, src)
  2111. }
  2112. func (m *ResponseLoadSnapshotChunk) XXX_Size() int {
  2113. return m.Size()
  2114. }
  2115. func (m *ResponseLoadSnapshotChunk) XXX_DiscardUnknown() {
  2116. xxx_messageInfo_ResponseLoadSnapshotChunk.DiscardUnknown(m)
  2117. }
  2118. var xxx_messageInfo_ResponseLoadSnapshotChunk proto.InternalMessageInfo
  2119. func (m *ResponseLoadSnapshotChunk) GetChunk() []byte {
  2120. if m != nil {
  2121. return m.Chunk
  2122. }
  2123. return nil
  2124. }
  2125. type ResponseApplySnapshotChunk struct {
  2126. Result ResponseApplySnapshotChunk_Result `protobuf:"varint,1,opt,name=result,proto3,enum=tendermint.abci.ResponseApplySnapshotChunk_Result" json:"result,omitempty"`
  2127. RefetchChunks []uint32 `protobuf:"varint,2,rep,packed,name=refetch_chunks,json=refetchChunks,proto3" json:"refetch_chunks,omitempty"`
  2128. RejectSenders []string `protobuf:"bytes,3,rep,name=reject_senders,json=rejectSenders,proto3" json:"reject_senders,omitempty"`
  2129. }
  2130. func (m *ResponseApplySnapshotChunk) Reset() { *m = ResponseApplySnapshotChunk{} }
  2131. func (m *ResponseApplySnapshotChunk) String() string { return proto.CompactTextString(m) }
  2132. func (*ResponseApplySnapshotChunk) ProtoMessage() {}
  2133. func (*ResponseApplySnapshotChunk) Descriptor() ([]byte, []int) {
  2134. return fileDescriptor_252557cfdd89a31a, []int{32}
  2135. }
  2136. func (m *ResponseApplySnapshotChunk) XXX_Unmarshal(b []byte) error {
  2137. return m.Unmarshal(b)
  2138. }
  2139. func (m *ResponseApplySnapshotChunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2140. if deterministic {
  2141. return xxx_messageInfo_ResponseApplySnapshotChunk.Marshal(b, m, deterministic)
  2142. } else {
  2143. b = b[:cap(b)]
  2144. n, err := m.MarshalToSizedBuffer(b)
  2145. if err != nil {
  2146. return nil, err
  2147. }
  2148. return b[:n], nil
  2149. }
  2150. }
  2151. func (m *ResponseApplySnapshotChunk) XXX_Merge(src proto.Message) {
  2152. xxx_messageInfo_ResponseApplySnapshotChunk.Merge(m, src)
  2153. }
  2154. func (m *ResponseApplySnapshotChunk) XXX_Size() int {
  2155. return m.Size()
  2156. }
  2157. func (m *ResponseApplySnapshotChunk) XXX_DiscardUnknown() {
  2158. xxx_messageInfo_ResponseApplySnapshotChunk.DiscardUnknown(m)
  2159. }
  2160. var xxx_messageInfo_ResponseApplySnapshotChunk proto.InternalMessageInfo
  2161. func (m *ResponseApplySnapshotChunk) GetResult() ResponseApplySnapshotChunk_Result {
  2162. if m != nil {
  2163. return m.Result
  2164. }
  2165. return ResponseApplySnapshotChunk_UNKNOWN
  2166. }
  2167. func (m *ResponseApplySnapshotChunk) GetRefetchChunks() []uint32 {
  2168. if m != nil {
  2169. return m.RefetchChunks
  2170. }
  2171. return nil
  2172. }
  2173. func (m *ResponseApplySnapshotChunk) GetRejectSenders() []string {
  2174. if m != nil {
  2175. return m.RejectSenders
  2176. }
  2177. return nil
  2178. }
  2179. // ConsensusParams contains all consensus-relevant parameters
  2180. // that can be adjusted by the abci app
  2181. type ConsensusParams struct {
  2182. Block *BlockParams `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"`
  2183. Evidence *types1.EvidenceParams `protobuf:"bytes,2,opt,name=evidence,proto3" json:"evidence,omitempty"`
  2184. Validator *types1.ValidatorParams `protobuf:"bytes,3,opt,name=validator,proto3" json:"validator,omitempty"`
  2185. Version *types1.VersionParams `protobuf:"bytes,4,opt,name=version,proto3" json:"version,omitempty"`
  2186. }
  2187. func (m *ConsensusParams) Reset() { *m = ConsensusParams{} }
  2188. func (m *ConsensusParams) String() string { return proto.CompactTextString(m) }
  2189. func (*ConsensusParams) ProtoMessage() {}
  2190. func (*ConsensusParams) Descriptor() ([]byte, []int) {
  2191. return fileDescriptor_252557cfdd89a31a, []int{33}
  2192. }
  2193. func (m *ConsensusParams) XXX_Unmarshal(b []byte) error {
  2194. return m.Unmarshal(b)
  2195. }
  2196. func (m *ConsensusParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2197. if deterministic {
  2198. return xxx_messageInfo_ConsensusParams.Marshal(b, m, deterministic)
  2199. } else {
  2200. b = b[:cap(b)]
  2201. n, err := m.MarshalToSizedBuffer(b)
  2202. if err != nil {
  2203. return nil, err
  2204. }
  2205. return b[:n], nil
  2206. }
  2207. }
  2208. func (m *ConsensusParams) XXX_Merge(src proto.Message) {
  2209. xxx_messageInfo_ConsensusParams.Merge(m, src)
  2210. }
  2211. func (m *ConsensusParams) XXX_Size() int {
  2212. return m.Size()
  2213. }
  2214. func (m *ConsensusParams) XXX_DiscardUnknown() {
  2215. xxx_messageInfo_ConsensusParams.DiscardUnknown(m)
  2216. }
  2217. var xxx_messageInfo_ConsensusParams proto.InternalMessageInfo
  2218. func (m *ConsensusParams) GetBlock() *BlockParams {
  2219. if m != nil {
  2220. return m.Block
  2221. }
  2222. return nil
  2223. }
  2224. func (m *ConsensusParams) GetEvidence() *types1.EvidenceParams {
  2225. if m != nil {
  2226. return m.Evidence
  2227. }
  2228. return nil
  2229. }
  2230. func (m *ConsensusParams) GetValidator() *types1.ValidatorParams {
  2231. if m != nil {
  2232. return m.Validator
  2233. }
  2234. return nil
  2235. }
  2236. func (m *ConsensusParams) GetVersion() *types1.VersionParams {
  2237. if m != nil {
  2238. return m.Version
  2239. }
  2240. return nil
  2241. }
  2242. // BlockParams contains limits on the block size.
  2243. type BlockParams struct {
  2244. // Note: must be greater than 0
  2245. MaxBytes int64 `protobuf:"varint,1,opt,name=max_bytes,json=maxBytes,proto3" json:"max_bytes,omitempty"`
  2246. // Note: must be greater or equal to -1
  2247. MaxGas int64 `protobuf:"varint,2,opt,name=max_gas,json=maxGas,proto3" json:"max_gas,omitempty"`
  2248. }
  2249. func (m *BlockParams) Reset() { *m = BlockParams{} }
  2250. func (m *BlockParams) String() string { return proto.CompactTextString(m) }
  2251. func (*BlockParams) ProtoMessage() {}
  2252. func (*BlockParams) Descriptor() ([]byte, []int) {
  2253. return fileDescriptor_252557cfdd89a31a, []int{34}
  2254. }
  2255. func (m *BlockParams) XXX_Unmarshal(b []byte) error {
  2256. return m.Unmarshal(b)
  2257. }
  2258. func (m *BlockParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2259. if deterministic {
  2260. return xxx_messageInfo_BlockParams.Marshal(b, m, deterministic)
  2261. } else {
  2262. b = b[:cap(b)]
  2263. n, err := m.MarshalToSizedBuffer(b)
  2264. if err != nil {
  2265. return nil, err
  2266. }
  2267. return b[:n], nil
  2268. }
  2269. }
  2270. func (m *BlockParams) XXX_Merge(src proto.Message) {
  2271. xxx_messageInfo_BlockParams.Merge(m, src)
  2272. }
  2273. func (m *BlockParams) XXX_Size() int {
  2274. return m.Size()
  2275. }
  2276. func (m *BlockParams) XXX_DiscardUnknown() {
  2277. xxx_messageInfo_BlockParams.DiscardUnknown(m)
  2278. }
  2279. var xxx_messageInfo_BlockParams proto.InternalMessageInfo
  2280. func (m *BlockParams) GetMaxBytes() int64 {
  2281. if m != nil {
  2282. return m.MaxBytes
  2283. }
  2284. return 0
  2285. }
  2286. func (m *BlockParams) GetMaxGas() int64 {
  2287. if m != nil {
  2288. return m.MaxGas
  2289. }
  2290. return 0
  2291. }
  2292. type LastCommitInfo struct {
  2293. Round int32 `protobuf:"varint,1,opt,name=round,proto3" json:"round,omitempty"`
  2294. Votes []VoteInfo `protobuf:"bytes,2,rep,name=votes,proto3" json:"votes"`
  2295. }
  2296. func (m *LastCommitInfo) Reset() { *m = LastCommitInfo{} }
  2297. func (m *LastCommitInfo) String() string { return proto.CompactTextString(m) }
  2298. func (*LastCommitInfo) ProtoMessage() {}
  2299. func (*LastCommitInfo) Descriptor() ([]byte, []int) {
  2300. return fileDescriptor_252557cfdd89a31a, []int{35}
  2301. }
  2302. func (m *LastCommitInfo) XXX_Unmarshal(b []byte) error {
  2303. return m.Unmarshal(b)
  2304. }
  2305. func (m *LastCommitInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2306. if deterministic {
  2307. return xxx_messageInfo_LastCommitInfo.Marshal(b, m, deterministic)
  2308. } else {
  2309. b = b[:cap(b)]
  2310. n, err := m.MarshalToSizedBuffer(b)
  2311. if err != nil {
  2312. return nil, err
  2313. }
  2314. return b[:n], nil
  2315. }
  2316. }
  2317. func (m *LastCommitInfo) XXX_Merge(src proto.Message) {
  2318. xxx_messageInfo_LastCommitInfo.Merge(m, src)
  2319. }
  2320. func (m *LastCommitInfo) XXX_Size() int {
  2321. return m.Size()
  2322. }
  2323. func (m *LastCommitInfo) XXX_DiscardUnknown() {
  2324. xxx_messageInfo_LastCommitInfo.DiscardUnknown(m)
  2325. }
  2326. var xxx_messageInfo_LastCommitInfo proto.InternalMessageInfo
  2327. func (m *LastCommitInfo) GetRound() int32 {
  2328. if m != nil {
  2329. return m.Round
  2330. }
  2331. return 0
  2332. }
  2333. func (m *LastCommitInfo) GetVotes() []VoteInfo {
  2334. if m != nil {
  2335. return m.Votes
  2336. }
  2337. return nil
  2338. }
  2339. // EventAttribute represents an event to the indexing service.
  2340. type EventAttribute struct {
  2341. Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
  2342. Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  2343. Index bool `protobuf:"varint,3,opt,name=index,proto3" json:"index,omitempty"`
  2344. }
  2345. func (m *EventAttribute) Reset() { *m = EventAttribute{} }
  2346. func (m *EventAttribute) String() string { return proto.CompactTextString(m) }
  2347. func (*EventAttribute) ProtoMessage() {}
  2348. func (*EventAttribute) Descriptor() ([]byte, []int) {
  2349. return fileDescriptor_252557cfdd89a31a, []int{36}
  2350. }
  2351. func (m *EventAttribute) XXX_Unmarshal(b []byte) error {
  2352. return m.Unmarshal(b)
  2353. }
  2354. func (m *EventAttribute) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2355. if deterministic {
  2356. return xxx_messageInfo_EventAttribute.Marshal(b, m, deterministic)
  2357. } else {
  2358. b = b[:cap(b)]
  2359. n, err := m.MarshalToSizedBuffer(b)
  2360. if err != nil {
  2361. return nil, err
  2362. }
  2363. return b[:n], nil
  2364. }
  2365. }
  2366. func (m *EventAttribute) XXX_Merge(src proto.Message) {
  2367. xxx_messageInfo_EventAttribute.Merge(m, src)
  2368. }
  2369. func (m *EventAttribute) XXX_Size() int {
  2370. return m.Size()
  2371. }
  2372. func (m *EventAttribute) XXX_DiscardUnknown() {
  2373. xxx_messageInfo_EventAttribute.DiscardUnknown(m)
  2374. }
  2375. var xxx_messageInfo_EventAttribute proto.InternalMessageInfo
  2376. func (m *EventAttribute) GetKey() []byte {
  2377. if m != nil {
  2378. return m.Key
  2379. }
  2380. return nil
  2381. }
  2382. func (m *EventAttribute) GetValue() []byte {
  2383. if m != nil {
  2384. return m.Value
  2385. }
  2386. return nil
  2387. }
  2388. func (m *EventAttribute) GetIndex() bool {
  2389. if m != nil {
  2390. return m.Index
  2391. }
  2392. return false
  2393. }
  2394. type Event struct {
  2395. Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
  2396. Attributes []EventAttribute `protobuf:"bytes,2,rep,name=attributes,proto3" json:"attributes,omitempty"`
  2397. }
  2398. func (m *Event) Reset() { *m = Event{} }
  2399. func (m *Event) String() string { return proto.CompactTextString(m) }
  2400. func (*Event) ProtoMessage() {}
  2401. func (*Event) Descriptor() ([]byte, []int) {
  2402. return fileDescriptor_252557cfdd89a31a, []int{37}
  2403. }
  2404. func (m *Event) XXX_Unmarshal(b []byte) error {
  2405. return m.Unmarshal(b)
  2406. }
  2407. func (m *Event) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2408. if deterministic {
  2409. return xxx_messageInfo_Event.Marshal(b, m, deterministic)
  2410. } else {
  2411. b = b[:cap(b)]
  2412. n, err := m.MarshalToSizedBuffer(b)
  2413. if err != nil {
  2414. return nil, err
  2415. }
  2416. return b[:n], nil
  2417. }
  2418. }
  2419. func (m *Event) XXX_Merge(src proto.Message) {
  2420. xxx_messageInfo_Event.Merge(m, src)
  2421. }
  2422. func (m *Event) XXX_Size() int {
  2423. return m.Size()
  2424. }
  2425. func (m *Event) XXX_DiscardUnknown() {
  2426. xxx_messageInfo_Event.DiscardUnknown(m)
  2427. }
  2428. var xxx_messageInfo_Event proto.InternalMessageInfo
  2429. func (m *Event) GetType() string {
  2430. if m != nil {
  2431. return m.Type
  2432. }
  2433. return ""
  2434. }
  2435. func (m *Event) GetAttributes() []EventAttribute {
  2436. if m != nil {
  2437. return m.Attributes
  2438. }
  2439. return nil
  2440. }
  2441. // TxResult contains results of executing the transaction.
  2442. //
  2443. // One usage is indexing transaction results.
  2444. type TxResult struct {
  2445. Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
  2446. Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
  2447. Tx []byte `protobuf:"bytes,3,opt,name=tx,proto3" json:"tx,omitempty"`
  2448. Result ResponseDeliverTx `protobuf:"bytes,4,opt,name=result,proto3" json:"result"`
  2449. }
  2450. func (m *TxResult) Reset() { *m = TxResult{} }
  2451. func (m *TxResult) String() string { return proto.CompactTextString(m) }
  2452. func (*TxResult) ProtoMessage() {}
  2453. func (*TxResult) Descriptor() ([]byte, []int) {
  2454. return fileDescriptor_252557cfdd89a31a, []int{38}
  2455. }
  2456. func (m *TxResult) XXX_Unmarshal(b []byte) error {
  2457. return m.Unmarshal(b)
  2458. }
  2459. func (m *TxResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2460. if deterministic {
  2461. return xxx_messageInfo_TxResult.Marshal(b, m, deterministic)
  2462. } else {
  2463. b = b[:cap(b)]
  2464. n, err := m.MarshalToSizedBuffer(b)
  2465. if err != nil {
  2466. return nil, err
  2467. }
  2468. return b[:n], nil
  2469. }
  2470. }
  2471. func (m *TxResult) XXX_Merge(src proto.Message) {
  2472. xxx_messageInfo_TxResult.Merge(m, src)
  2473. }
  2474. func (m *TxResult) XXX_Size() int {
  2475. return m.Size()
  2476. }
  2477. func (m *TxResult) XXX_DiscardUnknown() {
  2478. xxx_messageInfo_TxResult.DiscardUnknown(m)
  2479. }
  2480. var xxx_messageInfo_TxResult proto.InternalMessageInfo
  2481. func (m *TxResult) GetHeight() int64 {
  2482. if m != nil {
  2483. return m.Height
  2484. }
  2485. return 0
  2486. }
  2487. func (m *TxResult) GetIndex() uint32 {
  2488. if m != nil {
  2489. return m.Index
  2490. }
  2491. return 0
  2492. }
  2493. func (m *TxResult) GetTx() []byte {
  2494. if m != nil {
  2495. return m.Tx
  2496. }
  2497. return nil
  2498. }
  2499. func (m *TxResult) GetResult() ResponseDeliverTx {
  2500. if m != nil {
  2501. return m.Result
  2502. }
  2503. return ResponseDeliverTx{}
  2504. }
  2505. // Validator
  2506. type Validator struct {
  2507. Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
  2508. // PubKey pub_key = 2 [(gogoproto.nullable)=false];
  2509. Power int64 `protobuf:"varint,3,opt,name=power,proto3" json:"power,omitempty"`
  2510. }
  2511. func (m *Validator) Reset() { *m = Validator{} }
  2512. func (m *Validator) String() string { return proto.CompactTextString(m) }
  2513. func (*Validator) ProtoMessage() {}
  2514. func (*Validator) Descriptor() ([]byte, []int) {
  2515. return fileDescriptor_252557cfdd89a31a, []int{39}
  2516. }
  2517. func (m *Validator) XXX_Unmarshal(b []byte) error {
  2518. return m.Unmarshal(b)
  2519. }
  2520. func (m *Validator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2521. if deterministic {
  2522. return xxx_messageInfo_Validator.Marshal(b, m, deterministic)
  2523. } else {
  2524. b = b[:cap(b)]
  2525. n, err := m.MarshalToSizedBuffer(b)
  2526. if err != nil {
  2527. return nil, err
  2528. }
  2529. return b[:n], nil
  2530. }
  2531. }
  2532. func (m *Validator) XXX_Merge(src proto.Message) {
  2533. xxx_messageInfo_Validator.Merge(m, src)
  2534. }
  2535. func (m *Validator) XXX_Size() int {
  2536. return m.Size()
  2537. }
  2538. func (m *Validator) XXX_DiscardUnknown() {
  2539. xxx_messageInfo_Validator.DiscardUnknown(m)
  2540. }
  2541. var xxx_messageInfo_Validator proto.InternalMessageInfo
  2542. func (m *Validator) GetAddress() []byte {
  2543. if m != nil {
  2544. return m.Address
  2545. }
  2546. return nil
  2547. }
  2548. func (m *Validator) GetPower() int64 {
  2549. if m != nil {
  2550. return m.Power
  2551. }
  2552. return 0
  2553. }
  2554. // ValidatorUpdate
  2555. type ValidatorUpdate struct {
  2556. PubKey crypto.PublicKey `protobuf:"bytes,1,opt,name=pub_key,json=pubKey,proto3" json:"pub_key"`
  2557. Power int64 `protobuf:"varint,2,opt,name=power,proto3" json:"power,omitempty"`
  2558. }
  2559. func (m *ValidatorUpdate) Reset() { *m = ValidatorUpdate{} }
  2560. func (m *ValidatorUpdate) String() string { return proto.CompactTextString(m) }
  2561. func (*ValidatorUpdate) ProtoMessage() {}
  2562. func (*ValidatorUpdate) Descriptor() ([]byte, []int) {
  2563. return fileDescriptor_252557cfdd89a31a, []int{40}
  2564. }
  2565. func (m *ValidatorUpdate) XXX_Unmarshal(b []byte) error {
  2566. return m.Unmarshal(b)
  2567. }
  2568. func (m *ValidatorUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2569. if deterministic {
  2570. return xxx_messageInfo_ValidatorUpdate.Marshal(b, m, deterministic)
  2571. } else {
  2572. b = b[:cap(b)]
  2573. n, err := m.MarshalToSizedBuffer(b)
  2574. if err != nil {
  2575. return nil, err
  2576. }
  2577. return b[:n], nil
  2578. }
  2579. }
  2580. func (m *ValidatorUpdate) XXX_Merge(src proto.Message) {
  2581. xxx_messageInfo_ValidatorUpdate.Merge(m, src)
  2582. }
  2583. func (m *ValidatorUpdate) XXX_Size() int {
  2584. return m.Size()
  2585. }
  2586. func (m *ValidatorUpdate) XXX_DiscardUnknown() {
  2587. xxx_messageInfo_ValidatorUpdate.DiscardUnknown(m)
  2588. }
  2589. var xxx_messageInfo_ValidatorUpdate proto.InternalMessageInfo
  2590. func (m *ValidatorUpdate) GetPubKey() crypto.PublicKey {
  2591. if m != nil {
  2592. return m.PubKey
  2593. }
  2594. return crypto.PublicKey{}
  2595. }
  2596. func (m *ValidatorUpdate) GetPower() int64 {
  2597. if m != nil {
  2598. return m.Power
  2599. }
  2600. return 0
  2601. }
  2602. // VoteInfo
  2603. type VoteInfo struct {
  2604. Validator Validator `protobuf:"bytes,1,opt,name=validator,proto3" json:"validator"`
  2605. SignedLastBlock bool `protobuf:"varint,2,opt,name=signed_last_block,json=signedLastBlock,proto3" json:"signed_last_block,omitempty"`
  2606. }
  2607. func (m *VoteInfo) Reset() { *m = VoteInfo{} }
  2608. func (m *VoteInfo) String() string { return proto.CompactTextString(m) }
  2609. func (*VoteInfo) ProtoMessage() {}
  2610. func (*VoteInfo) Descriptor() ([]byte, []int) {
  2611. return fileDescriptor_252557cfdd89a31a, []int{41}
  2612. }
  2613. func (m *VoteInfo) XXX_Unmarshal(b []byte) error {
  2614. return m.Unmarshal(b)
  2615. }
  2616. func (m *VoteInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2617. if deterministic {
  2618. return xxx_messageInfo_VoteInfo.Marshal(b, m, deterministic)
  2619. } else {
  2620. b = b[:cap(b)]
  2621. n, err := m.MarshalToSizedBuffer(b)
  2622. if err != nil {
  2623. return nil, err
  2624. }
  2625. return b[:n], nil
  2626. }
  2627. }
  2628. func (m *VoteInfo) XXX_Merge(src proto.Message) {
  2629. xxx_messageInfo_VoteInfo.Merge(m, src)
  2630. }
  2631. func (m *VoteInfo) XXX_Size() int {
  2632. return m.Size()
  2633. }
  2634. func (m *VoteInfo) XXX_DiscardUnknown() {
  2635. xxx_messageInfo_VoteInfo.DiscardUnknown(m)
  2636. }
  2637. var xxx_messageInfo_VoteInfo proto.InternalMessageInfo
  2638. func (m *VoteInfo) GetValidator() Validator {
  2639. if m != nil {
  2640. return m.Validator
  2641. }
  2642. return Validator{}
  2643. }
  2644. func (m *VoteInfo) GetSignedLastBlock() bool {
  2645. if m != nil {
  2646. return m.SignedLastBlock
  2647. }
  2648. return false
  2649. }
  2650. type Evidence struct {
  2651. Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
  2652. Validator Validator `protobuf:"bytes,2,opt,name=validator,proto3" json:"validator"`
  2653. Height int64 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
  2654. Time time.Time `protobuf:"bytes,4,opt,name=time,proto3,stdtime" json:"time"`
  2655. // Total voting power of the validator set in case the ABCI application does
  2656. // not store historical validators.
  2657. // https://github.com/tendermint/tendermint/issues/4581
  2658. TotalVotingPower int64 `protobuf:"varint,5,opt,name=total_voting_power,json=totalVotingPower,proto3" json:"total_voting_power,omitempty"`
  2659. }
  2660. func (m *Evidence) Reset() { *m = Evidence{} }
  2661. func (m *Evidence) String() string { return proto.CompactTextString(m) }
  2662. func (*Evidence) ProtoMessage() {}
  2663. func (*Evidence) Descriptor() ([]byte, []int) {
  2664. return fileDescriptor_252557cfdd89a31a, []int{42}
  2665. }
  2666. func (m *Evidence) XXX_Unmarshal(b []byte) error {
  2667. return m.Unmarshal(b)
  2668. }
  2669. func (m *Evidence) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2670. if deterministic {
  2671. return xxx_messageInfo_Evidence.Marshal(b, m, deterministic)
  2672. } else {
  2673. b = b[:cap(b)]
  2674. n, err := m.MarshalToSizedBuffer(b)
  2675. if err != nil {
  2676. return nil, err
  2677. }
  2678. return b[:n], nil
  2679. }
  2680. }
  2681. func (m *Evidence) XXX_Merge(src proto.Message) {
  2682. xxx_messageInfo_Evidence.Merge(m, src)
  2683. }
  2684. func (m *Evidence) XXX_Size() int {
  2685. return m.Size()
  2686. }
  2687. func (m *Evidence) XXX_DiscardUnknown() {
  2688. xxx_messageInfo_Evidence.DiscardUnknown(m)
  2689. }
  2690. var xxx_messageInfo_Evidence proto.InternalMessageInfo
  2691. func (m *Evidence) GetType() string {
  2692. if m != nil {
  2693. return m.Type
  2694. }
  2695. return ""
  2696. }
  2697. func (m *Evidence) GetValidator() Validator {
  2698. if m != nil {
  2699. return m.Validator
  2700. }
  2701. return Validator{}
  2702. }
  2703. func (m *Evidence) GetHeight() int64 {
  2704. if m != nil {
  2705. return m.Height
  2706. }
  2707. return 0
  2708. }
  2709. func (m *Evidence) GetTime() time.Time {
  2710. if m != nil {
  2711. return m.Time
  2712. }
  2713. return time.Time{}
  2714. }
  2715. func (m *Evidence) GetTotalVotingPower() int64 {
  2716. if m != nil {
  2717. return m.TotalVotingPower
  2718. }
  2719. return 0
  2720. }
  2721. type Snapshot struct {
  2722. Height uint64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
  2723. Format uint32 `protobuf:"varint,2,opt,name=format,proto3" json:"format,omitempty"`
  2724. Chunks uint32 `protobuf:"varint,3,opt,name=chunks,proto3" json:"chunks,omitempty"`
  2725. Hash []byte `protobuf:"bytes,4,opt,name=hash,proto3" json:"hash,omitempty"`
  2726. Metadata []byte `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"`
  2727. }
  2728. func (m *Snapshot) Reset() { *m = Snapshot{} }
  2729. func (m *Snapshot) String() string { return proto.CompactTextString(m) }
  2730. func (*Snapshot) ProtoMessage() {}
  2731. func (*Snapshot) Descriptor() ([]byte, []int) {
  2732. return fileDescriptor_252557cfdd89a31a, []int{43}
  2733. }
  2734. func (m *Snapshot) XXX_Unmarshal(b []byte) error {
  2735. return m.Unmarshal(b)
  2736. }
  2737. func (m *Snapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2738. if deterministic {
  2739. return xxx_messageInfo_Snapshot.Marshal(b, m, deterministic)
  2740. } else {
  2741. b = b[:cap(b)]
  2742. n, err := m.MarshalToSizedBuffer(b)
  2743. if err != nil {
  2744. return nil, err
  2745. }
  2746. return b[:n], nil
  2747. }
  2748. }
  2749. func (m *Snapshot) XXX_Merge(src proto.Message) {
  2750. xxx_messageInfo_Snapshot.Merge(m, src)
  2751. }
  2752. func (m *Snapshot) XXX_Size() int {
  2753. return m.Size()
  2754. }
  2755. func (m *Snapshot) XXX_DiscardUnknown() {
  2756. xxx_messageInfo_Snapshot.DiscardUnknown(m)
  2757. }
  2758. var xxx_messageInfo_Snapshot proto.InternalMessageInfo
  2759. func (m *Snapshot) GetHeight() uint64 {
  2760. if m != nil {
  2761. return m.Height
  2762. }
  2763. return 0
  2764. }
  2765. func (m *Snapshot) GetFormat() uint32 {
  2766. if m != nil {
  2767. return m.Format
  2768. }
  2769. return 0
  2770. }
  2771. func (m *Snapshot) GetChunks() uint32 {
  2772. if m != nil {
  2773. return m.Chunks
  2774. }
  2775. return 0
  2776. }
  2777. func (m *Snapshot) GetHash() []byte {
  2778. if m != nil {
  2779. return m.Hash
  2780. }
  2781. return nil
  2782. }
  2783. func (m *Snapshot) GetMetadata() []byte {
  2784. if m != nil {
  2785. return m.Metadata
  2786. }
  2787. return nil
  2788. }
  2789. func init() {
  2790. proto.RegisterEnum("tendermint.abci.CheckTxType", CheckTxType_name, CheckTxType_value)
  2791. proto.RegisterEnum("tendermint.abci.ResponseOfferSnapshot_Result", ResponseOfferSnapshot_Result_name, ResponseOfferSnapshot_Result_value)
  2792. proto.RegisterEnum("tendermint.abci.ResponseApplySnapshotChunk_Result", ResponseApplySnapshotChunk_Result_name, ResponseApplySnapshotChunk_Result_value)
  2793. proto.RegisterType((*Request)(nil), "tendermint.abci.Request")
  2794. proto.RegisterType((*RequestEcho)(nil), "tendermint.abci.RequestEcho")
  2795. proto.RegisterType((*RequestFlush)(nil), "tendermint.abci.RequestFlush")
  2796. proto.RegisterType((*RequestInfo)(nil), "tendermint.abci.RequestInfo")
  2797. proto.RegisterType((*RequestSetOption)(nil), "tendermint.abci.RequestSetOption")
  2798. proto.RegisterType((*RequestInitChain)(nil), "tendermint.abci.RequestInitChain")
  2799. proto.RegisterType((*RequestQuery)(nil), "tendermint.abci.RequestQuery")
  2800. proto.RegisterType((*RequestBeginBlock)(nil), "tendermint.abci.RequestBeginBlock")
  2801. proto.RegisterType((*RequestCheckTx)(nil), "tendermint.abci.RequestCheckTx")
  2802. proto.RegisterType((*RequestDeliverTx)(nil), "tendermint.abci.RequestDeliverTx")
  2803. proto.RegisterType((*RequestEndBlock)(nil), "tendermint.abci.RequestEndBlock")
  2804. proto.RegisterType((*RequestCommit)(nil), "tendermint.abci.RequestCommit")
  2805. proto.RegisterType((*RequestListSnapshots)(nil), "tendermint.abci.RequestListSnapshots")
  2806. proto.RegisterType((*RequestOfferSnapshot)(nil), "tendermint.abci.RequestOfferSnapshot")
  2807. proto.RegisterType((*RequestLoadSnapshotChunk)(nil), "tendermint.abci.RequestLoadSnapshotChunk")
  2808. proto.RegisterType((*RequestApplySnapshotChunk)(nil), "tendermint.abci.RequestApplySnapshotChunk")
  2809. proto.RegisterType((*Response)(nil), "tendermint.abci.Response")
  2810. proto.RegisterType((*ResponseException)(nil), "tendermint.abci.ResponseException")
  2811. proto.RegisterType((*ResponseEcho)(nil), "tendermint.abci.ResponseEcho")
  2812. proto.RegisterType((*ResponseFlush)(nil), "tendermint.abci.ResponseFlush")
  2813. proto.RegisterType((*ResponseInfo)(nil), "tendermint.abci.ResponseInfo")
  2814. proto.RegisterType((*ResponseSetOption)(nil), "tendermint.abci.ResponseSetOption")
  2815. proto.RegisterType((*ResponseInitChain)(nil), "tendermint.abci.ResponseInitChain")
  2816. proto.RegisterType((*ResponseQuery)(nil), "tendermint.abci.ResponseQuery")
  2817. proto.RegisterType((*ResponseBeginBlock)(nil), "tendermint.abci.ResponseBeginBlock")
  2818. proto.RegisterType((*ResponseCheckTx)(nil), "tendermint.abci.ResponseCheckTx")
  2819. proto.RegisterType((*ResponseDeliverTx)(nil), "tendermint.abci.ResponseDeliverTx")
  2820. proto.RegisterType((*ResponseEndBlock)(nil), "tendermint.abci.ResponseEndBlock")
  2821. proto.RegisterType((*ResponseCommit)(nil), "tendermint.abci.ResponseCommit")
  2822. proto.RegisterType((*ResponseListSnapshots)(nil), "tendermint.abci.ResponseListSnapshots")
  2823. proto.RegisterType((*ResponseOfferSnapshot)(nil), "tendermint.abci.ResponseOfferSnapshot")
  2824. proto.RegisterType((*ResponseLoadSnapshotChunk)(nil), "tendermint.abci.ResponseLoadSnapshotChunk")
  2825. proto.RegisterType((*ResponseApplySnapshotChunk)(nil), "tendermint.abci.ResponseApplySnapshotChunk")
  2826. proto.RegisterType((*ConsensusParams)(nil), "tendermint.abci.ConsensusParams")
  2827. proto.RegisterType((*BlockParams)(nil), "tendermint.abci.BlockParams")
  2828. proto.RegisterType((*LastCommitInfo)(nil), "tendermint.abci.LastCommitInfo")
  2829. proto.RegisterType((*EventAttribute)(nil), "tendermint.abci.EventAttribute")
  2830. proto.RegisterType((*Event)(nil), "tendermint.abci.Event")
  2831. proto.RegisterType((*TxResult)(nil), "tendermint.abci.TxResult")
  2832. proto.RegisterType((*Validator)(nil), "tendermint.abci.Validator")
  2833. proto.RegisterType((*ValidatorUpdate)(nil), "tendermint.abci.ValidatorUpdate")
  2834. proto.RegisterType((*VoteInfo)(nil), "tendermint.abci.VoteInfo")
  2835. proto.RegisterType((*Evidence)(nil), "tendermint.abci.Evidence")
  2836. proto.RegisterType((*Snapshot)(nil), "tendermint.abci.Snapshot")
  2837. }
  2838. func init() { proto.RegisterFile("tendermint/abci/types.proto", fileDescriptor_252557cfdd89a31a) }
  2839. var fileDescriptor_252557cfdd89a31a = []byte{
  2840. // 2672 bytes of a gzipped FileDescriptorProto
  2841. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5a, 0x3b, 0x77, 0x1b, 0xc7,
  2842. 0x15, 0xc6, 0x1b, 0xd8, 0x4b, 0xe2, 0xc1, 0x11, 0x2d, 0xc3, 0x90, 0x44, 0xca, 0xab, 0x63, 0xc7,
  2843. 0x92, 0x6d, 0x32, 0xa1, 0x8e, 0x14, 0x29, 0x76, 0x62, 0x13, 0x30, 0x14, 0xd0, 0x92, 0x49, 0x66,
  2844. 0x49, 0x49, 0x79, 0x59, 0xeb, 0x01, 0x76, 0x08, 0xac, 0x05, 0xec, 0xae, 0xb1, 0x03, 0x8a, 0x74,
  2845. 0x97, 0x38, 0x95, 0xd2, 0x38, 0x5d, 0x1a, 0x77, 0x29, 0xf2, 0x13, 0x52, 0xa5, 0x76, 0xe9, 0x32,
  2846. 0x95, 0x92, 0x23, 0x9d, 0x34, 0xf9, 0x03, 0x29, 0x93, 0x33, 0x8f, 0x7d, 0x01, 0x58, 0x00, 0xb4,
  2847. 0xd3, 0xa5, 0x9b, 0xc7, 0xbd, 0x77, 0xe7, 0xce, 0xcc, 0xfd, 0xe6, 0x9b, 0x3b, 0x0b, 0x17, 0x28,
  2848. 0xb1, 0x0c, 0x32, 0x1c, 0x98, 0x16, 0xdd, 0xc4, 0xed, 0x8e, 0xb9, 0x49, 0x4f, 0x1d, 0xe2, 0x6e,
  2849. 0x38, 0x43, 0x9b, 0xda, 0xa8, 0x1c, 0x74, 0x6e, 0xb0, 0xce, 0xda, 0xa5, 0x90, 0x74, 0x67, 0x78,
  2850. 0xea, 0x50, 0x7b, 0xd3, 0x19, 0xda, 0xf6, 0x91, 0x90, 0xaf, 0x5d, 0x0c, 0x75, 0x73, 0x3b, 0x61,
  2851. 0x6b, 0x91, 0x5e, 0xa9, 0xfc, 0x98, 0x9c, 0x7a, 0xbd, 0x97, 0x26, 0x74, 0x1d, 0x3c, 0xc4, 0x03,
  2852. 0xaf, 0x7b, 0xbd, 0x6b, 0xdb, 0xdd, 0x3e, 0xd9, 0xe4, 0xb5, 0xf6, 0xe8, 0x68, 0x93, 0x9a, 0x03,
  2853. 0xe2, 0x52, 0x3c, 0x70, 0xa4, 0xc0, 0x6a, 0xd7, 0xee, 0xda, 0xbc, 0xb8, 0xc9, 0x4a, 0xa2, 0x55,
  2854. 0xfd, 0x43, 0x01, 0xf2, 0x1a, 0xf9, 0x6c, 0x44, 0x5c, 0x8a, 0xb6, 0x20, 0x43, 0x3a, 0x3d, 0xbb,
  2855. 0x9a, 0xbc, 0x9c, 0x7c, 0x63, 0x69, 0xeb, 0xe2, 0xc6, 0x98, 0x73, 0x1b, 0x52, 0xae, 0xd9, 0xe9,
  2856. 0xd9, 0xad, 0x84, 0xc6, 0x65, 0xd1, 0x0d, 0xc8, 0x1e, 0xf5, 0x47, 0x6e, 0xaf, 0x9a, 0xe2, 0x4a,
  2857. 0x97, 0xe2, 0x94, 0xee, 0x30, 0xa1, 0x56, 0x42, 0x13, 0xd2, 0xec, 0x53, 0xa6, 0x75, 0x64, 0x57,
  2858. 0xd3, 0xb3, 0x3f, 0xb5, 0x63, 0x1d, 0xf1, 0x4f, 0x31, 0x59, 0x54, 0x07, 0x70, 0x09, 0xd5, 0x6d,
  2859. 0x87, 0x9a, 0xb6, 0x55, 0xcd, 0x70, 0xcd, 0x57, 0xe3, 0x34, 0x0f, 0x08, 0xdd, 0xe3, 0x82, 0xad,
  2860. 0x84, 0xa6, 0xb8, 0x5e, 0x85, 0xd9, 0x30, 0x2d, 0x93, 0xea, 0x9d, 0x1e, 0x36, 0xad, 0x6a, 0x76,
  2861. 0xb6, 0x8d, 0x1d, 0xcb, 0xa4, 0x0d, 0x26, 0xc8, 0x6c, 0x98, 0x5e, 0x85, 0xb9, 0xfc, 0xd9, 0x88,
  2862. 0x0c, 0x4f, 0xab, 0xb9, 0xd9, 0x2e, 0xff, 0x8c, 0x09, 0x31, 0x97, 0xb9, 0x34, 0x6a, 0xc2, 0x52,
  2863. 0x9b, 0x74, 0x4d, 0x4b, 0x6f, 0xf7, 0xed, 0xce, 0xe3, 0x6a, 0x9e, 0x2b, 0xab, 0x71, 0xca, 0x75,
  2864. 0x26, 0x5a, 0x67, 0x92, 0xad, 0x84, 0x06, 0x6d, 0xbf, 0x86, 0xde, 0x85, 0x42, 0xa7, 0x47, 0x3a,
  2865. 0x8f, 0x75, 0x7a, 0x52, 0x2d, 0x70, 0x1b, 0xeb, 0x71, 0x36, 0x1a, 0x4c, 0xee, 0xf0, 0xa4, 0x95,
  2866. 0xd0, 0xf2, 0x1d, 0x51, 0x64, 0xfe, 0x1b, 0xa4, 0x6f, 0x1e, 0x93, 0x21, 0xd3, 0x57, 0x66, 0xfb,
  2867. 0xff, 0x81, 0x90, 0xe4, 0x16, 0x14, 0xc3, 0xab, 0xa0, 0xf7, 0x40, 0x21, 0x96, 0x21, 0xdd, 0x00,
  2868. 0x6e, 0xe2, 0x72, 0xec, 0x5e, 0xb1, 0x0c, 0xcf, 0x89, 0x02, 0x91, 0x65, 0x74, 0x0b, 0x72, 0x1d,
  2869. 0x7b, 0x30, 0x30, 0x69, 0x75, 0x89, 0x6b, 0xaf, 0xc5, 0x3a, 0xc0, 0xa5, 0x5a, 0x09, 0x4d, 0xca,
  2870. 0xa3, 0x5d, 0x28, 0xf5, 0x4d, 0x97, 0xea, 0xae, 0x85, 0x1d, 0xb7, 0x67, 0x53, 0xb7, 0xba, 0xcc,
  2871. 0x2d, 0xbc, 0x16, 0x67, 0xe1, 0x9e, 0xe9, 0xd2, 0x03, 0x4f, 0xb8, 0x95, 0xd0, 0x8a, 0xfd, 0x70,
  2872. 0x03, 0xb3, 0x67, 0x1f, 0x1d, 0x91, 0xa1, 0x6f, 0xb0, 0x5a, 0x9c, 0x6d, 0x6f, 0x8f, 0x49, 0x7b,
  2873. 0xfa, 0xcc, 0x9e, 0x1d, 0x6e, 0x40, 0xbf, 0x82, 0x73, 0x7d, 0x1b, 0x1b, 0xbe, 0x39, 0xbd, 0xd3,
  2874. 0x1b, 0x59, 0x8f, 0xab, 0x25, 0x6e, 0xf4, 0x6a, 0xec, 0x20, 0x6d, 0x6c, 0x78, 0x26, 0x1a, 0x4c,
  2875. 0xa1, 0x95, 0xd0, 0x56, 0xfa, 0xe3, 0x8d, 0xe8, 0x11, 0xac, 0x62, 0xc7, 0xe9, 0x9f, 0x8e, 0x5b,
  2876. 0x2f, 0x73, 0xeb, 0xd7, 0xe2, 0xac, 0x6f, 0x33, 0x9d, 0x71, 0xf3, 0x08, 0x4f, 0xb4, 0xd6, 0xf3,
  2877. 0x90, 0x3d, 0xc6, 0xfd, 0x11, 0x51, 0xbf, 0x07, 0x4b, 0xa1, 0x50, 0x47, 0x55, 0xc8, 0x0f, 0x88,
  2878. 0xeb, 0xe2, 0x2e, 0xe1, 0xc8, 0xa0, 0x68, 0x5e, 0x55, 0x2d, 0xc1, 0x72, 0x38, 0xbc, 0xd5, 0x81,
  2879. 0xaf, 0xc8, 0x02, 0x97, 0x29, 0x1e, 0x93, 0xa1, 0xcb, 0xa2, 0x55, 0x2a, 0xca, 0x2a, 0xba, 0x02,
  2880. 0x45, 0xbe, 0x7d, 0x74, 0xaf, 0x9f, 0xa1, 0x47, 0x46, 0x5b, 0xe6, 0x8d, 0x0f, 0xa4, 0xd0, 0x3a,
  2881. 0x2c, 0x39, 0x5b, 0x8e, 0x2f, 0x92, 0xe6, 0x22, 0xe0, 0x6c, 0x39, 0x52, 0x40, 0xfd, 0x11, 0x54,
  2882. 0xc6, 0xa3, 0x1d, 0x55, 0x20, 0xfd, 0x98, 0x9c, 0xca, 0xef, 0xb1, 0x22, 0x5a, 0x95, 0x6e, 0xf1,
  2883. 0x6f, 0x28, 0x9a, 0xf4, 0xf1, 0x4f, 0x29, 0x5f, 0xd9, 0x0f, 0x73, 0x74, 0x0b, 0x32, 0x0c, 0x35,
  2884. 0x25, 0x00, 0xd6, 0x36, 0x04, 0xa4, 0x6e, 0x78, 0x90, 0xba, 0x71, 0xe8, 0x41, 0x6a, 0xbd, 0xf0,
  2885. 0xf5, 0xb3, 0xf5, 0xc4, 0x97, 0x7f, 0x5f, 0x4f, 0x6a, 0x5c, 0x03, 0xbd, 0xc2, 0xa2, 0x12, 0x9b,
  2886. 0x96, 0x6e, 0x1a, 0xf2, 0x3b, 0x79, 0x5e, 0xdf, 0x31, 0xd0, 0x5d, 0xa8, 0x74, 0x6c, 0xcb, 0x25,
  2887. 0x96, 0x3b, 0x72, 0x75, 0x01, 0xd9, 0x12, 0xf6, 0x26, 0xa3, 0xa6, 0xe1, 0x09, 0xee, 0x73, 0x39,
  2888. 0xad, 0xdc, 0x89, 0x36, 0xa0, 0x3b, 0x00, 0xc7, 0xb8, 0x6f, 0x1a, 0x98, 0xda, 0x43, 0xb7, 0x9a,
  2889. 0xb9, 0x9c, 0x9e, 0x6a, 0xe6, 0x81, 0x27, 0x72, 0xdf, 0x31, 0x30, 0x25, 0xf5, 0x0c, 0x1b, 0xad,
  2890. 0x16, 0xd2, 0x44, 0xaf, 0x43, 0x19, 0x3b, 0x8e, 0xee, 0x52, 0x4c, 0x89, 0xde, 0x3e, 0xa5, 0xc4,
  2891. 0xe5, 0x60, 0xb8, 0xac, 0x15, 0xb1, 0xe3, 0x1c, 0xb0, 0xd6, 0x3a, 0x6b, 0x54, 0x0d, 0x7f, 0x85,
  2892. 0x39, 0x9a, 0x21, 0x04, 0x19, 0x03, 0x53, 0xcc, 0x67, 0x68, 0x59, 0xe3, 0x65, 0xd6, 0xe6, 0x60,
  2893. 0xda, 0x93, 0x7e, 0xf3, 0x32, 0x3a, 0x0f, 0xb9, 0x1e, 0x31, 0xbb, 0x3d, 0xca, 0x5d, 0x4d, 0x6b,
  2894. 0xb2, 0xc6, 0x16, 0xc3, 0x19, 0xda, 0xc7, 0x84, 0xc3, 0x77, 0x41, 0x13, 0x15, 0xf5, 0x77, 0x29,
  2895. 0x58, 0x99, 0xc0, 0x3d, 0x66, 0xb7, 0x87, 0xdd, 0x9e, 0xf7, 0x2d, 0x56, 0x46, 0x37, 0x99, 0x5d,
  2896. 0x6c, 0x90, 0xa1, 0x3c, 0x6f, 0xaa, 0x61, 0xdf, 0xc5, 0x59, 0xda, 0xe2, 0xfd, 0xd2, 0x67, 0x29,
  2897. 0x8d, 0xf6, 0xa0, 0xd2, 0xc7, 0x2e, 0xd5, 0x05, 0x8e, 0xe8, 0xa1, 0xb3, 0x67, 0x12, 0x3d, 0xef,
  2898. 0x61, 0x0f, 0x79, 0xd8, 0x2e, 0x96, 0x86, 0x4a, 0xfd, 0x48, 0x2b, 0xd2, 0x60, 0xb5, 0x7d, 0xfa,
  2899. 0x39, 0xb6, 0xa8, 0x69, 0x11, 0x7d, 0x62, 0x49, 0x5e, 0x99, 0x30, 0xda, 0x3c, 0x36, 0x0d, 0x62,
  2900. 0x75, 0xbc, 0xb5, 0x38, 0xe7, 0x2b, 0xfb, 0x6b, 0xe5, 0xaa, 0x1a, 0x94, 0xa2, 0xc8, 0x8d, 0x4a,
  2901. 0x90, 0xa2, 0x27, 0x72, 0x02, 0x52, 0xf4, 0x04, 0x7d, 0x1f, 0x32, 0xcc, 0x49, 0xee, 0x7c, 0x69,
  2902. 0xca, 0xb1, 0x29, 0xf5, 0x0e, 0x4f, 0x1d, 0xa2, 0x71, 0x49, 0x55, 0xf5, 0xb7, 0xb9, 0x8f, 0xe6,
  2903. 0xe3, 0x56, 0xd5, 0xab, 0x50, 0x1e, 0x83, 0xeb, 0xd0, 0xfa, 0x25, 0xc3, 0xeb, 0xa7, 0x96, 0xa1,
  2904. 0x18, 0xc1, 0x66, 0xf5, 0x3c, 0xac, 0x4e, 0x83, 0x5a, 0xb5, 0xe7, 0xb7, 0x47, 0x20, 0x13, 0xdd,
  2905. 0x80, 0x82, 0x8f, 0xb5, 0x22, 0xcc, 0x26, 0xe7, 0xca, 0x13, 0xd6, 0x7c, 0x51, 0x16, 0x5f, 0x6c,
  2906. 0xbf, 0xf2, 0xfd, 0x90, 0xe2, 0x03, 0xcf, 0x63, 0xc7, 0x69, 0x61, 0xb7, 0xa7, 0x7e, 0x02, 0xd5,
  2907. 0x38, 0x1c, 0x1d, 0x73, 0x23, 0xe3, 0x6f, 0xc3, 0xf3, 0x90, 0x3b, 0xb2, 0x87, 0x03, 0x4c, 0xb9,
  2908. 0xb1, 0xa2, 0x26, 0x6b, 0x6c, 0x7b, 0x0a, 0x4c, 0x4d, 0xf3, 0x66, 0x51, 0x51, 0x75, 0x78, 0x25,
  2909. 0x16, 0x4b, 0x99, 0x8a, 0x69, 0x19, 0x44, 0xcc, 0x67, 0x51, 0x13, 0x95, 0xc0, 0x90, 0x18, 0xac,
  2910. 0xa8, 0xb0, 0xcf, 0xba, 0xdc, 0x57, 0x6e, 0x5f, 0xd1, 0x64, 0x4d, 0xfd, 0x67, 0x01, 0x0a, 0x1a,
  2911. 0x71, 0x1d, 0x16, 0xec, 0xa8, 0x0e, 0x0a, 0x39, 0xe9, 0x10, 0xc1, 0x72, 0x92, 0xb1, 0x2c, 0x41,
  2912. 0x48, 0x37, 0x3d, 0x49, 0x76, 0x44, 0xfb, 0x6a, 0xe8, 0xba, 0x64, 0x72, 0xf1, 0xa4, 0x4c, 0xaa,
  2913. 0x87, 0xa9, 0xdc, 0x4d, 0x8f, 0xca, 0xa5, 0x63, 0x4f, 0x65, 0xa1, 0x35, 0xc6, 0xe5, 0xae, 0x4b,
  2914. 0x2e, 0x97, 0x99, 0xf3, 0xb1, 0x08, 0x99, 0x6b, 0x44, 0xc8, 0x5c, 0x76, 0x8e, 0x9b, 0x31, 0x6c,
  2915. 0xae, 0x11, 0x61, 0x73, 0xb9, 0x39, 0x46, 0x62, 0xe8, 0xdc, 0x4d, 0x8f, 0xce, 0xe5, 0xe7, 0xb8,
  2916. 0x3d, 0xc6, 0xe7, 0xee, 0x44, 0xf9, 0x9c, 0xe0, 0x62, 0x57, 0x62, 0xb5, 0x63, 0x09, 0xdd, 0x8f,
  2917. 0x43, 0x84, 0x4e, 0x89, 0x65, 0x53, 0xc2, 0xc8, 0x14, 0x46, 0xd7, 0x88, 0x30, 0x3a, 0x98, 0x33,
  2918. 0x07, 0x31, 0x94, 0xee, 0xfd, 0x30, 0xa5, 0x5b, 0x8a, 0x65, 0x85, 0x72, 0xd3, 0x4c, 0xe3, 0x74,
  2919. 0xb7, 0x7d, 0x4e, 0xb7, 0x1c, 0x4b, 0x4a, 0xa5, 0x0f, 0xe3, 0xa4, 0x6e, 0x6f, 0x82, 0xd4, 0x09,
  2920. 0x12, 0xf6, 0x7a, 0xac, 0x89, 0x39, 0xac, 0x6e, 0x6f, 0x82, 0xd5, 0x95, 0xe6, 0x18, 0x9c, 0x43,
  2921. 0xeb, 0x7e, 0x3d, 0x9d, 0xd6, 0xc5, 0x13, 0x2f, 0x39, 0xcc, 0xc5, 0x78, 0x9d, 0x1e, 0xc3, 0xeb,
  2922. 0x2a, 0xdc, 0xfc, 0x9b, 0xb1, 0xe6, 0xcf, 0x4e, 0xec, 0xae, 0xb2, 0x63, 0x76, 0x0c, 0x38, 0x18,
  2923. 0x54, 0x91, 0xe1, 0xd0, 0x1e, 0x4a, 0xce, 0x24, 0x2a, 0xea, 0x1b, 0xec, 0xe0, 0x0f, 0x40, 0x62,
  2924. 0x06, 0x09, 0xe4, 0x47, 0x42, 0x08, 0x18, 0xd4, 0xbf, 0x24, 0x03, 0x5d, 0x7e, 0x56, 0x86, 0x49,
  2925. 0x83, 0x22, 0x49, 0x43, 0x88, 0x1b, 0xa6, 0xa2, 0xdc, 0x70, 0x1d, 0x96, 0x18, 0xd4, 0x8f, 0xd1,
  2926. 0x3e, 0xec, 0x78, 0xb4, 0x0f, 0x5d, 0x83, 0x15, 0x7e, 0x96, 0x0b, 0x06, 0x29, 0xf1, 0x3d, 0xc3,
  2927. 0x8f, 0xa9, 0x32, 0xeb, 0x10, 0x9b, 0x53, 0x00, 0xfd, 0xdb, 0x70, 0x2e, 0x24, 0xeb, 0x1f, 0x21,
  2928. 0x82, 0xeb, 0x54, 0x7c, 0xe9, 0x6d, 0x79, 0x96, 0x7c, 0x14, 0x4c, 0x50, 0x40, 0x29, 0x11, 0x64,
  2929. 0x3a, 0xb6, 0x41, 0x24, 0xc0, 0xf3, 0x32, 0xa3, 0x99, 0x7d, 0xbb, 0x2b, 0x61, 0x9c, 0x15, 0x99,
  2930. 0x94, 0x8f, 0x82, 0x8a, 0x00, 0x39, 0xf5, 0xcf, 0xc9, 0xc0, 0x5e, 0xc0, 0x32, 0xa7, 0x11, 0xc2,
  2931. 0xe4, 0xff, 0x86, 0x10, 0xa6, 0xbe, 0x2d, 0x21, 0x54, 0xff, 0x9d, 0x0c, 0x96, 0xd1, 0xa7, 0x7a,
  2932. 0xdf, 0xce, 0xed, 0xe0, 0x48, 0xcc, 0xf2, 0x45, 0x91, 0x47, 0xa2, 0x64, 0xe6, 0x39, 0x3e, 0xf5,
  2933. 0x51, 0x66, 0x9e, 0x17, 0x87, 0x24, 0xaf, 0xa0, 0x5b, 0xa0, 0xf0, 0x94, 0x89, 0x6e, 0x3b, 0xae,
  2934. 0x44, 0xd5, 0x0b, 0x61, 0x87, 0x44, 0x66, 0x64, 0x63, 0x9f, 0xc9, 0xec, 0x39, 0xae, 0x56, 0x70,
  2935. 0x64, 0x29, 0x74, 0xda, 0x2b, 0x11, 0xd2, 0x79, 0x11, 0x14, 0x36, 0x7a, 0xd7, 0xc1, 0x1d, 0xc2,
  2936. 0x11, 0x52, 0xd1, 0x82, 0x06, 0xf5, 0x11, 0xa0, 0x49, 0x8c, 0x46, 0x2d, 0xc8, 0x91, 0x63, 0x62,
  2937. 0x51, 0xb6, 0x34, 0x6c, 0x4e, 0xcf, 0x4f, 0x61, 0x74, 0xc4, 0xa2, 0xf5, 0x2a, 0x9b, 0xc9, 0x7f,
  2938. 0x3d, 0x5b, 0xaf, 0x08, 0xe9, 0xb7, 0xec, 0x81, 0x49, 0xc9, 0xc0, 0xa1, 0xa7, 0x9a, 0xd4, 0x57,
  2939. 0x7f, 0x93, 0x62, 0xf4, 0x2a, 0x82, 0xdf, 0x53, 0xe7, 0xd6, 0x8b, 0x92, 0x54, 0x88, 0x5a, 0x2f,
  2940. 0x36, 0xdf, 0x97, 0x00, 0xba, 0xd8, 0xd5, 0x9f, 0x60, 0x8b, 0x12, 0x43, 0x4e, 0xba, 0xd2, 0xc5,
  2941. 0xee, 0x43, 0xde, 0xc0, 0xb8, 0x13, 0xeb, 0x1e, 0xb9, 0xc4, 0xe0, 0xb3, 0x9f, 0xd6, 0xf2, 0x5d,
  2942. 0xec, 0xde, 0x77, 0x89, 0x11, 0xf2, 0x32, 0xff, 0xdd, 0xbc, 0x8c, 0xce, 0x71, 0x61, 0x7c, 0x8e,
  2943. 0xbf, 0x48, 0x05, 0x81, 0x10, 0xf0, 0xd0, 0xff, 0xb7, 0x59, 0xf8, 0x3d, 0xbf, 0x73, 0x46, 0x0f,
  2944. 0x51, 0x74, 0x00, 0x2b, 0x7e, 0x18, 0xea, 0x23, 0x1e, 0x9e, 0xde, 0x9e, 0x5b, 0x34, 0x8e, 0x2b,
  2945. 0xc7, 0xd1, 0x66, 0x17, 0xfd, 0x1c, 0x5e, 0x1e, 0x83, 0x18, 0xdf, 0x74, 0x6a, 0x41, 0xa4, 0x79,
  2946. 0x29, 0x8a, 0x34, 0x9e, 0xe5, 0x60, 0xae, 0xd2, 0xdf, 0x31, 0x2e, 0x76, 0xd8, 0x6d, 0x27, 0x4c,
  2947. 0x09, 0xa6, 0xae, 0xfd, 0x15, 0x28, 0x0e, 0x09, 0x65, 0x37, 0xeb, 0xc8, 0x7d, 0x72, 0x59, 0x34,
  2948. 0x0a, 0x94, 0x57, 0xf7, 0xe1, 0xa5, 0xa9, 0xd4, 0x00, 0xfd, 0x10, 0x94, 0x80, 0x55, 0x24, 0x63,
  2949. 0xae, 0x66, 0xfe, 0x75, 0x23, 0x90, 0x55, 0xff, 0x9a, 0x0c, 0x4c, 0x46, 0x2f, 0x30, 0x4d, 0xc8,
  2950. 0x0d, 0x89, 0x3b, 0xea, 0x8b, 0x2b, 0x45, 0x69, 0xeb, 0xed, 0xc5, 0x48, 0x05, 0x6b, 0x1d, 0xf5,
  2951. 0xa9, 0x26, 0x95, 0xd5, 0x47, 0x90, 0x13, 0x2d, 0x68, 0x09, 0xf2, 0xf7, 0x77, 0xef, 0xee, 0xee,
  2952. 0x3d, 0xdc, 0xad, 0x24, 0x10, 0x40, 0x6e, 0xbb, 0xd1, 0x68, 0xee, 0x1f, 0x56, 0x92, 0x48, 0x81,
  2953. 0xec, 0x76, 0x7d, 0x4f, 0x3b, 0xac, 0xa4, 0x58, 0xb3, 0xd6, 0xfc, 0xb0, 0xd9, 0x38, 0xac, 0xa4,
  2954. 0xd1, 0x0a, 0x14, 0x45, 0x59, 0xbf, 0xb3, 0xa7, 0x7d, 0xb4, 0x7d, 0x58, 0xc9, 0x84, 0x9a, 0x0e,
  2955. 0x9a, 0xbb, 0x1f, 0x34, 0xb5, 0x4a, 0x56, 0xfd, 0x01, 0xbb, 0xb3, 0xc4, 0xd0, 0x90, 0xe0, 0x76,
  2956. 0x92, 0x0c, 0xdd, 0x4e, 0xd4, 0x3f, 0xa6, 0xa0, 0x16, 0xcf, 0x2d, 0xd0, 0x87, 0x63, 0x8e, 0x6f,
  2957. 0x9d, 0x81, 0x98, 0x8c, 0x79, 0x8f, 0x5e, 0x83, 0xd2, 0x90, 0x1c, 0x11, 0xda, 0xe9, 0x09, 0xae,
  2958. 0x23, 0x4e, 0xae, 0xa2, 0x56, 0x94, 0xad, 0x5c, 0xc9, 0x15, 0x62, 0x9f, 0x92, 0x0e, 0xd5, 0xc5,
  2959. 0x45, 0x49, 0x6c, 0x3a, 0x85, 0x89, 0xb1, 0xd6, 0x03, 0xd1, 0xa8, 0x7e, 0x72, 0xa6, 0xb9, 0x54,
  2960. 0x20, 0xab, 0x35, 0x0f, 0xb5, 0x5f, 0x54, 0xd2, 0x08, 0x41, 0x89, 0x17, 0xf5, 0x83, 0xdd, 0xed,
  2961. 0xfd, 0x83, 0xd6, 0x1e, 0x9b, 0xcb, 0x73, 0x50, 0xf6, 0xe6, 0xd2, 0x6b, 0xcc, 0xaa, 0xff, 0x49,
  2962. 0x42, 0x79, 0x2c, 0x40, 0xd0, 0x16, 0x64, 0x05, 0x5f, 0x8e, 0x4b, 0x97, 0xf3, 0xf8, 0x96, 0xd1,
  2963. 0x24, 0x44, 0xd1, 0xbb, 0x50, 0x20, 0x32, 0x11, 0x30, 0x2d, 0x10, 0x45, 0x02, 0xc3, 0x4b, 0x15,
  2964. 0x48, 0x55, 0x5f, 0x03, 0xbd, 0x07, 0x8a, 0x1f, 0xe9, 0xf2, 0x92, 0xf6, 0xea, 0xa4, 0xba, 0x8f,
  2965. 0x11, 0x52, 0x3f, 0xd0, 0x41, 0xb7, 0x03, 0xd2, 0x95, 0x99, 0x64, 0xe9, 0x52, 0x5d, 0x08, 0x48,
  2966. 0x65, 0x4f, 0x5e, 0x6d, 0xc0, 0x52, 0xc8, 0x1f, 0x74, 0x01, 0x94, 0x01, 0x3e, 0x91, 0x99, 0x23,
  2967. 0x91, 0x22, 0x28, 0x0c, 0xf0, 0x09, 0x4f, 0x1a, 0xa1, 0x97, 0x21, 0xcf, 0x3a, 0xbb, 0x58, 0xa0,
  2968. 0x4d, 0x5a, 0xcb, 0x0d, 0xf0, 0xc9, 0x4f, 0xb1, 0xab, 0x7e, 0x0c, 0xa5, 0x68, 0x72, 0x85, 0xed,
  2969. 0xc4, 0xa1, 0x3d, 0xb2, 0x0c, 0x6e, 0x23, 0xab, 0x89, 0x0a, 0xba, 0x01, 0xd9, 0x63, 0x5b, 0x80,
  2970. 0xd5, 0xf4, 0x90, 0x7d, 0x60, 0x53, 0x12, 0x4a, 0xce, 0x08, 0x69, 0x75, 0x17, 0x4a, 0x1c, 0x7c,
  2971. 0xb6, 0x29, 0x1d, 0x9a, 0xed, 0x11, 0x25, 0xe1, 0x6c, 0xe0, 0xf2, 0x94, 0x6c, 0xa0, 0xcf, 0x39,
  2972. 0x7c, 0xc6, 0x92, 0x16, 0x69, 0x29, 0x5e, 0x51, 0x3f, 0x87, 0x2c, 0xb7, 0xc7, 0x80, 0x89, 0xa7,
  2973. 0x5d, 0x24, 0x81, 0x65, 0x65, 0xf4, 0x31, 0x00, 0xf6, 0xbe, 0xe3, 0x0d, 0x74, 0x7d, 0x3a, 0x18,
  2974. 0xfa, 0xe3, 0xa9, 0x5f, 0x94, 0xa8, 0xb8, 0x1a, 0xa8, 0x86, 0x90, 0x31, 0x64, 0x50, 0x7d, 0x9a,
  2975. 0x84, 0xc2, 0xe1, 0x89, 0xdc, 0xd6, 0x31, 0xd9, 0x98, 0x60, 0xd8, 0xa9, 0x70, 0xee, 0x41, 0xa4,
  2976. 0x77, 0xd2, 0x7e, 0xd2, 0xe8, 0x7d, 0x3f, 0x70, 0x33, 0x8b, 0xde, 0x0e, 0xbd, 0xec, 0x99, 0x04,
  2977. 0xab, 0x77, 0x40, 0xf1, 0x77, 0x15, 0x63, 0xee, 0xd8, 0x30, 0x86, 0xc4, 0x75, 0xe5, 0xbc, 0x7a,
  2978. 0x55, 0x9e, 0xdc, 0xb3, 0x9f, 0xc8, 0xec, 0x46, 0x5a, 0x13, 0x15, 0xd5, 0x80, 0xf2, 0xd8, 0xb1,
  2979. 0x85, 0xde, 0x81, 0xbc, 0x33, 0x6a, 0xeb, 0xde, 0xd2, 0x8c, 0x05, 0x8f, 0x47, 0xf0, 0x46, 0xed,
  2980. 0xbe, 0xd9, 0xb9, 0x4b, 0x4e, 0xbd, 0xc1, 0x38, 0xa3, 0xf6, 0x5d, 0xb1, 0x82, 0xe2, 0x2b, 0xa9,
  2981. 0xf0, 0x57, 0x8e, 0xa1, 0xe0, 0x6d, 0x0a, 0xf4, 0x93, 0x70, 0x9c, 0x78, 0xb9, 0xdc, 0xd8, 0xa3,
  2982. 0x54, 0x9a, 0x0f, 0x85, 0xc9, 0x35, 0x58, 0x71, 0xcd, 0xae, 0x45, 0x0c, 0x3d, 0xb8, 0x3b, 0xf0,
  2983. 0xaf, 0x15, 0xb4, 0xb2, 0xe8, 0xb8, 0xe7, 0x5d, 0x1c, 0xd4, 0x67, 0x49, 0x28, 0x78, 0x01, 0x3b,
  2984. 0x75, 0x9f, 0x44, 0x06, 0x93, 0x3a, 0xfb, 0x60, 0xe2, 0x32, 0xa9, 0x5e, 0xae, 0x3a, 0x73, 0xe6,
  2985. 0x5c, 0xf5, 0x5b, 0x80, 0xa8, 0x4d, 0x71, 0x5f, 0x3f, 0xb6, 0xa9, 0x69, 0x75, 0x75, 0x31, 0x9b,
  2986. 0x82, 0x30, 0x55, 0x78, 0xcf, 0x03, 0xde, 0xb1, 0xcf, 0x27, 0xf6, 0xb7, 0x49, 0x28, 0xf8, 0x87,
  2987. 0xdf, 0x59, 0xf3, 0x69, 0xe7, 0x21, 0x27, 0xf1, 0x5d, 0x24, 0xd4, 0x64, 0xcd, 0x4f, 0xed, 0x66,
  2988. 0x42, 0xa9, 0xdd, 0x1a, 0x14, 0x06, 0x84, 0x62, 0xce, 0x00, 0xc4, 0xfd, 0xcc, 0xaf, 0x5f, 0xbb,
  2989. 0x0d, 0x4b, 0xa1, 0xd4, 0x26, 0x0b, 0xeb, 0xdd, 0xe6, 0xc3, 0x4a, 0xa2, 0x96, 0x7f, 0xfa, 0xd5,
  2990. 0xe5, 0xf4, 0x2e, 0x79, 0xc2, 0x36, 0xa5, 0xd6, 0x6c, 0xb4, 0x9a, 0x8d, 0xbb, 0x95, 0x64, 0x6d,
  2991. 0xe9, 0xe9, 0x57, 0x97, 0xf3, 0x1a, 0xe1, 0x19, 0x92, 0xad, 0x2f, 0x00, 0xca, 0xdb, 0xf5, 0xc6,
  2992. 0x0e, 0x3b, 0x94, 0xcc, 0x0e, 0x96, 0x79, 0xa3, 0x0c, 0xbf, 0xd4, 0xce, 0x7c, 0xe2, 0xac, 0xcd,
  2993. 0x4e, 0x9b, 0xa1, 0x3b, 0x90, 0xe5, 0xf7, 0x5d, 0x34, 0xfb, 0xcd, 0xb3, 0x36, 0x27, 0x8f, 0xc6,
  2994. 0x06, 0xc3, 0x77, 0xed, 0xcc, 0x47, 0xd0, 0xda, 0xec, 0xb4, 0x1a, 0xd2, 0x40, 0x09, 0x2e, 0xac,
  2995. 0xf3, 0x1f, 0x45, 0x6b, 0x0b, 0xa4, 0xda, 0x98, 0xcd, 0x80, 0xab, 0xcf, 0x7f, 0x24, 0xac, 0x2d,
  2996. 0x80, 0x2b, 0xe8, 0x1e, 0xe4, 0xbd, 0x3b, 0xd0, 0xbc, 0x67, 0xcb, 0xda, 0xdc, 0x34, 0x18, 0x5b,
  2997. 0x02, 0x71, 0x57, 0x9d, 0xfd, 0x06, 0x5b, 0x9b, 0x93, 0xd3, 0x43, 0x3b, 0x90, 0x93, 0x14, 0x74,
  2998. 0xce, 0x53, 0x64, 0x6d, 0x5e, 0x5a, 0x8b, 0x4d, 0x5a, 0x70, 0xd3, 0x9f, 0xff, 0xb2, 0x5c, 0x5b,
  2999. 0x20, 0x5d, 0x89, 0xee, 0x03, 0x84, 0x6e, 0xa6, 0x0b, 0x3c, 0x19, 0xd7, 0x16, 0x49, 0x43, 0xa2,
  3000. 0x3d, 0x28, 0xf8, 0xb7, 0x90, 0xb9, 0x0f, 0xb8, 0xb5, 0xf9, 0xf9, 0x40, 0xf4, 0x08, 0x8a, 0x51,
  3001. 0xfa, 0xbd, 0xd8, 0xb3, 0x6c, 0x6d, 0xc1, 0x44, 0x1f, 0xb3, 0x1f, 0xe5, 0xe2, 0x8b, 0x3d, 0xd3,
  3002. 0xd6, 0x16, 0xcc, 0xfb, 0xa1, 0x4f, 0x61, 0x65, 0x92, 0x2b, 0x2f, 0xfe, 0x6a, 0x5b, 0x3b, 0x43,
  3003. 0x26, 0x10, 0x0d, 0x00, 0x4d, 0xe1, 0xd8, 0x67, 0x78, 0xc4, 0xad, 0x9d, 0x25, 0x31, 0x58, 0x6f,
  3004. 0x7e, 0xfd, 0x7c, 0x2d, 0xf9, 0xcd, 0xf3, 0xb5, 0xe4, 0x3f, 0x9e, 0xaf, 0x25, 0xbf, 0x7c, 0xb1,
  3005. 0x96, 0xf8, 0xe6, 0xc5, 0x5a, 0xe2, 0x6f, 0x2f, 0xd6, 0x12, 0xbf, 0x7c, 0xb3, 0x6b, 0xd2, 0xde,
  3006. 0xa8, 0xbd, 0xd1, 0xb1, 0x07, 0x9b, 0xe1, 0x3f, 0x4c, 0xa6, 0xfd, 0xf5, 0xd2, 0xce, 0xf1, 0xe3,
  3007. 0xe5, 0xfa, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x66, 0x5c, 0x1b, 0x1f, 0x15, 0x23, 0x00, 0x00,
  3008. }
  3009. // Reference imports to suppress errors if they are not otherwise used.
  3010. var _ context.Context
  3011. var _ grpc.ClientConn
  3012. // This is a compile-time assertion to ensure that this generated file
  3013. // is compatible with the grpc package it is being compiled against.
  3014. const _ = grpc.SupportPackageIsVersion4
  3015. // ABCIApplicationClient is the client API for ABCIApplication service.
  3016. //
  3017. // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  3018. type ABCIApplicationClient interface {
  3019. Echo(ctx context.Context, in *RequestEcho, opts ...grpc.CallOption) (*ResponseEcho, error)
  3020. Flush(ctx context.Context, in *RequestFlush, opts ...grpc.CallOption) (*ResponseFlush, error)
  3021. Info(ctx context.Context, in *RequestInfo, opts ...grpc.CallOption) (*ResponseInfo, error)
  3022. SetOption(ctx context.Context, in *RequestSetOption, opts ...grpc.CallOption) (*ResponseSetOption, error)
  3023. DeliverTx(ctx context.Context, in *RequestDeliverTx, opts ...grpc.CallOption) (*ResponseDeliverTx, error)
  3024. CheckTx(ctx context.Context, in *RequestCheckTx, opts ...grpc.CallOption) (*ResponseCheckTx, error)
  3025. Query(ctx context.Context, in *RequestQuery, opts ...grpc.CallOption) (*ResponseQuery, error)
  3026. Commit(ctx context.Context, in *RequestCommit, opts ...grpc.CallOption) (*ResponseCommit, error)
  3027. InitChain(ctx context.Context, in *RequestInitChain, opts ...grpc.CallOption) (*ResponseInitChain, error)
  3028. BeginBlock(ctx context.Context, in *RequestBeginBlock, opts ...grpc.CallOption) (*ResponseBeginBlock, error)
  3029. EndBlock(ctx context.Context, in *RequestEndBlock, opts ...grpc.CallOption) (*ResponseEndBlock, error)
  3030. ListSnapshots(ctx context.Context, in *RequestListSnapshots, opts ...grpc.CallOption) (*ResponseListSnapshots, error)
  3031. OfferSnapshot(ctx context.Context, in *RequestOfferSnapshot, opts ...grpc.CallOption) (*ResponseOfferSnapshot, error)
  3032. LoadSnapshotChunk(ctx context.Context, in *RequestLoadSnapshotChunk, opts ...grpc.CallOption) (*ResponseLoadSnapshotChunk, error)
  3033. ApplySnapshotChunk(ctx context.Context, in *RequestApplySnapshotChunk, opts ...grpc.CallOption) (*ResponseApplySnapshotChunk, error)
  3034. }
  3035. type aBCIApplicationClient struct {
  3036. cc *grpc.ClientConn
  3037. }
  3038. func NewABCIApplicationClient(cc *grpc.ClientConn) ABCIApplicationClient {
  3039. return &aBCIApplicationClient{cc}
  3040. }
  3041. func (c *aBCIApplicationClient) Echo(ctx context.Context, in *RequestEcho, opts ...grpc.CallOption) (*ResponseEcho, error) {
  3042. out := new(ResponseEcho)
  3043. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/Echo", in, out, opts...)
  3044. if err != nil {
  3045. return nil, err
  3046. }
  3047. return out, nil
  3048. }
  3049. func (c *aBCIApplicationClient) Flush(ctx context.Context, in *RequestFlush, opts ...grpc.CallOption) (*ResponseFlush, error) {
  3050. out := new(ResponseFlush)
  3051. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/Flush", in, out, opts...)
  3052. if err != nil {
  3053. return nil, err
  3054. }
  3055. return out, nil
  3056. }
  3057. func (c *aBCIApplicationClient) Info(ctx context.Context, in *RequestInfo, opts ...grpc.CallOption) (*ResponseInfo, error) {
  3058. out := new(ResponseInfo)
  3059. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/Info", in, out, opts...)
  3060. if err != nil {
  3061. return nil, err
  3062. }
  3063. return out, nil
  3064. }
  3065. func (c *aBCIApplicationClient) SetOption(ctx context.Context, in *RequestSetOption, opts ...grpc.CallOption) (*ResponseSetOption, error) {
  3066. out := new(ResponseSetOption)
  3067. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/SetOption", in, out, opts...)
  3068. if err != nil {
  3069. return nil, err
  3070. }
  3071. return out, nil
  3072. }
  3073. func (c *aBCIApplicationClient) DeliverTx(ctx context.Context, in *RequestDeliverTx, opts ...grpc.CallOption) (*ResponseDeliverTx, error) {
  3074. out := new(ResponseDeliverTx)
  3075. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/DeliverTx", in, out, opts...)
  3076. if err != nil {
  3077. return nil, err
  3078. }
  3079. return out, nil
  3080. }
  3081. func (c *aBCIApplicationClient) CheckTx(ctx context.Context, in *RequestCheckTx, opts ...grpc.CallOption) (*ResponseCheckTx, error) {
  3082. out := new(ResponseCheckTx)
  3083. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/CheckTx", in, out, opts...)
  3084. if err != nil {
  3085. return nil, err
  3086. }
  3087. return out, nil
  3088. }
  3089. func (c *aBCIApplicationClient) Query(ctx context.Context, in *RequestQuery, opts ...grpc.CallOption) (*ResponseQuery, error) {
  3090. out := new(ResponseQuery)
  3091. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/Query", in, out, opts...)
  3092. if err != nil {
  3093. return nil, err
  3094. }
  3095. return out, nil
  3096. }
  3097. func (c *aBCIApplicationClient) Commit(ctx context.Context, in *RequestCommit, opts ...grpc.CallOption) (*ResponseCommit, error) {
  3098. out := new(ResponseCommit)
  3099. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/Commit", in, out, opts...)
  3100. if err != nil {
  3101. return nil, err
  3102. }
  3103. return out, nil
  3104. }
  3105. func (c *aBCIApplicationClient) InitChain(ctx context.Context, in *RequestInitChain, opts ...grpc.CallOption) (*ResponseInitChain, error) {
  3106. out := new(ResponseInitChain)
  3107. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/InitChain", in, out, opts...)
  3108. if err != nil {
  3109. return nil, err
  3110. }
  3111. return out, nil
  3112. }
  3113. func (c *aBCIApplicationClient) BeginBlock(ctx context.Context, in *RequestBeginBlock, opts ...grpc.CallOption) (*ResponseBeginBlock, error) {
  3114. out := new(ResponseBeginBlock)
  3115. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/BeginBlock", in, out, opts...)
  3116. if err != nil {
  3117. return nil, err
  3118. }
  3119. return out, nil
  3120. }
  3121. func (c *aBCIApplicationClient) EndBlock(ctx context.Context, in *RequestEndBlock, opts ...grpc.CallOption) (*ResponseEndBlock, error) {
  3122. out := new(ResponseEndBlock)
  3123. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/EndBlock", in, out, opts...)
  3124. if err != nil {
  3125. return nil, err
  3126. }
  3127. return out, nil
  3128. }
  3129. func (c *aBCIApplicationClient) ListSnapshots(ctx context.Context, in *RequestListSnapshots, opts ...grpc.CallOption) (*ResponseListSnapshots, error) {
  3130. out := new(ResponseListSnapshots)
  3131. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/ListSnapshots", in, out, opts...)
  3132. if err != nil {
  3133. return nil, err
  3134. }
  3135. return out, nil
  3136. }
  3137. func (c *aBCIApplicationClient) OfferSnapshot(ctx context.Context, in *RequestOfferSnapshot, opts ...grpc.CallOption) (*ResponseOfferSnapshot, error) {
  3138. out := new(ResponseOfferSnapshot)
  3139. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/OfferSnapshot", in, out, opts...)
  3140. if err != nil {
  3141. return nil, err
  3142. }
  3143. return out, nil
  3144. }
  3145. func (c *aBCIApplicationClient) LoadSnapshotChunk(ctx context.Context, in *RequestLoadSnapshotChunk, opts ...grpc.CallOption) (*ResponseLoadSnapshotChunk, error) {
  3146. out := new(ResponseLoadSnapshotChunk)
  3147. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/LoadSnapshotChunk", in, out, opts...)
  3148. if err != nil {
  3149. return nil, err
  3150. }
  3151. return out, nil
  3152. }
  3153. func (c *aBCIApplicationClient) ApplySnapshotChunk(ctx context.Context, in *RequestApplySnapshotChunk, opts ...grpc.CallOption) (*ResponseApplySnapshotChunk, error) {
  3154. out := new(ResponseApplySnapshotChunk)
  3155. err := c.cc.Invoke(ctx, "/tendermint.abci.ABCIApplication/ApplySnapshotChunk", in, out, opts...)
  3156. if err != nil {
  3157. return nil, err
  3158. }
  3159. return out, nil
  3160. }
  3161. // ABCIApplicationServer is the server API for ABCIApplication service.
  3162. type ABCIApplicationServer interface {
  3163. Echo(context.Context, *RequestEcho) (*ResponseEcho, error)
  3164. Flush(context.Context, *RequestFlush) (*ResponseFlush, error)
  3165. Info(context.Context, *RequestInfo) (*ResponseInfo, error)
  3166. SetOption(context.Context, *RequestSetOption) (*ResponseSetOption, error)
  3167. DeliverTx(context.Context, *RequestDeliverTx) (*ResponseDeliverTx, error)
  3168. CheckTx(context.Context, *RequestCheckTx) (*ResponseCheckTx, error)
  3169. Query(context.Context, *RequestQuery) (*ResponseQuery, error)
  3170. Commit(context.Context, *RequestCommit) (*ResponseCommit, error)
  3171. InitChain(context.Context, *RequestInitChain) (*ResponseInitChain, error)
  3172. BeginBlock(context.Context, *RequestBeginBlock) (*ResponseBeginBlock, error)
  3173. EndBlock(context.Context, *RequestEndBlock) (*ResponseEndBlock, error)
  3174. ListSnapshots(context.Context, *RequestListSnapshots) (*ResponseListSnapshots, error)
  3175. OfferSnapshot(context.Context, *RequestOfferSnapshot) (*ResponseOfferSnapshot, error)
  3176. LoadSnapshotChunk(context.Context, *RequestLoadSnapshotChunk) (*ResponseLoadSnapshotChunk, error)
  3177. ApplySnapshotChunk(context.Context, *RequestApplySnapshotChunk) (*ResponseApplySnapshotChunk, error)
  3178. }
  3179. // UnimplementedABCIApplicationServer can be embedded to have forward compatible implementations.
  3180. type UnimplementedABCIApplicationServer struct {
  3181. }
  3182. func (*UnimplementedABCIApplicationServer) Echo(ctx context.Context, req *RequestEcho) (*ResponseEcho, error) {
  3183. return nil, status.Errorf(codes.Unimplemented, "method Echo not implemented")
  3184. }
  3185. func (*UnimplementedABCIApplicationServer) Flush(ctx context.Context, req *RequestFlush) (*ResponseFlush, error) {
  3186. return nil, status.Errorf(codes.Unimplemented, "method Flush not implemented")
  3187. }
  3188. func (*UnimplementedABCIApplicationServer) Info(ctx context.Context, req *RequestInfo) (*ResponseInfo, error) {
  3189. return nil, status.Errorf(codes.Unimplemented, "method Info not implemented")
  3190. }
  3191. func (*UnimplementedABCIApplicationServer) SetOption(ctx context.Context, req *RequestSetOption) (*ResponseSetOption, error) {
  3192. return nil, status.Errorf(codes.Unimplemented, "method SetOption not implemented")
  3193. }
  3194. func (*UnimplementedABCIApplicationServer) DeliverTx(ctx context.Context, req *RequestDeliverTx) (*ResponseDeliverTx, error) {
  3195. return nil, status.Errorf(codes.Unimplemented, "method DeliverTx not implemented")
  3196. }
  3197. func (*UnimplementedABCIApplicationServer) CheckTx(ctx context.Context, req *RequestCheckTx) (*ResponseCheckTx, error) {
  3198. return nil, status.Errorf(codes.Unimplemented, "method CheckTx not implemented")
  3199. }
  3200. func (*UnimplementedABCIApplicationServer) Query(ctx context.Context, req *RequestQuery) (*ResponseQuery, error) {
  3201. return nil, status.Errorf(codes.Unimplemented, "method Query not implemented")
  3202. }
  3203. func (*UnimplementedABCIApplicationServer) Commit(ctx context.Context, req *RequestCommit) (*ResponseCommit, error) {
  3204. return nil, status.Errorf(codes.Unimplemented, "method Commit not implemented")
  3205. }
  3206. func (*UnimplementedABCIApplicationServer) InitChain(ctx context.Context, req *RequestInitChain) (*ResponseInitChain, error) {
  3207. return nil, status.Errorf(codes.Unimplemented, "method InitChain not implemented")
  3208. }
  3209. func (*UnimplementedABCIApplicationServer) BeginBlock(ctx context.Context, req *RequestBeginBlock) (*ResponseBeginBlock, error) {
  3210. return nil, status.Errorf(codes.Unimplemented, "method BeginBlock not implemented")
  3211. }
  3212. func (*UnimplementedABCIApplicationServer) EndBlock(ctx context.Context, req *RequestEndBlock) (*ResponseEndBlock, error) {
  3213. return nil, status.Errorf(codes.Unimplemented, "method EndBlock not implemented")
  3214. }
  3215. func (*UnimplementedABCIApplicationServer) ListSnapshots(ctx context.Context, req *RequestListSnapshots) (*ResponseListSnapshots, error) {
  3216. return nil, status.Errorf(codes.Unimplemented, "method ListSnapshots not implemented")
  3217. }
  3218. func (*UnimplementedABCIApplicationServer) OfferSnapshot(ctx context.Context, req *RequestOfferSnapshot) (*ResponseOfferSnapshot, error) {
  3219. return nil, status.Errorf(codes.Unimplemented, "method OfferSnapshot not implemented")
  3220. }
  3221. func (*UnimplementedABCIApplicationServer) LoadSnapshotChunk(ctx context.Context, req *RequestLoadSnapshotChunk) (*ResponseLoadSnapshotChunk, error) {
  3222. return nil, status.Errorf(codes.Unimplemented, "method LoadSnapshotChunk not implemented")
  3223. }
  3224. func (*UnimplementedABCIApplicationServer) ApplySnapshotChunk(ctx context.Context, req *RequestApplySnapshotChunk) (*ResponseApplySnapshotChunk, error) {
  3225. return nil, status.Errorf(codes.Unimplemented, "method ApplySnapshotChunk not implemented")
  3226. }
  3227. func RegisterABCIApplicationServer(s *grpc.Server, srv ABCIApplicationServer) {
  3228. s.RegisterService(&_ABCIApplication_serviceDesc, srv)
  3229. }
  3230. func _ABCIApplication_Echo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3231. in := new(RequestEcho)
  3232. if err := dec(in); err != nil {
  3233. return nil, err
  3234. }
  3235. if interceptor == nil {
  3236. return srv.(ABCIApplicationServer).Echo(ctx, in)
  3237. }
  3238. info := &grpc.UnaryServerInfo{
  3239. Server: srv,
  3240. FullMethod: "/tendermint.abci.ABCIApplication/Echo",
  3241. }
  3242. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3243. return srv.(ABCIApplicationServer).Echo(ctx, req.(*RequestEcho))
  3244. }
  3245. return interceptor(ctx, in, info, handler)
  3246. }
  3247. func _ABCIApplication_Flush_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3248. in := new(RequestFlush)
  3249. if err := dec(in); err != nil {
  3250. return nil, err
  3251. }
  3252. if interceptor == nil {
  3253. return srv.(ABCIApplicationServer).Flush(ctx, in)
  3254. }
  3255. info := &grpc.UnaryServerInfo{
  3256. Server: srv,
  3257. FullMethod: "/tendermint.abci.ABCIApplication/Flush",
  3258. }
  3259. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3260. return srv.(ABCIApplicationServer).Flush(ctx, req.(*RequestFlush))
  3261. }
  3262. return interceptor(ctx, in, info, handler)
  3263. }
  3264. func _ABCIApplication_Info_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3265. in := new(RequestInfo)
  3266. if err := dec(in); err != nil {
  3267. return nil, err
  3268. }
  3269. if interceptor == nil {
  3270. return srv.(ABCIApplicationServer).Info(ctx, in)
  3271. }
  3272. info := &grpc.UnaryServerInfo{
  3273. Server: srv,
  3274. FullMethod: "/tendermint.abci.ABCIApplication/Info",
  3275. }
  3276. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3277. return srv.(ABCIApplicationServer).Info(ctx, req.(*RequestInfo))
  3278. }
  3279. return interceptor(ctx, in, info, handler)
  3280. }
  3281. func _ABCIApplication_SetOption_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3282. in := new(RequestSetOption)
  3283. if err := dec(in); err != nil {
  3284. return nil, err
  3285. }
  3286. if interceptor == nil {
  3287. return srv.(ABCIApplicationServer).SetOption(ctx, in)
  3288. }
  3289. info := &grpc.UnaryServerInfo{
  3290. Server: srv,
  3291. FullMethod: "/tendermint.abci.ABCIApplication/SetOption",
  3292. }
  3293. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3294. return srv.(ABCIApplicationServer).SetOption(ctx, req.(*RequestSetOption))
  3295. }
  3296. return interceptor(ctx, in, info, handler)
  3297. }
  3298. func _ABCIApplication_DeliverTx_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3299. in := new(RequestDeliverTx)
  3300. if err := dec(in); err != nil {
  3301. return nil, err
  3302. }
  3303. if interceptor == nil {
  3304. return srv.(ABCIApplicationServer).DeliverTx(ctx, in)
  3305. }
  3306. info := &grpc.UnaryServerInfo{
  3307. Server: srv,
  3308. FullMethod: "/tendermint.abci.ABCIApplication/DeliverTx",
  3309. }
  3310. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3311. return srv.(ABCIApplicationServer).DeliverTx(ctx, req.(*RequestDeliverTx))
  3312. }
  3313. return interceptor(ctx, in, info, handler)
  3314. }
  3315. func _ABCIApplication_CheckTx_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3316. in := new(RequestCheckTx)
  3317. if err := dec(in); err != nil {
  3318. return nil, err
  3319. }
  3320. if interceptor == nil {
  3321. return srv.(ABCIApplicationServer).CheckTx(ctx, in)
  3322. }
  3323. info := &grpc.UnaryServerInfo{
  3324. Server: srv,
  3325. FullMethod: "/tendermint.abci.ABCIApplication/CheckTx",
  3326. }
  3327. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3328. return srv.(ABCIApplicationServer).CheckTx(ctx, req.(*RequestCheckTx))
  3329. }
  3330. return interceptor(ctx, in, info, handler)
  3331. }
  3332. func _ABCIApplication_Query_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3333. in := new(RequestQuery)
  3334. if err := dec(in); err != nil {
  3335. return nil, err
  3336. }
  3337. if interceptor == nil {
  3338. return srv.(ABCIApplicationServer).Query(ctx, in)
  3339. }
  3340. info := &grpc.UnaryServerInfo{
  3341. Server: srv,
  3342. FullMethod: "/tendermint.abci.ABCIApplication/Query",
  3343. }
  3344. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3345. return srv.(ABCIApplicationServer).Query(ctx, req.(*RequestQuery))
  3346. }
  3347. return interceptor(ctx, in, info, handler)
  3348. }
  3349. func _ABCIApplication_Commit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3350. in := new(RequestCommit)
  3351. if err := dec(in); err != nil {
  3352. return nil, err
  3353. }
  3354. if interceptor == nil {
  3355. return srv.(ABCIApplicationServer).Commit(ctx, in)
  3356. }
  3357. info := &grpc.UnaryServerInfo{
  3358. Server: srv,
  3359. FullMethod: "/tendermint.abci.ABCIApplication/Commit",
  3360. }
  3361. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3362. return srv.(ABCIApplicationServer).Commit(ctx, req.(*RequestCommit))
  3363. }
  3364. return interceptor(ctx, in, info, handler)
  3365. }
  3366. func _ABCIApplication_InitChain_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3367. in := new(RequestInitChain)
  3368. if err := dec(in); err != nil {
  3369. return nil, err
  3370. }
  3371. if interceptor == nil {
  3372. return srv.(ABCIApplicationServer).InitChain(ctx, in)
  3373. }
  3374. info := &grpc.UnaryServerInfo{
  3375. Server: srv,
  3376. FullMethod: "/tendermint.abci.ABCIApplication/InitChain",
  3377. }
  3378. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3379. return srv.(ABCIApplicationServer).InitChain(ctx, req.(*RequestInitChain))
  3380. }
  3381. return interceptor(ctx, in, info, handler)
  3382. }
  3383. func _ABCIApplication_BeginBlock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3384. in := new(RequestBeginBlock)
  3385. if err := dec(in); err != nil {
  3386. return nil, err
  3387. }
  3388. if interceptor == nil {
  3389. return srv.(ABCIApplicationServer).BeginBlock(ctx, in)
  3390. }
  3391. info := &grpc.UnaryServerInfo{
  3392. Server: srv,
  3393. FullMethod: "/tendermint.abci.ABCIApplication/BeginBlock",
  3394. }
  3395. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3396. return srv.(ABCIApplicationServer).BeginBlock(ctx, req.(*RequestBeginBlock))
  3397. }
  3398. return interceptor(ctx, in, info, handler)
  3399. }
  3400. func _ABCIApplication_EndBlock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3401. in := new(RequestEndBlock)
  3402. if err := dec(in); err != nil {
  3403. return nil, err
  3404. }
  3405. if interceptor == nil {
  3406. return srv.(ABCIApplicationServer).EndBlock(ctx, in)
  3407. }
  3408. info := &grpc.UnaryServerInfo{
  3409. Server: srv,
  3410. FullMethod: "/tendermint.abci.ABCIApplication/EndBlock",
  3411. }
  3412. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3413. return srv.(ABCIApplicationServer).EndBlock(ctx, req.(*RequestEndBlock))
  3414. }
  3415. return interceptor(ctx, in, info, handler)
  3416. }
  3417. func _ABCIApplication_ListSnapshots_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3418. in := new(RequestListSnapshots)
  3419. if err := dec(in); err != nil {
  3420. return nil, err
  3421. }
  3422. if interceptor == nil {
  3423. return srv.(ABCIApplicationServer).ListSnapshots(ctx, in)
  3424. }
  3425. info := &grpc.UnaryServerInfo{
  3426. Server: srv,
  3427. FullMethod: "/tendermint.abci.ABCIApplication/ListSnapshots",
  3428. }
  3429. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3430. return srv.(ABCIApplicationServer).ListSnapshots(ctx, req.(*RequestListSnapshots))
  3431. }
  3432. return interceptor(ctx, in, info, handler)
  3433. }
  3434. func _ABCIApplication_OfferSnapshot_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3435. in := new(RequestOfferSnapshot)
  3436. if err := dec(in); err != nil {
  3437. return nil, err
  3438. }
  3439. if interceptor == nil {
  3440. return srv.(ABCIApplicationServer).OfferSnapshot(ctx, in)
  3441. }
  3442. info := &grpc.UnaryServerInfo{
  3443. Server: srv,
  3444. FullMethod: "/tendermint.abci.ABCIApplication/OfferSnapshot",
  3445. }
  3446. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3447. return srv.(ABCIApplicationServer).OfferSnapshot(ctx, req.(*RequestOfferSnapshot))
  3448. }
  3449. return interceptor(ctx, in, info, handler)
  3450. }
  3451. func _ABCIApplication_LoadSnapshotChunk_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3452. in := new(RequestLoadSnapshotChunk)
  3453. if err := dec(in); err != nil {
  3454. return nil, err
  3455. }
  3456. if interceptor == nil {
  3457. return srv.(ABCIApplicationServer).LoadSnapshotChunk(ctx, in)
  3458. }
  3459. info := &grpc.UnaryServerInfo{
  3460. Server: srv,
  3461. FullMethod: "/tendermint.abci.ABCIApplication/LoadSnapshotChunk",
  3462. }
  3463. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3464. return srv.(ABCIApplicationServer).LoadSnapshotChunk(ctx, req.(*RequestLoadSnapshotChunk))
  3465. }
  3466. return interceptor(ctx, in, info, handler)
  3467. }
  3468. func _ABCIApplication_ApplySnapshotChunk_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3469. in := new(RequestApplySnapshotChunk)
  3470. if err := dec(in); err != nil {
  3471. return nil, err
  3472. }
  3473. if interceptor == nil {
  3474. return srv.(ABCIApplicationServer).ApplySnapshotChunk(ctx, in)
  3475. }
  3476. info := &grpc.UnaryServerInfo{
  3477. Server: srv,
  3478. FullMethod: "/tendermint.abci.ABCIApplication/ApplySnapshotChunk",
  3479. }
  3480. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3481. return srv.(ABCIApplicationServer).ApplySnapshotChunk(ctx, req.(*RequestApplySnapshotChunk))
  3482. }
  3483. return interceptor(ctx, in, info, handler)
  3484. }
  3485. var _ABCIApplication_serviceDesc = grpc.ServiceDesc{
  3486. ServiceName: "tendermint.abci.ABCIApplication",
  3487. HandlerType: (*ABCIApplicationServer)(nil),
  3488. Methods: []grpc.MethodDesc{
  3489. {
  3490. MethodName: "Echo",
  3491. Handler: _ABCIApplication_Echo_Handler,
  3492. },
  3493. {
  3494. MethodName: "Flush",
  3495. Handler: _ABCIApplication_Flush_Handler,
  3496. },
  3497. {
  3498. MethodName: "Info",
  3499. Handler: _ABCIApplication_Info_Handler,
  3500. },
  3501. {
  3502. MethodName: "SetOption",
  3503. Handler: _ABCIApplication_SetOption_Handler,
  3504. },
  3505. {
  3506. MethodName: "DeliverTx",
  3507. Handler: _ABCIApplication_DeliverTx_Handler,
  3508. },
  3509. {
  3510. MethodName: "CheckTx",
  3511. Handler: _ABCIApplication_CheckTx_Handler,
  3512. },
  3513. {
  3514. MethodName: "Query",
  3515. Handler: _ABCIApplication_Query_Handler,
  3516. },
  3517. {
  3518. MethodName: "Commit",
  3519. Handler: _ABCIApplication_Commit_Handler,
  3520. },
  3521. {
  3522. MethodName: "InitChain",
  3523. Handler: _ABCIApplication_InitChain_Handler,
  3524. },
  3525. {
  3526. MethodName: "BeginBlock",
  3527. Handler: _ABCIApplication_BeginBlock_Handler,
  3528. },
  3529. {
  3530. MethodName: "EndBlock",
  3531. Handler: _ABCIApplication_EndBlock_Handler,
  3532. },
  3533. {
  3534. MethodName: "ListSnapshots",
  3535. Handler: _ABCIApplication_ListSnapshots_Handler,
  3536. },
  3537. {
  3538. MethodName: "OfferSnapshot",
  3539. Handler: _ABCIApplication_OfferSnapshot_Handler,
  3540. },
  3541. {
  3542. MethodName: "LoadSnapshotChunk",
  3543. Handler: _ABCIApplication_LoadSnapshotChunk_Handler,
  3544. },
  3545. {
  3546. MethodName: "ApplySnapshotChunk",
  3547. Handler: _ABCIApplication_ApplySnapshotChunk_Handler,
  3548. },
  3549. },
  3550. Streams: []grpc.StreamDesc{},
  3551. Metadata: "tendermint/abci/types.proto",
  3552. }
  3553. func (m *Request) Marshal() (dAtA []byte, err error) {
  3554. size := m.Size()
  3555. dAtA = make([]byte, size)
  3556. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3557. if err != nil {
  3558. return nil, err
  3559. }
  3560. return dAtA[:n], nil
  3561. }
  3562. func (m *Request) MarshalTo(dAtA []byte) (int, error) {
  3563. size := m.Size()
  3564. return m.MarshalToSizedBuffer(dAtA[:size])
  3565. }
  3566. func (m *Request) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3567. i := len(dAtA)
  3568. _ = i
  3569. var l int
  3570. _ = l
  3571. if m.Value != nil {
  3572. {
  3573. size := m.Value.Size()
  3574. i -= size
  3575. if _, err := m.Value.MarshalTo(dAtA[i:]); err != nil {
  3576. return 0, err
  3577. }
  3578. }
  3579. }
  3580. return len(dAtA) - i, nil
  3581. }
  3582. func (m *Request_Echo) MarshalTo(dAtA []byte) (int, error) {
  3583. size := m.Size()
  3584. return m.MarshalToSizedBuffer(dAtA[:size])
  3585. }
  3586. func (m *Request_Echo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3587. i := len(dAtA)
  3588. if m.Echo != nil {
  3589. {
  3590. size, err := m.Echo.MarshalToSizedBuffer(dAtA[:i])
  3591. if err != nil {
  3592. return 0, err
  3593. }
  3594. i -= size
  3595. i = encodeVarintTypes(dAtA, i, uint64(size))
  3596. }
  3597. i--
  3598. dAtA[i] = 0xa
  3599. }
  3600. return len(dAtA) - i, nil
  3601. }
  3602. func (m *Request_Flush) MarshalTo(dAtA []byte) (int, error) {
  3603. size := m.Size()
  3604. return m.MarshalToSizedBuffer(dAtA[:size])
  3605. }
  3606. func (m *Request_Flush) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3607. i := len(dAtA)
  3608. if m.Flush != nil {
  3609. {
  3610. size, err := m.Flush.MarshalToSizedBuffer(dAtA[:i])
  3611. if err != nil {
  3612. return 0, err
  3613. }
  3614. i -= size
  3615. i = encodeVarintTypes(dAtA, i, uint64(size))
  3616. }
  3617. i--
  3618. dAtA[i] = 0x12
  3619. }
  3620. return len(dAtA) - i, nil
  3621. }
  3622. func (m *Request_Info) MarshalTo(dAtA []byte) (int, error) {
  3623. size := m.Size()
  3624. return m.MarshalToSizedBuffer(dAtA[:size])
  3625. }
  3626. func (m *Request_Info) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3627. i := len(dAtA)
  3628. if m.Info != nil {
  3629. {
  3630. size, err := m.Info.MarshalToSizedBuffer(dAtA[:i])
  3631. if err != nil {
  3632. return 0, err
  3633. }
  3634. i -= size
  3635. i = encodeVarintTypes(dAtA, i, uint64(size))
  3636. }
  3637. i--
  3638. dAtA[i] = 0x1a
  3639. }
  3640. return len(dAtA) - i, nil
  3641. }
  3642. func (m *Request_SetOption) MarshalTo(dAtA []byte) (int, error) {
  3643. size := m.Size()
  3644. return m.MarshalToSizedBuffer(dAtA[:size])
  3645. }
  3646. func (m *Request_SetOption) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3647. i := len(dAtA)
  3648. if m.SetOption != nil {
  3649. {
  3650. size, err := m.SetOption.MarshalToSizedBuffer(dAtA[:i])
  3651. if err != nil {
  3652. return 0, err
  3653. }
  3654. i -= size
  3655. i = encodeVarintTypes(dAtA, i, uint64(size))
  3656. }
  3657. i--
  3658. dAtA[i] = 0x22
  3659. }
  3660. return len(dAtA) - i, nil
  3661. }
  3662. func (m *Request_InitChain) MarshalTo(dAtA []byte) (int, error) {
  3663. size := m.Size()
  3664. return m.MarshalToSizedBuffer(dAtA[:size])
  3665. }
  3666. func (m *Request_InitChain) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3667. i := len(dAtA)
  3668. if m.InitChain != nil {
  3669. {
  3670. size, err := m.InitChain.MarshalToSizedBuffer(dAtA[:i])
  3671. if err != nil {
  3672. return 0, err
  3673. }
  3674. i -= size
  3675. i = encodeVarintTypes(dAtA, i, uint64(size))
  3676. }
  3677. i--
  3678. dAtA[i] = 0x2a
  3679. }
  3680. return len(dAtA) - i, nil
  3681. }
  3682. func (m *Request_Query) MarshalTo(dAtA []byte) (int, error) {
  3683. size := m.Size()
  3684. return m.MarshalToSizedBuffer(dAtA[:size])
  3685. }
  3686. func (m *Request_Query) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3687. i := len(dAtA)
  3688. if m.Query != nil {
  3689. {
  3690. size, err := m.Query.MarshalToSizedBuffer(dAtA[:i])
  3691. if err != nil {
  3692. return 0, err
  3693. }
  3694. i -= size
  3695. i = encodeVarintTypes(dAtA, i, uint64(size))
  3696. }
  3697. i--
  3698. dAtA[i] = 0x32
  3699. }
  3700. return len(dAtA) - i, nil
  3701. }
  3702. func (m *Request_BeginBlock) MarshalTo(dAtA []byte) (int, error) {
  3703. size := m.Size()
  3704. return m.MarshalToSizedBuffer(dAtA[:size])
  3705. }
  3706. func (m *Request_BeginBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3707. i := len(dAtA)
  3708. if m.BeginBlock != nil {
  3709. {
  3710. size, err := m.BeginBlock.MarshalToSizedBuffer(dAtA[:i])
  3711. if err != nil {
  3712. return 0, err
  3713. }
  3714. i -= size
  3715. i = encodeVarintTypes(dAtA, i, uint64(size))
  3716. }
  3717. i--
  3718. dAtA[i] = 0x3a
  3719. }
  3720. return len(dAtA) - i, nil
  3721. }
  3722. func (m *Request_CheckTx) MarshalTo(dAtA []byte) (int, error) {
  3723. size := m.Size()
  3724. return m.MarshalToSizedBuffer(dAtA[:size])
  3725. }
  3726. func (m *Request_CheckTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3727. i := len(dAtA)
  3728. if m.CheckTx != nil {
  3729. {
  3730. size, err := m.CheckTx.MarshalToSizedBuffer(dAtA[:i])
  3731. if err != nil {
  3732. return 0, err
  3733. }
  3734. i -= size
  3735. i = encodeVarintTypes(dAtA, i, uint64(size))
  3736. }
  3737. i--
  3738. dAtA[i] = 0x42
  3739. }
  3740. return len(dAtA) - i, nil
  3741. }
  3742. func (m *Request_DeliverTx) MarshalTo(dAtA []byte) (int, error) {
  3743. size := m.Size()
  3744. return m.MarshalToSizedBuffer(dAtA[:size])
  3745. }
  3746. func (m *Request_DeliverTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3747. i := len(dAtA)
  3748. if m.DeliverTx != nil {
  3749. {
  3750. size, err := m.DeliverTx.MarshalToSizedBuffer(dAtA[:i])
  3751. if err != nil {
  3752. return 0, err
  3753. }
  3754. i -= size
  3755. i = encodeVarintTypes(dAtA, i, uint64(size))
  3756. }
  3757. i--
  3758. dAtA[i] = 0x4a
  3759. }
  3760. return len(dAtA) - i, nil
  3761. }
  3762. func (m *Request_EndBlock) MarshalTo(dAtA []byte) (int, error) {
  3763. size := m.Size()
  3764. return m.MarshalToSizedBuffer(dAtA[:size])
  3765. }
  3766. func (m *Request_EndBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3767. i := len(dAtA)
  3768. if m.EndBlock != nil {
  3769. {
  3770. size, err := m.EndBlock.MarshalToSizedBuffer(dAtA[:i])
  3771. if err != nil {
  3772. return 0, err
  3773. }
  3774. i -= size
  3775. i = encodeVarintTypes(dAtA, i, uint64(size))
  3776. }
  3777. i--
  3778. dAtA[i] = 0x52
  3779. }
  3780. return len(dAtA) - i, nil
  3781. }
  3782. func (m *Request_Commit) MarshalTo(dAtA []byte) (int, error) {
  3783. size := m.Size()
  3784. return m.MarshalToSizedBuffer(dAtA[:size])
  3785. }
  3786. func (m *Request_Commit) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3787. i := len(dAtA)
  3788. if m.Commit != nil {
  3789. {
  3790. size, err := m.Commit.MarshalToSizedBuffer(dAtA[:i])
  3791. if err != nil {
  3792. return 0, err
  3793. }
  3794. i -= size
  3795. i = encodeVarintTypes(dAtA, i, uint64(size))
  3796. }
  3797. i--
  3798. dAtA[i] = 0x5a
  3799. }
  3800. return len(dAtA) - i, nil
  3801. }
  3802. func (m *Request_ListSnapshots) MarshalTo(dAtA []byte) (int, error) {
  3803. size := m.Size()
  3804. return m.MarshalToSizedBuffer(dAtA[:size])
  3805. }
  3806. func (m *Request_ListSnapshots) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3807. i := len(dAtA)
  3808. if m.ListSnapshots != nil {
  3809. {
  3810. size, err := m.ListSnapshots.MarshalToSizedBuffer(dAtA[:i])
  3811. if err != nil {
  3812. return 0, err
  3813. }
  3814. i -= size
  3815. i = encodeVarintTypes(dAtA, i, uint64(size))
  3816. }
  3817. i--
  3818. dAtA[i] = 0x62
  3819. }
  3820. return len(dAtA) - i, nil
  3821. }
  3822. func (m *Request_OfferSnapshot) MarshalTo(dAtA []byte) (int, error) {
  3823. size := m.Size()
  3824. return m.MarshalToSizedBuffer(dAtA[:size])
  3825. }
  3826. func (m *Request_OfferSnapshot) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3827. i := len(dAtA)
  3828. if m.OfferSnapshot != nil {
  3829. {
  3830. size, err := m.OfferSnapshot.MarshalToSizedBuffer(dAtA[:i])
  3831. if err != nil {
  3832. return 0, err
  3833. }
  3834. i -= size
  3835. i = encodeVarintTypes(dAtA, i, uint64(size))
  3836. }
  3837. i--
  3838. dAtA[i] = 0x6a
  3839. }
  3840. return len(dAtA) - i, nil
  3841. }
  3842. func (m *Request_LoadSnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  3843. size := m.Size()
  3844. return m.MarshalToSizedBuffer(dAtA[:size])
  3845. }
  3846. func (m *Request_LoadSnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3847. i := len(dAtA)
  3848. if m.LoadSnapshotChunk != nil {
  3849. {
  3850. size, err := m.LoadSnapshotChunk.MarshalToSizedBuffer(dAtA[:i])
  3851. if err != nil {
  3852. return 0, err
  3853. }
  3854. i -= size
  3855. i = encodeVarintTypes(dAtA, i, uint64(size))
  3856. }
  3857. i--
  3858. dAtA[i] = 0x72
  3859. }
  3860. return len(dAtA) - i, nil
  3861. }
  3862. func (m *Request_ApplySnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  3863. size := m.Size()
  3864. return m.MarshalToSizedBuffer(dAtA[:size])
  3865. }
  3866. func (m *Request_ApplySnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3867. i := len(dAtA)
  3868. if m.ApplySnapshotChunk != nil {
  3869. {
  3870. size, err := m.ApplySnapshotChunk.MarshalToSizedBuffer(dAtA[:i])
  3871. if err != nil {
  3872. return 0, err
  3873. }
  3874. i -= size
  3875. i = encodeVarintTypes(dAtA, i, uint64(size))
  3876. }
  3877. i--
  3878. dAtA[i] = 0x7a
  3879. }
  3880. return len(dAtA) - i, nil
  3881. }
  3882. func (m *RequestEcho) Marshal() (dAtA []byte, err error) {
  3883. size := m.Size()
  3884. dAtA = make([]byte, size)
  3885. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3886. if err != nil {
  3887. return nil, err
  3888. }
  3889. return dAtA[:n], nil
  3890. }
  3891. func (m *RequestEcho) MarshalTo(dAtA []byte) (int, error) {
  3892. size := m.Size()
  3893. return m.MarshalToSizedBuffer(dAtA[:size])
  3894. }
  3895. func (m *RequestEcho) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3896. i := len(dAtA)
  3897. _ = i
  3898. var l int
  3899. _ = l
  3900. if len(m.Message) > 0 {
  3901. i -= len(m.Message)
  3902. copy(dAtA[i:], m.Message)
  3903. i = encodeVarintTypes(dAtA, i, uint64(len(m.Message)))
  3904. i--
  3905. dAtA[i] = 0xa
  3906. }
  3907. return len(dAtA) - i, nil
  3908. }
  3909. func (m *RequestFlush) Marshal() (dAtA []byte, err error) {
  3910. size := m.Size()
  3911. dAtA = make([]byte, size)
  3912. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3913. if err != nil {
  3914. return nil, err
  3915. }
  3916. return dAtA[:n], nil
  3917. }
  3918. func (m *RequestFlush) MarshalTo(dAtA []byte) (int, error) {
  3919. size := m.Size()
  3920. return m.MarshalToSizedBuffer(dAtA[:size])
  3921. }
  3922. func (m *RequestFlush) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3923. i := len(dAtA)
  3924. _ = i
  3925. var l int
  3926. _ = l
  3927. return len(dAtA) - i, nil
  3928. }
  3929. func (m *RequestInfo) Marshal() (dAtA []byte, err error) {
  3930. size := m.Size()
  3931. dAtA = make([]byte, size)
  3932. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3933. if err != nil {
  3934. return nil, err
  3935. }
  3936. return dAtA[:n], nil
  3937. }
  3938. func (m *RequestInfo) MarshalTo(dAtA []byte) (int, error) {
  3939. size := m.Size()
  3940. return m.MarshalToSizedBuffer(dAtA[:size])
  3941. }
  3942. func (m *RequestInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3943. i := len(dAtA)
  3944. _ = i
  3945. var l int
  3946. _ = l
  3947. if m.P2PVersion != 0 {
  3948. i = encodeVarintTypes(dAtA, i, uint64(m.P2PVersion))
  3949. i--
  3950. dAtA[i] = 0x18
  3951. }
  3952. if m.BlockVersion != 0 {
  3953. i = encodeVarintTypes(dAtA, i, uint64(m.BlockVersion))
  3954. i--
  3955. dAtA[i] = 0x10
  3956. }
  3957. if len(m.Version) > 0 {
  3958. i -= len(m.Version)
  3959. copy(dAtA[i:], m.Version)
  3960. i = encodeVarintTypes(dAtA, i, uint64(len(m.Version)))
  3961. i--
  3962. dAtA[i] = 0xa
  3963. }
  3964. return len(dAtA) - i, nil
  3965. }
  3966. func (m *RequestSetOption) Marshal() (dAtA []byte, err error) {
  3967. size := m.Size()
  3968. dAtA = make([]byte, size)
  3969. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3970. if err != nil {
  3971. return nil, err
  3972. }
  3973. return dAtA[:n], nil
  3974. }
  3975. func (m *RequestSetOption) MarshalTo(dAtA []byte) (int, error) {
  3976. size := m.Size()
  3977. return m.MarshalToSizedBuffer(dAtA[:size])
  3978. }
  3979. func (m *RequestSetOption) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3980. i := len(dAtA)
  3981. _ = i
  3982. var l int
  3983. _ = l
  3984. if len(m.Value) > 0 {
  3985. i -= len(m.Value)
  3986. copy(dAtA[i:], m.Value)
  3987. i = encodeVarintTypes(dAtA, i, uint64(len(m.Value)))
  3988. i--
  3989. dAtA[i] = 0x12
  3990. }
  3991. if len(m.Key) > 0 {
  3992. i -= len(m.Key)
  3993. copy(dAtA[i:], m.Key)
  3994. i = encodeVarintTypes(dAtA, i, uint64(len(m.Key)))
  3995. i--
  3996. dAtA[i] = 0xa
  3997. }
  3998. return len(dAtA) - i, nil
  3999. }
  4000. func (m *RequestInitChain) Marshal() (dAtA []byte, err error) {
  4001. size := m.Size()
  4002. dAtA = make([]byte, size)
  4003. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4004. if err != nil {
  4005. return nil, err
  4006. }
  4007. return dAtA[:n], nil
  4008. }
  4009. func (m *RequestInitChain) MarshalTo(dAtA []byte) (int, error) {
  4010. size := m.Size()
  4011. return m.MarshalToSizedBuffer(dAtA[:size])
  4012. }
  4013. func (m *RequestInitChain) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4014. i := len(dAtA)
  4015. _ = i
  4016. var l int
  4017. _ = l
  4018. if len(m.AppStateBytes) > 0 {
  4019. i -= len(m.AppStateBytes)
  4020. copy(dAtA[i:], m.AppStateBytes)
  4021. i = encodeVarintTypes(dAtA, i, uint64(len(m.AppStateBytes)))
  4022. i--
  4023. dAtA[i] = 0x2a
  4024. }
  4025. if len(m.Validators) > 0 {
  4026. for iNdEx := len(m.Validators) - 1; iNdEx >= 0; iNdEx-- {
  4027. {
  4028. size, err := m.Validators[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4029. if err != nil {
  4030. return 0, err
  4031. }
  4032. i -= size
  4033. i = encodeVarintTypes(dAtA, i, uint64(size))
  4034. }
  4035. i--
  4036. dAtA[i] = 0x22
  4037. }
  4038. }
  4039. if m.ConsensusParams != nil {
  4040. {
  4041. size, err := m.ConsensusParams.MarshalToSizedBuffer(dAtA[:i])
  4042. if err != nil {
  4043. return 0, err
  4044. }
  4045. i -= size
  4046. i = encodeVarintTypes(dAtA, i, uint64(size))
  4047. }
  4048. i--
  4049. dAtA[i] = 0x1a
  4050. }
  4051. if len(m.ChainId) > 0 {
  4052. i -= len(m.ChainId)
  4053. copy(dAtA[i:], m.ChainId)
  4054. i = encodeVarintTypes(dAtA, i, uint64(len(m.ChainId)))
  4055. i--
  4056. dAtA[i] = 0x12
  4057. }
  4058. n17, err17 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Time, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Time):])
  4059. if err17 != nil {
  4060. return 0, err17
  4061. }
  4062. i -= n17
  4063. i = encodeVarintTypes(dAtA, i, uint64(n17))
  4064. i--
  4065. dAtA[i] = 0xa
  4066. return len(dAtA) - i, nil
  4067. }
  4068. func (m *RequestQuery) Marshal() (dAtA []byte, err error) {
  4069. size := m.Size()
  4070. dAtA = make([]byte, size)
  4071. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4072. if err != nil {
  4073. return nil, err
  4074. }
  4075. return dAtA[:n], nil
  4076. }
  4077. func (m *RequestQuery) MarshalTo(dAtA []byte) (int, error) {
  4078. size := m.Size()
  4079. return m.MarshalToSizedBuffer(dAtA[:size])
  4080. }
  4081. func (m *RequestQuery) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4082. i := len(dAtA)
  4083. _ = i
  4084. var l int
  4085. _ = l
  4086. if m.Prove {
  4087. i--
  4088. if m.Prove {
  4089. dAtA[i] = 1
  4090. } else {
  4091. dAtA[i] = 0
  4092. }
  4093. i--
  4094. dAtA[i] = 0x20
  4095. }
  4096. if m.Height != 0 {
  4097. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  4098. i--
  4099. dAtA[i] = 0x18
  4100. }
  4101. if len(m.Path) > 0 {
  4102. i -= len(m.Path)
  4103. copy(dAtA[i:], m.Path)
  4104. i = encodeVarintTypes(dAtA, i, uint64(len(m.Path)))
  4105. i--
  4106. dAtA[i] = 0x12
  4107. }
  4108. if len(m.Data) > 0 {
  4109. i -= len(m.Data)
  4110. copy(dAtA[i:], m.Data)
  4111. i = encodeVarintTypes(dAtA, i, uint64(len(m.Data)))
  4112. i--
  4113. dAtA[i] = 0xa
  4114. }
  4115. return len(dAtA) - i, nil
  4116. }
  4117. func (m *RequestBeginBlock) Marshal() (dAtA []byte, err error) {
  4118. size := m.Size()
  4119. dAtA = make([]byte, size)
  4120. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4121. if err != nil {
  4122. return nil, err
  4123. }
  4124. return dAtA[:n], nil
  4125. }
  4126. func (m *RequestBeginBlock) MarshalTo(dAtA []byte) (int, error) {
  4127. size := m.Size()
  4128. return m.MarshalToSizedBuffer(dAtA[:size])
  4129. }
  4130. func (m *RequestBeginBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4131. i := len(dAtA)
  4132. _ = i
  4133. var l int
  4134. _ = l
  4135. if len(m.ByzantineValidators) > 0 {
  4136. for iNdEx := len(m.ByzantineValidators) - 1; iNdEx >= 0; iNdEx-- {
  4137. {
  4138. size, err := m.ByzantineValidators[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4139. if err != nil {
  4140. return 0, err
  4141. }
  4142. i -= size
  4143. i = encodeVarintTypes(dAtA, i, uint64(size))
  4144. }
  4145. i--
  4146. dAtA[i] = 0x22
  4147. }
  4148. }
  4149. {
  4150. size, err := m.LastCommitInfo.MarshalToSizedBuffer(dAtA[:i])
  4151. if err != nil {
  4152. return 0, err
  4153. }
  4154. i -= size
  4155. i = encodeVarintTypes(dAtA, i, uint64(size))
  4156. }
  4157. i--
  4158. dAtA[i] = 0x1a
  4159. {
  4160. size, err := m.Header.MarshalToSizedBuffer(dAtA[:i])
  4161. if err != nil {
  4162. return 0, err
  4163. }
  4164. i -= size
  4165. i = encodeVarintTypes(dAtA, i, uint64(size))
  4166. }
  4167. i--
  4168. dAtA[i] = 0x12
  4169. if len(m.Hash) > 0 {
  4170. i -= len(m.Hash)
  4171. copy(dAtA[i:], m.Hash)
  4172. i = encodeVarintTypes(dAtA, i, uint64(len(m.Hash)))
  4173. i--
  4174. dAtA[i] = 0xa
  4175. }
  4176. return len(dAtA) - i, nil
  4177. }
  4178. func (m *RequestCheckTx) Marshal() (dAtA []byte, err error) {
  4179. size := m.Size()
  4180. dAtA = make([]byte, size)
  4181. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4182. if err != nil {
  4183. return nil, err
  4184. }
  4185. return dAtA[:n], nil
  4186. }
  4187. func (m *RequestCheckTx) MarshalTo(dAtA []byte) (int, error) {
  4188. size := m.Size()
  4189. return m.MarshalToSizedBuffer(dAtA[:size])
  4190. }
  4191. func (m *RequestCheckTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4192. i := len(dAtA)
  4193. _ = i
  4194. var l int
  4195. _ = l
  4196. if m.Type != 0 {
  4197. i = encodeVarintTypes(dAtA, i, uint64(m.Type))
  4198. i--
  4199. dAtA[i] = 0x10
  4200. }
  4201. if len(m.Tx) > 0 {
  4202. i -= len(m.Tx)
  4203. copy(dAtA[i:], m.Tx)
  4204. i = encodeVarintTypes(dAtA, i, uint64(len(m.Tx)))
  4205. i--
  4206. dAtA[i] = 0xa
  4207. }
  4208. return len(dAtA) - i, nil
  4209. }
  4210. func (m *RequestDeliverTx) Marshal() (dAtA []byte, err error) {
  4211. size := m.Size()
  4212. dAtA = make([]byte, size)
  4213. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4214. if err != nil {
  4215. return nil, err
  4216. }
  4217. return dAtA[:n], nil
  4218. }
  4219. func (m *RequestDeliverTx) MarshalTo(dAtA []byte) (int, error) {
  4220. size := m.Size()
  4221. return m.MarshalToSizedBuffer(dAtA[:size])
  4222. }
  4223. func (m *RequestDeliverTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4224. i := len(dAtA)
  4225. _ = i
  4226. var l int
  4227. _ = l
  4228. if len(m.Tx) > 0 {
  4229. i -= len(m.Tx)
  4230. copy(dAtA[i:], m.Tx)
  4231. i = encodeVarintTypes(dAtA, i, uint64(len(m.Tx)))
  4232. i--
  4233. dAtA[i] = 0xa
  4234. }
  4235. return len(dAtA) - i, nil
  4236. }
  4237. func (m *RequestEndBlock) Marshal() (dAtA []byte, err error) {
  4238. size := m.Size()
  4239. dAtA = make([]byte, size)
  4240. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4241. if err != nil {
  4242. return nil, err
  4243. }
  4244. return dAtA[:n], nil
  4245. }
  4246. func (m *RequestEndBlock) MarshalTo(dAtA []byte) (int, error) {
  4247. size := m.Size()
  4248. return m.MarshalToSizedBuffer(dAtA[:size])
  4249. }
  4250. func (m *RequestEndBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4251. i := len(dAtA)
  4252. _ = i
  4253. var l int
  4254. _ = l
  4255. if m.Height != 0 {
  4256. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  4257. i--
  4258. dAtA[i] = 0x8
  4259. }
  4260. return len(dAtA) - i, nil
  4261. }
  4262. func (m *RequestCommit) Marshal() (dAtA []byte, err error) {
  4263. size := m.Size()
  4264. dAtA = make([]byte, size)
  4265. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4266. if err != nil {
  4267. return nil, err
  4268. }
  4269. return dAtA[:n], nil
  4270. }
  4271. func (m *RequestCommit) MarshalTo(dAtA []byte) (int, error) {
  4272. size := m.Size()
  4273. return m.MarshalToSizedBuffer(dAtA[:size])
  4274. }
  4275. func (m *RequestCommit) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4276. i := len(dAtA)
  4277. _ = i
  4278. var l int
  4279. _ = l
  4280. return len(dAtA) - i, nil
  4281. }
  4282. func (m *RequestListSnapshots) Marshal() (dAtA []byte, err error) {
  4283. size := m.Size()
  4284. dAtA = make([]byte, size)
  4285. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4286. if err != nil {
  4287. return nil, err
  4288. }
  4289. return dAtA[:n], nil
  4290. }
  4291. func (m *RequestListSnapshots) MarshalTo(dAtA []byte) (int, error) {
  4292. size := m.Size()
  4293. return m.MarshalToSizedBuffer(dAtA[:size])
  4294. }
  4295. func (m *RequestListSnapshots) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4296. i := len(dAtA)
  4297. _ = i
  4298. var l int
  4299. _ = l
  4300. return len(dAtA) - i, nil
  4301. }
  4302. func (m *RequestOfferSnapshot) Marshal() (dAtA []byte, err error) {
  4303. size := m.Size()
  4304. dAtA = make([]byte, size)
  4305. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4306. if err != nil {
  4307. return nil, err
  4308. }
  4309. return dAtA[:n], nil
  4310. }
  4311. func (m *RequestOfferSnapshot) MarshalTo(dAtA []byte) (int, error) {
  4312. size := m.Size()
  4313. return m.MarshalToSizedBuffer(dAtA[:size])
  4314. }
  4315. func (m *RequestOfferSnapshot) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4316. i := len(dAtA)
  4317. _ = i
  4318. var l int
  4319. _ = l
  4320. if len(m.AppHash) > 0 {
  4321. i -= len(m.AppHash)
  4322. copy(dAtA[i:], m.AppHash)
  4323. i = encodeVarintTypes(dAtA, i, uint64(len(m.AppHash)))
  4324. i--
  4325. dAtA[i] = 0x12
  4326. }
  4327. if m.Snapshot != nil {
  4328. {
  4329. size, err := m.Snapshot.MarshalToSizedBuffer(dAtA[:i])
  4330. if err != nil {
  4331. return 0, err
  4332. }
  4333. i -= size
  4334. i = encodeVarintTypes(dAtA, i, uint64(size))
  4335. }
  4336. i--
  4337. dAtA[i] = 0xa
  4338. }
  4339. return len(dAtA) - i, nil
  4340. }
  4341. func (m *RequestLoadSnapshotChunk) Marshal() (dAtA []byte, err error) {
  4342. size := m.Size()
  4343. dAtA = make([]byte, size)
  4344. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4345. if err != nil {
  4346. return nil, err
  4347. }
  4348. return dAtA[:n], nil
  4349. }
  4350. func (m *RequestLoadSnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  4351. size := m.Size()
  4352. return m.MarshalToSizedBuffer(dAtA[:size])
  4353. }
  4354. func (m *RequestLoadSnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4355. i := len(dAtA)
  4356. _ = i
  4357. var l int
  4358. _ = l
  4359. if m.Chunk != 0 {
  4360. i = encodeVarintTypes(dAtA, i, uint64(m.Chunk))
  4361. i--
  4362. dAtA[i] = 0x18
  4363. }
  4364. if m.Format != 0 {
  4365. i = encodeVarintTypes(dAtA, i, uint64(m.Format))
  4366. i--
  4367. dAtA[i] = 0x10
  4368. }
  4369. if m.Height != 0 {
  4370. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  4371. i--
  4372. dAtA[i] = 0x8
  4373. }
  4374. return len(dAtA) - i, nil
  4375. }
  4376. func (m *RequestApplySnapshotChunk) Marshal() (dAtA []byte, err error) {
  4377. size := m.Size()
  4378. dAtA = make([]byte, size)
  4379. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4380. if err != nil {
  4381. return nil, err
  4382. }
  4383. return dAtA[:n], nil
  4384. }
  4385. func (m *RequestApplySnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  4386. size := m.Size()
  4387. return m.MarshalToSizedBuffer(dAtA[:size])
  4388. }
  4389. func (m *RequestApplySnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4390. i := len(dAtA)
  4391. _ = i
  4392. var l int
  4393. _ = l
  4394. if len(m.Sender) > 0 {
  4395. i -= len(m.Sender)
  4396. copy(dAtA[i:], m.Sender)
  4397. i = encodeVarintTypes(dAtA, i, uint64(len(m.Sender)))
  4398. i--
  4399. dAtA[i] = 0x1a
  4400. }
  4401. if len(m.Chunk) > 0 {
  4402. i -= len(m.Chunk)
  4403. copy(dAtA[i:], m.Chunk)
  4404. i = encodeVarintTypes(dAtA, i, uint64(len(m.Chunk)))
  4405. i--
  4406. dAtA[i] = 0x12
  4407. }
  4408. if m.Index != 0 {
  4409. i = encodeVarintTypes(dAtA, i, uint64(m.Index))
  4410. i--
  4411. dAtA[i] = 0x8
  4412. }
  4413. return len(dAtA) - i, nil
  4414. }
  4415. func (m *Response) Marshal() (dAtA []byte, err error) {
  4416. size := m.Size()
  4417. dAtA = make([]byte, size)
  4418. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4419. if err != nil {
  4420. return nil, err
  4421. }
  4422. return dAtA[:n], nil
  4423. }
  4424. func (m *Response) MarshalTo(dAtA []byte) (int, error) {
  4425. size := m.Size()
  4426. return m.MarshalToSizedBuffer(dAtA[:size])
  4427. }
  4428. func (m *Response) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4429. i := len(dAtA)
  4430. _ = i
  4431. var l int
  4432. _ = l
  4433. if m.Value != nil {
  4434. {
  4435. size := m.Value.Size()
  4436. i -= size
  4437. if _, err := m.Value.MarshalTo(dAtA[i:]); err != nil {
  4438. return 0, err
  4439. }
  4440. }
  4441. }
  4442. return len(dAtA) - i, nil
  4443. }
  4444. func (m *Response_Exception) MarshalTo(dAtA []byte) (int, error) {
  4445. size := m.Size()
  4446. return m.MarshalToSizedBuffer(dAtA[:size])
  4447. }
  4448. func (m *Response_Exception) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4449. i := len(dAtA)
  4450. if m.Exception != nil {
  4451. {
  4452. size, err := m.Exception.MarshalToSizedBuffer(dAtA[:i])
  4453. if err != nil {
  4454. return 0, err
  4455. }
  4456. i -= size
  4457. i = encodeVarintTypes(dAtA, i, uint64(size))
  4458. }
  4459. i--
  4460. dAtA[i] = 0xa
  4461. }
  4462. return len(dAtA) - i, nil
  4463. }
  4464. func (m *Response_Echo) MarshalTo(dAtA []byte) (int, error) {
  4465. size := m.Size()
  4466. return m.MarshalToSizedBuffer(dAtA[:size])
  4467. }
  4468. func (m *Response_Echo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4469. i := len(dAtA)
  4470. if m.Echo != nil {
  4471. {
  4472. size, err := m.Echo.MarshalToSizedBuffer(dAtA[:i])
  4473. if err != nil {
  4474. return 0, err
  4475. }
  4476. i -= size
  4477. i = encodeVarintTypes(dAtA, i, uint64(size))
  4478. }
  4479. i--
  4480. dAtA[i] = 0x12
  4481. }
  4482. return len(dAtA) - i, nil
  4483. }
  4484. func (m *Response_Flush) MarshalTo(dAtA []byte) (int, error) {
  4485. size := m.Size()
  4486. return m.MarshalToSizedBuffer(dAtA[:size])
  4487. }
  4488. func (m *Response_Flush) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4489. i := len(dAtA)
  4490. if m.Flush != nil {
  4491. {
  4492. size, err := m.Flush.MarshalToSizedBuffer(dAtA[:i])
  4493. if err != nil {
  4494. return 0, err
  4495. }
  4496. i -= size
  4497. i = encodeVarintTypes(dAtA, i, uint64(size))
  4498. }
  4499. i--
  4500. dAtA[i] = 0x1a
  4501. }
  4502. return len(dAtA) - i, nil
  4503. }
  4504. func (m *Response_Info) MarshalTo(dAtA []byte) (int, error) {
  4505. size := m.Size()
  4506. return m.MarshalToSizedBuffer(dAtA[:size])
  4507. }
  4508. func (m *Response_Info) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4509. i := len(dAtA)
  4510. if m.Info != nil {
  4511. {
  4512. size, err := m.Info.MarshalToSizedBuffer(dAtA[:i])
  4513. if err != nil {
  4514. return 0, err
  4515. }
  4516. i -= size
  4517. i = encodeVarintTypes(dAtA, i, uint64(size))
  4518. }
  4519. i--
  4520. dAtA[i] = 0x22
  4521. }
  4522. return len(dAtA) - i, nil
  4523. }
  4524. func (m *Response_SetOption) MarshalTo(dAtA []byte) (int, error) {
  4525. size := m.Size()
  4526. return m.MarshalToSizedBuffer(dAtA[:size])
  4527. }
  4528. func (m *Response_SetOption) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4529. i := len(dAtA)
  4530. if m.SetOption != nil {
  4531. {
  4532. size, err := m.SetOption.MarshalToSizedBuffer(dAtA[:i])
  4533. if err != nil {
  4534. return 0, err
  4535. }
  4536. i -= size
  4537. i = encodeVarintTypes(dAtA, i, uint64(size))
  4538. }
  4539. i--
  4540. dAtA[i] = 0x2a
  4541. }
  4542. return len(dAtA) - i, nil
  4543. }
  4544. func (m *Response_InitChain) MarshalTo(dAtA []byte) (int, error) {
  4545. size := m.Size()
  4546. return m.MarshalToSizedBuffer(dAtA[:size])
  4547. }
  4548. func (m *Response_InitChain) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4549. i := len(dAtA)
  4550. if m.InitChain != nil {
  4551. {
  4552. size, err := m.InitChain.MarshalToSizedBuffer(dAtA[:i])
  4553. if err != nil {
  4554. return 0, err
  4555. }
  4556. i -= size
  4557. i = encodeVarintTypes(dAtA, i, uint64(size))
  4558. }
  4559. i--
  4560. dAtA[i] = 0x32
  4561. }
  4562. return len(dAtA) - i, nil
  4563. }
  4564. func (m *Response_Query) MarshalTo(dAtA []byte) (int, error) {
  4565. size := m.Size()
  4566. return m.MarshalToSizedBuffer(dAtA[:size])
  4567. }
  4568. func (m *Response_Query) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4569. i := len(dAtA)
  4570. if m.Query != nil {
  4571. {
  4572. size, err := m.Query.MarshalToSizedBuffer(dAtA[:i])
  4573. if err != nil {
  4574. return 0, err
  4575. }
  4576. i -= size
  4577. i = encodeVarintTypes(dAtA, i, uint64(size))
  4578. }
  4579. i--
  4580. dAtA[i] = 0x3a
  4581. }
  4582. return len(dAtA) - i, nil
  4583. }
  4584. func (m *Response_BeginBlock) MarshalTo(dAtA []byte) (int, error) {
  4585. size := m.Size()
  4586. return m.MarshalToSizedBuffer(dAtA[:size])
  4587. }
  4588. func (m *Response_BeginBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4589. i := len(dAtA)
  4590. if m.BeginBlock != nil {
  4591. {
  4592. size, err := m.BeginBlock.MarshalToSizedBuffer(dAtA[:i])
  4593. if err != nil {
  4594. return 0, err
  4595. }
  4596. i -= size
  4597. i = encodeVarintTypes(dAtA, i, uint64(size))
  4598. }
  4599. i--
  4600. dAtA[i] = 0x42
  4601. }
  4602. return len(dAtA) - i, nil
  4603. }
  4604. func (m *Response_CheckTx) MarshalTo(dAtA []byte) (int, error) {
  4605. size := m.Size()
  4606. return m.MarshalToSizedBuffer(dAtA[:size])
  4607. }
  4608. func (m *Response_CheckTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4609. i := len(dAtA)
  4610. if m.CheckTx != nil {
  4611. {
  4612. size, err := m.CheckTx.MarshalToSizedBuffer(dAtA[:i])
  4613. if err != nil {
  4614. return 0, err
  4615. }
  4616. i -= size
  4617. i = encodeVarintTypes(dAtA, i, uint64(size))
  4618. }
  4619. i--
  4620. dAtA[i] = 0x4a
  4621. }
  4622. return len(dAtA) - i, nil
  4623. }
  4624. func (m *Response_DeliverTx) MarshalTo(dAtA []byte) (int, error) {
  4625. size := m.Size()
  4626. return m.MarshalToSizedBuffer(dAtA[:size])
  4627. }
  4628. func (m *Response_DeliverTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4629. i := len(dAtA)
  4630. if m.DeliverTx != nil {
  4631. {
  4632. size, err := m.DeliverTx.MarshalToSizedBuffer(dAtA[:i])
  4633. if err != nil {
  4634. return 0, err
  4635. }
  4636. i -= size
  4637. i = encodeVarintTypes(dAtA, i, uint64(size))
  4638. }
  4639. i--
  4640. dAtA[i] = 0x52
  4641. }
  4642. return len(dAtA) - i, nil
  4643. }
  4644. func (m *Response_EndBlock) MarshalTo(dAtA []byte) (int, error) {
  4645. size := m.Size()
  4646. return m.MarshalToSizedBuffer(dAtA[:size])
  4647. }
  4648. func (m *Response_EndBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4649. i := len(dAtA)
  4650. if m.EndBlock != nil {
  4651. {
  4652. size, err := m.EndBlock.MarshalToSizedBuffer(dAtA[:i])
  4653. if err != nil {
  4654. return 0, err
  4655. }
  4656. i -= size
  4657. i = encodeVarintTypes(dAtA, i, uint64(size))
  4658. }
  4659. i--
  4660. dAtA[i] = 0x5a
  4661. }
  4662. return len(dAtA) - i, nil
  4663. }
  4664. func (m *Response_Commit) MarshalTo(dAtA []byte) (int, error) {
  4665. size := m.Size()
  4666. return m.MarshalToSizedBuffer(dAtA[:size])
  4667. }
  4668. func (m *Response_Commit) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4669. i := len(dAtA)
  4670. if m.Commit != nil {
  4671. {
  4672. size, err := m.Commit.MarshalToSizedBuffer(dAtA[:i])
  4673. if err != nil {
  4674. return 0, err
  4675. }
  4676. i -= size
  4677. i = encodeVarintTypes(dAtA, i, uint64(size))
  4678. }
  4679. i--
  4680. dAtA[i] = 0x62
  4681. }
  4682. return len(dAtA) - i, nil
  4683. }
  4684. func (m *Response_ListSnapshots) MarshalTo(dAtA []byte) (int, error) {
  4685. size := m.Size()
  4686. return m.MarshalToSizedBuffer(dAtA[:size])
  4687. }
  4688. func (m *Response_ListSnapshots) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4689. i := len(dAtA)
  4690. if m.ListSnapshots != nil {
  4691. {
  4692. size, err := m.ListSnapshots.MarshalToSizedBuffer(dAtA[:i])
  4693. if err != nil {
  4694. return 0, err
  4695. }
  4696. i -= size
  4697. i = encodeVarintTypes(dAtA, i, uint64(size))
  4698. }
  4699. i--
  4700. dAtA[i] = 0x6a
  4701. }
  4702. return len(dAtA) - i, nil
  4703. }
  4704. func (m *Response_OfferSnapshot) MarshalTo(dAtA []byte) (int, error) {
  4705. size := m.Size()
  4706. return m.MarshalToSizedBuffer(dAtA[:size])
  4707. }
  4708. func (m *Response_OfferSnapshot) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4709. i := len(dAtA)
  4710. if m.OfferSnapshot != nil {
  4711. {
  4712. size, err := m.OfferSnapshot.MarshalToSizedBuffer(dAtA[:i])
  4713. if err != nil {
  4714. return 0, err
  4715. }
  4716. i -= size
  4717. i = encodeVarintTypes(dAtA, i, uint64(size))
  4718. }
  4719. i--
  4720. dAtA[i] = 0x72
  4721. }
  4722. return len(dAtA) - i, nil
  4723. }
  4724. func (m *Response_LoadSnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  4725. size := m.Size()
  4726. return m.MarshalToSizedBuffer(dAtA[:size])
  4727. }
  4728. func (m *Response_LoadSnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4729. i := len(dAtA)
  4730. if m.LoadSnapshotChunk != nil {
  4731. {
  4732. size, err := m.LoadSnapshotChunk.MarshalToSizedBuffer(dAtA[:i])
  4733. if err != nil {
  4734. return 0, err
  4735. }
  4736. i -= size
  4737. i = encodeVarintTypes(dAtA, i, uint64(size))
  4738. }
  4739. i--
  4740. dAtA[i] = 0x7a
  4741. }
  4742. return len(dAtA) - i, nil
  4743. }
  4744. func (m *Response_ApplySnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  4745. size := m.Size()
  4746. return m.MarshalToSizedBuffer(dAtA[:size])
  4747. }
  4748. func (m *Response_ApplySnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4749. i := len(dAtA)
  4750. if m.ApplySnapshotChunk != nil {
  4751. {
  4752. size, err := m.ApplySnapshotChunk.MarshalToSizedBuffer(dAtA[:i])
  4753. if err != nil {
  4754. return 0, err
  4755. }
  4756. i -= size
  4757. i = encodeVarintTypes(dAtA, i, uint64(size))
  4758. }
  4759. i--
  4760. dAtA[i] = 0x1
  4761. i--
  4762. dAtA[i] = 0x82
  4763. }
  4764. return len(dAtA) - i, nil
  4765. }
  4766. func (m *ResponseException) Marshal() (dAtA []byte, err error) {
  4767. size := m.Size()
  4768. dAtA = make([]byte, size)
  4769. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4770. if err != nil {
  4771. return nil, err
  4772. }
  4773. return dAtA[:n], nil
  4774. }
  4775. func (m *ResponseException) MarshalTo(dAtA []byte) (int, error) {
  4776. size := m.Size()
  4777. return m.MarshalToSizedBuffer(dAtA[:size])
  4778. }
  4779. func (m *ResponseException) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4780. i := len(dAtA)
  4781. _ = i
  4782. var l int
  4783. _ = l
  4784. if len(m.Error) > 0 {
  4785. i -= len(m.Error)
  4786. copy(dAtA[i:], m.Error)
  4787. i = encodeVarintTypes(dAtA, i, uint64(len(m.Error)))
  4788. i--
  4789. dAtA[i] = 0xa
  4790. }
  4791. return len(dAtA) - i, nil
  4792. }
  4793. func (m *ResponseEcho) Marshal() (dAtA []byte, err error) {
  4794. size := m.Size()
  4795. dAtA = make([]byte, size)
  4796. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4797. if err != nil {
  4798. return nil, err
  4799. }
  4800. return dAtA[:n], nil
  4801. }
  4802. func (m *ResponseEcho) MarshalTo(dAtA []byte) (int, error) {
  4803. size := m.Size()
  4804. return m.MarshalToSizedBuffer(dAtA[:size])
  4805. }
  4806. func (m *ResponseEcho) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4807. i := len(dAtA)
  4808. _ = i
  4809. var l int
  4810. _ = l
  4811. if len(m.Message) > 0 {
  4812. i -= len(m.Message)
  4813. copy(dAtA[i:], m.Message)
  4814. i = encodeVarintTypes(dAtA, i, uint64(len(m.Message)))
  4815. i--
  4816. dAtA[i] = 0xa
  4817. }
  4818. return len(dAtA) - i, nil
  4819. }
  4820. func (m *ResponseFlush) Marshal() (dAtA []byte, err error) {
  4821. size := m.Size()
  4822. dAtA = make([]byte, size)
  4823. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4824. if err != nil {
  4825. return nil, err
  4826. }
  4827. return dAtA[:n], nil
  4828. }
  4829. func (m *ResponseFlush) MarshalTo(dAtA []byte) (int, error) {
  4830. size := m.Size()
  4831. return m.MarshalToSizedBuffer(dAtA[:size])
  4832. }
  4833. func (m *ResponseFlush) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4834. i := len(dAtA)
  4835. _ = i
  4836. var l int
  4837. _ = l
  4838. return len(dAtA) - i, nil
  4839. }
  4840. func (m *ResponseInfo) Marshal() (dAtA []byte, err error) {
  4841. size := m.Size()
  4842. dAtA = make([]byte, size)
  4843. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4844. if err != nil {
  4845. return nil, err
  4846. }
  4847. return dAtA[:n], nil
  4848. }
  4849. func (m *ResponseInfo) MarshalTo(dAtA []byte) (int, error) {
  4850. size := m.Size()
  4851. return m.MarshalToSizedBuffer(dAtA[:size])
  4852. }
  4853. func (m *ResponseInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4854. i := len(dAtA)
  4855. _ = i
  4856. var l int
  4857. _ = l
  4858. if len(m.LastBlockAppHash) > 0 {
  4859. i -= len(m.LastBlockAppHash)
  4860. copy(dAtA[i:], m.LastBlockAppHash)
  4861. i = encodeVarintTypes(dAtA, i, uint64(len(m.LastBlockAppHash)))
  4862. i--
  4863. dAtA[i] = 0x2a
  4864. }
  4865. if m.LastBlockHeight != 0 {
  4866. i = encodeVarintTypes(dAtA, i, uint64(m.LastBlockHeight))
  4867. i--
  4868. dAtA[i] = 0x20
  4869. }
  4870. if m.AppVersion != 0 {
  4871. i = encodeVarintTypes(dAtA, i, uint64(m.AppVersion))
  4872. i--
  4873. dAtA[i] = 0x18
  4874. }
  4875. if len(m.Version) > 0 {
  4876. i -= len(m.Version)
  4877. copy(dAtA[i:], m.Version)
  4878. i = encodeVarintTypes(dAtA, i, uint64(len(m.Version)))
  4879. i--
  4880. dAtA[i] = 0x12
  4881. }
  4882. if len(m.Data) > 0 {
  4883. i -= len(m.Data)
  4884. copy(dAtA[i:], m.Data)
  4885. i = encodeVarintTypes(dAtA, i, uint64(len(m.Data)))
  4886. i--
  4887. dAtA[i] = 0xa
  4888. }
  4889. return len(dAtA) - i, nil
  4890. }
  4891. func (m *ResponseSetOption) Marshal() (dAtA []byte, err error) {
  4892. size := m.Size()
  4893. dAtA = make([]byte, size)
  4894. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4895. if err != nil {
  4896. return nil, err
  4897. }
  4898. return dAtA[:n], nil
  4899. }
  4900. func (m *ResponseSetOption) MarshalTo(dAtA []byte) (int, error) {
  4901. size := m.Size()
  4902. return m.MarshalToSizedBuffer(dAtA[:size])
  4903. }
  4904. func (m *ResponseSetOption) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4905. i := len(dAtA)
  4906. _ = i
  4907. var l int
  4908. _ = l
  4909. if len(m.Info) > 0 {
  4910. i -= len(m.Info)
  4911. copy(dAtA[i:], m.Info)
  4912. i = encodeVarintTypes(dAtA, i, uint64(len(m.Info)))
  4913. i--
  4914. dAtA[i] = 0x22
  4915. }
  4916. if len(m.Log) > 0 {
  4917. i -= len(m.Log)
  4918. copy(dAtA[i:], m.Log)
  4919. i = encodeVarintTypes(dAtA, i, uint64(len(m.Log)))
  4920. i--
  4921. dAtA[i] = 0x1a
  4922. }
  4923. if m.Code != 0 {
  4924. i = encodeVarintTypes(dAtA, i, uint64(m.Code))
  4925. i--
  4926. dAtA[i] = 0x8
  4927. }
  4928. return len(dAtA) - i, nil
  4929. }
  4930. func (m *ResponseInitChain) Marshal() (dAtA []byte, err error) {
  4931. size := m.Size()
  4932. dAtA = make([]byte, size)
  4933. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4934. if err != nil {
  4935. return nil, err
  4936. }
  4937. return dAtA[:n], nil
  4938. }
  4939. func (m *ResponseInitChain) MarshalTo(dAtA []byte) (int, error) {
  4940. size := m.Size()
  4941. return m.MarshalToSizedBuffer(dAtA[:size])
  4942. }
  4943. func (m *ResponseInitChain) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4944. i := len(dAtA)
  4945. _ = i
  4946. var l int
  4947. _ = l
  4948. if len(m.Validators) > 0 {
  4949. for iNdEx := len(m.Validators) - 1; iNdEx >= 0; iNdEx-- {
  4950. {
  4951. size, err := m.Validators[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4952. if err != nil {
  4953. return 0, err
  4954. }
  4955. i -= size
  4956. i = encodeVarintTypes(dAtA, i, uint64(size))
  4957. }
  4958. i--
  4959. dAtA[i] = 0x12
  4960. }
  4961. }
  4962. if m.ConsensusParams != nil {
  4963. {
  4964. size, err := m.ConsensusParams.MarshalToSizedBuffer(dAtA[:i])
  4965. if err != nil {
  4966. return 0, err
  4967. }
  4968. i -= size
  4969. i = encodeVarintTypes(dAtA, i, uint64(size))
  4970. }
  4971. i--
  4972. dAtA[i] = 0xa
  4973. }
  4974. return len(dAtA) - i, nil
  4975. }
  4976. func (m *ResponseQuery) Marshal() (dAtA []byte, err error) {
  4977. size := m.Size()
  4978. dAtA = make([]byte, size)
  4979. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4980. if err != nil {
  4981. return nil, err
  4982. }
  4983. return dAtA[:n], nil
  4984. }
  4985. func (m *ResponseQuery) MarshalTo(dAtA []byte) (int, error) {
  4986. size := m.Size()
  4987. return m.MarshalToSizedBuffer(dAtA[:size])
  4988. }
  4989. func (m *ResponseQuery) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4990. i := len(dAtA)
  4991. _ = i
  4992. var l int
  4993. _ = l
  4994. if len(m.Codespace) > 0 {
  4995. i -= len(m.Codespace)
  4996. copy(dAtA[i:], m.Codespace)
  4997. i = encodeVarintTypes(dAtA, i, uint64(len(m.Codespace)))
  4998. i--
  4999. dAtA[i] = 0x52
  5000. }
  5001. if m.Height != 0 {
  5002. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  5003. i--
  5004. dAtA[i] = 0x48
  5005. }
  5006. if m.ProofOps != nil {
  5007. {
  5008. size, err := m.ProofOps.MarshalToSizedBuffer(dAtA[:i])
  5009. if err != nil {
  5010. return 0, err
  5011. }
  5012. i -= size
  5013. i = encodeVarintTypes(dAtA, i, uint64(size))
  5014. }
  5015. i--
  5016. dAtA[i] = 0x42
  5017. }
  5018. if len(m.Value) > 0 {
  5019. i -= len(m.Value)
  5020. copy(dAtA[i:], m.Value)
  5021. i = encodeVarintTypes(dAtA, i, uint64(len(m.Value)))
  5022. i--
  5023. dAtA[i] = 0x3a
  5024. }
  5025. if len(m.Key) > 0 {
  5026. i -= len(m.Key)
  5027. copy(dAtA[i:], m.Key)
  5028. i = encodeVarintTypes(dAtA, i, uint64(len(m.Key)))
  5029. i--
  5030. dAtA[i] = 0x32
  5031. }
  5032. if m.Index != 0 {
  5033. i = encodeVarintTypes(dAtA, i, uint64(m.Index))
  5034. i--
  5035. dAtA[i] = 0x28
  5036. }
  5037. if len(m.Info) > 0 {
  5038. i -= len(m.Info)
  5039. copy(dAtA[i:], m.Info)
  5040. i = encodeVarintTypes(dAtA, i, uint64(len(m.Info)))
  5041. i--
  5042. dAtA[i] = 0x22
  5043. }
  5044. if len(m.Log) > 0 {
  5045. i -= len(m.Log)
  5046. copy(dAtA[i:], m.Log)
  5047. i = encodeVarintTypes(dAtA, i, uint64(len(m.Log)))
  5048. i--
  5049. dAtA[i] = 0x1a
  5050. }
  5051. if m.Code != 0 {
  5052. i = encodeVarintTypes(dAtA, i, uint64(m.Code))
  5053. i--
  5054. dAtA[i] = 0x8
  5055. }
  5056. return len(dAtA) - i, nil
  5057. }
  5058. func (m *ResponseBeginBlock) Marshal() (dAtA []byte, err error) {
  5059. size := m.Size()
  5060. dAtA = make([]byte, size)
  5061. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5062. if err != nil {
  5063. return nil, err
  5064. }
  5065. return dAtA[:n], nil
  5066. }
  5067. func (m *ResponseBeginBlock) MarshalTo(dAtA []byte) (int, error) {
  5068. size := m.Size()
  5069. return m.MarshalToSizedBuffer(dAtA[:size])
  5070. }
  5071. func (m *ResponseBeginBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5072. i := len(dAtA)
  5073. _ = i
  5074. var l int
  5075. _ = l
  5076. if len(m.Events) > 0 {
  5077. for iNdEx := len(m.Events) - 1; iNdEx >= 0; iNdEx-- {
  5078. {
  5079. size, err := m.Events[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5080. if err != nil {
  5081. return 0, err
  5082. }
  5083. i -= size
  5084. i = encodeVarintTypes(dAtA, i, uint64(size))
  5085. }
  5086. i--
  5087. dAtA[i] = 0xa
  5088. }
  5089. }
  5090. return len(dAtA) - i, nil
  5091. }
  5092. func (m *ResponseCheckTx) Marshal() (dAtA []byte, err error) {
  5093. size := m.Size()
  5094. dAtA = make([]byte, size)
  5095. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5096. if err != nil {
  5097. return nil, err
  5098. }
  5099. return dAtA[:n], nil
  5100. }
  5101. func (m *ResponseCheckTx) MarshalTo(dAtA []byte) (int, error) {
  5102. size := m.Size()
  5103. return m.MarshalToSizedBuffer(dAtA[:size])
  5104. }
  5105. func (m *ResponseCheckTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5106. i := len(dAtA)
  5107. _ = i
  5108. var l int
  5109. _ = l
  5110. if len(m.Codespace) > 0 {
  5111. i -= len(m.Codespace)
  5112. copy(dAtA[i:], m.Codespace)
  5113. i = encodeVarintTypes(dAtA, i, uint64(len(m.Codespace)))
  5114. i--
  5115. dAtA[i] = 0x42
  5116. }
  5117. if len(m.Events) > 0 {
  5118. for iNdEx := len(m.Events) - 1; iNdEx >= 0; iNdEx-- {
  5119. {
  5120. size, err := m.Events[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5121. if err != nil {
  5122. return 0, err
  5123. }
  5124. i -= size
  5125. i = encodeVarintTypes(dAtA, i, uint64(size))
  5126. }
  5127. i--
  5128. dAtA[i] = 0x3a
  5129. }
  5130. }
  5131. if m.GasUsed != 0 {
  5132. i = encodeVarintTypes(dAtA, i, uint64(m.GasUsed))
  5133. i--
  5134. dAtA[i] = 0x30
  5135. }
  5136. if m.GasWanted != 0 {
  5137. i = encodeVarintTypes(dAtA, i, uint64(m.GasWanted))
  5138. i--
  5139. dAtA[i] = 0x28
  5140. }
  5141. if len(m.Info) > 0 {
  5142. i -= len(m.Info)
  5143. copy(dAtA[i:], m.Info)
  5144. i = encodeVarintTypes(dAtA, i, uint64(len(m.Info)))
  5145. i--
  5146. dAtA[i] = 0x22
  5147. }
  5148. if len(m.Log) > 0 {
  5149. i -= len(m.Log)
  5150. copy(dAtA[i:], m.Log)
  5151. i = encodeVarintTypes(dAtA, i, uint64(len(m.Log)))
  5152. i--
  5153. dAtA[i] = 0x1a
  5154. }
  5155. if len(m.Data) > 0 {
  5156. i -= len(m.Data)
  5157. copy(dAtA[i:], m.Data)
  5158. i = encodeVarintTypes(dAtA, i, uint64(len(m.Data)))
  5159. i--
  5160. dAtA[i] = 0x12
  5161. }
  5162. if m.Code != 0 {
  5163. i = encodeVarintTypes(dAtA, i, uint64(m.Code))
  5164. i--
  5165. dAtA[i] = 0x8
  5166. }
  5167. return len(dAtA) - i, nil
  5168. }
  5169. func (m *ResponseDeliverTx) Marshal() (dAtA []byte, err error) {
  5170. size := m.Size()
  5171. dAtA = make([]byte, size)
  5172. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5173. if err != nil {
  5174. return nil, err
  5175. }
  5176. return dAtA[:n], nil
  5177. }
  5178. func (m *ResponseDeliverTx) MarshalTo(dAtA []byte) (int, error) {
  5179. size := m.Size()
  5180. return m.MarshalToSizedBuffer(dAtA[:size])
  5181. }
  5182. func (m *ResponseDeliverTx) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5183. i := len(dAtA)
  5184. _ = i
  5185. var l int
  5186. _ = l
  5187. if len(m.Codespace) > 0 {
  5188. i -= len(m.Codespace)
  5189. copy(dAtA[i:], m.Codespace)
  5190. i = encodeVarintTypes(dAtA, i, uint64(len(m.Codespace)))
  5191. i--
  5192. dAtA[i] = 0x42
  5193. }
  5194. if len(m.Events) > 0 {
  5195. for iNdEx := len(m.Events) - 1; iNdEx >= 0; iNdEx-- {
  5196. {
  5197. size, err := m.Events[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5198. if err != nil {
  5199. return 0, err
  5200. }
  5201. i -= size
  5202. i = encodeVarintTypes(dAtA, i, uint64(size))
  5203. }
  5204. i--
  5205. dAtA[i] = 0x3a
  5206. }
  5207. }
  5208. if m.GasUsed != 0 {
  5209. i = encodeVarintTypes(dAtA, i, uint64(m.GasUsed))
  5210. i--
  5211. dAtA[i] = 0x30
  5212. }
  5213. if m.GasWanted != 0 {
  5214. i = encodeVarintTypes(dAtA, i, uint64(m.GasWanted))
  5215. i--
  5216. dAtA[i] = 0x28
  5217. }
  5218. if len(m.Info) > 0 {
  5219. i -= len(m.Info)
  5220. copy(dAtA[i:], m.Info)
  5221. i = encodeVarintTypes(dAtA, i, uint64(len(m.Info)))
  5222. i--
  5223. dAtA[i] = 0x22
  5224. }
  5225. if len(m.Log) > 0 {
  5226. i -= len(m.Log)
  5227. copy(dAtA[i:], m.Log)
  5228. i = encodeVarintTypes(dAtA, i, uint64(len(m.Log)))
  5229. i--
  5230. dAtA[i] = 0x1a
  5231. }
  5232. if len(m.Data) > 0 {
  5233. i -= len(m.Data)
  5234. copy(dAtA[i:], m.Data)
  5235. i = encodeVarintTypes(dAtA, i, uint64(len(m.Data)))
  5236. i--
  5237. dAtA[i] = 0x12
  5238. }
  5239. if m.Code != 0 {
  5240. i = encodeVarintTypes(dAtA, i, uint64(m.Code))
  5241. i--
  5242. dAtA[i] = 0x8
  5243. }
  5244. return len(dAtA) - i, nil
  5245. }
  5246. func (m *ResponseEndBlock) Marshal() (dAtA []byte, err error) {
  5247. size := m.Size()
  5248. dAtA = make([]byte, size)
  5249. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5250. if err != nil {
  5251. return nil, err
  5252. }
  5253. return dAtA[:n], nil
  5254. }
  5255. func (m *ResponseEndBlock) MarshalTo(dAtA []byte) (int, error) {
  5256. size := m.Size()
  5257. return m.MarshalToSizedBuffer(dAtA[:size])
  5258. }
  5259. func (m *ResponseEndBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5260. i := len(dAtA)
  5261. _ = i
  5262. var l int
  5263. _ = l
  5264. if len(m.Events) > 0 {
  5265. for iNdEx := len(m.Events) - 1; iNdEx >= 0; iNdEx-- {
  5266. {
  5267. size, err := m.Events[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5268. if err != nil {
  5269. return 0, err
  5270. }
  5271. i -= size
  5272. i = encodeVarintTypes(dAtA, i, uint64(size))
  5273. }
  5274. i--
  5275. dAtA[i] = 0x1a
  5276. }
  5277. }
  5278. if m.ConsensusParamUpdates != nil {
  5279. {
  5280. size, err := m.ConsensusParamUpdates.MarshalToSizedBuffer(dAtA[:i])
  5281. if err != nil {
  5282. return 0, err
  5283. }
  5284. i -= size
  5285. i = encodeVarintTypes(dAtA, i, uint64(size))
  5286. }
  5287. i--
  5288. dAtA[i] = 0x12
  5289. }
  5290. if len(m.ValidatorUpdates) > 0 {
  5291. for iNdEx := len(m.ValidatorUpdates) - 1; iNdEx >= 0; iNdEx-- {
  5292. {
  5293. size, err := m.ValidatorUpdates[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5294. if err != nil {
  5295. return 0, err
  5296. }
  5297. i -= size
  5298. i = encodeVarintTypes(dAtA, i, uint64(size))
  5299. }
  5300. i--
  5301. dAtA[i] = 0xa
  5302. }
  5303. }
  5304. return len(dAtA) - i, nil
  5305. }
  5306. func (m *ResponseCommit) Marshal() (dAtA []byte, err error) {
  5307. size := m.Size()
  5308. dAtA = make([]byte, size)
  5309. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5310. if err != nil {
  5311. return nil, err
  5312. }
  5313. return dAtA[:n], nil
  5314. }
  5315. func (m *ResponseCommit) MarshalTo(dAtA []byte) (int, error) {
  5316. size := m.Size()
  5317. return m.MarshalToSizedBuffer(dAtA[:size])
  5318. }
  5319. func (m *ResponseCommit) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5320. i := len(dAtA)
  5321. _ = i
  5322. var l int
  5323. _ = l
  5324. if m.RetainHeight != 0 {
  5325. i = encodeVarintTypes(dAtA, i, uint64(m.RetainHeight))
  5326. i--
  5327. dAtA[i] = 0x18
  5328. }
  5329. if len(m.Data) > 0 {
  5330. i -= len(m.Data)
  5331. copy(dAtA[i:], m.Data)
  5332. i = encodeVarintTypes(dAtA, i, uint64(len(m.Data)))
  5333. i--
  5334. dAtA[i] = 0x12
  5335. }
  5336. return len(dAtA) - i, nil
  5337. }
  5338. func (m *ResponseListSnapshots) Marshal() (dAtA []byte, err error) {
  5339. size := m.Size()
  5340. dAtA = make([]byte, size)
  5341. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5342. if err != nil {
  5343. return nil, err
  5344. }
  5345. return dAtA[:n], nil
  5346. }
  5347. func (m *ResponseListSnapshots) MarshalTo(dAtA []byte) (int, error) {
  5348. size := m.Size()
  5349. return m.MarshalToSizedBuffer(dAtA[:size])
  5350. }
  5351. func (m *ResponseListSnapshots) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5352. i := len(dAtA)
  5353. _ = i
  5354. var l int
  5355. _ = l
  5356. if len(m.Snapshots) > 0 {
  5357. for iNdEx := len(m.Snapshots) - 1; iNdEx >= 0; iNdEx-- {
  5358. {
  5359. size, err := m.Snapshots[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5360. if err != nil {
  5361. return 0, err
  5362. }
  5363. i -= size
  5364. i = encodeVarintTypes(dAtA, i, uint64(size))
  5365. }
  5366. i--
  5367. dAtA[i] = 0xa
  5368. }
  5369. }
  5370. return len(dAtA) - i, nil
  5371. }
  5372. func (m *ResponseOfferSnapshot) Marshal() (dAtA []byte, err error) {
  5373. size := m.Size()
  5374. dAtA = make([]byte, size)
  5375. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5376. if err != nil {
  5377. return nil, err
  5378. }
  5379. return dAtA[:n], nil
  5380. }
  5381. func (m *ResponseOfferSnapshot) MarshalTo(dAtA []byte) (int, error) {
  5382. size := m.Size()
  5383. return m.MarshalToSizedBuffer(dAtA[:size])
  5384. }
  5385. func (m *ResponseOfferSnapshot) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5386. i := len(dAtA)
  5387. _ = i
  5388. var l int
  5389. _ = l
  5390. if m.Result != 0 {
  5391. i = encodeVarintTypes(dAtA, i, uint64(m.Result))
  5392. i--
  5393. dAtA[i] = 0x8
  5394. }
  5395. return len(dAtA) - i, nil
  5396. }
  5397. func (m *ResponseLoadSnapshotChunk) Marshal() (dAtA []byte, err error) {
  5398. size := m.Size()
  5399. dAtA = make([]byte, size)
  5400. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5401. if err != nil {
  5402. return nil, err
  5403. }
  5404. return dAtA[:n], nil
  5405. }
  5406. func (m *ResponseLoadSnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  5407. size := m.Size()
  5408. return m.MarshalToSizedBuffer(dAtA[:size])
  5409. }
  5410. func (m *ResponseLoadSnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5411. i := len(dAtA)
  5412. _ = i
  5413. var l int
  5414. _ = l
  5415. if len(m.Chunk) > 0 {
  5416. i -= len(m.Chunk)
  5417. copy(dAtA[i:], m.Chunk)
  5418. i = encodeVarintTypes(dAtA, i, uint64(len(m.Chunk)))
  5419. i--
  5420. dAtA[i] = 0xa
  5421. }
  5422. return len(dAtA) - i, nil
  5423. }
  5424. func (m *ResponseApplySnapshotChunk) Marshal() (dAtA []byte, err error) {
  5425. size := m.Size()
  5426. dAtA = make([]byte, size)
  5427. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5428. if err != nil {
  5429. return nil, err
  5430. }
  5431. return dAtA[:n], nil
  5432. }
  5433. func (m *ResponseApplySnapshotChunk) MarshalTo(dAtA []byte) (int, error) {
  5434. size := m.Size()
  5435. return m.MarshalToSizedBuffer(dAtA[:size])
  5436. }
  5437. func (m *ResponseApplySnapshotChunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5438. i := len(dAtA)
  5439. _ = i
  5440. var l int
  5441. _ = l
  5442. if len(m.RejectSenders) > 0 {
  5443. for iNdEx := len(m.RejectSenders) - 1; iNdEx >= 0; iNdEx-- {
  5444. i -= len(m.RejectSenders[iNdEx])
  5445. copy(dAtA[i:], m.RejectSenders[iNdEx])
  5446. i = encodeVarintTypes(dAtA, i, uint64(len(m.RejectSenders[iNdEx])))
  5447. i--
  5448. dAtA[i] = 0x1a
  5449. }
  5450. }
  5451. if len(m.RefetchChunks) > 0 {
  5452. dAtA41 := make([]byte, len(m.RefetchChunks)*10)
  5453. var j40 int
  5454. for _, num := range m.RefetchChunks {
  5455. for num >= 1<<7 {
  5456. dAtA41[j40] = uint8(uint64(num)&0x7f | 0x80)
  5457. num >>= 7
  5458. j40++
  5459. }
  5460. dAtA41[j40] = uint8(num)
  5461. j40++
  5462. }
  5463. i -= j40
  5464. copy(dAtA[i:], dAtA41[:j40])
  5465. i = encodeVarintTypes(dAtA, i, uint64(j40))
  5466. i--
  5467. dAtA[i] = 0x12
  5468. }
  5469. if m.Result != 0 {
  5470. i = encodeVarintTypes(dAtA, i, uint64(m.Result))
  5471. i--
  5472. dAtA[i] = 0x8
  5473. }
  5474. return len(dAtA) - i, nil
  5475. }
  5476. func (m *ConsensusParams) Marshal() (dAtA []byte, err error) {
  5477. size := m.Size()
  5478. dAtA = make([]byte, size)
  5479. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5480. if err != nil {
  5481. return nil, err
  5482. }
  5483. return dAtA[:n], nil
  5484. }
  5485. func (m *ConsensusParams) MarshalTo(dAtA []byte) (int, error) {
  5486. size := m.Size()
  5487. return m.MarshalToSizedBuffer(dAtA[:size])
  5488. }
  5489. func (m *ConsensusParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5490. i := len(dAtA)
  5491. _ = i
  5492. var l int
  5493. _ = l
  5494. if m.Version != nil {
  5495. {
  5496. size, err := m.Version.MarshalToSizedBuffer(dAtA[:i])
  5497. if err != nil {
  5498. return 0, err
  5499. }
  5500. i -= size
  5501. i = encodeVarintTypes(dAtA, i, uint64(size))
  5502. }
  5503. i--
  5504. dAtA[i] = 0x22
  5505. }
  5506. if m.Validator != nil {
  5507. {
  5508. size, err := m.Validator.MarshalToSizedBuffer(dAtA[:i])
  5509. if err != nil {
  5510. return 0, err
  5511. }
  5512. i -= size
  5513. i = encodeVarintTypes(dAtA, i, uint64(size))
  5514. }
  5515. i--
  5516. dAtA[i] = 0x1a
  5517. }
  5518. if m.Evidence != nil {
  5519. {
  5520. size, err := m.Evidence.MarshalToSizedBuffer(dAtA[:i])
  5521. if err != nil {
  5522. return 0, err
  5523. }
  5524. i -= size
  5525. i = encodeVarintTypes(dAtA, i, uint64(size))
  5526. }
  5527. i--
  5528. dAtA[i] = 0x12
  5529. }
  5530. if m.Block != nil {
  5531. {
  5532. size, err := m.Block.MarshalToSizedBuffer(dAtA[:i])
  5533. if err != nil {
  5534. return 0, err
  5535. }
  5536. i -= size
  5537. i = encodeVarintTypes(dAtA, i, uint64(size))
  5538. }
  5539. i--
  5540. dAtA[i] = 0xa
  5541. }
  5542. return len(dAtA) - i, nil
  5543. }
  5544. func (m *BlockParams) Marshal() (dAtA []byte, err error) {
  5545. size := m.Size()
  5546. dAtA = make([]byte, size)
  5547. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5548. if err != nil {
  5549. return nil, err
  5550. }
  5551. return dAtA[:n], nil
  5552. }
  5553. func (m *BlockParams) MarshalTo(dAtA []byte) (int, error) {
  5554. size := m.Size()
  5555. return m.MarshalToSizedBuffer(dAtA[:size])
  5556. }
  5557. func (m *BlockParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5558. i := len(dAtA)
  5559. _ = i
  5560. var l int
  5561. _ = l
  5562. if m.MaxGas != 0 {
  5563. i = encodeVarintTypes(dAtA, i, uint64(m.MaxGas))
  5564. i--
  5565. dAtA[i] = 0x10
  5566. }
  5567. if m.MaxBytes != 0 {
  5568. i = encodeVarintTypes(dAtA, i, uint64(m.MaxBytes))
  5569. i--
  5570. dAtA[i] = 0x8
  5571. }
  5572. return len(dAtA) - i, nil
  5573. }
  5574. func (m *LastCommitInfo) Marshal() (dAtA []byte, err error) {
  5575. size := m.Size()
  5576. dAtA = make([]byte, size)
  5577. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5578. if err != nil {
  5579. return nil, err
  5580. }
  5581. return dAtA[:n], nil
  5582. }
  5583. func (m *LastCommitInfo) MarshalTo(dAtA []byte) (int, error) {
  5584. size := m.Size()
  5585. return m.MarshalToSizedBuffer(dAtA[:size])
  5586. }
  5587. func (m *LastCommitInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5588. i := len(dAtA)
  5589. _ = i
  5590. var l int
  5591. _ = l
  5592. if len(m.Votes) > 0 {
  5593. for iNdEx := len(m.Votes) - 1; iNdEx >= 0; iNdEx-- {
  5594. {
  5595. size, err := m.Votes[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5596. if err != nil {
  5597. return 0, err
  5598. }
  5599. i -= size
  5600. i = encodeVarintTypes(dAtA, i, uint64(size))
  5601. }
  5602. i--
  5603. dAtA[i] = 0x12
  5604. }
  5605. }
  5606. if m.Round != 0 {
  5607. i = encodeVarintTypes(dAtA, i, uint64(m.Round))
  5608. i--
  5609. dAtA[i] = 0x8
  5610. }
  5611. return len(dAtA) - i, nil
  5612. }
  5613. func (m *EventAttribute) Marshal() (dAtA []byte, err error) {
  5614. size := m.Size()
  5615. dAtA = make([]byte, size)
  5616. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5617. if err != nil {
  5618. return nil, err
  5619. }
  5620. return dAtA[:n], nil
  5621. }
  5622. func (m *EventAttribute) MarshalTo(dAtA []byte) (int, error) {
  5623. size := m.Size()
  5624. return m.MarshalToSizedBuffer(dAtA[:size])
  5625. }
  5626. func (m *EventAttribute) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5627. i := len(dAtA)
  5628. _ = i
  5629. var l int
  5630. _ = l
  5631. if m.Index {
  5632. i--
  5633. if m.Index {
  5634. dAtA[i] = 1
  5635. } else {
  5636. dAtA[i] = 0
  5637. }
  5638. i--
  5639. dAtA[i] = 0x18
  5640. }
  5641. if len(m.Value) > 0 {
  5642. i -= len(m.Value)
  5643. copy(dAtA[i:], m.Value)
  5644. i = encodeVarintTypes(dAtA, i, uint64(len(m.Value)))
  5645. i--
  5646. dAtA[i] = 0x12
  5647. }
  5648. if len(m.Key) > 0 {
  5649. i -= len(m.Key)
  5650. copy(dAtA[i:], m.Key)
  5651. i = encodeVarintTypes(dAtA, i, uint64(len(m.Key)))
  5652. i--
  5653. dAtA[i] = 0xa
  5654. }
  5655. return len(dAtA) - i, nil
  5656. }
  5657. func (m *Event) Marshal() (dAtA []byte, err error) {
  5658. size := m.Size()
  5659. dAtA = make([]byte, size)
  5660. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5661. if err != nil {
  5662. return nil, err
  5663. }
  5664. return dAtA[:n], nil
  5665. }
  5666. func (m *Event) MarshalTo(dAtA []byte) (int, error) {
  5667. size := m.Size()
  5668. return m.MarshalToSizedBuffer(dAtA[:size])
  5669. }
  5670. func (m *Event) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5671. i := len(dAtA)
  5672. _ = i
  5673. var l int
  5674. _ = l
  5675. if len(m.Attributes) > 0 {
  5676. for iNdEx := len(m.Attributes) - 1; iNdEx >= 0; iNdEx-- {
  5677. {
  5678. size, err := m.Attributes[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5679. if err != nil {
  5680. return 0, err
  5681. }
  5682. i -= size
  5683. i = encodeVarintTypes(dAtA, i, uint64(size))
  5684. }
  5685. i--
  5686. dAtA[i] = 0x12
  5687. }
  5688. }
  5689. if len(m.Type) > 0 {
  5690. i -= len(m.Type)
  5691. copy(dAtA[i:], m.Type)
  5692. i = encodeVarintTypes(dAtA, i, uint64(len(m.Type)))
  5693. i--
  5694. dAtA[i] = 0xa
  5695. }
  5696. return len(dAtA) - i, nil
  5697. }
  5698. func (m *TxResult) Marshal() (dAtA []byte, err error) {
  5699. size := m.Size()
  5700. dAtA = make([]byte, size)
  5701. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5702. if err != nil {
  5703. return nil, err
  5704. }
  5705. return dAtA[:n], nil
  5706. }
  5707. func (m *TxResult) MarshalTo(dAtA []byte) (int, error) {
  5708. size := m.Size()
  5709. return m.MarshalToSizedBuffer(dAtA[:size])
  5710. }
  5711. func (m *TxResult) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5712. i := len(dAtA)
  5713. _ = i
  5714. var l int
  5715. _ = l
  5716. {
  5717. size, err := m.Result.MarshalToSizedBuffer(dAtA[:i])
  5718. if err != nil {
  5719. return 0, err
  5720. }
  5721. i -= size
  5722. i = encodeVarintTypes(dAtA, i, uint64(size))
  5723. }
  5724. i--
  5725. dAtA[i] = 0x22
  5726. if len(m.Tx) > 0 {
  5727. i -= len(m.Tx)
  5728. copy(dAtA[i:], m.Tx)
  5729. i = encodeVarintTypes(dAtA, i, uint64(len(m.Tx)))
  5730. i--
  5731. dAtA[i] = 0x1a
  5732. }
  5733. if m.Index != 0 {
  5734. i = encodeVarintTypes(dAtA, i, uint64(m.Index))
  5735. i--
  5736. dAtA[i] = 0x10
  5737. }
  5738. if m.Height != 0 {
  5739. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  5740. i--
  5741. dAtA[i] = 0x8
  5742. }
  5743. return len(dAtA) - i, nil
  5744. }
  5745. func (m *Validator) Marshal() (dAtA []byte, err error) {
  5746. size := m.Size()
  5747. dAtA = make([]byte, size)
  5748. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5749. if err != nil {
  5750. return nil, err
  5751. }
  5752. return dAtA[:n], nil
  5753. }
  5754. func (m *Validator) MarshalTo(dAtA []byte) (int, error) {
  5755. size := m.Size()
  5756. return m.MarshalToSizedBuffer(dAtA[:size])
  5757. }
  5758. func (m *Validator) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5759. i := len(dAtA)
  5760. _ = i
  5761. var l int
  5762. _ = l
  5763. if m.Power != 0 {
  5764. i = encodeVarintTypes(dAtA, i, uint64(m.Power))
  5765. i--
  5766. dAtA[i] = 0x18
  5767. }
  5768. if len(m.Address) > 0 {
  5769. i -= len(m.Address)
  5770. copy(dAtA[i:], m.Address)
  5771. i = encodeVarintTypes(dAtA, i, uint64(len(m.Address)))
  5772. i--
  5773. dAtA[i] = 0xa
  5774. }
  5775. return len(dAtA) - i, nil
  5776. }
  5777. func (m *ValidatorUpdate) Marshal() (dAtA []byte, err error) {
  5778. size := m.Size()
  5779. dAtA = make([]byte, size)
  5780. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5781. if err != nil {
  5782. return nil, err
  5783. }
  5784. return dAtA[:n], nil
  5785. }
  5786. func (m *ValidatorUpdate) MarshalTo(dAtA []byte) (int, error) {
  5787. size := m.Size()
  5788. return m.MarshalToSizedBuffer(dAtA[:size])
  5789. }
  5790. func (m *ValidatorUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5791. i := len(dAtA)
  5792. _ = i
  5793. var l int
  5794. _ = l
  5795. if m.Power != 0 {
  5796. i = encodeVarintTypes(dAtA, i, uint64(m.Power))
  5797. i--
  5798. dAtA[i] = 0x10
  5799. }
  5800. {
  5801. size, err := m.PubKey.MarshalToSizedBuffer(dAtA[:i])
  5802. if err != nil {
  5803. return 0, err
  5804. }
  5805. i -= size
  5806. i = encodeVarintTypes(dAtA, i, uint64(size))
  5807. }
  5808. i--
  5809. dAtA[i] = 0xa
  5810. return len(dAtA) - i, nil
  5811. }
  5812. func (m *VoteInfo) Marshal() (dAtA []byte, err error) {
  5813. size := m.Size()
  5814. dAtA = make([]byte, size)
  5815. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5816. if err != nil {
  5817. return nil, err
  5818. }
  5819. return dAtA[:n], nil
  5820. }
  5821. func (m *VoteInfo) MarshalTo(dAtA []byte) (int, error) {
  5822. size := m.Size()
  5823. return m.MarshalToSizedBuffer(dAtA[:size])
  5824. }
  5825. func (m *VoteInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5826. i := len(dAtA)
  5827. _ = i
  5828. var l int
  5829. _ = l
  5830. if m.SignedLastBlock {
  5831. i--
  5832. if m.SignedLastBlock {
  5833. dAtA[i] = 1
  5834. } else {
  5835. dAtA[i] = 0
  5836. }
  5837. i--
  5838. dAtA[i] = 0x10
  5839. }
  5840. {
  5841. size, err := m.Validator.MarshalToSizedBuffer(dAtA[:i])
  5842. if err != nil {
  5843. return 0, err
  5844. }
  5845. i -= size
  5846. i = encodeVarintTypes(dAtA, i, uint64(size))
  5847. }
  5848. i--
  5849. dAtA[i] = 0xa
  5850. return len(dAtA) - i, nil
  5851. }
  5852. func (m *Evidence) Marshal() (dAtA []byte, err error) {
  5853. size := m.Size()
  5854. dAtA = make([]byte, size)
  5855. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5856. if err != nil {
  5857. return nil, err
  5858. }
  5859. return dAtA[:n], nil
  5860. }
  5861. func (m *Evidence) MarshalTo(dAtA []byte) (int, error) {
  5862. size := m.Size()
  5863. return m.MarshalToSizedBuffer(dAtA[:size])
  5864. }
  5865. func (m *Evidence) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5866. i := len(dAtA)
  5867. _ = i
  5868. var l int
  5869. _ = l
  5870. if m.TotalVotingPower != 0 {
  5871. i = encodeVarintTypes(dAtA, i, uint64(m.TotalVotingPower))
  5872. i--
  5873. dAtA[i] = 0x28
  5874. }
  5875. n49, err49 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Time, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Time):])
  5876. if err49 != nil {
  5877. return 0, err49
  5878. }
  5879. i -= n49
  5880. i = encodeVarintTypes(dAtA, i, uint64(n49))
  5881. i--
  5882. dAtA[i] = 0x22
  5883. if m.Height != 0 {
  5884. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  5885. i--
  5886. dAtA[i] = 0x18
  5887. }
  5888. {
  5889. size, err := m.Validator.MarshalToSizedBuffer(dAtA[:i])
  5890. if err != nil {
  5891. return 0, err
  5892. }
  5893. i -= size
  5894. i = encodeVarintTypes(dAtA, i, uint64(size))
  5895. }
  5896. i--
  5897. dAtA[i] = 0x12
  5898. if len(m.Type) > 0 {
  5899. i -= len(m.Type)
  5900. copy(dAtA[i:], m.Type)
  5901. i = encodeVarintTypes(dAtA, i, uint64(len(m.Type)))
  5902. i--
  5903. dAtA[i] = 0xa
  5904. }
  5905. return len(dAtA) - i, nil
  5906. }
  5907. func (m *Snapshot) Marshal() (dAtA []byte, err error) {
  5908. size := m.Size()
  5909. dAtA = make([]byte, size)
  5910. n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5911. if err != nil {
  5912. return nil, err
  5913. }
  5914. return dAtA[:n], nil
  5915. }
  5916. func (m *Snapshot) MarshalTo(dAtA []byte) (int, error) {
  5917. size := m.Size()
  5918. return m.MarshalToSizedBuffer(dAtA[:size])
  5919. }
  5920. func (m *Snapshot) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5921. i := len(dAtA)
  5922. _ = i
  5923. var l int
  5924. _ = l
  5925. if len(m.Metadata) > 0 {
  5926. i -= len(m.Metadata)
  5927. copy(dAtA[i:], m.Metadata)
  5928. i = encodeVarintTypes(dAtA, i, uint64(len(m.Metadata)))
  5929. i--
  5930. dAtA[i] = 0x2a
  5931. }
  5932. if len(m.Hash) > 0 {
  5933. i -= len(m.Hash)
  5934. copy(dAtA[i:], m.Hash)
  5935. i = encodeVarintTypes(dAtA, i, uint64(len(m.Hash)))
  5936. i--
  5937. dAtA[i] = 0x22
  5938. }
  5939. if m.Chunks != 0 {
  5940. i = encodeVarintTypes(dAtA, i, uint64(m.Chunks))
  5941. i--
  5942. dAtA[i] = 0x18
  5943. }
  5944. if m.Format != 0 {
  5945. i = encodeVarintTypes(dAtA, i, uint64(m.Format))
  5946. i--
  5947. dAtA[i] = 0x10
  5948. }
  5949. if m.Height != 0 {
  5950. i = encodeVarintTypes(dAtA, i, uint64(m.Height))
  5951. i--
  5952. dAtA[i] = 0x8
  5953. }
  5954. return len(dAtA) - i, nil
  5955. }
  5956. func encodeVarintTypes(dAtA []byte, offset int, v uint64) int {
  5957. offset -= sovTypes(v)
  5958. base := offset
  5959. for v >= 1<<7 {
  5960. dAtA[offset] = uint8(v&0x7f | 0x80)
  5961. v >>= 7
  5962. offset++
  5963. }
  5964. dAtA[offset] = uint8(v)
  5965. return base
  5966. }
  5967. func (m *Request) Size() (n int) {
  5968. if m == nil {
  5969. return 0
  5970. }
  5971. var l int
  5972. _ = l
  5973. if m.Value != nil {
  5974. n += m.Value.Size()
  5975. }
  5976. return n
  5977. }
  5978. func (m *Request_Echo) Size() (n int) {
  5979. if m == nil {
  5980. return 0
  5981. }
  5982. var l int
  5983. _ = l
  5984. if m.Echo != nil {
  5985. l = m.Echo.Size()
  5986. n += 1 + l + sovTypes(uint64(l))
  5987. }
  5988. return n
  5989. }
  5990. func (m *Request_Flush) Size() (n int) {
  5991. if m == nil {
  5992. return 0
  5993. }
  5994. var l int
  5995. _ = l
  5996. if m.Flush != nil {
  5997. l = m.Flush.Size()
  5998. n += 1 + l + sovTypes(uint64(l))
  5999. }
  6000. return n
  6001. }
  6002. func (m *Request_Info) Size() (n int) {
  6003. if m == nil {
  6004. return 0
  6005. }
  6006. var l int
  6007. _ = l
  6008. if m.Info != nil {
  6009. l = m.Info.Size()
  6010. n += 1 + l + sovTypes(uint64(l))
  6011. }
  6012. return n
  6013. }
  6014. func (m *Request_SetOption) Size() (n int) {
  6015. if m == nil {
  6016. return 0
  6017. }
  6018. var l int
  6019. _ = l
  6020. if m.SetOption != nil {
  6021. l = m.SetOption.Size()
  6022. n += 1 + l + sovTypes(uint64(l))
  6023. }
  6024. return n
  6025. }
  6026. func (m *Request_InitChain) Size() (n int) {
  6027. if m == nil {
  6028. return 0
  6029. }
  6030. var l int
  6031. _ = l
  6032. if m.InitChain != nil {
  6033. l = m.InitChain.Size()
  6034. n += 1 + l + sovTypes(uint64(l))
  6035. }
  6036. return n
  6037. }
  6038. func (m *Request_Query) Size() (n int) {
  6039. if m == nil {
  6040. return 0
  6041. }
  6042. var l int
  6043. _ = l
  6044. if m.Query != nil {
  6045. l = m.Query.Size()
  6046. n += 1 + l + sovTypes(uint64(l))
  6047. }
  6048. return n
  6049. }
  6050. func (m *Request_BeginBlock) Size() (n int) {
  6051. if m == nil {
  6052. return 0
  6053. }
  6054. var l int
  6055. _ = l
  6056. if m.BeginBlock != nil {
  6057. l = m.BeginBlock.Size()
  6058. n += 1 + l + sovTypes(uint64(l))
  6059. }
  6060. return n
  6061. }
  6062. func (m *Request_CheckTx) Size() (n int) {
  6063. if m == nil {
  6064. return 0
  6065. }
  6066. var l int
  6067. _ = l
  6068. if m.CheckTx != nil {
  6069. l = m.CheckTx.Size()
  6070. n += 1 + l + sovTypes(uint64(l))
  6071. }
  6072. return n
  6073. }
  6074. func (m *Request_DeliverTx) Size() (n int) {
  6075. if m == nil {
  6076. return 0
  6077. }
  6078. var l int
  6079. _ = l
  6080. if m.DeliverTx != nil {
  6081. l = m.DeliverTx.Size()
  6082. n += 1 + l + sovTypes(uint64(l))
  6083. }
  6084. return n
  6085. }
  6086. func (m *Request_EndBlock) Size() (n int) {
  6087. if m == nil {
  6088. return 0
  6089. }
  6090. var l int
  6091. _ = l
  6092. if m.EndBlock != nil {
  6093. l = m.EndBlock.Size()
  6094. n += 1 + l + sovTypes(uint64(l))
  6095. }
  6096. return n
  6097. }
  6098. func (m *Request_Commit) Size() (n int) {
  6099. if m == nil {
  6100. return 0
  6101. }
  6102. var l int
  6103. _ = l
  6104. if m.Commit != nil {
  6105. l = m.Commit.Size()
  6106. n += 1 + l + sovTypes(uint64(l))
  6107. }
  6108. return n
  6109. }
  6110. func (m *Request_ListSnapshots) Size() (n int) {
  6111. if m == nil {
  6112. return 0
  6113. }
  6114. var l int
  6115. _ = l
  6116. if m.ListSnapshots != nil {
  6117. l = m.ListSnapshots.Size()
  6118. n += 1 + l + sovTypes(uint64(l))
  6119. }
  6120. return n
  6121. }
  6122. func (m *Request_OfferSnapshot) Size() (n int) {
  6123. if m == nil {
  6124. return 0
  6125. }
  6126. var l int
  6127. _ = l
  6128. if m.OfferSnapshot != nil {
  6129. l = m.OfferSnapshot.Size()
  6130. n += 1 + l + sovTypes(uint64(l))
  6131. }
  6132. return n
  6133. }
  6134. func (m *Request_LoadSnapshotChunk) Size() (n int) {
  6135. if m == nil {
  6136. return 0
  6137. }
  6138. var l int
  6139. _ = l
  6140. if m.LoadSnapshotChunk != nil {
  6141. l = m.LoadSnapshotChunk.Size()
  6142. n += 1 + l + sovTypes(uint64(l))
  6143. }
  6144. return n
  6145. }
  6146. func (m *Request_ApplySnapshotChunk) Size() (n int) {
  6147. if m == nil {
  6148. return 0
  6149. }
  6150. var l int
  6151. _ = l
  6152. if m.ApplySnapshotChunk != nil {
  6153. l = m.ApplySnapshotChunk.Size()
  6154. n += 1 + l + sovTypes(uint64(l))
  6155. }
  6156. return n
  6157. }
  6158. func (m *RequestEcho) Size() (n int) {
  6159. if m == nil {
  6160. return 0
  6161. }
  6162. var l int
  6163. _ = l
  6164. l = len(m.Message)
  6165. if l > 0 {
  6166. n += 1 + l + sovTypes(uint64(l))
  6167. }
  6168. return n
  6169. }
  6170. func (m *RequestFlush) Size() (n int) {
  6171. if m == nil {
  6172. return 0
  6173. }
  6174. var l int
  6175. _ = l
  6176. return n
  6177. }
  6178. func (m *RequestInfo) Size() (n int) {
  6179. if m == nil {
  6180. return 0
  6181. }
  6182. var l int
  6183. _ = l
  6184. l = len(m.Version)
  6185. if l > 0 {
  6186. n += 1 + l + sovTypes(uint64(l))
  6187. }
  6188. if m.BlockVersion != 0 {
  6189. n += 1 + sovTypes(uint64(m.BlockVersion))
  6190. }
  6191. if m.P2PVersion != 0 {
  6192. n += 1 + sovTypes(uint64(m.P2PVersion))
  6193. }
  6194. return n
  6195. }
  6196. func (m *RequestSetOption) Size() (n int) {
  6197. if m == nil {
  6198. return 0
  6199. }
  6200. var l int
  6201. _ = l
  6202. l = len(m.Key)
  6203. if l > 0 {
  6204. n += 1 + l + sovTypes(uint64(l))
  6205. }
  6206. l = len(m.Value)
  6207. if l > 0 {
  6208. n += 1 + l + sovTypes(uint64(l))
  6209. }
  6210. return n
  6211. }
  6212. func (m *RequestInitChain) Size() (n int) {
  6213. if m == nil {
  6214. return 0
  6215. }
  6216. var l int
  6217. _ = l
  6218. l = github_com_gogo_protobuf_types.SizeOfStdTime(m.Time)
  6219. n += 1 + l + sovTypes(uint64(l))
  6220. l = len(m.ChainId)
  6221. if l > 0 {
  6222. n += 1 + l + sovTypes(uint64(l))
  6223. }
  6224. if m.ConsensusParams != nil {
  6225. l = m.ConsensusParams.Size()
  6226. n += 1 + l + sovTypes(uint64(l))
  6227. }
  6228. if len(m.Validators) > 0 {
  6229. for _, e := range m.Validators {
  6230. l = e.Size()
  6231. n += 1 + l + sovTypes(uint64(l))
  6232. }
  6233. }
  6234. l = len(m.AppStateBytes)
  6235. if l > 0 {
  6236. n += 1 + l + sovTypes(uint64(l))
  6237. }
  6238. return n
  6239. }
  6240. func (m *RequestQuery) Size() (n int) {
  6241. if m == nil {
  6242. return 0
  6243. }
  6244. var l int
  6245. _ = l
  6246. l = len(m.Data)
  6247. if l > 0 {
  6248. n += 1 + l + sovTypes(uint64(l))
  6249. }
  6250. l = len(m.Path)
  6251. if l > 0 {
  6252. n += 1 + l + sovTypes(uint64(l))
  6253. }
  6254. if m.Height != 0 {
  6255. n += 1 + sovTypes(uint64(m.Height))
  6256. }
  6257. if m.Prove {
  6258. n += 2
  6259. }
  6260. return n
  6261. }
  6262. func (m *RequestBeginBlock) Size() (n int) {
  6263. if m == nil {
  6264. return 0
  6265. }
  6266. var l int
  6267. _ = l
  6268. l = len(m.Hash)
  6269. if l > 0 {
  6270. n += 1 + l + sovTypes(uint64(l))
  6271. }
  6272. l = m.Header.Size()
  6273. n += 1 + l + sovTypes(uint64(l))
  6274. l = m.LastCommitInfo.Size()
  6275. n += 1 + l + sovTypes(uint64(l))
  6276. if len(m.ByzantineValidators) > 0 {
  6277. for _, e := range m.ByzantineValidators {
  6278. l = e.Size()
  6279. n += 1 + l + sovTypes(uint64(l))
  6280. }
  6281. }
  6282. return n
  6283. }
  6284. func (m *RequestCheckTx) Size() (n int) {
  6285. if m == nil {
  6286. return 0
  6287. }
  6288. var l int
  6289. _ = l
  6290. l = len(m.Tx)
  6291. if l > 0 {
  6292. n += 1 + l + sovTypes(uint64(l))
  6293. }
  6294. if m.Type != 0 {
  6295. n += 1 + sovTypes(uint64(m.Type))
  6296. }
  6297. return n
  6298. }
  6299. func (m *RequestDeliverTx) Size() (n int) {
  6300. if m == nil {
  6301. return 0
  6302. }
  6303. var l int
  6304. _ = l
  6305. l = len(m.Tx)
  6306. if l > 0 {
  6307. n += 1 + l + sovTypes(uint64(l))
  6308. }
  6309. return n
  6310. }
  6311. func (m *RequestEndBlock) Size() (n int) {
  6312. if m == nil {
  6313. return 0
  6314. }
  6315. var l int
  6316. _ = l
  6317. if m.Height != 0 {
  6318. n += 1 + sovTypes(uint64(m.Height))
  6319. }
  6320. return n
  6321. }
  6322. func (m *RequestCommit) Size() (n int) {
  6323. if m == nil {
  6324. return 0
  6325. }
  6326. var l int
  6327. _ = l
  6328. return n
  6329. }
  6330. func (m *RequestListSnapshots) Size() (n int) {
  6331. if m == nil {
  6332. return 0
  6333. }
  6334. var l int
  6335. _ = l
  6336. return n
  6337. }
  6338. func (m *RequestOfferSnapshot) Size() (n int) {
  6339. if m == nil {
  6340. return 0
  6341. }
  6342. var l int
  6343. _ = l
  6344. if m.Snapshot != nil {
  6345. l = m.Snapshot.Size()
  6346. n += 1 + l + sovTypes(uint64(l))
  6347. }
  6348. l = len(m.AppHash)
  6349. if l > 0 {
  6350. n += 1 + l + sovTypes(uint64(l))
  6351. }
  6352. return n
  6353. }
  6354. func (m *RequestLoadSnapshotChunk) Size() (n int) {
  6355. if m == nil {
  6356. return 0
  6357. }
  6358. var l int
  6359. _ = l
  6360. if m.Height != 0 {
  6361. n += 1 + sovTypes(uint64(m.Height))
  6362. }
  6363. if m.Format != 0 {
  6364. n += 1 + sovTypes(uint64(m.Format))
  6365. }
  6366. if m.Chunk != 0 {
  6367. n += 1 + sovTypes(uint64(m.Chunk))
  6368. }
  6369. return n
  6370. }
  6371. func (m *RequestApplySnapshotChunk) Size() (n int) {
  6372. if m == nil {
  6373. return 0
  6374. }
  6375. var l int
  6376. _ = l
  6377. if m.Index != 0 {
  6378. n += 1 + sovTypes(uint64(m.Index))
  6379. }
  6380. l = len(m.Chunk)
  6381. if l > 0 {
  6382. n += 1 + l + sovTypes(uint64(l))
  6383. }
  6384. l = len(m.Sender)
  6385. if l > 0 {
  6386. n += 1 + l + sovTypes(uint64(l))
  6387. }
  6388. return n
  6389. }
  6390. func (m *Response) Size() (n int) {
  6391. if m == nil {
  6392. return 0
  6393. }
  6394. var l int
  6395. _ = l
  6396. if m.Value != nil {
  6397. n += m.Value.Size()
  6398. }
  6399. return n
  6400. }
  6401. func (m *Response_Exception) Size() (n int) {
  6402. if m == nil {
  6403. return 0
  6404. }
  6405. var l int
  6406. _ = l
  6407. if m.Exception != nil {
  6408. l = m.Exception.Size()
  6409. n += 1 + l + sovTypes(uint64(l))
  6410. }
  6411. return n
  6412. }
  6413. func (m *Response_Echo) Size() (n int) {
  6414. if m == nil {
  6415. return 0
  6416. }
  6417. var l int
  6418. _ = l
  6419. if m.Echo != nil {
  6420. l = m.Echo.Size()
  6421. n += 1 + l + sovTypes(uint64(l))
  6422. }
  6423. return n
  6424. }
  6425. func (m *Response_Flush) Size() (n int) {
  6426. if m == nil {
  6427. return 0
  6428. }
  6429. var l int
  6430. _ = l
  6431. if m.Flush != nil {
  6432. l = m.Flush.Size()
  6433. n += 1 + l + sovTypes(uint64(l))
  6434. }
  6435. return n
  6436. }
  6437. func (m *Response_Info) Size() (n int) {
  6438. if m == nil {
  6439. return 0
  6440. }
  6441. var l int
  6442. _ = l
  6443. if m.Info != nil {
  6444. l = m.Info.Size()
  6445. n += 1 + l + sovTypes(uint64(l))
  6446. }
  6447. return n
  6448. }
  6449. func (m *Response_SetOption) Size() (n int) {
  6450. if m == nil {
  6451. return 0
  6452. }
  6453. var l int
  6454. _ = l
  6455. if m.SetOption != nil {
  6456. l = m.SetOption.Size()
  6457. n += 1 + l + sovTypes(uint64(l))
  6458. }
  6459. return n
  6460. }
  6461. func (m *Response_InitChain) Size() (n int) {
  6462. if m == nil {
  6463. return 0
  6464. }
  6465. var l int
  6466. _ = l
  6467. if m.InitChain != nil {
  6468. l = m.InitChain.Size()
  6469. n += 1 + l + sovTypes(uint64(l))
  6470. }
  6471. return n
  6472. }
  6473. func (m *Response_Query) Size() (n int) {
  6474. if m == nil {
  6475. return 0
  6476. }
  6477. var l int
  6478. _ = l
  6479. if m.Query != nil {
  6480. l = m.Query.Size()
  6481. n += 1 + l + sovTypes(uint64(l))
  6482. }
  6483. return n
  6484. }
  6485. func (m *Response_BeginBlock) Size() (n int) {
  6486. if m == nil {
  6487. return 0
  6488. }
  6489. var l int
  6490. _ = l
  6491. if m.BeginBlock != nil {
  6492. l = m.BeginBlock.Size()
  6493. n += 1 + l + sovTypes(uint64(l))
  6494. }
  6495. return n
  6496. }
  6497. func (m *Response_CheckTx) Size() (n int) {
  6498. if m == nil {
  6499. return 0
  6500. }
  6501. var l int
  6502. _ = l
  6503. if m.CheckTx != nil {
  6504. l = m.CheckTx.Size()
  6505. n += 1 + l + sovTypes(uint64(l))
  6506. }
  6507. return n
  6508. }
  6509. func (m *Response_DeliverTx) Size() (n int) {
  6510. if m == nil {
  6511. return 0
  6512. }
  6513. var l int
  6514. _ = l
  6515. if m.DeliverTx != nil {
  6516. l = m.DeliverTx.Size()
  6517. n += 1 + l + sovTypes(uint64(l))
  6518. }
  6519. return n
  6520. }
  6521. func (m *Response_EndBlock) Size() (n int) {
  6522. if m == nil {
  6523. return 0
  6524. }
  6525. var l int
  6526. _ = l
  6527. if m.EndBlock != nil {
  6528. l = m.EndBlock.Size()
  6529. n += 1 + l + sovTypes(uint64(l))
  6530. }
  6531. return n
  6532. }
  6533. func (m *Response_Commit) Size() (n int) {
  6534. if m == nil {
  6535. return 0
  6536. }
  6537. var l int
  6538. _ = l
  6539. if m.Commit != nil {
  6540. l = m.Commit.Size()
  6541. n += 1 + l + sovTypes(uint64(l))
  6542. }
  6543. return n
  6544. }
  6545. func (m *Response_ListSnapshots) Size() (n int) {
  6546. if m == nil {
  6547. return 0
  6548. }
  6549. var l int
  6550. _ = l
  6551. if m.ListSnapshots != nil {
  6552. l = m.ListSnapshots.Size()
  6553. n += 1 + l + sovTypes(uint64(l))
  6554. }
  6555. return n
  6556. }
  6557. func (m *Response_OfferSnapshot) Size() (n int) {
  6558. if m == nil {
  6559. return 0
  6560. }
  6561. var l int
  6562. _ = l
  6563. if m.OfferSnapshot != nil {
  6564. l = m.OfferSnapshot.Size()
  6565. n += 1 + l + sovTypes(uint64(l))
  6566. }
  6567. return n
  6568. }
  6569. func (m *Response_LoadSnapshotChunk) Size() (n int) {
  6570. if m == nil {
  6571. return 0
  6572. }
  6573. var l int
  6574. _ = l
  6575. if m.LoadSnapshotChunk != nil {
  6576. l = m.LoadSnapshotChunk.Size()
  6577. n += 1 + l + sovTypes(uint64(l))
  6578. }
  6579. return n
  6580. }
  6581. func (m *Response_ApplySnapshotChunk) Size() (n int) {
  6582. if m == nil {
  6583. return 0
  6584. }
  6585. var l int
  6586. _ = l
  6587. if m.ApplySnapshotChunk != nil {
  6588. l = m.ApplySnapshotChunk.Size()
  6589. n += 2 + l + sovTypes(uint64(l))
  6590. }
  6591. return n
  6592. }
  6593. func (m *ResponseException) Size() (n int) {
  6594. if m == nil {
  6595. return 0
  6596. }
  6597. var l int
  6598. _ = l
  6599. l = len(m.Error)
  6600. if l > 0 {
  6601. n += 1 + l + sovTypes(uint64(l))
  6602. }
  6603. return n
  6604. }
  6605. func (m *ResponseEcho) Size() (n int) {
  6606. if m == nil {
  6607. return 0
  6608. }
  6609. var l int
  6610. _ = l
  6611. l = len(m.Message)
  6612. if l > 0 {
  6613. n += 1 + l + sovTypes(uint64(l))
  6614. }
  6615. return n
  6616. }
  6617. func (m *ResponseFlush) Size() (n int) {
  6618. if m == nil {
  6619. return 0
  6620. }
  6621. var l int
  6622. _ = l
  6623. return n
  6624. }
  6625. func (m *ResponseInfo) Size() (n int) {
  6626. if m == nil {
  6627. return 0
  6628. }
  6629. var l int
  6630. _ = l
  6631. l = len(m.Data)
  6632. if l > 0 {
  6633. n += 1 + l + sovTypes(uint64(l))
  6634. }
  6635. l = len(m.Version)
  6636. if l > 0 {
  6637. n += 1 + l + sovTypes(uint64(l))
  6638. }
  6639. if m.AppVersion != 0 {
  6640. n += 1 + sovTypes(uint64(m.AppVersion))
  6641. }
  6642. if m.LastBlockHeight != 0 {
  6643. n += 1 + sovTypes(uint64(m.LastBlockHeight))
  6644. }
  6645. l = len(m.LastBlockAppHash)
  6646. if l > 0 {
  6647. n += 1 + l + sovTypes(uint64(l))
  6648. }
  6649. return n
  6650. }
  6651. func (m *ResponseSetOption) Size() (n int) {
  6652. if m == nil {
  6653. return 0
  6654. }
  6655. var l int
  6656. _ = l
  6657. if m.Code != 0 {
  6658. n += 1 + sovTypes(uint64(m.Code))
  6659. }
  6660. l = len(m.Log)
  6661. if l > 0 {
  6662. n += 1 + l + sovTypes(uint64(l))
  6663. }
  6664. l = len(m.Info)
  6665. if l > 0 {
  6666. n += 1 + l + sovTypes(uint64(l))
  6667. }
  6668. return n
  6669. }
  6670. func (m *ResponseInitChain) Size() (n int) {
  6671. if m == nil {
  6672. return 0
  6673. }
  6674. var l int
  6675. _ = l
  6676. if m.ConsensusParams != nil {
  6677. l = m.ConsensusParams.Size()
  6678. n += 1 + l + sovTypes(uint64(l))
  6679. }
  6680. if len(m.Validators) > 0 {
  6681. for _, e := range m.Validators {
  6682. l = e.Size()
  6683. n += 1 + l + sovTypes(uint64(l))
  6684. }
  6685. }
  6686. return n
  6687. }
  6688. func (m *ResponseQuery) Size() (n int) {
  6689. if m == nil {
  6690. return 0
  6691. }
  6692. var l int
  6693. _ = l
  6694. if m.Code != 0 {
  6695. n += 1 + sovTypes(uint64(m.Code))
  6696. }
  6697. l = len(m.Log)
  6698. if l > 0 {
  6699. n += 1 + l + sovTypes(uint64(l))
  6700. }
  6701. l = len(m.Info)
  6702. if l > 0 {
  6703. n += 1 + l + sovTypes(uint64(l))
  6704. }
  6705. if m.Index != 0 {
  6706. n += 1 + sovTypes(uint64(m.Index))
  6707. }
  6708. l = len(m.Key)
  6709. if l > 0 {
  6710. n += 1 + l + sovTypes(uint64(l))
  6711. }
  6712. l = len(m.Value)
  6713. if l > 0 {
  6714. n += 1 + l + sovTypes(uint64(l))
  6715. }
  6716. if m.ProofOps != nil {
  6717. l = m.ProofOps.Size()
  6718. n += 1 + l + sovTypes(uint64(l))
  6719. }
  6720. if m.Height != 0 {
  6721. n += 1 + sovTypes(uint64(m.Height))
  6722. }
  6723. l = len(m.Codespace)
  6724. if l > 0 {
  6725. n += 1 + l + sovTypes(uint64(l))
  6726. }
  6727. return n
  6728. }
  6729. func (m *ResponseBeginBlock) Size() (n int) {
  6730. if m == nil {
  6731. return 0
  6732. }
  6733. var l int
  6734. _ = l
  6735. if len(m.Events) > 0 {
  6736. for _, e := range m.Events {
  6737. l = e.Size()
  6738. n += 1 + l + sovTypes(uint64(l))
  6739. }
  6740. }
  6741. return n
  6742. }
  6743. func (m *ResponseCheckTx) Size() (n int) {
  6744. if m == nil {
  6745. return 0
  6746. }
  6747. var l int
  6748. _ = l
  6749. if m.Code != 0 {
  6750. n += 1 + sovTypes(uint64(m.Code))
  6751. }
  6752. l = len(m.Data)
  6753. if l > 0 {
  6754. n += 1 + l + sovTypes(uint64(l))
  6755. }
  6756. l = len(m.Log)
  6757. if l > 0 {
  6758. n += 1 + l + sovTypes(uint64(l))
  6759. }
  6760. l = len(m.Info)
  6761. if l > 0 {
  6762. n += 1 + l + sovTypes(uint64(l))
  6763. }
  6764. if m.GasWanted != 0 {
  6765. n += 1 + sovTypes(uint64(m.GasWanted))
  6766. }
  6767. if m.GasUsed != 0 {
  6768. n += 1 + sovTypes(uint64(m.GasUsed))
  6769. }
  6770. if len(m.Events) > 0 {
  6771. for _, e := range m.Events {
  6772. l = e.Size()
  6773. n += 1 + l + sovTypes(uint64(l))
  6774. }
  6775. }
  6776. l = len(m.Codespace)
  6777. if l > 0 {
  6778. n += 1 + l + sovTypes(uint64(l))
  6779. }
  6780. return n
  6781. }
  6782. func (m *ResponseDeliverTx) Size() (n int) {
  6783. if m == nil {
  6784. return 0
  6785. }
  6786. var l int
  6787. _ = l
  6788. if m.Code != 0 {
  6789. n += 1 + sovTypes(uint64(m.Code))
  6790. }
  6791. l = len(m.Data)
  6792. if l > 0 {
  6793. n += 1 + l + sovTypes(uint64(l))
  6794. }
  6795. l = len(m.Log)
  6796. if l > 0 {
  6797. n += 1 + l + sovTypes(uint64(l))
  6798. }
  6799. l = len(m.Info)
  6800. if l > 0 {
  6801. n += 1 + l + sovTypes(uint64(l))
  6802. }
  6803. if m.GasWanted != 0 {
  6804. n += 1 + sovTypes(uint64(m.GasWanted))
  6805. }
  6806. if m.GasUsed != 0 {
  6807. n += 1 + sovTypes(uint64(m.GasUsed))
  6808. }
  6809. if len(m.Events) > 0 {
  6810. for _, e := range m.Events {
  6811. l = e.Size()
  6812. n += 1 + l + sovTypes(uint64(l))
  6813. }
  6814. }
  6815. l = len(m.Codespace)
  6816. if l > 0 {
  6817. n += 1 + l + sovTypes(uint64(l))
  6818. }
  6819. return n
  6820. }
  6821. func (m *ResponseEndBlock) Size() (n int) {
  6822. if m == nil {
  6823. return 0
  6824. }
  6825. var l int
  6826. _ = l
  6827. if len(m.ValidatorUpdates) > 0 {
  6828. for _, e := range m.ValidatorUpdates {
  6829. l = e.Size()
  6830. n += 1 + l + sovTypes(uint64(l))
  6831. }
  6832. }
  6833. if m.ConsensusParamUpdates != nil {
  6834. l = m.ConsensusParamUpdates.Size()
  6835. n += 1 + l + sovTypes(uint64(l))
  6836. }
  6837. if len(m.Events) > 0 {
  6838. for _, e := range m.Events {
  6839. l = e.Size()
  6840. n += 1 + l + sovTypes(uint64(l))
  6841. }
  6842. }
  6843. return n
  6844. }
  6845. func (m *ResponseCommit) Size() (n int) {
  6846. if m == nil {
  6847. return 0
  6848. }
  6849. var l int
  6850. _ = l
  6851. l = len(m.Data)
  6852. if l > 0 {
  6853. n += 1 + l + sovTypes(uint64(l))
  6854. }
  6855. if m.RetainHeight != 0 {
  6856. n += 1 + sovTypes(uint64(m.RetainHeight))
  6857. }
  6858. return n
  6859. }
  6860. func (m *ResponseListSnapshots) Size() (n int) {
  6861. if m == nil {
  6862. return 0
  6863. }
  6864. var l int
  6865. _ = l
  6866. if len(m.Snapshots) > 0 {
  6867. for _, e := range m.Snapshots {
  6868. l = e.Size()
  6869. n += 1 + l + sovTypes(uint64(l))
  6870. }
  6871. }
  6872. return n
  6873. }
  6874. func (m *ResponseOfferSnapshot) Size() (n int) {
  6875. if m == nil {
  6876. return 0
  6877. }
  6878. var l int
  6879. _ = l
  6880. if m.Result != 0 {
  6881. n += 1 + sovTypes(uint64(m.Result))
  6882. }
  6883. return n
  6884. }
  6885. func (m *ResponseLoadSnapshotChunk) Size() (n int) {
  6886. if m == nil {
  6887. return 0
  6888. }
  6889. var l int
  6890. _ = l
  6891. l = len(m.Chunk)
  6892. if l > 0 {
  6893. n += 1 + l + sovTypes(uint64(l))
  6894. }
  6895. return n
  6896. }
  6897. func (m *ResponseApplySnapshotChunk) Size() (n int) {
  6898. if m == nil {
  6899. return 0
  6900. }
  6901. var l int
  6902. _ = l
  6903. if m.Result != 0 {
  6904. n += 1 + sovTypes(uint64(m.Result))
  6905. }
  6906. if len(m.RefetchChunks) > 0 {
  6907. l = 0
  6908. for _, e := range m.RefetchChunks {
  6909. l += sovTypes(uint64(e))
  6910. }
  6911. n += 1 + sovTypes(uint64(l)) + l
  6912. }
  6913. if len(m.RejectSenders) > 0 {
  6914. for _, s := range m.RejectSenders {
  6915. l = len(s)
  6916. n += 1 + l + sovTypes(uint64(l))
  6917. }
  6918. }
  6919. return n
  6920. }
  6921. func (m *ConsensusParams) Size() (n int) {
  6922. if m == nil {
  6923. return 0
  6924. }
  6925. var l int
  6926. _ = l
  6927. if m.Block != nil {
  6928. l = m.Block.Size()
  6929. n += 1 + l + sovTypes(uint64(l))
  6930. }
  6931. if m.Evidence != nil {
  6932. l = m.Evidence.Size()
  6933. n += 1 + l + sovTypes(uint64(l))
  6934. }
  6935. if m.Validator != nil {
  6936. l = m.Validator.Size()
  6937. n += 1 + l + sovTypes(uint64(l))
  6938. }
  6939. if m.Version != nil {
  6940. l = m.Version.Size()
  6941. n += 1 + l + sovTypes(uint64(l))
  6942. }
  6943. return n
  6944. }
  6945. func (m *BlockParams) Size() (n int) {
  6946. if m == nil {
  6947. return 0
  6948. }
  6949. var l int
  6950. _ = l
  6951. if m.MaxBytes != 0 {
  6952. n += 1 + sovTypes(uint64(m.MaxBytes))
  6953. }
  6954. if m.MaxGas != 0 {
  6955. n += 1 + sovTypes(uint64(m.MaxGas))
  6956. }
  6957. return n
  6958. }
  6959. func (m *LastCommitInfo) Size() (n int) {
  6960. if m == nil {
  6961. return 0
  6962. }
  6963. var l int
  6964. _ = l
  6965. if m.Round != 0 {
  6966. n += 1 + sovTypes(uint64(m.Round))
  6967. }
  6968. if len(m.Votes) > 0 {
  6969. for _, e := range m.Votes {
  6970. l = e.Size()
  6971. n += 1 + l + sovTypes(uint64(l))
  6972. }
  6973. }
  6974. return n
  6975. }
  6976. func (m *EventAttribute) Size() (n int) {
  6977. if m == nil {
  6978. return 0
  6979. }
  6980. var l int
  6981. _ = l
  6982. l = len(m.Key)
  6983. if l > 0 {
  6984. n += 1 + l + sovTypes(uint64(l))
  6985. }
  6986. l = len(m.Value)
  6987. if l > 0 {
  6988. n += 1 + l + sovTypes(uint64(l))
  6989. }
  6990. if m.Index {
  6991. n += 2
  6992. }
  6993. return n
  6994. }
  6995. func (m *Event) Size() (n int) {
  6996. if m == nil {
  6997. return 0
  6998. }
  6999. var l int
  7000. _ = l
  7001. l = len(m.Type)
  7002. if l > 0 {
  7003. n += 1 + l + sovTypes(uint64(l))
  7004. }
  7005. if len(m.Attributes) > 0 {
  7006. for _, e := range m.Attributes {
  7007. l = e.Size()
  7008. n += 1 + l + sovTypes(uint64(l))
  7009. }
  7010. }
  7011. return n
  7012. }
  7013. func (m *TxResult) Size() (n int) {
  7014. if m == nil {
  7015. return 0
  7016. }
  7017. var l int
  7018. _ = l
  7019. if m.Height != 0 {
  7020. n += 1 + sovTypes(uint64(m.Height))
  7021. }
  7022. if m.Index != 0 {
  7023. n += 1 + sovTypes(uint64(m.Index))
  7024. }
  7025. l = len(m.Tx)
  7026. if l > 0 {
  7027. n += 1 + l + sovTypes(uint64(l))
  7028. }
  7029. l = m.Result.Size()
  7030. n += 1 + l + sovTypes(uint64(l))
  7031. return n
  7032. }
  7033. func (m *Validator) Size() (n int) {
  7034. if m == nil {
  7035. return 0
  7036. }
  7037. var l int
  7038. _ = l
  7039. l = len(m.Address)
  7040. if l > 0 {
  7041. n += 1 + l + sovTypes(uint64(l))
  7042. }
  7043. if m.Power != 0 {
  7044. n += 1 + sovTypes(uint64(m.Power))
  7045. }
  7046. return n
  7047. }
  7048. func (m *ValidatorUpdate) Size() (n int) {
  7049. if m == nil {
  7050. return 0
  7051. }
  7052. var l int
  7053. _ = l
  7054. l = m.PubKey.Size()
  7055. n += 1 + l + sovTypes(uint64(l))
  7056. if m.Power != 0 {
  7057. n += 1 + sovTypes(uint64(m.Power))
  7058. }
  7059. return n
  7060. }
  7061. func (m *VoteInfo) Size() (n int) {
  7062. if m == nil {
  7063. return 0
  7064. }
  7065. var l int
  7066. _ = l
  7067. l = m.Validator.Size()
  7068. n += 1 + l + sovTypes(uint64(l))
  7069. if m.SignedLastBlock {
  7070. n += 2
  7071. }
  7072. return n
  7073. }
  7074. func (m *Evidence) Size() (n int) {
  7075. if m == nil {
  7076. return 0
  7077. }
  7078. var l int
  7079. _ = l
  7080. l = len(m.Type)
  7081. if l > 0 {
  7082. n += 1 + l + sovTypes(uint64(l))
  7083. }
  7084. l = m.Validator.Size()
  7085. n += 1 + l + sovTypes(uint64(l))
  7086. if m.Height != 0 {
  7087. n += 1 + sovTypes(uint64(m.Height))
  7088. }
  7089. l = github_com_gogo_protobuf_types.SizeOfStdTime(m.Time)
  7090. n += 1 + l + sovTypes(uint64(l))
  7091. if m.TotalVotingPower != 0 {
  7092. n += 1 + sovTypes(uint64(m.TotalVotingPower))
  7093. }
  7094. return n
  7095. }
  7096. func (m *Snapshot) Size() (n int) {
  7097. if m == nil {
  7098. return 0
  7099. }
  7100. var l int
  7101. _ = l
  7102. if m.Height != 0 {
  7103. n += 1 + sovTypes(uint64(m.Height))
  7104. }
  7105. if m.Format != 0 {
  7106. n += 1 + sovTypes(uint64(m.Format))
  7107. }
  7108. if m.Chunks != 0 {
  7109. n += 1 + sovTypes(uint64(m.Chunks))
  7110. }
  7111. l = len(m.Hash)
  7112. if l > 0 {
  7113. n += 1 + l + sovTypes(uint64(l))
  7114. }
  7115. l = len(m.Metadata)
  7116. if l > 0 {
  7117. n += 1 + l + sovTypes(uint64(l))
  7118. }
  7119. return n
  7120. }
  7121. func sovTypes(x uint64) (n int) {
  7122. return (math_bits.Len64(x|1) + 6) / 7
  7123. }
  7124. func sozTypes(x uint64) (n int) {
  7125. return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  7126. }
  7127. func (m *Request) Unmarshal(dAtA []byte) error {
  7128. l := len(dAtA)
  7129. iNdEx := 0
  7130. for iNdEx < l {
  7131. preIndex := iNdEx
  7132. var wire uint64
  7133. for shift := uint(0); ; shift += 7 {
  7134. if shift >= 64 {
  7135. return ErrIntOverflowTypes
  7136. }
  7137. if iNdEx >= l {
  7138. return io.ErrUnexpectedEOF
  7139. }
  7140. b := dAtA[iNdEx]
  7141. iNdEx++
  7142. wire |= uint64(b&0x7F) << shift
  7143. if b < 0x80 {
  7144. break
  7145. }
  7146. }
  7147. fieldNum := int32(wire >> 3)
  7148. wireType := int(wire & 0x7)
  7149. if wireType == 4 {
  7150. return fmt.Errorf("proto: Request: wiretype end group for non-group")
  7151. }
  7152. if fieldNum <= 0 {
  7153. return fmt.Errorf("proto: Request: illegal tag %d (wire type %d)", fieldNum, wire)
  7154. }
  7155. switch fieldNum {
  7156. case 1:
  7157. if wireType != 2 {
  7158. return fmt.Errorf("proto: wrong wireType = %d for field Echo", wireType)
  7159. }
  7160. var msglen int
  7161. for shift := uint(0); ; shift += 7 {
  7162. if shift >= 64 {
  7163. return ErrIntOverflowTypes
  7164. }
  7165. if iNdEx >= l {
  7166. return io.ErrUnexpectedEOF
  7167. }
  7168. b := dAtA[iNdEx]
  7169. iNdEx++
  7170. msglen |= int(b&0x7F) << shift
  7171. if b < 0x80 {
  7172. break
  7173. }
  7174. }
  7175. if msglen < 0 {
  7176. return ErrInvalidLengthTypes
  7177. }
  7178. postIndex := iNdEx + msglen
  7179. if postIndex < 0 {
  7180. return ErrInvalidLengthTypes
  7181. }
  7182. if postIndex > l {
  7183. return io.ErrUnexpectedEOF
  7184. }
  7185. v := &RequestEcho{}
  7186. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7187. return err
  7188. }
  7189. m.Value = &Request_Echo{v}
  7190. iNdEx = postIndex
  7191. case 2:
  7192. if wireType != 2 {
  7193. return fmt.Errorf("proto: wrong wireType = %d for field Flush", wireType)
  7194. }
  7195. var msglen int
  7196. for shift := uint(0); ; shift += 7 {
  7197. if shift >= 64 {
  7198. return ErrIntOverflowTypes
  7199. }
  7200. if iNdEx >= l {
  7201. return io.ErrUnexpectedEOF
  7202. }
  7203. b := dAtA[iNdEx]
  7204. iNdEx++
  7205. msglen |= int(b&0x7F) << shift
  7206. if b < 0x80 {
  7207. break
  7208. }
  7209. }
  7210. if msglen < 0 {
  7211. return ErrInvalidLengthTypes
  7212. }
  7213. postIndex := iNdEx + msglen
  7214. if postIndex < 0 {
  7215. return ErrInvalidLengthTypes
  7216. }
  7217. if postIndex > l {
  7218. return io.ErrUnexpectedEOF
  7219. }
  7220. v := &RequestFlush{}
  7221. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7222. return err
  7223. }
  7224. m.Value = &Request_Flush{v}
  7225. iNdEx = postIndex
  7226. case 3:
  7227. if wireType != 2 {
  7228. return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
  7229. }
  7230. var msglen int
  7231. for shift := uint(0); ; shift += 7 {
  7232. if shift >= 64 {
  7233. return ErrIntOverflowTypes
  7234. }
  7235. if iNdEx >= l {
  7236. return io.ErrUnexpectedEOF
  7237. }
  7238. b := dAtA[iNdEx]
  7239. iNdEx++
  7240. msglen |= int(b&0x7F) << shift
  7241. if b < 0x80 {
  7242. break
  7243. }
  7244. }
  7245. if msglen < 0 {
  7246. return ErrInvalidLengthTypes
  7247. }
  7248. postIndex := iNdEx + msglen
  7249. if postIndex < 0 {
  7250. return ErrInvalidLengthTypes
  7251. }
  7252. if postIndex > l {
  7253. return io.ErrUnexpectedEOF
  7254. }
  7255. v := &RequestInfo{}
  7256. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7257. return err
  7258. }
  7259. m.Value = &Request_Info{v}
  7260. iNdEx = postIndex
  7261. case 4:
  7262. if wireType != 2 {
  7263. return fmt.Errorf("proto: wrong wireType = %d for field SetOption", wireType)
  7264. }
  7265. var msglen int
  7266. for shift := uint(0); ; shift += 7 {
  7267. if shift >= 64 {
  7268. return ErrIntOverflowTypes
  7269. }
  7270. if iNdEx >= l {
  7271. return io.ErrUnexpectedEOF
  7272. }
  7273. b := dAtA[iNdEx]
  7274. iNdEx++
  7275. msglen |= int(b&0x7F) << shift
  7276. if b < 0x80 {
  7277. break
  7278. }
  7279. }
  7280. if msglen < 0 {
  7281. return ErrInvalidLengthTypes
  7282. }
  7283. postIndex := iNdEx + msglen
  7284. if postIndex < 0 {
  7285. return ErrInvalidLengthTypes
  7286. }
  7287. if postIndex > l {
  7288. return io.ErrUnexpectedEOF
  7289. }
  7290. v := &RequestSetOption{}
  7291. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7292. return err
  7293. }
  7294. m.Value = &Request_SetOption{v}
  7295. iNdEx = postIndex
  7296. case 5:
  7297. if wireType != 2 {
  7298. return fmt.Errorf("proto: wrong wireType = %d for field InitChain", wireType)
  7299. }
  7300. var msglen int
  7301. for shift := uint(0); ; shift += 7 {
  7302. if shift >= 64 {
  7303. return ErrIntOverflowTypes
  7304. }
  7305. if iNdEx >= l {
  7306. return io.ErrUnexpectedEOF
  7307. }
  7308. b := dAtA[iNdEx]
  7309. iNdEx++
  7310. msglen |= int(b&0x7F) << shift
  7311. if b < 0x80 {
  7312. break
  7313. }
  7314. }
  7315. if msglen < 0 {
  7316. return ErrInvalidLengthTypes
  7317. }
  7318. postIndex := iNdEx + msglen
  7319. if postIndex < 0 {
  7320. return ErrInvalidLengthTypes
  7321. }
  7322. if postIndex > l {
  7323. return io.ErrUnexpectedEOF
  7324. }
  7325. v := &RequestInitChain{}
  7326. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7327. return err
  7328. }
  7329. m.Value = &Request_InitChain{v}
  7330. iNdEx = postIndex
  7331. case 6:
  7332. if wireType != 2 {
  7333. return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType)
  7334. }
  7335. var msglen int
  7336. for shift := uint(0); ; shift += 7 {
  7337. if shift >= 64 {
  7338. return ErrIntOverflowTypes
  7339. }
  7340. if iNdEx >= l {
  7341. return io.ErrUnexpectedEOF
  7342. }
  7343. b := dAtA[iNdEx]
  7344. iNdEx++
  7345. msglen |= int(b&0x7F) << shift
  7346. if b < 0x80 {
  7347. break
  7348. }
  7349. }
  7350. if msglen < 0 {
  7351. return ErrInvalidLengthTypes
  7352. }
  7353. postIndex := iNdEx + msglen
  7354. if postIndex < 0 {
  7355. return ErrInvalidLengthTypes
  7356. }
  7357. if postIndex > l {
  7358. return io.ErrUnexpectedEOF
  7359. }
  7360. v := &RequestQuery{}
  7361. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7362. return err
  7363. }
  7364. m.Value = &Request_Query{v}
  7365. iNdEx = postIndex
  7366. case 7:
  7367. if wireType != 2 {
  7368. return fmt.Errorf("proto: wrong wireType = %d for field BeginBlock", wireType)
  7369. }
  7370. var msglen int
  7371. for shift := uint(0); ; shift += 7 {
  7372. if shift >= 64 {
  7373. return ErrIntOverflowTypes
  7374. }
  7375. if iNdEx >= l {
  7376. return io.ErrUnexpectedEOF
  7377. }
  7378. b := dAtA[iNdEx]
  7379. iNdEx++
  7380. msglen |= int(b&0x7F) << shift
  7381. if b < 0x80 {
  7382. break
  7383. }
  7384. }
  7385. if msglen < 0 {
  7386. return ErrInvalidLengthTypes
  7387. }
  7388. postIndex := iNdEx + msglen
  7389. if postIndex < 0 {
  7390. return ErrInvalidLengthTypes
  7391. }
  7392. if postIndex > l {
  7393. return io.ErrUnexpectedEOF
  7394. }
  7395. v := &RequestBeginBlock{}
  7396. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7397. return err
  7398. }
  7399. m.Value = &Request_BeginBlock{v}
  7400. iNdEx = postIndex
  7401. case 8:
  7402. if wireType != 2 {
  7403. return fmt.Errorf("proto: wrong wireType = %d for field CheckTx", wireType)
  7404. }
  7405. var msglen int
  7406. for shift := uint(0); ; shift += 7 {
  7407. if shift >= 64 {
  7408. return ErrIntOverflowTypes
  7409. }
  7410. if iNdEx >= l {
  7411. return io.ErrUnexpectedEOF
  7412. }
  7413. b := dAtA[iNdEx]
  7414. iNdEx++
  7415. msglen |= int(b&0x7F) << shift
  7416. if b < 0x80 {
  7417. break
  7418. }
  7419. }
  7420. if msglen < 0 {
  7421. return ErrInvalidLengthTypes
  7422. }
  7423. postIndex := iNdEx + msglen
  7424. if postIndex < 0 {
  7425. return ErrInvalidLengthTypes
  7426. }
  7427. if postIndex > l {
  7428. return io.ErrUnexpectedEOF
  7429. }
  7430. v := &RequestCheckTx{}
  7431. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7432. return err
  7433. }
  7434. m.Value = &Request_CheckTx{v}
  7435. iNdEx = postIndex
  7436. case 9:
  7437. if wireType != 2 {
  7438. return fmt.Errorf("proto: wrong wireType = %d for field DeliverTx", wireType)
  7439. }
  7440. var msglen int
  7441. for shift := uint(0); ; shift += 7 {
  7442. if shift >= 64 {
  7443. return ErrIntOverflowTypes
  7444. }
  7445. if iNdEx >= l {
  7446. return io.ErrUnexpectedEOF
  7447. }
  7448. b := dAtA[iNdEx]
  7449. iNdEx++
  7450. msglen |= int(b&0x7F) << shift
  7451. if b < 0x80 {
  7452. break
  7453. }
  7454. }
  7455. if msglen < 0 {
  7456. return ErrInvalidLengthTypes
  7457. }
  7458. postIndex := iNdEx + msglen
  7459. if postIndex < 0 {
  7460. return ErrInvalidLengthTypes
  7461. }
  7462. if postIndex > l {
  7463. return io.ErrUnexpectedEOF
  7464. }
  7465. v := &RequestDeliverTx{}
  7466. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7467. return err
  7468. }
  7469. m.Value = &Request_DeliverTx{v}
  7470. iNdEx = postIndex
  7471. case 10:
  7472. if wireType != 2 {
  7473. return fmt.Errorf("proto: wrong wireType = %d for field EndBlock", wireType)
  7474. }
  7475. var msglen int
  7476. for shift := uint(0); ; shift += 7 {
  7477. if shift >= 64 {
  7478. return ErrIntOverflowTypes
  7479. }
  7480. if iNdEx >= l {
  7481. return io.ErrUnexpectedEOF
  7482. }
  7483. b := dAtA[iNdEx]
  7484. iNdEx++
  7485. msglen |= int(b&0x7F) << shift
  7486. if b < 0x80 {
  7487. break
  7488. }
  7489. }
  7490. if msglen < 0 {
  7491. return ErrInvalidLengthTypes
  7492. }
  7493. postIndex := iNdEx + msglen
  7494. if postIndex < 0 {
  7495. return ErrInvalidLengthTypes
  7496. }
  7497. if postIndex > l {
  7498. return io.ErrUnexpectedEOF
  7499. }
  7500. v := &RequestEndBlock{}
  7501. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7502. return err
  7503. }
  7504. m.Value = &Request_EndBlock{v}
  7505. iNdEx = postIndex
  7506. case 11:
  7507. if wireType != 2 {
  7508. return fmt.Errorf("proto: wrong wireType = %d for field Commit", wireType)
  7509. }
  7510. var msglen int
  7511. for shift := uint(0); ; shift += 7 {
  7512. if shift >= 64 {
  7513. return ErrIntOverflowTypes
  7514. }
  7515. if iNdEx >= l {
  7516. return io.ErrUnexpectedEOF
  7517. }
  7518. b := dAtA[iNdEx]
  7519. iNdEx++
  7520. msglen |= int(b&0x7F) << shift
  7521. if b < 0x80 {
  7522. break
  7523. }
  7524. }
  7525. if msglen < 0 {
  7526. return ErrInvalidLengthTypes
  7527. }
  7528. postIndex := iNdEx + msglen
  7529. if postIndex < 0 {
  7530. return ErrInvalidLengthTypes
  7531. }
  7532. if postIndex > l {
  7533. return io.ErrUnexpectedEOF
  7534. }
  7535. v := &RequestCommit{}
  7536. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7537. return err
  7538. }
  7539. m.Value = &Request_Commit{v}
  7540. iNdEx = postIndex
  7541. case 12:
  7542. if wireType != 2 {
  7543. return fmt.Errorf("proto: wrong wireType = %d for field ListSnapshots", wireType)
  7544. }
  7545. var msglen int
  7546. for shift := uint(0); ; shift += 7 {
  7547. if shift >= 64 {
  7548. return ErrIntOverflowTypes
  7549. }
  7550. if iNdEx >= l {
  7551. return io.ErrUnexpectedEOF
  7552. }
  7553. b := dAtA[iNdEx]
  7554. iNdEx++
  7555. msglen |= int(b&0x7F) << shift
  7556. if b < 0x80 {
  7557. break
  7558. }
  7559. }
  7560. if msglen < 0 {
  7561. return ErrInvalidLengthTypes
  7562. }
  7563. postIndex := iNdEx + msglen
  7564. if postIndex < 0 {
  7565. return ErrInvalidLengthTypes
  7566. }
  7567. if postIndex > l {
  7568. return io.ErrUnexpectedEOF
  7569. }
  7570. v := &RequestListSnapshots{}
  7571. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7572. return err
  7573. }
  7574. m.Value = &Request_ListSnapshots{v}
  7575. iNdEx = postIndex
  7576. case 13:
  7577. if wireType != 2 {
  7578. return fmt.Errorf("proto: wrong wireType = %d for field OfferSnapshot", wireType)
  7579. }
  7580. var msglen int
  7581. for shift := uint(0); ; shift += 7 {
  7582. if shift >= 64 {
  7583. return ErrIntOverflowTypes
  7584. }
  7585. if iNdEx >= l {
  7586. return io.ErrUnexpectedEOF
  7587. }
  7588. b := dAtA[iNdEx]
  7589. iNdEx++
  7590. msglen |= int(b&0x7F) << shift
  7591. if b < 0x80 {
  7592. break
  7593. }
  7594. }
  7595. if msglen < 0 {
  7596. return ErrInvalidLengthTypes
  7597. }
  7598. postIndex := iNdEx + msglen
  7599. if postIndex < 0 {
  7600. return ErrInvalidLengthTypes
  7601. }
  7602. if postIndex > l {
  7603. return io.ErrUnexpectedEOF
  7604. }
  7605. v := &RequestOfferSnapshot{}
  7606. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7607. return err
  7608. }
  7609. m.Value = &Request_OfferSnapshot{v}
  7610. iNdEx = postIndex
  7611. case 14:
  7612. if wireType != 2 {
  7613. return fmt.Errorf("proto: wrong wireType = %d for field LoadSnapshotChunk", wireType)
  7614. }
  7615. var msglen int
  7616. for shift := uint(0); ; shift += 7 {
  7617. if shift >= 64 {
  7618. return ErrIntOverflowTypes
  7619. }
  7620. if iNdEx >= l {
  7621. return io.ErrUnexpectedEOF
  7622. }
  7623. b := dAtA[iNdEx]
  7624. iNdEx++
  7625. msglen |= int(b&0x7F) << shift
  7626. if b < 0x80 {
  7627. break
  7628. }
  7629. }
  7630. if msglen < 0 {
  7631. return ErrInvalidLengthTypes
  7632. }
  7633. postIndex := iNdEx + msglen
  7634. if postIndex < 0 {
  7635. return ErrInvalidLengthTypes
  7636. }
  7637. if postIndex > l {
  7638. return io.ErrUnexpectedEOF
  7639. }
  7640. v := &RequestLoadSnapshotChunk{}
  7641. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7642. return err
  7643. }
  7644. m.Value = &Request_LoadSnapshotChunk{v}
  7645. iNdEx = postIndex
  7646. case 15:
  7647. if wireType != 2 {
  7648. return fmt.Errorf("proto: wrong wireType = %d for field ApplySnapshotChunk", wireType)
  7649. }
  7650. var msglen int
  7651. for shift := uint(0); ; shift += 7 {
  7652. if shift >= 64 {
  7653. return ErrIntOverflowTypes
  7654. }
  7655. if iNdEx >= l {
  7656. return io.ErrUnexpectedEOF
  7657. }
  7658. b := dAtA[iNdEx]
  7659. iNdEx++
  7660. msglen |= int(b&0x7F) << shift
  7661. if b < 0x80 {
  7662. break
  7663. }
  7664. }
  7665. if msglen < 0 {
  7666. return ErrInvalidLengthTypes
  7667. }
  7668. postIndex := iNdEx + msglen
  7669. if postIndex < 0 {
  7670. return ErrInvalidLengthTypes
  7671. }
  7672. if postIndex > l {
  7673. return io.ErrUnexpectedEOF
  7674. }
  7675. v := &RequestApplySnapshotChunk{}
  7676. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7677. return err
  7678. }
  7679. m.Value = &Request_ApplySnapshotChunk{v}
  7680. iNdEx = postIndex
  7681. default:
  7682. iNdEx = preIndex
  7683. skippy, err := skipTypes(dAtA[iNdEx:])
  7684. if err != nil {
  7685. return err
  7686. }
  7687. if skippy < 0 {
  7688. return ErrInvalidLengthTypes
  7689. }
  7690. if (iNdEx + skippy) < 0 {
  7691. return ErrInvalidLengthTypes
  7692. }
  7693. if (iNdEx + skippy) > l {
  7694. return io.ErrUnexpectedEOF
  7695. }
  7696. iNdEx += skippy
  7697. }
  7698. }
  7699. if iNdEx > l {
  7700. return io.ErrUnexpectedEOF
  7701. }
  7702. return nil
  7703. }
  7704. func (m *RequestEcho) Unmarshal(dAtA []byte) error {
  7705. l := len(dAtA)
  7706. iNdEx := 0
  7707. for iNdEx < l {
  7708. preIndex := iNdEx
  7709. var wire uint64
  7710. for shift := uint(0); ; shift += 7 {
  7711. if shift >= 64 {
  7712. return ErrIntOverflowTypes
  7713. }
  7714. if iNdEx >= l {
  7715. return io.ErrUnexpectedEOF
  7716. }
  7717. b := dAtA[iNdEx]
  7718. iNdEx++
  7719. wire |= uint64(b&0x7F) << shift
  7720. if b < 0x80 {
  7721. break
  7722. }
  7723. }
  7724. fieldNum := int32(wire >> 3)
  7725. wireType := int(wire & 0x7)
  7726. if wireType == 4 {
  7727. return fmt.Errorf("proto: RequestEcho: wiretype end group for non-group")
  7728. }
  7729. if fieldNum <= 0 {
  7730. return fmt.Errorf("proto: RequestEcho: illegal tag %d (wire type %d)", fieldNum, wire)
  7731. }
  7732. switch fieldNum {
  7733. case 1:
  7734. if wireType != 2 {
  7735. return fmt.Errorf("proto: wrong wireType = %d for field Message", wireType)
  7736. }
  7737. var stringLen uint64
  7738. for shift := uint(0); ; shift += 7 {
  7739. if shift >= 64 {
  7740. return ErrIntOverflowTypes
  7741. }
  7742. if iNdEx >= l {
  7743. return io.ErrUnexpectedEOF
  7744. }
  7745. b := dAtA[iNdEx]
  7746. iNdEx++
  7747. stringLen |= uint64(b&0x7F) << shift
  7748. if b < 0x80 {
  7749. break
  7750. }
  7751. }
  7752. intStringLen := int(stringLen)
  7753. if intStringLen < 0 {
  7754. return ErrInvalidLengthTypes
  7755. }
  7756. postIndex := iNdEx + intStringLen
  7757. if postIndex < 0 {
  7758. return ErrInvalidLengthTypes
  7759. }
  7760. if postIndex > l {
  7761. return io.ErrUnexpectedEOF
  7762. }
  7763. m.Message = string(dAtA[iNdEx:postIndex])
  7764. iNdEx = postIndex
  7765. default:
  7766. iNdEx = preIndex
  7767. skippy, err := skipTypes(dAtA[iNdEx:])
  7768. if err != nil {
  7769. return err
  7770. }
  7771. if skippy < 0 {
  7772. return ErrInvalidLengthTypes
  7773. }
  7774. if (iNdEx + skippy) < 0 {
  7775. return ErrInvalidLengthTypes
  7776. }
  7777. if (iNdEx + skippy) > l {
  7778. return io.ErrUnexpectedEOF
  7779. }
  7780. iNdEx += skippy
  7781. }
  7782. }
  7783. if iNdEx > l {
  7784. return io.ErrUnexpectedEOF
  7785. }
  7786. return nil
  7787. }
  7788. func (m *RequestFlush) Unmarshal(dAtA []byte) error {
  7789. l := len(dAtA)
  7790. iNdEx := 0
  7791. for iNdEx < l {
  7792. preIndex := iNdEx
  7793. var wire uint64
  7794. for shift := uint(0); ; shift += 7 {
  7795. if shift >= 64 {
  7796. return ErrIntOverflowTypes
  7797. }
  7798. if iNdEx >= l {
  7799. return io.ErrUnexpectedEOF
  7800. }
  7801. b := dAtA[iNdEx]
  7802. iNdEx++
  7803. wire |= uint64(b&0x7F) << shift
  7804. if b < 0x80 {
  7805. break
  7806. }
  7807. }
  7808. fieldNum := int32(wire >> 3)
  7809. wireType := int(wire & 0x7)
  7810. if wireType == 4 {
  7811. return fmt.Errorf("proto: RequestFlush: wiretype end group for non-group")
  7812. }
  7813. if fieldNum <= 0 {
  7814. return fmt.Errorf("proto: RequestFlush: illegal tag %d (wire type %d)", fieldNum, wire)
  7815. }
  7816. switch fieldNum {
  7817. default:
  7818. iNdEx = preIndex
  7819. skippy, err := skipTypes(dAtA[iNdEx:])
  7820. if err != nil {
  7821. return err
  7822. }
  7823. if skippy < 0 {
  7824. return ErrInvalidLengthTypes
  7825. }
  7826. if (iNdEx + skippy) < 0 {
  7827. return ErrInvalidLengthTypes
  7828. }
  7829. if (iNdEx + skippy) > l {
  7830. return io.ErrUnexpectedEOF
  7831. }
  7832. iNdEx += skippy
  7833. }
  7834. }
  7835. if iNdEx > l {
  7836. return io.ErrUnexpectedEOF
  7837. }
  7838. return nil
  7839. }
  7840. func (m *RequestInfo) Unmarshal(dAtA []byte) error {
  7841. l := len(dAtA)
  7842. iNdEx := 0
  7843. for iNdEx < l {
  7844. preIndex := iNdEx
  7845. var wire uint64
  7846. for shift := uint(0); ; shift += 7 {
  7847. if shift >= 64 {
  7848. return ErrIntOverflowTypes
  7849. }
  7850. if iNdEx >= l {
  7851. return io.ErrUnexpectedEOF
  7852. }
  7853. b := dAtA[iNdEx]
  7854. iNdEx++
  7855. wire |= uint64(b&0x7F) << shift
  7856. if b < 0x80 {
  7857. break
  7858. }
  7859. }
  7860. fieldNum := int32(wire >> 3)
  7861. wireType := int(wire & 0x7)
  7862. if wireType == 4 {
  7863. return fmt.Errorf("proto: RequestInfo: wiretype end group for non-group")
  7864. }
  7865. if fieldNum <= 0 {
  7866. return fmt.Errorf("proto: RequestInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  7867. }
  7868. switch fieldNum {
  7869. case 1:
  7870. if wireType != 2 {
  7871. return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
  7872. }
  7873. var stringLen uint64
  7874. for shift := uint(0); ; shift += 7 {
  7875. if shift >= 64 {
  7876. return ErrIntOverflowTypes
  7877. }
  7878. if iNdEx >= l {
  7879. return io.ErrUnexpectedEOF
  7880. }
  7881. b := dAtA[iNdEx]
  7882. iNdEx++
  7883. stringLen |= uint64(b&0x7F) << shift
  7884. if b < 0x80 {
  7885. break
  7886. }
  7887. }
  7888. intStringLen := int(stringLen)
  7889. if intStringLen < 0 {
  7890. return ErrInvalidLengthTypes
  7891. }
  7892. postIndex := iNdEx + intStringLen
  7893. if postIndex < 0 {
  7894. return ErrInvalidLengthTypes
  7895. }
  7896. if postIndex > l {
  7897. return io.ErrUnexpectedEOF
  7898. }
  7899. m.Version = string(dAtA[iNdEx:postIndex])
  7900. iNdEx = postIndex
  7901. case 2:
  7902. if wireType != 0 {
  7903. return fmt.Errorf("proto: wrong wireType = %d for field BlockVersion", wireType)
  7904. }
  7905. m.BlockVersion = 0
  7906. for shift := uint(0); ; shift += 7 {
  7907. if shift >= 64 {
  7908. return ErrIntOverflowTypes
  7909. }
  7910. if iNdEx >= l {
  7911. return io.ErrUnexpectedEOF
  7912. }
  7913. b := dAtA[iNdEx]
  7914. iNdEx++
  7915. m.BlockVersion |= uint64(b&0x7F) << shift
  7916. if b < 0x80 {
  7917. break
  7918. }
  7919. }
  7920. case 3:
  7921. if wireType != 0 {
  7922. return fmt.Errorf("proto: wrong wireType = %d for field P2PVersion", wireType)
  7923. }
  7924. m.P2PVersion = 0
  7925. for shift := uint(0); ; shift += 7 {
  7926. if shift >= 64 {
  7927. return ErrIntOverflowTypes
  7928. }
  7929. if iNdEx >= l {
  7930. return io.ErrUnexpectedEOF
  7931. }
  7932. b := dAtA[iNdEx]
  7933. iNdEx++
  7934. m.P2PVersion |= uint64(b&0x7F) << shift
  7935. if b < 0x80 {
  7936. break
  7937. }
  7938. }
  7939. default:
  7940. iNdEx = preIndex
  7941. skippy, err := skipTypes(dAtA[iNdEx:])
  7942. if err != nil {
  7943. return err
  7944. }
  7945. if skippy < 0 {
  7946. return ErrInvalidLengthTypes
  7947. }
  7948. if (iNdEx + skippy) < 0 {
  7949. return ErrInvalidLengthTypes
  7950. }
  7951. if (iNdEx + skippy) > l {
  7952. return io.ErrUnexpectedEOF
  7953. }
  7954. iNdEx += skippy
  7955. }
  7956. }
  7957. if iNdEx > l {
  7958. return io.ErrUnexpectedEOF
  7959. }
  7960. return nil
  7961. }
  7962. func (m *RequestSetOption) Unmarshal(dAtA []byte) error {
  7963. l := len(dAtA)
  7964. iNdEx := 0
  7965. for iNdEx < l {
  7966. preIndex := iNdEx
  7967. var wire uint64
  7968. for shift := uint(0); ; shift += 7 {
  7969. if shift >= 64 {
  7970. return ErrIntOverflowTypes
  7971. }
  7972. if iNdEx >= l {
  7973. return io.ErrUnexpectedEOF
  7974. }
  7975. b := dAtA[iNdEx]
  7976. iNdEx++
  7977. wire |= uint64(b&0x7F) << shift
  7978. if b < 0x80 {
  7979. break
  7980. }
  7981. }
  7982. fieldNum := int32(wire >> 3)
  7983. wireType := int(wire & 0x7)
  7984. if wireType == 4 {
  7985. return fmt.Errorf("proto: RequestSetOption: wiretype end group for non-group")
  7986. }
  7987. if fieldNum <= 0 {
  7988. return fmt.Errorf("proto: RequestSetOption: illegal tag %d (wire type %d)", fieldNum, wire)
  7989. }
  7990. switch fieldNum {
  7991. case 1:
  7992. if wireType != 2 {
  7993. return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType)
  7994. }
  7995. var stringLen uint64
  7996. for shift := uint(0); ; shift += 7 {
  7997. if shift >= 64 {
  7998. return ErrIntOverflowTypes
  7999. }
  8000. if iNdEx >= l {
  8001. return io.ErrUnexpectedEOF
  8002. }
  8003. b := dAtA[iNdEx]
  8004. iNdEx++
  8005. stringLen |= uint64(b&0x7F) << shift
  8006. if b < 0x80 {
  8007. break
  8008. }
  8009. }
  8010. intStringLen := int(stringLen)
  8011. if intStringLen < 0 {
  8012. return ErrInvalidLengthTypes
  8013. }
  8014. postIndex := iNdEx + intStringLen
  8015. if postIndex < 0 {
  8016. return ErrInvalidLengthTypes
  8017. }
  8018. if postIndex > l {
  8019. return io.ErrUnexpectedEOF
  8020. }
  8021. m.Key = string(dAtA[iNdEx:postIndex])
  8022. iNdEx = postIndex
  8023. case 2:
  8024. if wireType != 2 {
  8025. return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
  8026. }
  8027. var stringLen uint64
  8028. for shift := uint(0); ; shift += 7 {
  8029. if shift >= 64 {
  8030. return ErrIntOverflowTypes
  8031. }
  8032. if iNdEx >= l {
  8033. return io.ErrUnexpectedEOF
  8034. }
  8035. b := dAtA[iNdEx]
  8036. iNdEx++
  8037. stringLen |= uint64(b&0x7F) << shift
  8038. if b < 0x80 {
  8039. break
  8040. }
  8041. }
  8042. intStringLen := int(stringLen)
  8043. if intStringLen < 0 {
  8044. return ErrInvalidLengthTypes
  8045. }
  8046. postIndex := iNdEx + intStringLen
  8047. if postIndex < 0 {
  8048. return ErrInvalidLengthTypes
  8049. }
  8050. if postIndex > l {
  8051. return io.ErrUnexpectedEOF
  8052. }
  8053. m.Value = string(dAtA[iNdEx:postIndex])
  8054. iNdEx = postIndex
  8055. default:
  8056. iNdEx = preIndex
  8057. skippy, err := skipTypes(dAtA[iNdEx:])
  8058. if err != nil {
  8059. return err
  8060. }
  8061. if skippy < 0 {
  8062. return ErrInvalidLengthTypes
  8063. }
  8064. if (iNdEx + skippy) < 0 {
  8065. return ErrInvalidLengthTypes
  8066. }
  8067. if (iNdEx + skippy) > l {
  8068. return io.ErrUnexpectedEOF
  8069. }
  8070. iNdEx += skippy
  8071. }
  8072. }
  8073. if iNdEx > l {
  8074. return io.ErrUnexpectedEOF
  8075. }
  8076. return nil
  8077. }
  8078. func (m *RequestInitChain) Unmarshal(dAtA []byte) error {
  8079. l := len(dAtA)
  8080. iNdEx := 0
  8081. for iNdEx < l {
  8082. preIndex := iNdEx
  8083. var wire uint64
  8084. for shift := uint(0); ; shift += 7 {
  8085. if shift >= 64 {
  8086. return ErrIntOverflowTypes
  8087. }
  8088. if iNdEx >= l {
  8089. return io.ErrUnexpectedEOF
  8090. }
  8091. b := dAtA[iNdEx]
  8092. iNdEx++
  8093. wire |= uint64(b&0x7F) << shift
  8094. if b < 0x80 {
  8095. break
  8096. }
  8097. }
  8098. fieldNum := int32(wire >> 3)
  8099. wireType := int(wire & 0x7)
  8100. if wireType == 4 {
  8101. return fmt.Errorf("proto: RequestInitChain: wiretype end group for non-group")
  8102. }
  8103. if fieldNum <= 0 {
  8104. return fmt.Errorf("proto: RequestInitChain: illegal tag %d (wire type %d)", fieldNum, wire)
  8105. }
  8106. switch fieldNum {
  8107. case 1:
  8108. if wireType != 2 {
  8109. return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
  8110. }
  8111. var msglen int
  8112. for shift := uint(0); ; shift += 7 {
  8113. if shift >= 64 {
  8114. return ErrIntOverflowTypes
  8115. }
  8116. if iNdEx >= l {
  8117. return io.ErrUnexpectedEOF
  8118. }
  8119. b := dAtA[iNdEx]
  8120. iNdEx++
  8121. msglen |= int(b&0x7F) << shift
  8122. if b < 0x80 {
  8123. break
  8124. }
  8125. }
  8126. if msglen < 0 {
  8127. return ErrInvalidLengthTypes
  8128. }
  8129. postIndex := iNdEx + msglen
  8130. if postIndex < 0 {
  8131. return ErrInvalidLengthTypes
  8132. }
  8133. if postIndex > l {
  8134. return io.ErrUnexpectedEOF
  8135. }
  8136. if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.Time, dAtA[iNdEx:postIndex]); err != nil {
  8137. return err
  8138. }
  8139. iNdEx = postIndex
  8140. case 2:
  8141. if wireType != 2 {
  8142. return fmt.Errorf("proto: wrong wireType = %d for field ChainId", wireType)
  8143. }
  8144. var stringLen uint64
  8145. for shift := uint(0); ; shift += 7 {
  8146. if shift >= 64 {
  8147. return ErrIntOverflowTypes
  8148. }
  8149. if iNdEx >= l {
  8150. return io.ErrUnexpectedEOF
  8151. }
  8152. b := dAtA[iNdEx]
  8153. iNdEx++
  8154. stringLen |= uint64(b&0x7F) << shift
  8155. if b < 0x80 {
  8156. break
  8157. }
  8158. }
  8159. intStringLen := int(stringLen)
  8160. if intStringLen < 0 {
  8161. return ErrInvalidLengthTypes
  8162. }
  8163. postIndex := iNdEx + intStringLen
  8164. if postIndex < 0 {
  8165. return ErrInvalidLengthTypes
  8166. }
  8167. if postIndex > l {
  8168. return io.ErrUnexpectedEOF
  8169. }
  8170. m.ChainId = string(dAtA[iNdEx:postIndex])
  8171. iNdEx = postIndex
  8172. case 3:
  8173. if wireType != 2 {
  8174. return fmt.Errorf("proto: wrong wireType = %d for field ConsensusParams", wireType)
  8175. }
  8176. var msglen int
  8177. for shift := uint(0); ; shift += 7 {
  8178. if shift >= 64 {
  8179. return ErrIntOverflowTypes
  8180. }
  8181. if iNdEx >= l {
  8182. return io.ErrUnexpectedEOF
  8183. }
  8184. b := dAtA[iNdEx]
  8185. iNdEx++
  8186. msglen |= int(b&0x7F) << shift
  8187. if b < 0x80 {
  8188. break
  8189. }
  8190. }
  8191. if msglen < 0 {
  8192. return ErrInvalidLengthTypes
  8193. }
  8194. postIndex := iNdEx + msglen
  8195. if postIndex < 0 {
  8196. return ErrInvalidLengthTypes
  8197. }
  8198. if postIndex > l {
  8199. return io.ErrUnexpectedEOF
  8200. }
  8201. if m.ConsensusParams == nil {
  8202. m.ConsensusParams = &ConsensusParams{}
  8203. }
  8204. if err := m.ConsensusParams.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8205. return err
  8206. }
  8207. iNdEx = postIndex
  8208. case 4:
  8209. if wireType != 2 {
  8210. return fmt.Errorf("proto: wrong wireType = %d for field Validators", wireType)
  8211. }
  8212. var msglen int
  8213. for shift := uint(0); ; shift += 7 {
  8214. if shift >= 64 {
  8215. return ErrIntOverflowTypes
  8216. }
  8217. if iNdEx >= l {
  8218. return io.ErrUnexpectedEOF
  8219. }
  8220. b := dAtA[iNdEx]
  8221. iNdEx++
  8222. msglen |= int(b&0x7F) << shift
  8223. if b < 0x80 {
  8224. break
  8225. }
  8226. }
  8227. if msglen < 0 {
  8228. return ErrInvalidLengthTypes
  8229. }
  8230. postIndex := iNdEx + msglen
  8231. if postIndex < 0 {
  8232. return ErrInvalidLengthTypes
  8233. }
  8234. if postIndex > l {
  8235. return io.ErrUnexpectedEOF
  8236. }
  8237. m.Validators = append(m.Validators, ValidatorUpdate{})
  8238. if err := m.Validators[len(m.Validators)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8239. return err
  8240. }
  8241. iNdEx = postIndex
  8242. case 5:
  8243. if wireType != 2 {
  8244. return fmt.Errorf("proto: wrong wireType = %d for field AppStateBytes", wireType)
  8245. }
  8246. var byteLen int
  8247. for shift := uint(0); ; shift += 7 {
  8248. if shift >= 64 {
  8249. return ErrIntOverflowTypes
  8250. }
  8251. if iNdEx >= l {
  8252. return io.ErrUnexpectedEOF
  8253. }
  8254. b := dAtA[iNdEx]
  8255. iNdEx++
  8256. byteLen |= int(b&0x7F) << shift
  8257. if b < 0x80 {
  8258. break
  8259. }
  8260. }
  8261. if byteLen < 0 {
  8262. return ErrInvalidLengthTypes
  8263. }
  8264. postIndex := iNdEx + byteLen
  8265. if postIndex < 0 {
  8266. return ErrInvalidLengthTypes
  8267. }
  8268. if postIndex > l {
  8269. return io.ErrUnexpectedEOF
  8270. }
  8271. m.AppStateBytes = append(m.AppStateBytes[:0], dAtA[iNdEx:postIndex]...)
  8272. if m.AppStateBytes == nil {
  8273. m.AppStateBytes = []byte{}
  8274. }
  8275. iNdEx = postIndex
  8276. default:
  8277. iNdEx = preIndex
  8278. skippy, err := skipTypes(dAtA[iNdEx:])
  8279. if err != nil {
  8280. return err
  8281. }
  8282. if skippy < 0 {
  8283. return ErrInvalidLengthTypes
  8284. }
  8285. if (iNdEx + skippy) < 0 {
  8286. return ErrInvalidLengthTypes
  8287. }
  8288. if (iNdEx + skippy) > l {
  8289. return io.ErrUnexpectedEOF
  8290. }
  8291. iNdEx += skippy
  8292. }
  8293. }
  8294. if iNdEx > l {
  8295. return io.ErrUnexpectedEOF
  8296. }
  8297. return nil
  8298. }
  8299. func (m *RequestQuery) Unmarshal(dAtA []byte) error {
  8300. l := len(dAtA)
  8301. iNdEx := 0
  8302. for iNdEx < l {
  8303. preIndex := iNdEx
  8304. var wire uint64
  8305. for shift := uint(0); ; shift += 7 {
  8306. if shift >= 64 {
  8307. return ErrIntOverflowTypes
  8308. }
  8309. if iNdEx >= l {
  8310. return io.ErrUnexpectedEOF
  8311. }
  8312. b := dAtA[iNdEx]
  8313. iNdEx++
  8314. wire |= uint64(b&0x7F) << shift
  8315. if b < 0x80 {
  8316. break
  8317. }
  8318. }
  8319. fieldNum := int32(wire >> 3)
  8320. wireType := int(wire & 0x7)
  8321. if wireType == 4 {
  8322. return fmt.Errorf("proto: RequestQuery: wiretype end group for non-group")
  8323. }
  8324. if fieldNum <= 0 {
  8325. return fmt.Errorf("proto: RequestQuery: illegal tag %d (wire type %d)", fieldNum, wire)
  8326. }
  8327. switch fieldNum {
  8328. case 1:
  8329. if wireType != 2 {
  8330. return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
  8331. }
  8332. var byteLen int
  8333. for shift := uint(0); ; shift += 7 {
  8334. if shift >= 64 {
  8335. return ErrIntOverflowTypes
  8336. }
  8337. if iNdEx >= l {
  8338. return io.ErrUnexpectedEOF
  8339. }
  8340. b := dAtA[iNdEx]
  8341. iNdEx++
  8342. byteLen |= int(b&0x7F) << shift
  8343. if b < 0x80 {
  8344. break
  8345. }
  8346. }
  8347. if byteLen < 0 {
  8348. return ErrInvalidLengthTypes
  8349. }
  8350. postIndex := iNdEx + byteLen
  8351. if postIndex < 0 {
  8352. return ErrInvalidLengthTypes
  8353. }
  8354. if postIndex > l {
  8355. return io.ErrUnexpectedEOF
  8356. }
  8357. m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
  8358. if m.Data == nil {
  8359. m.Data = []byte{}
  8360. }
  8361. iNdEx = postIndex
  8362. case 2:
  8363. if wireType != 2 {
  8364. return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType)
  8365. }
  8366. var stringLen uint64
  8367. for shift := uint(0); ; shift += 7 {
  8368. if shift >= 64 {
  8369. return ErrIntOverflowTypes
  8370. }
  8371. if iNdEx >= l {
  8372. return io.ErrUnexpectedEOF
  8373. }
  8374. b := dAtA[iNdEx]
  8375. iNdEx++
  8376. stringLen |= uint64(b&0x7F) << shift
  8377. if b < 0x80 {
  8378. break
  8379. }
  8380. }
  8381. intStringLen := int(stringLen)
  8382. if intStringLen < 0 {
  8383. return ErrInvalidLengthTypes
  8384. }
  8385. postIndex := iNdEx + intStringLen
  8386. if postIndex < 0 {
  8387. return ErrInvalidLengthTypes
  8388. }
  8389. if postIndex > l {
  8390. return io.ErrUnexpectedEOF
  8391. }
  8392. m.Path = string(dAtA[iNdEx:postIndex])
  8393. iNdEx = postIndex
  8394. case 3:
  8395. if wireType != 0 {
  8396. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  8397. }
  8398. m.Height = 0
  8399. for shift := uint(0); ; shift += 7 {
  8400. if shift >= 64 {
  8401. return ErrIntOverflowTypes
  8402. }
  8403. if iNdEx >= l {
  8404. return io.ErrUnexpectedEOF
  8405. }
  8406. b := dAtA[iNdEx]
  8407. iNdEx++
  8408. m.Height |= int64(b&0x7F) << shift
  8409. if b < 0x80 {
  8410. break
  8411. }
  8412. }
  8413. case 4:
  8414. if wireType != 0 {
  8415. return fmt.Errorf("proto: wrong wireType = %d for field Prove", wireType)
  8416. }
  8417. var v int
  8418. for shift := uint(0); ; shift += 7 {
  8419. if shift >= 64 {
  8420. return ErrIntOverflowTypes
  8421. }
  8422. if iNdEx >= l {
  8423. return io.ErrUnexpectedEOF
  8424. }
  8425. b := dAtA[iNdEx]
  8426. iNdEx++
  8427. v |= int(b&0x7F) << shift
  8428. if b < 0x80 {
  8429. break
  8430. }
  8431. }
  8432. m.Prove = bool(v != 0)
  8433. default:
  8434. iNdEx = preIndex
  8435. skippy, err := skipTypes(dAtA[iNdEx:])
  8436. if err != nil {
  8437. return err
  8438. }
  8439. if skippy < 0 {
  8440. return ErrInvalidLengthTypes
  8441. }
  8442. if (iNdEx + skippy) < 0 {
  8443. return ErrInvalidLengthTypes
  8444. }
  8445. if (iNdEx + skippy) > l {
  8446. return io.ErrUnexpectedEOF
  8447. }
  8448. iNdEx += skippy
  8449. }
  8450. }
  8451. if iNdEx > l {
  8452. return io.ErrUnexpectedEOF
  8453. }
  8454. return nil
  8455. }
  8456. func (m *RequestBeginBlock) Unmarshal(dAtA []byte) error {
  8457. l := len(dAtA)
  8458. iNdEx := 0
  8459. for iNdEx < l {
  8460. preIndex := iNdEx
  8461. var wire uint64
  8462. for shift := uint(0); ; shift += 7 {
  8463. if shift >= 64 {
  8464. return ErrIntOverflowTypes
  8465. }
  8466. if iNdEx >= l {
  8467. return io.ErrUnexpectedEOF
  8468. }
  8469. b := dAtA[iNdEx]
  8470. iNdEx++
  8471. wire |= uint64(b&0x7F) << shift
  8472. if b < 0x80 {
  8473. break
  8474. }
  8475. }
  8476. fieldNum := int32(wire >> 3)
  8477. wireType := int(wire & 0x7)
  8478. if wireType == 4 {
  8479. return fmt.Errorf("proto: RequestBeginBlock: wiretype end group for non-group")
  8480. }
  8481. if fieldNum <= 0 {
  8482. return fmt.Errorf("proto: RequestBeginBlock: illegal tag %d (wire type %d)", fieldNum, wire)
  8483. }
  8484. switch fieldNum {
  8485. case 1:
  8486. if wireType != 2 {
  8487. return fmt.Errorf("proto: wrong wireType = %d for field Hash", wireType)
  8488. }
  8489. var byteLen int
  8490. for shift := uint(0); ; shift += 7 {
  8491. if shift >= 64 {
  8492. return ErrIntOverflowTypes
  8493. }
  8494. if iNdEx >= l {
  8495. return io.ErrUnexpectedEOF
  8496. }
  8497. b := dAtA[iNdEx]
  8498. iNdEx++
  8499. byteLen |= int(b&0x7F) << shift
  8500. if b < 0x80 {
  8501. break
  8502. }
  8503. }
  8504. if byteLen < 0 {
  8505. return ErrInvalidLengthTypes
  8506. }
  8507. postIndex := iNdEx + byteLen
  8508. if postIndex < 0 {
  8509. return ErrInvalidLengthTypes
  8510. }
  8511. if postIndex > l {
  8512. return io.ErrUnexpectedEOF
  8513. }
  8514. m.Hash = append(m.Hash[:0], dAtA[iNdEx:postIndex]...)
  8515. if m.Hash == nil {
  8516. m.Hash = []byte{}
  8517. }
  8518. iNdEx = postIndex
  8519. case 2:
  8520. if wireType != 2 {
  8521. return fmt.Errorf("proto: wrong wireType = %d for field Header", wireType)
  8522. }
  8523. var msglen int
  8524. for shift := uint(0); ; shift += 7 {
  8525. if shift >= 64 {
  8526. return ErrIntOverflowTypes
  8527. }
  8528. if iNdEx >= l {
  8529. return io.ErrUnexpectedEOF
  8530. }
  8531. b := dAtA[iNdEx]
  8532. iNdEx++
  8533. msglen |= int(b&0x7F) << shift
  8534. if b < 0x80 {
  8535. break
  8536. }
  8537. }
  8538. if msglen < 0 {
  8539. return ErrInvalidLengthTypes
  8540. }
  8541. postIndex := iNdEx + msglen
  8542. if postIndex < 0 {
  8543. return ErrInvalidLengthTypes
  8544. }
  8545. if postIndex > l {
  8546. return io.ErrUnexpectedEOF
  8547. }
  8548. if err := m.Header.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8549. return err
  8550. }
  8551. iNdEx = postIndex
  8552. case 3:
  8553. if wireType != 2 {
  8554. return fmt.Errorf("proto: wrong wireType = %d for field LastCommitInfo", wireType)
  8555. }
  8556. var msglen int
  8557. for shift := uint(0); ; shift += 7 {
  8558. if shift >= 64 {
  8559. return ErrIntOverflowTypes
  8560. }
  8561. if iNdEx >= l {
  8562. return io.ErrUnexpectedEOF
  8563. }
  8564. b := dAtA[iNdEx]
  8565. iNdEx++
  8566. msglen |= int(b&0x7F) << shift
  8567. if b < 0x80 {
  8568. break
  8569. }
  8570. }
  8571. if msglen < 0 {
  8572. return ErrInvalidLengthTypes
  8573. }
  8574. postIndex := iNdEx + msglen
  8575. if postIndex < 0 {
  8576. return ErrInvalidLengthTypes
  8577. }
  8578. if postIndex > l {
  8579. return io.ErrUnexpectedEOF
  8580. }
  8581. if err := m.LastCommitInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8582. return err
  8583. }
  8584. iNdEx = postIndex
  8585. case 4:
  8586. if wireType != 2 {
  8587. return fmt.Errorf("proto: wrong wireType = %d for field ByzantineValidators", wireType)
  8588. }
  8589. var msglen int
  8590. for shift := uint(0); ; shift += 7 {
  8591. if shift >= 64 {
  8592. return ErrIntOverflowTypes
  8593. }
  8594. if iNdEx >= l {
  8595. return io.ErrUnexpectedEOF
  8596. }
  8597. b := dAtA[iNdEx]
  8598. iNdEx++
  8599. msglen |= int(b&0x7F) << shift
  8600. if b < 0x80 {
  8601. break
  8602. }
  8603. }
  8604. if msglen < 0 {
  8605. return ErrInvalidLengthTypes
  8606. }
  8607. postIndex := iNdEx + msglen
  8608. if postIndex < 0 {
  8609. return ErrInvalidLengthTypes
  8610. }
  8611. if postIndex > l {
  8612. return io.ErrUnexpectedEOF
  8613. }
  8614. m.ByzantineValidators = append(m.ByzantineValidators, Evidence{})
  8615. if err := m.ByzantineValidators[len(m.ByzantineValidators)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8616. return err
  8617. }
  8618. iNdEx = postIndex
  8619. default:
  8620. iNdEx = preIndex
  8621. skippy, err := skipTypes(dAtA[iNdEx:])
  8622. if err != nil {
  8623. return err
  8624. }
  8625. if skippy < 0 {
  8626. return ErrInvalidLengthTypes
  8627. }
  8628. if (iNdEx + skippy) < 0 {
  8629. return ErrInvalidLengthTypes
  8630. }
  8631. if (iNdEx + skippy) > l {
  8632. return io.ErrUnexpectedEOF
  8633. }
  8634. iNdEx += skippy
  8635. }
  8636. }
  8637. if iNdEx > l {
  8638. return io.ErrUnexpectedEOF
  8639. }
  8640. return nil
  8641. }
  8642. func (m *RequestCheckTx) Unmarshal(dAtA []byte) error {
  8643. l := len(dAtA)
  8644. iNdEx := 0
  8645. for iNdEx < l {
  8646. preIndex := iNdEx
  8647. var wire uint64
  8648. for shift := uint(0); ; shift += 7 {
  8649. if shift >= 64 {
  8650. return ErrIntOverflowTypes
  8651. }
  8652. if iNdEx >= l {
  8653. return io.ErrUnexpectedEOF
  8654. }
  8655. b := dAtA[iNdEx]
  8656. iNdEx++
  8657. wire |= uint64(b&0x7F) << shift
  8658. if b < 0x80 {
  8659. break
  8660. }
  8661. }
  8662. fieldNum := int32(wire >> 3)
  8663. wireType := int(wire & 0x7)
  8664. if wireType == 4 {
  8665. return fmt.Errorf("proto: RequestCheckTx: wiretype end group for non-group")
  8666. }
  8667. if fieldNum <= 0 {
  8668. return fmt.Errorf("proto: RequestCheckTx: illegal tag %d (wire type %d)", fieldNum, wire)
  8669. }
  8670. switch fieldNum {
  8671. case 1:
  8672. if wireType != 2 {
  8673. return fmt.Errorf("proto: wrong wireType = %d for field Tx", wireType)
  8674. }
  8675. var byteLen int
  8676. for shift := uint(0); ; shift += 7 {
  8677. if shift >= 64 {
  8678. return ErrIntOverflowTypes
  8679. }
  8680. if iNdEx >= l {
  8681. return io.ErrUnexpectedEOF
  8682. }
  8683. b := dAtA[iNdEx]
  8684. iNdEx++
  8685. byteLen |= int(b&0x7F) << shift
  8686. if b < 0x80 {
  8687. break
  8688. }
  8689. }
  8690. if byteLen < 0 {
  8691. return ErrInvalidLengthTypes
  8692. }
  8693. postIndex := iNdEx + byteLen
  8694. if postIndex < 0 {
  8695. return ErrInvalidLengthTypes
  8696. }
  8697. if postIndex > l {
  8698. return io.ErrUnexpectedEOF
  8699. }
  8700. m.Tx = append(m.Tx[:0], dAtA[iNdEx:postIndex]...)
  8701. if m.Tx == nil {
  8702. m.Tx = []byte{}
  8703. }
  8704. iNdEx = postIndex
  8705. case 2:
  8706. if wireType != 0 {
  8707. return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  8708. }
  8709. m.Type = 0
  8710. for shift := uint(0); ; shift += 7 {
  8711. if shift >= 64 {
  8712. return ErrIntOverflowTypes
  8713. }
  8714. if iNdEx >= l {
  8715. return io.ErrUnexpectedEOF
  8716. }
  8717. b := dAtA[iNdEx]
  8718. iNdEx++
  8719. m.Type |= CheckTxType(b&0x7F) << shift
  8720. if b < 0x80 {
  8721. break
  8722. }
  8723. }
  8724. default:
  8725. iNdEx = preIndex
  8726. skippy, err := skipTypes(dAtA[iNdEx:])
  8727. if err != nil {
  8728. return err
  8729. }
  8730. if skippy < 0 {
  8731. return ErrInvalidLengthTypes
  8732. }
  8733. if (iNdEx + skippy) < 0 {
  8734. return ErrInvalidLengthTypes
  8735. }
  8736. if (iNdEx + skippy) > l {
  8737. return io.ErrUnexpectedEOF
  8738. }
  8739. iNdEx += skippy
  8740. }
  8741. }
  8742. if iNdEx > l {
  8743. return io.ErrUnexpectedEOF
  8744. }
  8745. return nil
  8746. }
  8747. func (m *RequestDeliverTx) Unmarshal(dAtA []byte) error {
  8748. l := len(dAtA)
  8749. iNdEx := 0
  8750. for iNdEx < l {
  8751. preIndex := iNdEx
  8752. var wire uint64
  8753. for shift := uint(0); ; shift += 7 {
  8754. if shift >= 64 {
  8755. return ErrIntOverflowTypes
  8756. }
  8757. if iNdEx >= l {
  8758. return io.ErrUnexpectedEOF
  8759. }
  8760. b := dAtA[iNdEx]
  8761. iNdEx++
  8762. wire |= uint64(b&0x7F) << shift
  8763. if b < 0x80 {
  8764. break
  8765. }
  8766. }
  8767. fieldNum := int32(wire >> 3)
  8768. wireType := int(wire & 0x7)
  8769. if wireType == 4 {
  8770. return fmt.Errorf("proto: RequestDeliverTx: wiretype end group for non-group")
  8771. }
  8772. if fieldNum <= 0 {
  8773. return fmt.Errorf("proto: RequestDeliverTx: illegal tag %d (wire type %d)", fieldNum, wire)
  8774. }
  8775. switch fieldNum {
  8776. case 1:
  8777. if wireType != 2 {
  8778. return fmt.Errorf("proto: wrong wireType = %d for field Tx", wireType)
  8779. }
  8780. var byteLen int
  8781. for shift := uint(0); ; shift += 7 {
  8782. if shift >= 64 {
  8783. return ErrIntOverflowTypes
  8784. }
  8785. if iNdEx >= l {
  8786. return io.ErrUnexpectedEOF
  8787. }
  8788. b := dAtA[iNdEx]
  8789. iNdEx++
  8790. byteLen |= int(b&0x7F) << shift
  8791. if b < 0x80 {
  8792. break
  8793. }
  8794. }
  8795. if byteLen < 0 {
  8796. return ErrInvalidLengthTypes
  8797. }
  8798. postIndex := iNdEx + byteLen
  8799. if postIndex < 0 {
  8800. return ErrInvalidLengthTypes
  8801. }
  8802. if postIndex > l {
  8803. return io.ErrUnexpectedEOF
  8804. }
  8805. m.Tx = append(m.Tx[:0], dAtA[iNdEx:postIndex]...)
  8806. if m.Tx == nil {
  8807. m.Tx = []byte{}
  8808. }
  8809. iNdEx = postIndex
  8810. default:
  8811. iNdEx = preIndex
  8812. skippy, err := skipTypes(dAtA[iNdEx:])
  8813. if err != nil {
  8814. return err
  8815. }
  8816. if skippy < 0 {
  8817. return ErrInvalidLengthTypes
  8818. }
  8819. if (iNdEx + skippy) < 0 {
  8820. return ErrInvalidLengthTypes
  8821. }
  8822. if (iNdEx + skippy) > l {
  8823. return io.ErrUnexpectedEOF
  8824. }
  8825. iNdEx += skippy
  8826. }
  8827. }
  8828. if iNdEx > l {
  8829. return io.ErrUnexpectedEOF
  8830. }
  8831. return nil
  8832. }
  8833. func (m *RequestEndBlock) Unmarshal(dAtA []byte) error {
  8834. l := len(dAtA)
  8835. iNdEx := 0
  8836. for iNdEx < l {
  8837. preIndex := iNdEx
  8838. var wire uint64
  8839. for shift := uint(0); ; shift += 7 {
  8840. if shift >= 64 {
  8841. return ErrIntOverflowTypes
  8842. }
  8843. if iNdEx >= l {
  8844. return io.ErrUnexpectedEOF
  8845. }
  8846. b := dAtA[iNdEx]
  8847. iNdEx++
  8848. wire |= uint64(b&0x7F) << shift
  8849. if b < 0x80 {
  8850. break
  8851. }
  8852. }
  8853. fieldNum := int32(wire >> 3)
  8854. wireType := int(wire & 0x7)
  8855. if wireType == 4 {
  8856. return fmt.Errorf("proto: RequestEndBlock: wiretype end group for non-group")
  8857. }
  8858. if fieldNum <= 0 {
  8859. return fmt.Errorf("proto: RequestEndBlock: illegal tag %d (wire type %d)", fieldNum, wire)
  8860. }
  8861. switch fieldNum {
  8862. case 1:
  8863. if wireType != 0 {
  8864. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  8865. }
  8866. m.Height = 0
  8867. for shift := uint(0); ; shift += 7 {
  8868. if shift >= 64 {
  8869. return ErrIntOverflowTypes
  8870. }
  8871. if iNdEx >= l {
  8872. return io.ErrUnexpectedEOF
  8873. }
  8874. b := dAtA[iNdEx]
  8875. iNdEx++
  8876. m.Height |= int64(b&0x7F) << shift
  8877. if b < 0x80 {
  8878. break
  8879. }
  8880. }
  8881. default:
  8882. iNdEx = preIndex
  8883. skippy, err := skipTypes(dAtA[iNdEx:])
  8884. if err != nil {
  8885. return err
  8886. }
  8887. if skippy < 0 {
  8888. return ErrInvalidLengthTypes
  8889. }
  8890. if (iNdEx + skippy) < 0 {
  8891. return ErrInvalidLengthTypes
  8892. }
  8893. if (iNdEx + skippy) > l {
  8894. return io.ErrUnexpectedEOF
  8895. }
  8896. iNdEx += skippy
  8897. }
  8898. }
  8899. if iNdEx > l {
  8900. return io.ErrUnexpectedEOF
  8901. }
  8902. return nil
  8903. }
  8904. func (m *RequestCommit) Unmarshal(dAtA []byte) error {
  8905. l := len(dAtA)
  8906. iNdEx := 0
  8907. for iNdEx < l {
  8908. preIndex := iNdEx
  8909. var wire uint64
  8910. for shift := uint(0); ; shift += 7 {
  8911. if shift >= 64 {
  8912. return ErrIntOverflowTypes
  8913. }
  8914. if iNdEx >= l {
  8915. return io.ErrUnexpectedEOF
  8916. }
  8917. b := dAtA[iNdEx]
  8918. iNdEx++
  8919. wire |= uint64(b&0x7F) << shift
  8920. if b < 0x80 {
  8921. break
  8922. }
  8923. }
  8924. fieldNum := int32(wire >> 3)
  8925. wireType := int(wire & 0x7)
  8926. if wireType == 4 {
  8927. return fmt.Errorf("proto: RequestCommit: wiretype end group for non-group")
  8928. }
  8929. if fieldNum <= 0 {
  8930. return fmt.Errorf("proto: RequestCommit: illegal tag %d (wire type %d)", fieldNum, wire)
  8931. }
  8932. switch fieldNum {
  8933. default:
  8934. iNdEx = preIndex
  8935. skippy, err := skipTypes(dAtA[iNdEx:])
  8936. if err != nil {
  8937. return err
  8938. }
  8939. if skippy < 0 {
  8940. return ErrInvalidLengthTypes
  8941. }
  8942. if (iNdEx + skippy) < 0 {
  8943. return ErrInvalidLengthTypes
  8944. }
  8945. if (iNdEx + skippy) > l {
  8946. return io.ErrUnexpectedEOF
  8947. }
  8948. iNdEx += skippy
  8949. }
  8950. }
  8951. if iNdEx > l {
  8952. return io.ErrUnexpectedEOF
  8953. }
  8954. return nil
  8955. }
  8956. func (m *RequestListSnapshots) Unmarshal(dAtA []byte) error {
  8957. l := len(dAtA)
  8958. iNdEx := 0
  8959. for iNdEx < l {
  8960. preIndex := iNdEx
  8961. var wire uint64
  8962. for shift := uint(0); ; shift += 7 {
  8963. if shift >= 64 {
  8964. return ErrIntOverflowTypes
  8965. }
  8966. if iNdEx >= l {
  8967. return io.ErrUnexpectedEOF
  8968. }
  8969. b := dAtA[iNdEx]
  8970. iNdEx++
  8971. wire |= uint64(b&0x7F) << shift
  8972. if b < 0x80 {
  8973. break
  8974. }
  8975. }
  8976. fieldNum := int32(wire >> 3)
  8977. wireType := int(wire & 0x7)
  8978. if wireType == 4 {
  8979. return fmt.Errorf("proto: RequestListSnapshots: wiretype end group for non-group")
  8980. }
  8981. if fieldNum <= 0 {
  8982. return fmt.Errorf("proto: RequestListSnapshots: illegal tag %d (wire type %d)", fieldNum, wire)
  8983. }
  8984. switch fieldNum {
  8985. default:
  8986. iNdEx = preIndex
  8987. skippy, err := skipTypes(dAtA[iNdEx:])
  8988. if err != nil {
  8989. return err
  8990. }
  8991. if skippy < 0 {
  8992. return ErrInvalidLengthTypes
  8993. }
  8994. if (iNdEx + skippy) < 0 {
  8995. return ErrInvalidLengthTypes
  8996. }
  8997. if (iNdEx + skippy) > l {
  8998. return io.ErrUnexpectedEOF
  8999. }
  9000. iNdEx += skippy
  9001. }
  9002. }
  9003. if iNdEx > l {
  9004. return io.ErrUnexpectedEOF
  9005. }
  9006. return nil
  9007. }
  9008. func (m *RequestOfferSnapshot) Unmarshal(dAtA []byte) error {
  9009. l := len(dAtA)
  9010. iNdEx := 0
  9011. for iNdEx < l {
  9012. preIndex := iNdEx
  9013. var wire uint64
  9014. for shift := uint(0); ; shift += 7 {
  9015. if shift >= 64 {
  9016. return ErrIntOverflowTypes
  9017. }
  9018. if iNdEx >= l {
  9019. return io.ErrUnexpectedEOF
  9020. }
  9021. b := dAtA[iNdEx]
  9022. iNdEx++
  9023. wire |= uint64(b&0x7F) << shift
  9024. if b < 0x80 {
  9025. break
  9026. }
  9027. }
  9028. fieldNum := int32(wire >> 3)
  9029. wireType := int(wire & 0x7)
  9030. if wireType == 4 {
  9031. return fmt.Errorf("proto: RequestOfferSnapshot: wiretype end group for non-group")
  9032. }
  9033. if fieldNum <= 0 {
  9034. return fmt.Errorf("proto: RequestOfferSnapshot: illegal tag %d (wire type %d)", fieldNum, wire)
  9035. }
  9036. switch fieldNum {
  9037. case 1:
  9038. if wireType != 2 {
  9039. return fmt.Errorf("proto: wrong wireType = %d for field Snapshot", wireType)
  9040. }
  9041. var msglen int
  9042. for shift := uint(0); ; shift += 7 {
  9043. if shift >= 64 {
  9044. return ErrIntOverflowTypes
  9045. }
  9046. if iNdEx >= l {
  9047. return io.ErrUnexpectedEOF
  9048. }
  9049. b := dAtA[iNdEx]
  9050. iNdEx++
  9051. msglen |= int(b&0x7F) << shift
  9052. if b < 0x80 {
  9053. break
  9054. }
  9055. }
  9056. if msglen < 0 {
  9057. return ErrInvalidLengthTypes
  9058. }
  9059. postIndex := iNdEx + msglen
  9060. if postIndex < 0 {
  9061. return ErrInvalidLengthTypes
  9062. }
  9063. if postIndex > l {
  9064. return io.ErrUnexpectedEOF
  9065. }
  9066. if m.Snapshot == nil {
  9067. m.Snapshot = &Snapshot{}
  9068. }
  9069. if err := m.Snapshot.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9070. return err
  9071. }
  9072. iNdEx = postIndex
  9073. case 2:
  9074. if wireType != 2 {
  9075. return fmt.Errorf("proto: wrong wireType = %d for field AppHash", wireType)
  9076. }
  9077. var byteLen int
  9078. for shift := uint(0); ; shift += 7 {
  9079. if shift >= 64 {
  9080. return ErrIntOverflowTypes
  9081. }
  9082. if iNdEx >= l {
  9083. return io.ErrUnexpectedEOF
  9084. }
  9085. b := dAtA[iNdEx]
  9086. iNdEx++
  9087. byteLen |= int(b&0x7F) << shift
  9088. if b < 0x80 {
  9089. break
  9090. }
  9091. }
  9092. if byteLen < 0 {
  9093. return ErrInvalidLengthTypes
  9094. }
  9095. postIndex := iNdEx + byteLen
  9096. if postIndex < 0 {
  9097. return ErrInvalidLengthTypes
  9098. }
  9099. if postIndex > l {
  9100. return io.ErrUnexpectedEOF
  9101. }
  9102. m.AppHash = append(m.AppHash[:0], dAtA[iNdEx:postIndex]...)
  9103. if m.AppHash == nil {
  9104. m.AppHash = []byte{}
  9105. }
  9106. iNdEx = postIndex
  9107. default:
  9108. iNdEx = preIndex
  9109. skippy, err := skipTypes(dAtA[iNdEx:])
  9110. if err != nil {
  9111. return err
  9112. }
  9113. if skippy < 0 {
  9114. return ErrInvalidLengthTypes
  9115. }
  9116. if (iNdEx + skippy) < 0 {
  9117. return ErrInvalidLengthTypes
  9118. }
  9119. if (iNdEx + skippy) > l {
  9120. return io.ErrUnexpectedEOF
  9121. }
  9122. iNdEx += skippy
  9123. }
  9124. }
  9125. if iNdEx > l {
  9126. return io.ErrUnexpectedEOF
  9127. }
  9128. return nil
  9129. }
  9130. func (m *RequestLoadSnapshotChunk) Unmarshal(dAtA []byte) error {
  9131. l := len(dAtA)
  9132. iNdEx := 0
  9133. for iNdEx < l {
  9134. preIndex := iNdEx
  9135. var wire uint64
  9136. for shift := uint(0); ; shift += 7 {
  9137. if shift >= 64 {
  9138. return ErrIntOverflowTypes
  9139. }
  9140. if iNdEx >= l {
  9141. return io.ErrUnexpectedEOF
  9142. }
  9143. b := dAtA[iNdEx]
  9144. iNdEx++
  9145. wire |= uint64(b&0x7F) << shift
  9146. if b < 0x80 {
  9147. break
  9148. }
  9149. }
  9150. fieldNum := int32(wire >> 3)
  9151. wireType := int(wire & 0x7)
  9152. if wireType == 4 {
  9153. return fmt.Errorf("proto: RequestLoadSnapshotChunk: wiretype end group for non-group")
  9154. }
  9155. if fieldNum <= 0 {
  9156. return fmt.Errorf("proto: RequestLoadSnapshotChunk: illegal tag %d (wire type %d)", fieldNum, wire)
  9157. }
  9158. switch fieldNum {
  9159. case 1:
  9160. if wireType != 0 {
  9161. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  9162. }
  9163. m.Height = 0
  9164. for shift := uint(0); ; shift += 7 {
  9165. if shift >= 64 {
  9166. return ErrIntOverflowTypes
  9167. }
  9168. if iNdEx >= l {
  9169. return io.ErrUnexpectedEOF
  9170. }
  9171. b := dAtA[iNdEx]
  9172. iNdEx++
  9173. m.Height |= uint64(b&0x7F) << shift
  9174. if b < 0x80 {
  9175. break
  9176. }
  9177. }
  9178. case 2:
  9179. if wireType != 0 {
  9180. return fmt.Errorf("proto: wrong wireType = %d for field Format", wireType)
  9181. }
  9182. m.Format = 0
  9183. for shift := uint(0); ; shift += 7 {
  9184. if shift >= 64 {
  9185. return ErrIntOverflowTypes
  9186. }
  9187. if iNdEx >= l {
  9188. return io.ErrUnexpectedEOF
  9189. }
  9190. b := dAtA[iNdEx]
  9191. iNdEx++
  9192. m.Format |= uint32(b&0x7F) << shift
  9193. if b < 0x80 {
  9194. break
  9195. }
  9196. }
  9197. case 3:
  9198. if wireType != 0 {
  9199. return fmt.Errorf("proto: wrong wireType = %d for field Chunk", wireType)
  9200. }
  9201. m.Chunk = 0
  9202. for shift := uint(0); ; shift += 7 {
  9203. if shift >= 64 {
  9204. return ErrIntOverflowTypes
  9205. }
  9206. if iNdEx >= l {
  9207. return io.ErrUnexpectedEOF
  9208. }
  9209. b := dAtA[iNdEx]
  9210. iNdEx++
  9211. m.Chunk |= uint32(b&0x7F) << shift
  9212. if b < 0x80 {
  9213. break
  9214. }
  9215. }
  9216. default:
  9217. iNdEx = preIndex
  9218. skippy, err := skipTypes(dAtA[iNdEx:])
  9219. if err != nil {
  9220. return err
  9221. }
  9222. if skippy < 0 {
  9223. return ErrInvalidLengthTypes
  9224. }
  9225. if (iNdEx + skippy) < 0 {
  9226. return ErrInvalidLengthTypes
  9227. }
  9228. if (iNdEx + skippy) > l {
  9229. return io.ErrUnexpectedEOF
  9230. }
  9231. iNdEx += skippy
  9232. }
  9233. }
  9234. if iNdEx > l {
  9235. return io.ErrUnexpectedEOF
  9236. }
  9237. return nil
  9238. }
  9239. func (m *RequestApplySnapshotChunk) Unmarshal(dAtA []byte) error {
  9240. l := len(dAtA)
  9241. iNdEx := 0
  9242. for iNdEx < l {
  9243. preIndex := iNdEx
  9244. var wire uint64
  9245. for shift := uint(0); ; shift += 7 {
  9246. if shift >= 64 {
  9247. return ErrIntOverflowTypes
  9248. }
  9249. if iNdEx >= l {
  9250. return io.ErrUnexpectedEOF
  9251. }
  9252. b := dAtA[iNdEx]
  9253. iNdEx++
  9254. wire |= uint64(b&0x7F) << shift
  9255. if b < 0x80 {
  9256. break
  9257. }
  9258. }
  9259. fieldNum := int32(wire >> 3)
  9260. wireType := int(wire & 0x7)
  9261. if wireType == 4 {
  9262. return fmt.Errorf("proto: RequestApplySnapshotChunk: wiretype end group for non-group")
  9263. }
  9264. if fieldNum <= 0 {
  9265. return fmt.Errorf("proto: RequestApplySnapshotChunk: illegal tag %d (wire type %d)", fieldNum, wire)
  9266. }
  9267. switch fieldNum {
  9268. case 1:
  9269. if wireType != 0 {
  9270. return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  9271. }
  9272. m.Index = 0
  9273. for shift := uint(0); ; shift += 7 {
  9274. if shift >= 64 {
  9275. return ErrIntOverflowTypes
  9276. }
  9277. if iNdEx >= l {
  9278. return io.ErrUnexpectedEOF
  9279. }
  9280. b := dAtA[iNdEx]
  9281. iNdEx++
  9282. m.Index |= uint32(b&0x7F) << shift
  9283. if b < 0x80 {
  9284. break
  9285. }
  9286. }
  9287. case 2:
  9288. if wireType != 2 {
  9289. return fmt.Errorf("proto: wrong wireType = %d for field Chunk", wireType)
  9290. }
  9291. var byteLen int
  9292. for shift := uint(0); ; shift += 7 {
  9293. if shift >= 64 {
  9294. return ErrIntOverflowTypes
  9295. }
  9296. if iNdEx >= l {
  9297. return io.ErrUnexpectedEOF
  9298. }
  9299. b := dAtA[iNdEx]
  9300. iNdEx++
  9301. byteLen |= int(b&0x7F) << shift
  9302. if b < 0x80 {
  9303. break
  9304. }
  9305. }
  9306. if byteLen < 0 {
  9307. return ErrInvalidLengthTypes
  9308. }
  9309. postIndex := iNdEx + byteLen
  9310. if postIndex < 0 {
  9311. return ErrInvalidLengthTypes
  9312. }
  9313. if postIndex > l {
  9314. return io.ErrUnexpectedEOF
  9315. }
  9316. m.Chunk = append(m.Chunk[:0], dAtA[iNdEx:postIndex]...)
  9317. if m.Chunk == nil {
  9318. m.Chunk = []byte{}
  9319. }
  9320. iNdEx = postIndex
  9321. case 3:
  9322. if wireType != 2 {
  9323. return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType)
  9324. }
  9325. var stringLen uint64
  9326. for shift := uint(0); ; shift += 7 {
  9327. if shift >= 64 {
  9328. return ErrIntOverflowTypes
  9329. }
  9330. if iNdEx >= l {
  9331. return io.ErrUnexpectedEOF
  9332. }
  9333. b := dAtA[iNdEx]
  9334. iNdEx++
  9335. stringLen |= uint64(b&0x7F) << shift
  9336. if b < 0x80 {
  9337. break
  9338. }
  9339. }
  9340. intStringLen := int(stringLen)
  9341. if intStringLen < 0 {
  9342. return ErrInvalidLengthTypes
  9343. }
  9344. postIndex := iNdEx + intStringLen
  9345. if postIndex < 0 {
  9346. return ErrInvalidLengthTypes
  9347. }
  9348. if postIndex > l {
  9349. return io.ErrUnexpectedEOF
  9350. }
  9351. m.Sender = string(dAtA[iNdEx:postIndex])
  9352. iNdEx = postIndex
  9353. default:
  9354. iNdEx = preIndex
  9355. skippy, err := skipTypes(dAtA[iNdEx:])
  9356. if err != nil {
  9357. return err
  9358. }
  9359. if skippy < 0 {
  9360. return ErrInvalidLengthTypes
  9361. }
  9362. if (iNdEx + skippy) < 0 {
  9363. return ErrInvalidLengthTypes
  9364. }
  9365. if (iNdEx + skippy) > l {
  9366. return io.ErrUnexpectedEOF
  9367. }
  9368. iNdEx += skippy
  9369. }
  9370. }
  9371. if iNdEx > l {
  9372. return io.ErrUnexpectedEOF
  9373. }
  9374. return nil
  9375. }
  9376. func (m *Response) Unmarshal(dAtA []byte) error {
  9377. l := len(dAtA)
  9378. iNdEx := 0
  9379. for iNdEx < l {
  9380. preIndex := iNdEx
  9381. var wire uint64
  9382. for shift := uint(0); ; shift += 7 {
  9383. if shift >= 64 {
  9384. return ErrIntOverflowTypes
  9385. }
  9386. if iNdEx >= l {
  9387. return io.ErrUnexpectedEOF
  9388. }
  9389. b := dAtA[iNdEx]
  9390. iNdEx++
  9391. wire |= uint64(b&0x7F) << shift
  9392. if b < 0x80 {
  9393. break
  9394. }
  9395. }
  9396. fieldNum := int32(wire >> 3)
  9397. wireType := int(wire & 0x7)
  9398. if wireType == 4 {
  9399. return fmt.Errorf("proto: Response: wiretype end group for non-group")
  9400. }
  9401. if fieldNum <= 0 {
  9402. return fmt.Errorf("proto: Response: illegal tag %d (wire type %d)", fieldNum, wire)
  9403. }
  9404. switch fieldNum {
  9405. case 1:
  9406. if wireType != 2 {
  9407. return fmt.Errorf("proto: wrong wireType = %d for field Exception", wireType)
  9408. }
  9409. var msglen int
  9410. for shift := uint(0); ; shift += 7 {
  9411. if shift >= 64 {
  9412. return ErrIntOverflowTypes
  9413. }
  9414. if iNdEx >= l {
  9415. return io.ErrUnexpectedEOF
  9416. }
  9417. b := dAtA[iNdEx]
  9418. iNdEx++
  9419. msglen |= int(b&0x7F) << shift
  9420. if b < 0x80 {
  9421. break
  9422. }
  9423. }
  9424. if msglen < 0 {
  9425. return ErrInvalidLengthTypes
  9426. }
  9427. postIndex := iNdEx + msglen
  9428. if postIndex < 0 {
  9429. return ErrInvalidLengthTypes
  9430. }
  9431. if postIndex > l {
  9432. return io.ErrUnexpectedEOF
  9433. }
  9434. v := &ResponseException{}
  9435. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9436. return err
  9437. }
  9438. m.Value = &Response_Exception{v}
  9439. iNdEx = postIndex
  9440. case 2:
  9441. if wireType != 2 {
  9442. return fmt.Errorf("proto: wrong wireType = %d for field Echo", wireType)
  9443. }
  9444. var msglen int
  9445. for shift := uint(0); ; shift += 7 {
  9446. if shift >= 64 {
  9447. return ErrIntOverflowTypes
  9448. }
  9449. if iNdEx >= l {
  9450. return io.ErrUnexpectedEOF
  9451. }
  9452. b := dAtA[iNdEx]
  9453. iNdEx++
  9454. msglen |= int(b&0x7F) << shift
  9455. if b < 0x80 {
  9456. break
  9457. }
  9458. }
  9459. if msglen < 0 {
  9460. return ErrInvalidLengthTypes
  9461. }
  9462. postIndex := iNdEx + msglen
  9463. if postIndex < 0 {
  9464. return ErrInvalidLengthTypes
  9465. }
  9466. if postIndex > l {
  9467. return io.ErrUnexpectedEOF
  9468. }
  9469. v := &ResponseEcho{}
  9470. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9471. return err
  9472. }
  9473. m.Value = &Response_Echo{v}
  9474. iNdEx = postIndex
  9475. case 3:
  9476. if wireType != 2 {
  9477. return fmt.Errorf("proto: wrong wireType = %d for field Flush", wireType)
  9478. }
  9479. var msglen int
  9480. for shift := uint(0); ; shift += 7 {
  9481. if shift >= 64 {
  9482. return ErrIntOverflowTypes
  9483. }
  9484. if iNdEx >= l {
  9485. return io.ErrUnexpectedEOF
  9486. }
  9487. b := dAtA[iNdEx]
  9488. iNdEx++
  9489. msglen |= int(b&0x7F) << shift
  9490. if b < 0x80 {
  9491. break
  9492. }
  9493. }
  9494. if msglen < 0 {
  9495. return ErrInvalidLengthTypes
  9496. }
  9497. postIndex := iNdEx + msglen
  9498. if postIndex < 0 {
  9499. return ErrInvalidLengthTypes
  9500. }
  9501. if postIndex > l {
  9502. return io.ErrUnexpectedEOF
  9503. }
  9504. v := &ResponseFlush{}
  9505. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9506. return err
  9507. }
  9508. m.Value = &Response_Flush{v}
  9509. iNdEx = postIndex
  9510. case 4:
  9511. if wireType != 2 {
  9512. return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
  9513. }
  9514. var msglen int
  9515. for shift := uint(0); ; shift += 7 {
  9516. if shift >= 64 {
  9517. return ErrIntOverflowTypes
  9518. }
  9519. if iNdEx >= l {
  9520. return io.ErrUnexpectedEOF
  9521. }
  9522. b := dAtA[iNdEx]
  9523. iNdEx++
  9524. msglen |= int(b&0x7F) << shift
  9525. if b < 0x80 {
  9526. break
  9527. }
  9528. }
  9529. if msglen < 0 {
  9530. return ErrInvalidLengthTypes
  9531. }
  9532. postIndex := iNdEx + msglen
  9533. if postIndex < 0 {
  9534. return ErrInvalidLengthTypes
  9535. }
  9536. if postIndex > l {
  9537. return io.ErrUnexpectedEOF
  9538. }
  9539. v := &ResponseInfo{}
  9540. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9541. return err
  9542. }
  9543. m.Value = &Response_Info{v}
  9544. iNdEx = postIndex
  9545. case 5:
  9546. if wireType != 2 {
  9547. return fmt.Errorf("proto: wrong wireType = %d for field SetOption", wireType)
  9548. }
  9549. var msglen int
  9550. for shift := uint(0); ; shift += 7 {
  9551. if shift >= 64 {
  9552. return ErrIntOverflowTypes
  9553. }
  9554. if iNdEx >= l {
  9555. return io.ErrUnexpectedEOF
  9556. }
  9557. b := dAtA[iNdEx]
  9558. iNdEx++
  9559. msglen |= int(b&0x7F) << shift
  9560. if b < 0x80 {
  9561. break
  9562. }
  9563. }
  9564. if msglen < 0 {
  9565. return ErrInvalidLengthTypes
  9566. }
  9567. postIndex := iNdEx + msglen
  9568. if postIndex < 0 {
  9569. return ErrInvalidLengthTypes
  9570. }
  9571. if postIndex > l {
  9572. return io.ErrUnexpectedEOF
  9573. }
  9574. v := &ResponseSetOption{}
  9575. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9576. return err
  9577. }
  9578. m.Value = &Response_SetOption{v}
  9579. iNdEx = postIndex
  9580. case 6:
  9581. if wireType != 2 {
  9582. return fmt.Errorf("proto: wrong wireType = %d for field InitChain", wireType)
  9583. }
  9584. var msglen int
  9585. for shift := uint(0); ; shift += 7 {
  9586. if shift >= 64 {
  9587. return ErrIntOverflowTypes
  9588. }
  9589. if iNdEx >= l {
  9590. return io.ErrUnexpectedEOF
  9591. }
  9592. b := dAtA[iNdEx]
  9593. iNdEx++
  9594. msglen |= int(b&0x7F) << shift
  9595. if b < 0x80 {
  9596. break
  9597. }
  9598. }
  9599. if msglen < 0 {
  9600. return ErrInvalidLengthTypes
  9601. }
  9602. postIndex := iNdEx + msglen
  9603. if postIndex < 0 {
  9604. return ErrInvalidLengthTypes
  9605. }
  9606. if postIndex > l {
  9607. return io.ErrUnexpectedEOF
  9608. }
  9609. v := &ResponseInitChain{}
  9610. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9611. return err
  9612. }
  9613. m.Value = &Response_InitChain{v}
  9614. iNdEx = postIndex
  9615. case 7:
  9616. if wireType != 2 {
  9617. return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType)
  9618. }
  9619. var msglen int
  9620. for shift := uint(0); ; shift += 7 {
  9621. if shift >= 64 {
  9622. return ErrIntOverflowTypes
  9623. }
  9624. if iNdEx >= l {
  9625. return io.ErrUnexpectedEOF
  9626. }
  9627. b := dAtA[iNdEx]
  9628. iNdEx++
  9629. msglen |= int(b&0x7F) << shift
  9630. if b < 0x80 {
  9631. break
  9632. }
  9633. }
  9634. if msglen < 0 {
  9635. return ErrInvalidLengthTypes
  9636. }
  9637. postIndex := iNdEx + msglen
  9638. if postIndex < 0 {
  9639. return ErrInvalidLengthTypes
  9640. }
  9641. if postIndex > l {
  9642. return io.ErrUnexpectedEOF
  9643. }
  9644. v := &ResponseQuery{}
  9645. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9646. return err
  9647. }
  9648. m.Value = &Response_Query{v}
  9649. iNdEx = postIndex
  9650. case 8:
  9651. if wireType != 2 {
  9652. return fmt.Errorf("proto: wrong wireType = %d for field BeginBlock", wireType)
  9653. }
  9654. var msglen int
  9655. for shift := uint(0); ; shift += 7 {
  9656. if shift >= 64 {
  9657. return ErrIntOverflowTypes
  9658. }
  9659. if iNdEx >= l {
  9660. return io.ErrUnexpectedEOF
  9661. }
  9662. b := dAtA[iNdEx]
  9663. iNdEx++
  9664. msglen |= int(b&0x7F) << shift
  9665. if b < 0x80 {
  9666. break
  9667. }
  9668. }
  9669. if msglen < 0 {
  9670. return ErrInvalidLengthTypes
  9671. }
  9672. postIndex := iNdEx + msglen
  9673. if postIndex < 0 {
  9674. return ErrInvalidLengthTypes
  9675. }
  9676. if postIndex > l {
  9677. return io.ErrUnexpectedEOF
  9678. }
  9679. v := &ResponseBeginBlock{}
  9680. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9681. return err
  9682. }
  9683. m.Value = &Response_BeginBlock{v}
  9684. iNdEx = postIndex
  9685. case 9:
  9686. if wireType != 2 {
  9687. return fmt.Errorf("proto: wrong wireType = %d for field CheckTx", wireType)
  9688. }
  9689. var msglen int
  9690. for shift := uint(0); ; shift += 7 {
  9691. if shift >= 64 {
  9692. return ErrIntOverflowTypes
  9693. }
  9694. if iNdEx >= l {
  9695. return io.ErrUnexpectedEOF
  9696. }
  9697. b := dAtA[iNdEx]
  9698. iNdEx++
  9699. msglen |= int(b&0x7F) << shift
  9700. if b < 0x80 {
  9701. break
  9702. }
  9703. }
  9704. if msglen < 0 {
  9705. return ErrInvalidLengthTypes
  9706. }
  9707. postIndex := iNdEx + msglen
  9708. if postIndex < 0 {
  9709. return ErrInvalidLengthTypes
  9710. }
  9711. if postIndex > l {
  9712. return io.ErrUnexpectedEOF
  9713. }
  9714. v := &ResponseCheckTx{}
  9715. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9716. return err
  9717. }
  9718. m.Value = &Response_CheckTx{v}
  9719. iNdEx = postIndex
  9720. case 10:
  9721. if wireType != 2 {
  9722. return fmt.Errorf("proto: wrong wireType = %d for field DeliverTx", wireType)
  9723. }
  9724. var msglen int
  9725. for shift := uint(0); ; shift += 7 {
  9726. if shift >= 64 {
  9727. return ErrIntOverflowTypes
  9728. }
  9729. if iNdEx >= l {
  9730. return io.ErrUnexpectedEOF
  9731. }
  9732. b := dAtA[iNdEx]
  9733. iNdEx++
  9734. msglen |= int(b&0x7F) << shift
  9735. if b < 0x80 {
  9736. break
  9737. }
  9738. }
  9739. if msglen < 0 {
  9740. return ErrInvalidLengthTypes
  9741. }
  9742. postIndex := iNdEx + msglen
  9743. if postIndex < 0 {
  9744. return ErrInvalidLengthTypes
  9745. }
  9746. if postIndex > l {
  9747. return io.ErrUnexpectedEOF
  9748. }
  9749. v := &ResponseDeliverTx{}
  9750. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9751. return err
  9752. }
  9753. m.Value = &Response_DeliverTx{v}
  9754. iNdEx = postIndex
  9755. case 11:
  9756. if wireType != 2 {
  9757. return fmt.Errorf("proto: wrong wireType = %d for field EndBlock", wireType)
  9758. }
  9759. var msglen int
  9760. for shift := uint(0); ; shift += 7 {
  9761. if shift >= 64 {
  9762. return ErrIntOverflowTypes
  9763. }
  9764. if iNdEx >= l {
  9765. return io.ErrUnexpectedEOF
  9766. }
  9767. b := dAtA[iNdEx]
  9768. iNdEx++
  9769. msglen |= int(b&0x7F) << shift
  9770. if b < 0x80 {
  9771. break
  9772. }
  9773. }
  9774. if msglen < 0 {
  9775. return ErrInvalidLengthTypes
  9776. }
  9777. postIndex := iNdEx + msglen
  9778. if postIndex < 0 {
  9779. return ErrInvalidLengthTypes
  9780. }
  9781. if postIndex > l {
  9782. return io.ErrUnexpectedEOF
  9783. }
  9784. v := &ResponseEndBlock{}
  9785. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9786. return err
  9787. }
  9788. m.Value = &Response_EndBlock{v}
  9789. iNdEx = postIndex
  9790. case 12:
  9791. if wireType != 2 {
  9792. return fmt.Errorf("proto: wrong wireType = %d for field Commit", wireType)
  9793. }
  9794. var msglen int
  9795. for shift := uint(0); ; shift += 7 {
  9796. if shift >= 64 {
  9797. return ErrIntOverflowTypes
  9798. }
  9799. if iNdEx >= l {
  9800. return io.ErrUnexpectedEOF
  9801. }
  9802. b := dAtA[iNdEx]
  9803. iNdEx++
  9804. msglen |= int(b&0x7F) << shift
  9805. if b < 0x80 {
  9806. break
  9807. }
  9808. }
  9809. if msglen < 0 {
  9810. return ErrInvalidLengthTypes
  9811. }
  9812. postIndex := iNdEx + msglen
  9813. if postIndex < 0 {
  9814. return ErrInvalidLengthTypes
  9815. }
  9816. if postIndex > l {
  9817. return io.ErrUnexpectedEOF
  9818. }
  9819. v := &ResponseCommit{}
  9820. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9821. return err
  9822. }
  9823. m.Value = &Response_Commit{v}
  9824. iNdEx = postIndex
  9825. case 13:
  9826. if wireType != 2 {
  9827. return fmt.Errorf("proto: wrong wireType = %d for field ListSnapshots", wireType)
  9828. }
  9829. var msglen int
  9830. for shift := uint(0); ; shift += 7 {
  9831. if shift >= 64 {
  9832. return ErrIntOverflowTypes
  9833. }
  9834. if iNdEx >= l {
  9835. return io.ErrUnexpectedEOF
  9836. }
  9837. b := dAtA[iNdEx]
  9838. iNdEx++
  9839. msglen |= int(b&0x7F) << shift
  9840. if b < 0x80 {
  9841. break
  9842. }
  9843. }
  9844. if msglen < 0 {
  9845. return ErrInvalidLengthTypes
  9846. }
  9847. postIndex := iNdEx + msglen
  9848. if postIndex < 0 {
  9849. return ErrInvalidLengthTypes
  9850. }
  9851. if postIndex > l {
  9852. return io.ErrUnexpectedEOF
  9853. }
  9854. v := &ResponseListSnapshots{}
  9855. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9856. return err
  9857. }
  9858. m.Value = &Response_ListSnapshots{v}
  9859. iNdEx = postIndex
  9860. case 14:
  9861. if wireType != 2 {
  9862. return fmt.Errorf("proto: wrong wireType = %d for field OfferSnapshot", wireType)
  9863. }
  9864. var msglen int
  9865. for shift := uint(0); ; shift += 7 {
  9866. if shift >= 64 {
  9867. return ErrIntOverflowTypes
  9868. }
  9869. if iNdEx >= l {
  9870. return io.ErrUnexpectedEOF
  9871. }
  9872. b := dAtA[iNdEx]
  9873. iNdEx++
  9874. msglen |= int(b&0x7F) << shift
  9875. if b < 0x80 {
  9876. break
  9877. }
  9878. }
  9879. if msglen < 0 {
  9880. return ErrInvalidLengthTypes
  9881. }
  9882. postIndex := iNdEx + msglen
  9883. if postIndex < 0 {
  9884. return ErrInvalidLengthTypes
  9885. }
  9886. if postIndex > l {
  9887. return io.ErrUnexpectedEOF
  9888. }
  9889. v := &ResponseOfferSnapshot{}
  9890. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9891. return err
  9892. }
  9893. m.Value = &Response_OfferSnapshot{v}
  9894. iNdEx = postIndex
  9895. case 15:
  9896. if wireType != 2 {
  9897. return fmt.Errorf("proto: wrong wireType = %d for field LoadSnapshotChunk", wireType)
  9898. }
  9899. var msglen int
  9900. for shift := uint(0); ; shift += 7 {
  9901. if shift >= 64 {
  9902. return ErrIntOverflowTypes
  9903. }
  9904. if iNdEx >= l {
  9905. return io.ErrUnexpectedEOF
  9906. }
  9907. b := dAtA[iNdEx]
  9908. iNdEx++
  9909. msglen |= int(b&0x7F) << shift
  9910. if b < 0x80 {
  9911. break
  9912. }
  9913. }
  9914. if msglen < 0 {
  9915. return ErrInvalidLengthTypes
  9916. }
  9917. postIndex := iNdEx + msglen
  9918. if postIndex < 0 {
  9919. return ErrInvalidLengthTypes
  9920. }
  9921. if postIndex > l {
  9922. return io.ErrUnexpectedEOF
  9923. }
  9924. v := &ResponseLoadSnapshotChunk{}
  9925. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9926. return err
  9927. }
  9928. m.Value = &Response_LoadSnapshotChunk{v}
  9929. iNdEx = postIndex
  9930. case 16:
  9931. if wireType != 2 {
  9932. return fmt.Errorf("proto: wrong wireType = %d for field ApplySnapshotChunk", wireType)
  9933. }
  9934. var msglen int
  9935. for shift := uint(0); ; shift += 7 {
  9936. if shift >= 64 {
  9937. return ErrIntOverflowTypes
  9938. }
  9939. if iNdEx >= l {
  9940. return io.ErrUnexpectedEOF
  9941. }
  9942. b := dAtA[iNdEx]
  9943. iNdEx++
  9944. msglen |= int(b&0x7F) << shift
  9945. if b < 0x80 {
  9946. break
  9947. }
  9948. }
  9949. if msglen < 0 {
  9950. return ErrInvalidLengthTypes
  9951. }
  9952. postIndex := iNdEx + msglen
  9953. if postIndex < 0 {
  9954. return ErrInvalidLengthTypes
  9955. }
  9956. if postIndex > l {
  9957. return io.ErrUnexpectedEOF
  9958. }
  9959. v := &ResponseApplySnapshotChunk{}
  9960. if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9961. return err
  9962. }
  9963. m.Value = &Response_ApplySnapshotChunk{v}
  9964. iNdEx = postIndex
  9965. default:
  9966. iNdEx = preIndex
  9967. skippy, err := skipTypes(dAtA[iNdEx:])
  9968. if err != nil {
  9969. return err
  9970. }
  9971. if skippy < 0 {
  9972. return ErrInvalidLengthTypes
  9973. }
  9974. if (iNdEx + skippy) < 0 {
  9975. return ErrInvalidLengthTypes
  9976. }
  9977. if (iNdEx + skippy) > l {
  9978. return io.ErrUnexpectedEOF
  9979. }
  9980. iNdEx += skippy
  9981. }
  9982. }
  9983. if iNdEx > l {
  9984. return io.ErrUnexpectedEOF
  9985. }
  9986. return nil
  9987. }
  9988. func (m *ResponseException) Unmarshal(dAtA []byte) error {
  9989. l := len(dAtA)
  9990. iNdEx := 0
  9991. for iNdEx < l {
  9992. preIndex := iNdEx
  9993. var wire uint64
  9994. for shift := uint(0); ; shift += 7 {
  9995. if shift >= 64 {
  9996. return ErrIntOverflowTypes
  9997. }
  9998. if iNdEx >= l {
  9999. return io.ErrUnexpectedEOF
  10000. }
  10001. b := dAtA[iNdEx]
  10002. iNdEx++
  10003. wire |= uint64(b&0x7F) << shift
  10004. if b < 0x80 {
  10005. break
  10006. }
  10007. }
  10008. fieldNum := int32(wire >> 3)
  10009. wireType := int(wire & 0x7)
  10010. if wireType == 4 {
  10011. return fmt.Errorf("proto: ResponseException: wiretype end group for non-group")
  10012. }
  10013. if fieldNum <= 0 {
  10014. return fmt.Errorf("proto: ResponseException: illegal tag %d (wire type %d)", fieldNum, wire)
  10015. }
  10016. switch fieldNum {
  10017. case 1:
  10018. if wireType != 2 {
  10019. return fmt.Errorf("proto: wrong wireType = %d for field Error", wireType)
  10020. }
  10021. var stringLen uint64
  10022. for shift := uint(0); ; shift += 7 {
  10023. if shift >= 64 {
  10024. return ErrIntOverflowTypes
  10025. }
  10026. if iNdEx >= l {
  10027. return io.ErrUnexpectedEOF
  10028. }
  10029. b := dAtA[iNdEx]
  10030. iNdEx++
  10031. stringLen |= uint64(b&0x7F) << shift
  10032. if b < 0x80 {
  10033. break
  10034. }
  10035. }
  10036. intStringLen := int(stringLen)
  10037. if intStringLen < 0 {
  10038. return ErrInvalidLengthTypes
  10039. }
  10040. postIndex := iNdEx + intStringLen
  10041. if postIndex < 0 {
  10042. return ErrInvalidLengthTypes
  10043. }
  10044. if postIndex > l {
  10045. return io.ErrUnexpectedEOF
  10046. }
  10047. m.Error = string(dAtA[iNdEx:postIndex])
  10048. iNdEx = postIndex
  10049. default:
  10050. iNdEx = preIndex
  10051. skippy, err := skipTypes(dAtA[iNdEx:])
  10052. if err != nil {
  10053. return err
  10054. }
  10055. if skippy < 0 {
  10056. return ErrInvalidLengthTypes
  10057. }
  10058. if (iNdEx + skippy) < 0 {
  10059. return ErrInvalidLengthTypes
  10060. }
  10061. if (iNdEx + skippy) > l {
  10062. return io.ErrUnexpectedEOF
  10063. }
  10064. iNdEx += skippy
  10065. }
  10066. }
  10067. if iNdEx > l {
  10068. return io.ErrUnexpectedEOF
  10069. }
  10070. return nil
  10071. }
  10072. func (m *ResponseEcho) Unmarshal(dAtA []byte) error {
  10073. l := len(dAtA)
  10074. iNdEx := 0
  10075. for iNdEx < l {
  10076. preIndex := iNdEx
  10077. var wire uint64
  10078. for shift := uint(0); ; shift += 7 {
  10079. if shift >= 64 {
  10080. return ErrIntOverflowTypes
  10081. }
  10082. if iNdEx >= l {
  10083. return io.ErrUnexpectedEOF
  10084. }
  10085. b := dAtA[iNdEx]
  10086. iNdEx++
  10087. wire |= uint64(b&0x7F) << shift
  10088. if b < 0x80 {
  10089. break
  10090. }
  10091. }
  10092. fieldNum := int32(wire >> 3)
  10093. wireType := int(wire & 0x7)
  10094. if wireType == 4 {
  10095. return fmt.Errorf("proto: ResponseEcho: wiretype end group for non-group")
  10096. }
  10097. if fieldNum <= 0 {
  10098. return fmt.Errorf("proto: ResponseEcho: illegal tag %d (wire type %d)", fieldNum, wire)
  10099. }
  10100. switch fieldNum {
  10101. case 1:
  10102. if wireType != 2 {
  10103. return fmt.Errorf("proto: wrong wireType = %d for field Message", wireType)
  10104. }
  10105. var stringLen uint64
  10106. for shift := uint(0); ; shift += 7 {
  10107. if shift >= 64 {
  10108. return ErrIntOverflowTypes
  10109. }
  10110. if iNdEx >= l {
  10111. return io.ErrUnexpectedEOF
  10112. }
  10113. b := dAtA[iNdEx]
  10114. iNdEx++
  10115. stringLen |= uint64(b&0x7F) << shift
  10116. if b < 0x80 {
  10117. break
  10118. }
  10119. }
  10120. intStringLen := int(stringLen)
  10121. if intStringLen < 0 {
  10122. return ErrInvalidLengthTypes
  10123. }
  10124. postIndex := iNdEx + intStringLen
  10125. if postIndex < 0 {
  10126. return ErrInvalidLengthTypes
  10127. }
  10128. if postIndex > l {
  10129. return io.ErrUnexpectedEOF
  10130. }
  10131. m.Message = string(dAtA[iNdEx:postIndex])
  10132. iNdEx = postIndex
  10133. default:
  10134. iNdEx = preIndex
  10135. skippy, err := skipTypes(dAtA[iNdEx:])
  10136. if err != nil {
  10137. return err
  10138. }
  10139. if skippy < 0 {
  10140. return ErrInvalidLengthTypes
  10141. }
  10142. if (iNdEx + skippy) < 0 {
  10143. return ErrInvalidLengthTypes
  10144. }
  10145. if (iNdEx + skippy) > l {
  10146. return io.ErrUnexpectedEOF
  10147. }
  10148. iNdEx += skippy
  10149. }
  10150. }
  10151. if iNdEx > l {
  10152. return io.ErrUnexpectedEOF
  10153. }
  10154. return nil
  10155. }
  10156. func (m *ResponseFlush) Unmarshal(dAtA []byte) error {
  10157. l := len(dAtA)
  10158. iNdEx := 0
  10159. for iNdEx < l {
  10160. preIndex := iNdEx
  10161. var wire uint64
  10162. for shift := uint(0); ; shift += 7 {
  10163. if shift >= 64 {
  10164. return ErrIntOverflowTypes
  10165. }
  10166. if iNdEx >= l {
  10167. return io.ErrUnexpectedEOF
  10168. }
  10169. b := dAtA[iNdEx]
  10170. iNdEx++
  10171. wire |= uint64(b&0x7F) << shift
  10172. if b < 0x80 {
  10173. break
  10174. }
  10175. }
  10176. fieldNum := int32(wire >> 3)
  10177. wireType := int(wire & 0x7)
  10178. if wireType == 4 {
  10179. return fmt.Errorf("proto: ResponseFlush: wiretype end group for non-group")
  10180. }
  10181. if fieldNum <= 0 {
  10182. return fmt.Errorf("proto: ResponseFlush: illegal tag %d (wire type %d)", fieldNum, wire)
  10183. }
  10184. switch fieldNum {
  10185. default:
  10186. iNdEx = preIndex
  10187. skippy, err := skipTypes(dAtA[iNdEx:])
  10188. if err != nil {
  10189. return err
  10190. }
  10191. if skippy < 0 {
  10192. return ErrInvalidLengthTypes
  10193. }
  10194. if (iNdEx + skippy) < 0 {
  10195. return ErrInvalidLengthTypes
  10196. }
  10197. if (iNdEx + skippy) > l {
  10198. return io.ErrUnexpectedEOF
  10199. }
  10200. iNdEx += skippy
  10201. }
  10202. }
  10203. if iNdEx > l {
  10204. return io.ErrUnexpectedEOF
  10205. }
  10206. return nil
  10207. }
  10208. func (m *ResponseInfo) Unmarshal(dAtA []byte) error {
  10209. l := len(dAtA)
  10210. iNdEx := 0
  10211. for iNdEx < l {
  10212. preIndex := iNdEx
  10213. var wire uint64
  10214. for shift := uint(0); ; shift += 7 {
  10215. if shift >= 64 {
  10216. return ErrIntOverflowTypes
  10217. }
  10218. if iNdEx >= l {
  10219. return io.ErrUnexpectedEOF
  10220. }
  10221. b := dAtA[iNdEx]
  10222. iNdEx++
  10223. wire |= uint64(b&0x7F) << shift
  10224. if b < 0x80 {
  10225. break
  10226. }
  10227. }
  10228. fieldNum := int32(wire >> 3)
  10229. wireType := int(wire & 0x7)
  10230. if wireType == 4 {
  10231. return fmt.Errorf("proto: ResponseInfo: wiretype end group for non-group")
  10232. }
  10233. if fieldNum <= 0 {
  10234. return fmt.Errorf("proto: ResponseInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  10235. }
  10236. switch fieldNum {
  10237. case 1:
  10238. if wireType != 2 {
  10239. return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
  10240. }
  10241. var stringLen uint64
  10242. for shift := uint(0); ; shift += 7 {
  10243. if shift >= 64 {
  10244. return ErrIntOverflowTypes
  10245. }
  10246. if iNdEx >= l {
  10247. return io.ErrUnexpectedEOF
  10248. }
  10249. b := dAtA[iNdEx]
  10250. iNdEx++
  10251. stringLen |= uint64(b&0x7F) << shift
  10252. if b < 0x80 {
  10253. break
  10254. }
  10255. }
  10256. intStringLen := int(stringLen)
  10257. if intStringLen < 0 {
  10258. return ErrInvalidLengthTypes
  10259. }
  10260. postIndex := iNdEx + intStringLen
  10261. if postIndex < 0 {
  10262. return ErrInvalidLengthTypes
  10263. }
  10264. if postIndex > l {
  10265. return io.ErrUnexpectedEOF
  10266. }
  10267. m.Data = string(dAtA[iNdEx:postIndex])
  10268. iNdEx = postIndex
  10269. case 2:
  10270. if wireType != 2 {
  10271. return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
  10272. }
  10273. var stringLen uint64
  10274. for shift := uint(0); ; shift += 7 {
  10275. if shift >= 64 {
  10276. return ErrIntOverflowTypes
  10277. }
  10278. if iNdEx >= l {
  10279. return io.ErrUnexpectedEOF
  10280. }
  10281. b := dAtA[iNdEx]
  10282. iNdEx++
  10283. stringLen |= uint64(b&0x7F) << shift
  10284. if b < 0x80 {
  10285. break
  10286. }
  10287. }
  10288. intStringLen := int(stringLen)
  10289. if intStringLen < 0 {
  10290. return ErrInvalidLengthTypes
  10291. }
  10292. postIndex := iNdEx + intStringLen
  10293. if postIndex < 0 {
  10294. return ErrInvalidLengthTypes
  10295. }
  10296. if postIndex > l {
  10297. return io.ErrUnexpectedEOF
  10298. }
  10299. m.Version = string(dAtA[iNdEx:postIndex])
  10300. iNdEx = postIndex
  10301. case 3:
  10302. if wireType != 0 {
  10303. return fmt.Errorf("proto: wrong wireType = %d for field AppVersion", wireType)
  10304. }
  10305. m.AppVersion = 0
  10306. for shift := uint(0); ; shift += 7 {
  10307. if shift >= 64 {
  10308. return ErrIntOverflowTypes
  10309. }
  10310. if iNdEx >= l {
  10311. return io.ErrUnexpectedEOF
  10312. }
  10313. b := dAtA[iNdEx]
  10314. iNdEx++
  10315. m.AppVersion |= uint64(b&0x7F) << shift
  10316. if b < 0x80 {
  10317. break
  10318. }
  10319. }
  10320. case 4:
  10321. if wireType != 0 {
  10322. return fmt.Errorf("proto: wrong wireType = %d for field LastBlockHeight", wireType)
  10323. }
  10324. m.LastBlockHeight = 0
  10325. for shift := uint(0); ; shift += 7 {
  10326. if shift >= 64 {
  10327. return ErrIntOverflowTypes
  10328. }
  10329. if iNdEx >= l {
  10330. return io.ErrUnexpectedEOF
  10331. }
  10332. b := dAtA[iNdEx]
  10333. iNdEx++
  10334. m.LastBlockHeight |= int64(b&0x7F) << shift
  10335. if b < 0x80 {
  10336. break
  10337. }
  10338. }
  10339. case 5:
  10340. if wireType != 2 {
  10341. return fmt.Errorf("proto: wrong wireType = %d for field LastBlockAppHash", wireType)
  10342. }
  10343. var byteLen int
  10344. for shift := uint(0); ; shift += 7 {
  10345. if shift >= 64 {
  10346. return ErrIntOverflowTypes
  10347. }
  10348. if iNdEx >= l {
  10349. return io.ErrUnexpectedEOF
  10350. }
  10351. b := dAtA[iNdEx]
  10352. iNdEx++
  10353. byteLen |= int(b&0x7F) << shift
  10354. if b < 0x80 {
  10355. break
  10356. }
  10357. }
  10358. if byteLen < 0 {
  10359. return ErrInvalidLengthTypes
  10360. }
  10361. postIndex := iNdEx + byteLen
  10362. if postIndex < 0 {
  10363. return ErrInvalidLengthTypes
  10364. }
  10365. if postIndex > l {
  10366. return io.ErrUnexpectedEOF
  10367. }
  10368. m.LastBlockAppHash = append(m.LastBlockAppHash[:0], dAtA[iNdEx:postIndex]...)
  10369. if m.LastBlockAppHash == nil {
  10370. m.LastBlockAppHash = []byte{}
  10371. }
  10372. iNdEx = postIndex
  10373. default:
  10374. iNdEx = preIndex
  10375. skippy, err := skipTypes(dAtA[iNdEx:])
  10376. if err != nil {
  10377. return err
  10378. }
  10379. if skippy < 0 {
  10380. return ErrInvalidLengthTypes
  10381. }
  10382. if (iNdEx + skippy) < 0 {
  10383. return ErrInvalidLengthTypes
  10384. }
  10385. if (iNdEx + skippy) > l {
  10386. return io.ErrUnexpectedEOF
  10387. }
  10388. iNdEx += skippy
  10389. }
  10390. }
  10391. if iNdEx > l {
  10392. return io.ErrUnexpectedEOF
  10393. }
  10394. return nil
  10395. }
  10396. func (m *ResponseSetOption) Unmarshal(dAtA []byte) error {
  10397. l := len(dAtA)
  10398. iNdEx := 0
  10399. for iNdEx < l {
  10400. preIndex := iNdEx
  10401. var wire uint64
  10402. for shift := uint(0); ; shift += 7 {
  10403. if shift >= 64 {
  10404. return ErrIntOverflowTypes
  10405. }
  10406. if iNdEx >= l {
  10407. return io.ErrUnexpectedEOF
  10408. }
  10409. b := dAtA[iNdEx]
  10410. iNdEx++
  10411. wire |= uint64(b&0x7F) << shift
  10412. if b < 0x80 {
  10413. break
  10414. }
  10415. }
  10416. fieldNum := int32(wire >> 3)
  10417. wireType := int(wire & 0x7)
  10418. if wireType == 4 {
  10419. return fmt.Errorf("proto: ResponseSetOption: wiretype end group for non-group")
  10420. }
  10421. if fieldNum <= 0 {
  10422. return fmt.Errorf("proto: ResponseSetOption: illegal tag %d (wire type %d)", fieldNum, wire)
  10423. }
  10424. switch fieldNum {
  10425. case 1:
  10426. if wireType != 0 {
  10427. return fmt.Errorf("proto: wrong wireType = %d for field Code", wireType)
  10428. }
  10429. m.Code = 0
  10430. for shift := uint(0); ; shift += 7 {
  10431. if shift >= 64 {
  10432. return ErrIntOverflowTypes
  10433. }
  10434. if iNdEx >= l {
  10435. return io.ErrUnexpectedEOF
  10436. }
  10437. b := dAtA[iNdEx]
  10438. iNdEx++
  10439. m.Code |= uint32(b&0x7F) << shift
  10440. if b < 0x80 {
  10441. break
  10442. }
  10443. }
  10444. case 3:
  10445. if wireType != 2 {
  10446. return fmt.Errorf("proto: wrong wireType = %d for field Log", wireType)
  10447. }
  10448. var stringLen uint64
  10449. for shift := uint(0); ; shift += 7 {
  10450. if shift >= 64 {
  10451. return ErrIntOverflowTypes
  10452. }
  10453. if iNdEx >= l {
  10454. return io.ErrUnexpectedEOF
  10455. }
  10456. b := dAtA[iNdEx]
  10457. iNdEx++
  10458. stringLen |= uint64(b&0x7F) << shift
  10459. if b < 0x80 {
  10460. break
  10461. }
  10462. }
  10463. intStringLen := int(stringLen)
  10464. if intStringLen < 0 {
  10465. return ErrInvalidLengthTypes
  10466. }
  10467. postIndex := iNdEx + intStringLen
  10468. if postIndex < 0 {
  10469. return ErrInvalidLengthTypes
  10470. }
  10471. if postIndex > l {
  10472. return io.ErrUnexpectedEOF
  10473. }
  10474. m.Log = string(dAtA[iNdEx:postIndex])
  10475. iNdEx = postIndex
  10476. case 4:
  10477. if wireType != 2 {
  10478. return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
  10479. }
  10480. var stringLen uint64
  10481. for shift := uint(0); ; shift += 7 {
  10482. if shift >= 64 {
  10483. return ErrIntOverflowTypes
  10484. }
  10485. if iNdEx >= l {
  10486. return io.ErrUnexpectedEOF
  10487. }
  10488. b := dAtA[iNdEx]
  10489. iNdEx++
  10490. stringLen |= uint64(b&0x7F) << shift
  10491. if b < 0x80 {
  10492. break
  10493. }
  10494. }
  10495. intStringLen := int(stringLen)
  10496. if intStringLen < 0 {
  10497. return ErrInvalidLengthTypes
  10498. }
  10499. postIndex := iNdEx + intStringLen
  10500. if postIndex < 0 {
  10501. return ErrInvalidLengthTypes
  10502. }
  10503. if postIndex > l {
  10504. return io.ErrUnexpectedEOF
  10505. }
  10506. m.Info = string(dAtA[iNdEx:postIndex])
  10507. iNdEx = postIndex
  10508. default:
  10509. iNdEx = preIndex
  10510. skippy, err := skipTypes(dAtA[iNdEx:])
  10511. if err != nil {
  10512. return err
  10513. }
  10514. if skippy < 0 {
  10515. return ErrInvalidLengthTypes
  10516. }
  10517. if (iNdEx + skippy) < 0 {
  10518. return ErrInvalidLengthTypes
  10519. }
  10520. if (iNdEx + skippy) > l {
  10521. return io.ErrUnexpectedEOF
  10522. }
  10523. iNdEx += skippy
  10524. }
  10525. }
  10526. if iNdEx > l {
  10527. return io.ErrUnexpectedEOF
  10528. }
  10529. return nil
  10530. }
  10531. func (m *ResponseInitChain) Unmarshal(dAtA []byte) error {
  10532. l := len(dAtA)
  10533. iNdEx := 0
  10534. for iNdEx < l {
  10535. preIndex := iNdEx
  10536. var wire uint64
  10537. for shift := uint(0); ; shift += 7 {
  10538. if shift >= 64 {
  10539. return ErrIntOverflowTypes
  10540. }
  10541. if iNdEx >= l {
  10542. return io.ErrUnexpectedEOF
  10543. }
  10544. b := dAtA[iNdEx]
  10545. iNdEx++
  10546. wire |= uint64(b&0x7F) << shift
  10547. if b < 0x80 {
  10548. break
  10549. }
  10550. }
  10551. fieldNum := int32(wire >> 3)
  10552. wireType := int(wire & 0x7)
  10553. if wireType == 4 {
  10554. return fmt.Errorf("proto: ResponseInitChain: wiretype end group for non-group")
  10555. }
  10556. if fieldNum <= 0 {
  10557. return fmt.Errorf("proto: ResponseInitChain: illegal tag %d (wire type %d)", fieldNum, wire)
  10558. }
  10559. switch fieldNum {
  10560. case 1:
  10561. if wireType != 2 {
  10562. return fmt.Errorf("proto: wrong wireType = %d for field ConsensusParams", wireType)
  10563. }
  10564. var msglen int
  10565. for shift := uint(0); ; shift += 7 {
  10566. if shift >= 64 {
  10567. return ErrIntOverflowTypes
  10568. }
  10569. if iNdEx >= l {
  10570. return io.ErrUnexpectedEOF
  10571. }
  10572. b := dAtA[iNdEx]
  10573. iNdEx++
  10574. msglen |= int(b&0x7F) << shift
  10575. if b < 0x80 {
  10576. break
  10577. }
  10578. }
  10579. if msglen < 0 {
  10580. return ErrInvalidLengthTypes
  10581. }
  10582. postIndex := iNdEx + msglen
  10583. if postIndex < 0 {
  10584. return ErrInvalidLengthTypes
  10585. }
  10586. if postIndex > l {
  10587. return io.ErrUnexpectedEOF
  10588. }
  10589. if m.ConsensusParams == nil {
  10590. m.ConsensusParams = &ConsensusParams{}
  10591. }
  10592. if err := m.ConsensusParams.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  10593. return err
  10594. }
  10595. iNdEx = postIndex
  10596. case 2:
  10597. if wireType != 2 {
  10598. return fmt.Errorf("proto: wrong wireType = %d for field Validators", wireType)
  10599. }
  10600. var msglen int
  10601. for shift := uint(0); ; shift += 7 {
  10602. if shift >= 64 {
  10603. return ErrIntOverflowTypes
  10604. }
  10605. if iNdEx >= l {
  10606. return io.ErrUnexpectedEOF
  10607. }
  10608. b := dAtA[iNdEx]
  10609. iNdEx++
  10610. msglen |= int(b&0x7F) << shift
  10611. if b < 0x80 {
  10612. break
  10613. }
  10614. }
  10615. if msglen < 0 {
  10616. return ErrInvalidLengthTypes
  10617. }
  10618. postIndex := iNdEx + msglen
  10619. if postIndex < 0 {
  10620. return ErrInvalidLengthTypes
  10621. }
  10622. if postIndex > l {
  10623. return io.ErrUnexpectedEOF
  10624. }
  10625. m.Validators = append(m.Validators, ValidatorUpdate{})
  10626. if err := m.Validators[len(m.Validators)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  10627. return err
  10628. }
  10629. iNdEx = postIndex
  10630. default:
  10631. iNdEx = preIndex
  10632. skippy, err := skipTypes(dAtA[iNdEx:])
  10633. if err != nil {
  10634. return err
  10635. }
  10636. if skippy < 0 {
  10637. return ErrInvalidLengthTypes
  10638. }
  10639. if (iNdEx + skippy) < 0 {
  10640. return ErrInvalidLengthTypes
  10641. }
  10642. if (iNdEx + skippy) > l {
  10643. return io.ErrUnexpectedEOF
  10644. }
  10645. iNdEx += skippy
  10646. }
  10647. }
  10648. if iNdEx > l {
  10649. return io.ErrUnexpectedEOF
  10650. }
  10651. return nil
  10652. }
  10653. func (m *ResponseQuery) Unmarshal(dAtA []byte) error {
  10654. l := len(dAtA)
  10655. iNdEx := 0
  10656. for iNdEx < l {
  10657. preIndex := iNdEx
  10658. var wire uint64
  10659. for shift := uint(0); ; shift += 7 {
  10660. if shift >= 64 {
  10661. return ErrIntOverflowTypes
  10662. }
  10663. if iNdEx >= l {
  10664. return io.ErrUnexpectedEOF
  10665. }
  10666. b := dAtA[iNdEx]
  10667. iNdEx++
  10668. wire |= uint64(b&0x7F) << shift
  10669. if b < 0x80 {
  10670. break
  10671. }
  10672. }
  10673. fieldNum := int32(wire >> 3)
  10674. wireType := int(wire & 0x7)
  10675. if wireType == 4 {
  10676. return fmt.Errorf("proto: ResponseQuery: wiretype end group for non-group")
  10677. }
  10678. if fieldNum <= 0 {
  10679. return fmt.Errorf("proto: ResponseQuery: illegal tag %d (wire type %d)", fieldNum, wire)
  10680. }
  10681. switch fieldNum {
  10682. case 1:
  10683. if wireType != 0 {
  10684. return fmt.Errorf("proto: wrong wireType = %d for field Code", wireType)
  10685. }
  10686. m.Code = 0
  10687. for shift := uint(0); ; shift += 7 {
  10688. if shift >= 64 {
  10689. return ErrIntOverflowTypes
  10690. }
  10691. if iNdEx >= l {
  10692. return io.ErrUnexpectedEOF
  10693. }
  10694. b := dAtA[iNdEx]
  10695. iNdEx++
  10696. m.Code |= uint32(b&0x7F) << shift
  10697. if b < 0x80 {
  10698. break
  10699. }
  10700. }
  10701. case 3:
  10702. if wireType != 2 {
  10703. return fmt.Errorf("proto: wrong wireType = %d for field Log", wireType)
  10704. }
  10705. var stringLen uint64
  10706. for shift := uint(0); ; shift += 7 {
  10707. if shift >= 64 {
  10708. return ErrIntOverflowTypes
  10709. }
  10710. if iNdEx >= l {
  10711. return io.ErrUnexpectedEOF
  10712. }
  10713. b := dAtA[iNdEx]
  10714. iNdEx++
  10715. stringLen |= uint64(b&0x7F) << shift
  10716. if b < 0x80 {
  10717. break
  10718. }
  10719. }
  10720. intStringLen := int(stringLen)
  10721. if intStringLen < 0 {
  10722. return ErrInvalidLengthTypes
  10723. }
  10724. postIndex := iNdEx + intStringLen
  10725. if postIndex < 0 {
  10726. return ErrInvalidLengthTypes
  10727. }
  10728. if postIndex > l {
  10729. return io.ErrUnexpectedEOF
  10730. }
  10731. m.Log = string(dAtA[iNdEx:postIndex])
  10732. iNdEx = postIndex
  10733. case 4:
  10734. if wireType != 2 {
  10735. return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
  10736. }
  10737. var stringLen uint64
  10738. for shift := uint(0); ; shift += 7 {
  10739. if shift >= 64 {
  10740. return ErrIntOverflowTypes
  10741. }
  10742. if iNdEx >= l {
  10743. return io.ErrUnexpectedEOF
  10744. }
  10745. b := dAtA[iNdEx]
  10746. iNdEx++
  10747. stringLen |= uint64(b&0x7F) << shift
  10748. if b < 0x80 {
  10749. break
  10750. }
  10751. }
  10752. intStringLen := int(stringLen)
  10753. if intStringLen < 0 {
  10754. return ErrInvalidLengthTypes
  10755. }
  10756. postIndex := iNdEx + intStringLen
  10757. if postIndex < 0 {
  10758. return ErrInvalidLengthTypes
  10759. }
  10760. if postIndex > l {
  10761. return io.ErrUnexpectedEOF
  10762. }
  10763. m.Info = string(dAtA[iNdEx:postIndex])
  10764. iNdEx = postIndex
  10765. case 5:
  10766. if wireType != 0 {
  10767. return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  10768. }
  10769. m.Index = 0
  10770. for shift := uint(0); ; shift += 7 {
  10771. if shift >= 64 {
  10772. return ErrIntOverflowTypes
  10773. }
  10774. if iNdEx >= l {
  10775. return io.ErrUnexpectedEOF
  10776. }
  10777. b := dAtA[iNdEx]
  10778. iNdEx++
  10779. m.Index |= int64(b&0x7F) << shift
  10780. if b < 0x80 {
  10781. break
  10782. }
  10783. }
  10784. case 6:
  10785. if wireType != 2 {
  10786. return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType)
  10787. }
  10788. var byteLen int
  10789. for shift := uint(0); ; shift += 7 {
  10790. if shift >= 64 {
  10791. return ErrIntOverflowTypes
  10792. }
  10793. if iNdEx >= l {
  10794. return io.ErrUnexpectedEOF
  10795. }
  10796. b := dAtA[iNdEx]
  10797. iNdEx++
  10798. byteLen |= int(b&0x7F) << shift
  10799. if b < 0x80 {
  10800. break
  10801. }
  10802. }
  10803. if byteLen < 0 {
  10804. return ErrInvalidLengthTypes
  10805. }
  10806. postIndex := iNdEx + byteLen
  10807. if postIndex < 0 {
  10808. return ErrInvalidLengthTypes
  10809. }
  10810. if postIndex > l {
  10811. return io.ErrUnexpectedEOF
  10812. }
  10813. m.Key = append(m.Key[:0], dAtA[iNdEx:postIndex]...)
  10814. if m.Key == nil {
  10815. m.Key = []byte{}
  10816. }
  10817. iNdEx = postIndex
  10818. case 7:
  10819. if wireType != 2 {
  10820. return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
  10821. }
  10822. var byteLen int
  10823. for shift := uint(0); ; shift += 7 {
  10824. if shift >= 64 {
  10825. return ErrIntOverflowTypes
  10826. }
  10827. if iNdEx >= l {
  10828. return io.ErrUnexpectedEOF
  10829. }
  10830. b := dAtA[iNdEx]
  10831. iNdEx++
  10832. byteLen |= int(b&0x7F) << shift
  10833. if b < 0x80 {
  10834. break
  10835. }
  10836. }
  10837. if byteLen < 0 {
  10838. return ErrInvalidLengthTypes
  10839. }
  10840. postIndex := iNdEx + byteLen
  10841. if postIndex < 0 {
  10842. return ErrInvalidLengthTypes
  10843. }
  10844. if postIndex > l {
  10845. return io.ErrUnexpectedEOF
  10846. }
  10847. m.Value = append(m.Value[:0], dAtA[iNdEx:postIndex]...)
  10848. if m.Value == nil {
  10849. m.Value = []byte{}
  10850. }
  10851. iNdEx = postIndex
  10852. case 8:
  10853. if wireType != 2 {
  10854. return fmt.Errorf("proto: wrong wireType = %d for field ProofOps", wireType)
  10855. }
  10856. var msglen int
  10857. for shift := uint(0); ; shift += 7 {
  10858. if shift >= 64 {
  10859. return ErrIntOverflowTypes
  10860. }
  10861. if iNdEx >= l {
  10862. return io.ErrUnexpectedEOF
  10863. }
  10864. b := dAtA[iNdEx]
  10865. iNdEx++
  10866. msglen |= int(b&0x7F) << shift
  10867. if b < 0x80 {
  10868. break
  10869. }
  10870. }
  10871. if msglen < 0 {
  10872. return ErrInvalidLengthTypes
  10873. }
  10874. postIndex := iNdEx + msglen
  10875. if postIndex < 0 {
  10876. return ErrInvalidLengthTypes
  10877. }
  10878. if postIndex > l {
  10879. return io.ErrUnexpectedEOF
  10880. }
  10881. if m.ProofOps == nil {
  10882. m.ProofOps = &crypto.ProofOps{}
  10883. }
  10884. if err := m.ProofOps.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  10885. return err
  10886. }
  10887. iNdEx = postIndex
  10888. case 9:
  10889. if wireType != 0 {
  10890. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  10891. }
  10892. m.Height = 0
  10893. for shift := uint(0); ; shift += 7 {
  10894. if shift >= 64 {
  10895. return ErrIntOverflowTypes
  10896. }
  10897. if iNdEx >= l {
  10898. return io.ErrUnexpectedEOF
  10899. }
  10900. b := dAtA[iNdEx]
  10901. iNdEx++
  10902. m.Height |= int64(b&0x7F) << shift
  10903. if b < 0x80 {
  10904. break
  10905. }
  10906. }
  10907. case 10:
  10908. if wireType != 2 {
  10909. return fmt.Errorf("proto: wrong wireType = %d for field Codespace", wireType)
  10910. }
  10911. var stringLen uint64
  10912. for shift := uint(0); ; shift += 7 {
  10913. if shift >= 64 {
  10914. return ErrIntOverflowTypes
  10915. }
  10916. if iNdEx >= l {
  10917. return io.ErrUnexpectedEOF
  10918. }
  10919. b := dAtA[iNdEx]
  10920. iNdEx++
  10921. stringLen |= uint64(b&0x7F) << shift
  10922. if b < 0x80 {
  10923. break
  10924. }
  10925. }
  10926. intStringLen := int(stringLen)
  10927. if intStringLen < 0 {
  10928. return ErrInvalidLengthTypes
  10929. }
  10930. postIndex := iNdEx + intStringLen
  10931. if postIndex < 0 {
  10932. return ErrInvalidLengthTypes
  10933. }
  10934. if postIndex > l {
  10935. return io.ErrUnexpectedEOF
  10936. }
  10937. m.Codespace = string(dAtA[iNdEx:postIndex])
  10938. iNdEx = postIndex
  10939. default:
  10940. iNdEx = preIndex
  10941. skippy, err := skipTypes(dAtA[iNdEx:])
  10942. if err != nil {
  10943. return err
  10944. }
  10945. if skippy < 0 {
  10946. return ErrInvalidLengthTypes
  10947. }
  10948. if (iNdEx + skippy) < 0 {
  10949. return ErrInvalidLengthTypes
  10950. }
  10951. if (iNdEx + skippy) > l {
  10952. return io.ErrUnexpectedEOF
  10953. }
  10954. iNdEx += skippy
  10955. }
  10956. }
  10957. if iNdEx > l {
  10958. return io.ErrUnexpectedEOF
  10959. }
  10960. return nil
  10961. }
  10962. func (m *ResponseBeginBlock) Unmarshal(dAtA []byte) error {
  10963. l := len(dAtA)
  10964. iNdEx := 0
  10965. for iNdEx < l {
  10966. preIndex := iNdEx
  10967. var wire uint64
  10968. for shift := uint(0); ; shift += 7 {
  10969. if shift >= 64 {
  10970. return ErrIntOverflowTypes
  10971. }
  10972. if iNdEx >= l {
  10973. return io.ErrUnexpectedEOF
  10974. }
  10975. b := dAtA[iNdEx]
  10976. iNdEx++
  10977. wire |= uint64(b&0x7F) << shift
  10978. if b < 0x80 {
  10979. break
  10980. }
  10981. }
  10982. fieldNum := int32(wire >> 3)
  10983. wireType := int(wire & 0x7)
  10984. if wireType == 4 {
  10985. return fmt.Errorf("proto: ResponseBeginBlock: wiretype end group for non-group")
  10986. }
  10987. if fieldNum <= 0 {
  10988. return fmt.Errorf("proto: ResponseBeginBlock: illegal tag %d (wire type %d)", fieldNum, wire)
  10989. }
  10990. switch fieldNum {
  10991. case 1:
  10992. if wireType != 2 {
  10993. return fmt.Errorf("proto: wrong wireType = %d for field Events", wireType)
  10994. }
  10995. var msglen int
  10996. for shift := uint(0); ; shift += 7 {
  10997. if shift >= 64 {
  10998. return ErrIntOverflowTypes
  10999. }
  11000. if iNdEx >= l {
  11001. return io.ErrUnexpectedEOF
  11002. }
  11003. b := dAtA[iNdEx]
  11004. iNdEx++
  11005. msglen |= int(b&0x7F) << shift
  11006. if b < 0x80 {
  11007. break
  11008. }
  11009. }
  11010. if msglen < 0 {
  11011. return ErrInvalidLengthTypes
  11012. }
  11013. postIndex := iNdEx + msglen
  11014. if postIndex < 0 {
  11015. return ErrInvalidLengthTypes
  11016. }
  11017. if postIndex > l {
  11018. return io.ErrUnexpectedEOF
  11019. }
  11020. m.Events = append(m.Events, Event{})
  11021. if err := m.Events[len(m.Events)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11022. return err
  11023. }
  11024. iNdEx = postIndex
  11025. default:
  11026. iNdEx = preIndex
  11027. skippy, err := skipTypes(dAtA[iNdEx:])
  11028. if err != nil {
  11029. return err
  11030. }
  11031. if skippy < 0 {
  11032. return ErrInvalidLengthTypes
  11033. }
  11034. if (iNdEx + skippy) < 0 {
  11035. return ErrInvalidLengthTypes
  11036. }
  11037. if (iNdEx + skippy) > l {
  11038. return io.ErrUnexpectedEOF
  11039. }
  11040. iNdEx += skippy
  11041. }
  11042. }
  11043. if iNdEx > l {
  11044. return io.ErrUnexpectedEOF
  11045. }
  11046. return nil
  11047. }
  11048. func (m *ResponseCheckTx) Unmarshal(dAtA []byte) error {
  11049. l := len(dAtA)
  11050. iNdEx := 0
  11051. for iNdEx < l {
  11052. preIndex := iNdEx
  11053. var wire uint64
  11054. for shift := uint(0); ; shift += 7 {
  11055. if shift >= 64 {
  11056. return ErrIntOverflowTypes
  11057. }
  11058. if iNdEx >= l {
  11059. return io.ErrUnexpectedEOF
  11060. }
  11061. b := dAtA[iNdEx]
  11062. iNdEx++
  11063. wire |= uint64(b&0x7F) << shift
  11064. if b < 0x80 {
  11065. break
  11066. }
  11067. }
  11068. fieldNum := int32(wire >> 3)
  11069. wireType := int(wire & 0x7)
  11070. if wireType == 4 {
  11071. return fmt.Errorf("proto: ResponseCheckTx: wiretype end group for non-group")
  11072. }
  11073. if fieldNum <= 0 {
  11074. return fmt.Errorf("proto: ResponseCheckTx: illegal tag %d (wire type %d)", fieldNum, wire)
  11075. }
  11076. switch fieldNum {
  11077. case 1:
  11078. if wireType != 0 {
  11079. return fmt.Errorf("proto: wrong wireType = %d for field Code", wireType)
  11080. }
  11081. m.Code = 0
  11082. for shift := uint(0); ; shift += 7 {
  11083. if shift >= 64 {
  11084. return ErrIntOverflowTypes
  11085. }
  11086. if iNdEx >= l {
  11087. return io.ErrUnexpectedEOF
  11088. }
  11089. b := dAtA[iNdEx]
  11090. iNdEx++
  11091. m.Code |= uint32(b&0x7F) << shift
  11092. if b < 0x80 {
  11093. break
  11094. }
  11095. }
  11096. case 2:
  11097. if wireType != 2 {
  11098. return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
  11099. }
  11100. var byteLen int
  11101. for shift := uint(0); ; shift += 7 {
  11102. if shift >= 64 {
  11103. return ErrIntOverflowTypes
  11104. }
  11105. if iNdEx >= l {
  11106. return io.ErrUnexpectedEOF
  11107. }
  11108. b := dAtA[iNdEx]
  11109. iNdEx++
  11110. byteLen |= int(b&0x7F) << shift
  11111. if b < 0x80 {
  11112. break
  11113. }
  11114. }
  11115. if byteLen < 0 {
  11116. return ErrInvalidLengthTypes
  11117. }
  11118. postIndex := iNdEx + byteLen
  11119. if postIndex < 0 {
  11120. return ErrInvalidLengthTypes
  11121. }
  11122. if postIndex > l {
  11123. return io.ErrUnexpectedEOF
  11124. }
  11125. m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
  11126. if m.Data == nil {
  11127. m.Data = []byte{}
  11128. }
  11129. iNdEx = postIndex
  11130. case 3:
  11131. if wireType != 2 {
  11132. return fmt.Errorf("proto: wrong wireType = %d for field Log", wireType)
  11133. }
  11134. var stringLen uint64
  11135. for shift := uint(0); ; shift += 7 {
  11136. if shift >= 64 {
  11137. return ErrIntOverflowTypes
  11138. }
  11139. if iNdEx >= l {
  11140. return io.ErrUnexpectedEOF
  11141. }
  11142. b := dAtA[iNdEx]
  11143. iNdEx++
  11144. stringLen |= uint64(b&0x7F) << shift
  11145. if b < 0x80 {
  11146. break
  11147. }
  11148. }
  11149. intStringLen := int(stringLen)
  11150. if intStringLen < 0 {
  11151. return ErrInvalidLengthTypes
  11152. }
  11153. postIndex := iNdEx + intStringLen
  11154. if postIndex < 0 {
  11155. return ErrInvalidLengthTypes
  11156. }
  11157. if postIndex > l {
  11158. return io.ErrUnexpectedEOF
  11159. }
  11160. m.Log = string(dAtA[iNdEx:postIndex])
  11161. iNdEx = postIndex
  11162. case 4:
  11163. if wireType != 2 {
  11164. return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
  11165. }
  11166. var stringLen uint64
  11167. for shift := uint(0); ; shift += 7 {
  11168. if shift >= 64 {
  11169. return ErrIntOverflowTypes
  11170. }
  11171. if iNdEx >= l {
  11172. return io.ErrUnexpectedEOF
  11173. }
  11174. b := dAtA[iNdEx]
  11175. iNdEx++
  11176. stringLen |= uint64(b&0x7F) << shift
  11177. if b < 0x80 {
  11178. break
  11179. }
  11180. }
  11181. intStringLen := int(stringLen)
  11182. if intStringLen < 0 {
  11183. return ErrInvalidLengthTypes
  11184. }
  11185. postIndex := iNdEx + intStringLen
  11186. if postIndex < 0 {
  11187. return ErrInvalidLengthTypes
  11188. }
  11189. if postIndex > l {
  11190. return io.ErrUnexpectedEOF
  11191. }
  11192. m.Info = string(dAtA[iNdEx:postIndex])
  11193. iNdEx = postIndex
  11194. case 5:
  11195. if wireType != 0 {
  11196. return fmt.Errorf("proto: wrong wireType = %d for field GasWanted", wireType)
  11197. }
  11198. m.GasWanted = 0
  11199. for shift := uint(0); ; shift += 7 {
  11200. if shift >= 64 {
  11201. return ErrIntOverflowTypes
  11202. }
  11203. if iNdEx >= l {
  11204. return io.ErrUnexpectedEOF
  11205. }
  11206. b := dAtA[iNdEx]
  11207. iNdEx++
  11208. m.GasWanted |= int64(b&0x7F) << shift
  11209. if b < 0x80 {
  11210. break
  11211. }
  11212. }
  11213. case 6:
  11214. if wireType != 0 {
  11215. return fmt.Errorf("proto: wrong wireType = %d for field GasUsed", wireType)
  11216. }
  11217. m.GasUsed = 0
  11218. for shift := uint(0); ; shift += 7 {
  11219. if shift >= 64 {
  11220. return ErrIntOverflowTypes
  11221. }
  11222. if iNdEx >= l {
  11223. return io.ErrUnexpectedEOF
  11224. }
  11225. b := dAtA[iNdEx]
  11226. iNdEx++
  11227. m.GasUsed |= int64(b&0x7F) << shift
  11228. if b < 0x80 {
  11229. break
  11230. }
  11231. }
  11232. case 7:
  11233. if wireType != 2 {
  11234. return fmt.Errorf("proto: wrong wireType = %d for field Events", wireType)
  11235. }
  11236. var msglen int
  11237. for shift := uint(0); ; shift += 7 {
  11238. if shift >= 64 {
  11239. return ErrIntOverflowTypes
  11240. }
  11241. if iNdEx >= l {
  11242. return io.ErrUnexpectedEOF
  11243. }
  11244. b := dAtA[iNdEx]
  11245. iNdEx++
  11246. msglen |= int(b&0x7F) << shift
  11247. if b < 0x80 {
  11248. break
  11249. }
  11250. }
  11251. if msglen < 0 {
  11252. return ErrInvalidLengthTypes
  11253. }
  11254. postIndex := iNdEx + msglen
  11255. if postIndex < 0 {
  11256. return ErrInvalidLengthTypes
  11257. }
  11258. if postIndex > l {
  11259. return io.ErrUnexpectedEOF
  11260. }
  11261. m.Events = append(m.Events, Event{})
  11262. if err := m.Events[len(m.Events)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11263. return err
  11264. }
  11265. iNdEx = postIndex
  11266. case 8:
  11267. if wireType != 2 {
  11268. return fmt.Errorf("proto: wrong wireType = %d for field Codespace", wireType)
  11269. }
  11270. var stringLen uint64
  11271. for shift := uint(0); ; shift += 7 {
  11272. if shift >= 64 {
  11273. return ErrIntOverflowTypes
  11274. }
  11275. if iNdEx >= l {
  11276. return io.ErrUnexpectedEOF
  11277. }
  11278. b := dAtA[iNdEx]
  11279. iNdEx++
  11280. stringLen |= uint64(b&0x7F) << shift
  11281. if b < 0x80 {
  11282. break
  11283. }
  11284. }
  11285. intStringLen := int(stringLen)
  11286. if intStringLen < 0 {
  11287. return ErrInvalidLengthTypes
  11288. }
  11289. postIndex := iNdEx + intStringLen
  11290. if postIndex < 0 {
  11291. return ErrInvalidLengthTypes
  11292. }
  11293. if postIndex > l {
  11294. return io.ErrUnexpectedEOF
  11295. }
  11296. m.Codespace = string(dAtA[iNdEx:postIndex])
  11297. iNdEx = postIndex
  11298. default:
  11299. iNdEx = preIndex
  11300. skippy, err := skipTypes(dAtA[iNdEx:])
  11301. if err != nil {
  11302. return err
  11303. }
  11304. if skippy < 0 {
  11305. return ErrInvalidLengthTypes
  11306. }
  11307. if (iNdEx + skippy) < 0 {
  11308. return ErrInvalidLengthTypes
  11309. }
  11310. if (iNdEx + skippy) > l {
  11311. return io.ErrUnexpectedEOF
  11312. }
  11313. iNdEx += skippy
  11314. }
  11315. }
  11316. if iNdEx > l {
  11317. return io.ErrUnexpectedEOF
  11318. }
  11319. return nil
  11320. }
  11321. func (m *ResponseDeliverTx) Unmarshal(dAtA []byte) error {
  11322. l := len(dAtA)
  11323. iNdEx := 0
  11324. for iNdEx < l {
  11325. preIndex := iNdEx
  11326. var wire uint64
  11327. for shift := uint(0); ; shift += 7 {
  11328. if shift >= 64 {
  11329. return ErrIntOverflowTypes
  11330. }
  11331. if iNdEx >= l {
  11332. return io.ErrUnexpectedEOF
  11333. }
  11334. b := dAtA[iNdEx]
  11335. iNdEx++
  11336. wire |= uint64(b&0x7F) << shift
  11337. if b < 0x80 {
  11338. break
  11339. }
  11340. }
  11341. fieldNum := int32(wire >> 3)
  11342. wireType := int(wire & 0x7)
  11343. if wireType == 4 {
  11344. return fmt.Errorf("proto: ResponseDeliverTx: wiretype end group for non-group")
  11345. }
  11346. if fieldNum <= 0 {
  11347. return fmt.Errorf("proto: ResponseDeliverTx: illegal tag %d (wire type %d)", fieldNum, wire)
  11348. }
  11349. switch fieldNum {
  11350. case 1:
  11351. if wireType != 0 {
  11352. return fmt.Errorf("proto: wrong wireType = %d for field Code", wireType)
  11353. }
  11354. m.Code = 0
  11355. for shift := uint(0); ; shift += 7 {
  11356. if shift >= 64 {
  11357. return ErrIntOverflowTypes
  11358. }
  11359. if iNdEx >= l {
  11360. return io.ErrUnexpectedEOF
  11361. }
  11362. b := dAtA[iNdEx]
  11363. iNdEx++
  11364. m.Code |= uint32(b&0x7F) << shift
  11365. if b < 0x80 {
  11366. break
  11367. }
  11368. }
  11369. case 2:
  11370. if wireType != 2 {
  11371. return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
  11372. }
  11373. var byteLen int
  11374. for shift := uint(0); ; shift += 7 {
  11375. if shift >= 64 {
  11376. return ErrIntOverflowTypes
  11377. }
  11378. if iNdEx >= l {
  11379. return io.ErrUnexpectedEOF
  11380. }
  11381. b := dAtA[iNdEx]
  11382. iNdEx++
  11383. byteLen |= int(b&0x7F) << shift
  11384. if b < 0x80 {
  11385. break
  11386. }
  11387. }
  11388. if byteLen < 0 {
  11389. return ErrInvalidLengthTypes
  11390. }
  11391. postIndex := iNdEx + byteLen
  11392. if postIndex < 0 {
  11393. return ErrInvalidLengthTypes
  11394. }
  11395. if postIndex > l {
  11396. return io.ErrUnexpectedEOF
  11397. }
  11398. m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
  11399. if m.Data == nil {
  11400. m.Data = []byte{}
  11401. }
  11402. iNdEx = postIndex
  11403. case 3:
  11404. if wireType != 2 {
  11405. return fmt.Errorf("proto: wrong wireType = %d for field Log", wireType)
  11406. }
  11407. var stringLen uint64
  11408. for shift := uint(0); ; shift += 7 {
  11409. if shift >= 64 {
  11410. return ErrIntOverflowTypes
  11411. }
  11412. if iNdEx >= l {
  11413. return io.ErrUnexpectedEOF
  11414. }
  11415. b := dAtA[iNdEx]
  11416. iNdEx++
  11417. stringLen |= uint64(b&0x7F) << shift
  11418. if b < 0x80 {
  11419. break
  11420. }
  11421. }
  11422. intStringLen := int(stringLen)
  11423. if intStringLen < 0 {
  11424. return ErrInvalidLengthTypes
  11425. }
  11426. postIndex := iNdEx + intStringLen
  11427. if postIndex < 0 {
  11428. return ErrInvalidLengthTypes
  11429. }
  11430. if postIndex > l {
  11431. return io.ErrUnexpectedEOF
  11432. }
  11433. m.Log = string(dAtA[iNdEx:postIndex])
  11434. iNdEx = postIndex
  11435. case 4:
  11436. if wireType != 2 {
  11437. return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
  11438. }
  11439. var stringLen uint64
  11440. for shift := uint(0); ; shift += 7 {
  11441. if shift >= 64 {
  11442. return ErrIntOverflowTypes
  11443. }
  11444. if iNdEx >= l {
  11445. return io.ErrUnexpectedEOF
  11446. }
  11447. b := dAtA[iNdEx]
  11448. iNdEx++
  11449. stringLen |= uint64(b&0x7F) << shift
  11450. if b < 0x80 {
  11451. break
  11452. }
  11453. }
  11454. intStringLen := int(stringLen)
  11455. if intStringLen < 0 {
  11456. return ErrInvalidLengthTypes
  11457. }
  11458. postIndex := iNdEx + intStringLen
  11459. if postIndex < 0 {
  11460. return ErrInvalidLengthTypes
  11461. }
  11462. if postIndex > l {
  11463. return io.ErrUnexpectedEOF
  11464. }
  11465. m.Info = string(dAtA[iNdEx:postIndex])
  11466. iNdEx = postIndex
  11467. case 5:
  11468. if wireType != 0 {
  11469. return fmt.Errorf("proto: wrong wireType = %d for field GasWanted", wireType)
  11470. }
  11471. m.GasWanted = 0
  11472. for shift := uint(0); ; shift += 7 {
  11473. if shift >= 64 {
  11474. return ErrIntOverflowTypes
  11475. }
  11476. if iNdEx >= l {
  11477. return io.ErrUnexpectedEOF
  11478. }
  11479. b := dAtA[iNdEx]
  11480. iNdEx++
  11481. m.GasWanted |= int64(b&0x7F) << shift
  11482. if b < 0x80 {
  11483. break
  11484. }
  11485. }
  11486. case 6:
  11487. if wireType != 0 {
  11488. return fmt.Errorf("proto: wrong wireType = %d for field GasUsed", wireType)
  11489. }
  11490. m.GasUsed = 0
  11491. for shift := uint(0); ; shift += 7 {
  11492. if shift >= 64 {
  11493. return ErrIntOverflowTypes
  11494. }
  11495. if iNdEx >= l {
  11496. return io.ErrUnexpectedEOF
  11497. }
  11498. b := dAtA[iNdEx]
  11499. iNdEx++
  11500. m.GasUsed |= int64(b&0x7F) << shift
  11501. if b < 0x80 {
  11502. break
  11503. }
  11504. }
  11505. case 7:
  11506. if wireType != 2 {
  11507. return fmt.Errorf("proto: wrong wireType = %d for field Events", wireType)
  11508. }
  11509. var msglen int
  11510. for shift := uint(0); ; shift += 7 {
  11511. if shift >= 64 {
  11512. return ErrIntOverflowTypes
  11513. }
  11514. if iNdEx >= l {
  11515. return io.ErrUnexpectedEOF
  11516. }
  11517. b := dAtA[iNdEx]
  11518. iNdEx++
  11519. msglen |= int(b&0x7F) << shift
  11520. if b < 0x80 {
  11521. break
  11522. }
  11523. }
  11524. if msglen < 0 {
  11525. return ErrInvalidLengthTypes
  11526. }
  11527. postIndex := iNdEx + msglen
  11528. if postIndex < 0 {
  11529. return ErrInvalidLengthTypes
  11530. }
  11531. if postIndex > l {
  11532. return io.ErrUnexpectedEOF
  11533. }
  11534. m.Events = append(m.Events, Event{})
  11535. if err := m.Events[len(m.Events)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11536. return err
  11537. }
  11538. iNdEx = postIndex
  11539. case 8:
  11540. if wireType != 2 {
  11541. return fmt.Errorf("proto: wrong wireType = %d for field Codespace", wireType)
  11542. }
  11543. var stringLen uint64
  11544. for shift := uint(0); ; shift += 7 {
  11545. if shift >= 64 {
  11546. return ErrIntOverflowTypes
  11547. }
  11548. if iNdEx >= l {
  11549. return io.ErrUnexpectedEOF
  11550. }
  11551. b := dAtA[iNdEx]
  11552. iNdEx++
  11553. stringLen |= uint64(b&0x7F) << shift
  11554. if b < 0x80 {
  11555. break
  11556. }
  11557. }
  11558. intStringLen := int(stringLen)
  11559. if intStringLen < 0 {
  11560. return ErrInvalidLengthTypes
  11561. }
  11562. postIndex := iNdEx + intStringLen
  11563. if postIndex < 0 {
  11564. return ErrInvalidLengthTypes
  11565. }
  11566. if postIndex > l {
  11567. return io.ErrUnexpectedEOF
  11568. }
  11569. m.Codespace = string(dAtA[iNdEx:postIndex])
  11570. iNdEx = postIndex
  11571. default:
  11572. iNdEx = preIndex
  11573. skippy, err := skipTypes(dAtA[iNdEx:])
  11574. if err != nil {
  11575. return err
  11576. }
  11577. if skippy < 0 {
  11578. return ErrInvalidLengthTypes
  11579. }
  11580. if (iNdEx + skippy) < 0 {
  11581. return ErrInvalidLengthTypes
  11582. }
  11583. if (iNdEx + skippy) > l {
  11584. return io.ErrUnexpectedEOF
  11585. }
  11586. iNdEx += skippy
  11587. }
  11588. }
  11589. if iNdEx > l {
  11590. return io.ErrUnexpectedEOF
  11591. }
  11592. return nil
  11593. }
  11594. func (m *ResponseEndBlock) Unmarshal(dAtA []byte) error {
  11595. l := len(dAtA)
  11596. iNdEx := 0
  11597. for iNdEx < l {
  11598. preIndex := iNdEx
  11599. var wire uint64
  11600. for shift := uint(0); ; shift += 7 {
  11601. if shift >= 64 {
  11602. return ErrIntOverflowTypes
  11603. }
  11604. if iNdEx >= l {
  11605. return io.ErrUnexpectedEOF
  11606. }
  11607. b := dAtA[iNdEx]
  11608. iNdEx++
  11609. wire |= uint64(b&0x7F) << shift
  11610. if b < 0x80 {
  11611. break
  11612. }
  11613. }
  11614. fieldNum := int32(wire >> 3)
  11615. wireType := int(wire & 0x7)
  11616. if wireType == 4 {
  11617. return fmt.Errorf("proto: ResponseEndBlock: wiretype end group for non-group")
  11618. }
  11619. if fieldNum <= 0 {
  11620. return fmt.Errorf("proto: ResponseEndBlock: illegal tag %d (wire type %d)", fieldNum, wire)
  11621. }
  11622. switch fieldNum {
  11623. case 1:
  11624. if wireType != 2 {
  11625. return fmt.Errorf("proto: wrong wireType = %d for field ValidatorUpdates", wireType)
  11626. }
  11627. var msglen int
  11628. for shift := uint(0); ; shift += 7 {
  11629. if shift >= 64 {
  11630. return ErrIntOverflowTypes
  11631. }
  11632. if iNdEx >= l {
  11633. return io.ErrUnexpectedEOF
  11634. }
  11635. b := dAtA[iNdEx]
  11636. iNdEx++
  11637. msglen |= int(b&0x7F) << shift
  11638. if b < 0x80 {
  11639. break
  11640. }
  11641. }
  11642. if msglen < 0 {
  11643. return ErrInvalidLengthTypes
  11644. }
  11645. postIndex := iNdEx + msglen
  11646. if postIndex < 0 {
  11647. return ErrInvalidLengthTypes
  11648. }
  11649. if postIndex > l {
  11650. return io.ErrUnexpectedEOF
  11651. }
  11652. m.ValidatorUpdates = append(m.ValidatorUpdates, ValidatorUpdate{})
  11653. if err := m.ValidatorUpdates[len(m.ValidatorUpdates)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11654. return err
  11655. }
  11656. iNdEx = postIndex
  11657. case 2:
  11658. if wireType != 2 {
  11659. return fmt.Errorf("proto: wrong wireType = %d for field ConsensusParamUpdates", wireType)
  11660. }
  11661. var msglen int
  11662. for shift := uint(0); ; shift += 7 {
  11663. if shift >= 64 {
  11664. return ErrIntOverflowTypes
  11665. }
  11666. if iNdEx >= l {
  11667. return io.ErrUnexpectedEOF
  11668. }
  11669. b := dAtA[iNdEx]
  11670. iNdEx++
  11671. msglen |= int(b&0x7F) << shift
  11672. if b < 0x80 {
  11673. break
  11674. }
  11675. }
  11676. if msglen < 0 {
  11677. return ErrInvalidLengthTypes
  11678. }
  11679. postIndex := iNdEx + msglen
  11680. if postIndex < 0 {
  11681. return ErrInvalidLengthTypes
  11682. }
  11683. if postIndex > l {
  11684. return io.ErrUnexpectedEOF
  11685. }
  11686. if m.ConsensusParamUpdates == nil {
  11687. m.ConsensusParamUpdates = &ConsensusParams{}
  11688. }
  11689. if err := m.ConsensusParamUpdates.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11690. return err
  11691. }
  11692. iNdEx = postIndex
  11693. case 3:
  11694. if wireType != 2 {
  11695. return fmt.Errorf("proto: wrong wireType = %d for field Events", wireType)
  11696. }
  11697. var msglen int
  11698. for shift := uint(0); ; shift += 7 {
  11699. if shift >= 64 {
  11700. return ErrIntOverflowTypes
  11701. }
  11702. if iNdEx >= l {
  11703. return io.ErrUnexpectedEOF
  11704. }
  11705. b := dAtA[iNdEx]
  11706. iNdEx++
  11707. msglen |= int(b&0x7F) << shift
  11708. if b < 0x80 {
  11709. break
  11710. }
  11711. }
  11712. if msglen < 0 {
  11713. return ErrInvalidLengthTypes
  11714. }
  11715. postIndex := iNdEx + msglen
  11716. if postIndex < 0 {
  11717. return ErrInvalidLengthTypes
  11718. }
  11719. if postIndex > l {
  11720. return io.ErrUnexpectedEOF
  11721. }
  11722. m.Events = append(m.Events, Event{})
  11723. if err := m.Events[len(m.Events)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11724. return err
  11725. }
  11726. iNdEx = postIndex
  11727. default:
  11728. iNdEx = preIndex
  11729. skippy, err := skipTypes(dAtA[iNdEx:])
  11730. if err != nil {
  11731. return err
  11732. }
  11733. if skippy < 0 {
  11734. return ErrInvalidLengthTypes
  11735. }
  11736. if (iNdEx + skippy) < 0 {
  11737. return ErrInvalidLengthTypes
  11738. }
  11739. if (iNdEx + skippy) > l {
  11740. return io.ErrUnexpectedEOF
  11741. }
  11742. iNdEx += skippy
  11743. }
  11744. }
  11745. if iNdEx > l {
  11746. return io.ErrUnexpectedEOF
  11747. }
  11748. return nil
  11749. }
  11750. func (m *ResponseCommit) Unmarshal(dAtA []byte) error {
  11751. l := len(dAtA)
  11752. iNdEx := 0
  11753. for iNdEx < l {
  11754. preIndex := iNdEx
  11755. var wire uint64
  11756. for shift := uint(0); ; shift += 7 {
  11757. if shift >= 64 {
  11758. return ErrIntOverflowTypes
  11759. }
  11760. if iNdEx >= l {
  11761. return io.ErrUnexpectedEOF
  11762. }
  11763. b := dAtA[iNdEx]
  11764. iNdEx++
  11765. wire |= uint64(b&0x7F) << shift
  11766. if b < 0x80 {
  11767. break
  11768. }
  11769. }
  11770. fieldNum := int32(wire >> 3)
  11771. wireType := int(wire & 0x7)
  11772. if wireType == 4 {
  11773. return fmt.Errorf("proto: ResponseCommit: wiretype end group for non-group")
  11774. }
  11775. if fieldNum <= 0 {
  11776. return fmt.Errorf("proto: ResponseCommit: illegal tag %d (wire type %d)", fieldNum, wire)
  11777. }
  11778. switch fieldNum {
  11779. case 2:
  11780. if wireType != 2 {
  11781. return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
  11782. }
  11783. var byteLen int
  11784. for shift := uint(0); ; shift += 7 {
  11785. if shift >= 64 {
  11786. return ErrIntOverflowTypes
  11787. }
  11788. if iNdEx >= l {
  11789. return io.ErrUnexpectedEOF
  11790. }
  11791. b := dAtA[iNdEx]
  11792. iNdEx++
  11793. byteLen |= int(b&0x7F) << shift
  11794. if b < 0x80 {
  11795. break
  11796. }
  11797. }
  11798. if byteLen < 0 {
  11799. return ErrInvalidLengthTypes
  11800. }
  11801. postIndex := iNdEx + byteLen
  11802. if postIndex < 0 {
  11803. return ErrInvalidLengthTypes
  11804. }
  11805. if postIndex > l {
  11806. return io.ErrUnexpectedEOF
  11807. }
  11808. m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
  11809. if m.Data == nil {
  11810. m.Data = []byte{}
  11811. }
  11812. iNdEx = postIndex
  11813. case 3:
  11814. if wireType != 0 {
  11815. return fmt.Errorf("proto: wrong wireType = %d for field RetainHeight", wireType)
  11816. }
  11817. m.RetainHeight = 0
  11818. for shift := uint(0); ; shift += 7 {
  11819. if shift >= 64 {
  11820. return ErrIntOverflowTypes
  11821. }
  11822. if iNdEx >= l {
  11823. return io.ErrUnexpectedEOF
  11824. }
  11825. b := dAtA[iNdEx]
  11826. iNdEx++
  11827. m.RetainHeight |= int64(b&0x7F) << shift
  11828. if b < 0x80 {
  11829. break
  11830. }
  11831. }
  11832. default:
  11833. iNdEx = preIndex
  11834. skippy, err := skipTypes(dAtA[iNdEx:])
  11835. if err != nil {
  11836. return err
  11837. }
  11838. if skippy < 0 {
  11839. return ErrInvalidLengthTypes
  11840. }
  11841. if (iNdEx + skippy) < 0 {
  11842. return ErrInvalidLengthTypes
  11843. }
  11844. if (iNdEx + skippy) > l {
  11845. return io.ErrUnexpectedEOF
  11846. }
  11847. iNdEx += skippy
  11848. }
  11849. }
  11850. if iNdEx > l {
  11851. return io.ErrUnexpectedEOF
  11852. }
  11853. return nil
  11854. }
  11855. func (m *ResponseListSnapshots) Unmarshal(dAtA []byte) error {
  11856. l := len(dAtA)
  11857. iNdEx := 0
  11858. for iNdEx < l {
  11859. preIndex := iNdEx
  11860. var wire uint64
  11861. for shift := uint(0); ; shift += 7 {
  11862. if shift >= 64 {
  11863. return ErrIntOverflowTypes
  11864. }
  11865. if iNdEx >= l {
  11866. return io.ErrUnexpectedEOF
  11867. }
  11868. b := dAtA[iNdEx]
  11869. iNdEx++
  11870. wire |= uint64(b&0x7F) << shift
  11871. if b < 0x80 {
  11872. break
  11873. }
  11874. }
  11875. fieldNum := int32(wire >> 3)
  11876. wireType := int(wire & 0x7)
  11877. if wireType == 4 {
  11878. return fmt.Errorf("proto: ResponseListSnapshots: wiretype end group for non-group")
  11879. }
  11880. if fieldNum <= 0 {
  11881. return fmt.Errorf("proto: ResponseListSnapshots: illegal tag %d (wire type %d)", fieldNum, wire)
  11882. }
  11883. switch fieldNum {
  11884. case 1:
  11885. if wireType != 2 {
  11886. return fmt.Errorf("proto: wrong wireType = %d for field Snapshots", wireType)
  11887. }
  11888. var msglen int
  11889. for shift := uint(0); ; shift += 7 {
  11890. if shift >= 64 {
  11891. return ErrIntOverflowTypes
  11892. }
  11893. if iNdEx >= l {
  11894. return io.ErrUnexpectedEOF
  11895. }
  11896. b := dAtA[iNdEx]
  11897. iNdEx++
  11898. msglen |= int(b&0x7F) << shift
  11899. if b < 0x80 {
  11900. break
  11901. }
  11902. }
  11903. if msglen < 0 {
  11904. return ErrInvalidLengthTypes
  11905. }
  11906. postIndex := iNdEx + msglen
  11907. if postIndex < 0 {
  11908. return ErrInvalidLengthTypes
  11909. }
  11910. if postIndex > l {
  11911. return io.ErrUnexpectedEOF
  11912. }
  11913. m.Snapshots = append(m.Snapshots, &Snapshot{})
  11914. if err := m.Snapshots[len(m.Snapshots)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  11915. return err
  11916. }
  11917. iNdEx = postIndex
  11918. default:
  11919. iNdEx = preIndex
  11920. skippy, err := skipTypes(dAtA[iNdEx:])
  11921. if err != nil {
  11922. return err
  11923. }
  11924. if skippy < 0 {
  11925. return ErrInvalidLengthTypes
  11926. }
  11927. if (iNdEx + skippy) < 0 {
  11928. return ErrInvalidLengthTypes
  11929. }
  11930. if (iNdEx + skippy) > l {
  11931. return io.ErrUnexpectedEOF
  11932. }
  11933. iNdEx += skippy
  11934. }
  11935. }
  11936. if iNdEx > l {
  11937. return io.ErrUnexpectedEOF
  11938. }
  11939. return nil
  11940. }
  11941. func (m *ResponseOfferSnapshot) Unmarshal(dAtA []byte) error {
  11942. l := len(dAtA)
  11943. iNdEx := 0
  11944. for iNdEx < l {
  11945. preIndex := iNdEx
  11946. var wire uint64
  11947. for shift := uint(0); ; shift += 7 {
  11948. if shift >= 64 {
  11949. return ErrIntOverflowTypes
  11950. }
  11951. if iNdEx >= l {
  11952. return io.ErrUnexpectedEOF
  11953. }
  11954. b := dAtA[iNdEx]
  11955. iNdEx++
  11956. wire |= uint64(b&0x7F) << shift
  11957. if b < 0x80 {
  11958. break
  11959. }
  11960. }
  11961. fieldNum := int32(wire >> 3)
  11962. wireType := int(wire & 0x7)
  11963. if wireType == 4 {
  11964. return fmt.Errorf("proto: ResponseOfferSnapshot: wiretype end group for non-group")
  11965. }
  11966. if fieldNum <= 0 {
  11967. return fmt.Errorf("proto: ResponseOfferSnapshot: illegal tag %d (wire type %d)", fieldNum, wire)
  11968. }
  11969. switch fieldNum {
  11970. case 1:
  11971. if wireType != 0 {
  11972. return fmt.Errorf("proto: wrong wireType = %d for field Result", wireType)
  11973. }
  11974. m.Result = 0
  11975. for shift := uint(0); ; shift += 7 {
  11976. if shift >= 64 {
  11977. return ErrIntOverflowTypes
  11978. }
  11979. if iNdEx >= l {
  11980. return io.ErrUnexpectedEOF
  11981. }
  11982. b := dAtA[iNdEx]
  11983. iNdEx++
  11984. m.Result |= ResponseOfferSnapshot_Result(b&0x7F) << shift
  11985. if b < 0x80 {
  11986. break
  11987. }
  11988. }
  11989. default:
  11990. iNdEx = preIndex
  11991. skippy, err := skipTypes(dAtA[iNdEx:])
  11992. if err != nil {
  11993. return err
  11994. }
  11995. if skippy < 0 {
  11996. return ErrInvalidLengthTypes
  11997. }
  11998. if (iNdEx + skippy) < 0 {
  11999. return ErrInvalidLengthTypes
  12000. }
  12001. if (iNdEx + skippy) > l {
  12002. return io.ErrUnexpectedEOF
  12003. }
  12004. iNdEx += skippy
  12005. }
  12006. }
  12007. if iNdEx > l {
  12008. return io.ErrUnexpectedEOF
  12009. }
  12010. return nil
  12011. }
  12012. func (m *ResponseLoadSnapshotChunk) Unmarshal(dAtA []byte) error {
  12013. l := len(dAtA)
  12014. iNdEx := 0
  12015. for iNdEx < l {
  12016. preIndex := iNdEx
  12017. var wire uint64
  12018. for shift := uint(0); ; shift += 7 {
  12019. if shift >= 64 {
  12020. return ErrIntOverflowTypes
  12021. }
  12022. if iNdEx >= l {
  12023. return io.ErrUnexpectedEOF
  12024. }
  12025. b := dAtA[iNdEx]
  12026. iNdEx++
  12027. wire |= uint64(b&0x7F) << shift
  12028. if b < 0x80 {
  12029. break
  12030. }
  12031. }
  12032. fieldNum := int32(wire >> 3)
  12033. wireType := int(wire & 0x7)
  12034. if wireType == 4 {
  12035. return fmt.Errorf("proto: ResponseLoadSnapshotChunk: wiretype end group for non-group")
  12036. }
  12037. if fieldNum <= 0 {
  12038. return fmt.Errorf("proto: ResponseLoadSnapshotChunk: illegal tag %d (wire type %d)", fieldNum, wire)
  12039. }
  12040. switch fieldNum {
  12041. case 1:
  12042. if wireType != 2 {
  12043. return fmt.Errorf("proto: wrong wireType = %d for field Chunk", wireType)
  12044. }
  12045. var byteLen int
  12046. for shift := uint(0); ; shift += 7 {
  12047. if shift >= 64 {
  12048. return ErrIntOverflowTypes
  12049. }
  12050. if iNdEx >= l {
  12051. return io.ErrUnexpectedEOF
  12052. }
  12053. b := dAtA[iNdEx]
  12054. iNdEx++
  12055. byteLen |= int(b&0x7F) << shift
  12056. if b < 0x80 {
  12057. break
  12058. }
  12059. }
  12060. if byteLen < 0 {
  12061. return ErrInvalidLengthTypes
  12062. }
  12063. postIndex := iNdEx + byteLen
  12064. if postIndex < 0 {
  12065. return ErrInvalidLengthTypes
  12066. }
  12067. if postIndex > l {
  12068. return io.ErrUnexpectedEOF
  12069. }
  12070. m.Chunk = append(m.Chunk[:0], dAtA[iNdEx:postIndex]...)
  12071. if m.Chunk == nil {
  12072. m.Chunk = []byte{}
  12073. }
  12074. iNdEx = postIndex
  12075. default:
  12076. iNdEx = preIndex
  12077. skippy, err := skipTypes(dAtA[iNdEx:])
  12078. if err != nil {
  12079. return err
  12080. }
  12081. if skippy < 0 {
  12082. return ErrInvalidLengthTypes
  12083. }
  12084. if (iNdEx + skippy) < 0 {
  12085. return ErrInvalidLengthTypes
  12086. }
  12087. if (iNdEx + skippy) > l {
  12088. return io.ErrUnexpectedEOF
  12089. }
  12090. iNdEx += skippy
  12091. }
  12092. }
  12093. if iNdEx > l {
  12094. return io.ErrUnexpectedEOF
  12095. }
  12096. return nil
  12097. }
  12098. func (m *ResponseApplySnapshotChunk) Unmarshal(dAtA []byte) error {
  12099. l := len(dAtA)
  12100. iNdEx := 0
  12101. for iNdEx < l {
  12102. preIndex := iNdEx
  12103. var wire uint64
  12104. for shift := uint(0); ; shift += 7 {
  12105. if shift >= 64 {
  12106. return ErrIntOverflowTypes
  12107. }
  12108. if iNdEx >= l {
  12109. return io.ErrUnexpectedEOF
  12110. }
  12111. b := dAtA[iNdEx]
  12112. iNdEx++
  12113. wire |= uint64(b&0x7F) << shift
  12114. if b < 0x80 {
  12115. break
  12116. }
  12117. }
  12118. fieldNum := int32(wire >> 3)
  12119. wireType := int(wire & 0x7)
  12120. if wireType == 4 {
  12121. return fmt.Errorf("proto: ResponseApplySnapshotChunk: wiretype end group for non-group")
  12122. }
  12123. if fieldNum <= 0 {
  12124. return fmt.Errorf("proto: ResponseApplySnapshotChunk: illegal tag %d (wire type %d)", fieldNum, wire)
  12125. }
  12126. switch fieldNum {
  12127. case 1:
  12128. if wireType != 0 {
  12129. return fmt.Errorf("proto: wrong wireType = %d for field Result", wireType)
  12130. }
  12131. m.Result = 0
  12132. for shift := uint(0); ; shift += 7 {
  12133. if shift >= 64 {
  12134. return ErrIntOverflowTypes
  12135. }
  12136. if iNdEx >= l {
  12137. return io.ErrUnexpectedEOF
  12138. }
  12139. b := dAtA[iNdEx]
  12140. iNdEx++
  12141. m.Result |= ResponseApplySnapshotChunk_Result(b&0x7F) << shift
  12142. if b < 0x80 {
  12143. break
  12144. }
  12145. }
  12146. case 2:
  12147. if wireType == 0 {
  12148. var v uint32
  12149. for shift := uint(0); ; shift += 7 {
  12150. if shift >= 64 {
  12151. return ErrIntOverflowTypes
  12152. }
  12153. if iNdEx >= l {
  12154. return io.ErrUnexpectedEOF
  12155. }
  12156. b := dAtA[iNdEx]
  12157. iNdEx++
  12158. v |= uint32(b&0x7F) << shift
  12159. if b < 0x80 {
  12160. break
  12161. }
  12162. }
  12163. m.RefetchChunks = append(m.RefetchChunks, v)
  12164. } else if wireType == 2 {
  12165. var packedLen int
  12166. for shift := uint(0); ; shift += 7 {
  12167. if shift >= 64 {
  12168. return ErrIntOverflowTypes
  12169. }
  12170. if iNdEx >= l {
  12171. return io.ErrUnexpectedEOF
  12172. }
  12173. b := dAtA[iNdEx]
  12174. iNdEx++
  12175. packedLen |= int(b&0x7F) << shift
  12176. if b < 0x80 {
  12177. break
  12178. }
  12179. }
  12180. if packedLen < 0 {
  12181. return ErrInvalidLengthTypes
  12182. }
  12183. postIndex := iNdEx + packedLen
  12184. if postIndex < 0 {
  12185. return ErrInvalidLengthTypes
  12186. }
  12187. if postIndex > l {
  12188. return io.ErrUnexpectedEOF
  12189. }
  12190. var elementCount int
  12191. var count int
  12192. for _, integer := range dAtA[iNdEx:postIndex] {
  12193. if integer < 128 {
  12194. count++
  12195. }
  12196. }
  12197. elementCount = count
  12198. if elementCount != 0 && len(m.RefetchChunks) == 0 {
  12199. m.RefetchChunks = make([]uint32, 0, elementCount)
  12200. }
  12201. for iNdEx < postIndex {
  12202. var v uint32
  12203. for shift := uint(0); ; shift += 7 {
  12204. if shift >= 64 {
  12205. return ErrIntOverflowTypes
  12206. }
  12207. if iNdEx >= l {
  12208. return io.ErrUnexpectedEOF
  12209. }
  12210. b := dAtA[iNdEx]
  12211. iNdEx++
  12212. v |= uint32(b&0x7F) << shift
  12213. if b < 0x80 {
  12214. break
  12215. }
  12216. }
  12217. m.RefetchChunks = append(m.RefetchChunks, v)
  12218. }
  12219. } else {
  12220. return fmt.Errorf("proto: wrong wireType = %d for field RefetchChunks", wireType)
  12221. }
  12222. case 3:
  12223. if wireType != 2 {
  12224. return fmt.Errorf("proto: wrong wireType = %d for field RejectSenders", wireType)
  12225. }
  12226. var stringLen uint64
  12227. for shift := uint(0); ; shift += 7 {
  12228. if shift >= 64 {
  12229. return ErrIntOverflowTypes
  12230. }
  12231. if iNdEx >= l {
  12232. return io.ErrUnexpectedEOF
  12233. }
  12234. b := dAtA[iNdEx]
  12235. iNdEx++
  12236. stringLen |= uint64(b&0x7F) << shift
  12237. if b < 0x80 {
  12238. break
  12239. }
  12240. }
  12241. intStringLen := int(stringLen)
  12242. if intStringLen < 0 {
  12243. return ErrInvalidLengthTypes
  12244. }
  12245. postIndex := iNdEx + intStringLen
  12246. if postIndex < 0 {
  12247. return ErrInvalidLengthTypes
  12248. }
  12249. if postIndex > l {
  12250. return io.ErrUnexpectedEOF
  12251. }
  12252. m.RejectSenders = append(m.RejectSenders, string(dAtA[iNdEx:postIndex]))
  12253. iNdEx = postIndex
  12254. default:
  12255. iNdEx = preIndex
  12256. skippy, err := skipTypes(dAtA[iNdEx:])
  12257. if err != nil {
  12258. return err
  12259. }
  12260. if skippy < 0 {
  12261. return ErrInvalidLengthTypes
  12262. }
  12263. if (iNdEx + skippy) < 0 {
  12264. return ErrInvalidLengthTypes
  12265. }
  12266. if (iNdEx + skippy) > l {
  12267. return io.ErrUnexpectedEOF
  12268. }
  12269. iNdEx += skippy
  12270. }
  12271. }
  12272. if iNdEx > l {
  12273. return io.ErrUnexpectedEOF
  12274. }
  12275. return nil
  12276. }
  12277. func (m *ConsensusParams) Unmarshal(dAtA []byte) error {
  12278. l := len(dAtA)
  12279. iNdEx := 0
  12280. for iNdEx < l {
  12281. preIndex := iNdEx
  12282. var wire uint64
  12283. for shift := uint(0); ; shift += 7 {
  12284. if shift >= 64 {
  12285. return ErrIntOverflowTypes
  12286. }
  12287. if iNdEx >= l {
  12288. return io.ErrUnexpectedEOF
  12289. }
  12290. b := dAtA[iNdEx]
  12291. iNdEx++
  12292. wire |= uint64(b&0x7F) << shift
  12293. if b < 0x80 {
  12294. break
  12295. }
  12296. }
  12297. fieldNum := int32(wire >> 3)
  12298. wireType := int(wire & 0x7)
  12299. if wireType == 4 {
  12300. return fmt.Errorf("proto: ConsensusParams: wiretype end group for non-group")
  12301. }
  12302. if fieldNum <= 0 {
  12303. return fmt.Errorf("proto: ConsensusParams: illegal tag %d (wire type %d)", fieldNum, wire)
  12304. }
  12305. switch fieldNum {
  12306. case 1:
  12307. if wireType != 2 {
  12308. return fmt.Errorf("proto: wrong wireType = %d for field Block", wireType)
  12309. }
  12310. var msglen int
  12311. for shift := uint(0); ; shift += 7 {
  12312. if shift >= 64 {
  12313. return ErrIntOverflowTypes
  12314. }
  12315. if iNdEx >= l {
  12316. return io.ErrUnexpectedEOF
  12317. }
  12318. b := dAtA[iNdEx]
  12319. iNdEx++
  12320. msglen |= int(b&0x7F) << shift
  12321. if b < 0x80 {
  12322. break
  12323. }
  12324. }
  12325. if msglen < 0 {
  12326. return ErrInvalidLengthTypes
  12327. }
  12328. postIndex := iNdEx + msglen
  12329. if postIndex < 0 {
  12330. return ErrInvalidLengthTypes
  12331. }
  12332. if postIndex > l {
  12333. return io.ErrUnexpectedEOF
  12334. }
  12335. if m.Block == nil {
  12336. m.Block = &BlockParams{}
  12337. }
  12338. if err := m.Block.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  12339. return err
  12340. }
  12341. iNdEx = postIndex
  12342. case 2:
  12343. if wireType != 2 {
  12344. return fmt.Errorf("proto: wrong wireType = %d for field Evidence", wireType)
  12345. }
  12346. var msglen int
  12347. for shift := uint(0); ; shift += 7 {
  12348. if shift >= 64 {
  12349. return ErrIntOverflowTypes
  12350. }
  12351. if iNdEx >= l {
  12352. return io.ErrUnexpectedEOF
  12353. }
  12354. b := dAtA[iNdEx]
  12355. iNdEx++
  12356. msglen |= int(b&0x7F) << shift
  12357. if b < 0x80 {
  12358. break
  12359. }
  12360. }
  12361. if msglen < 0 {
  12362. return ErrInvalidLengthTypes
  12363. }
  12364. postIndex := iNdEx + msglen
  12365. if postIndex < 0 {
  12366. return ErrInvalidLengthTypes
  12367. }
  12368. if postIndex > l {
  12369. return io.ErrUnexpectedEOF
  12370. }
  12371. if m.Evidence == nil {
  12372. m.Evidence = &types1.EvidenceParams{}
  12373. }
  12374. if err := m.Evidence.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  12375. return err
  12376. }
  12377. iNdEx = postIndex
  12378. case 3:
  12379. if wireType != 2 {
  12380. return fmt.Errorf("proto: wrong wireType = %d for field Validator", wireType)
  12381. }
  12382. var msglen int
  12383. for shift := uint(0); ; shift += 7 {
  12384. if shift >= 64 {
  12385. return ErrIntOverflowTypes
  12386. }
  12387. if iNdEx >= l {
  12388. return io.ErrUnexpectedEOF
  12389. }
  12390. b := dAtA[iNdEx]
  12391. iNdEx++
  12392. msglen |= int(b&0x7F) << shift
  12393. if b < 0x80 {
  12394. break
  12395. }
  12396. }
  12397. if msglen < 0 {
  12398. return ErrInvalidLengthTypes
  12399. }
  12400. postIndex := iNdEx + msglen
  12401. if postIndex < 0 {
  12402. return ErrInvalidLengthTypes
  12403. }
  12404. if postIndex > l {
  12405. return io.ErrUnexpectedEOF
  12406. }
  12407. if m.Validator == nil {
  12408. m.Validator = &types1.ValidatorParams{}
  12409. }
  12410. if err := m.Validator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  12411. return err
  12412. }
  12413. iNdEx = postIndex
  12414. case 4:
  12415. if wireType != 2 {
  12416. return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
  12417. }
  12418. var msglen int
  12419. for shift := uint(0); ; shift += 7 {
  12420. if shift >= 64 {
  12421. return ErrIntOverflowTypes
  12422. }
  12423. if iNdEx >= l {
  12424. return io.ErrUnexpectedEOF
  12425. }
  12426. b := dAtA[iNdEx]
  12427. iNdEx++
  12428. msglen |= int(b&0x7F) << shift
  12429. if b < 0x80 {
  12430. break
  12431. }
  12432. }
  12433. if msglen < 0 {
  12434. return ErrInvalidLengthTypes
  12435. }
  12436. postIndex := iNdEx + msglen
  12437. if postIndex < 0 {
  12438. return ErrInvalidLengthTypes
  12439. }
  12440. if postIndex > l {
  12441. return io.ErrUnexpectedEOF
  12442. }
  12443. if m.Version == nil {
  12444. m.Version = &types1.VersionParams{}
  12445. }
  12446. if err := m.Version.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  12447. return err
  12448. }
  12449. iNdEx = postIndex
  12450. default:
  12451. iNdEx = preIndex
  12452. skippy, err := skipTypes(dAtA[iNdEx:])
  12453. if err != nil {
  12454. return err
  12455. }
  12456. if skippy < 0 {
  12457. return ErrInvalidLengthTypes
  12458. }
  12459. if (iNdEx + skippy) < 0 {
  12460. return ErrInvalidLengthTypes
  12461. }
  12462. if (iNdEx + skippy) > l {
  12463. return io.ErrUnexpectedEOF
  12464. }
  12465. iNdEx += skippy
  12466. }
  12467. }
  12468. if iNdEx > l {
  12469. return io.ErrUnexpectedEOF
  12470. }
  12471. return nil
  12472. }
  12473. func (m *BlockParams) Unmarshal(dAtA []byte) error {
  12474. l := len(dAtA)
  12475. iNdEx := 0
  12476. for iNdEx < l {
  12477. preIndex := iNdEx
  12478. var wire uint64
  12479. for shift := uint(0); ; shift += 7 {
  12480. if shift >= 64 {
  12481. return ErrIntOverflowTypes
  12482. }
  12483. if iNdEx >= l {
  12484. return io.ErrUnexpectedEOF
  12485. }
  12486. b := dAtA[iNdEx]
  12487. iNdEx++
  12488. wire |= uint64(b&0x7F) << shift
  12489. if b < 0x80 {
  12490. break
  12491. }
  12492. }
  12493. fieldNum := int32(wire >> 3)
  12494. wireType := int(wire & 0x7)
  12495. if wireType == 4 {
  12496. return fmt.Errorf("proto: BlockParams: wiretype end group for non-group")
  12497. }
  12498. if fieldNum <= 0 {
  12499. return fmt.Errorf("proto: BlockParams: illegal tag %d (wire type %d)", fieldNum, wire)
  12500. }
  12501. switch fieldNum {
  12502. case 1:
  12503. if wireType != 0 {
  12504. return fmt.Errorf("proto: wrong wireType = %d for field MaxBytes", wireType)
  12505. }
  12506. m.MaxBytes = 0
  12507. for shift := uint(0); ; shift += 7 {
  12508. if shift >= 64 {
  12509. return ErrIntOverflowTypes
  12510. }
  12511. if iNdEx >= l {
  12512. return io.ErrUnexpectedEOF
  12513. }
  12514. b := dAtA[iNdEx]
  12515. iNdEx++
  12516. m.MaxBytes |= int64(b&0x7F) << shift
  12517. if b < 0x80 {
  12518. break
  12519. }
  12520. }
  12521. case 2:
  12522. if wireType != 0 {
  12523. return fmt.Errorf("proto: wrong wireType = %d for field MaxGas", wireType)
  12524. }
  12525. m.MaxGas = 0
  12526. for shift := uint(0); ; shift += 7 {
  12527. if shift >= 64 {
  12528. return ErrIntOverflowTypes
  12529. }
  12530. if iNdEx >= l {
  12531. return io.ErrUnexpectedEOF
  12532. }
  12533. b := dAtA[iNdEx]
  12534. iNdEx++
  12535. m.MaxGas |= int64(b&0x7F) << shift
  12536. if b < 0x80 {
  12537. break
  12538. }
  12539. }
  12540. default:
  12541. iNdEx = preIndex
  12542. skippy, err := skipTypes(dAtA[iNdEx:])
  12543. if err != nil {
  12544. return err
  12545. }
  12546. if skippy < 0 {
  12547. return ErrInvalidLengthTypes
  12548. }
  12549. if (iNdEx + skippy) < 0 {
  12550. return ErrInvalidLengthTypes
  12551. }
  12552. if (iNdEx + skippy) > l {
  12553. return io.ErrUnexpectedEOF
  12554. }
  12555. iNdEx += skippy
  12556. }
  12557. }
  12558. if iNdEx > l {
  12559. return io.ErrUnexpectedEOF
  12560. }
  12561. return nil
  12562. }
  12563. func (m *LastCommitInfo) Unmarshal(dAtA []byte) error {
  12564. l := len(dAtA)
  12565. iNdEx := 0
  12566. for iNdEx < l {
  12567. preIndex := iNdEx
  12568. var wire uint64
  12569. for shift := uint(0); ; shift += 7 {
  12570. if shift >= 64 {
  12571. return ErrIntOverflowTypes
  12572. }
  12573. if iNdEx >= l {
  12574. return io.ErrUnexpectedEOF
  12575. }
  12576. b := dAtA[iNdEx]
  12577. iNdEx++
  12578. wire |= uint64(b&0x7F) << shift
  12579. if b < 0x80 {
  12580. break
  12581. }
  12582. }
  12583. fieldNum := int32(wire >> 3)
  12584. wireType := int(wire & 0x7)
  12585. if wireType == 4 {
  12586. return fmt.Errorf("proto: LastCommitInfo: wiretype end group for non-group")
  12587. }
  12588. if fieldNum <= 0 {
  12589. return fmt.Errorf("proto: LastCommitInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  12590. }
  12591. switch fieldNum {
  12592. case 1:
  12593. if wireType != 0 {
  12594. return fmt.Errorf("proto: wrong wireType = %d for field Round", wireType)
  12595. }
  12596. m.Round = 0
  12597. for shift := uint(0); ; shift += 7 {
  12598. if shift >= 64 {
  12599. return ErrIntOverflowTypes
  12600. }
  12601. if iNdEx >= l {
  12602. return io.ErrUnexpectedEOF
  12603. }
  12604. b := dAtA[iNdEx]
  12605. iNdEx++
  12606. m.Round |= int32(b&0x7F) << shift
  12607. if b < 0x80 {
  12608. break
  12609. }
  12610. }
  12611. case 2:
  12612. if wireType != 2 {
  12613. return fmt.Errorf("proto: wrong wireType = %d for field Votes", wireType)
  12614. }
  12615. var msglen int
  12616. for shift := uint(0); ; shift += 7 {
  12617. if shift >= 64 {
  12618. return ErrIntOverflowTypes
  12619. }
  12620. if iNdEx >= l {
  12621. return io.ErrUnexpectedEOF
  12622. }
  12623. b := dAtA[iNdEx]
  12624. iNdEx++
  12625. msglen |= int(b&0x7F) << shift
  12626. if b < 0x80 {
  12627. break
  12628. }
  12629. }
  12630. if msglen < 0 {
  12631. return ErrInvalidLengthTypes
  12632. }
  12633. postIndex := iNdEx + msglen
  12634. if postIndex < 0 {
  12635. return ErrInvalidLengthTypes
  12636. }
  12637. if postIndex > l {
  12638. return io.ErrUnexpectedEOF
  12639. }
  12640. m.Votes = append(m.Votes, VoteInfo{})
  12641. if err := m.Votes[len(m.Votes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  12642. return err
  12643. }
  12644. iNdEx = postIndex
  12645. default:
  12646. iNdEx = preIndex
  12647. skippy, err := skipTypes(dAtA[iNdEx:])
  12648. if err != nil {
  12649. return err
  12650. }
  12651. if skippy < 0 {
  12652. return ErrInvalidLengthTypes
  12653. }
  12654. if (iNdEx + skippy) < 0 {
  12655. return ErrInvalidLengthTypes
  12656. }
  12657. if (iNdEx + skippy) > l {
  12658. return io.ErrUnexpectedEOF
  12659. }
  12660. iNdEx += skippy
  12661. }
  12662. }
  12663. if iNdEx > l {
  12664. return io.ErrUnexpectedEOF
  12665. }
  12666. return nil
  12667. }
  12668. func (m *EventAttribute) Unmarshal(dAtA []byte) error {
  12669. l := len(dAtA)
  12670. iNdEx := 0
  12671. for iNdEx < l {
  12672. preIndex := iNdEx
  12673. var wire uint64
  12674. for shift := uint(0); ; shift += 7 {
  12675. if shift >= 64 {
  12676. return ErrIntOverflowTypes
  12677. }
  12678. if iNdEx >= l {
  12679. return io.ErrUnexpectedEOF
  12680. }
  12681. b := dAtA[iNdEx]
  12682. iNdEx++
  12683. wire |= uint64(b&0x7F) << shift
  12684. if b < 0x80 {
  12685. break
  12686. }
  12687. }
  12688. fieldNum := int32(wire >> 3)
  12689. wireType := int(wire & 0x7)
  12690. if wireType == 4 {
  12691. return fmt.Errorf("proto: EventAttribute: wiretype end group for non-group")
  12692. }
  12693. if fieldNum <= 0 {
  12694. return fmt.Errorf("proto: EventAttribute: illegal tag %d (wire type %d)", fieldNum, wire)
  12695. }
  12696. switch fieldNum {
  12697. case 1:
  12698. if wireType != 2 {
  12699. return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType)
  12700. }
  12701. var byteLen int
  12702. for shift := uint(0); ; shift += 7 {
  12703. if shift >= 64 {
  12704. return ErrIntOverflowTypes
  12705. }
  12706. if iNdEx >= l {
  12707. return io.ErrUnexpectedEOF
  12708. }
  12709. b := dAtA[iNdEx]
  12710. iNdEx++
  12711. byteLen |= int(b&0x7F) << shift
  12712. if b < 0x80 {
  12713. break
  12714. }
  12715. }
  12716. if byteLen < 0 {
  12717. return ErrInvalidLengthTypes
  12718. }
  12719. postIndex := iNdEx + byteLen
  12720. if postIndex < 0 {
  12721. return ErrInvalidLengthTypes
  12722. }
  12723. if postIndex > l {
  12724. return io.ErrUnexpectedEOF
  12725. }
  12726. m.Key = append(m.Key[:0], dAtA[iNdEx:postIndex]...)
  12727. if m.Key == nil {
  12728. m.Key = []byte{}
  12729. }
  12730. iNdEx = postIndex
  12731. case 2:
  12732. if wireType != 2 {
  12733. return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
  12734. }
  12735. var byteLen int
  12736. for shift := uint(0); ; shift += 7 {
  12737. if shift >= 64 {
  12738. return ErrIntOverflowTypes
  12739. }
  12740. if iNdEx >= l {
  12741. return io.ErrUnexpectedEOF
  12742. }
  12743. b := dAtA[iNdEx]
  12744. iNdEx++
  12745. byteLen |= int(b&0x7F) << shift
  12746. if b < 0x80 {
  12747. break
  12748. }
  12749. }
  12750. if byteLen < 0 {
  12751. return ErrInvalidLengthTypes
  12752. }
  12753. postIndex := iNdEx + byteLen
  12754. if postIndex < 0 {
  12755. return ErrInvalidLengthTypes
  12756. }
  12757. if postIndex > l {
  12758. return io.ErrUnexpectedEOF
  12759. }
  12760. m.Value = append(m.Value[:0], dAtA[iNdEx:postIndex]...)
  12761. if m.Value == nil {
  12762. m.Value = []byte{}
  12763. }
  12764. iNdEx = postIndex
  12765. case 3:
  12766. if wireType != 0 {
  12767. return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  12768. }
  12769. var v int
  12770. for shift := uint(0); ; shift += 7 {
  12771. if shift >= 64 {
  12772. return ErrIntOverflowTypes
  12773. }
  12774. if iNdEx >= l {
  12775. return io.ErrUnexpectedEOF
  12776. }
  12777. b := dAtA[iNdEx]
  12778. iNdEx++
  12779. v |= int(b&0x7F) << shift
  12780. if b < 0x80 {
  12781. break
  12782. }
  12783. }
  12784. m.Index = bool(v != 0)
  12785. default:
  12786. iNdEx = preIndex
  12787. skippy, err := skipTypes(dAtA[iNdEx:])
  12788. if err != nil {
  12789. return err
  12790. }
  12791. if skippy < 0 {
  12792. return ErrInvalidLengthTypes
  12793. }
  12794. if (iNdEx + skippy) < 0 {
  12795. return ErrInvalidLengthTypes
  12796. }
  12797. if (iNdEx + skippy) > l {
  12798. return io.ErrUnexpectedEOF
  12799. }
  12800. iNdEx += skippy
  12801. }
  12802. }
  12803. if iNdEx > l {
  12804. return io.ErrUnexpectedEOF
  12805. }
  12806. return nil
  12807. }
  12808. func (m *Event) Unmarshal(dAtA []byte) error {
  12809. l := len(dAtA)
  12810. iNdEx := 0
  12811. for iNdEx < l {
  12812. preIndex := iNdEx
  12813. var wire uint64
  12814. for shift := uint(0); ; shift += 7 {
  12815. if shift >= 64 {
  12816. return ErrIntOverflowTypes
  12817. }
  12818. if iNdEx >= l {
  12819. return io.ErrUnexpectedEOF
  12820. }
  12821. b := dAtA[iNdEx]
  12822. iNdEx++
  12823. wire |= uint64(b&0x7F) << shift
  12824. if b < 0x80 {
  12825. break
  12826. }
  12827. }
  12828. fieldNum := int32(wire >> 3)
  12829. wireType := int(wire & 0x7)
  12830. if wireType == 4 {
  12831. return fmt.Errorf("proto: Event: wiretype end group for non-group")
  12832. }
  12833. if fieldNum <= 0 {
  12834. return fmt.Errorf("proto: Event: illegal tag %d (wire type %d)", fieldNum, wire)
  12835. }
  12836. switch fieldNum {
  12837. case 1:
  12838. if wireType != 2 {
  12839. return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  12840. }
  12841. var stringLen uint64
  12842. for shift := uint(0); ; shift += 7 {
  12843. if shift >= 64 {
  12844. return ErrIntOverflowTypes
  12845. }
  12846. if iNdEx >= l {
  12847. return io.ErrUnexpectedEOF
  12848. }
  12849. b := dAtA[iNdEx]
  12850. iNdEx++
  12851. stringLen |= uint64(b&0x7F) << shift
  12852. if b < 0x80 {
  12853. break
  12854. }
  12855. }
  12856. intStringLen := int(stringLen)
  12857. if intStringLen < 0 {
  12858. return ErrInvalidLengthTypes
  12859. }
  12860. postIndex := iNdEx + intStringLen
  12861. if postIndex < 0 {
  12862. return ErrInvalidLengthTypes
  12863. }
  12864. if postIndex > l {
  12865. return io.ErrUnexpectedEOF
  12866. }
  12867. m.Type = string(dAtA[iNdEx:postIndex])
  12868. iNdEx = postIndex
  12869. case 2:
  12870. if wireType != 2 {
  12871. return fmt.Errorf("proto: wrong wireType = %d for field Attributes", wireType)
  12872. }
  12873. var msglen int
  12874. for shift := uint(0); ; shift += 7 {
  12875. if shift >= 64 {
  12876. return ErrIntOverflowTypes
  12877. }
  12878. if iNdEx >= l {
  12879. return io.ErrUnexpectedEOF
  12880. }
  12881. b := dAtA[iNdEx]
  12882. iNdEx++
  12883. msglen |= int(b&0x7F) << shift
  12884. if b < 0x80 {
  12885. break
  12886. }
  12887. }
  12888. if msglen < 0 {
  12889. return ErrInvalidLengthTypes
  12890. }
  12891. postIndex := iNdEx + msglen
  12892. if postIndex < 0 {
  12893. return ErrInvalidLengthTypes
  12894. }
  12895. if postIndex > l {
  12896. return io.ErrUnexpectedEOF
  12897. }
  12898. m.Attributes = append(m.Attributes, EventAttribute{})
  12899. if err := m.Attributes[len(m.Attributes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  12900. return err
  12901. }
  12902. iNdEx = postIndex
  12903. default:
  12904. iNdEx = preIndex
  12905. skippy, err := skipTypes(dAtA[iNdEx:])
  12906. if err != nil {
  12907. return err
  12908. }
  12909. if skippy < 0 {
  12910. return ErrInvalidLengthTypes
  12911. }
  12912. if (iNdEx + skippy) < 0 {
  12913. return ErrInvalidLengthTypes
  12914. }
  12915. if (iNdEx + skippy) > l {
  12916. return io.ErrUnexpectedEOF
  12917. }
  12918. iNdEx += skippy
  12919. }
  12920. }
  12921. if iNdEx > l {
  12922. return io.ErrUnexpectedEOF
  12923. }
  12924. return nil
  12925. }
  12926. func (m *TxResult) Unmarshal(dAtA []byte) error {
  12927. l := len(dAtA)
  12928. iNdEx := 0
  12929. for iNdEx < l {
  12930. preIndex := iNdEx
  12931. var wire uint64
  12932. for shift := uint(0); ; shift += 7 {
  12933. if shift >= 64 {
  12934. return ErrIntOverflowTypes
  12935. }
  12936. if iNdEx >= l {
  12937. return io.ErrUnexpectedEOF
  12938. }
  12939. b := dAtA[iNdEx]
  12940. iNdEx++
  12941. wire |= uint64(b&0x7F) << shift
  12942. if b < 0x80 {
  12943. break
  12944. }
  12945. }
  12946. fieldNum := int32(wire >> 3)
  12947. wireType := int(wire & 0x7)
  12948. if wireType == 4 {
  12949. return fmt.Errorf("proto: TxResult: wiretype end group for non-group")
  12950. }
  12951. if fieldNum <= 0 {
  12952. return fmt.Errorf("proto: TxResult: illegal tag %d (wire type %d)", fieldNum, wire)
  12953. }
  12954. switch fieldNum {
  12955. case 1:
  12956. if wireType != 0 {
  12957. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  12958. }
  12959. m.Height = 0
  12960. for shift := uint(0); ; shift += 7 {
  12961. if shift >= 64 {
  12962. return ErrIntOverflowTypes
  12963. }
  12964. if iNdEx >= l {
  12965. return io.ErrUnexpectedEOF
  12966. }
  12967. b := dAtA[iNdEx]
  12968. iNdEx++
  12969. m.Height |= int64(b&0x7F) << shift
  12970. if b < 0x80 {
  12971. break
  12972. }
  12973. }
  12974. case 2:
  12975. if wireType != 0 {
  12976. return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  12977. }
  12978. m.Index = 0
  12979. for shift := uint(0); ; shift += 7 {
  12980. if shift >= 64 {
  12981. return ErrIntOverflowTypes
  12982. }
  12983. if iNdEx >= l {
  12984. return io.ErrUnexpectedEOF
  12985. }
  12986. b := dAtA[iNdEx]
  12987. iNdEx++
  12988. m.Index |= uint32(b&0x7F) << shift
  12989. if b < 0x80 {
  12990. break
  12991. }
  12992. }
  12993. case 3:
  12994. if wireType != 2 {
  12995. return fmt.Errorf("proto: wrong wireType = %d for field Tx", wireType)
  12996. }
  12997. var byteLen int
  12998. for shift := uint(0); ; shift += 7 {
  12999. if shift >= 64 {
  13000. return ErrIntOverflowTypes
  13001. }
  13002. if iNdEx >= l {
  13003. return io.ErrUnexpectedEOF
  13004. }
  13005. b := dAtA[iNdEx]
  13006. iNdEx++
  13007. byteLen |= int(b&0x7F) << shift
  13008. if b < 0x80 {
  13009. break
  13010. }
  13011. }
  13012. if byteLen < 0 {
  13013. return ErrInvalidLengthTypes
  13014. }
  13015. postIndex := iNdEx + byteLen
  13016. if postIndex < 0 {
  13017. return ErrInvalidLengthTypes
  13018. }
  13019. if postIndex > l {
  13020. return io.ErrUnexpectedEOF
  13021. }
  13022. m.Tx = append(m.Tx[:0], dAtA[iNdEx:postIndex]...)
  13023. if m.Tx == nil {
  13024. m.Tx = []byte{}
  13025. }
  13026. iNdEx = postIndex
  13027. case 4:
  13028. if wireType != 2 {
  13029. return fmt.Errorf("proto: wrong wireType = %d for field Result", wireType)
  13030. }
  13031. var msglen int
  13032. for shift := uint(0); ; shift += 7 {
  13033. if shift >= 64 {
  13034. return ErrIntOverflowTypes
  13035. }
  13036. if iNdEx >= l {
  13037. return io.ErrUnexpectedEOF
  13038. }
  13039. b := dAtA[iNdEx]
  13040. iNdEx++
  13041. msglen |= int(b&0x7F) << shift
  13042. if b < 0x80 {
  13043. break
  13044. }
  13045. }
  13046. if msglen < 0 {
  13047. return ErrInvalidLengthTypes
  13048. }
  13049. postIndex := iNdEx + msglen
  13050. if postIndex < 0 {
  13051. return ErrInvalidLengthTypes
  13052. }
  13053. if postIndex > l {
  13054. return io.ErrUnexpectedEOF
  13055. }
  13056. if err := m.Result.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  13057. return err
  13058. }
  13059. iNdEx = postIndex
  13060. default:
  13061. iNdEx = preIndex
  13062. skippy, err := skipTypes(dAtA[iNdEx:])
  13063. if err != nil {
  13064. return err
  13065. }
  13066. if skippy < 0 {
  13067. return ErrInvalidLengthTypes
  13068. }
  13069. if (iNdEx + skippy) < 0 {
  13070. return ErrInvalidLengthTypes
  13071. }
  13072. if (iNdEx + skippy) > l {
  13073. return io.ErrUnexpectedEOF
  13074. }
  13075. iNdEx += skippy
  13076. }
  13077. }
  13078. if iNdEx > l {
  13079. return io.ErrUnexpectedEOF
  13080. }
  13081. return nil
  13082. }
  13083. func (m *Validator) Unmarshal(dAtA []byte) error {
  13084. l := len(dAtA)
  13085. iNdEx := 0
  13086. for iNdEx < l {
  13087. preIndex := iNdEx
  13088. var wire uint64
  13089. for shift := uint(0); ; shift += 7 {
  13090. if shift >= 64 {
  13091. return ErrIntOverflowTypes
  13092. }
  13093. if iNdEx >= l {
  13094. return io.ErrUnexpectedEOF
  13095. }
  13096. b := dAtA[iNdEx]
  13097. iNdEx++
  13098. wire |= uint64(b&0x7F) << shift
  13099. if b < 0x80 {
  13100. break
  13101. }
  13102. }
  13103. fieldNum := int32(wire >> 3)
  13104. wireType := int(wire & 0x7)
  13105. if wireType == 4 {
  13106. return fmt.Errorf("proto: Validator: wiretype end group for non-group")
  13107. }
  13108. if fieldNum <= 0 {
  13109. return fmt.Errorf("proto: Validator: illegal tag %d (wire type %d)", fieldNum, wire)
  13110. }
  13111. switch fieldNum {
  13112. case 1:
  13113. if wireType != 2 {
  13114. return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType)
  13115. }
  13116. var byteLen int
  13117. for shift := uint(0); ; shift += 7 {
  13118. if shift >= 64 {
  13119. return ErrIntOverflowTypes
  13120. }
  13121. if iNdEx >= l {
  13122. return io.ErrUnexpectedEOF
  13123. }
  13124. b := dAtA[iNdEx]
  13125. iNdEx++
  13126. byteLen |= int(b&0x7F) << shift
  13127. if b < 0x80 {
  13128. break
  13129. }
  13130. }
  13131. if byteLen < 0 {
  13132. return ErrInvalidLengthTypes
  13133. }
  13134. postIndex := iNdEx + byteLen
  13135. if postIndex < 0 {
  13136. return ErrInvalidLengthTypes
  13137. }
  13138. if postIndex > l {
  13139. return io.ErrUnexpectedEOF
  13140. }
  13141. m.Address = append(m.Address[:0], dAtA[iNdEx:postIndex]...)
  13142. if m.Address == nil {
  13143. m.Address = []byte{}
  13144. }
  13145. iNdEx = postIndex
  13146. case 3:
  13147. if wireType != 0 {
  13148. return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType)
  13149. }
  13150. m.Power = 0
  13151. for shift := uint(0); ; shift += 7 {
  13152. if shift >= 64 {
  13153. return ErrIntOverflowTypes
  13154. }
  13155. if iNdEx >= l {
  13156. return io.ErrUnexpectedEOF
  13157. }
  13158. b := dAtA[iNdEx]
  13159. iNdEx++
  13160. m.Power |= int64(b&0x7F) << shift
  13161. if b < 0x80 {
  13162. break
  13163. }
  13164. }
  13165. default:
  13166. iNdEx = preIndex
  13167. skippy, err := skipTypes(dAtA[iNdEx:])
  13168. if err != nil {
  13169. return err
  13170. }
  13171. if skippy < 0 {
  13172. return ErrInvalidLengthTypes
  13173. }
  13174. if (iNdEx + skippy) < 0 {
  13175. return ErrInvalidLengthTypes
  13176. }
  13177. if (iNdEx + skippy) > l {
  13178. return io.ErrUnexpectedEOF
  13179. }
  13180. iNdEx += skippy
  13181. }
  13182. }
  13183. if iNdEx > l {
  13184. return io.ErrUnexpectedEOF
  13185. }
  13186. return nil
  13187. }
  13188. func (m *ValidatorUpdate) Unmarshal(dAtA []byte) error {
  13189. l := len(dAtA)
  13190. iNdEx := 0
  13191. for iNdEx < l {
  13192. preIndex := iNdEx
  13193. var wire uint64
  13194. for shift := uint(0); ; shift += 7 {
  13195. if shift >= 64 {
  13196. return ErrIntOverflowTypes
  13197. }
  13198. if iNdEx >= l {
  13199. return io.ErrUnexpectedEOF
  13200. }
  13201. b := dAtA[iNdEx]
  13202. iNdEx++
  13203. wire |= uint64(b&0x7F) << shift
  13204. if b < 0x80 {
  13205. break
  13206. }
  13207. }
  13208. fieldNum := int32(wire >> 3)
  13209. wireType := int(wire & 0x7)
  13210. if wireType == 4 {
  13211. return fmt.Errorf("proto: ValidatorUpdate: wiretype end group for non-group")
  13212. }
  13213. if fieldNum <= 0 {
  13214. return fmt.Errorf("proto: ValidatorUpdate: illegal tag %d (wire type %d)", fieldNum, wire)
  13215. }
  13216. switch fieldNum {
  13217. case 1:
  13218. if wireType != 2 {
  13219. return fmt.Errorf("proto: wrong wireType = %d for field PubKey", wireType)
  13220. }
  13221. var msglen int
  13222. for shift := uint(0); ; shift += 7 {
  13223. if shift >= 64 {
  13224. return ErrIntOverflowTypes
  13225. }
  13226. if iNdEx >= l {
  13227. return io.ErrUnexpectedEOF
  13228. }
  13229. b := dAtA[iNdEx]
  13230. iNdEx++
  13231. msglen |= int(b&0x7F) << shift
  13232. if b < 0x80 {
  13233. break
  13234. }
  13235. }
  13236. if msglen < 0 {
  13237. return ErrInvalidLengthTypes
  13238. }
  13239. postIndex := iNdEx + msglen
  13240. if postIndex < 0 {
  13241. return ErrInvalidLengthTypes
  13242. }
  13243. if postIndex > l {
  13244. return io.ErrUnexpectedEOF
  13245. }
  13246. if err := m.PubKey.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  13247. return err
  13248. }
  13249. iNdEx = postIndex
  13250. case 2:
  13251. if wireType != 0 {
  13252. return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType)
  13253. }
  13254. m.Power = 0
  13255. for shift := uint(0); ; shift += 7 {
  13256. if shift >= 64 {
  13257. return ErrIntOverflowTypes
  13258. }
  13259. if iNdEx >= l {
  13260. return io.ErrUnexpectedEOF
  13261. }
  13262. b := dAtA[iNdEx]
  13263. iNdEx++
  13264. m.Power |= int64(b&0x7F) << shift
  13265. if b < 0x80 {
  13266. break
  13267. }
  13268. }
  13269. default:
  13270. iNdEx = preIndex
  13271. skippy, err := skipTypes(dAtA[iNdEx:])
  13272. if err != nil {
  13273. return err
  13274. }
  13275. if skippy < 0 {
  13276. return ErrInvalidLengthTypes
  13277. }
  13278. if (iNdEx + skippy) < 0 {
  13279. return ErrInvalidLengthTypes
  13280. }
  13281. if (iNdEx + skippy) > l {
  13282. return io.ErrUnexpectedEOF
  13283. }
  13284. iNdEx += skippy
  13285. }
  13286. }
  13287. if iNdEx > l {
  13288. return io.ErrUnexpectedEOF
  13289. }
  13290. return nil
  13291. }
  13292. func (m *VoteInfo) Unmarshal(dAtA []byte) error {
  13293. l := len(dAtA)
  13294. iNdEx := 0
  13295. for iNdEx < l {
  13296. preIndex := iNdEx
  13297. var wire uint64
  13298. for shift := uint(0); ; shift += 7 {
  13299. if shift >= 64 {
  13300. return ErrIntOverflowTypes
  13301. }
  13302. if iNdEx >= l {
  13303. return io.ErrUnexpectedEOF
  13304. }
  13305. b := dAtA[iNdEx]
  13306. iNdEx++
  13307. wire |= uint64(b&0x7F) << shift
  13308. if b < 0x80 {
  13309. break
  13310. }
  13311. }
  13312. fieldNum := int32(wire >> 3)
  13313. wireType := int(wire & 0x7)
  13314. if wireType == 4 {
  13315. return fmt.Errorf("proto: VoteInfo: wiretype end group for non-group")
  13316. }
  13317. if fieldNum <= 0 {
  13318. return fmt.Errorf("proto: VoteInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  13319. }
  13320. switch fieldNum {
  13321. case 1:
  13322. if wireType != 2 {
  13323. return fmt.Errorf("proto: wrong wireType = %d for field Validator", wireType)
  13324. }
  13325. var msglen int
  13326. for shift := uint(0); ; shift += 7 {
  13327. if shift >= 64 {
  13328. return ErrIntOverflowTypes
  13329. }
  13330. if iNdEx >= l {
  13331. return io.ErrUnexpectedEOF
  13332. }
  13333. b := dAtA[iNdEx]
  13334. iNdEx++
  13335. msglen |= int(b&0x7F) << shift
  13336. if b < 0x80 {
  13337. break
  13338. }
  13339. }
  13340. if msglen < 0 {
  13341. return ErrInvalidLengthTypes
  13342. }
  13343. postIndex := iNdEx + msglen
  13344. if postIndex < 0 {
  13345. return ErrInvalidLengthTypes
  13346. }
  13347. if postIndex > l {
  13348. return io.ErrUnexpectedEOF
  13349. }
  13350. if err := m.Validator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  13351. return err
  13352. }
  13353. iNdEx = postIndex
  13354. case 2:
  13355. if wireType != 0 {
  13356. return fmt.Errorf("proto: wrong wireType = %d for field SignedLastBlock", wireType)
  13357. }
  13358. var v int
  13359. for shift := uint(0); ; shift += 7 {
  13360. if shift >= 64 {
  13361. return ErrIntOverflowTypes
  13362. }
  13363. if iNdEx >= l {
  13364. return io.ErrUnexpectedEOF
  13365. }
  13366. b := dAtA[iNdEx]
  13367. iNdEx++
  13368. v |= int(b&0x7F) << shift
  13369. if b < 0x80 {
  13370. break
  13371. }
  13372. }
  13373. m.SignedLastBlock = bool(v != 0)
  13374. default:
  13375. iNdEx = preIndex
  13376. skippy, err := skipTypes(dAtA[iNdEx:])
  13377. if err != nil {
  13378. return err
  13379. }
  13380. if skippy < 0 {
  13381. return ErrInvalidLengthTypes
  13382. }
  13383. if (iNdEx + skippy) < 0 {
  13384. return ErrInvalidLengthTypes
  13385. }
  13386. if (iNdEx + skippy) > l {
  13387. return io.ErrUnexpectedEOF
  13388. }
  13389. iNdEx += skippy
  13390. }
  13391. }
  13392. if iNdEx > l {
  13393. return io.ErrUnexpectedEOF
  13394. }
  13395. return nil
  13396. }
  13397. func (m *Evidence) Unmarshal(dAtA []byte) error {
  13398. l := len(dAtA)
  13399. iNdEx := 0
  13400. for iNdEx < l {
  13401. preIndex := iNdEx
  13402. var wire uint64
  13403. for shift := uint(0); ; shift += 7 {
  13404. if shift >= 64 {
  13405. return ErrIntOverflowTypes
  13406. }
  13407. if iNdEx >= l {
  13408. return io.ErrUnexpectedEOF
  13409. }
  13410. b := dAtA[iNdEx]
  13411. iNdEx++
  13412. wire |= uint64(b&0x7F) << shift
  13413. if b < 0x80 {
  13414. break
  13415. }
  13416. }
  13417. fieldNum := int32(wire >> 3)
  13418. wireType := int(wire & 0x7)
  13419. if wireType == 4 {
  13420. return fmt.Errorf("proto: Evidence: wiretype end group for non-group")
  13421. }
  13422. if fieldNum <= 0 {
  13423. return fmt.Errorf("proto: Evidence: illegal tag %d (wire type %d)", fieldNum, wire)
  13424. }
  13425. switch fieldNum {
  13426. case 1:
  13427. if wireType != 2 {
  13428. return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  13429. }
  13430. var stringLen uint64
  13431. for shift := uint(0); ; shift += 7 {
  13432. if shift >= 64 {
  13433. return ErrIntOverflowTypes
  13434. }
  13435. if iNdEx >= l {
  13436. return io.ErrUnexpectedEOF
  13437. }
  13438. b := dAtA[iNdEx]
  13439. iNdEx++
  13440. stringLen |= uint64(b&0x7F) << shift
  13441. if b < 0x80 {
  13442. break
  13443. }
  13444. }
  13445. intStringLen := int(stringLen)
  13446. if intStringLen < 0 {
  13447. return ErrInvalidLengthTypes
  13448. }
  13449. postIndex := iNdEx + intStringLen
  13450. if postIndex < 0 {
  13451. return ErrInvalidLengthTypes
  13452. }
  13453. if postIndex > l {
  13454. return io.ErrUnexpectedEOF
  13455. }
  13456. m.Type = string(dAtA[iNdEx:postIndex])
  13457. iNdEx = postIndex
  13458. case 2:
  13459. if wireType != 2 {
  13460. return fmt.Errorf("proto: wrong wireType = %d for field Validator", wireType)
  13461. }
  13462. var msglen int
  13463. for shift := uint(0); ; shift += 7 {
  13464. if shift >= 64 {
  13465. return ErrIntOverflowTypes
  13466. }
  13467. if iNdEx >= l {
  13468. return io.ErrUnexpectedEOF
  13469. }
  13470. b := dAtA[iNdEx]
  13471. iNdEx++
  13472. msglen |= int(b&0x7F) << shift
  13473. if b < 0x80 {
  13474. break
  13475. }
  13476. }
  13477. if msglen < 0 {
  13478. return ErrInvalidLengthTypes
  13479. }
  13480. postIndex := iNdEx + msglen
  13481. if postIndex < 0 {
  13482. return ErrInvalidLengthTypes
  13483. }
  13484. if postIndex > l {
  13485. return io.ErrUnexpectedEOF
  13486. }
  13487. if err := m.Validator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  13488. return err
  13489. }
  13490. iNdEx = postIndex
  13491. case 3:
  13492. if wireType != 0 {
  13493. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  13494. }
  13495. m.Height = 0
  13496. for shift := uint(0); ; shift += 7 {
  13497. if shift >= 64 {
  13498. return ErrIntOverflowTypes
  13499. }
  13500. if iNdEx >= l {
  13501. return io.ErrUnexpectedEOF
  13502. }
  13503. b := dAtA[iNdEx]
  13504. iNdEx++
  13505. m.Height |= int64(b&0x7F) << shift
  13506. if b < 0x80 {
  13507. break
  13508. }
  13509. }
  13510. case 4:
  13511. if wireType != 2 {
  13512. return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
  13513. }
  13514. var msglen int
  13515. for shift := uint(0); ; shift += 7 {
  13516. if shift >= 64 {
  13517. return ErrIntOverflowTypes
  13518. }
  13519. if iNdEx >= l {
  13520. return io.ErrUnexpectedEOF
  13521. }
  13522. b := dAtA[iNdEx]
  13523. iNdEx++
  13524. msglen |= int(b&0x7F) << shift
  13525. if b < 0x80 {
  13526. break
  13527. }
  13528. }
  13529. if msglen < 0 {
  13530. return ErrInvalidLengthTypes
  13531. }
  13532. postIndex := iNdEx + msglen
  13533. if postIndex < 0 {
  13534. return ErrInvalidLengthTypes
  13535. }
  13536. if postIndex > l {
  13537. return io.ErrUnexpectedEOF
  13538. }
  13539. if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.Time, dAtA[iNdEx:postIndex]); err != nil {
  13540. return err
  13541. }
  13542. iNdEx = postIndex
  13543. case 5:
  13544. if wireType != 0 {
  13545. return fmt.Errorf("proto: wrong wireType = %d for field TotalVotingPower", wireType)
  13546. }
  13547. m.TotalVotingPower = 0
  13548. for shift := uint(0); ; shift += 7 {
  13549. if shift >= 64 {
  13550. return ErrIntOverflowTypes
  13551. }
  13552. if iNdEx >= l {
  13553. return io.ErrUnexpectedEOF
  13554. }
  13555. b := dAtA[iNdEx]
  13556. iNdEx++
  13557. m.TotalVotingPower |= int64(b&0x7F) << shift
  13558. if b < 0x80 {
  13559. break
  13560. }
  13561. }
  13562. default:
  13563. iNdEx = preIndex
  13564. skippy, err := skipTypes(dAtA[iNdEx:])
  13565. if err != nil {
  13566. return err
  13567. }
  13568. if skippy < 0 {
  13569. return ErrInvalidLengthTypes
  13570. }
  13571. if (iNdEx + skippy) < 0 {
  13572. return ErrInvalidLengthTypes
  13573. }
  13574. if (iNdEx + skippy) > l {
  13575. return io.ErrUnexpectedEOF
  13576. }
  13577. iNdEx += skippy
  13578. }
  13579. }
  13580. if iNdEx > l {
  13581. return io.ErrUnexpectedEOF
  13582. }
  13583. return nil
  13584. }
  13585. func (m *Snapshot) Unmarshal(dAtA []byte) error {
  13586. l := len(dAtA)
  13587. iNdEx := 0
  13588. for iNdEx < l {
  13589. preIndex := iNdEx
  13590. var wire uint64
  13591. for shift := uint(0); ; shift += 7 {
  13592. if shift >= 64 {
  13593. return ErrIntOverflowTypes
  13594. }
  13595. if iNdEx >= l {
  13596. return io.ErrUnexpectedEOF
  13597. }
  13598. b := dAtA[iNdEx]
  13599. iNdEx++
  13600. wire |= uint64(b&0x7F) << shift
  13601. if b < 0x80 {
  13602. break
  13603. }
  13604. }
  13605. fieldNum := int32(wire >> 3)
  13606. wireType := int(wire & 0x7)
  13607. if wireType == 4 {
  13608. return fmt.Errorf("proto: Snapshot: wiretype end group for non-group")
  13609. }
  13610. if fieldNum <= 0 {
  13611. return fmt.Errorf("proto: Snapshot: illegal tag %d (wire type %d)", fieldNum, wire)
  13612. }
  13613. switch fieldNum {
  13614. case 1:
  13615. if wireType != 0 {
  13616. return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
  13617. }
  13618. m.Height = 0
  13619. for shift := uint(0); ; shift += 7 {
  13620. if shift >= 64 {
  13621. return ErrIntOverflowTypes
  13622. }
  13623. if iNdEx >= l {
  13624. return io.ErrUnexpectedEOF
  13625. }
  13626. b := dAtA[iNdEx]
  13627. iNdEx++
  13628. m.Height |= uint64(b&0x7F) << shift
  13629. if b < 0x80 {
  13630. break
  13631. }
  13632. }
  13633. case 2:
  13634. if wireType != 0 {
  13635. return fmt.Errorf("proto: wrong wireType = %d for field Format", wireType)
  13636. }
  13637. m.Format = 0
  13638. for shift := uint(0); ; shift += 7 {
  13639. if shift >= 64 {
  13640. return ErrIntOverflowTypes
  13641. }
  13642. if iNdEx >= l {
  13643. return io.ErrUnexpectedEOF
  13644. }
  13645. b := dAtA[iNdEx]
  13646. iNdEx++
  13647. m.Format |= uint32(b&0x7F) << shift
  13648. if b < 0x80 {
  13649. break
  13650. }
  13651. }
  13652. case 3:
  13653. if wireType != 0 {
  13654. return fmt.Errorf("proto: wrong wireType = %d for field Chunks", wireType)
  13655. }
  13656. m.Chunks = 0
  13657. for shift := uint(0); ; shift += 7 {
  13658. if shift >= 64 {
  13659. return ErrIntOverflowTypes
  13660. }
  13661. if iNdEx >= l {
  13662. return io.ErrUnexpectedEOF
  13663. }
  13664. b := dAtA[iNdEx]
  13665. iNdEx++
  13666. m.Chunks |= uint32(b&0x7F) << shift
  13667. if b < 0x80 {
  13668. break
  13669. }
  13670. }
  13671. case 4:
  13672. if wireType != 2 {
  13673. return fmt.Errorf("proto: wrong wireType = %d for field Hash", wireType)
  13674. }
  13675. var byteLen int
  13676. for shift := uint(0); ; shift += 7 {
  13677. if shift >= 64 {
  13678. return ErrIntOverflowTypes
  13679. }
  13680. if iNdEx >= l {
  13681. return io.ErrUnexpectedEOF
  13682. }
  13683. b := dAtA[iNdEx]
  13684. iNdEx++
  13685. byteLen |= int(b&0x7F) << shift
  13686. if b < 0x80 {
  13687. break
  13688. }
  13689. }
  13690. if byteLen < 0 {
  13691. return ErrInvalidLengthTypes
  13692. }
  13693. postIndex := iNdEx + byteLen
  13694. if postIndex < 0 {
  13695. return ErrInvalidLengthTypes
  13696. }
  13697. if postIndex > l {
  13698. return io.ErrUnexpectedEOF
  13699. }
  13700. m.Hash = append(m.Hash[:0], dAtA[iNdEx:postIndex]...)
  13701. if m.Hash == nil {
  13702. m.Hash = []byte{}
  13703. }
  13704. iNdEx = postIndex
  13705. case 5:
  13706. if wireType != 2 {
  13707. return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType)
  13708. }
  13709. var byteLen int
  13710. for shift := uint(0); ; shift += 7 {
  13711. if shift >= 64 {
  13712. return ErrIntOverflowTypes
  13713. }
  13714. if iNdEx >= l {
  13715. return io.ErrUnexpectedEOF
  13716. }
  13717. b := dAtA[iNdEx]
  13718. iNdEx++
  13719. byteLen |= int(b&0x7F) << shift
  13720. if b < 0x80 {
  13721. break
  13722. }
  13723. }
  13724. if byteLen < 0 {
  13725. return ErrInvalidLengthTypes
  13726. }
  13727. postIndex := iNdEx + byteLen
  13728. if postIndex < 0 {
  13729. return ErrInvalidLengthTypes
  13730. }
  13731. if postIndex > l {
  13732. return io.ErrUnexpectedEOF
  13733. }
  13734. m.Metadata = append(m.Metadata[:0], dAtA[iNdEx:postIndex]...)
  13735. if m.Metadata == nil {
  13736. m.Metadata = []byte{}
  13737. }
  13738. iNdEx = postIndex
  13739. default:
  13740. iNdEx = preIndex
  13741. skippy, err := skipTypes(dAtA[iNdEx:])
  13742. if err != nil {
  13743. return err
  13744. }
  13745. if skippy < 0 {
  13746. return ErrInvalidLengthTypes
  13747. }
  13748. if (iNdEx + skippy) < 0 {
  13749. return ErrInvalidLengthTypes
  13750. }
  13751. if (iNdEx + skippy) > l {
  13752. return io.ErrUnexpectedEOF
  13753. }
  13754. iNdEx += skippy
  13755. }
  13756. }
  13757. if iNdEx > l {
  13758. return io.ErrUnexpectedEOF
  13759. }
  13760. return nil
  13761. }
  13762. func skipTypes(dAtA []byte) (n int, err error) {
  13763. l := len(dAtA)
  13764. iNdEx := 0
  13765. depth := 0
  13766. for iNdEx < l {
  13767. var wire uint64
  13768. for shift := uint(0); ; shift += 7 {
  13769. if shift >= 64 {
  13770. return 0, ErrIntOverflowTypes
  13771. }
  13772. if iNdEx >= l {
  13773. return 0, io.ErrUnexpectedEOF
  13774. }
  13775. b := dAtA[iNdEx]
  13776. iNdEx++
  13777. wire |= (uint64(b) & 0x7F) << shift
  13778. if b < 0x80 {
  13779. break
  13780. }
  13781. }
  13782. wireType := int(wire & 0x7)
  13783. switch wireType {
  13784. case 0:
  13785. for shift := uint(0); ; shift += 7 {
  13786. if shift >= 64 {
  13787. return 0, ErrIntOverflowTypes
  13788. }
  13789. if iNdEx >= l {
  13790. return 0, io.ErrUnexpectedEOF
  13791. }
  13792. iNdEx++
  13793. if dAtA[iNdEx-1] < 0x80 {
  13794. break
  13795. }
  13796. }
  13797. case 1:
  13798. iNdEx += 8
  13799. case 2:
  13800. var length int
  13801. for shift := uint(0); ; shift += 7 {
  13802. if shift >= 64 {
  13803. return 0, ErrIntOverflowTypes
  13804. }
  13805. if iNdEx >= l {
  13806. return 0, io.ErrUnexpectedEOF
  13807. }
  13808. b := dAtA[iNdEx]
  13809. iNdEx++
  13810. length |= (int(b) & 0x7F) << shift
  13811. if b < 0x80 {
  13812. break
  13813. }
  13814. }
  13815. if length < 0 {
  13816. return 0, ErrInvalidLengthTypes
  13817. }
  13818. iNdEx += length
  13819. case 3:
  13820. depth++
  13821. case 4:
  13822. if depth == 0 {
  13823. return 0, ErrUnexpectedEndOfGroupTypes
  13824. }
  13825. depth--
  13826. case 5:
  13827. iNdEx += 4
  13828. default:
  13829. return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  13830. }
  13831. if iNdEx < 0 {
  13832. return 0, ErrInvalidLengthTypes
  13833. }
  13834. if depth == 0 {
  13835. return iNdEx, nil
  13836. }
  13837. }
  13838. return 0, io.ErrUnexpectedEOF
  13839. }
  13840. var (
  13841. ErrInvalidLengthTypes = fmt.Errorf("proto: negative length found during unmarshaling")
  13842. ErrIntOverflowTypes = fmt.Errorf("proto: integer overflow")
  13843. ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group")
  13844. )