From d24f47223602383e55c864ed8081d18219371be5 Mon Sep 17 00:00:00 2001 From: sydhds Date: Mon, 16 Dec 2024 09:20:34 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20massalab?= =?UTF-8?q?s/massa@0ce07564d65cdd3fecf641fef09e4ed330eb6ccd=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crates.js | 2 +- help.html | 2 +- massa_api/api/fn.broadcast_via_ws.html | 2 +- massa_api/struct.API.html | 19 +- massa_api/struct.ApiV2.html | 11 +- massa_api/struct.Private.html | 11 +- massa_api/struct.Public.html | 11 +- massa_api/struct.StopHandle.html | 7 +- massa_api/trait.MassaRpcServer.html | 4 +- .../address/struct.AddressFilter.html | 15 +- .../address/struct.AddressInfo.html | 15 +- .../address/struct.CompactAddressInfo.html | 15 +- massa_api_exports/block/struct.BlockInfo.html | 15 +- .../block/struct.BlockInfoContent.html | 15 +- .../block/struct.BlockSummary.html | 15 +- .../config/struct.APIConfig.html | 13 +- .../datastore/struct.DatastoreEntryInput.html | 15 +- .../struct.DatastoreEntryOutput.html | 15 +- .../endorsement/struct.EndorsementInfo.html | 15 +- massa_api_exports/enum.ListType.html | 7 +- massa_api_exports/enum.ScrudOperation.html | 7 +- massa_api_exports/error/enum.ApiError.html | 13 +- .../execution/enum.ReadOnlyResult.html | 15 +- .../execution/enum.TransferContext.html | 15 +- .../struct.DeferredCallResponse.html | 15 +- .../struct.DeferredCallsQuoteRequest.html | 15 +- .../struct.DeferredCallsQuoteResponse.html | 15 +- .../struct.DeferredCallsSlotResponse.html | 15 +- .../struct.ExecuteReadOnlyResponse.html | 15 +- .../struct.ReadOnlyBytecodeExecution.html | 15 +- .../execution/struct.ReadOnlyCall.html | 15 +- .../execution/struct.Transfer.html | 15 +- .../ledger/struct.LedgerInfo.html | 15 +- massa_api_exports/node/struct.NodeStatus.html | 15 +- .../operation/struct.OperationInfo.html | 15 +- .../operation/struct.OperationInput.html | 15 +- .../page/struct.PageRequest.html | 15 +- massa_api_exports/page/struct.PagedVec.html | 11 +- massa_api_exports/page/struct.PagedVecV2.html | 19 +- massa_api_exports/rolls/struct.RollsInfo.html | 15 +- massa_api_exports/slot/struct.SlotAmount.html | 15 +- massa_api_exports/struct.ApiRequest.html | 15 +- massa_api_exports/struct.TimeInterval.html | 15 +- .../changes/struct.AsyncPoolChanges.html | 12 +- .../message/struct.AsyncMessage.html | 16 +- .../message/struct.AsyncMessageTrigger.html | 12 +- .../message/struct.AsyncMessageUpdate.html | 16 +- massa_async_pool/struct.AsyncMessage.html | 16 +- .../struct.AsyncMessageTrigger.html | 12 +- .../struct.AsyncMessageUpdate.html | 16 +- massa_async_pool/struct.AsyncPoolChanges.html | 12 +- .../client/struct.BootstrapClientBinder.html | 5 +- .../client/struct.ServerMessageLeader.html | 5 +- .../server/struct.BootstrapServerBinder.html | 5 +- .../server/struct.ClientMessageLeader.html | 5 +- .../client/struct.DefaultConnector.html | 5 +- .../enum.BootstrapClientMessage.html | 5 +- massa_bootstrap/enum.BootstrapError.html | 9 +- .../enum.BootstrapServerMessage.html | 9 +- massa_bootstrap/enum.IpType.html | 11 +- .../error/enum.BootstrapError.html | 9 +- massa_bootstrap/listener/enum.PollEvent.html | 5 +- .../struct.BootstrapListenerStopHandle.html | 5 +- .../listener/struct.BootstrapTcpListener.html | 5 +- .../messages/enum.BootstrapClientMessage.html | 5 +- .../messages/enum.BootstrapServerMessage.html | 9 +- .../messages/enum.MessageClientTypeId.html | 7 +- .../messages/enum.MessageServerTypeId.html | 7 +- ...ct.BootstrapClientMessageDeserializer.html | 5 +- ...ruct.BootstrapClientMessageSerializer.html | 5 +- ...ct.BootstrapServerMessageDeserializer.html | 5 +- ...ruct.BootstrapServerMessageSerializer.html | 5 +- .../server/struct.BootstrapManager.html | 5 +- .../server/struct.BootstrapServer.html | 5 +- massa_bootstrap/settings/enum.IpType.html | 11 +- .../struct.BootstrapClientConfig.html | 11 +- .../settings/struct.BootstrapConfig.html | 11 +- ...ootstrapServerMessageDeserializerArgs.html | 7 +- .../settings/struct.BootstrapSrvBindCfg.html | 11 +- ...ct.BootstrapClientMessageDeserializer.html | 5 +- ...ruct.BootstrapClientMessageSerializer.html | 5 +- massa_bootstrap/struct.BootstrapConfig.html | 11 +- massa_bootstrap/struct.BootstrapManager.html | 5 +- ...ct.BootstrapServerMessageDeserializer.html | 5 +- ...ootstrapServerMessageDeserializerArgs.html | 7 +- ...ruct.BootstrapServerMessageSerializer.html | 5 +- .../struct.BootstrapTcpListener.html | 5 +- massa_bootstrap/struct.DefaultConnector.html | 5 +- .../struct.GlobalBootstrapState.html | 5 +- .../struct.SharedWhiteBlackList.html | 5 +- .../struct.WhiteBlackListInner.html | 5 +- massa_cipher/enum.CipherError.html | 2 +- massa_cipher/error/enum.CipherError.html | 2 +- massa_client/cmds/enum.Command.html | 9 +- massa_client/cmds/enum.ListOperation.html | 7 +- .../cmds/fn.get_file_as_byte_vec.html | 2 +- massa_client/cmds/fn.parse_key_value.html | 2 +- massa_client/cmds/fn.parse_vec.html | 2 +- massa_client/cmds/fn.send_operation.html | 2 +- massa_client/cmds/struct.CommandIter.html | 7 +- massa_client/cmds/struct.ExtendedWallet.html | 15 +- .../cmds/struct.ExtendedWalletEntry.html | 13 +- .../cmds/struct.ListOperationIter.html | 7 +- massa_client/display/enum.Style.html | 7 +- massa_client/display/trait.Output.html | 2 +- massa_client/fn.main.html | 2 +- massa_client/fn.run.html | 2 +- massa_client/repl/fn.run.html | 2 +- massa_client/repl/struct.MassaCompleter.html | 7 +- massa_client/repl/struct.MyHelper.html | 7 +- .../settings/struct.ClientSettings.html | 13 +- massa_client/settings/struct.DefaultNode.html | 13 +- .../settings/struct.HttpSettings.html | 13 +- massa_client/settings/struct.SETTINGS.html | 7 +- massa_client/settings/struct.Settings.html | 13 +- massa_client/struct.Args.html | 7 +- massa_client/struct.JsonError.html | 13 +- .../struct.BlockGraphExport.html | 5 +- .../block_status/enum.BlockStatus.html | 5 +- .../block_status/enum.BlockStatusId.html | 5 +- .../block_status/enum.DiscardReason.html | 15 +- .../block_status/enum.ExportBlockStatus.html | 13 +- .../block_status/enum.HeaderOrBlock.html | 5 +- .../block_status/enum.Status.html | 15 +- .../block_status/enum.StorageOrBlock.html | 5 +- .../struct.ExportCompiledBlock.html | 13 +- .../struct.BootstrapableGraph.html | 15 +- ...struct.BootstrapableGraphDeserializer.html | 5 +- .../struct.BootstrapableGraphSerializer.html | 5 +- .../channels/struct.ConsensusBroadcasts.html | 5 +- .../channels/struct.ConsensusChannels.html | 9 +- .../error/enum.ConsensusError.html | 15 +- .../error/enum.InternalError.html | 5 +- .../error/enum.LedgerError.html | 11 +- .../events/enum.ConsensusEvent.html | 5 +- .../struct.ExportActiveBlock.html | 15 +- .../struct.ExportActiveBlockDeserializer.html | 5 +- .../struct.ExportActiveBlockSerializer.html | 5 +- .../settings/struct.ConsensusConfig.html | 13 +- .../struct.ConsensusBroadcasts.html | 5 +- .../struct.ConsensusChannels.html | 9 +- .../struct.ConsensusConfig.html | 13 +- .../commands/enum.ConsensusCommand.html | 5 +- .../struct.ConsensusControllerImpl.html | 5 +- .../manager/struct.ConsensusManagerImpl.html | 5 +- .../blocks_state/struct.BlocksState.html | 5 +- .../state/process/struct.BlockInfos.html | 5 +- .../state/struct.ConsensusState.html | 7 +- .../verifications/enum.BlockCheckOutcome.html | 5 +- .../enum.EndorsementsCheckOutcome.html | 5 +- .../enum.HeaderCheckOutcome.html | 5 +- .../worker/main_loop/enum.WaitingStatus.html | 5 +- .../worker/struct.ConsensusWorker.html | 5 +- massa_db_worker/index.html | 6 +- .../call/struct.DeferredCall.html | 12 +- .../config/struct.DeferredCallsConfig.html | 8 +- .../struct.DeferredCallRegistryChanges.html | 12 +- .../struct.DeferredRegistrySlotChanges.html | 12 +- massa_deferred_calls/struct.DeferredCall.html | 12 +- massa_event_cache/all.html | 1 + massa_event_cache/config/index.html | 1 + massa_event_cache/config/sidebar-items.js | 1 + .../config/struct.EventCacheConfig.html | 115 + massa_event_cache/controller/index.html | 1 + massa_event_cache/controller/sidebar-items.js | 1 + .../struct.EventCacheControllerImpl.html | 109 + .../struct.EventCacheWriterInputData.html | 101 + .../trait.EventCacheController.html | 12 + .../event_cache/constant.COUNTER_ERROR.html | 1 + .../constant.COUNTER_KEY_CREATION_ERROR.html | 1 + .../event_cache/constant.CRUD_ERROR.html | 1 + .../event_cache/constant.DESTROY_ERROR.html | 1 + .../constant.EVENT_DESER_ERROR.html | 1 + .../event_cache/constant.OPEN_ERROR.html | 1 + .../constant.OPERATION_ID_DESER_ERROR.html | 1 + .../event_cache/enum.FilterItem.html | 105 + .../event_cache/enum.KeyBuilderType.html | 104 + .../event_cache/enum.KeyIndent.html | 124 + .../event_cache/enum.KeyKind.html | 100 + .../event_cache/fn.from_event_filter.html | 2 + massa_event_cache/event_cache/index.html | 1 + .../event_cache/sidebar-items.js | 1 + .../event_cache/struct.DbKeyBuilder.html | 126 + .../event_cache/struct.EventCache.html | 159 + massa_event_cache/index.html | 1 + .../rocksdb_operator/fn.counter_merge.html | 5 + massa_event_cache/rocksdb_operator/index.html | 1 + .../rocksdb_operator/sidebar-items.js | 1 + massa_event_cache/ser_deser/index.html | 1 + massa_event_cache/ser_deser/sidebar-items.js | 1 + .../struct.SCOutputEventDeserializer.html | 108 + .../struct.SCOutputEventDeserializerArgs.html | 101 + .../struct.SCOutputEventSerializer.html | 109 + massa_event_cache/sidebar-items.js | 1 + .../fn.start_event_cache_writer_worker.html | 3 + massa_event_cache/worker/index.html | 2 + massa_event_cache/worker/sidebar-items.js | 1 + .../struct.EventCacheWriterManagerImpl.html | 105 + .../worker/struct.EventCacheWriterThread.html | 109 + .../worker/trait.EventCacheManager.html | 9 + .../channels/struct.ExecutionChannels.html | 5 +- .../enum.ExecutionError.html | 7 +- .../enum.ExecutionQueryError.html | 5 +- .../enum.ExecutionQueryExecutionStatus.html | 5 +- .../enum.ExecutionQueryRequestItem.html | 5 +- .../enum.ExecutionQueryResponseItem.html | 5 +- .../enum.ReadOnlyExecutionTarget.html | 5 +- .../enum.SlotExecutionOutput.html | 5 +- .../error/enum.ExecutionError.html | 7 +- .../error/enum.ExecutionQueryError.html | 5 +- .../event_store/struct.EventStore.html | 9 +- massa_execution_exports/settings/index.html | 2 +- .../settings/struct.ExecutionConfig.html | 11 +- .../struct.StorageCostsConstants.html | 5 +- .../struct.CondomLimits.html | 5 +- .../struct.EventStore.html | 9 +- .../struct.ExecutedBlockInfo.html | 9 +- .../struct.ExecutionAddressInfo.html | 5 +- .../struct.ExecutionBlockMetadata.html | 5 +- .../struct.ExecutionChannels.html | 5 +- .../struct.ExecutionConfig.html | 11 +- .../struct.ExecutionOutput.html | 9 +- .../struct.ExecutionQueryCycleInfos.html | 5 +- .../struct.ExecutionQueryRequest.html | 5 +- .../struct.ExecutionQueryResponse.html | 5 +- .../struct.ExecutionQueryStakerInfo.html | 5 +- .../struct.ExecutionStackElement.html | 5 +- massa_execution_exports/struct.GasCosts.html | 7 +- .../struct.ReadOnlyCallRequest.html | 5 +- .../struct.ReadOnlyExecutionOutput.html | 5 +- .../struct.ReadOnlyExecutionRequest.html | 5 +- .../struct.StorageCostsConstants.html | 5 +- .../enum.ExecutionQueryExecutionStatus.html | 5 +- .../types/enum.ExecutionQueryRequestItem.html | 5 +- .../enum.ExecutionQueryResponseItem.html | 5 +- .../types/enum.ReadOnlyExecutionTarget.html | 5 +- .../types/enum.SlotExecutionOutput.html | 5 +- .../types/struct.ExecutedBlockInfo.html | 9 +- .../types/struct.ExecutionAddressInfo.html | 5 +- .../types/struct.ExecutionBlockMetadata.html | 5 +- .../types/struct.ExecutionOutput.html | 9 +- .../struct.ExecutionQueryCycleInfos.html | 5 +- .../types/struct.ExecutionQueryRequest.html | 5 +- .../types/struct.ExecutionQueryResponse.html | 5 +- .../struct.ExecutionQueryStakerInfo.html | 5 +- .../types/struct.ExecutionStackElement.html | 5 +- .../types/struct.ReadOnlyCallRequest.html | 5 +- .../types/struct.ReadOnlyExecutionOutput.html | 5 +- .../struct.ReadOnlyExecutionRequest.html | 5 +- .../enum.HistorySearchResult.html | 5 +- .../enum.SlotIndexPosition.html | 5 +- .../active_history/struct.ActiveHistory.html | 7 +- .../context/struct.ExecutionContext.html | 61 +- .../struct.ExecutionContextSnapshot.html | 9 +- .../struct.ExecutionControllerImpl.html | 37 +- .../controller/struct.ExecutionInputData.html | 15 +- .../struct.ExecutionManagerImpl.html | 7 +- massa_execution_worker/execution/index.html | 2 +- .../execution/struct.ExecutionState.html | 124 +- .../execution_info/enum.OperationInfo.html | 5 +- .../struct.AsyncMessageExecutionResult.html | 5 +- .../struct.DeferredCallExecutionResult.html | 5 +- .../struct.DenunciationResult.html | 5 +- .../execution_info/struct.ExecutionInfo.html | 5 +- .../struct.ExecutionInfoForSlot.html | 5 +- .../fn.start_execution_worker.html | 9 +- .../fn.amount_from_native_amount.html | 2 +- .../fn.get_address_from_opt_or_context.html | 2 +- .../fn.massa_time_from_native_time.html | 2 +- .../interface_impl/struct.InterfaceImpl.html | 191 +- .../request_queue/struct.RequestQueue.html | 7 +- .../struct.RequestWithResponseSender.html | 15 +- .../slot_sequencer/struct.SlotInfo.html | 9 +- .../slot_sequencer/struct.SlotSequencer.html | 19 +- .../struct.SpeculativeAsyncPool.html | 5 +- ...truct.SpeculativeDeferredCallRegistry.html | 13 +- ...ruct.SpeculativeExecutedDenunciations.html | 5 +- .../struct.SpeculativeExecutedOps.html | 5 +- .../struct.SpeculativeLedger.html | 25 +- .../struct.SpeculativeRollState.html | 9 +- .../stats/struct.ExecutionStatsCounter.html | 5 +- .../struct.FileStorageBackend.html | 5 +- .../struct.RocksDBStorageBackend.html | 5 +- .../worker/fn.start_execution_worker.html | 9 +- massa_execution_worker/worker/index.html | 2 +- .../worker/struct.ExecutionThread.html | 23 +- .../config/struct.FactoryConfig.html | 5 +- massa_factory_exports/enum.FactoryError.html | 5 +- .../error/enum.FactoryError.html | 5 +- .../struct.FactoryChannels.html | 5 +- .../struct.FactoryConfig.html | 5 +- .../types/struct.FactoryChannels.html | 5 +- .../struct.BlockFactoryWorker.html | 5 +- .../struct.EndorsementFactoryWorker.html | 5 +- .../manager/struct.FactoryManagerImpl.html | 5 +- massa_final_state/enum.FinalStateError.html | 2 +- .../error/enum.FinalStateError.html | 2 +- .../final_state/struct.FinalState.html | 2 +- .../state_changes/struct.StateChanges.html | 12 +- massa_final_state/struct.FinalState.html | 2 +- massa_final_state/struct.StateChanges.html | 12 +- massa_grpc/config/enum.ServiceName.html | 13 +- massa_grpc/config/struct.GrpcApiConfig.html | 13 +- massa_grpc/config/struct.GrpcConfig.html | 13 +- massa_grpc/error/enum.GrpcError.html | 13 +- .../server/struct.MassaPrivateGrpc.html | 11 +- massa_grpc/server/struct.MassaPublicGrpc.html | 15 +- massa_grpc/server/struct.StopHandle.html | 7 +- .../stream/new_blocks/struct.Filter.html | 7 +- .../new_endorsements/struct.Filter.html | 7 +- .../new_filled_blocks/struct.Filter.html | 7 +- .../stream/new_operations/struct.Filter.html | 7 +- .../struct.SlotAbiCallStack.html | 7 +- .../fn.filter_map.html | 4 +- .../fn.filter_map_exec_output.html | 4 +- .../struct.AsyncPoolChangesFilter.html | 7 +- .../struct.ExecutedDenounciationFilter.html | 7 +- .../struct.ExecutedOpsChangesFilter.html | 7 +- .../struct.ExecutionEventFilter.html | 7 +- .../struct.Filter.html | 7 +- .../struct.LedgerChangesFilter.html | 7 +- massa_grpc/struct.EndorsementDraw.html | 7 +- massa_grpc/struct.SlotDraw.html | 7 +- massa_grpc/struct.SlotRange.html | 7 +- massa_hash/hash/struct.Hash.html | 8 +- massa_hash/hash_xof/struct.HashXof.html | 4 +- massa_hash/struct.Hash.html | 8 +- massa_hash/struct.HashXof.html | 4 +- massa_ledger_exports/enum.LedgerError.html | 2 +- .../error/enum.LedgerError.html | 2 +- .../ledger_changes/struct.LedgerChanges.html | 12 +- .../struct.LedgerEntryUpdate.html | 18 +- .../ledger_entry/struct.LedgerEntry.html | 12 +- .../struct.LedgerChanges.html | 12 +- massa_ledger_exports/struct.LedgerEntry.html | 12 +- .../struct.LedgerEntryUpdate.html | 18 +- massa_logging/index.html | 2 +- .../active_block/struct.ActiveBlock.html | 10 +- massa_models/address/enum.Address.html | 12 +- massa_models/address/enum.SCAddress.html | 8 +- massa_models/address/enum.UserAddress.html | 8 +- .../address/struct.AddressDeserializer.html | 18 +- .../address/struct.AddressSerializer.html | 18 +- .../struct.ExecutionAddressCycleInfo.html | 10 +- massa_models/address/struct.SCAddressV0.html | 8 +- .../address/struct.UserAddressV0.html | 8 +- massa_models/amount/struct.Amount.html | 16 +- .../amount/struct.AmountDeserializer.html | 6 +- .../amount/struct.AmountSerializer.html | 8 +- massa_models/amount/struct.AmountVisitor.html | 82 +- massa_models/block/enum.BlockGraphStatus.html | 12 +- massa_models/block/struct.Block.html | 24 +- .../block/struct.BlockDeserializer.html | 2 +- .../block/struct.BlockSerializer.html | 4 +- massa_models/block/struct.FilledBlock.html | 10 +- .../block_header/struct.BlockHeader.html | 20 +- .../struct.BlockHeaderDeserializer.html | 12 +- .../struct.BlockHeaderSerializer.html | 10 +- massa_models/block_id/enum.BlockId.html | 20 +- .../block_id/struct.BlockIdDeserializer.html | 10 +- .../block_id/struct.BlockIdSerializer.html | 10 +- massa_models/block_id/struct.BlockIdV0.html | 20 +- massa_models/bytecode/struct.Bytecode.html | 16 +- .../bytecode/struct.BytecodeDeserializer.html | 8 +- .../bytecode/struct.BytecodeSerializer.html | 8 +- massa_models/clique/struct.Clique.html | 14 +- .../clique/struct.CliqueDeserializer.html | 8 +- .../clique/struct.CliqueSerializer.html | 10 +- ...enum.OperationSearchResultBlockStatus.html | 10 +- .../enum.OperationSearchResultStatus.html | 10 +- .../struct.OperationSearchResult.html | 10 +- massa_models/composite/struct.PubkeySig.html | 10 +- .../struct.StakersCycleProductionStats.html | 10 +- .../compact_config/struct.CompactConfig.html | 10 +- .../config/fn.build_massa_settings.html | 2 +- .../fn.build_massa_settings.html | 2 +- massa_models/config/struct.CompactConfig.html | 10 +- .../struct.DatastoreDeserializer.html | 6 +- .../datastore/struct.DatastoreSerializer.html | 8 +- .../deferred_calls/enum.DeferredCallId.html | 14 +- .../struct.DeferredCallIdDeserializer.html | 4 +- .../struct.DeferredCallIdSerializer.html | 4 +- .../denunciation/enum.Denunciation.html | 24 +- .../denunciation/enum.DenunciationError.html | 4 +- .../denunciation/enum.DenunciationIndex.html | 20 +- .../enum.DenunciationIndexTypeId.html | 2 +- .../enum.DenunciationPrecursor.html | 2 +- .../denunciation/enum.DenunciationTypeId.html | 2 +- .../struct.BlockHeaderDenunciation.html | 16 +- ...t.BlockHeaderDenunciationDeserializer.html | 4 +- ...uct.BlockHeaderDenunciationSerializer.html | 4 +- .../struct.DenunciationDeserializer.html | 8 +- .../struct.DenunciationIndexDeserializer.html | 10 +- .../struct.DenunciationIndexSerializer.html | 10 +- .../struct.DenunciationSerializer.html | 8 +- .../struct.EndorsementDenunciation.html | 16 +- ...t.EndorsementDenunciationDeserializer.html | 8 +- ...uct.EndorsementDenunciationSerializer.html | 8 +- .../endorsement/enum.EndorsementId.html | 18 +- .../endorsement/struct.Endorsement.html | 32 +- .../struct.EndorsementDeserializer.html | 6 +- .../struct.EndorsementDeserializerLW.html | 6 +- .../struct.EndorsementIdDeserializer.html | 8 +- .../endorsement/struct.EndorsementIdV0.html | 18 +- .../struct.EndorsementSerializer.html | 8 +- .../struct.EndorsementSerializerLW.html | 8 +- massa_models/error/enum.ModelsError.html | 6 +- .../execution/struct.EventFilter.html | 10 +- massa_models/ledger/struct.LedgerChange.html | 16 +- .../struct.LedgerChangeDeserializer.html | 2 +- .../ledger/struct.LedgerChangeSerializer.html | 4 +- massa_models/ledger/struct.LedgerChanges.html | 14 +- .../struct.LedgerChangesDeserializer.html | 6 +- .../struct.LedgerChangesSerializer.html | 8 +- massa_models/ledger/struct.LedgerData.html | 16 +- .../ledger/struct.LedgerDataDeserializer.html | 2 +- .../ledger/struct.LedgerDataSerializer.html | 4 +- massa_models/node/struct.NodeId.html | 16 +- massa_models/operation/enum.OperationId.html | 20 +- .../operation/enum.OperationPrefixId.html | 16 +- .../operation/enum.OperationType.html | 16 +- .../operation/enum.OperationTypeId.html | 2 +- massa_models/operation/struct.Operation.html | 22 +- .../struct.OperationDeserializer.html | 6 +- .../struct.OperationIdDeserializer.html | 10 +- .../struct.OperationIdSerializer.html | 10 +- .../operation/struct.OperationIdV0.html | 20 +- .../struct.OperationIdsDeserializer.html | 6 +- .../struct.OperationIdsSerializer.html | 8 +- .../struct.OperationPrefixIdDeserializer.html | 2 +- .../operation/struct.OperationPrefixIdV0.html | 12 +- ...struct.OperationPrefixIdsDeserializer.html | 6 +- .../struct.OperationPrefixIdsSerializer.html | 8 +- .../operation/struct.OperationSerializer.html | 8 +- .../struct.OperationTypeDeserializer.html | 12 +- .../struct.OperationTypeSerializer.html | 12 +- .../struct.OperationsDeserializer.html | 6 +- .../struct.OperationsSerializer.html | 8 +- massa_models/output_event/index.html | 2 +- .../struct.EventExecutionContext.html | 22 +- .../output_event/struct.SCOutputEvent.html | 31 +- .../rolls/struct.RollCompensation.html | 10 +- massa_models/rolls/struct.RollCounts.html | 10 +- massa_models/rolls/struct.RollUpdate.html | 16 +- .../rolls/struct.RollUpdateDeserializer.html | 6 +- .../rolls/struct.RollUpdateSerializer.html | 8 +- massa_models/rolls/struct.RollUpdates.html | 10 +- .../secure_share/struct.SecureShare.html | 28 +- .../struct.SecureShareDeserializer.html | 10 +- .../struct.SecureShareSerializer.html | 10 +- .../trait.SecureShareContent.html | 16 +- .../struct.BitVecDeserializer.html | 8 +- .../struct.BitVecSerializer.html | 8 +- .../struct.IpAddrDeserializer.html | 2 +- .../struct.IpAddrSerializer.html | 4 +- .../struct.PreHashSetDeserializer.html | 16 +- .../struct.PreHashSetSerializer.html | 16 +- .../struct.StringDeserializer.html | 14 +- .../struct.StringSerializer.html | 14 +- .../serialization/struct.VecDeserializer.html | 14 +- .../serialization/struct.VecSerializer.html | 14 +- .../struct.VecU8Deserializer.html | 6 +- .../serialization/struct.VecU8Serializer.html | 8 +- massa_models/slot/struct.IndexedSlot.html | 12 +- massa_models/slot/struct.Slot.html | 16 +- .../slot/struct.SlotDeserializer.html | 6 +- massa_models/slot/struct.SlotSerializer.html | 8 +- massa_models/stats/struct.ConsensusStats.html | 10 +- massa_models/stats/struct.ExecutionStats.html | 10 +- massa_models/stats/struct.NetworkStats.html | 10 +- massa_models/stats/struct.PoolStats.html | 10 +- .../streaming_step/enum.StreamingStep.html | 16 +- .../struct.StreamingStepDeserializer.html | 18 +- .../struct.StreamingStepSerializer.html | 18 +- massa_models/types/enum.SetOrDelete.html | 20 +- massa_models/types/enum.SetOrKeep.html | 20 +- .../types/enum.SetUpdateOrDelete.html | 24 +- .../types/struct.SetOrDeleteDeserializer.html | 6 +- .../types/struct.SetOrDeleteSerializer.html | 6 +- .../types/struct.SetOrKeepDeserializer.html | 6 +- .../types/struct.SetOrKeepSerializer.html | 6 +- .../struct.SetUpdateOrDeleteDeserializer.html | 6 +- .../struct.SetUpdateOrDeleteSerializer.html | 6 +- massa_models/version/struct.Version.html | 16 +- .../version/struct.VersionDeserializer.html | 6 +- .../version/struct.VersionSerializer.html | 8 +- .../version/struct.VersionVisitor.html | 82 +- .../config/struct.ModuleCacheConfig.html | 5 +- .../controller/struct.ModuleCache.html | 5 +- massa_module_cache/error/enum.CacheError.html | 7 +- .../hd_cache/struct.HDCache.html | 5 +- .../lru_cache/struct.LRUCache.html | 5 +- massa_module_cache/types/enum.ModuleInfo.html | 5 +- .../types/enum.ModuleMetadata.html | 5 +- .../types/enum.ModuleMetadataId.html | 5 +- .../struct.ModuleMetadataDeserializer.html | 5 +- .../struct.ModuleMetadataSerializer.html | 5 +- massa_node/fn.configure_grpc.html | 2 +- massa_node/fn.launch.html | 4 +- massa_node/fn.load_wallet.html | 4 +- massa_node/fn.main.html | 2 +- massa_node/fn.run.html | 2 +- massa_node/fn.stop.html | 8 +- massa_node/index.html | 2 +- massa_node/settings/index.html | 2 +- massa_node/settings/struct.APISettings.html | 13 +- .../settings/struct.BlockDumpSettings.html | 13 +- .../settings/struct.BootstrapSettings.html | 13 +- .../settings/struct.ConsensusSettings.html | 13 +- .../settings/struct.ExecutionSettings.html | 17 +- .../settings/struct.FactorySettings.html | 13 +- .../settings/struct.GrpcApiSettings.html | 13 +- massa_node/settings/struct.GrpcSettings.html | 13 +- .../settings/struct.LedgerSettings.html | 13 +- .../settings/struct.LoggingSettings.html | 13 +- .../settings/struct.MetricsSettings.html | 13 +- .../settings/struct.NetworkSettings.html | 13 +- massa_node/settings/struct.PoolSettings.html | 13 +- .../settings/struct.ProtocolSettings.html | 13 +- massa_node/settings/struct.SETTINGS.html | 7 +- .../settings/struct.SelectionSettings.html | 13 +- massa_node/settings/struct.Settings.html | 13 +- .../settings/struct.VersioningSettings.html | 13 +- massa_node/struct.Args.html | 19 +- massa_node/struct.Managers.html | 10 +- massa_node/survey/struct.MassaSurvey.html | 9 +- .../survey/struct.MassaSurveyStopper.html | 7 +- .../channels/struct.PoolBroadcasts.html | 5 +- .../channels/struct.PoolChannels.html | 9 +- .../config/struct.PoolConfig.html | 13 +- massa_pool_exports/struct.PoolBroadcasts.html | 5 +- massa_pool_exports/struct.PoolChannels.html | 9 +- massa_pool_exports/struct.PoolConfig.html | 13 +- .../controller_impl/enum.Command.html | 5 +- .../struct.PoolControllerImpl.html | 37 +- .../struct.PoolManagerImpl.html | 7 +- .../enum.DenunciationStatus.html | 5 +- .../struct.DenunciationPool.html | 15 +- .../struct.EndorsementPool.html | 17 +- .../fn.start_pool_controller.html | 6 +- .../operation_pool/struct.OperationPool.html | 17 +- .../types/struct.OperationInfo.html | 5 +- .../worker/fn.start_pool_controller.html | 6 +- .../worker/struct.DenunciationPoolThread.html | 5 +- .../worker/struct.EndorsementPoolThread.html | 5 +- .../worker/struct.OperationPoolThread.html | 9 +- .../cycle_info/struct.ProductionStats.html | 12 +- .../struct.DeferredCredits.html | 12 +- .../pos_changes/struct.PoSChanges.html | 12 +- .../settings/struct.SelectorConfig.html | 10 +- massa_pos_exports/struct.DeferredCredits.html | 12 +- massa_pos_exports/struct.PoSChanges.html | 12 +- massa_pos_exports/struct.ProductionStats.html | 12 +- massa_pos_exports/struct.SelectorConfig.html | 10 +- .../struct.BootstrapPeers.html | 12 +- .../bootstrap_peers/struct.PeerData.html | 12 +- .../enum.ProtocolError.html | 6 +- .../enum.TransportType.html | 16 +- .../error/enum.ProtocolError.html | 6 +- .../peer_id/struct.PeerId.html | 10 +- .../settings/struct.PeerCategoryInfo.html | 8 +- .../settings/struct.ProtocolConfig.html | 8 +- .../struct.BootstrapPeers.html | 12 +- .../struct.PeerCategoryInfo.html | 8 +- massa_protocol_exports/struct.PeerData.html | 12 +- massa_protocol_exports/struct.PeerId.html | 10 +- .../struct.ProtocolConfig.html | 8 +- .../enum.ConnectivityCommand.html | 5 +- .../context/struct.Context.html | 5 +- .../struct.ProtocolControllerImpl.html | 5 +- .../cache/struct.BlockCache.html | 5 +- .../enum.BlockHandlerPropagationCommand.html | 5 +- .../enum.BlockHandlerRetrievalCommand.html | 5 +- .../messages/enum.AskForBlockInfo.html | 5 +- .../messages/enum.BlockInfoReply.html | 5 +- .../messages/enum.BlockInfoType.html | 7 +- .../messages/enum.BlockMessage.html | 5 +- .../messages/enum.MessageTypeId.html | 7 +- .../struct.BlockMessageDeserializer.html | 5 +- .../struct.BlockMessageDeserializerArgs.html | 5 +- .../struct.BlockMessageSerializer.html | 5 +- .../struct.BlockPropagationData.html | 5 +- .../propagation/struct.PropagationThread.html | 5 +- .../retrieval/struct.BlockInfo.html | 5 +- .../retrieval/struct.RetrievalThread.html | 5 +- .../block_handler/struct.BlockHandler.html | 5 +- .../cache/struct.EndorsementCache.html | 5 +- ....EndorsementHandlerPropagationCommand.html | 5 +- ...um.EndorsementHandlerRetrievalCommand.html | 5 +- .../messages/enum.EndorsementMessage.html | 5 +- .../messages/enum.MessageTypeId.html | 7 +- ...struct.EndorsementMessageDeserializer.html | 5 +- ...ct.EndorsementMessageDeserializerArgs.html | 5 +- .../struct.EndorsementMessageSerializer.html | 5 +- .../propagation/struct.PropagationThread.html | 5 +- .../retrieval/struct.RetrievalThread.html | 5 +- .../struct.EndorsementHandler.html | 5 +- .../cache/struct.OperationCache.html | 5 +- ...um.OperationHandlerPropagationCommand.html | 5 +- ...enum.OperationHandlerRetrievalCommand.html | 5 +- .../messages/enum.MessageTypeId.html | 9 +- .../messages/enum.OperationMessage.html | 5 +- .../struct.OperationMessageDeserializer.html | 5 +- ...ruct.OperationMessageDeserializerArgs.html | 5 +- .../struct.OperationMessageSerializer.html | 5 +- .../propagation/struct.PropagationThread.html | 5 +- .../retrieval/struct.OperationBatchItem.html | 5 +- .../retrieval/struct.RetrievalThread.html | 5 +- .../struct.OperationHandler.html | 5 +- .../announcement/struct.Announcement.html | 5 +- .../struct.AnnouncementDeserializer.html | 5 +- .../struct.AnnouncementDeserializerArgs.html | 5 +- .../struct.AnnouncementSerializer.html | 5 +- .../messages/enum.MessageTypeId.html | 9 +- .../messages/enum.PeerManagementMessage.html | 7 +- ...uct.PeerManagementMessageDeserializer.html | 5 +- ...PeerManagementMessageDeserializerArgs.html | 5 +- ...truct.PeerManagementMessageSerializer.html | 5 +- .../models/enum.PeerManagementCmd.html | 5 +- .../peer_handler/models/enum.PeerState.html | 5 +- .../models/struct.ConnectionMetadata.html | 5 +- .../peer_handler/models/struct.PeerDB.html | 5 +- .../peer_handler/models/struct.PeerInfo.html | 5 +- .../models/struct.PeerManagementChannel.html | 5 +- .../peer_handler/struct.MassaHandshake.html | 5 +- .../struct.PeerManagementHandler.html | 5 +- .../peer_handler/tester/struct.Tester.html | 5 +- .../manager/struct.ProtocolManagerImpl.html | 5 +- .../messages/enum.Message.html | 7 +- .../messages/enum.MessageTypeId.html | 9 +- .../messages/struct.MessagesHandler.html | 5 +- .../messages/struct.MessagesSerializer.html | 5 +- .../worker/struct.ProtocolChannels.html | 5 +- .../struct.NetworkControllerImpl.html | 5 +- massa_sdk/config/struct.ClientConfig.html | 7 +- massa_sdk/config/struct.HttpConfig.html | 7 +- massa_sdk/config/struct.WsConfig.html | 7 +- massa_sdk/enum.ClientError.html | 9 +- massa_sdk/struct.Client.html | 7 +- massa_sdk/struct.ClientConfig.html | 7 +- massa_sdk/struct.ClientV2.html | 7 +- massa_sdk/struct.HttpConfig.html | 7 +- massa_sdk/struct.RpcClient.html | 7 +- massa_sdk/struct.RpcClientV2.html | 7 +- massa_sdk/struct.WsConfig.html | 7 +- massa_signature/enum.KeyPair.html | 14 +- massa_signature/enum.MassaSignatureError.html | 2 +- massa_signature/enum.PublicKey.html | 10 +- massa_signature/enum.Signature.html | 16 +- .../error/enum.MassaSignatureError.html | 2 +- .../signature_impl/enum.KeyPair.html | 14 +- .../signature_impl/enum.PublicKey.html | 10 +- .../signature_impl/enum.Signature.html | 16 +- massa_time/enum.TimeError.html | 2 +- massa_time/error/enum.TimeError.html | 2 +- massa_time/struct.MassaTime.html | 14 +- .../versioning/enum.ComponentStateTypeId.html | 4 +- .../versioning/enum.IsKVValidError.html | 2 +- .../versioning/enum.MipComponent.html | 2 +- .../versioning/enum.StateAtError.html | 2 +- .../versioning/enum.UpdateWithError.html | 2 +- massa_wallet/enum.WalletError.html | 2 +- massa_wallet/error/enum.WalletError.html | 2 +- massa_wallet/struct.Wallet.html | 10 +- massa_wallet/struct.WalletFileFormat.html | 10 +- search-index.js | 53 +- .../massa_db_worker-desc-0-.js | 2 +- .../massa_event_cache-desc-0-.js | 1 + .../massa_execution_exports-desc-0-.js | 2 +- settings.html | 2 +- src-files.js | 1 + src/massa_db_worker/lib.rs.html | 6 +- src/massa_event_cache/config.rs.html | 45 + src/massa_event_cache/controller.rs.html | 273 ++ src/massa_event_cache/event_cache.rs.html | 3637 +++++++++++++++++ src/massa_event_cache/lib.rs.html | 21 + .../rocksdb_operator.rs.html | 221 + src/massa_event_cache/ser_deser.rs.html | 609 +++ src/massa_event_cache/worker.rs.html | 325 ++ src/massa_execution_exports/settings.rs.html | 12 + src/massa_execution_worker/execution.rs.html | 30 +- src/massa_execution_worker/worker.rs.html | 6 + src/massa_models/output_event.rs.html | 32 +- src/massa_node/main.rs.html | 68 +- src/massa_node/settings.rs.html | 8 + trait.impl/core/clone/trait.Clone.js | 3 +- trait.impl/core/cmp/trait.Eq.js | 3 +- trait.impl/core/cmp/trait.Ord.js | 3 +- trait.impl/core/cmp/trait.PartialEq.js | 3 +- trait.impl/core/cmp/trait.PartialOrd.js | 3 +- trait.impl/core/convert/trait.From.js | 13 +- trait.impl/core/default/trait.Default.js | 1 + trait.impl/core/fmt/trait.Debug.js | 1 + trait.impl/core/marker/trait.Copy.js | 1 + trait.impl/core/marker/trait.Freeze.js | 1 + trait.impl/core/marker/trait.Send.js | 1 + .../core/marker/trait.StructuralPartialEq.js | 3 +- trait.impl/core/marker/trait.Sync.js | 1 + trait.impl/core/marker/trait.Unpin.js | 1 + .../panic/unwind_safe/trait.RefUnwindSafe.js | 1 + .../panic/unwind_safe/trait.UnwindSafe.js | 1 + .../controller/trait.EventCacheController.js | 3 + .../worker/trait.EventCacheManager.js | 3 + .../trait.ExecutionController.js | 2 +- .../trait.ExecutionManager.js | 2 +- .../controller_traits/trait.PoolController.js | 2 +- .../controller_traits/trait.PoolManager.js | 2 +- .../massa_serialization/trait.Deserializer.js | 3 +- .../massa_serialization/trait.Serializer.js | 3 +- trait.impl/serde/de/trait.Deserialize.js | 36 +- trait.impl/serde/de/trait.Visitor.js | 2 +- trait.impl/serde/ser/trait.Serialize.js | 32 +- .../collections/btree/map/struct.BTreeMap.js | 4 +- type.impl/alloc/sync/struct.Arc.js | 6 +- type.impl/alloc/vec/struct.Vec.js | 4 +- type.impl/core/pin/struct.Pin.js | 2 +- type.impl/core/result/enum.Result.js | 6 +- .../secure_share/struct.SecureShare.js | 2 +- .../massa_models/types/enum.SetOrDelete.js | 2 +- .../massa_models/types/enum.SetOrKeep.js | 2 +- .../collections/hash/map/struct.HashMap.js | 4 +- .../collections/hash/set/struct.HashSet.js | 4 +- 722 files changed, 10171 insertions(+), 2857 deletions(-) create mode 100644 massa_event_cache/all.html create mode 100644 massa_event_cache/config/index.html create mode 100644 massa_event_cache/config/sidebar-items.js create mode 100644 massa_event_cache/config/struct.EventCacheConfig.html create mode 100644 massa_event_cache/controller/index.html create mode 100644 massa_event_cache/controller/sidebar-items.js create mode 100644 massa_event_cache/controller/struct.EventCacheControllerImpl.html create mode 100644 massa_event_cache/controller/struct.EventCacheWriterInputData.html create mode 100644 massa_event_cache/controller/trait.EventCacheController.html create mode 100644 massa_event_cache/event_cache/constant.COUNTER_ERROR.html create mode 100644 massa_event_cache/event_cache/constant.COUNTER_KEY_CREATION_ERROR.html create mode 100644 massa_event_cache/event_cache/constant.CRUD_ERROR.html create mode 100644 massa_event_cache/event_cache/constant.DESTROY_ERROR.html create mode 100644 massa_event_cache/event_cache/constant.EVENT_DESER_ERROR.html create mode 100644 massa_event_cache/event_cache/constant.OPEN_ERROR.html create mode 100644 massa_event_cache/event_cache/constant.OPERATION_ID_DESER_ERROR.html create mode 100644 massa_event_cache/event_cache/enum.FilterItem.html create mode 100644 massa_event_cache/event_cache/enum.KeyBuilderType.html create mode 100644 massa_event_cache/event_cache/enum.KeyIndent.html create mode 100644 massa_event_cache/event_cache/enum.KeyKind.html create mode 100644 massa_event_cache/event_cache/fn.from_event_filter.html create mode 100644 massa_event_cache/event_cache/index.html create mode 100644 massa_event_cache/event_cache/sidebar-items.js create mode 100644 massa_event_cache/event_cache/struct.DbKeyBuilder.html create mode 100644 massa_event_cache/event_cache/struct.EventCache.html create mode 100644 massa_event_cache/index.html create mode 100644 massa_event_cache/rocksdb_operator/fn.counter_merge.html create mode 100644 massa_event_cache/rocksdb_operator/index.html create mode 100644 massa_event_cache/rocksdb_operator/sidebar-items.js create mode 100644 massa_event_cache/ser_deser/index.html create mode 100644 massa_event_cache/ser_deser/sidebar-items.js create mode 100644 massa_event_cache/ser_deser/struct.SCOutputEventDeserializer.html create mode 100644 massa_event_cache/ser_deser/struct.SCOutputEventDeserializerArgs.html create mode 100644 massa_event_cache/ser_deser/struct.SCOutputEventSerializer.html create mode 100644 massa_event_cache/sidebar-items.js create mode 100644 massa_event_cache/worker/fn.start_event_cache_writer_worker.html create mode 100644 massa_event_cache/worker/index.html create mode 100644 massa_event_cache/worker/sidebar-items.js create mode 100644 massa_event_cache/worker/struct.EventCacheWriterManagerImpl.html create mode 100644 massa_event_cache/worker/struct.EventCacheWriterThread.html create mode 100644 massa_event_cache/worker/trait.EventCacheManager.html create mode 100644 search.desc/massa_event_cache/massa_event_cache-desc-0-.js create mode 100644 src/massa_event_cache/config.rs.html create mode 100644 src/massa_event_cache/controller.rs.html create mode 100644 src/massa_event_cache/event_cache.rs.html create mode 100644 src/massa_event_cache/lib.rs.html create mode 100644 src/massa_event_cache/rocksdb_operator.rs.html create mode 100644 src/massa_event_cache/ser_deser.rs.html create mode 100644 src/massa_event_cache/worker.rs.html create mode 100644 trait.impl/massa_event_cache/controller/trait.EventCacheController.js create mode 100644 trait.impl/massa_event_cache/worker/trait.EventCacheManager.js diff --git a/crates.js b/crates.js index 86dc15b157e..9fdc346b40f 100644 --- a/crates.js +++ b/crates.js @@ -1 +1 @@ -window.ALL_CRATES = ["massa_api","massa_api_exports","massa_async_pool","massa_bootstrap","massa_channel","massa_cipher","massa_client","massa_consensus_exports","massa_consensus_worker","massa_db_exports","massa_db_worker","massa_deferred_calls","massa_executed_ops","massa_execution_exports","massa_execution_worker","massa_factory_exports","massa_factory_worker","massa_final_state","massa_grpc","massa_hash","massa_ledger_exports","massa_ledger_worker","massa_logging","massa_metrics","massa_models","massa_module_cache","massa_node","massa_pool_exports","massa_pool_worker","massa_pos_exports","massa_pos_worker","massa_protocol_exports","massa_protocol_worker","massa_sdk","massa_serialization","massa_signature","massa_storage","massa_test_framework","massa_time","massa_versioning","massa_wallet","massa_xtask"]; \ No newline at end of file +window.ALL_CRATES = ["massa_api","massa_api_exports","massa_async_pool","massa_bootstrap","massa_channel","massa_cipher","massa_client","massa_consensus_exports","massa_consensus_worker","massa_db_exports","massa_db_worker","massa_deferred_calls","massa_event_cache","massa_executed_ops","massa_execution_exports","massa_execution_worker","massa_factory_exports","massa_factory_worker","massa_final_state","massa_grpc","massa_hash","massa_ledger_exports","massa_ledger_worker","massa_logging","massa_metrics","massa_models","massa_module_cache","massa_node","massa_pool_exports","massa_pool_worker","massa_pos_exports","massa_pos_worker","massa_protocol_exports","massa_protocol_worker","massa_sdk","massa_serialization","massa_signature","massa_storage","massa_test_framework","massa_time","massa_versioning","massa_wallet","massa_xtask"]; \ No newline at end of file diff --git a/help.html b/help.html index 48e704b466a..082564db870 100644 --- a/help.html +++ b/help.html @@ -1 +1 @@ -Help

Rustdoc help

Back
\ No newline at end of file +Help

Rustdoc help

Back
\ No newline at end of file diff --git a/massa_api/api/fn.broadcast_via_ws.html b/massa_api/api/fn.broadcast_via_ws.html index 968a6fa0762..b14e8fa2d88 100644 --- a/massa_api/api/fn.broadcast_via_ws.html +++ b/massa_api/api/fn.broadcast_via_ws.html @@ -1,4 +1,4 @@ -broadcast_via_ws in massa_api::api - Rust

Function massa_api::api::broadcast_via_ws

source ·
async fn broadcast_via_ws<T: Serialize + Send + Clone + 'static>(
+broadcast_via_ws in massa_api::api - Rust

Function massa_api::api::broadcast_via_ws

source ·
async fn broadcast_via_ws<T: Serialize + Send + Clone + 'static>(
     sender: Sender<T>,
     pending: PendingSubscriptionSink,
 ) -> SubscriptionResult
\ No newline at end of file diff --git a/massa_api/struct.API.html b/massa_api/struct.API.html index 0111b44bd3c..1842e1361de 100644 --- a/massa_api/struct.API.html +++ b/massa_api/struct.API.html @@ -1,22 +1,22 @@ -API in massa_api - Rust

Struct massa_api::API

source ·
pub struct API<T>(pub(crate) T);
Expand description

The API wrapper

+API in massa_api - Rust

Struct massa_api::API

source ·
pub struct API<T>(pub(crate) T);
Expand description

The API wrapper

Tuple Fields§

§0: T

Implementations§

source§

impl API<ApiV2>

source

pub fn new( consensus_controller: Box<dyn ConsensusController>, consensus_broadcasts: ConsensusBroadcasts, - execution_controller: Box<dyn ExecutionController>, + execution_controller: Box<dyn ExecutionController>, pool_broadcasts: PoolBroadcasts, api_settings: APIConfig, version: Version, ) -> Self

generate a new massa API

source§

impl API<Private>

source

pub fn new( protocol_controller: Box<dyn ProtocolController>, - execution_controller: Box<dyn ExecutionController>, + execution_controller: Box<dyn ExecutionController>, api_settings: APIConfig, stop_cv: Arc<(Mutex<bool>, Condvar)>, node_wallet: Arc<RwLock<Wallet>>, ) -> Self

generate a new private API

source§

impl API<Public>

source

pub fn new( consensus_controller: Box<dyn ConsensusController>, - execution_controller: Box<dyn ExecutionController>, + execution_controller: Box<dyn ExecutionController>, api_settings: APIConfig, selector_controller: Box<dyn SelectorController>, pool_command_sender: Box<dyn PoolController>, @@ -27,21 +27,21 @@ storage: Storage, mip_store: MipStore, ) -> Self

generate a new public API

-

Trait Implementations§

source§

impl ApiServer for API<ApiV2>

source§

fn serve<'life0, 'life1, 'async_trait>( +

Trait Implementations§

source§

impl ApiServer for API<ApiV2>

source§

fn serve<'life0, 'life1, 'async_trait>( self, url: &'life0 SocketAddr, api_config: &'life1 APIConfig, ) -> Pin<Box<dyn Future<Output = Result<StopHandle, JsonRpseeError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

Start the API
source§

impl RpcServer for API<Private>

source§

fn serve<'life0, 'life1, 'async_trait>( + 'life1: 'async_trait,

Start the API
source§

impl RpcServer for API<Private>

source§

fn serve<'life0, 'life1, 'async_trait>( self, url: &'life0 SocketAddr, settings: &'life1 APIConfig, ) -> Pin<Box<dyn Future<Output = Result<StopHandle, JsonRpseeError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, - 'life1: 'async_trait,

Start the API
source§

impl RpcServer for API<Public>

source§

fn serve<'life0, 'life1, 'async_trait>( + 'life1: 'async_trait,

Start the API
source§

impl RpcServer for API<Public>

source§

fn serve<'life0, 'life1, 'async_trait>( self, url: &'life0 SocketAddr, api_config: &'life1 APIConfig, @@ -165,5 +165,6 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api/struct.ApiV2.html b/massa_api/struct.ApiV2.html index 5cea53a1c3d..a72463cdc59 100644 --- a/massa_api/struct.ApiV2.html +++ b/massa_api/struct.ApiV2.html @@ -1,14 +1,14 @@ -ApiV2 in massa_api - Rust

Struct massa_api::ApiV2

source ·
pub struct ApiV2 {
+ApiV2 in massa_api - Rust

Struct massa_api::ApiV2

source ·
pub struct ApiV2 {
     pub consensus_controller: Box<dyn ConsensusController>,
     pub consensus_broadcasts: ConsensusBroadcasts,
-    pub execution_controller: Box<dyn ExecutionController>,
+    pub execution_controller: Box<dyn ExecutionController>,
     pub pool_broadcasts: PoolBroadcasts,
     pub api_settings: APIConfig,
     pub version: Version,
 }
Expand description

API v2 content

Fields§

§consensus_controller: Box<dyn ConsensusController>

link to the consensus component

§consensus_broadcasts: ConsensusBroadcasts

channels with information broadcasted by the consensus

-
§execution_controller: Box<dyn ExecutionController>

link to the execution component

+
§execution_controller: Box<dyn ExecutionController>

link to the execution component

§pool_broadcasts: PoolBroadcasts

channels with information broadcasted by the pool

§api_settings: APIConfig

API settings

§version: Version

node version

@@ -123,5 +123,6 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api/struct.Private.html b/massa_api/struct.Private.html index a8b1232871d..7d45292928b 100644 --- a/massa_api/struct.Private.html +++ b/massa_api/struct.Private.html @@ -1,12 +1,12 @@ -Private in massa_api - Rust

Struct massa_api::Private

source ·
pub struct Private {
+Private in massa_api - Rust

Struct massa_api::Private

source ·
pub struct Private {
     pub protocol_controller: Box<dyn ProtocolController>,
-    pub execution_controller: Box<dyn ExecutionController>,
+    pub execution_controller: Box<dyn ExecutionController>,
     pub api_settings: APIConfig,
     pub stop_cv: Arc<(Mutex<bool>, Condvar)>,
     pub node_wallet: Arc<RwLock<Wallet>>,
 }
Expand description

Private API content

Fields§

§protocol_controller: Box<dyn ProtocolController>

link to the protocol component

-
§execution_controller: Box<dyn ExecutionController>

link to the execution component

+
§execution_controller: Box<dyn ExecutionController>

link to the execution component

§api_settings: APIConfig

API settings

§stop_cv: Arc<(Mutex<bool>, Condvar)>

Mechanism by which to gracefully shut down. To be a clone of the same pair provided to the ctrlc handler.

@@ -122,5 +122,6 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api/struct.Public.html b/massa_api/struct.Public.html index 1c1515950ce..21bc7f02cbf 100644 --- a/massa_api/struct.Public.html +++ b/massa_api/struct.Public.html @@ -1,6 +1,6 @@ -Public in massa_api - Rust

Struct massa_api::Public

source ·
pub struct Public {
+Public in massa_api - Rust

Struct massa_api::Public

source ·
pub struct Public {
     pub consensus_controller: Box<dyn ConsensusController>,
-    pub execution_controller: Box<dyn ExecutionController>,
+    pub execution_controller: Box<dyn ExecutionController>,
     pub selector_controller: Box<dyn SelectorController>,
     pub pool_command_sender: Box<dyn PoolController>,
     pub protocol_controller: Box<dyn ProtocolController>,
@@ -12,7 +12,7 @@
     pub keypair_factory: KeyPairFactory,
 }
Expand description

Public API component

Fields§

§consensus_controller: Box<dyn ConsensusController>

link to the consensus component

-
§execution_controller: Box<dyn ExecutionController>

link to the execution component

+
§execution_controller: Box<dyn ExecutionController>

link to the execution component

§selector_controller: Box<dyn SelectorController>

link to the selector component

§pool_command_sender: Box<dyn PoolController>

link to the pool component

§protocol_controller: Box<dyn ProtocolController>

link to the protocol component

@@ -133,5 +133,6 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api/struct.StopHandle.html b/massa_api/struct.StopHandle.html index 7906aec58a5..79fc68fc0f7 100644 --- a/massa_api/struct.StopHandle.html +++ b/massa_api/struct.StopHandle.html @@ -1,4 +1,4 @@ -StopHandle in massa_api - Rust

Struct massa_api::StopHandle

source ·
pub struct StopHandle {
+StopHandle in massa_api - Rust

Struct massa_api::StopHandle

source ·
pub struct StopHandle {
     pub(crate) server_handler: ServerHandle,
 }
Expand description

Used to be able to stop the API

Fields§

§server_handler: ServerHandle

Implementations§

source§

impl StopHandle

source

pub async fn stop(self)

stop the API gracefully

@@ -113,5 +113,6 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api/trait.MassaRpcServer.html b/massa_api/trait.MassaRpcServer.html index 7876b65120e..9d64a71cc87 100644 --- a/massa_api/trait.MassaRpcServer.html +++ b/massa_api/trait.MassaRpcServer.html @@ -200,7 +200,7 @@ 'life0: 'async_trait; fn get_openrpc_spec<'life0, 'async_trait>( &'life0 self, - ) -> Pin<Box<dyn Future<Output = RpcResult<Value>> + Send + 'async_trait>> + ) -> Pin<Box<dyn Future<Output = RpcResult<Value>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_deferred_call_quote<'life0, 'async_trait>( @@ -446,7 +446,7 @@
source

fn get_openrpc_spec<'life0, 'async_trait>( &'life0 self, -) -> Pin<Box<dyn Future<Output = RpcResult<Value>> + Send + 'async_trait>>
where +) -> Pin<Box<dyn Future<Output = RpcResult<Value>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get OpenRPC specification.

source

fn get_deferred_call_quote<'life0, 'async_trait>( diff --git a/massa_api_exports/address/struct.AddressFilter.html b/massa_api_exports/address/struct.AddressFilter.html index d46a3745f03..faed616e69b 100644 --- a/massa_api_exports/address/struct.AddressFilter.html +++ b/massa_api_exports/address/struct.AddressFilter.html @@ -1,13 +1,13 @@ -AddressFilter in massa_api_exports::address - Rust

Struct massa_api_exports::address::AddressFilter

source ·
pub struct AddressFilter {
+AddressFilter in massa_api_exports::address - Rust

Struct massa_api_exports::address::AddressFilter

source ·
pub struct AddressFilter {
     pub address: Address,
     pub is_final: bool,
 }
Expand description

filter used when retrieving address information

Fields§

§address: Address

Address

§is_final: bool

true means final false means candidate

-

Trait Implementations§

source§

impl Clone for AddressFilter

source§

fn clone(&self) -> AddressFilter

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AddressFilter

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for AddressFilter

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for AddressFilter

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for AddressFilter

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for AddressFilter

source§

fn clone(&self) -> AddressFilter

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AddressFilter

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for AddressFilter

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for AddressFilter

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for AddressFilter

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -106,6 +106,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more

source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/address/struct.AddressInfo.html b/massa_api_exports/address/struct.AddressInfo.html index 96d4840fe21..6c9aa8d7d43 100644 --- a/massa_api_exports/address/struct.AddressInfo.html +++ b/massa_api_exports/address/struct.AddressInfo.html @@ -1,4 +1,4 @@ -AddressInfo in massa_api_exports::address - Rust

Struct massa_api_exports::address::AddressInfo

source ·
pub struct AddressInfo {
Show 15 fields +AddressInfo in massa_api_exports::address - Rust

Struct massa_api_exports::address::AddressInfo

source ·
pub struct AddressInfo {
Show 15 fields pub address: Address, pub thread: u8, pub final_balance: Amount, @@ -31,9 +31,9 @@
§created_endorsements: Vec<EndorsementId>

created endorsements

§cycle_infos: Vec<ExecutionAddressCycleInfo>

cycle information

Implementations§

source§

impl AddressInfo

source

pub fn compact(&self) -> CompactAddressInfo

Only essential info about an address

-

Trait Implementations§

source§

impl Clone for AddressInfo

source§

fn clone(&self) -> AddressInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for AddressInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for AddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for AddressInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for AddressInfo

source§

fn clone(&self) -> AddressInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for AddressInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for AddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for AddressInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -132,6 +132,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/address/struct.CompactAddressInfo.html b/massa_api_exports/address/struct.CompactAddressInfo.html index fa3bb389c2d..77c32e0fe0e 100644 --- a/massa_api_exports/address/struct.CompactAddressInfo.html +++ b/massa_api_exports/address/struct.CompactAddressInfo.html @@ -1,4 +1,4 @@ -CompactAddressInfo in massa_api_exports::address - Rust

Struct massa_api_exports::address::CompactAddressInfo

source ·
pub struct CompactAddressInfo {
+CompactAddressInfo in massa_api_exports::address - Rust

Struct massa_api_exports::address::CompactAddressInfo

source ·
pub struct CompactAddressInfo {
     pub address: Address,
     pub thread: u8,
     pub candidate_rolls: u64,
@@ -14,9 +14,9 @@
 
§active_rolls: u64

active rolls

§final_balance: Amount

final balance

§candidate_balance: Amount

candidate balance

-

Trait Implementations§

source§

impl Debug for CompactAddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for CompactAddressInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for CompactAddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for CompactAddressInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for CompactAddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for CompactAddressInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for CompactAddressInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for CompactAddressInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where @@ -112,6 +112,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/block/struct.BlockInfo.html b/massa_api_exports/block/struct.BlockInfo.html index 021255b422f..8010ef37fb0 100644 --- a/massa_api_exports/block/struct.BlockInfo.html +++ b/massa_api_exports/block/struct.BlockInfo.html @@ -1,12 +1,12 @@ -BlockInfo in massa_api_exports::block - Rust

Struct massa_api_exports::block::BlockInfo

source ·
pub struct BlockInfo {
+BlockInfo in massa_api_exports::block - Rust

Struct massa_api_exports::block::BlockInfo

source ·
pub struct BlockInfo {
     pub id: BlockId,
     pub content: Option<BlockInfoContent>,
 }
Expand description

refactor to delete

Fields§

§id: BlockId

block id

§content: Option<BlockInfoContent>

optional block info content

-

Trait Implementations§

source§

impl Clone for BlockInfo

source§

fn clone(&self) -> BlockInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BlockInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for BlockInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for BlockInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for BlockInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for BlockInfo

source§

fn clone(&self) -> BlockInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BlockInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for BlockInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for BlockInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for BlockInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -105,6 +105,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/block/struct.BlockInfoContent.html b/massa_api_exports/block/struct.BlockInfoContent.html index e208cc8bb45..89e755ee6a5 100644 --- a/massa_api_exports/block/struct.BlockInfoContent.html +++ b/massa_api_exports/block/struct.BlockInfoContent.html @@ -1,4 +1,4 @@ -BlockInfoContent in massa_api_exports::block - Rust

Struct massa_api_exports::block::BlockInfoContent

source ·
pub struct BlockInfoContent {
+BlockInfoContent in massa_api_exports::block - Rust

Struct massa_api_exports::block::BlockInfoContent

source ·
pub struct BlockInfoContent {
     pub is_final: bool,
     pub is_in_blockclique: bool,
     pub is_candidate: bool,
@@ -10,9 +10,9 @@
 
§is_candidate: bool

true if candidate (active any clique but not final)

§is_discarded: bool

true if discarded

§block: Block

block

-

Trait Implementations§

source§

impl Clone for BlockInfoContent

source§

fn clone(&self) -> BlockInfoContent

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BlockInfoContent

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for BlockInfoContent

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for BlockInfoContent

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for BlockInfoContent

source§

fn clone(&self) -> BlockInfoContent

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BlockInfoContent

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for BlockInfoContent

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for BlockInfoContent

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -110,6 +110,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/block/struct.BlockSummary.html b/massa_api_exports/block/struct.BlockSummary.html index a6765d082bd..2a5794e9ee4 100644 --- a/massa_api_exports/block/struct.BlockSummary.html +++ b/massa_api_exports/block/struct.BlockSummary.html @@ -1,4 +1,4 @@ -BlockSummary in massa_api_exports::block - Rust

Struct massa_api_exports::block::BlockSummary

source ·
pub struct BlockSummary {
+BlockSummary in massa_api_exports::block - Rust

Struct massa_api_exports::block::BlockSummary

source ·
pub struct BlockSummary {
     pub id: BlockId,
     pub is_final: bool,
     pub is_stale: bool,
@@ -14,9 +14,9 @@
 
§slot: Slot

the slot the block is in

§creator: Address

the block creator

§parents: Vec<BlockId>

the block parents

-

Trait Implementations§

source§

impl Clone for BlockSummary

source§

fn clone(&self) -> BlockSummary

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BlockSummary

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for BlockSummary

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for BlockSummary

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for BlockSummary

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for BlockSummary

source§

fn clone(&self) -> BlockSummary

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BlockSummary

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for BlockSummary

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for BlockSummary

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for BlockSummary

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -115,6 +115,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/config/struct.APIConfig.html b/massa_api_exports/config/struct.APIConfig.html index a762b02f7d8..1761385a324 100644 --- a/massa_api_exports/config/struct.APIConfig.html +++ b/massa_api_exports/config/struct.APIConfig.html @@ -1,4 +1,4 @@ -APIConfig in massa_api_exports::config - Rust

Struct massa_api_exports::config::APIConfig

source ·
pub struct APIConfig {
Show 37 fields +APIConfig in massa_api_exports::config - Rust

Struct massa_api_exports::config::APIConfig

source ·
pub struct APIConfig {
Show 37 fields pub draw_lookahead_period_count: u64, pub bind_private: SocketAddr, pub bind_public: SocketAddr, @@ -75,8 +75,8 @@
§deferred_credits_delta: MassaTime

Delta to compute upper bounds when fetching deferred credits

§minimal_fees: Amount

minimal fees to include an operation in a block

§deferred_calls_config: DeferredCallsConfig

deferred calls config

-

Trait Implementations§

source§

impl Clone for APIConfig

source§

fn clone(&self) -> APIConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for APIConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for APIConfig

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for APIConfig

source§

fn clone(&self) -> APIConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for APIConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for APIConfig

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -174,6 +174,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/datastore/struct.DatastoreEntryInput.html b/massa_api_exports/datastore/struct.DatastoreEntryInput.html index b1c6c80dd22..e172d2e9a99 100644 --- a/massa_api_exports/datastore/struct.DatastoreEntryInput.html +++ b/massa_api_exports/datastore/struct.DatastoreEntryInput.html @@ -1,12 +1,12 @@ -DatastoreEntryInput in massa_api_exports::datastore - Rust

Struct massa_api_exports::datastore::DatastoreEntryInput

source ·
pub struct DatastoreEntryInput {
+DatastoreEntryInput in massa_api_exports::datastore - Rust

Struct massa_api_exports::datastore::DatastoreEntryInput

source ·
pub struct DatastoreEntryInput {
     pub address: Address,
     pub key: Vec<u8>,
 }
Expand description

Datastore entry query input structure

Fields§

§address: Address

associated address of the entry

§key: Vec<u8>

datastore key

-

Trait Implementations§

source§

impl Clone for DatastoreEntryInput

source§

fn clone(&self) -> DatastoreEntryInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DatastoreEntryInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DatastoreEntryInput

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DatastoreEntryInput

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for DatastoreEntryInput

source§

fn clone(&self) -> DatastoreEntryInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DatastoreEntryInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DatastoreEntryInput

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DatastoreEntryInput

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -104,6 +104,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/datastore/struct.DatastoreEntryOutput.html b/massa_api_exports/datastore/struct.DatastoreEntryOutput.html index 07a18c08233..b748c07e191 100644 --- a/massa_api_exports/datastore/struct.DatastoreEntryOutput.html +++ b/massa_api_exports/datastore/struct.DatastoreEntryOutput.html @@ -1,12 +1,12 @@ -DatastoreEntryOutput in massa_api_exports::datastore - Rust
pub struct DatastoreEntryOutput {
+DatastoreEntryOutput in massa_api_exports::datastore - Rust
pub struct DatastoreEntryOutput {
     pub final_value: Option<Vec<u8>>,
     pub candidate_value: Option<Vec<u8>>,
 }
Expand description

Datastore entry query output structure

Fields§

§final_value: Option<Vec<u8>>

final datastore entry value

§candidate_value: Option<Vec<u8>>

candidate datastore entry value

-

Trait Implementations§

source§

impl Clone for DatastoreEntryOutput

source§

fn clone(&self) -> DatastoreEntryOutput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DatastoreEntryOutput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DatastoreEntryOutput

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for DatastoreEntryOutput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for DatastoreEntryOutput

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for DatastoreEntryOutput

source§

fn clone(&self) -> DatastoreEntryOutput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DatastoreEntryOutput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DatastoreEntryOutput

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for DatastoreEntryOutput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for DatastoreEntryOutput

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -105,6 +105,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/endorsement/struct.EndorsementInfo.html b/massa_api_exports/endorsement/struct.EndorsementInfo.html index dafb24a1748..a1b61eaf2f3 100644 --- a/massa_api_exports/endorsement/struct.EndorsementInfo.html +++ b/massa_api_exports/endorsement/struct.EndorsementInfo.html @@ -1,4 +1,4 @@ -EndorsementInfo in massa_api_exports::endorsement - Rust

Struct massa_api_exports::endorsement::EndorsementInfo

source ·
pub struct EndorsementInfo {
+EndorsementInfo in massa_api_exports::endorsement - Rust

Struct massa_api_exports::endorsement::EndorsementInfo

source ·
pub struct EndorsementInfo {
     pub id: EndorsementId,
     pub in_pool: bool,
     pub in_blocks: Vec<BlockId>,
@@ -11,9 +11,9 @@
 if it appears in multiple blocks, these blocks are in different cliques

§is_final: bool

true if the endorsement is final (for example in a final block)

§endorsement: SecureShareEndorsement

the endorsement itself

-

Trait Implementations§

source§

impl Clone for EndorsementInfo

source§

fn clone(&self) -> EndorsementInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for EndorsementInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for EndorsementInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for EndorsementInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for EndorsementInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for EndorsementInfo

source§

fn clone(&self) -> EndorsementInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for EndorsementInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for EndorsementInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for EndorsementInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for EndorsementInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -112,6 +112,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/enum.ListType.html b/massa_api_exports/enum.ListType.html index 30af0c6914e..e6865a0291f 100644 --- a/massa_api_exports/enum.ListType.html +++ b/massa_api_exports/enum.ListType.html @@ -1,4 +1,4 @@ -ListType in massa_api_exports - Rust

Enum massa_api_exports::ListType

source ·
pub enum ListType {
+ListType in massa_api_exports - Rust

Enum massa_api_exports::ListType

source ·
pub enum ListType {
     Blacklist,
     Whitelist,
 }
Expand description

Bootstrap lists types

@@ -100,5 +100,6 @@ V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/enum.ScrudOperation.html b/massa_api_exports/enum.ScrudOperation.html index c770073605d..2a7c3cdd573 100644 --- a/massa_api_exports/enum.ScrudOperation.html +++ b/massa_api_exports/enum.ScrudOperation.html @@ -1,4 +1,4 @@ -ScrudOperation in massa_api_exports - Rust

Enum massa_api_exports::ScrudOperation

source ·
pub enum ScrudOperation {
+ScrudOperation in massa_api_exports - Rust

Enum massa_api_exports::ScrudOperation

source ·
pub enum ScrudOperation {
     Search,
     Create,
     Read,
@@ -106,5 +106,6 @@
     V: MultiLane<T>,
§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/error/enum.ApiError.html b/massa_api_exports/error/enum.ApiError.html index 25fdfdd9cd9..d844ab96a98 100644 --- a/massa_api_exports/error/enum.ApiError.html +++ b/massa_api_exports/error/enum.ApiError.html @@ -1,4 +1,4 @@ -ApiError in massa_api_exports::error - Rust

Enum massa_api_exports::error::ApiError

source ·
#[non_exhaustive]
pub enum ApiError { +ApiError in massa_api_exports::error - Rust

Enum massa_api_exports::error::ApiError

source ·
#[non_exhaustive]
pub enum ApiError {
Show 17 variants SendChannelError(String), ReceiveChannelError(String), MassaHashError(MassaHashError), @@ -7,7 +7,7 @@ ProtocolError(String), ModelsError(ModelsError), TimeError(TimeError), - WalletError(WalletError), + WalletError(WalletError), NotFound, InconsistencyError(String), MissingCommandSender(String), @@ -25,7 +25,7 @@
§

ProtocolError(String)

Protocol error: {0}

§

ModelsError(ModelsError)

Models error: {0}

§

TimeError(TimeError)

Time error: {0}

-
§

WalletError(WalletError)

Wallet error: {0}

+
§

WalletError(WalletError)

Wallet error: {0}

§

NotFound

Not found

§

InconsistencyError(String)

Inconsistency error: {0}

§

MissingCommandSender(String)

Missing command sender: {0}

@@ -34,7 +34,7 @@
§

BadRequest(String)

Bad request: {0}

§

InternalServerError(String)

Internal server error: {0}

§

FactoryError(FactoryError)

Versioning Factory error: {0}

-

Trait Implementations§

source§

impl Debug for ApiError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ApiError

source§

fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ApiError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<ApiError> for ErrorObjectOwned

source§

fn from(err: ApiError) -> Self

Converts to this type from the input type.
source§

impl From<FactoryError> for ApiError

source§

fn from(source: FactoryError) -> Self

Converts to this type from the input type.
source§

impl From<MassaHashError> for ApiError

source§

fn from(source: MassaHashError) -> Self

Converts to this type from the input type.
source§

impl From<ModelsError> for ApiError

source§

fn from(source: ModelsError) -> Self

Converts to this type from the input type.
source§

impl From<TimeError> for ApiError

source§

fn from(source: TimeError) -> Self

Converts to this type from the input type.
source§

impl From<WalletError> for ApiError

source§

fn from(source: WalletError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for ApiError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ApiError

source§

fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ApiError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<ApiError> for ErrorObjectOwned

source§

fn from(err: ApiError) -> Self

Converts to this type from the input type.
source§

impl From<FactoryError> for ApiError

source§

fn from(source: FactoryError) -> Self

Converts to this type from the input type.
source§

impl From<MassaHashError> for ApiError

source§

fn from(source: MassaHashError) -> Self

Converts to this type from the input type.
source§

impl From<ModelsError> for ApiError

source§

fn from(source: ModelsError) -> Self

Converts to this type from the input type.
source§

impl From<TimeError> for ApiError

source§

fn from(source: TimeError) -> Self

Converts to this type from the input type.
source§

impl From<WalletError> for ApiError

source§

fn from(source: WalletError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where @@ -130,5 +130,6 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/enum.ReadOnlyResult.html b/massa_api_exports/execution/enum.ReadOnlyResult.html index c237c9dcedd..7dce8166a43 100644 --- a/massa_api_exports/execution/enum.ReadOnlyResult.html +++ b/massa_api_exports/execution/enum.ReadOnlyResult.html @@ -1,12 +1,12 @@ -ReadOnlyResult in massa_api_exports::execution - Rust

Enum massa_api_exports::execution::ReadOnlyResult

source ·
pub enum ReadOnlyResult {
+ReadOnlyResult in massa_api_exports::execution - Rust

Enum massa_api_exports::execution::ReadOnlyResult

source ·
pub enum ReadOnlyResult {
     Error(String),
     Ok(Vec<u8>),
 }
Expand description

The result of the read-only execution.

Variants§

§

Error(String)

An error occurred during execution.

§

Ok(Vec<u8>)

The result of a successful execution.

-

Trait Implementations§

source§

impl Clone for ReadOnlyResult

source§

fn clone(&self) -> ReadOnlyResult

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReadOnlyResult

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ReadOnlyResult

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ReadOnlyResult

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for ReadOnlyResult

source§

fn clone(&self) -> ReadOnlyResult

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReadOnlyResult

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ReadOnlyResult

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ReadOnlyResult

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -104,6 +104,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/enum.TransferContext.html b/massa_api_exports/execution/enum.TransferContext.html index 1b2fc2707ad..5e7f8cdf958 100644 --- a/massa_api_exports/execution/enum.TransferContext.html +++ b/massa_api_exports/execution/enum.TransferContext.html @@ -1,12 +1,12 @@ -TransferContext in massa_api_exports::execution - Rust

Enum massa_api_exports::execution::TransferContext

source ·
pub enum TransferContext {
+TransferContext in massa_api_exports::execution - Rust

Enum massa_api_exports::execution::TransferContext

source ·
pub enum TransferContext {
     Operation(OperationId),
     ASC(u64),
 }
Expand description

Context of the transfer

Variants§

§

Operation(OperationId)

Transfer made in an operation

§

ASC(u64)

Transfer made in an asynchronous call

-

Trait Implementations§

source§

impl Clone for TransferContext

source§

fn clone(&self) -> TransferContext

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TransferContext

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for TransferContext

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for TransferContext

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for TransferContext

source§

fn clone(&self) -> TransferContext

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TransferContext

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for TransferContext

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for TransferContext

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -104,6 +104,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.DeferredCallResponse.html b/massa_api_exports/execution/struct.DeferredCallResponse.html index e836d632c4b..7c385df38f6 100644 --- a/massa_api_exports/execution/struct.DeferredCallResponse.html +++ b/massa_api_exports/execution/struct.DeferredCallResponse.html @@ -1,12 +1,12 @@ -DeferredCallResponse in massa_api_exports::execution - Rust
pub struct DeferredCallResponse {
+DeferredCallResponse in massa_api_exports::execution - Rust
pub struct DeferredCallResponse {
     pub call_id: String,
     pub call: DeferredCall,
 }
Expand description

response for deferred call

Fields§

§call_id: String

deferred call id

§call: DeferredCall

deferred call

-

Trait Implementations§

source§

impl Clone for DeferredCallResponse

source§

fn clone(&self) -> DeferredCallResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for DeferredCallResponse

source§

fn clone(&self) -> DeferredCallResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -104,6 +104,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.DeferredCallsQuoteRequest.html b/massa_api_exports/execution/struct.DeferredCallsQuoteRequest.html index 6880abbb39e..f4d746d17bf 100644 --- a/massa_api_exports/execution/struct.DeferredCallsQuoteRequest.html +++ b/massa_api_exports/execution/struct.DeferredCallsQuoteRequest.html @@ -1,4 +1,4 @@ -DeferredCallsQuoteRequest in massa_api_exports::execution - Rust
pub struct DeferredCallsQuoteRequest {
+DeferredCallsQuoteRequest in massa_api_exports::execution - Rust
pub struct DeferredCallsQuoteRequest {
     pub target_slot: Slot,
     pub max_gas_request: u64,
     pub params_size: u64,
@@ -6,9 +6,9 @@
 

Fields§

§target_slot: Slot

The slot at which the deferred call is to be executed.

§max_gas_request: u64

The maximum gas requested.

§params_size: u64

Size of parameters

-

Trait Implementations§

source§

impl Clone for DeferredCallsQuoteRequest

source§

fn clone(&self) -> DeferredCallsQuoteRequest

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallsQuoteRequest

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallsQuoteRequest

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallsQuoteRequest

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for DeferredCallsQuoteRequest

source§

fn clone(&self) -> DeferredCallsQuoteRequest

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallsQuoteRequest

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallsQuoteRequest

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallsQuoteRequest

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -106,6 +106,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.DeferredCallsQuoteResponse.html b/massa_api_exports/execution/struct.DeferredCallsQuoteResponse.html index 8985abdfdaa..a2cfff8be7b 100644 --- a/massa_api_exports/execution/struct.DeferredCallsQuoteResponse.html +++ b/massa_api_exports/execution/struct.DeferredCallsQuoteResponse.html @@ -1,4 +1,4 @@ -DeferredCallsQuoteResponse in massa_api_exports::execution - Rust
pub struct DeferredCallsQuoteResponse {
+DeferredCallsQuoteResponse in massa_api_exports::execution - Rust
pub struct DeferredCallsQuoteResponse {
     pub target_slot: Slot,
     pub max_gas_request: u64,
     pub available: bool,
@@ -8,9 +8,9 @@
 
§max_gas_request: u64

The maximum gas requested.

§available: bool

if the slot is bookable

§price: Amount

the cost for booking the call

-

Trait Implementations§

source§

impl Clone for DeferredCallsQuoteResponse

source§

fn clone(&self) -> DeferredCallsQuoteResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallsQuoteResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallsQuoteResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallsQuoteResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for DeferredCallsQuoteResponse

source§

fn clone(&self) -> DeferredCallsQuoteResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallsQuoteResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallsQuoteResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallsQuoteResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -108,6 +108,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.DeferredCallsSlotResponse.html b/massa_api_exports/execution/struct.DeferredCallsSlotResponse.html index 086112b9557..eb784d5f0f1 100644 --- a/massa_api_exports/execution/struct.DeferredCallsSlotResponse.html +++ b/massa_api_exports/execution/struct.DeferredCallsSlotResponse.html @@ -1,12 +1,12 @@ -DeferredCallsSlotResponse in massa_api_exports::execution - Rust
pub struct DeferredCallsSlotResponse {
+DeferredCallsSlotResponse in massa_api_exports::execution - Rust
pub struct DeferredCallsSlotResponse {
     pub slot: Slot,
     pub call_ids: Vec<String>,
 }
Expand description

response for deferred calls by slot

Fields§

§slot: Slot

deferred calls

§call_ids: Vec<String>

deferred calls

-

Trait Implementations§

source§

impl Clone for DeferredCallsSlotResponse

source§

fn clone(&self) -> DeferredCallsSlotResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallsSlotResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallsSlotResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallsSlotResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for DeferredCallsSlotResponse

source§

fn clone(&self) -> DeferredCallsSlotResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeferredCallsSlotResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for DeferredCallsSlotResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for DeferredCallsSlotResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -104,6 +104,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.ExecuteReadOnlyResponse.html b/massa_api_exports/execution/struct.ExecuteReadOnlyResponse.html index 606e41ea0ea..3b437088847 100644 --- a/massa_api_exports/execution/struct.ExecuteReadOnlyResponse.html +++ b/massa_api_exports/execution/struct.ExecuteReadOnlyResponse.html @@ -1,4 +1,4 @@ -ExecuteReadOnlyResponse in massa_api_exports::execution - Rust
pub struct ExecuteReadOnlyResponse {
+ExecuteReadOnlyResponse in massa_api_exports::execution - Rust
pub struct ExecuteReadOnlyResponse {
     pub executed_at: Slot,
     pub result: ReadOnlyResult,
     pub output_events: VecDeque<SCOutputEvent>,
@@ -10,9 +10,9 @@
 
§output_events: VecDeque<SCOutputEvent>

The output events generated by the read-only execution.

§gas_cost: u64

The gas cost for the execution

§state_changes: StateChanges

state changes caused by the execution step

-

Trait Implementations§

source§

impl Clone for ExecuteReadOnlyResponse

source§

fn clone(&self) -> ExecuteReadOnlyResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ExecuteReadOnlyResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ExecuteReadOnlyResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for ExecuteReadOnlyResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for ExecuteReadOnlyResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for ExecuteReadOnlyResponse

source§

fn clone(&self) -> ExecuteReadOnlyResponse

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ExecuteReadOnlyResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ExecuteReadOnlyResponse

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for ExecuteReadOnlyResponse

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for ExecuteReadOnlyResponse

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -111,6 +111,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.ReadOnlyBytecodeExecution.html b/massa_api_exports/execution/struct.ReadOnlyBytecodeExecution.html index e25f9a1f74c..fbb8df9b1f9 100644 --- a/massa_api_exports/execution/struct.ReadOnlyBytecodeExecution.html +++ b/massa_api_exports/execution/struct.ReadOnlyBytecodeExecution.html @@ -1,4 +1,4 @@ -ReadOnlyBytecodeExecution in massa_api_exports::execution - Rust
pub struct ReadOnlyBytecodeExecution {
+ReadOnlyBytecodeExecution in massa_api_exports::execution - Rust
pub struct ReadOnlyBytecodeExecution {
     pub max_gas: u64,
     pub bytecode: Vec<u8>,
     pub address: Option<Address>,
@@ -10,9 +10,9 @@
 
§address: Option<Address>

caller’s address, optional

§operation_datastore: Option<Vec<u8>>

Operation datastore, optional

§fee: Option<Amount>

fee

-

Trait Implementations§

source§

impl Clone for ReadOnlyBytecodeExecution

source§

fn clone(&self) -> ReadOnlyBytecodeExecution

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReadOnlyBytecodeExecution

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ReadOnlyBytecodeExecution

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ReadOnlyBytecodeExecution

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for ReadOnlyBytecodeExecution

source§

fn clone(&self) -> ReadOnlyBytecodeExecution

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReadOnlyBytecodeExecution

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ReadOnlyBytecodeExecution

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ReadOnlyBytecodeExecution

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -110,6 +110,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.ReadOnlyCall.html b/massa_api_exports/execution/struct.ReadOnlyCall.html index f48c133f43e..7bcf454361d 100644 --- a/massa_api_exports/execution/struct.ReadOnlyCall.html +++ b/massa_api_exports/execution/struct.ReadOnlyCall.html @@ -1,4 +1,4 @@ -ReadOnlyCall in massa_api_exports::execution - Rust

Struct massa_api_exports::execution::ReadOnlyCall

source ·
pub struct ReadOnlyCall {
+ReadOnlyCall in massa_api_exports::execution - Rust

Struct massa_api_exports::execution::ReadOnlyCall

source ·
pub struct ReadOnlyCall {
     pub max_gas: u64,
     pub target_address: Address,
     pub target_function: String,
@@ -14,9 +14,9 @@
 
§caller_address: Option<Address>

caller’s address, optional

§coins: Option<Amount>

coins

§fee: Option<Amount>

fee

-

Trait Implementations§

source§

impl Clone for ReadOnlyCall

source§

fn clone(&self) -> ReadOnlyCall

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReadOnlyCall

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ReadOnlyCall

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ReadOnlyCall

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for ReadOnlyCall

source§

fn clone(&self) -> ReadOnlyCall

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReadOnlyCall

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ReadOnlyCall

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ReadOnlyCall

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -114,6 +114,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/execution/struct.Transfer.html b/massa_api_exports/execution/struct.Transfer.html index e69db645d8f..80b2fe26718 100644 --- a/massa_api_exports/execution/struct.Transfer.html +++ b/massa_api_exports/execution/struct.Transfer.html @@ -1,4 +1,4 @@ -Transfer in massa_api_exports::execution - Rust

Struct massa_api_exports::execution::Transfer

source ·
pub struct Transfer {
+Transfer in massa_api_exports::execution - Rust

Struct massa_api_exports::execution::Transfer

source ·
pub struct Transfer {
     pub from: Address,
     pub to: Address,
     pub amount: Amount,
@@ -16,9 +16,9 @@
 
§fee: Amount

Fee

§block_id: BlockId

Block ID

§context: TransferContext

Context

-

Trait Implementations§

source§

impl Clone for Transfer

source§

fn clone(&self) -> Transfer

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Transfer

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Transfer

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for Transfer

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for Transfer

source§

fn clone(&self) -> Transfer

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Transfer

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Transfer

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for Transfer

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -116,6 +116,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/ledger/struct.LedgerInfo.html b/massa_api_exports/ledger/struct.LedgerInfo.html index dd7a6f7caa3..8bd514a13e1 100644 --- a/massa_api_exports/ledger/struct.LedgerInfo.html +++ b/massa_api_exports/ledger/struct.LedgerInfo.html @@ -1,4 +1,4 @@ -LedgerInfo in massa_api_exports::ledger - Rust

Struct massa_api_exports::ledger::LedgerInfo

source ·
pub struct LedgerInfo {
+LedgerInfo in massa_api_exports::ledger - Rust

Struct massa_api_exports::ledger::LedgerInfo

source ·
pub struct LedgerInfo {
     pub final_ledger_info: LedgerData,
     pub candidate_ledger_info: LedgerData,
     pub locked_balance: Amount,
@@ -6,9 +6,9 @@
 

Fields§

§final_ledger_info: LedgerData

final data

§candidate_ledger_info: LedgerData

latest data

§locked_balance: Amount

locked balance, for example balance due to a roll sell

-

Trait Implementations§

source§

impl Clone for LedgerInfo

source§

fn clone(&self) -> LedgerInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LedgerInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for LedgerInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for LedgerInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for LedgerInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for LedgerInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for LedgerInfo

source§

fn clone(&self) -> LedgerInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LedgerInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for LedgerInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for LedgerInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for LedgerInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for LedgerInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -108,6 +108,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/node/struct.NodeStatus.html b/massa_api_exports/node/struct.NodeStatus.html index 6ad002d1ad5..a7f6ba6689e 100644 --- a/massa_api_exports/node/struct.NodeStatus.html +++ b/massa_api_exports/node/struct.NodeStatus.html @@ -1,4 +1,4 @@ -NodeStatus in massa_api_exports::node - Rust

Struct massa_api_exports::node::NodeStatus

source ·
pub struct NodeStatus {
Show 17 fields +NodeStatus in massa_api_exports::node - Rust

Struct massa_api_exports::node::NodeStatus

source ·
pub struct NodeStatus {
Show 17 fields pub node_id: NodeId, pub node_ip: Option<IpAddr>, pub version: Version, @@ -34,9 +34,9 @@
§config: CompactConfig

compact configuration

§chain_id: u64

chain id

§minimal_fees: Amount

minimal fees to include an operation in a block

-

Trait Implementations§

source§

impl Clone for NodeStatus

source§

fn clone(&self) -> NodeStatus

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for NodeStatus

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for NodeStatus

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for NodeStatus

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for NodeStatus

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for NodeStatus

source§

fn clone(&self) -> NodeStatus

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for NodeStatus

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for NodeStatus

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for NodeStatus

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for NodeStatus

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -135,6 +135,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/operation/struct.OperationInfo.html b/massa_api_exports/operation/struct.OperationInfo.html index e82fd80746b..6842e75608e 100644 --- a/massa_api_exports/operation/struct.OperationInfo.html +++ b/massa_api_exports/operation/struct.OperationInfo.html @@ -1,4 +1,4 @@ -OperationInfo in massa_api_exports::operation - Rust

Struct massa_api_exports::operation::OperationInfo

source ·
pub struct OperationInfo {
+OperationInfo in massa_api_exports::operation - Rust

Struct massa_api_exports::operation::OperationInfo

source ·
pub struct OperationInfo {
     pub id: OperationId,
     pub in_pool: bool,
     pub in_blocks: Vec<BlockId>,
@@ -15,9 +15,9 @@
 
§thread: u8

Thread in which the operation can be included

§operation: SecureShareOperation

the operation itself

§op_exec_status: Option<bool>

true if the operation execution succeeded, false if failed, None means unknown

-

Trait Implementations§

source§

impl Clone for OperationInfo

source§

fn clone(&self) -> OperationInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for OperationInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for OperationInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for OperationInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for OperationInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for OperationInfo

source§

fn clone(&self) -> OperationInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for OperationInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for OperationInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for OperationInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for OperationInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -116,6 +116,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/operation/struct.OperationInput.html b/massa_api_exports/operation/struct.OperationInput.html index 36d5fcdf64c..a356a676eb9 100644 --- a/massa_api_exports/operation/struct.OperationInput.html +++ b/massa_api_exports/operation/struct.OperationInput.html @@ -1,4 +1,4 @@ -OperationInput in massa_api_exports::operation - Rust

Struct massa_api_exports::operation::OperationInput

source ·
pub struct OperationInput {
+OperationInput in massa_api_exports::operation - Rust

Struct massa_api_exports::operation::OperationInput

source ·
pub struct OperationInput {
     pub creator_public_key: PublicKey,
     pub signature: Signature,
     pub serialized_content: Vec<u8>,
@@ -6,9 +6,9 @@
 

Fields§

§creator_public_key: PublicKey

The public key of the creator of the TX

§signature: Signature

The signature of the operation

§serialized_content: Vec<u8>

The serialized version of the content base58 encoded

-

Trait Implementations§

source§

impl Debug for OperationInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for OperationInput

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for OperationInput

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Debug for OperationInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for OperationInput

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for OperationInput

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where @@ -103,6 +103,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/page/struct.PageRequest.html b/massa_api_exports/page/struct.PageRequest.html index 12a863e3e29..ef924be419b 100644 --- a/massa_api_exports/page/struct.PageRequest.html +++ b/massa_api_exports/page/struct.PageRequest.html @@ -1,12 +1,12 @@ -PageRequest in massa_api_exports::page - Rust

Struct massa_api_exports::page::PageRequest

source ·
pub struct PageRequest {
+PageRequest in massa_api_exports::page - Rust

Struct massa_api_exports::page::PageRequest

source ·
pub struct PageRequest {
     pub limit: usize,
     pub offset: usize,
 }
Expand description

Represents the request inputs for a PagedVec

Fields§

§limit: usize

The limit of elements in a page

§offset: usize

The page offset

-

Trait Implementations§

source§

impl<'de> Deserialize<'de> for PageRequest

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for PageRequest

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl<'de> Deserialize<'de> for PageRequest

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for PageRequest

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where @@ -101,6 +101,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/page/struct.PagedVec.html b/massa_api_exports/page/struct.PagedVec.html index 7bf771a0c8b..5941db74f19 100644 --- a/massa_api_exports/page/struct.PagedVec.html +++ b/massa_api_exports/page/struct.PagedVec.html @@ -1,10 +1,10 @@ -PagedVec in massa_api_exports::page - Rust

Struct massa_api_exports::page::PagedVec

source ·
pub struct PagedVec<T> {
+PagedVec in massa_api_exports::page - Rust

Struct massa_api_exports::page::PagedVec

source ·
pub struct PagedVec<T> {
     res: Vec<T>,
     _total_count: usize,
 }
Expand description

Represents a Vec that can be split across Pages Cf. https://docs.rs/paginate/latest/paginate/

-

Fields§

§res: Vec<T>§_total_count: usize

Implementations§

source§

impl<T: Serialize> PagedVec<T>

source

pub fn new(elements: Vec<T>, page_request: Option<PageRequest>) -> Self

Creates a new Paged Vec with optional limits of item per page and offset

-

Trait Implementations§

source§

impl<T: Clone> Clone for PagedVec<T>

source§

fn clone(&self) -> PagedVec<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T> From<PagedVec<T>> for PagedVecV2<T>

source§

fn from(paged_vec: PagedVec<T>) -> Self

Converts to this type from the input type.
source§

impl<T: Serialize> Serialize for PagedVec<T>

source§

fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl<T> Freeze for PagedVec<T>

§

impl<T> RefUnwindSafe for PagedVec<T>
where +

Fields§

§res: Vec<T>§_total_count: usize

Implementations§

source§

impl<T: Serialize> PagedVec<T>

source

pub fn new(elements: Vec<T>, page_request: Option<PageRequest>) -> Self

Creates a new Paged Vec with optional limits of item per page and offset

+

Trait Implementations§

source§

impl<T: Clone> Clone for PagedVec<T>

source§

fn clone(&self) -> PagedVec<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T> From<PagedVec<T>> for PagedVecV2<T>

source§

fn from(paged_vec: PagedVec<T>) -> Self

Converts to this type from the input type.
source§

impl<T: Serialize> Serialize for PagedVec<T>

source§

fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl<T> Freeze for PagedVec<T>

§

impl<T> RefUnwindSafe for PagedVec<T>
where T: RefUnwindSafe,

§

impl<T> Send for PagedVec<T>
where T: Send,

§

impl<T> Sync for PagedVec<T>
where T: Sync,

§

impl<T> Unpin for PagedVec<T>
where @@ -107,5 +107,6 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/page/struct.PagedVecV2.html b/massa_api_exports/page/struct.PagedVecV2.html index a53927583a3..3f542b6e5ae 100644 --- a/massa_api_exports/page/struct.PagedVecV2.html +++ b/massa_api_exports/page/struct.PagedVecV2.html @@ -1,12 +1,12 @@ -PagedVecV2 in massa_api_exports::page - Rust

Struct massa_api_exports::page::PagedVecV2

source ·
pub struct PagedVecV2<T> {
+PagedVecV2 in massa_api_exports::page - Rust

Struct massa_api_exports::page::PagedVecV2

source ·
pub struct PagedVecV2<T> {
     content: Vec<T>,
     total_count: usize,
 }
Expand description

Represents the request inputs for a PagedVecV2

-

Fields§

§content: Vec<T>§total_count: usize

Trait Implementations§

source§

impl<T: Clone> Clone for PagedVecV2<T>

source§

fn clone(&self) -> PagedVecV2<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'de, T> Deserialize<'de> for PagedVecV2<T>
where - T: Deserialize<'de>,

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl<T> From<PagedVec<T>> for PagedVecV2<T>

source§

fn from(paged_vec: PagedVec<T>) -> Self

Converts to this type from the input type.
source§

impl<T> Serialize for PagedVecV2<T>
where - T: Serialize,

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl<T> Freeze for PagedVecV2<T>

§

impl<T> RefUnwindSafe for PagedVecV2<T>
where +

Fields§

§content: Vec<T>§total_count: usize

Trait Implementations§

source§

impl<T: Clone> Clone for PagedVecV2<T>

source§

fn clone(&self) -> PagedVecV2<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'de, T> Deserialize<'de> for PagedVecV2<T>
where + T: Deserialize<'de>,

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl<T> From<PagedVec<T>> for PagedVecV2<T>

source§

fn from(paged_vec: PagedVec<T>) -> Self

Converts to this type from the input type.
source§

impl<T> Serialize for PagedVecV2<T>
where + T: Serialize,

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl<T> Freeze for PagedVecV2<T>

§

impl<T> RefUnwindSafe for PagedVecV2<T>
where T: RefUnwindSafe,

§

impl<T> Send for PagedVecV2<T>
where T: Send,

§

impl<T> Sync for PagedVecV2<T>
where T: Sync,

§

impl<T> Unpin for PagedVecV2<T>
where @@ -109,6 +109,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/rolls/struct.RollsInfo.html b/massa_api_exports/rolls/struct.RollsInfo.html index 20b734ff721..65eae3c425c 100644 --- a/massa_api_exports/rolls/struct.RollsInfo.html +++ b/massa_api_exports/rolls/struct.RollsInfo.html @@ -1,4 +1,4 @@ -RollsInfo in massa_api_exports::rolls - Rust

Struct massa_api_exports::rolls::RollsInfo

source ·
pub struct RollsInfo {
+RollsInfo in massa_api_exports::rolls - Rust

Struct massa_api_exports::rolls::RollsInfo

source ·
pub struct RollsInfo {
     pub active_rolls: u64,
     pub final_rolls: u64,
     pub candidate_rolls: u64,
@@ -6,9 +6,9 @@
 

Fields§

§active_rolls: u64

count taken into account for the current cycle

§final_rolls: u64

at final blocks

§candidate_rolls: u64

at latest blocks

-

Trait Implementations§

source§

impl Clone for RollsInfo

source§

fn clone(&self) -> RollsInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for RollsInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for RollsInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for RollsInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for RollsInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for RollsInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for RollsInfo

source§

fn clone(&self) -> RollsInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for RollsInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for RollsInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for RollsInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Serialize for RollsInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for RollsInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -108,6 +108,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/slot/struct.SlotAmount.html b/massa_api_exports/slot/struct.SlotAmount.html index 778385c6f9b..839a848f9c0 100644 --- a/massa_api_exports/slot/struct.SlotAmount.html +++ b/massa_api_exports/slot/struct.SlotAmount.html @@ -1,12 +1,12 @@ -SlotAmount in massa_api_exports::slot - Rust

Struct massa_api_exports::slot::SlotAmount

source ·
pub struct SlotAmount {
+SlotAmount in massa_api_exports::slot - Rust

Struct massa_api_exports::slot::SlotAmount

source ·
pub struct SlotAmount {
     pub slot: Slot,
     pub amount: Amount,
 }
Expand description

slot / amount pair

Fields§

§slot: Slot

slot

§amount: Amount

amount

-

Trait Implementations§

source§

impl Clone for SlotAmount

source§

fn clone(&self) -> SlotAmount

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SlotAmount

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for SlotAmount

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for SlotAmount

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for SlotAmount

source§

fn clone(&self) -> SlotAmount

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SlotAmount

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for SlotAmount

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for SlotAmount

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -104,6 +104,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/struct.ApiRequest.html b/massa_api_exports/struct.ApiRequest.html index 5c8128e59bd..19c04fb291e 100644 --- a/massa_api_exports/struct.ApiRequest.html +++ b/massa_api_exports/struct.ApiRequest.html @@ -1,10 +1,10 @@ -ApiRequest in massa_api_exports - Rust

Struct massa_api_exports::ApiRequest

source ·
pub struct ApiRequest {
+ApiRequest in massa_api_exports - Rust

Struct massa_api_exports::ApiRequest

source ·
pub struct ApiRequest {
     pub page_request: Option<PageRequest>,
 }
Expand description

Wrap request params into struct for ApiV2 method

Fields§

§page_request: Option<PageRequest>

pagination

-

Trait Implementations§

source§

impl<'de> Deserialize<'de> for ApiRequest

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ApiRequest

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl<'de> Deserialize<'de> for ApiRequest

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for ApiRequest

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where @@ -99,6 +99,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_api_exports/struct.TimeInterval.html b/massa_api_exports/struct.TimeInterval.html index a1a8e2f0f79..2b60b3ca758 100644 --- a/massa_api_exports/struct.TimeInterval.html +++ b/massa_api_exports/struct.TimeInterval.html @@ -1,12 +1,12 @@ -TimeInterval in massa_api_exports - Rust

Struct massa_api_exports::TimeInterval

source ·
pub struct TimeInterval {
+TimeInterval in massa_api_exports - Rust

Struct massa_api_exports::TimeInterval

source ·
pub struct TimeInterval {
     pub start: Option<MassaTime>,
     pub end: Option<MassaTime>,
 }
Expand description

Just a wrapper with a optional beginning and end

Fields§

§start: Option<MassaTime>

optional start slot

§end: Option<MassaTime>

optional end slot

-

Trait Implementations§

source§

impl Clone for TimeInterval

source§

fn clone(&self) -> TimeInterval

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TimeInterval

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for TimeInterval

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for TimeInterval

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for TimeInterval

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where +

Trait Implementations§

source§

impl Clone for TimeInterval

source§

fn clone(&self) -> TimeInterval

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TimeInterval

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for TimeInterval

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for TimeInterval

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for TimeInterval

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where @@ -105,6 +105,7 @@ V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where - T: for<'de> Deserialize<'de>,

§

impl<T> MaybeSend for T
where - T: Send,

\ No newline at end of file +[WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where + T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where + T: 'static,

§

impl<T> MaybeSend for T
where + T: Send,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/massa_async_pool/changes/struct.AsyncPoolChanges.html b/massa_async_pool/changes/struct.AsyncPoolChanges.html index 162a20e379b..b6f713096af 100644 --- a/massa_async_pool/changes/struct.AsyncPoolChanges.html +++ b/massa_async_pool/changes/struct.AsyncPoolChanges.html @@ -18,14 +18,14 @@
  • msg_id: ID of the message to push as ready to be executed to the list of changes
  • Trait Implementations§

    source§

    impl Applicable<AsyncPoolChanges> for AsyncPoolChanges

    source§

    fn apply(&mut self, changes: AsyncPoolChanges)

    extends the current AsyncPoolChanges with another one

    -
    source§

    impl Clone for AsyncPoolChanges

    source§

    fn clone(&self) -> AsyncPoolChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncPoolChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncPoolChanges

    source§

    fn default() -> AsyncPoolChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncPoolChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncPoolChanges> for AsyncPoolChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Clone for AsyncPoolChanges

    source§

    fn clone(&self) -> AsyncPoolChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncPoolChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncPoolChanges

    source§

    fn default() -> AsyncPoolChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncPoolChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncPoolChanges> for AsyncPoolChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], AsyncPoolChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for AsyncPoolChanges

    source§

    fn eq(&self, other: &AsyncPoolChanges) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncPoolChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncPoolChanges> for AsyncPoolChangesSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncPoolChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncPoolChanges> for AsyncPoolChangesSerializer

    source§

    fn serialize( &self, value: &AsyncPoolChanges, buffer: &mut Vec<u8>, @@ -133,5 +133,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/message/struct.AsyncMessage.html b/massa_async_pool/message/struct.AsyncMessage.html index abfa057697c..d923f244b1c 100644 --- a/massa_async_pool/message/struct.AsyncMessage.html +++ b/massa_async_pool/message/struct.AsyncMessage.html @@ -48,11 +48,11 @@ ) -> Self

    Take an AsyncMessage and return it

    source

    pub fn compute_id(&self) -> AsyncMessageId

    Compute the ID of the message for use when choosing which operations to keep in priority (highest score) on pool overflow.

    Trait Implementations§

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessage

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    -
    source§

    impl Clone for AsyncMessage

    source§

    fn clone(&self) -> AsyncMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessage

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessage

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessage> for AsyncMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Clone for AsyncMessage

    source§

    fn clone(&self) -> AsyncMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessage

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessage

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessage> for AsyncMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], AsyncMessage, E>

    §Example
    +) -> IResult<&'a [u8], AsyncMessage, E>
    §Example
    use massa_async_pool::{AsyncMessage, AsyncMessageSerializer, AsyncMessageDeserializer, AsyncMessageTrigger};
     use massa_models::{address::Address, amount::Amount, slot::Slot};
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
    @@ -86,12 +86,12 @@
     assert_eq!(message, message_deserialized);
    source§

    impl From<AsyncMessage> for AsyncMessage

    source§

    fn from(value: AsyncMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<AsyncMessage> for AsyncMessageInfo

    source§

    fn from(value: AsyncMessage) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for AsyncMessage

    source§

    fn eq(&self, other: &AsyncMessage) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncMessage

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessage> for AsyncMessageSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncMessage

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessage> for AsyncMessageSerializer

    source§

    fn serialize( &self, value: &AsyncMessage, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_async_pool::{AsyncMessage, AsyncMessageSerializer, AsyncMessageTrigger};
     use massa_models::{address::Address, amount::Amount, slot::Slot};
     use massa_serialization::Serializer;
    @@ -222,5 +222,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/message/struct.AsyncMessageTrigger.html b/massa_async_pool/message/struct.AsyncMessageTrigger.html index a6c26277107..205a20f3ae5 100644 --- a/massa_async_pool/message/struct.AsyncMessageTrigger.html +++ b/massa_async_pool/message/struct.AsyncMessageTrigger.html @@ -4,14 +4,14 @@ }
    Expand description

    Structure defining a trigger for an asynchronous message

    Fields§

    §address: Address

    Filter on the address

    §datastore_key: Option<Vec<u8>>

    Filter on the datastore key

    -

    Trait Implementations§

    source§

    impl Clone for AsyncMessageTrigger

    source§

    fn clone(&self) -> AsyncMessageTrigger

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageTrigger

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageTrigger

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageTrigger> for AsyncMessageTriggerDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for AsyncMessageTrigger

    source§

    fn clone(&self) -> AsyncMessageTrigger

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageTrigger

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageTrigger

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageTrigger> for AsyncMessageTriggerDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], AsyncMessageTrigger, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<AsyncMessageTrigger> for AsyncMessageTrigger

    source§

    fn from(value: AsyncMessageTrigger) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for AsyncMessageTrigger

    source§

    fn eq(&self, other: &AsyncMessageTrigger) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncMessageTrigger

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageTrigger> for AsyncMessageTriggerSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncMessageTrigger

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageTrigger> for AsyncMessageTriggerSerializer

    source§

    fn serialize( &self, value: &AsyncMessageTrigger, buffer: &mut Vec<u8>, @@ -119,5 +119,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/message/struct.AsyncMessageUpdate.html b/massa_async_pool/message/struct.AsyncMessageUpdate.html index d19dc0587ea..46bf8b65cff 100644 --- a/massa_async_pool/message/struct.AsyncMessageUpdate.html +++ b/massa_async_pool/message/struct.AsyncMessageUpdate.html @@ -31,17 +31,17 @@ §trigger: SetOrKeep<Option<AsyncMessageTrigger>>

    Trigger that define whenever a message can be executed

    §can_be_executed: SetOrKeep<bool>

    Boolean that determine if the message can be executed. For messages without filter this boolean is always true. For messages with filter, this boolean is true if the filter has been matched between validity_start and current slot.

    -

    Trait Implementations§

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessage

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    +

    Trait Implementations§

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessage

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessageInfo

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    -
    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessageUpdate

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessageUpdate with another one

    -
    source§

    impl Clone for AsyncMessageUpdate

    source§

    fn clone(&self) -> AsyncMessageUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessageUpdate

    source§

    fn default() -> AsyncMessageUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageUpdate> for AsyncMessageUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessageUpdate

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessageUpdate with another one

    +
    source§

    impl Clone for AsyncMessageUpdate

    source§

    fn clone(&self) -> AsyncMessageUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessageUpdate

    source§

    fn default() -> AsyncMessageUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageUpdate> for AsyncMessageUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], AsyncMessageUpdate, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<AsyncMessageUpdate> for AsyncMessageUpdate

    source§

    fn from(value: AsyncMessageUpdate) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for AsyncMessageUpdate

    source§

    fn eq(&self, other: &AsyncMessageUpdate) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncMessageUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageUpdate> for AsyncMessageUpdateSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncMessageUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageUpdate> for AsyncMessageUpdateSerializer

    source§

    fn serialize( &self, value: &AsyncMessageUpdate, buffer: &mut Vec<u8>, @@ -149,5 +149,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/struct.AsyncMessage.html b/massa_async_pool/struct.AsyncMessage.html index a88590686ae..4ca185aa7a5 100644 --- a/massa_async_pool/struct.AsyncMessage.html +++ b/massa_async_pool/struct.AsyncMessage.html @@ -48,11 +48,11 @@ ) -> Self

    Take an AsyncMessage and return it

    source

    pub fn compute_id(&self) -> AsyncMessageId

    Compute the ID of the message for use when choosing which operations to keep in priority (highest score) on pool overflow.

    Trait Implementations§

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessage

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    -
    source§

    impl Clone for AsyncMessage

    source§

    fn clone(&self) -> AsyncMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessage

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessage

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessage> for AsyncMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Clone for AsyncMessage

    source§

    fn clone(&self) -> AsyncMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessage

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessage

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessage> for AsyncMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], AsyncMessage, E>

    §Example
    +) -> IResult<&'a [u8], AsyncMessage, E>
    §Example
    use massa_async_pool::{AsyncMessage, AsyncMessageSerializer, AsyncMessageDeserializer, AsyncMessageTrigger};
     use massa_models::{address::Address, amount::Amount, slot::Slot};
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
    @@ -86,12 +86,12 @@
     assert_eq!(message, message_deserialized);
    source§

    impl From<AsyncMessage> for AsyncMessage

    source§

    fn from(value: AsyncMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<AsyncMessage> for AsyncMessageInfo

    source§

    fn from(value: AsyncMessage) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for AsyncMessage

    source§

    fn eq(&self, other: &AsyncMessage) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncMessage

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessage> for AsyncMessageSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncMessage

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessage> for AsyncMessageSerializer

    source§

    fn serialize( &self, value: &AsyncMessage, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_async_pool::{AsyncMessage, AsyncMessageSerializer, AsyncMessageTrigger};
     use massa_models::{address::Address, amount::Amount, slot::Slot};
     use massa_serialization::Serializer;
    @@ -222,5 +222,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/struct.AsyncMessageTrigger.html b/massa_async_pool/struct.AsyncMessageTrigger.html index f6a77df0a44..e0bc14d1ab4 100644 --- a/massa_async_pool/struct.AsyncMessageTrigger.html +++ b/massa_async_pool/struct.AsyncMessageTrigger.html @@ -4,14 +4,14 @@ }
    Expand description

    Structure defining a trigger for an asynchronous message

    Fields§

    §address: Address

    Filter on the address

    §datastore_key: Option<Vec<u8>>

    Filter on the datastore key

    -

    Trait Implementations§

    source§

    impl Clone for AsyncMessageTrigger

    source§

    fn clone(&self) -> AsyncMessageTrigger

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageTrigger

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageTrigger

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageTrigger> for AsyncMessageTriggerDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for AsyncMessageTrigger

    source§

    fn clone(&self) -> AsyncMessageTrigger

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageTrigger

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageTrigger

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageTrigger> for AsyncMessageTriggerDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], AsyncMessageTrigger, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<AsyncMessageTrigger> for AsyncMessageTrigger

    source§

    fn from(value: AsyncMessageTrigger) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for AsyncMessageTrigger

    source§

    fn eq(&self, other: &AsyncMessageTrigger) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncMessageTrigger

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageTrigger> for AsyncMessageTriggerSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncMessageTrigger

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageTrigger> for AsyncMessageTriggerSerializer

    source§

    fn serialize( &self, value: &AsyncMessageTrigger, buffer: &mut Vec<u8>, @@ -119,5 +119,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/struct.AsyncMessageUpdate.html b/massa_async_pool/struct.AsyncMessageUpdate.html index fa21fa6f6a9..5bfd094fdf2 100644 --- a/massa_async_pool/struct.AsyncMessageUpdate.html +++ b/massa_async_pool/struct.AsyncMessageUpdate.html @@ -31,17 +31,17 @@ §trigger: SetOrKeep<Option<AsyncMessageTrigger>>

    Trigger that define whenever a message can be executed

    §can_be_executed: SetOrKeep<bool>

    Boolean that determine if the message can be executed. For messages without filter this boolean is always true. For messages with filter, this boolean is true if the filter has been matched between validity_start and current slot.

    -

    Trait Implementations§

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessage

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    +

    Trait Implementations§

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessage

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessageInfo

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessage with a AsyncMessageUpdate

    -
    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessageUpdate

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessageUpdate with another one

    -
    source§

    impl Clone for AsyncMessageUpdate

    source§

    fn clone(&self) -> AsyncMessageUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessageUpdate

    source§

    fn default() -> AsyncMessageUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageUpdate> for AsyncMessageUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Applicable<AsyncMessageUpdate> for AsyncMessageUpdate

    source§

    fn apply(&mut self, update: AsyncMessageUpdate)

    extends the AsyncMessageUpdate with another one

    +
    source§

    impl Clone for AsyncMessageUpdate

    source§

    fn clone(&self) -> AsyncMessageUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncMessageUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncMessageUpdate

    source§

    fn default() -> AsyncMessageUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncMessageUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncMessageUpdate> for AsyncMessageUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], AsyncMessageUpdate, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<AsyncMessageUpdate> for AsyncMessageUpdate

    source§

    fn from(value: AsyncMessageUpdate) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for AsyncMessageUpdate

    source§

    fn eq(&self, other: &AsyncMessageUpdate) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncMessageUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageUpdate> for AsyncMessageUpdateSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncMessageUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncMessageUpdate> for AsyncMessageUpdateSerializer

    source§

    fn serialize( &self, value: &AsyncMessageUpdate, buffer: &mut Vec<u8>, @@ -149,5 +149,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_async_pool/struct.AsyncPoolChanges.html b/massa_async_pool/struct.AsyncPoolChanges.html index 05897b1078f..96cc5b33c81 100644 --- a/massa_async_pool/struct.AsyncPoolChanges.html +++ b/massa_async_pool/struct.AsyncPoolChanges.html @@ -18,14 +18,14 @@
  • msg_id: ID of the message to push as ready to be executed to the list of changes
  • Trait Implementations§

    source§

    impl Applicable<AsyncPoolChanges> for AsyncPoolChanges

    source§

    fn apply(&mut self, changes: AsyncPoolChanges)

    extends the current AsyncPoolChanges with another one

    -
    source§

    impl Clone for AsyncPoolChanges

    source§

    fn clone(&self) -> AsyncPoolChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncPoolChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncPoolChanges

    source§

    fn default() -> AsyncPoolChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncPoolChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncPoolChanges> for AsyncPoolChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Clone for AsyncPoolChanges

    source§

    fn clone(&self) -> AsyncPoolChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncPoolChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncPoolChanges

    source§

    fn default() -> AsyncPoolChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for AsyncPoolChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<AsyncPoolChanges> for AsyncPoolChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], AsyncPoolChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for AsyncPoolChanges

    source§

    fn eq(&self, other: &AsyncPoolChanges) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for AsyncPoolChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncPoolChanges> for AsyncPoolChangesSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for AsyncPoolChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<AsyncPoolChanges> for AsyncPoolChangesSerializer

    source§

    fn serialize( &self, value: &AsyncPoolChanges, buffer: &mut Vec<u8>, @@ -133,5 +133,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_bootstrap/bindings/client/struct.BootstrapClientBinder.html b/massa_bootstrap/bindings/client/struct.BootstrapClientBinder.html index ea67ba1c3b0..e841e87f4f3 100644 --- a/massa_bootstrap/bindings/client/struct.BootstrapClientBinder.html +++ b/massa_bootstrap/bindings/client/struct.BootstrapClientBinder.html @@ -1,4 +1,4 @@ -BootstrapClientBinder in massa_bootstrap::bindings::client - Rust
    pub struct BootstrapClientBinder {
    +BootstrapClientBinder in massa_bootstrap::bindings::client - Rust
    pub struct BootstrapClientBinder {
         remote_pubkey: PublicKey,
         duplex: Limiter<TcpStream>,
         prev_message: Option<Hash>,
    @@ -228,4 +228,5 @@ 
    §Argument
    T: ByteOrder,
    Writes a IEEE754 single-precision (4 bytes) floating point number to the underlying writer. Read more
    §

    fn write_f64<T>(&mut self, n: f64) -> Result<(), Error>
    where T: ByteOrder,

    Writes a IEEE754 double-precision (8 bytes) floating point number to -the underlying writer. Read more
    \ No newline at end of file +the underlying writer. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/bindings/client/struct.ServerMessageLeader.html b/massa_bootstrap/bindings/client/struct.ServerMessageLeader.html index 1f3f86bb202..5658e4ad695 100644 --- a/massa_bootstrap/bindings/client/struct.ServerMessageLeader.html +++ b/massa_bootstrap/bindings/client/struct.ServerMessageLeader.html @@ -1,4 +1,4 @@ -ServerMessageLeader in massa_bootstrap::bindings::client - Rust

    Struct massa_bootstrap::bindings::client::ServerMessageLeader

    source ·
    struct ServerMessageLeader {
    +ServerMessageLeader in massa_bootstrap::bindings::client - Rust

    Struct massa_bootstrap::bindings::client::ServerMessageLeader

    source ·
    struct ServerMessageLeader {
         sig: Signature,
         msg_len: u32,
     }
    Expand description

    The known-length component of a message to be received.

    @@ -113,4 +113,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/bindings/server/struct.BootstrapServerBinder.html b/massa_bootstrap/bindings/server/struct.BootstrapServerBinder.html index 6fbc1f2f4b5..f76cecbf17c 100644 --- a/massa_bootstrap/bindings/server/struct.BootstrapServerBinder.html +++ b/massa_bootstrap/bindings/server/struct.BootstrapServerBinder.html @@ -1,4 +1,4 @@ -BootstrapServerBinder in massa_bootstrap::bindings::server - Rust
    pub struct BootstrapServerBinder {
    +BootstrapServerBinder in massa_bootstrap::bindings::server - Rust
    pub struct BootstrapServerBinder {
         max_consensus_block_ids: u64,
         thread_count: u8,
         max_datastore_key_length: u8,
    @@ -259,4 +259,5 @@ 
    §Argument
    T: ByteOrder,
    Writes a IEEE754 single-precision (4 bytes) floating point number to the underlying writer. Read more
    §

    fn write_f64<T>(&mut self, n: f64) -> Result<(), Error>
    where T: ByteOrder,

    Writes a IEEE754 double-precision (8 bytes) floating point number to -the underlying writer. Read more
    \ No newline at end of file +the underlying writer. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/bindings/server/struct.ClientMessageLeader.html b/massa_bootstrap/bindings/server/struct.ClientMessageLeader.html index 77d8345f422..abf3f64112a 100644 --- a/massa_bootstrap/bindings/server/struct.ClientMessageLeader.html +++ b/massa_bootstrap/bindings/server/struct.ClientMessageLeader.html @@ -1,4 +1,4 @@ -ClientMessageLeader in massa_bootstrap::bindings::server - Rust

    Struct massa_bootstrap::bindings::server::ClientMessageLeader

    source ·
    struct ClientMessageLeader {
    +ClientMessageLeader in massa_bootstrap::bindings::server - Rust

    Struct massa_bootstrap::bindings::server::ClientMessageLeader

    source ·
    struct ClientMessageLeader {
         received_prev_hash: Option<Hash>,
         msg_len: u32,
     }
    Expand description

    The known-length component of a message to be received.

    @@ -113,4 +113,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/client/struct.DefaultConnector.html b/massa_bootstrap/client/struct.DefaultConnector.html index 8cac373090a..276a1659c30 100644 --- a/massa_bootstrap/client/struct.DefaultConnector.html +++ b/massa_bootstrap/client/struct.DefaultConnector.html @@ -1,4 +1,4 @@ -DefaultConnector in massa_bootstrap::client - Rust

    Struct massa_bootstrap::client::DefaultConnector

    source ·
    pub struct DefaultConnector;
    Expand description

    Initiates a connection with given timeout in milliseconds

    +DefaultConnector in massa_bootstrap::client - Rust

    Struct massa_bootstrap::client::DefaultConnector

    source ·
    pub struct DefaultConnector;
    Expand description

    Initiates a connection with given timeout in milliseconds

    Trait Implementations§

    source§

    impl BSConnector for DefaultConnector

    source§

    fn connect_timeout( &self, addr: SocketAddr, @@ -119,4 +119,5 @@

    §Argument
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/enum.BootstrapClientMessage.html b/massa_bootstrap/enum.BootstrapClientMessage.html index e80873a0b2c..55e230bae32 100644 --- a/massa_bootstrap/enum.BootstrapClientMessage.html +++ b/massa_bootstrap/enum.BootstrapClientMessage.html @@ -1,4 +1,4 @@ -BootstrapClientMessage in massa_bootstrap - Rust

    Enum massa_bootstrap::BootstrapClientMessage

    source ·
    pub enum BootstrapClientMessage {
    +BootstrapClientMessage in massa_bootstrap - Rust

    Enum massa_bootstrap::BootstrapClientMessage

    source ·
    pub enum BootstrapClientMessage {
         AskBootstrapPeers,
         AskBootstrapPart {
             last_slot: Option<Slot>,
    @@ -173,4 +173,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/enum.BootstrapError.html b/massa_bootstrap/enum.BootstrapError.html index 1defdd26ba8..dce0d4ec0c5 100644 --- a/massa_bootstrap/enum.BootstrapError.html +++ b/massa_bootstrap/enum.BootstrapError.html @@ -1,4 +1,4 @@ -BootstrapError in massa_bootstrap - Rust

    Enum massa_bootstrap::BootstrapError

    source ·
    #[non_exhaustive]
    pub enum BootstrapError { +BootstrapError in massa_bootstrap - Rust

    Enum massa_bootstrap::BootstrapError

    source ·
    #[non_exhaustive]
    pub enum BootstrapError {
    Show 25 variants IoError(Error), TimedOut(Error), GeneralError(String), @@ -50,11 +50,11 @@
    §

    BlackListed(String)

    IP {0} is blacklisted

    §

    WhiteListed(String)

    IP {0} is not in the whitelist

    §

    Interrupted(String)

    The bootstrap process ended prematurely - e.g. too much time elapsed

    -

    Trait Implementations§

    source§

    impl Debug for BootstrapError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for BootstrapError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for BootstrapError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ConsensusError> for BootstrapError

    source§

    fn from(source: ConsensusError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for BootstrapError

    §Platform-specific behavior

    +

    Trait Implementations§

    source§

    impl Debug for BootstrapError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for BootstrapError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for BootstrapError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ConsensusError> for BootstrapError

    source§

    fn from(source: ConsensusError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for BootstrapError

    §Platform-specific behavior

    Platforms may return a different error code whenever a read times out as a result of setting this option. For example Unix typically returns an error of the kind ErrorKind::WouldBlock, but Windows may return ErrorKind::TimedOut.)

    -
    source§

    fn from(e: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<FinalStateError> for BootstrapError

    source§

    fn from(source: FinalStateError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for BootstrapError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for BootstrapError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for BootstrapError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for BootstrapError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for BootstrapError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for BootstrapError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for BootstrapError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +
    source§

    fn from(e: Error) -> Self

    Converts to this type from the input type.

    source§

    impl From<FinalStateError> for BootstrapError

    source§

    fn from(source: FinalStateError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for BootstrapError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for BootstrapError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for BootstrapError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for BootstrapError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for BootstrapError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for BootstrapError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for BootstrapError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -167,4 +167,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/enum.BootstrapServerMessage.html b/massa_bootstrap/enum.BootstrapServerMessage.html index cbed138032c..de78810248e 100644 --- a/massa_bootstrap/enum.BootstrapServerMessage.html +++ b/massa_bootstrap/enum.BootstrapServerMessage.html @@ -1,4 +1,4 @@ -BootstrapServerMessage in massa_bootstrap - Rust

    Enum massa_bootstrap::BootstrapServerMessage

    source ·
    pub enum BootstrapServerMessage {
    +BootstrapServerMessage in massa_bootstrap - Rust

    Enum massa_bootstrap::BootstrapServerMessage

    source ·
    pub enum BootstrapServerMessage {
         BootstrapTime {
             server_time: MassaTime,
             version: Version,
    @@ -41,7 +41,7 @@
     

    Trait Implementations§

    source§

    impl Clone for BootstrapServerMessage

    source§

    fn clone(&self) -> BootstrapServerMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapServerMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deserializer<BootstrapServerMessage> for BootstrapServerMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BootstrapServerMessage, E>

    §Example
    +) -> IResult<&'a [u8], BootstrapServerMessage, E>
    §Example
    use massa_bootstrap::{BootstrapServerMessage, BootstrapServerMessageSerializer, BootstrapServerMessageDeserializer};
     use massa_bootstrap::BootstrapServerMessageDeserializerArgs;
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
    @@ -89,7 +89,7 @@
         &self,
         value: &BootstrapServerMessage,
         buffer: &mut Vec<u8>,
    -) -> Result<(), SerializeError>
    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_bootstrap::{BootstrapServerMessage, BootstrapServerMessageSerializer};
     use massa_serialization::Serializer;
     use massa_time::MassaTime;
    @@ -218,4 +218,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/enum.IpType.html b/massa_bootstrap/enum.IpType.html index d583cf9ba61..98f2b7d5c8f 100644 --- a/massa_bootstrap/enum.IpType.html +++ b/massa_bootstrap/enum.IpType.html @@ -1,4 +1,4 @@ -IpType in massa_bootstrap - Rust

    Enum massa_bootstrap::IpType

    source ·
    pub enum IpType {
    +IpType in massa_bootstrap - Rust

    Enum massa_bootstrap::IpType

    source ·
    pub enum IpType {
         Both,
         IPv4,
         IPv6,
    @@ -6,8 +6,8 @@
     

    Variants§

    §

    Both

    Bootstrap with both IPv4 and IPv6 protocols (default).

    §

    IPv4

    Bootstrap only with IPv4.

    §

    IPv6

    Bootstrap only with IPv6.

    -

    Trait Implementations§

    source§

    impl Clone for IpType

    source§

    fn clone(&self) -> IpType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for IpType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for IpType

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for IpType

    Auto Trait Implementations§

    §

    impl Freeze for IpType

    §

    impl RefUnwindSafe for IpType

    §

    impl Send for IpType

    §

    impl Sync for IpType

    §

    impl Unpin for IpType

    §

    impl UnwindSafe for IpType

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for IpType

    source§

    fn clone(&self) -> IpType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for IpType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for IpType

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for IpType

    Auto Trait Implementations§

    §

    impl Freeze for IpType

    §

    impl RefUnwindSafe for IpType

    §

    impl Send for IpType

    §

    impl Sync for IpType

    §

    impl Unpin for IpType

    §

    impl UnwindSafe for IpType

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -123,5 +123,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/error/enum.BootstrapError.html b/massa_bootstrap/error/enum.BootstrapError.html index cddcb8aa1f2..cbabc492461 100644 --- a/massa_bootstrap/error/enum.BootstrapError.html +++ b/massa_bootstrap/error/enum.BootstrapError.html @@ -1,4 +1,4 @@ -BootstrapError in massa_bootstrap::error - Rust

    Enum massa_bootstrap::error::BootstrapError

    source ·
    #[non_exhaustive]
    pub enum BootstrapError { +BootstrapError in massa_bootstrap::error - Rust

    Enum massa_bootstrap::error::BootstrapError

    source ·
    #[non_exhaustive]
    pub enum BootstrapError {
    Show 25 variants IoError(Error), TimedOut(Error), GeneralError(String), @@ -50,11 +50,11 @@
    §

    BlackListed(String)

    IP {0} is blacklisted

    §

    WhiteListed(String)

    IP {0} is not in the whitelist

    §

    Interrupted(String)

    The bootstrap process ended prematurely - e.g. too much time elapsed

    -

    Trait Implementations§

    source§

    impl Debug for BootstrapError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for BootstrapError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for BootstrapError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ConsensusError> for BootstrapError

    source§

    fn from(source: ConsensusError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for BootstrapError

    §Platform-specific behavior

    +

    Trait Implementations§

    source§

    impl Debug for BootstrapError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for BootstrapError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for BootstrapError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ConsensusError> for BootstrapError

    source§

    fn from(source: ConsensusError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for BootstrapError

    §Platform-specific behavior

    Platforms may return a different error code whenever a read times out as a result of setting this option. For example Unix typically returns an error of the kind ErrorKind::WouldBlock, but Windows may return ErrorKind::TimedOut.)

    -
    source§

    fn from(e: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<FinalStateError> for BootstrapError

    source§

    fn from(source: FinalStateError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for BootstrapError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for BootstrapError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for BootstrapError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for BootstrapError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for BootstrapError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for BootstrapError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for BootstrapError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +
    source§

    fn from(e: Error) -> Self

    Converts to this type from the input type.

    source§

    impl From<FinalStateError> for BootstrapError

    source§

    fn from(source: FinalStateError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for BootstrapError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for BootstrapError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for BootstrapError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for BootstrapError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for BootstrapError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for BootstrapError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for BootstrapError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -167,4 +167,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/listener/enum.PollEvent.html b/massa_bootstrap/listener/enum.PollEvent.html index 0745898c35d..b059440f1fd 100644 --- a/massa_bootstrap/listener/enum.PollEvent.html +++ b/massa_bootstrap/listener/enum.PollEvent.html @@ -1,4 +1,4 @@ -PollEvent in massa_bootstrap::listener - Rust

    Enum massa_bootstrap::listener::PollEvent

    source ·
    pub enum PollEvent {
    +PollEvent in massa_bootstrap::listener - Rust

    Enum massa_bootstrap::listener::PollEvent

    source ·
    pub enum PollEvent {
         NewConnections(Vec<(TcpStream, SocketAddr)>),
         Stop,
     }

    Variants§

    §

    NewConnections(Vec<(TcpStream, SocketAddr)>)

    §

    Stop

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -112,4 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/listener/struct.BootstrapListenerStopHandle.html b/massa_bootstrap/listener/struct.BootstrapListenerStopHandle.html index c149af10adf..31825310637 100644 --- a/massa_bootstrap/listener/struct.BootstrapListenerStopHandle.html +++ b/massa_bootstrap/listener/struct.BootstrapListenerStopHandle.html @@ -1,4 +1,4 @@ -BootstrapListenerStopHandle in massa_bootstrap::listener - Rust
    pub struct BootstrapListenerStopHandle(pub(crate) Waker);

    Tuple Fields§

    §0: Waker

    Implementations§

    source§

    impl BootstrapListenerStopHandle

    source

    pub fn stop(&self) -> Result<(), BootstrapError>

    Stop the bootstrap listener.

    +BootstrapListenerStopHandle in massa_bootstrap::listener - Rust
    pub struct BootstrapListenerStopHandle(pub(crate) Waker);

    Tuple Fields§

    §0: Waker

    Implementations§

    source§

    impl BootstrapListenerStopHandle

    source

    pub fn stop(&self) -> Result<(), BootstrapError>

    Stop the bootstrap listener.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -110,4 +110,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/listener/struct.BootstrapTcpListener.html b/massa_bootstrap/listener/struct.BootstrapTcpListener.html index 747fbe70ad8..27820570c88 100644 --- a/massa_bootstrap/listener/struct.BootstrapTcpListener.html +++ b/massa_bootstrap/listener/struct.BootstrapTcpListener.html @@ -1,4 +1,4 @@ -BootstrapTcpListener in massa_bootstrap::listener - Rust

    Struct massa_bootstrap::listener::BootstrapTcpListener

    source ·
    pub struct BootstrapTcpListener {
    +BootstrapTcpListener in massa_bootstrap::listener - Rust

    Struct massa_bootstrap::listener::BootstrapTcpListener

    source ·
    pub struct BootstrapTcpListener {
         poll: Poll,
         events: Events,
         server: TcpListener,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/enum.BootstrapClientMessage.html b/massa_bootstrap/messages/enum.BootstrapClientMessage.html index cc5c1670675..532a65a22a6 100644 --- a/massa_bootstrap/messages/enum.BootstrapClientMessage.html +++ b/massa_bootstrap/messages/enum.BootstrapClientMessage.html @@ -1,4 +1,4 @@ -BootstrapClientMessage in massa_bootstrap::messages - Rust
    pub enum BootstrapClientMessage {
    +BootstrapClientMessage in massa_bootstrap::messages - Rust
    pub enum BootstrapClientMessage {
         AskBootstrapPeers,
         AskBootstrapPart {
             last_slot: Option<Slot>,
    @@ -173,4 +173,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/enum.BootstrapServerMessage.html b/massa_bootstrap/messages/enum.BootstrapServerMessage.html index a3bad6d49eb..f4a83983b1a 100644 --- a/massa_bootstrap/messages/enum.BootstrapServerMessage.html +++ b/massa_bootstrap/messages/enum.BootstrapServerMessage.html @@ -1,4 +1,4 @@ -BootstrapServerMessage in massa_bootstrap::messages - Rust
    pub enum BootstrapServerMessage {
    +BootstrapServerMessage in massa_bootstrap::messages - Rust
    pub enum BootstrapServerMessage {
         BootstrapTime {
             server_time: MassaTime,
             version: Version,
    @@ -41,7 +41,7 @@
     

    Trait Implementations§

    source§

    impl Clone for BootstrapServerMessage

    source§

    fn clone(&self) -> BootstrapServerMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapServerMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deserializer<BootstrapServerMessage> for BootstrapServerMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BootstrapServerMessage, E>

    §Example
    +) -> IResult<&'a [u8], BootstrapServerMessage, E>
    §Example
    use massa_bootstrap::{BootstrapServerMessage, BootstrapServerMessageSerializer, BootstrapServerMessageDeserializer};
     use massa_bootstrap::BootstrapServerMessageDeserializerArgs;
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
    @@ -89,7 +89,7 @@
         &self,
         value: &BootstrapServerMessage,
         buffer: &mut Vec<u8>,
    -) -> Result<(), SerializeError>
    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_bootstrap::{BootstrapServerMessage, BootstrapServerMessageSerializer};
     use massa_serialization::Serializer;
     use massa_time::MassaTime;
    @@ -218,4 +218,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/enum.MessageClientTypeId.html b/massa_bootstrap/messages/enum.MessageClientTypeId.html index 68cd23e1b7d..0c4b2232102 100644 --- a/massa_bootstrap/messages/enum.MessageClientTypeId.html +++ b/massa_bootstrap/messages/enum.MessageClientTypeId.html @@ -1,11 +1,11 @@ -MessageClientTypeId in massa_bootstrap::messages - Rust

    Enum massa_bootstrap::messages::MessageClientTypeId

    source ·
    #[repr(u32)]
    enum MessageClientTypeId { +MessageClientTypeId in massa_bootstrap::messages - Rust

    Enum massa_bootstrap::messages::MessageClientTypeId

    source ·
    #[repr(u32)]
    enum MessageClientTypeId { AskBootstrapPeers = 0, AskFinalStatePart = 1, BootstrapError = 2, BootstrapSuccess = 3, }

    Variants§

    §

    AskBootstrapPeers = 0

    §

    AskFinalStatePart = 1

    §

    BootstrapError = 2

    §

    BootstrapSuccess = 3

    Trait Implementations§

    source§

    impl Debug for MessageClientTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<MessageClientTypeId> for u32

    source§

    fn from(enum_value: MessageClientTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageClientTypeId

    source§

    fn eq(&self, other: &MessageClientTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u32> for MessageClientTypeId

    §

    type Error = TryFromPrimitiveError<MessageClientTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageClientTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<MessageClientTypeId>

    source§

    const NAME: &'static str = "MessageClientTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u32> for MessageClientTypeId

    §

    type Error = TryFromPrimitiveError<MessageClientTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageClientTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<MessageClientTypeId>

    source§

    const NAME: &'static str = "MessageClientTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageClientTypeId

    source§

    impl StructuralPartialEq for MessageClientTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -128,4 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/enum.MessageServerTypeId.html b/massa_bootstrap/messages/enum.MessageServerTypeId.html index 695b55a5ef5..1b8a5223c38 100644 --- a/massa_bootstrap/messages/enum.MessageServerTypeId.html +++ b/massa_bootstrap/messages/enum.MessageServerTypeId.html @@ -1,4 +1,4 @@ -MessageServerTypeId in massa_bootstrap::messages - Rust

    Enum massa_bootstrap::messages::MessageServerTypeId

    source ·
    #[repr(u32)]
    enum MessageServerTypeId { +MessageServerTypeId in massa_bootstrap::messages - Rust

    Enum massa_bootstrap::messages::MessageServerTypeId

    source ·
    #[repr(u32)]
    enum MessageServerTypeId { BootstrapTime = 0, Peers = 1, FinalStatePart = 2, @@ -7,7 +7,7 @@ BootstrapError = 5, }

    Variants§

    §

    BootstrapTime = 0

    §

    Peers = 1

    §

    FinalStatePart = 2

    §

    FinalStateFinished = 3

    §

    SlotTooOld = 4

    §

    BootstrapError = 5

    Trait Implementations§

    source§

    impl Debug for MessageServerTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<MessageServerTypeId> for u32

    source§

    fn from(enum_value: MessageServerTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageServerTypeId

    source§

    fn eq(&self, other: &MessageServerTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u32> for MessageServerTypeId

    §

    type Error = TryFromPrimitiveError<MessageServerTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageServerTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<MessageServerTypeId>

    source§

    const NAME: &'static str = "MessageServerTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u32> for MessageServerTypeId

    §

    type Error = TryFromPrimitiveError<MessageServerTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageServerTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<MessageServerTypeId>

    source§

    const NAME: &'static str = "MessageServerTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageServerTypeId

    source§

    impl StructuralPartialEq for MessageServerTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -130,4 +130,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/struct.BootstrapClientMessageDeserializer.html b/massa_bootstrap/messages/struct.BootstrapClientMessageDeserializer.html index 48a29b68c4f..6da6d2b0de4 100644 --- a/massa_bootstrap/messages/struct.BootstrapClientMessageDeserializer.html +++ b/massa_bootstrap/messages/struct.BootstrapClientMessageDeserializer.html @@ -1,4 +1,4 @@ -BootstrapClientMessageDeserializer in massa_bootstrap::messages - Rust
    pub struct BootstrapClientMessageDeserializer {
    +BootstrapClientMessageDeserializer in massa_bootstrap::messages - Rust
    pub struct BootstrapClientMessageDeserializer {
         id_deserializer: U32VarIntDeserializer,
         length_error_deserializer: U32VarIntDeserializer,
         slot_deserializer: SlotDeserializer,
    @@ -143,4 +143,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/struct.BootstrapClientMessageSerializer.html b/massa_bootstrap/messages/struct.BootstrapClientMessageSerializer.html index 32253a18d97..5e7db42f06e 100644 --- a/massa_bootstrap/messages/struct.BootstrapClientMessageSerializer.html +++ b/massa_bootstrap/messages/struct.BootstrapClientMessageSerializer.html @@ -1,4 +1,4 @@ -BootstrapClientMessageSerializer in massa_bootstrap::messages - Rust
    pub struct BootstrapClientMessageSerializer {
    +BootstrapClientMessageSerializer in massa_bootstrap::messages - Rust
    pub struct BootstrapClientMessageSerializer {
         u32_serializer: U32VarIntSerializer,
         slot_serializer: SlotSerializer,
         state_step_serializer: StreamingStepSerializer<Vec<u8>, VecU8Serializer>,
    @@ -132,4 +132,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/struct.BootstrapServerMessageDeserializer.html b/massa_bootstrap/messages/struct.BootstrapServerMessageDeserializer.html index 046cab8b937..50443b8dd2a 100644 --- a/massa_bootstrap/messages/struct.BootstrapServerMessageDeserializer.html +++ b/massa_bootstrap/messages/struct.BootstrapServerMessageDeserializer.html @@ -1,4 +1,4 @@ -BootstrapServerMessageDeserializer in massa_bootstrap::messages - Rust
    pub struct BootstrapServerMessageDeserializer {
    Show 16 fields +BootstrapServerMessageDeserializer in massa_bootstrap::messages - Rust
    pub struct BootstrapServerMessageDeserializer {
    Show 16 fields message_id_deserializer: U32VarIntDeserializer, time_deserializer: MassaTimeDeserializer, version_deserializer: VersionDeserializer, @@ -175,4 +175,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/messages/struct.BootstrapServerMessageSerializer.html b/massa_bootstrap/messages/struct.BootstrapServerMessageSerializer.html index 6aed443b731..1e171e8e373 100644 --- a/massa_bootstrap/messages/struct.BootstrapServerMessageSerializer.html +++ b/massa_bootstrap/messages/struct.BootstrapServerMessageSerializer.html @@ -1,4 +1,4 @@ -BootstrapServerMessageSerializer in massa_bootstrap::messages - Rust
    pub struct BootstrapServerMessageSerializer {
    +BootstrapServerMessageSerializer in massa_bootstrap::messages - Rust
    pub struct BootstrapServerMessageSerializer {
         u32_serializer: U32VarIntSerializer,
         u64_serializer: U64VarIntSerializer,
         time_serializer: MassaTimeSerializer,
    @@ -142,4 +142,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/server/struct.BootstrapManager.html b/massa_bootstrap/server/struct.BootstrapManager.html index c3ade65509b..c06481844da 100644 --- a/massa_bootstrap/server/struct.BootstrapManager.html +++ b/massa_bootstrap/server/struct.BootstrapManager.html @@ -1,4 +1,4 @@ -BootstrapManager in massa_bootstrap::server - Rust

    Struct massa_bootstrap::server::BootstrapManager

    source ·
    pub struct BootstrapManager {
    +BootstrapManager in massa_bootstrap::server - Rust

    Struct massa_bootstrap::server::BootstrapManager

    source ·
    pub struct BootstrapManager {
         update_handle: JoinHandle<Result<(), BootstrapError>>,
         main_handle: JoinHandle<Result<(), BootstrapError>>,
         listener_stopper: BootstrapListenerStopHandle,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/server/struct.BootstrapServer.html b/massa_bootstrap/server/struct.BootstrapServer.html index fa16f8c4f45..e31e3d41620 100644 --- a/massa_bootstrap/server/struct.BootstrapServer.html +++ b/massa_bootstrap/server/struct.BootstrapServer.html @@ -1,4 +1,4 @@ -BootstrapServer in massa_bootstrap::server - Rust

    Struct massa_bootstrap::server::BootstrapServer

    source ·
    struct BootstrapServer<'a> {
    +BootstrapServer in massa_bootstrap::server - Rust

    Struct massa_bootstrap::server::BootstrapServer

    source ·
    struct BootstrapServer<'a> {
         consensus_controller: Box<dyn ConsensusController>,
         protocol_controller: Box<dyn ProtocolController>,
         final_state: Arc<RwLock<dyn FinalStateController>>,
    @@ -133,4 +133,5 @@ 
    §Error
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/settings/enum.IpType.html b/massa_bootstrap/settings/enum.IpType.html index a46cf0c5a63..3975b483663 100644 --- a/massa_bootstrap/settings/enum.IpType.html +++ b/massa_bootstrap/settings/enum.IpType.html @@ -1,4 +1,4 @@ -IpType in massa_bootstrap::settings - Rust

    Enum massa_bootstrap::settings::IpType

    source ·
    pub enum IpType {
    +IpType in massa_bootstrap::settings - Rust

    Enum massa_bootstrap::settings::IpType

    source ·
    pub enum IpType {
         Both,
         IPv4,
         IPv6,
    @@ -6,8 +6,8 @@
     

    Variants§

    §

    Both

    Bootstrap with both IPv4 and IPv6 protocols (default).

    §

    IPv4

    Bootstrap only with IPv4.

    §

    IPv6

    Bootstrap only with IPv6.

    -

    Trait Implementations§

    source§

    impl Clone for IpType

    source§

    fn clone(&self) -> IpType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for IpType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for IpType

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for IpType

    Auto Trait Implementations§

    §

    impl Freeze for IpType

    §

    impl RefUnwindSafe for IpType

    §

    impl Send for IpType

    §

    impl Sync for IpType

    §

    impl Unpin for IpType

    §

    impl UnwindSafe for IpType

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for IpType

    source§

    fn clone(&self) -> IpType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for IpType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for IpType

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for IpType

    Auto Trait Implementations§

    §

    impl Freeze for IpType

    §

    impl RefUnwindSafe for IpType

    §

    impl Send for IpType

    §

    impl Sync for IpType

    §

    impl Unpin for IpType

    §

    impl UnwindSafe for IpType

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -123,5 +123,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/settings/struct.BootstrapClientConfig.html b/massa_bootstrap/settings/struct.BootstrapClientConfig.html index 48ae5bff6ff..a7433a30b0b 100644 --- a/massa_bootstrap/settings/struct.BootstrapClientConfig.html +++ b/massa_bootstrap/settings/struct.BootstrapClientConfig.html @@ -1,4 +1,4 @@ -BootstrapClientConfig in massa_bootstrap::settings - Rust

    Struct massa_bootstrap::settings::BootstrapClientConfig

    source ·
    pub struct BootstrapClientConfig {
    Show 25 fields +BootstrapClientConfig in massa_bootstrap::settings - Rust

    Struct massa_bootstrap::settings::BootstrapClientConfig

    source ·
    pub struct BootstrapClientConfig {
    Show 25 fields pub rate_limit: u64, pub endorsement_count: u32, pub max_listeners_per_peer: u32, @@ -25,8 +25,8 @@ pub max_denunciation_changes_length: u64, pub chain_id: u64,
    }
    Expand description

    Bootstrap client config

    -

    Fields§

    §rate_limit: u64§endorsement_count: u32§max_listeners_per_peer: u32§max_advertise_length: u32§max_bootstrap_blocks_length: u32§max_operations_per_block: u32§thread_count: u8§randomness_size_bytes: usize§max_bootstrap_error_length: u64§max_final_state_elements_size: u32§max_versioning_elements_size: u32§max_datastore_entry_count: u64§max_datastore_key_length: u8§max_datastore_value_length: u64§max_ledger_changes_count: u64§max_changes_slot_count: u64§max_rolls_length: u64§max_production_stats_length: u64§max_credits_length: u64§max_executed_ops_length: u64§max_ops_changes_length: u64§mip_store_stats_block_considered: usize§max_denunciations_per_block_header: u32§max_denunciation_changes_length: u64§chain_id: u64

    Trait Implementations§

    source§

    impl Clone for BootstrapClientConfig

    source§

    fn clone(&self) -> BootstrapClientConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapClientConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapClientConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs

    source§

    fn from(value: &BootstrapClientConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapConfig> for BootstrapClientConfig

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §rate_limit: u64§endorsement_count: u32§max_listeners_per_peer: u32§max_advertise_length: u32§max_bootstrap_blocks_length: u32§max_operations_per_block: u32§thread_count: u8§randomness_size_bytes: usize§max_bootstrap_error_length: u64§max_final_state_elements_size: u32§max_versioning_elements_size: u32§max_datastore_entry_count: u64§max_datastore_key_length: u8§max_datastore_value_length: u64§max_ledger_changes_count: u64§max_changes_slot_count: u64§max_rolls_length: u64§max_production_stats_length: u64§max_credits_length: u64§max_executed_ops_length: u64§max_ops_changes_length: u64§mip_store_stats_block_considered: usize§max_denunciations_per_block_header: u32§max_denunciation_changes_length: u64§chain_id: u64

    Trait Implementations§

    source§

    impl Clone for BootstrapClientConfig

    source§

    fn clone(&self) -> BootstrapClientConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapClientConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapClientConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs

    source§

    fn from(value: &BootstrapClientConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapConfig> for BootstrapClientConfig

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -141,5 +141,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/settings/struct.BootstrapConfig.html b/massa_bootstrap/settings/struct.BootstrapConfig.html index 60dd8a9d518..4f00463f2fc 100644 --- a/massa_bootstrap/settings/struct.BootstrapConfig.html +++ b/massa_bootstrap/settings/struct.BootstrapConfig.html @@ -1,4 +1,4 @@ -BootstrapConfig in massa_bootstrap::settings - Rust

    Struct massa_bootstrap::settings::BootstrapConfig

    source ·
    pub struct BootstrapConfig {
    Show 52 fields +BootstrapConfig in massa_bootstrap::settings - Rust

    Struct massa_bootstrap::settings::BootstrapConfig

    source ·
    pub struct BootstrapConfig {
    Show 52 fields pub bootstrap_list: Vec<(SocketAddr, NodeId)>, pub bootstrap_protocol: IpType, pub bootstrap_whitelist_path: PathBuf, @@ -105,8 +105,8 @@
    §max_denunciations_per_block_header: u32

    max denunciations in block header

    §max_denunciation_changes_length: u64

    max executed denunciations changes

    §chain_id: u64

    chain id

    -

    Trait Implementations§

    source§

    impl Clone for BootstrapConfig

    source§

    fn clone(&self) -> BootstrapConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapConfig> for BootstrapClientConfig

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapConfig> for BootstrapSrvBindCfg

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for BootstrapConfig

    source§

    fn clone(&self) -> BootstrapConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapConfig> for BootstrapClientConfig

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapConfig> for BootstrapSrvBindCfg

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -221,5 +221,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/settings/struct.BootstrapServerMessageDeserializerArgs.html b/massa_bootstrap/settings/struct.BootstrapServerMessageDeserializerArgs.html index b04bb18e976..c3dc6178b0c 100644 --- a/massa_bootstrap/settings/struct.BootstrapServerMessageDeserializerArgs.html +++ b/massa_bootstrap/settings/struct.BootstrapServerMessageDeserializerArgs.html @@ -1,4 +1,4 @@ -BootstrapServerMessageDeserializerArgs in massa_bootstrap::settings - Rust
    pub struct BootstrapServerMessageDeserializerArgs {
    Show 23 fields +BootstrapServerMessageDeserializerArgs in massa_bootstrap::settings - Rust
    pub struct BootstrapServerMessageDeserializerArgs {
    Show 23 fields pub thread_count: u8, pub endorsement_count: u32, pub max_advertise_length: u32, @@ -23,7 +23,7 @@ pub max_denunciation_changes_length: u64, pub chain_id: u64,
    }
    Expand description

    Bootstrap Message der args

    -

    Fields§

    §thread_count: u8§endorsement_count: u32§max_advertise_length: u32§max_listeners_per_peer: u32§max_bootstrap_blocks_length: u32§max_operations_per_block: u32§max_final_state_elements_size: u32§max_versioning_elements_size: u32§max_ledger_changes_count: u64§max_datastore_key_length: u8§max_datastore_value_length: u64§max_datastore_entry_count: u64§max_bootstrap_error_length: u64§max_changes_slot_count: u64§max_rolls_length: u64§max_production_stats_length: u64§max_credits_length: u64§max_executed_ops_length: u64§max_ops_changes_length: u64§mip_store_stats_block_considered: usize§max_denunciations_per_block_header: u32§max_denunciation_changes_length: u64§chain_id: u64

    Trait Implementations§

    source§

    impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs

    source§

    fn from(value: &BootstrapClientConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapServerMessageDeserializerArgs> for BlockDeserializerArgs

    source§

    fn from(value: &BootstrapServerMessageDeserializerArgs) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §thread_count: u8§endorsement_count: u32§max_advertise_length: u32§max_listeners_per_peer: u32§max_bootstrap_blocks_length: u32§max_operations_per_block: u32§max_final_state_elements_size: u32§max_versioning_elements_size: u32§max_ledger_changes_count: u64§max_datastore_key_length: u8§max_datastore_value_length: u64§max_datastore_entry_count: u64§max_bootstrap_error_length: u64§max_changes_slot_count: u64§max_rolls_length: u64§max_production_stats_length: u64§max_credits_length: u64§max_executed_ops_length: u64§max_ops_changes_length: u64§mip_store_stats_block_considered: usize§max_denunciations_per_block_header: u32§max_denunciation_changes_length: u64§chain_id: u64

    Trait Implementations§

    source§

    impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs

    source§

    fn from(value: &BootstrapClientConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapServerMessageDeserializerArgs> for BlockDeserializerArgs

    source§

    fn from(value: &BootstrapServerMessageDeserializerArgs) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -134,4 +134,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/settings/struct.BootstrapSrvBindCfg.html b/massa_bootstrap/settings/struct.BootstrapSrvBindCfg.html index 47ca2aaa761..8d8289091cc 100644 --- a/massa_bootstrap/settings/struct.BootstrapSrvBindCfg.html +++ b/massa_bootstrap/settings/struct.BootstrapSrvBindCfg.html @@ -1,4 +1,4 @@ -BootstrapSrvBindCfg in massa_bootstrap::settings - Rust

    Struct massa_bootstrap::settings::BootstrapSrvBindCfg

    source ·
    pub struct BootstrapSrvBindCfg {
    +BootstrapSrvBindCfg in massa_bootstrap::settings - Rust

    Struct massa_bootstrap::settings::BootstrapSrvBindCfg

    source ·
    pub struct BootstrapSrvBindCfg {
         pub rate_limit: u64,
         pub thread_count: u8,
         pub max_datastore_key_length: u8,
    @@ -6,8 +6,8 @@
         pub consensus_bootstrap_part_size: u64,
         pub write_error_timeout: MassaTime,
     }
    Expand description

    Bootstrap server binding

    -

    Fields§

    §rate_limit: u64§thread_count: u8§max_datastore_key_length: u8§randomness_size_bytes: usize§consensus_bootstrap_part_size: u64§write_error_timeout: MassaTime

    Trait Implementations§

    source§

    impl Clone for BootstrapSrvBindCfg

    source§

    fn clone(&self) -> BootstrapSrvBindCfg

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapSrvBindCfg

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapSrvBindCfg

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapConfig> for BootstrapSrvBindCfg

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §rate_limit: u64§thread_count: u8§max_datastore_key_length: u8§randomness_size_bytes: usize§consensus_bootstrap_part_size: u64§write_error_timeout: MassaTime

    Trait Implementations§

    source§

    impl Clone for BootstrapSrvBindCfg

    source§

    fn clone(&self) -> BootstrapSrvBindCfg

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapSrvBindCfg

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapSrvBindCfg

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapConfig> for BootstrapSrvBindCfg

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -122,5 +122,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapClientMessageDeserializer.html b/massa_bootstrap/struct.BootstrapClientMessageDeserializer.html index 9d99bf4dd55..e0e11602b8e 100644 --- a/massa_bootstrap/struct.BootstrapClientMessageDeserializer.html +++ b/massa_bootstrap/struct.BootstrapClientMessageDeserializer.html @@ -1,4 +1,4 @@ -BootstrapClientMessageDeserializer in massa_bootstrap - Rust
    pub struct BootstrapClientMessageDeserializer {
    +BootstrapClientMessageDeserializer in massa_bootstrap - Rust
    pub struct BootstrapClientMessageDeserializer {
         id_deserializer: U32VarIntDeserializer,
         length_error_deserializer: U32VarIntDeserializer,
         slot_deserializer: SlotDeserializer,
    @@ -143,4 +143,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapClientMessageSerializer.html b/massa_bootstrap/struct.BootstrapClientMessageSerializer.html index b0c0a860898..a2c4f55bc20 100644 --- a/massa_bootstrap/struct.BootstrapClientMessageSerializer.html +++ b/massa_bootstrap/struct.BootstrapClientMessageSerializer.html @@ -1,4 +1,4 @@ -BootstrapClientMessageSerializer in massa_bootstrap - Rust
    pub struct BootstrapClientMessageSerializer {
    +BootstrapClientMessageSerializer in massa_bootstrap - Rust
    pub struct BootstrapClientMessageSerializer {
         u32_serializer: U32VarIntSerializer,
         slot_serializer: SlotSerializer,
         state_step_serializer: StreamingStepSerializer<Vec<u8>, VecU8Serializer>,
    @@ -132,4 +132,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapConfig.html b/massa_bootstrap/struct.BootstrapConfig.html index 0af38f80458..2585534e46d 100644 --- a/massa_bootstrap/struct.BootstrapConfig.html +++ b/massa_bootstrap/struct.BootstrapConfig.html @@ -1,4 +1,4 @@ -BootstrapConfig in massa_bootstrap - Rust

    Struct massa_bootstrap::BootstrapConfig

    source ·
    pub struct BootstrapConfig {
    Show 52 fields +BootstrapConfig in massa_bootstrap - Rust

    Struct massa_bootstrap::BootstrapConfig

    source ·
    pub struct BootstrapConfig {
    Show 52 fields pub bootstrap_list: Vec<(SocketAddr, NodeId)>, pub bootstrap_protocol: IpType, pub bootstrap_whitelist_path: PathBuf, @@ -105,8 +105,8 @@
    §max_denunciations_per_block_header: u32

    max denunciations in block header

    §max_denunciation_changes_length: u64

    max executed denunciations changes

    §chain_id: u64

    chain id

    -

    Trait Implementations§

    source§

    impl Clone for BootstrapConfig

    source§

    fn clone(&self) -> BootstrapConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapConfig> for BootstrapClientConfig

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapConfig> for BootstrapSrvBindCfg

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for BootstrapConfig

    source§

    fn clone(&self) -> BootstrapConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<&BootstrapConfig> for BootstrapClientConfig

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapConfig> for BootstrapSrvBindCfg

    source§

    fn from(value: &BootstrapConfig) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -221,5 +221,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapManager.html b/massa_bootstrap/struct.BootstrapManager.html index b3cc5840d2b..0c11cbdfb49 100644 --- a/massa_bootstrap/struct.BootstrapManager.html +++ b/massa_bootstrap/struct.BootstrapManager.html @@ -1,4 +1,4 @@ -BootstrapManager in massa_bootstrap - Rust

    Struct massa_bootstrap::BootstrapManager

    source ·
    pub struct BootstrapManager {
    +BootstrapManager in massa_bootstrap - Rust

    Struct massa_bootstrap::BootstrapManager

    source ·
    pub struct BootstrapManager {
         update_handle: JoinHandle<Result<(), BootstrapError>>,
         main_handle: JoinHandle<Result<(), BootstrapError>>,
         listener_stopper: BootstrapListenerStopHandle,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapServerMessageDeserializer.html b/massa_bootstrap/struct.BootstrapServerMessageDeserializer.html index 379bae03d8c..fa051cebdaa 100644 --- a/massa_bootstrap/struct.BootstrapServerMessageDeserializer.html +++ b/massa_bootstrap/struct.BootstrapServerMessageDeserializer.html @@ -1,4 +1,4 @@ -BootstrapServerMessageDeserializer in massa_bootstrap - Rust
    pub struct BootstrapServerMessageDeserializer {
    Show 16 fields +BootstrapServerMessageDeserializer in massa_bootstrap - Rust
    pub struct BootstrapServerMessageDeserializer {
    Show 16 fields message_id_deserializer: U32VarIntDeserializer, time_deserializer: MassaTimeDeserializer, version_deserializer: VersionDeserializer, @@ -175,4 +175,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapServerMessageDeserializerArgs.html b/massa_bootstrap/struct.BootstrapServerMessageDeserializerArgs.html index 8672a9e6d48..b418a6ccef3 100644 --- a/massa_bootstrap/struct.BootstrapServerMessageDeserializerArgs.html +++ b/massa_bootstrap/struct.BootstrapServerMessageDeserializerArgs.html @@ -1,4 +1,4 @@ -BootstrapServerMessageDeserializerArgs in massa_bootstrap - Rust
    pub struct BootstrapServerMessageDeserializerArgs {
    Show 23 fields +BootstrapServerMessageDeserializerArgs in massa_bootstrap - Rust
    pub struct BootstrapServerMessageDeserializerArgs {
    Show 23 fields pub thread_count: u8, pub endorsement_count: u32, pub max_advertise_length: u32, @@ -23,7 +23,7 @@ pub max_denunciation_changes_length: u64, pub chain_id: u64,
    }
    Expand description

    Bootstrap Message der args

    -

    Fields§

    §thread_count: u8§endorsement_count: u32§max_advertise_length: u32§max_listeners_per_peer: u32§max_bootstrap_blocks_length: u32§max_operations_per_block: u32§max_final_state_elements_size: u32§max_versioning_elements_size: u32§max_ledger_changes_count: u64§max_datastore_key_length: u8§max_datastore_value_length: u64§max_datastore_entry_count: u64§max_bootstrap_error_length: u64§max_changes_slot_count: u64§max_rolls_length: u64§max_production_stats_length: u64§max_credits_length: u64§max_executed_ops_length: u64§max_ops_changes_length: u64§mip_store_stats_block_considered: usize§max_denunciations_per_block_header: u32§max_denunciation_changes_length: u64§chain_id: u64

    Trait Implementations§

    source§

    impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs

    source§

    fn from(value: &BootstrapClientConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapServerMessageDeserializerArgs> for BlockDeserializerArgs

    source§

    fn from(value: &BootstrapServerMessageDeserializerArgs) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §thread_count: u8§endorsement_count: u32§max_advertise_length: u32§max_listeners_per_peer: u32§max_bootstrap_blocks_length: u32§max_operations_per_block: u32§max_final_state_elements_size: u32§max_versioning_elements_size: u32§max_ledger_changes_count: u64§max_datastore_key_length: u8§max_datastore_value_length: u64§max_datastore_entry_count: u64§max_bootstrap_error_length: u64§max_changes_slot_count: u64§max_rolls_length: u64§max_production_stats_length: u64§max_credits_length: u64§max_executed_ops_length: u64§max_ops_changes_length: u64§mip_store_stats_block_considered: usize§max_denunciations_per_block_header: u32§max_denunciation_changes_length: u64§chain_id: u64

    Trait Implementations§

    source§

    impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs

    source§

    fn from(value: &BootstrapClientConfig) -> Self

    Converts to this type from the input type.
    source§

    impl From<&BootstrapServerMessageDeserializerArgs> for BlockDeserializerArgs

    source§

    fn from(value: &BootstrapServerMessageDeserializerArgs) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -134,4 +134,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapServerMessageSerializer.html b/massa_bootstrap/struct.BootstrapServerMessageSerializer.html index c3cd2aa7d72..4147182be32 100644 --- a/massa_bootstrap/struct.BootstrapServerMessageSerializer.html +++ b/massa_bootstrap/struct.BootstrapServerMessageSerializer.html @@ -1,4 +1,4 @@ -BootstrapServerMessageSerializer in massa_bootstrap - Rust
    pub struct BootstrapServerMessageSerializer {
    +BootstrapServerMessageSerializer in massa_bootstrap - Rust
    pub struct BootstrapServerMessageSerializer {
         u32_serializer: U32VarIntSerializer,
         u64_serializer: U64VarIntSerializer,
         time_serializer: MassaTimeSerializer,
    @@ -142,4 +142,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.BootstrapTcpListener.html b/massa_bootstrap/struct.BootstrapTcpListener.html index 903d8fcca6b..2efbba899aa 100644 --- a/massa_bootstrap/struct.BootstrapTcpListener.html +++ b/massa_bootstrap/struct.BootstrapTcpListener.html @@ -1,4 +1,4 @@ -BootstrapTcpListener in massa_bootstrap - Rust

    Struct massa_bootstrap::BootstrapTcpListener

    source ·
    pub struct BootstrapTcpListener {
    +BootstrapTcpListener in massa_bootstrap - Rust

    Struct massa_bootstrap::BootstrapTcpListener

    source ·
    pub struct BootstrapTcpListener {
         poll: Poll,
         events: Events,
         server: TcpListener,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.DefaultConnector.html b/massa_bootstrap/struct.DefaultConnector.html index bc092983abb..a4c57d76240 100644 --- a/massa_bootstrap/struct.DefaultConnector.html +++ b/massa_bootstrap/struct.DefaultConnector.html @@ -1,4 +1,4 @@ -DefaultConnector in massa_bootstrap - Rust

    Struct massa_bootstrap::DefaultConnector

    source ·
    pub struct DefaultConnector;
    Expand description

    Initiates a connection with given timeout in milliseconds

    +DefaultConnector in massa_bootstrap - Rust

    Struct massa_bootstrap::DefaultConnector

    source ·
    pub struct DefaultConnector;
    Expand description

    Initiates a connection with given timeout in milliseconds

    Trait Implementations§

    source§

    impl BSConnector for DefaultConnector

    source§

    fn connect_timeout( &self, addr: SocketAddr, @@ -119,4 +119,5 @@

    §Argument
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/struct.GlobalBootstrapState.html b/massa_bootstrap/struct.GlobalBootstrapState.html index 098cbe13d31..ab1e1117575 100644 --- a/massa_bootstrap/struct.GlobalBootstrapState.html +++ b/massa_bootstrap/struct.GlobalBootstrapState.html @@ -1,4 +1,4 @@ -GlobalBootstrapState in massa_bootstrap - Rust

    Struct massa_bootstrap::GlobalBootstrapState

    source ·
    pub struct GlobalBootstrapState {
    +GlobalBootstrapState in massa_bootstrap - Rust

    Struct massa_bootstrap::GlobalBootstrapState

    source ·
    pub struct GlobalBootstrapState {
         pub final_state: Arc<RwLock<dyn FinalStateController>>,
         pub graph: Option<BootstrapableGraph>,
         pub peers: Option<BootstrapPeers>,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/white_black_list/struct.SharedWhiteBlackList.html b/massa_bootstrap/white_black_list/struct.SharedWhiteBlackList.html index 3d9bb2d3a98..ff9186eae7a 100644 --- a/massa_bootstrap/white_black_list/struct.SharedWhiteBlackList.html +++ b/massa_bootstrap/white_black_list/struct.SharedWhiteBlackList.html @@ -1,4 +1,4 @@ -SharedWhiteBlackList in massa_bootstrap::white_black_list - Rust
    pub struct SharedWhiteBlackList<'a> {
    +SharedWhiteBlackList in massa_bootstrap::white_black_list - Rust
    pub struct SharedWhiteBlackList<'a> {
         inner: Arc<RwLock<WhiteBlackListInner>>,
         white_path: Cow<'a, Path>,
         black_path: Cow<'a, Path>,
    @@ -149,4 +149,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_bootstrap/white_black_list/struct.WhiteBlackListInner.html b/massa_bootstrap/white_black_list/struct.WhiteBlackListInner.html index fa9fdaa527c..3d1f18fdbf5 100644 --- a/massa_bootstrap/white_black_list/struct.WhiteBlackListInner.html +++ b/massa_bootstrap/white_black_list/struct.WhiteBlackListInner.html @@ -1,4 +1,4 @@ -WhiteBlackListInner in massa_bootstrap::white_black_list - Rust
    pub(crate) struct WhiteBlackListInner {
    +WhiteBlackListInner in massa_bootstrap::white_black_list - Rust
    pub(crate) struct WhiteBlackListInner {
         white_list: Option<HashSet<IpAddr>>,
         black_list: Option<HashSet<IpAddr>>,
     }

    Fields§

    §white_list: Option<HashSet<IpAddr>>§black_list: Option<HashSet<IpAddr>>

    Implementations§

    source§

    impl WhiteBlackListInner

    source

    fn update_list( @@ -121,4 +121,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_cipher/enum.CipherError.html b/massa_cipher/enum.CipherError.html index 7780c7a62f1..6c7f4c70f4a 100644 --- a/massa_cipher/enum.CipherError.html +++ b/massa_cipher/enum.CipherError.html @@ -6,7 +6,7 @@

    Variants§

    §

    EncryptionError(String)

    Encryption error: {0}

    §

    DecryptionError(String)

    Decryption error: {0}

    §

    Utf8Error(Utf8Error)

    Utf8 error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for CipherError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for CipherError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for CipherError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Utf8Error> for CipherError

    source§

    fn from(source: Utf8Error) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for CipherError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for CipherError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for CipherError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Utf8Error> for CipherError

    source§

    fn from(source: Utf8Error) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    diff --git a/massa_cipher/error/enum.CipherError.html b/massa_cipher/error/enum.CipherError.html index 5b92306a6a8..54414ba8434 100644 --- a/massa_cipher/error/enum.CipherError.html +++ b/massa_cipher/error/enum.CipherError.html @@ -6,7 +6,7 @@

    Variants§

    §

    EncryptionError(String)

    Encryption error: {0}

    §

    DecryptionError(String)

    Decryption error: {0}

    §

    Utf8Error(Utf8Error)

    Utf8 error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for CipherError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for CipherError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for CipherError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Utf8Error> for CipherError

    source§

    fn from(source: Utf8Error) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for CipherError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for CipherError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for CipherError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Utf8Error> for CipherError

    source§

    fn from(source: Utf8Error) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    diff --git a/massa_client/cmds/enum.Command.html b/massa_client/cmds/enum.Command.html index fc5be60b691..a8168954b55 100644 --- a/massa_client/cmds/enum.Command.html +++ b/massa_client/cmds/enum.Command.html @@ -1,4 +1,4 @@ -Command in massa_client::cmds - Rust

    Enum massa_client::cmds::Command

    source ·
    pub enum Command {
    +Command in massa_client::cmds - Rust

    Enum massa_client::cmds::Command

    source ·
    pub enum Command {
     
    Show 35 variants help, exit, node_unban_by_ip, @@ -48,7 +48,7 @@ wallet_opt: &mut Option<Wallet>, parameters: &[String], json: bool, -) -> Result<Box<dyn Output>>

    run a given command

    +) -> Result<Box<dyn Output>>

    run a given command

    §parameters
    • client: the RPC client
    • @@ -171,5 +171,6 @@
      §parameters
      §

      fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/cmds/enum.ListOperation.html b/massa_client/cmds/enum.ListOperation.html index f8d14820791..ad17ef425f0 100644 --- a/massa_client/cmds/enum.ListOperation.html +++ b/massa_client/cmds/enum.ListOperation.html @@ -1,4 +1,4 @@ -ListOperation in massa_client::cmds - Rust

    Enum massa_client::cmds::ListOperation

    source ·
    pub enum ListOperation {
    +ListOperation in massa_client::cmds - Rust

    Enum massa_client::cmds::ListOperation

    source ·
    pub enum ListOperation {
         Add,
         AllowAll,
         Remove,
    @@ -105,5 +105,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/cmds/fn.get_file_as_byte_vec.html b/massa_client/cmds/fn.get_file_as_byte_vec.html index 21b5db5dda2..92098589965 100644 --- a/massa_client/cmds/fn.get_file_as_byte_vec.html +++ b/massa_client/cmds/fn.get_file_as_byte_vec.html @@ -1,2 +1,2 @@ -get_file_as_byte_vec in massa_client::cmds - Rust

    Function massa_client::cmds::get_file_as_byte_vec

    source ·
    async fn get_file_as_byte_vec(filename: &Path) -> Result<Vec<u8>>
    Expand description

    reads a file

    +get_file_as_byte_vec in massa_client::cmds - Rust

    Function massa_client::cmds::get_file_as_byte_vec

    source ·
    async fn get_file_as_byte_vec(filename: &Path) -> Result<Vec<u8>>
    Expand description

    reads a file

    \ No newline at end of file diff --git a/massa_client/cmds/fn.parse_key_value.html b/massa_client/cmds/fn.parse_key_value.html index a646e38cd94..d04271ed20b 100644 --- a/massa_client/cmds/fn.parse_key_value.html +++ b/massa_client/cmds/fn.parse_key_value.html @@ -1,5 +1,5 @@ parse_key_value in massa_client::cmds - Rust

    Function massa_client::cmds::parse_key_value

    source ·
    pub fn parse_key_value<T: FromStr>(
         p: &HashMap<&str, &str>,
         key: &str,
    -) -> Result<Option<T>, Error>
    where +) -> Result<Option<T>, Error>
    where T::Err: Display,
    \ No newline at end of file diff --git a/massa_client/cmds/fn.parse_vec.html b/massa_client/cmds/fn.parse_vec.html index 520926026bc..1730e0a37e5 100644 --- a/massa_client/cmds/fn.parse_vec.html +++ b/massa_client/cmds/fn.parse_vec.html @@ -1,4 +1,4 @@ -parse_vec in massa_client::cmds - Rust

    Function massa_client::cmds::parse_vec

    source ·
    pub fn parse_vec<T: FromStr>(args: &[String]) -> Result<Vec<T>, Error>
    where +parse_vec in massa_client::cmds - Rust

    Function massa_client::cmds::parse_vec

    source ·
    pub fn parse_vec<T: FromStr>(args: &[String]) -> Result<Vec<T>, Error>
    where T::Err: Display,
    Expand description

    TODO: ugly utilities functions takes a slice of string and makes it into a Vec<T>

    \ No newline at end of file diff --git a/massa_client/cmds/fn.send_operation.html b/massa_client/cmds/fn.send_operation.html index 972d8ae499a..50a7633cc4b 100644 --- a/massa_client/cmds/fn.send_operation.html +++ b/massa_client/cmds/fn.send_operation.html @@ -5,5 +5,5 @@ fee: Amount, addr: Address, json: bool, -) -> Result<Box<dyn Output>>
    Expand description

    helper to wrap and send an operation with proper validity period

    +) -> Result<Box<dyn Output>>
    Expand description

    helper to wrap and send an operation with proper validity period

    \ No newline at end of file diff --git a/massa_client/cmds/struct.CommandIter.html b/massa_client/cmds/struct.CommandIter.html index 359b02472cf..67a7bd3e187 100644 --- a/massa_client/cmds/struct.CommandIter.html +++ b/massa_client/cmds/struct.CommandIter.html @@ -1,4 +1,4 @@ -CommandIter in massa_client::cmds - Rust

    Struct massa_client::cmds::CommandIter

    source ·
    pub struct CommandIter {
    +CommandIter in massa_client::cmds - Rust

    Struct massa_client::cmds::CommandIter

    source ·
    pub struct CommandIter {
         idx: usize,
         back_idx: usize,
         marker: PhantomData<()>,
    @@ -314,5 +314,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/cmds/struct.ExtendedWallet.html b/massa_client/cmds/struct.ExtendedWallet.html index 9093ec3179d..4e4ac7919de 100644 --- a/massa_client/cmds/struct.ExtendedWallet.html +++ b/massa_client/cmds/struct.ExtendedWallet.html @@ -1,12 +1,12 @@ -ExtendedWallet in massa_client::cmds - Rust

    Struct massa_client::cmds::ExtendedWallet

    source ·
    pub struct ExtendedWallet(pub(crate) PreHashMap<Address, ExtendedWalletEntry>);
    Expand description

    Aggregation of the local, with some useful information as the balance, etc +ExtendedWallet in massa_client::cmds - Rust

    Struct massa_client::cmds::ExtendedWallet

    source ·
    pub struct ExtendedWallet(pub(crate) PreHashMap<Address, ExtendedWalletEntry>);
    Expand description

    Aggregation of the local, with some useful information as the balance, etc to be printed by the client.

    Tuple Fields§

    §0: PreHashMap<Address, ExtendedWalletEntry>

    Implementations§

    source§

    impl ExtendedWallet

    source

    fn new( wallet: &Wallet, addresses_info: &[AddressInfo], show_keys: bool, -) -> Result<Self>

    Reorganize everything into an extended wallet

    -

    Trait Implementations§

    source§

    impl Debug for ExtendedWallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExtendedWallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Output for ExtendedWallet

    source§

    impl Serialize for ExtendedWallet

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<Self>

    Reorganize everything into an extended wallet

    +

    Trait Implementations§

    source§

    impl Debug for ExtendedWallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExtendedWallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Output for ExtendedWallet

    source§

    impl Serialize for ExtendedWallet

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -71,7 +71,7 @@ T: 'a + ?Sized, R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T> Serialize for T
    where - T: Serialize + ?Sized,

    source§

    fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + T: Serialize + ?Sized,

    source§

    fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where Self: Borrow<B>, B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where Self: BorrowMut<B>, @@ -110,5 +110,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/cmds/struct.ExtendedWalletEntry.html b/massa_client/cmds/struct.ExtendedWalletEntry.html index c7045e52a1e..e5ae4ccd0f8 100644 --- a/massa_client/cmds/struct.ExtendedWalletEntry.html +++ b/massa_client/cmds/struct.ExtendedWalletEntry.html @@ -1,4 +1,4 @@ -ExtendedWalletEntry in massa_client::cmds - Rust

    Struct massa_client::cmds::ExtendedWalletEntry

    source ·
    pub(crate) struct ExtendedWalletEntry {
    +ExtendedWalletEntry in massa_client::cmds - Rust

    Struct massa_client::cmds::ExtendedWalletEntry

    source ·
    pub(crate) struct ExtendedWalletEntry {
         pub keypair: KeyPair,
         pub address_info: CompactAddressInfo,
         pub show_keys: bool,
    @@ -7,8 +7,8 @@
     

    Fields§

    §keypair: KeyPair

    the keypair

    §address_info: CompactAddressInfo

    address and balance information

    §show_keys: bool

    whether to display the public/secret keys or just the address info

    -

    Trait Implementations§

    source§

    impl Debug for ExtendedWalletEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExtendedWalletEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for ExtendedWalletEntry

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for ExtendedWalletEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExtendedWalletEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for ExtendedWalletEntry

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -73,7 +73,7 @@ T: 'a + ?Sized, R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T> Serialize for T
    where - T: Serialize + ?Sized,

    source§

    fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + T: Serialize + ?Sized,

    source§

    fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where Self: Borrow<B>, B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where Self: BorrowMut<B>, @@ -112,5 +112,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/cmds/struct.ListOperationIter.html b/massa_client/cmds/struct.ListOperationIter.html index 08724e22fbb..dbaa0330afc 100644 --- a/massa_client/cmds/struct.ListOperationIter.html +++ b/massa_client/cmds/struct.ListOperationIter.html @@ -1,4 +1,4 @@ -ListOperationIter in massa_client::cmds - Rust

    Struct massa_client::cmds::ListOperationIter

    source ·
    pub struct ListOperationIter {
    +ListOperationIter in massa_client::cmds - Rust

    Struct massa_client::cmds::ListOperationIter

    source ·
    pub struct ListOperationIter {
         idx: usize,
         back_idx: usize,
         marker: PhantomData<()>,
    @@ -311,5 +311,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/display/enum.Style.html b/massa_client/display/enum.Style.html index 54a68e58b59..afb9a7d902a 100644 --- a/massa_client/display/enum.Style.html +++ b/massa_client/display/enum.Style.html @@ -1,4 +1,4 @@ -Style in massa_client::display - Rust

    Enum massa_client::display::Style

    source ·
    pub enum Style {
    +Style in massa_client::display - Rust

    Enum massa_client::display::Style

    source ·
    pub enum Style {
     
    Show 14 variants Id, Pending, Finished, @@ -129,5 +129,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/display/trait.Output.html b/massa_client/display/trait.Output.html index 4e26cd4e2ff..84381e07e89 100644 --- a/massa_client/display/trait.Output.html +++ b/massa_client/display/trait.Output.html @@ -1,4 +1,4 @@ Output in massa_client::display - Rust

    Trait massa_client::display::Output

    source ·
    pub trait Output: Serialize {
         // Required method
         fn pretty_print(&self);
    -}

    Required Methods§

    Implementations§

    source§

    impl dyn Output

    source

    pub(crate) fn stdout_json(&self) -> Result<()>

    Implementations on Foreign Types§

    source§

    impl Output for &str

    source§

    impl Output for ()

    source§

    impl Output for BlockInfo

    source§

    impl Output for ExecuteReadOnlyResponse

    source§

    impl Output for NodeStatus

    source§

    impl Output for Wallet

    source§

    impl Output for String

    source§

    impl Output for Vec<(Address, KeyPair)>

    source§

    impl Output for Vec<(Address, PublicKey)>

    source§

    impl Output for Vec<IpAddr>

    source§

    impl Output for Vec<AddressInfo>

    source§

    impl Output for Vec<BlockInfo>

    source§

    impl Output for Vec<DatastoreEntryOutput>

    source§

    impl Output for Vec<EndorsementInfo>

    source§

    impl Output for Vec<OperationInfo>

    source§

    impl Output for Vec<Address>

    source§

    impl Output for Vec<OperationId>

    source§

    impl Output for Vec<SCOutputEvent>

    source§

    impl Output for CompactConfig

    source§

    impl Output for ConsensusStats

    source§

    impl Output for ExecutionStats

    source§

    impl Output for NetworkStats

    source§

    impl Output for PreHashSet<Address>

    source§

    impl Output for PubkeySig

    Implementors§

    \ No newline at end of file +}

    Required Methods§

    Implementations§

    source§

    impl dyn Output

    source

    pub(crate) fn stdout_json(&self) -> Result<()>

    Implementations on Foreign Types§

    source§

    impl Output for &str

    source§

    impl Output for ()

    source§

    impl Output for BlockInfo

    source§

    impl Output for ExecuteReadOnlyResponse

    source§

    impl Output for NodeStatus

    source§

    impl Output for Wallet

    source§

    impl Output for String

    source§

    impl Output for Vec<(Address, KeyPair)>

    source§

    impl Output for Vec<(Address, PublicKey)>

    source§

    impl Output for Vec<IpAddr>

    source§

    impl Output for Vec<AddressInfo>

    source§

    impl Output for Vec<BlockInfo>

    source§

    impl Output for Vec<DatastoreEntryOutput>

    source§

    impl Output for Vec<EndorsementInfo>

    source§

    impl Output for Vec<OperationInfo>

    source§

    impl Output for Vec<Address>

    source§

    impl Output for Vec<OperationId>

    source§

    impl Output for Vec<SCOutputEvent>

    source§

    impl Output for CompactConfig

    source§

    impl Output for ConsensusStats

    source§

    impl Output for ExecutionStats

    source§

    impl Output for NetworkStats

    source§

    impl Output for PreHashSet<Address>

    source§

    impl Output for PubkeySig

    Implementors§

    \ No newline at end of file diff --git a/massa_client/fn.main.html b/massa_client/fn.main.html index 33cc7ba8c10..eb8df0a6d78 100644 --- a/massa_client/fn.main.html +++ b/massa_client/fn.main.html @@ -1 +1 @@ -main in massa_client - Rust

    Function massa_client::main

    source ·
    pub(crate) fn main() -> Result<()>
    \ No newline at end of file +main in massa_client - Rust

    Function massa_client::main

    source ·
    pub(crate) fn main() -> Result<()>
    \ No newline at end of file diff --git a/massa_client/fn.run.html b/massa_client/fn.run.html index 3b5874bb605..fab45f20453 100644 --- a/massa_client/fn.run.html +++ b/massa_client/fn.run.html @@ -1 +1 @@ -run in massa_client - Rust

    Function massa_client::run

    source ·
    pub(crate) async fn run(args: Args) -> Result<()>
    \ No newline at end of file +run in massa_client - Rust

    Function massa_client::run

    source ·
    pub(crate) async fn run(args: Args) -> Result<()>
    \ No newline at end of file diff --git a/massa_client/repl/fn.run.html b/massa_client/repl/fn.run.html index a845ba4c2a7..dc8caf57dc0 100644 --- a/massa_client/repl/fn.run.html +++ b/massa_client/repl/fn.run.html @@ -2,4 +2,4 @@ client: &mut Client, wallet_path: &Path, args_password: Option<String>, -) -> Result<()>
    \ No newline at end of file +) -> Result<()>
    \ No newline at end of file diff --git a/massa_client/repl/struct.MassaCompleter.html b/massa_client/repl/struct.MassaCompleter.html index 9a890bf5634..cf3e6e78a9c 100644 --- a/massa_client/repl/struct.MassaCompleter.html +++ b/massa_client/repl/struct.MassaCompleter.html @@ -1,4 +1,4 @@ -MassaCompleter in massa_client::repl - Rust

    Struct massa_client::repl::MassaCompleter

    source ·
    struct MassaCompleter {
    +MassaCompleter in massa_client::repl - Rust

    Struct massa_client::repl::MassaCompleter

    source ·
    struct MassaCompleter {
         file_completer: FilenameCompleter,
     }

    Fields§

    §file_completer: FilenameCompleter

    Implementations§

    Trait Implementations§

    source§

    impl Completer for MassaCompleter

    §

    type Candidate = Pair

    Specific completion candidate.
    source§

    fn complete( &self, @@ -115,5 +115,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/repl/struct.MyHelper.html b/massa_client/repl/struct.MyHelper.html index 38f4a432107..938194fc72f 100644 --- a/massa_client/repl/struct.MyHelper.html +++ b/massa_client/repl/struct.MyHelper.html @@ -1,4 +1,4 @@ -MyHelper in massa_client::repl - Rust

    Struct massa_client::repl::MyHelper

    source ·
    struct MyHelper {
    +MyHelper in massa_client::repl - Rust

    Struct massa_client::repl::MyHelper

    source ·
    struct MyHelper {
         completer: MassaCompleter,
         validator: MatchingBracketValidator,
     }

    Fields§

    §completer: MassaCompleter§validator: MatchingBracketValidator

    Trait Implementations§

    source§

    impl Completer for MyHelper

    §

    type Candidate = <MassaCompleter as Completer>::Candidate

    Specific completion candidate.
    source§

    fn complete( @@ -139,5 +139,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/settings/struct.ClientSettings.html b/massa_client/settings/struct.ClientSettings.html index f7dc1270d5e..fe9e269739a 100644 --- a/massa_client/settings/struct.ClientSettings.html +++ b/massa_client/settings/struct.ClientSettings.html @@ -1,4 +1,4 @@ -ClientSettings in massa_client::settings - Rust

    Struct massa_client::settings::ClientSettings

    source ·
    pub struct ClientSettings {
    +ClientSettings in massa_client::settings - Rust

    Struct massa_client::settings::ClientSettings

    source ·
    pub struct ClientSettings {
         pub max_request_body_size: u32,
         pub request_timeout: MassaTime,
         pub max_concurrent_requests: usize,
    @@ -9,8 +9,8 @@
         pub http: HttpSettings,
     }
    Expand description

    Client settings the client settings.

    -

    Fields§

    §max_request_body_size: u32§request_timeout: MassaTime§max_concurrent_requests: usize§certificate_store: String§id_kind: String§max_log_length: u32§headers: Vec<(String, String)>§http: HttpSettings

    Trait Implementations§

    source§

    impl Clone for ClientSettings

    source§

    fn clone(&self) -> ClientSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ClientSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ClientSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §max_request_body_size: u32§request_timeout: MassaTime§max_concurrent_requests: usize§certificate_store: String§id_kind: String§max_log_length: u32§headers: Vec<(String, String)>§http: HttpSettings

    Trait Implementations§

    source§

    impl Clone for ClientSettings

    source§

    fn clone(&self) -> ClientSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ClientSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ClientSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -115,6 +115,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/settings/struct.DefaultNode.html b/massa_client/settings/struct.DefaultNode.html index 8c008a4014e..94499ff944b 100644 --- a/massa_client/settings/struct.DefaultNode.html +++ b/massa_client/settings/struct.DefaultNode.html @@ -1,12 +1,12 @@ -DefaultNode in massa_client::settings - Rust

    Struct massa_client::settings::DefaultNode

    source ·
    pub struct DefaultNode {
    +DefaultNode in massa_client::settings - Rust

    Struct massa_client::settings::DefaultNode

    source ·
    pub struct DefaultNode {
         pub ip: IpAddr,
         pub private_port: u16,
         pub public_port: u16,
         pub grpc_public_port: u16,
         pub grpc_private_port: u16,
         pub chain_id: Option<u64>,
    -}

    Fields§

    §ip: IpAddr§private_port: u16§public_port: u16§grpc_public_port: u16§grpc_private_port: u16§chain_id: Option<u64>

    Trait Implementations§

    source§

    impl Clone for DefaultNode

    source§

    fn clone(&self) -> DefaultNode

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DefaultNode

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DefaultNode

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §ip: IpAddr§private_port: u16§public_port: u16§grpc_public_port: u16§grpc_private_port: u16§chain_id: Option<u64>

    Trait Implementations§

    source§

    impl Clone for DefaultNode

    source§

    fn clone(&self) -> DefaultNode

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DefaultNode

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DefaultNode

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -111,6 +111,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/settings/struct.HttpSettings.html b/massa_client/settings/struct.HttpSettings.html index 4db1ce5b288..c2a385b939b 100644 --- a/massa_client/settings/struct.HttpSettings.html +++ b/massa_client/settings/struct.HttpSettings.html @@ -1,10 +1,10 @@ -HttpSettings in massa_client::settings - Rust

    Struct massa_client::settings::HttpSettings

    source ·
    pub struct HttpSettings {
    +HttpSettings in massa_client::settings - Rust

    Struct massa_client::settings::HttpSettings

    source ·
    pub struct HttpSettings {
         pub enabled: bool,
     }
    Expand description

    TODO add WebSocket to CLI Http client settings. the Http client settings

    -

    Fields§

    §enabled: bool

    Trait Implementations§

    source§

    impl Clone for HttpSettings

    source§

    fn clone(&self) -> HttpSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for HttpSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for HttpSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §enabled: bool

    Trait Implementations§

    source§

    impl Clone for HttpSettings

    source§

    fn clone(&self) -> HttpSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for HttpSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for HttpSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -109,6 +109,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/settings/struct.SETTINGS.html b/massa_client/settings/struct.SETTINGS.html index ca46ee33433..db29ebc8b15 100644 --- a/massa_client/settings/struct.SETTINGS.html +++ b/massa_client/settings/struct.SETTINGS.html @@ -1,4 +1,4 @@ -SETTINGS in massa_client::settings - Rust

    Struct massa_client::settings::SETTINGS

    source ·
    pub struct SETTINGS {
    +SETTINGS in massa_client::settings - Rust

    Struct massa_client::settings::SETTINGS

    source ·
    pub struct SETTINGS {
         __private_field: (),
     }

    Fields§

    §__private_field: ()

    Trait Implementations§

    source§

    impl Deref for SETTINGS

    §

    type Target = Settings

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Settings

    Dereferences the value.
    source§

    impl LazyStatic for SETTINGS

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -102,5 +102,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/settings/struct.Settings.html b/massa_client/settings/struct.Settings.html index 14e5fc32b6a..2e251bc9c27 100644 --- a/massa_client/settings/struct.Settings.html +++ b/massa_client/settings/struct.Settings.html @@ -1,11 +1,11 @@ -Settings in massa_client::settings - Rust

    Struct massa_client::settings::Settings

    source ·
    pub struct Settings {
    +Settings in massa_client::settings - Rust

    Struct massa_client::settings::Settings

    source ·
    pub struct Settings {
         pub default_node: DefaultNode,
         pub history: usize,
         pub history_file_path: PathBuf,
         pub timeout: MassaTime,
         pub client: ClientSettings,
    -}

    Fields§

    §default_node: DefaultNode§history: usize§history_file_path: PathBuf§timeout: MassaTime§client: ClientSettings

    Trait Implementations§

    source§

    impl Clone for Settings

    source§

    fn clone(&self) -> Settings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Settings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Settings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §default_node: DefaultNode§history: usize§history_file_path: PathBuf§timeout: MassaTime§client: ClientSettings

    Trait Implementations§

    source§

    impl Clone for Settings

    source§

    fn clone(&self) -> Settings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Settings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Settings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -110,6 +110,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/struct.Args.html b/massa_client/struct.Args.html index c85d0c0bdf9..d944d42cd8c 100644 --- a/massa_client/struct.Args.html +++ b/massa_client/struct.Args.html @@ -1,4 +1,4 @@ -Args in massa_client - Rust

    Struct massa_client::Args

    source ·
    pub(crate) struct Args {
    +Args in massa_client - Rust

    Struct massa_client::Args

    source ·
    pub(crate) struct Args {
         pub(crate) public_port: Option<u16>,
         pub(crate) private_port: Option<u16>,
         pub(crate) grpc_public_port: Option<u16>,
    @@ -141,5 +141,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_client/struct.JsonError.html b/massa_client/struct.JsonError.html index f81343fb5f1..64d8ed49021 100644 --- a/massa_client/struct.JsonError.html +++ b/massa_client/struct.JsonError.html @@ -1,7 +1,7 @@ -JsonError in massa_client - Rust

    Struct massa_client::JsonError

    source ·
    pub(crate) struct JsonError {
    +JsonError in massa_client - Rust

    Struct massa_client::JsonError

    source ·
    pub(crate) struct JsonError {
         pub(crate) error: String,
    -}

    Fields§

    §error: String

    Trait Implementations§

    source§

    impl Serialize for JsonError

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §error: String

    Trait Implementations§

    source§

    impl Serialize for JsonError

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -66,7 +66,7 @@ T: 'a + ?Sized, R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T> Serialize for T
    where - T: Serialize + ?Sized,

    source§

    fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + T: Serialize + ?Sized,

    source§

    fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where Self: Borrow<B>, B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where Self: BorrowMut<B>, @@ -104,5 +104,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_graph_export/struct.BlockGraphExport.html b/massa_consensus_exports/block_graph_export/struct.BlockGraphExport.html index 8e2675e0dfb..264da1d4f0a 100644 --- a/massa_consensus_exports/block_graph_export/struct.BlockGraphExport.html +++ b/massa_consensus_exports/block_graph_export/struct.BlockGraphExport.html @@ -1,4 +1,4 @@ -BlockGraphExport in massa_consensus_exports::block_graph_export - Rust
    pub struct BlockGraphExport {
    +BlockGraphExport in massa_consensus_exports::block_graph_export - Rust
    pub struct BlockGraphExport {
         pub genesis_blocks: Vec<BlockId>,
         pub active_blocks: PreHashMap<BlockId, ExportCompiledBlock>,
         pub discarded_blocks: PreHashMap<BlockId, (DiscardReason, (Slot, Address, Vec<BlockId>))>,
    @@ -129,4 +129,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.BlockStatus.html b/massa_consensus_exports/block_status/enum.BlockStatus.html index 609e3780818..f9460ba4cb4 100644 --- a/massa_consensus_exports/block_status/enum.BlockStatus.html +++ b/massa_consensus_exports/block_status/enum.BlockStatus.html @@ -1,4 +1,4 @@ -BlockStatus in massa_consensus_exports::block_status - Rust
    pub enum BlockStatus {
    +BlockStatus in massa_consensus_exports::block_status - Rust
    pub enum BlockStatus {
         Incoming(HeaderOrBlock),
         WaitingForSlot(HeaderOrBlock),
         WaitingForDependencies {
    @@ -148,4 +148,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.BlockStatusId.html b/massa_consensus_exports/block_status/enum.BlockStatusId.html index 8f91dd40b59..ccce5dd1746 100644 --- a/massa_consensus_exports/block_status/enum.BlockStatusId.html +++ b/massa_consensus_exports/block_status/enum.BlockStatusId.html @@ -1,4 +1,4 @@ -BlockStatusId in massa_consensus_exports::block_status - Rust
    pub enum BlockStatusId {
    +BlockStatusId in massa_consensus_exports::block_status - Rust
    pub enum BlockStatusId {
         Incoming = 0,
         WaitingForSlot = 1,
         WaitingForDependencies = 2,
    @@ -131,4 +131,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.DiscardReason.html b/massa_consensus_exports/block_status/enum.DiscardReason.html index c27db7822c0..5e4147ff150 100644 --- a/massa_consensus_exports/block_status/enum.DiscardReason.html +++ b/massa_consensus_exports/block_status/enum.DiscardReason.html @@ -1,4 +1,4 @@ -DiscardReason in massa_consensus_exports::block_status - Rust
    pub enum DiscardReason {
    +DiscardReason in massa_consensus_exports::block_status - Rust
    pub enum DiscardReason {
         Invalid(String),
         Stale,
         Final,
    @@ -6,11 +6,11 @@
     

    Variants§

    §

    Invalid(String)

    Block is invalid, either structurally, or because of some incompatibility. The String contains the reason for info or debugging.

    §

    Stale

    Block is incompatible with a final block.

    §

    Final

    Block has enough fitness.

    -

    Trait Implementations§

    source§

    impl Clone for DiscardReason

    source§

    fn clone(&self) -> DiscardReason

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DiscardReason

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DiscardReason

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for DiscardReason

    source§

    fn eq(&self, other: &DiscardReason) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Clone for DiscardReason

    source§

    fn clone(&self) -> DiscardReason

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DiscardReason

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DiscardReason

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for DiscardReason

    source§

    fn eq(&self, other: &DiscardReason) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for DiscardReason

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for DiscardReason

    source§

    impl StructuralPartialEq for DiscardReason

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for DiscardReason

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for DiscardReason

    source§

    impl StructuralPartialEq for DiscardReason

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -135,5 +135,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.ExportBlockStatus.html b/massa_consensus_exports/block_status/enum.ExportBlockStatus.html index 2e0a7496c16..103db4754bf 100644 --- a/massa_consensus_exports/block_status/enum.ExportBlockStatus.html +++ b/massa_consensus_exports/block_status/enum.ExportBlockStatus.html @@ -1,4 +1,4 @@ -ExportBlockStatus in massa_consensus_exports::block_status - Rust
    pub enum ExportBlockStatus {
    +ExportBlockStatus in massa_consensus_exports::block_status - Rust
    pub enum ExportBlockStatus {
         Incoming,
         WaitingForSlot,
         WaitingForDependencies,
    @@ -12,9 +12,9 @@
     
    §

    Active(Block)

    valid and not yet final

    §

    Final(Block)

    immutable

    §

    Discarded(DiscardReason)

    not part of the graph

    -

    Trait Implementations§

    source§

    impl Clone for ExportBlockStatus

    source§

    fn clone(&self) -> ExportBlockStatus

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExportBlockStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExportBlockStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ExportBlockStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExportBlockStatus

    source§

    fn clone(&self) -> ExportBlockStatus

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExportBlockStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExportBlockStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ExportBlockStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -129,5 +129,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.HeaderOrBlock.html b/massa_consensus_exports/block_status/enum.HeaderOrBlock.html index 1a63e0cce96..c57734c37b3 100644 --- a/massa_consensus_exports/block_status/enum.HeaderOrBlock.html +++ b/massa_consensus_exports/block_status/enum.HeaderOrBlock.html @@ -1,4 +1,4 @@ -HeaderOrBlock in massa_consensus_exports::block_status - Rust
    pub enum HeaderOrBlock {
    +HeaderOrBlock in massa_consensus_exports::block_status - Rust
    pub enum HeaderOrBlock {
         Header(SecuredHeader),
         Block {
             id: BlockId,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.Status.html b/massa_consensus_exports/block_status/enum.Status.html index c2ba40ce89f..cb371f3f69c 100644 --- a/massa_consensus_exports/block_status/enum.Status.html +++ b/massa_consensus_exports/block_status/enum.Status.html @@ -1,14 +1,14 @@ -Status in massa_consensus_exports::block_status - Rust

    Enum massa_consensus_exports::block_status::Status

    source ·
    pub enum Status {
    +Status in massa_consensus_exports::block_status - Rust

    Enum massa_consensus_exports::block_status::Status

    source ·
    pub enum Status {
         Active,
         Final,
     }
    Expand description

    Status

    Variants§

    §

    Active

    without enough fitness to be part of immutable history

    §

    Final

    with enough fitness to be part of immutable history

    -

    Trait Implementations§

    source§

    impl Clone for Status

    source§

    fn clone(&self) -> Status

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Status

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Status

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for Status

    source§

    fn eq(&self, other: &Status) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Clone for Status

    source§

    fn clone(&self) -> Status

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Status

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Status

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for Status

    source§

    fn eq(&self, other: &Status) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for Status

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for Status

    source§

    impl StructuralPartialEq for Status

    Auto Trait Implementations§

    §

    impl Freeze for Status

    §

    impl RefUnwindSafe for Status

    §

    impl Send for Status

    §

    impl Sync for Status

    §

    impl Unpin for Status

    §

    impl UnwindSafe for Status

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for Status

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for Status

    source§

    impl StructuralPartialEq for Status

    Auto Trait Implementations§

    §

    impl Freeze for Status

    §

    impl RefUnwindSafe for Status

    §

    impl Send for Status

    §

    impl Sync for Status

    §

    impl Unpin for Status

    §

    impl UnwindSafe for Status

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -133,5 +133,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/enum.StorageOrBlock.html b/massa_consensus_exports/block_status/enum.StorageOrBlock.html index b48cf4634d6..436f3825ce2 100644 --- a/massa_consensus_exports/block_status/enum.StorageOrBlock.html +++ b/massa_consensus_exports/block_status/enum.StorageOrBlock.html @@ -1,4 +1,4 @@ -StorageOrBlock in massa_consensus_exports::block_status - Rust
    pub enum StorageOrBlock {
    +StorageOrBlock in massa_consensus_exports::block_status - Rust
    pub enum StorageOrBlock {
         Storage(Storage),
         Block(Box<SecureShareBlock>),
     }
    Expand description

    A structure defining whether we keep a full block with operations in storage @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/block_status/struct.ExportCompiledBlock.html b/massa_consensus_exports/block_status/struct.ExportCompiledBlock.html index cd3272c854b..af8a2d11f89 100644 --- a/massa_consensus_exports/block_status/struct.ExportCompiledBlock.html +++ b/massa_consensus_exports/block_status/struct.ExportCompiledBlock.html @@ -1,4 +1,4 @@ -ExportCompiledBlock in massa_consensus_exports::block_status - Rust
    pub struct ExportCompiledBlock {
    +ExportCompiledBlock in massa_consensus_exports::block_status - Rust
    pub struct ExportCompiledBlock {
         pub header: SecuredHeader,
         pub children: Vec<PreHashSet<BlockId>>,
         pub is_final: bool,
    @@ -10,9 +10,9 @@
     of blocks referencing exported block as a parent,
     in thread i.

    §is_final: bool

    Active or final

    -

    Trait Implementations§

    source§

    impl Clone for ExportCompiledBlock

    source§

    fn clone(&self) -> ExportCompiledBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExportCompiledBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExportCompiledBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ExportCompiledBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExportCompiledBlock

    source§

    fn clone(&self) -> ExportCompiledBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExportCompiledBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExportCompiledBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ExportCompiledBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -127,5 +127,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraph.html b/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraph.html index cde74c735d9..dccd6310a2b 100644 --- a/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraph.html +++ b/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraph.html @@ -1,9 +1,9 @@ -BootstrapableGraph in massa_consensus_exports::bootstrapable_graph - Rust
    pub struct BootstrapableGraph {
    +BootstrapableGraph in massa_consensus_exports::bootstrapable_graph - Rust
    pub struct BootstrapableGraph {
         pub final_blocks: Vec<ExportActiveBlock>,
     }
    Expand description

    Bootstrap graph

    Fields§

    §final_blocks: Vec<ExportActiveBlock>

    list of final blocks

    -

    Trait Implementations§

    source§

    impl Clone for BootstrapableGraph

    source§

    fn clone(&self) -> BootstrapableGraph

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapableGraph

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapableGraph

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BootstrapableGraph> for BootstrapableGraphDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for BootstrapableGraph

    source§

    fn clone(&self) -> BootstrapableGraph

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapableGraph

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapableGraph

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BootstrapableGraph> for BootstrapableGraphDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], BootstrapableGraph, E>

    §Example
    @@ -25,8 +25,8 @@ BootstrapableGraphSerializer::new().serialize(&bootstrapable_graph_deserialized, &mut buffer2).unwrap(); assert_eq!(buffer, buffer2); assert_eq!(rest.len(), 0);
    -
    source§

    impl Serialize for BootstrapableGraph

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BootstrapableGraph> for BootstrapableGraphSerializer

    source§

    impl Serialize for BootstrapableGraph

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BootstrapableGraph> for BootstrapableGraphSerializer

    source§

    fn serialize( &self, value: &BootstrapableGraph, buffer: &mut Vec<u8>, @@ -155,5 +155,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphDeserializer.html b/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphDeserializer.html index 30f78896c34..0ba014d398c 100644 --- a/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphDeserializer.html +++ b/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphDeserializer.html @@ -1,4 +1,4 @@ -BootstrapableGraphDeserializer in massa_consensus_exports::bootstrapable_graph - Rust
    pub struct BootstrapableGraphDeserializer {
    +BootstrapableGraphDeserializer in massa_consensus_exports::bootstrapable_graph - Rust
    pub struct BootstrapableGraphDeserializer {
         block_count_deserializer: U32VarIntDeserializer,
         export_active_block_deserializer: ExportActiveBlockDeserializer,
     }
    Expand description

    Basic deserializer for BootstrapableGraph

    @@ -139,4 +139,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphSerializer.html b/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphSerializer.html index 7845a74ab79..d7a94223e22 100644 --- a/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphSerializer.html +++ b/massa_consensus_exports/bootstrapable_graph/struct.BootstrapableGraphSerializer.html @@ -1,4 +1,4 @@ -BootstrapableGraphSerializer in massa_consensus_exports::bootstrapable_graph - Rust
    pub struct BootstrapableGraphSerializer {
    +BootstrapableGraphSerializer in massa_consensus_exports::bootstrapable_graph - Rust
    pub struct BootstrapableGraphSerializer {
         block_count_serializer: U32VarIntSerializer,
         export_active_block_serializer: ExportActiveBlockSerializer,
     }
    Expand description

    Basic serializer for BootstrapableGraph

    @@ -128,4 +128,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/channels/struct.ConsensusBroadcasts.html b/massa_consensus_exports/channels/struct.ConsensusBroadcasts.html index 6f9f75534c7..1ade4f3b2c9 100644 --- a/massa_consensus_exports/channels/struct.ConsensusBroadcasts.html +++ b/massa_consensus_exports/channels/struct.ConsensusBroadcasts.html @@ -1,4 +1,4 @@ -ConsensusBroadcasts in massa_consensus_exports::channels - Rust
    pub struct ConsensusBroadcasts {
    +ConsensusBroadcasts in massa_consensus_exports::channels - Rust
    pub struct ConsensusBroadcasts {
         pub block_sender: Sender<SecureShareBlock>,
         pub block_header_sender: Sender<SecureShare<BlockHeader, BlockId>>,
         pub filled_block_sender: Sender<FilledBlock>,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/channels/struct.ConsensusChannels.html b/massa_consensus_exports/channels/struct.ConsensusChannels.html index 435f2093d6b..9b4f981dae6 100644 --- a/massa_consensus_exports/channels/struct.ConsensusChannels.html +++ b/massa_consensus_exports/channels/struct.ConsensusChannels.html @@ -1,12 +1,12 @@ -ConsensusChannels in massa_consensus_exports::channels - Rust
    pub struct ConsensusChannels {
    -    pub execution_controller: Box<dyn ExecutionController>,
    +ConsensusChannels in massa_consensus_exports::channels - Rust
    pub struct ConsensusChannels {
    +    pub execution_controller: Box<dyn ExecutionController>,
         pub selector_controller: Box<dyn SelectorController>,
         pub pool_controller: Box<dyn PoolController>,
         pub protocol_controller: Box<dyn ProtocolController>,
         pub controller_event_tx: MassaSender<ConsensusEvent>,
         pub broadcasts: ConsensusBroadcasts,
     }
    Expand description

    Contains links to other modules of the node to be able to interact with them.

    -

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Interface to interact with Execution module

    +

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Interface to interact with Execution module

    §selector_controller: Box<dyn SelectorController>

    Interface to interact with PoS module

    §pool_controller: Box<dyn PoolController>

    Interface to interact with Pool module

    §protocol_controller: Box<dyn ProtocolController>

    Interface to interact with Protocol module

    @@ -127,4 +127,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/error/enum.ConsensusError.html b/massa_consensus_exports/error/enum.ConsensusError.html index bcb3f62d9b0..815255d24a5 100644 --- a/massa_consensus_exports/error/enum.ConsensusError.html +++ b/massa_consensus_exports/error/enum.ConsensusError.html @@ -1,5 +1,5 @@ -ConsensusError in massa_consensus_exports::error - Rust

    Enum massa_consensus_exports::error::ConsensusError

    source ·
    #[non_exhaustive]
    pub enum ConsensusError { -
    Show 17 variants ExecutionError(ExecutionError), +ConsensusError in massa_consensus_exports::error - Rust

    Enum massa_consensus_exports::error::ConsensusError

    source ·
    #[non_exhaustive]
    pub enum ConsensusError { +
    Show 17 variants ExecutionError(ExecutionError), ModelsError(ModelsError), SerializationError(String), GenesisCreationError(String), @@ -9,7 +9,7 @@ FitnessOverflow, InvalidLedgerChange(String), IOError(Error), - SerdeError(Error), + SerdeError(Error), PosCycleUnavailable(String), LedgerError(LedgerError), MassaTimeError(TimeError), @@ -17,7 +17,7 @@ ProtocolError(ProtocolError), InvalidTransition(String),
    }
    Expand description

    Consensus error

    -

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    ExecutionError(ExecutionError)

    execution error: {0}

    +

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    ExecutionError(ExecutionError)

    execution error: {0}

    §

    ModelsError(ModelsError)

    models error: {0}

    §

    SerializationError(String)

    Serialization error: {0}

    §

    GenesisCreationError(String)

    Could not create genesis block {0}

    @@ -27,14 +27,14 @@
    §

    FitnessOverflow

    fitness overflow

    §

    InvalidLedgerChange(String)

    invalid ledger change: {0}

    §

    IOError(Error)

    io error {0}

    -
    §

    SerdeError(Error)

    serde error

    +
    §

    SerdeError(Error)

    serde error

    §

    PosCycleUnavailable(String)

    Proof of stake cycle unavailable {0}

    §

    LedgerError(LedgerError)

    Ledger error {0}

    §

    MassaTimeError(TimeError)

    Massa time error {0}

    §

    TransactionError(String)

    transaction error {0}

    §

    ProtocolError(ProtocolError)

    Protocol error {0}

    §

    InvalidTransition(String)

    Invalid transition {0}

    -

    Trait Implementations§

    source§

    impl Debug for ConsensusError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ConsensusError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ConsensusError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ConsensusError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for ConsensusError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<ExecutionError> for ConsensusError

    source§

    fn from(source: ExecutionError) -> Self

    Converts to this type from the input type.
    source§

    impl From<LedgerError> for ConsensusError

    source§

    fn from(source: LedgerError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ConsensusError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for ConsensusError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ConsensusError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for ConsensusError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ConsensusError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ConsensusError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ConsensusError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for ConsensusError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<ExecutionError> for ConsensusError

    source§

    fn from(source: ExecutionError) -> Self

    Converts to this type from the input type.
    source§

    impl From<LedgerError> for ConsensusError

    source§

    fn from(source: LedgerError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ConsensusError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for ConsensusError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ConsensusError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -147,4 +147,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/error/enum.InternalError.html b/massa_consensus_exports/error/enum.InternalError.html index 6679a6f3b7c..07f66ded275 100644 --- a/massa_consensus_exports/error/enum.InternalError.html +++ b/massa_consensus_exports/error/enum.InternalError.html @@ -1,4 +1,4 @@ -InternalError in massa_consensus_exports::error - Rust

    Enum massa_consensus_exports::error::InternalError

    source ·
    #[non_exhaustive]
    pub enum InternalError { +InternalError in massa_consensus_exports::error - Rust

    Enum massa_consensus_exports::error::InternalError

    source ·
    #[non_exhaustive]
    pub enum InternalError { TransactionError(String), }
    Expand description

    Internal error

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    TransactionError(String)

    transaction error {0}

    @@ -115,4 +115,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/error/enum.LedgerError.html b/massa_consensus_exports/error/enum.LedgerError.html index 9e02de94771..f97c5de60e1 100644 --- a/massa_consensus_exports/error/enum.LedgerError.html +++ b/massa_consensus_exports/error/enum.LedgerError.html @@ -1,18 +1,18 @@ -LedgerError in massa_consensus_exports::error - Rust

    Enum massa_consensus_exports::error::LedgerError

    source ·
    #[non_exhaustive]
    pub enum LedgerError { +LedgerError in massa_consensus_exports::error - Rust

    Enum massa_consensus_exports::error::LedgerError

    source ·
    #[non_exhaustive]
    pub enum LedgerError { AmountOverflowError, LedgerInconsistency(String), ModelsError(ModelsError), TryFromSliceError(TryFromSliceError), IOError(Error), - SerdeError(Error), + SerdeError(Error), }
    Expand description

    Ledger error

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    AmountOverflowError

    amount overflow

    §

    LedgerInconsistency(String)

    ledger inconsistency error {0}

    §

    ModelsError(ModelsError)

    models error: {0}

    §

    TryFromSliceError(TryFromSliceError)

    try from slice error {0}

    §

    IOError(Error)

    io error {0}

    -
    §

    SerdeError(Error)

    serde error

    -

    Trait Implementations§

    source§

    impl Debug for LedgerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for LedgerError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for LedgerError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for LedgerError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for LedgerError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<LedgerError> for ConsensusError

    source§

    fn from(source: LedgerError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for LedgerError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TryFromSliceError> for LedgerError

    source§

    fn from(source: TryFromSliceError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +
    §

    SerdeError(Error)

    serde error

    +

    Trait Implementations§

    source§

    impl Debug for LedgerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for LedgerError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for LedgerError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for LedgerError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for LedgerError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<LedgerError> for ConsensusError

    source§

    fn from(source: LedgerError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for LedgerError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TryFromSliceError> for LedgerError

    source§

    fn from(source: TryFromSliceError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/events/enum.ConsensusEvent.html b/massa_consensus_exports/events/enum.ConsensusEvent.html index bdb11154be3..4c6a26e7c96 100644 --- a/massa_consensus_exports/events/enum.ConsensusEvent.html +++ b/massa_consensus_exports/events/enum.ConsensusEvent.html @@ -1,4 +1,4 @@ -ConsensusEvent in massa_consensus_exports::events - Rust
    pub enum ConsensusEvent {
    +ConsensusEvent in massa_consensus_exports::events - Rust
    pub enum ConsensusEvent {
         NeedSync,
         Stop,
     }
    Expand description

    Events that are emitted by consensus.

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/export_active_block/struct.ExportActiveBlock.html b/massa_consensus_exports/export_active_block/struct.ExportActiveBlock.html index be64a222707..be1d592f24a 100644 --- a/massa_consensus_exports/export_active_block/struct.ExportActiveBlock.html +++ b/massa_consensus_exports/export_active_block/struct.ExportActiveBlock.html @@ -1,4 +1,4 @@ -ExportActiveBlock in massa_consensus_exports::export_active_block - Rust
    pub struct ExportActiveBlock {
    +ExportActiveBlock in massa_consensus_exports::export_active_block - Rust
    pub struct ExportActiveBlock {
         pub block: SecureShareBlock,
         pub parents: Vec<(BlockId, u64)>,
         pub is_final: bool,
    @@ -15,8 +15,8 @@
         self,
         thread_count: u8,
     ) -> Result<(ActiveBlock, StorageOrBlock), ConsensusError>

    consuming conversion from ExportActiveBlock to ActiveBlock

    -

    Trait Implementations§

    source§

    impl Clone for ExportActiveBlock

    source§

    fn clone(&self) -> ExportActiveBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExportActiveBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExportActiveBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<ExportActiveBlock> for ExportActiveBlockDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for ExportActiveBlock

    source§

    fn clone(&self) -> ExportActiveBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExportActiveBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExportActiveBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<ExportActiveBlock> for ExportActiveBlockDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], ExportActiveBlock, E>

    §Example:
    @@ -96,8 +96,8 @@ assert_eq!(export_deserialized.block.id, export_active_block.block.id); assert_eq!(export_deserialized.block.serialized_data, export_active_block.block.serialized_data); assert_eq!(rest.len(), 0);
    -
    source§

    impl Serialize for ExportActiveBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<ExportActiveBlock> for ExportActiveBlockSerializer

    source§

    impl Serialize for ExportActiveBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<ExportActiveBlock> for ExportActiveBlockSerializer

    source§

    fn serialize( &self, value: &ExportActiveBlock, buffer: &mut Vec<u8>, @@ -216,5 +216,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/export_active_block/struct.ExportActiveBlockDeserializer.html b/massa_consensus_exports/export_active_block/struct.ExportActiveBlockDeserializer.html index 719bb2a6d39..f769a60bd54 100644 --- a/massa_consensus_exports/export_active_block/struct.ExportActiveBlockDeserializer.html +++ b/massa_consensus_exports/export_active_block/struct.ExportActiveBlockDeserializer.html @@ -1,4 +1,4 @@ -ExportActiveBlockDeserializer in massa_consensus_exports::export_active_block - Rust
    pub struct ExportActiveBlockDeserializer {
    +ExportActiveBlockDeserializer in massa_consensus_exports::export_active_block - Rust
    pub struct ExportActiveBlockDeserializer {
         sec_share_block_deserializer: SecureShareDeserializer<Block, BlockDeserializer>,
         block_id_deserializer: BlockIdDeserializer,
         period_deserializer: U64VarIntDeserializer,
    @@ -196,4 +196,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/export_active_block/struct.ExportActiveBlockSerializer.html b/massa_consensus_exports/export_active_block/struct.ExportActiveBlockSerializer.html index 6d8883674f3..8c330e585ae 100644 --- a/massa_consensus_exports/export_active_block/struct.ExportActiveBlockSerializer.html +++ b/massa_consensus_exports/export_active_block/struct.ExportActiveBlockSerializer.html @@ -1,4 +1,4 @@ -ExportActiveBlockSerializer in massa_consensus_exports::export_active_block - Rust
    pub struct ExportActiveBlockSerializer {
    +ExportActiveBlockSerializer in massa_consensus_exports::export_active_block - Rust
    pub struct ExportActiveBlockSerializer {
         sec_share_serializer: SecureShareSerializer,
         period_serializer: U64VarIntSerializer,
         block_id_serializer: BlockIdSerializer,
    @@ -119,4 +119,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/settings/struct.ConsensusConfig.html b/massa_consensus_exports/settings/struct.ConsensusConfig.html index 25892ab2d1a..999bd25bd26 100644 --- a/massa_consensus_exports/settings/struct.ConsensusConfig.html +++ b/massa_consensus_exports/settings/struct.ConsensusConfig.html @@ -1,4 +1,4 @@ -ConsensusConfig in massa_consensus_exports::settings - Rust
    pub struct ConsensusConfig {
    Show 25 fields +ConsensusConfig in massa_consensus_exports::settings - Rust
    pub struct ConsensusConfig {
    Show 25 fields pub genesis_timestamp: MassaTime, pub t0: MassaTime, pub thread_count: u8, @@ -49,9 +49,9 @@
    §broadcast_filled_blocks_channel_capacity: usize

    filled blocks channel capacity

    §last_start_period: u64

    last start period

    §chain_id: u64

    chain id

    -

    Trait Implementations§

    source§

    impl Clone for ConsensusConfig

    source§

    fn clone(&self) -> ConsensusConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ConsensusConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ConsensusConfig

    source§

    fn clone(&self) -> ConsensusConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ConsensusConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -166,5 +166,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/struct.ConsensusBroadcasts.html b/massa_consensus_exports/struct.ConsensusBroadcasts.html index e5428d81bc3..4e5378339af 100644 --- a/massa_consensus_exports/struct.ConsensusBroadcasts.html +++ b/massa_consensus_exports/struct.ConsensusBroadcasts.html @@ -1,4 +1,4 @@ -ConsensusBroadcasts in massa_consensus_exports - Rust

    Struct massa_consensus_exports::ConsensusBroadcasts

    source ·
    pub struct ConsensusBroadcasts {
    +ConsensusBroadcasts in massa_consensus_exports - Rust

    Struct massa_consensus_exports::ConsensusBroadcasts

    source ·
    pub struct ConsensusBroadcasts {
         pub block_sender: Sender<SecureShareBlock>,
         pub block_header_sender: Sender<SecureShare<BlockHeader, BlockId>>,
         pub filled_block_sender: Sender<FilledBlock>,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/struct.ConsensusChannels.html b/massa_consensus_exports/struct.ConsensusChannels.html index 1e403866da5..3b925d23091 100644 --- a/massa_consensus_exports/struct.ConsensusChannels.html +++ b/massa_consensus_exports/struct.ConsensusChannels.html @@ -1,12 +1,12 @@ -ConsensusChannels in massa_consensus_exports - Rust

    Struct massa_consensus_exports::ConsensusChannels

    source ·
    pub struct ConsensusChannels {
    -    pub execution_controller: Box<dyn ExecutionController>,
    +ConsensusChannels in massa_consensus_exports - Rust

    Struct massa_consensus_exports::ConsensusChannels

    source ·
    pub struct ConsensusChannels {
    +    pub execution_controller: Box<dyn ExecutionController>,
         pub selector_controller: Box<dyn SelectorController>,
         pub pool_controller: Box<dyn PoolController>,
         pub protocol_controller: Box<dyn ProtocolController>,
         pub controller_event_tx: MassaSender<ConsensusEvent>,
         pub broadcasts: ConsensusBroadcasts,
     }
    Expand description

    Contains links to other modules of the node to be able to interact with them.

    -

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Interface to interact with Execution module

    +

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Interface to interact with Execution module

    §selector_controller: Box<dyn SelectorController>

    Interface to interact with PoS module

    §pool_controller: Box<dyn PoolController>

    Interface to interact with Pool module

    §protocol_controller: Box<dyn ProtocolController>

    Interface to interact with Protocol module

    @@ -127,4 +127,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_exports/struct.ConsensusConfig.html b/massa_consensus_exports/struct.ConsensusConfig.html index d7d17e6ed6d..b2a2312dd1c 100644 --- a/massa_consensus_exports/struct.ConsensusConfig.html +++ b/massa_consensus_exports/struct.ConsensusConfig.html @@ -1,4 +1,4 @@ -ConsensusConfig in massa_consensus_exports - Rust

    Struct massa_consensus_exports::ConsensusConfig

    source ·
    pub struct ConsensusConfig {
    Show 25 fields +ConsensusConfig in massa_consensus_exports - Rust

    Struct massa_consensus_exports::ConsensusConfig

    source ·
    pub struct ConsensusConfig {
    Show 25 fields pub genesis_timestamp: MassaTime, pub t0: MassaTime, pub thread_count: u8, @@ -49,9 +49,9 @@
    §broadcast_filled_blocks_channel_capacity: usize

    filled blocks channel capacity

    §last_start_period: u64

    last start period

    §chain_id: u64

    chain id

    -

    Trait Implementations§

    source§

    impl Clone for ConsensusConfig

    source§

    fn clone(&self) -> ConsensusConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ConsensusConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ConsensusConfig

    source§

    fn clone(&self) -> ConsensusConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ConsensusConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -166,5 +166,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/commands/enum.ConsensusCommand.html b/massa_consensus_worker/commands/enum.ConsensusCommand.html index ac95088961a..bb8f62281ba 100644 --- a/massa_consensus_worker/commands/enum.ConsensusCommand.html +++ b/massa_consensus_worker/commands/enum.ConsensusCommand.html @@ -1,4 +1,4 @@ -ConsensusCommand in massa_consensus_worker::commands - Rust
    pub enum ConsensusCommand {
    +ConsensusCommand in massa_consensus_worker::commands - Rust
    pub enum ConsensusCommand {
         RegisterBlock(BlockId, Slot, Storage, bool),
         RegisterBlockHeader(BlockId, SecureShare<BlockHeader, BlockId>),
         MarkInvalidBlock(BlockId, SecureShare<BlockHeader, BlockId>),
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/controller/struct.ConsensusControllerImpl.html b/massa_consensus_worker/controller/struct.ConsensusControllerImpl.html index ccc5b29f3ad..8b4af1d8037 100644 --- a/massa_consensus_worker/controller/struct.ConsensusControllerImpl.html +++ b/massa_consensus_worker/controller/struct.ConsensusControllerImpl.html @@ -1,4 +1,4 @@ -ConsensusControllerImpl in massa_consensus_worker::controller - Rust
    pub struct ConsensusControllerImpl {
    +ConsensusControllerImpl in massa_consensus_worker::controller - Rust
    pub struct ConsensusControllerImpl {
         command_sender: MassaSender<ConsensusCommand>,
         broadcasts: ConsensusBroadcasts,
         shared_state: Arc<RwLock<ConsensusState>>,
    @@ -204,4 +204,5 @@ 
    §Returns:
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/manager/struct.ConsensusManagerImpl.html b/massa_consensus_worker/manager/struct.ConsensusManagerImpl.html index 474fb25c900..d3f81913a90 100644 --- a/massa_consensus_worker/manager/struct.ConsensusManagerImpl.html +++ b/massa_consensus_worker/manager/struct.ConsensusManagerImpl.html @@ -1,4 +1,4 @@ -ConsensusManagerImpl in massa_consensus_worker::manager - Rust
    pub struct ConsensusManagerImpl {
    +ConsensusManagerImpl in massa_consensus_worker::manager - Rust
    pub struct ConsensusManagerImpl {
         pub consensus_thread: Option<(MassaSender<ConsensusCommand>, JoinHandle<()>)>,
     }

    Fields§

    §consensus_thread: Option<(MassaSender<ConsensusCommand>, JoinHandle<()>)>

    Trait Implementations§

    source§

    impl ConsensusManager for ConsensusManagerImpl

    source§

    fn stop(&mut self)

    Stop the consensus thread Note that we do not take self by value to consume it @@ -114,4 +114,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/state/blocks_state/struct.BlocksState.html b/massa_consensus_worker/state/blocks_state/struct.BlocksState.html index a0b647b8959..12f5e181e3c 100644 --- a/massa_consensus_worker/state/blocks_state/struct.BlocksState.html +++ b/massa_consensus_worker/state/blocks_state/struct.BlocksState.html @@ -1,4 +1,4 @@ -BlocksState in massa_consensus_worker::state::blocks_state - Rust
    pub struct BlocksState {
    +BlocksState in massa_consensus_worker::state::blocks_state - Rust
    pub struct BlocksState {
         block_statuses: PreHashMap<BlockId, BlockStatus>,
         incoming_index: PreHashSet<BlockId>,
         sequence_counter: u64,
    @@ -157,4 +157,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/state/process/struct.BlockInfos.html b/massa_consensus_worker/state/process/struct.BlockInfos.html index e76f2a016de..7f5842c7c51 100644 --- a/massa_consensus_worker/state/process/struct.BlockInfos.html +++ b/massa_consensus_worker/state/process/struct.BlockInfos.html @@ -1,4 +1,4 @@ -BlockInfos in massa_consensus_worker::state::process - Rust

    Struct massa_consensus_worker::state::process::BlockInfos

    source ·
    pub(crate) struct BlockInfos {
    +BlockInfos in massa_consensus_worker::state::process - Rust

    Struct massa_consensus_worker::state::process::BlockInfos

    source ·
    pub(crate) struct BlockInfos {
         pub creator: PublicKey,
         pub slot: Slot,
         pub parents_hash_period: Vec<(BlockId, u64)>,
    @@ -125,4 +125,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/state/struct.ConsensusState.html b/massa_consensus_worker/state/struct.ConsensusState.html index ae23fe9a8f4..23a17f12960 100644 --- a/massa_consensus_worker/state/struct.ConsensusState.html +++ b/massa_consensus_worker/state/struct.ConsensusState.html @@ -1,4 +1,4 @@ -ConsensusState in massa_consensus_worker::state - Rust

    Struct massa_consensus_worker::state::ConsensusState

    source ·
    pub struct ConsensusState {
    Show 25 fields +ConsensusState in massa_consensus_worker::state - Rust

    Struct massa_consensus_worker::state::ConsensusState

    source ·
    pub struct ConsensusState {
    Show 25 fields pub config: ConsensusConfig, pub channels: ConsensusChannels, pub storage: Storage, @@ -284,7 +284,7 @@
    §Arguments:< slot_end: Option<Slot>, ) -> Result<BlockGraphExport, ConsensusError>
    source

    pub fn get_all_final_blocks( &self, -) -> HashMap<BlockId, (Slot, ExecutionBlockMetadata)>

    Gets all stored final blocks, not only the still-useful ones +) -> HashMap<BlockId, (Slot, ExecutionBlockMetadata)>

    Gets all stored final blocks, not only the still-useful ones This is used when initializing Execution from Consensus. Since the Execution bootstrap snapshot is older than the Consensus snapshot, we might need to signal older final blocks for Execution to catch up.

    @@ -414,4 +414,5 @@
    §Argument
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/state/verifications/enum.BlockCheckOutcome.html b/massa_consensus_worker/state/verifications/enum.BlockCheckOutcome.html index a62561c81d0..99d28cb9397 100644 --- a/massa_consensus_worker/state/verifications/enum.BlockCheckOutcome.html +++ b/massa_consensus_worker/state/verifications/enum.BlockCheckOutcome.html @@ -1,4 +1,4 @@ -BlockCheckOutcome in massa_consensus_worker::state::verifications - Rust
    pub(crate) enum BlockCheckOutcome {
    +BlockCheckOutcome in massa_consensus_worker::state::verifications - Rust
    pub(crate) enum BlockCheckOutcome {
         BlockInfos(BlockInfos),
         BlockStatus(BlockStatus),
     }

    Variants§

    §

    BlockInfos(BlockInfos)

    §

    BlockStatus(BlockStatus)

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -112,4 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/state/verifications/enum.EndorsementsCheckOutcome.html b/massa_consensus_worker/state/verifications/enum.EndorsementsCheckOutcome.html index e780df7b0b0..2cc32b99efa 100644 --- a/massa_consensus_worker/state/verifications/enum.EndorsementsCheckOutcome.html +++ b/massa_consensus_worker/state/verifications/enum.EndorsementsCheckOutcome.html @@ -1,4 +1,4 @@ -EndorsementsCheckOutcome in massa_consensus_worker::state::verifications - Rust
    pub enum EndorsementsCheckOutcome {
    +EndorsementsCheckOutcome in massa_consensus_worker::state::verifications - Rust
    pub enum EndorsementsCheckOutcome {
         Proceed,
         Discard(DiscardReason),
         WaitForSlot,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/state/verifications/enum.HeaderCheckOutcome.html b/massa_consensus_worker/state/verifications/enum.HeaderCheckOutcome.html index c112603c7e6..c6745cdeac3 100644 --- a/massa_consensus_worker/state/verifications/enum.HeaderCheckOutcome.html +++ b/massa_consensus_worker/state/verifications/enum.HeaderCheckOutcome.html @@ -1,4 +1,4 @@ -HeaderCheckOutcome in massa_consensus_worker::state::verifications - Rust
    pub enum HeaderCheckOutcome {
    +HeaderCheckOutcome in massa_consensus_worker::state::verifications - Rust
    pub enum HeaderCheckOutcome {
         Proceed {
             parents_hash_period: Vec<(BlockId, u64)>,
             incompatibilities: PreHashSet<BlockId>,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/worker/main_loop/enum.WaitingStatus.html b/massa_consensus_worker/worker/main_loop/enum.WaitingStatus.html index ee6764eb675..1891141216b 100644 --- a/massa_consensus_worker/worker/main_loop/enum.WaitingStatus.html +++ b/massa_consensus_worker/worker/main_loop/enum.WaitingStatus.html @@ -1,4 +1,4 @@ -WaitingStatus in massa_consensus_worker::worker::main_loop - Rust
    enum WaitingStatus {
    +WaitingStatus in massa_consensus_worker::worker::main_loop - Rust
    enum WaitingStatus {
         Ended,
         Interrupted,
         Disconnected,
    @@ -113,4 +113,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_consensus_worker/worker/struct.ConsensusWorker.html b/massa_consensus_worker/worker/struct.ConsensusWorker.html index 4666a68108f..c0e181f1d74 100644 --- a/massa_consensus_worker/worker/struct.ConsensusWorker.html +++ b/massa_consensus_worker/worker/struct.ConsensusWorker.html @@ -1,4 +1,4 @@ -ConsensusWorker in massa_consensus_worker::worker - Rust

    Struct massa_consensus_worker::worker::ConsensusWorker

    source ·
    pub struct ConsensusWorker {
    +ConsensusWorker in massa_consensus_worker::worker - Rust

    Struct massa_consensus_worker::worker::ConsensusWorker

    source ·
    pub struct ConsensusWorker {
         command_receiver: MassaReceiver<ConsensusCommand>,
         config: ConsensusConfig,
         shared_state: Arc<RwLock<ConsensusState>>,
    @@ -162,4 +162,5 @@ 
    §Return:
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_db_worker/index.html b/massa_db_worker/index.html index 4b1aa4f7b44..750b7a20199 100644 --- a/massa_db_worker/index.html +++ b/massa_db_worker/index.html @@ -31,15 +31,15 @@

    §DB hash

  • if we want to delete item a: 1000 ^ 0011 == 1011 (== item b)
  • if we want to delete item b: 1000 ^ 1011 == 0011 (== item a)
  • -

    Note that this does not provides “Proof of present” nor “Proof of Absence” +

    Note that this does not provide “Proof of present” nor “Proof of Absence” (operations avail with Merkle trees)

    For more details here: https://github.com/massalabs/massa/discussions/3852#discussioncomment-6188158

    This hash is often referred as ‘final state hash’.

    §Caches

    A cache of db changes is kept in memory allowing to easily stream it -(by streaming, we means: sending it to another massa node (aka bootstrap)) +(by streaming, we mean: sending it to another massa node (aka bootstrap)) There is 2 separate caches: one for ‘state’ and one for ‘versioning’

    -

    These caches is stored as a key, value: slot -> insertion_data|deletion_data.

    +

    These caches are stored as a key, value: slot -> insertion_data|deletion_data.

    §Streaming steps

    1- Streaming always starts by reading data from disk (from rocksdb). Data is send by chunk. 2- As this process can be slow (e.g. db size is high, network is slow), updates can happen simultaneously diff --git a/massa_deferred_calls/call/struct.DeferredCall.html b/massa_deferred_calls/call/struct.DeferredCall.html index eaae78d6c76..a3295b2ea07 100644 --- a/massa_deferred_calls/call/struct.DeferredCall.html +++ b/massa_deferred_calls/call/struct.DeferredCall.html @@ -26,14 +26,14 @@ params_size: u64, max_function_name_length: u16, ) -> Amount

    Get the storage cost for a call

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCall

    source§

    fn clone(&self) -> DeferredCall

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCall

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCall

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCall> for DeferredCallDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DeferredCall

    source§

    fn clone(&self) -> DeferredCall

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCall

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCall

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCall> for DeferredCallDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], DeferredCall, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<DeferredCall> for DeferredCallInfoEntry

    source§

    fn from(call: DeferredCall) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for DeferredCall

    source§

    fn eq(&self, other: &DeferredCall) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for DeferredCall

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCall> for DeferredCallSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for DeferredCall

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCall> for DeferredCallSerializer

    source§

    fn serialize( &self, value: &DeferredCall, buffer: &mut Vec<u8>, @@ -141,5 +141,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_deferred_calls/config/struct.DeferredCallsConfig.html b/massa_deferred_calls/config/struct.DeferredCallsConfig.html index 5b0d698a4e7..9f693f09d44 100644 --- a/massa_deferred_calls/config/struct.DeferredCallsConfig.html +++ b/massa_deferred_calls/config/struct.DeferredCallsConfig.html @@ -22,8 +22,8 @@ §global_overbooking_penalty: Amount

    global overbooking penalty

    §slot_overbooking_penalty: Amount

    slot overbooking penalty

    §max_parameter_size: u32

    max parameter size

    -
    §max_pool_changes: u64§max_gas: u64§ledger_cost_per_byte: Amount

    Trait Implementations§

    source§

    impl Clone for DeferredCallsConfig

    source§

    fn clone(&self) -> DeferredCallsConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCallsConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCallsConfig

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCallsConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for DeferredCallsConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +
    §max_pool_changes: u64§max_gas: u64§ledger_cost_per_byte: Amount

    Trait Implementations§

    source§

    impl Clone for DeferredCallsConfig

    source§

    fn clone(&self) -> DeferredCallsConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCallsConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCallsConfig

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCallsConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for DeferredCallsConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -122,5 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_deferred_calls/registry_changes/struct.DeferredCallRegistryChanges.html b/massa_deferred_calls/registry_changes/struct.DeferredCallRegistryChanges.html index c322b0fd6ca..0840f74eca2 100644 --- a/massa_deferred_calls/registry_changes/struct.DeferredCallRegistryChanges.html +++ b/massa_deferred_calls/registry_changes/struct.DeferredCallRegistryChanges.html @@ -6,12 +6,12 @@ &self, target_slot: &Slot, id: &DeferredCallId, -) -> Option<&DeferredCall>
    source

    pub fn get_effective_slot_gas(&self, target_slot: &Slot) -> Option<u64>

    source

    pub fn set_effective_slot_gas(&mut self, target_slot: Slot, gas: u64)

    source

    pub fn set_slot_base_fee(&mut self, target_slot: Slot, base_fee: Amount)

    source

    pub fn get_slot_base_fee(&self, target_slot: &Slot) -> Option<Amount>

    source

    pub fn set_effective_total_gas(&mut self, gas: u128)

    source

    pub fn get_effective_total_gas(&self) -> Option<u128>

    source

    pub fn set_total_calls_registered(&mut self, total_calls_registered: u64)

    source

    pub fn get_total_calls_registered(&self) -> Option<u64>

    Trait Implementations§

    source§

    impl Clone for DeferredCallRegistryChanges

    source§

    fn clone(&self) -> DeferredCallRegistryChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCallRegistryChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCallRegistryChanges

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCallRegistryChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCallRegistryChanges> for DeferredRegistryChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> Option<&DeferredCall>

    source

    pub fn get_effective_slot_gas(&self, target_slot: &Slot) -> Option<u64>

    source

    pub fn set_effective_slot_gas(&mut self, target_slot: Slot, gas: u64)

    source

    pub fn set_slot_base_fee(&mut self, target_slot: Slot, base_fee: Amount)

    source

    pub fn get_slot_base_fee(&self, target_slot: &Slot) -> Option<Amount>

    source

    pub fn set_effective_total_gas(&mut self, gas: u128)

    source

    pub fn get_effective_total_gas(&self) -> Option<u128>

    source

    pub fn set_total_calls_registered(&mut self, total_calls_registered: u64)

    source

    pub fn get_total_calls_registered(&self) -> Option<u64>

    Trait Implementations§

    source§

    impl Clone for DeferredCallRegistryChanges

    source§

    fn clone(&self) -> DeferredCallRegistryChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCallRegistryChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCallRegistryChanges

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCallRegistryChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCallRegistryChanges> for DeferredRegistryChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DeferredCallRegistryChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredCallRegistryChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCallRegistryChanges> for DeferredRegistryChangesSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], DeferredCallRegistryChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredCallRegistryChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCallRegistryChanges> for DeferredRegistryChangesSerializer

    source§

    fn serialize( &self, value: &DeferredCallRegistryChanges, buffer: &mut Vec<u8>, @@ -113,5 +113,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_deferred_calls/slot_changes/struct.DeferredRegistrySlotChanges.html b/massa_deferred_calls/slot_changes/struct.DeferredRegistrySlotChanges.html index 521ca55738e..4ab35b08178 100644 --- a/massa_deferred_calls/slot_changes/struct.DeferredRegistrySlotChanges.html +++ b/massa_deferred_calls/slot_changes/struct.DeferredRegistrySlotChanges.html @@ -3,12 +3,12 @@ pub effective_slot_gas: DeferredRegistryGasChange<u64>, pub base_fee: DeferredRegistryBaseFeeChange, }

    Fields§

    §calls: BTreeMap<DeferredCallId, DeferredRegistryCallChange>§effective_slot_gas: DeferredRegistryGasChange<u64>§base_fee: DeferredRegistryBaseFeeChange

    Implementations§

    source§

    impl DeferredRegistrySlotChanges

    source

    pub fn calls_len(&self) -> usize

    source

    pub fn delete_call(&mut self, id: &DeferredCallId)

    add Delete changes will delete the call from the db registry when the slot is finalized

    -
    source

    pub fn set_call(&mut self, id: DeferredCallId, call: DeferredCall)

    source

    pub fn get_call(&self, id: &DeferredCallId) -> Option<&DeferredCall>

    source

    pub fn set_effective_slot_gas(&mut self, gas: u64)

    source

    pub fn get_effective_slot_gas(&self) -> Option<u64>

    source

    pub fn get_base_fee(&self) -> Option<Amount>

    source

    pub fn set_base_fee(&mut self, base_fee: Amount)

    Trait Implementations§

    source§

    impl Clone for DeferredRegistrySlotChanges

    source§

    fn clone(&self) -> DeferredRegistrySlotChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredRegistrySlotChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredRegistrySlotChanges

    source§

    fn default() -> DeferredRegistrySlotChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredRegistrySlotChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredRegistrySlotChanges> for DeferredRegistrySlotChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source

    pub fn set_call(&mut self, id: DeferredCallId, call: DeferredCall)

    source

    pub fn get_call(&self, id: &DeferredCallId) -> Option<&DeferredCall>

    source

    pub fn set_effective_slot_gas(&mut self, gas: u64)

    source

    pub fn get_effective_slot_gas(&self) -> Option<u64>

    source

    pub fn get_base_fee(&self) -> Option<Amount>

    source

    pub fn set_base_fee(&mut self, base_fee: Amount)

    Trait Implementations§

    source§

    impl Clone for DeferredRegistrySlotChanges

    source§

    fn clone(&self) -> DeferredRegistrySlotChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredRegistrySlotChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredRegistrySlotChanges

    source§

    fn default() -> DeferredRegistrySlotChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredRegistrySlotChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredRegistrySlotChanges> for DeferredRegistrySlotChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DeferredRegistrySlotChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredRegistrySlotChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredRegistrySlotChanges> for DeferredRegistrySlotChangesSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], DeferredRegistrySlotChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredRegistrySlotChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredRegistrySlotChanges> for DeferredRegistrySlotChangesSerializer

    source§

    fn serialize( &self, value: &DeferredRegistrySlotChanges, buffer: &mut Vec<u8>, @@ -110,5 +110,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_deferred_calls/struct.DeferredCall.html b/massa_deferred_calls/struct.DeferredCall.html index ad927ea752d..a0f68001344 100644 --- a/massa_deferred_calls/struct.DeferredCall.html +++ b/massa_deferred_calls/struct.DeferredCall.html @@ -26,14 +26,14 @@ params_size: u64, max_function_name_length: u16, ) -> Amount

    Get the storage cost for a call

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCall

    source§

    fn clone(&self) -> DeferredCall

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCall

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCall

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCall> for DeferredCallDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DeferredCall

    source§

    fn clone(&self) -> DeferredCall

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCall

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCall

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCall> for DeferredCallDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], DeferredCall, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<DeferredCall> for DeferredCallInfoEntry

    source§

    fn from(call: DeferredCall) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for DeferredCall

    source§

    fn eq(&self, other: &DeferredCall) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for DeferredCall

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCall> for DeferredCallSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for DeferredCall

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCall> for DeferredCallSerializer

    source§

    fn serialize( &self, value: &DeferredCall, buffer: &mut Vec<u8>, @@ -141,5 +141,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_event_cache/all.html b/massa_event_cache/all.html new file mode 100644 index 00000000000..8fc66b1d4b0 --- /dev/null +++ b/massa_event_cache/all.html @@ -0,0 +1 @@ +List of all items in this crate
    \ No newline at end of file diff --git a/massa_event_cache/config/index.html b/massa_event_cache/config/index.html new file mode 100644 index 00000000000..9abf71fc2f1 --- /dev/null +++ b/massa_event_cache/config/index.html @@ -0,0 +1 @@ +massa_event_cache::config - Rust

    Module massa_event_cache::config

    source ·

    Structs§

    \ No newline at end of file diff --git a/massa_event_cache/config/sidebar-items.js b/massa_event_cache/config/sidebar-items.js new file mode 100644 index 00000000000..9629ca95bfe --- /dev/null +++ b/massa_event_cache/config/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"struct":["EventCacheConfig"]}; \ No newline at end of file diff --git a/massa_event_cache/config/struct.EventCacheConfig.html b/massa_event_cache/config/struct.EventCacheConfig.html new file mode 100644 index 00000000000..5b20b68ef66 --- /dev/null +++ b/massa_event_cache/config/struct.EventCacheConfig.html @@ -0,0 +1,115 @@ +EventCacheConfig in massa_event_cache::config - Rust

    Struct massa_event_cache::config::EventCacheConfig

    source ·
    pub struct EventCacheConfig {
    +    pub event_cache_path: PathBuf,
    +    pub max_event_cache_length: usize,
    +    pub snip_amount: usize,
    +    pub max_event_data_length: u64,
    +    pub thread_count: u8,
    +    pub max_call_stack_length: u16,
    +    pub max_events_per_operation: u64,
    +    pub max_operations_per_block: u64,
    +    pub max_events_per_query: usize,
    +}

    Fields§

    §event_cache_path: PathBuf

    Path to the hard drive cache storage

    +
    §max_event_cache_length: usize

    Maximum number of entries we want to keep in the event cache

    +
    §snip_amount: usize

    Amount of entries removed when event_cache_size is reached

    +
    §max_event_data_length: u64

    Maximum length of an event data (aka event message)

    +
    §thread_count: u8

    Thread count

    +
    §max_call_stack_length: u16

    Call stack max length

    +
    §max_events_per_operation: u64

    Maximum number of events per operation

    +
    §max_operations_per_block: u64

    Maximum number of operations per block

    +
    §max_events_per_query: usize

    Maximum events returned in a query

    +

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/controller/index.html b/massa_event_cache/controller/index.html new file mode 100644 index 00000000000..6ba2a30a09c --- /dev/null +++ b/massa_event_cache/controller/index.html @@ -0,0 +1 @@ +massa_event_cache::controller - Rust

    Module massa_event_cache::controller

    source ·

    Structs§

    Traits§

    \ No newline at end of file diff --git a/massa_event_cache/controller/sidebar-items.js b/massa_event_cache/controller/sidebar-items.js new file mode 100644 index 00000000000..03bb526b8bc --- /dev/null +++ b/massa_event_cache/controller/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"struct":["EventCacheControllerImpl","EventCacheWriterInputData"],"trait":["EventCacheController"]}; \ No newline at end of file diff --git a/massa_event_cache/controller/struct.EventCacheControllerImpl.html b/massa_event_cache/controller/struct.EventCacheControllerImpl.html new file mode 100644 index 00000000000..452404ec6da --- /dev/null +++ b/massa_event_cache/controller/struct.EventCacheControllerImpl.html @@ -0,0 +1,109 @@ +EventCacheControllerImpl in massa_event_cache::controller - Rust
    pub struct EventCacheControllerImpl {
    +    pub(crate) input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +    pub(crate) cache: Arc<RwLock<EventCache>>,
    +}
    Expand description

    implementation of the event cache controller

    +

    Fields§

    §input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>

    input data to process in the VM loop +with a wake-up condition variable that needs to be triggered when the data changes

    +
    §cache: Arc<RwLock<EventCache>>

    Event cache

    +

    Trait Implementations§

    source§

    impl Clone for EventCacheControllerImpl

    source§

    fn clone(&self) -> EventCacheControllerImpl

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl EventCacheController for EventCacheControllerImpl

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where + T: Clone,

    source§

    default unsafe fn clone_to_uninit(&self, dst: *mut T)

    🔬This is a nightly-only experimental API. (clone_to_uninit)
    Performs copy-assignment from self to dst. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> FromRef<T> for T
    where + T: Clone,

    §

    fn from_ref(input: &T) -> T

    Converts to this type from a reference to the input type.
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    source§

    impl<T> ToOwned for T
    where + T: Clone,

    §

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/controller/struct.EventCacheWriterInputData.html b/massa_event_cache/controller/struct.EventCacheWriterInputData.html new file mode 100644 index 00000000000..10e6f2ae81a --- /dev/null +++ b/massa_event_cache/controller/struct.EventCacheWriterInputData.html @@ -0,0 +1,101 @@ +EventCacheWriterInputData in massa_event_cache::controller - Rust
    pub(crate) struct EventCacheWriterInputData {
    +    pub stop: bool,
    +    pub(crate) events: VecDeque<SCOutputEvent>,
    +}
    Expand description

    structure used to communicate with controller

    +

    Fields§

    §stop: bool

    set stop to true to stop the thread

    +
    §events: VecDeque<SCOutputEvent>

    Implementations§

    Trait Implementations§

    source§

    impl Debug for EventCacheWriterInputData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventCacheWriterInputData

    source§

    fn default() -> EventCacheWriterInputData

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/controller/trait.EventCacheController.html b/massa_event_cache/controller/trait.EventCacheController.html new file mode 100644 index 00000000000..12e1200d5ed --- /dev/null +++ b/massa_event_cache/controller/trait.EventCacheController.html @@ -0,0 +1,12 @@ +EventCacheController in massa_event_cache::controller - Rust
    pub trait EventCacheController: Send + Sync {
    +    // Required methods
    +    fn save_events(&self, events: VecDeque<SCOutputEvent>);
    +    fn get_filtered_sc_output_events(
    +        &self,
    +        filter: &EventFilter,
    +    ) -> Vec<SCOutputEvent>;
    +}
    Expand description

    interface that communicates with the worker thread

    +

    Required Methods§

    Implementors§

    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.COUNTER_ERROR.html b/massa_event_cache/event_cache/constant.COUNTER_ERROR.html new file mode 100644 index 00000000000..696ff158dea --- /dev/null +++ b/massa_event_cache/event_cache/constant.COUNTER_ERROR.html @@ -0,0 +1 @@ +COUNTER_ERROR in massa_event_cache::event_cache - Rust

    Constant massa_event_cache::event_cache::COUNTER_ERROR

    source ·
    const COUNTER_ERROR: &str = "critical: cannot get counter";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.COUNTER_KEY_CREATION_ERROR.html b/massa_event_cache/event_cache/constant.COUNTER_KEY_CREATION_ERROR.html new file mode 100644 index 00000000000..facf6411e04 --- /dev/null +++ b/massa_event_cache/event_cache/constant.COUNTER_KEY_CREATION_ERROR.html @@ -0,0 +1 @@ +COUNTER_KEY_CREATION_ERROR in massa_event_cache::event_cache - Rust
    const COUNTER_KEY_CREATION_ERROR: &str = "critical: cannot create counter key";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.CRUD_ERROR.html b/massa_event_cache/event_cache/constant.CRUD_ERROR.html new file mode 100644 index 00000000000..d94f1d36abd --- /dev/null +++ b/massa_event_cache/event_cache/constant.CRUD_ERROR.html @@ -0,0 +1 @@ +CRUD_ERROR in massa_event_cache::event_cache - Rust

    Constant massa_event_cache::event_cache::CRUD_ERROR

    source ·
    const CRUD_ERROR: &str = "critical: rocksdb crud operation failed";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.DESTROY_ERROR.html b/massa_event_cache/event_cache/constant.DESTROY_ERROR.html new file mode 100644 index 00000000000..3095daccc93 --- /dev/null +++ b/massa_event_cache/event_cache/constant.DESTROY_ERROR.html @@ -0,0 +1 @@ +DESTROY_ERROR in massa_event_cache::event_cache - Rust

    Constant massa_event_cache::event_cache::DESTROY_ERROR

    source ·
    const DESTROY_ERROR: &str = "critical: rocksdb delete operation failed";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.EVENT_DESER_ERROR.html b/massa_event_cache/event_cache/constant.EVENT_DESER_ERROR.html new file mode 100644 index 00000000000..e538263ff3e --- /dev/null +++ b/massa_event_cache/event_cache/constant.EVENT_DESER_ERROR.html @@ -0,0 +1 @@ +EVENT_DESER_ERROR in massa_event_cache::event_cache - Rust

    Constant massa_event_cache::event_cache::EVENT_DESER_ERROR

    source ·
    const EVENT_DESER_ERROR: &str = "critical: event deserialization failed";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.OPEN_ERROR.html b/massa_event_cache/event_cache/constant.OPEN_ERROR.html new file mode 100644 index 00000000000..99a3ed1c67b --- /dev/null +++ b/massa_event_cache/event_cache/constant.OPEN_ERROR.html @@ -0,0 +1 @@ +OPEN_ERROR in massa_event_cache::event_cache - Rust

    Constant massa_event_cache::event_cache::OPEN_ERROR

    source ·
    const OPEN_ERROR: &str = "critical: rocksdb open operation failed";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/constant.OPERATION_ID_DESER_ERROR.html b/massa_event_cache/event_cache/constant.OPERATION_ID_DESER_ERROR.html new file mode 100644 index 00000000000..2d99aa28a71 --- /dev/null +++ b/massa_event_cache/event_cache/constant.OPERATION_ID_DESER_ERROR.html @@ -0,0 +1 @@ +OPERATION_ID_DESER_ERROR in massa_event_cache::event_cache - Rust
    const OPERATION_ID_DESER_ERROR: &str = "critical: deserialization failed for op id in rocksdb";
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/enum.FilterItem.html b/massa_event_cache/event_cache/enum.FilterItem.html new file mode 100644 index 00000000000..0549f30450c --- /dev/null +++ b/massa_event_cache/event_cache/enum.FilterItem.html @@ -0,0 +1,105 @@ +FilterItem in massa_event_cache::event_cache - Rust

    Enum massa_event_cache::event_cache::FilterItem

    source ·
    enum FilterItem {
    +    SlotStart(Slot),
    +    SlotStartEnd(Slot, Slot),
    +    SlotEnd(Slot),
    +    EmitterAddress(Address),
    +    OriginalCallerAddress(Address),
    +    OriginalOperationId(OperationId),
    +    IsError(bool),
    +}
    Expand description

    A filter parameter - used to decompose an EventFilter in multiple filters

    +

    Variants§

    §

    SlotStart(Slot)

    §

    SlotStartEnd(Slot, Slot)

    §

    SlotEnd(Slot)

    §

    EmitterAddress(Address)

    §

    OriginalCallerAddress(Address)

    §

    OriginalOperationId(OperationId)

    §

    IsError(bool)

    Trait Implementations§

    source§

    impl Debug for FilterItem

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/enum.KeyBuilderType.html b/massa_event_cache/event_cache/enum.KeyBuilderType.html new file mode 100644 index 00000000000..a932517cc84 --- /dev/null +++ b/massa_event_cache/event_cache/enum.KeyBuilderType.html @@ -0,0 +1,104 @@ +KeyBuilderType in massa_event_cache::event_cache - Rust

    Enum massa_event_cache::event_cache::KeyBuilderType

    source ·
    enum KeyBuilderType<'a> {
    +    Slot(&'a Slot),
    +    Event(&'a Slot, u64),
    +    Address(&'a Address),
    +    OperationId(&'a OperationId),
    +    Bool(bool),
    +    None,
    +}
    Expand description

    Key for this type of data that we want to get

    +

    Variants§

    §

    Slot(&'a Slot)

    §

    Event(&'a Slot, u64)

    §

    Address(&'a Address)

    §

    OperationId(&'a OperationId)

    §

    Bool(bool)

    §

    None

    Auto Trait Implementations§

    §

    impl<'a> Freeze for KeyBuilderType<'a>

    §

    impl<'a> RefUnwindSafe for KeyBuilderType<'a>

    §

    impl<'a> Send for KeyBuilderType<'a>

    §

    impl<'a> Sync for KeyBuilderType<'a>

    §

    impl<'a> Unpin for KeyBuilderType<'a>

    §

    impl<'a> UnwindSafe for KeyBuilderType<'a>

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/enum.KeyIndent.html b/massa_event_cache/event_cache/enum.KeyIndent.html new file mode 100644 index 00000000000..727ecf33039 --- /dev/null +++ b/massa_event_cache/event_cache/enum.KeyIndent.html @@ -0,0 +1,124 @@ +KeyIndent in massa_event_cache::event_cache - Rust

    Enum massa_event_cache::event_cache::KeyIndent

    source ·
    #[repr(u8)]
    enum KeyIndent { + Counter = 0, + Event = 1, + EmitterAddress = 2, + OriginalCallerAddress = 3, + OriginalOperationId = 4, + IsError = 5, + IsFinal = 6, +}
    Expand description

    Prefix u8 used to identify rocksdb keys

    +

    Variants§

    §

    Counter = 0

    §

    Event = 1

    §

    EmitterAddress = 2

    §

    OriginalCallerAddress = 3

    §

    OriginalOperationId = 4

    §

    IsError = 5

    §

    IsFinal = 6

    Trait Implementations§

    source§

    impl Clone for KeyIndent

    source§

    fn clone(&self) -> KeyIndent

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for KeyIndent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<KeyIndent> for u8

    source§

    fn from(enum_value: KeyIndent) -> Self

    Converts to this type from the input type.
    source§

    impl Ord for KeyIndent

    source§

    fn cmp(&self, other: &KeyIndent) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where + Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where + Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where + Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    source§

    impl PartialEq for KeyIndent

    source§

    fn eq(&self, other: &KeyIndent) -> bool

    This method tests for self and other values to be equal, and is used +by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always +sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for KeyIndent

    source§

    fn partial_cmp(&self, other: &KeyIndent) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= +operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= +operator. Read more
    source§

    impl Copy for KeyIndent

    source§

    impl Eq for KeyIndent

    source§

    impl StructuralPartialEq for KeyIndent

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where + T: Copy,

    source§

    unsafe fn clone_to_uninit(&self, dst: *mut T)

    🔬This is a nightly-only experimental API. (clone_to_uninit)
    Performs copy-assignment from self to dst. Read more
    source§

    impl<T> CloneToUninit for T
    where + T: Clone,

    source§

    default unsafe fn clone_to_uninit(&self, dst: *mut T)

    🔬This is a nightly-only experimental API. (clone_to_uninit)
    Performs copy-assignment from self to dst. Read more
    §

    impl<Q, K> Comparable<K> for Q
    where + Q: Ord + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn compare(&self, key: &K) -> Ordering

    Compare self to key and return their ordering.
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn equivalent(&self, key: &K) -> bool

    Checks if this value is equivalent to the given key. Read more
    §

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn equivalent(&self, key: &K) -> bool

    Compare self to key and return true if they are equal.
    source§

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    source§

    fn equivalent(&self, key: &K) -> bool

    Compare self to key and return true if they are equal.
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> FromRef<T> for T
    where + T: Clone,

    §

    fn from_ref(input: &T) -> T

    Converts to this type from a reference to the input type.
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    source§

    impl<T> ToOwned for T
    where + T: Clone,

    §

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/enum.KeyKind.html b/massa_event_cache/event_cache/enum.KeyKind.html new file mode 100644 index 00000000000..f7b7f6fda92 --- /dev/null +++ b/massa_event_cache/event_cache/enum.KeyKind.html @@ -0,0 +1,100 @@ +KeyKind in massa_event_cache::event_cache - Rust

    Enum massa_event_cache::event_cache::KeyKind

    source ·
    enum KeyKind {
    +    Regular,
    +    Prefix,
    +    Counter,
    +}

    Variants§

    §

    Regular

    §

    Prefix

    §

    Counter

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/fn.from_event_filter.html b/massa_event_cache/event_cache/fn.from_event_filter.html new file mode 100644 index 00000000000..9d65bfe2fcc --- /dev/null +++ b/massa_event_cache/event_cache/fn.from_event_filter.html @@ -0,0 +1,2 @@ +from_event_filter in massa_event_cache::event_cache - Rust

    Function massa_event_cache::event_cache::from_event_filter

    source ·
    fn from_event_filter(event_filter: &EventFilter) -> Vec<(KeyIndent, FilterItem)>
    Expand description

    Convert a EventFilter into a list of (KeyIndent, FilterItem)

    +
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/index.html b/massa_event_cache/event_cache/index.html new file mode 100644 index 00000000000..228be6b4ff5 --- /dev/null +++ b/massa_event_cache/event_cache/index.html @@ -0,0 +1 @@ +massa_event_cache::event_cache - Rust

    Module massa_event_cache::event_cache

    source ·

    Structs§

    Enums§

    • FilterItem 🔒
      A filter parameter - used to decompose an EventFilter in multiple filters
    • Key for this type of data that we want to get
    • KeyIndent 🔒
      Prefix u8 used to identify rocksdb keys
    • KeyKind 🔒

    Constants§

    Functions§

    \ No newline at end of file diff --git a/massa_event_cache/event_cache/sidebar-items.js b/massa_event_cache/event_cache/sidebar-items.js new file mode 100644 index 00000000000..f5bbdeb660f --- /dev/null +++ b/massa_event_cache/event_cache/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"constant":["COUNTER_ERROR","COUNTER_KEY_CREATION_ERROR","CRUD_ERROR","DESTROY_ERROR","EVENT_DESER_ERROR","OPEN_ERROR","OPERATION_ID_DESER_ERROR"],"enum":["FilterItem","KeyBuilderType","KeyIndent","KeyKind"],"fn":["from_event_filter"],"struct":["DbKeyBuilder","EventCache"]}; \ No newline at end of file diff --git a/massa_event_cache/event_cache/struct.DbKeyBuilder.html b/massa_event_cache/event_cache/struct.DbKeyBuilder.html new file mode 100644 index 00000000000..8868d07ab2b --- /dev/null +++ b/massa_event_cache/event_cache/struct.DbKeyBuilder.html @@ -0,0 +1,126 @@ +DbKeyBuilder in massa_event_cache::event_cache - Rust

    Struct massa_event_cache::event_cache::DbKeyBuilder

    source ·
    struct DbKeyBuilder {
    +    op_id_ser: OperationIdSerializer,
    +}

    Fields§

    §op_id_ser: OperationIdSerializer

    Operation Id Serializer

    +

    Implementations§

    source§

    impl DbKeyBuilder

    source

    fn new() -> Self

    source

    fn key( + &self, + indent: &KeyIndent, + key_type: KeyBuilderType<'_>, + key_kind: &KeyKind, +) -> Vec<u8>

    Low level key builder function +There is no guarantees that the key will be unique +Recommended to use high level function like: +key_from_event, prefix_key_from_indent, +prefix_key_from_filter_item or counter_key_from_filter_item

    +
    source

    fn key_from_event( + &self, + event: &SCOutputEvent, + indent: &KeyIndent, + key_kind: &KeyKind, +) -> Option<Vec<u8>>

    Key usually used to populate the DB

    +
    source

    fn prefix_key_from_indent(&self, indent: &KeyIndent) -> Vec<u8>

    Prefix key to iterate over all events / emitter_address / …

    +
    source

    fn prefix_key_from_filter_item( + &self, + filter_item: &FilterItem, + indent: &KeyIndent, +) -> Vec<u8>

    Prefix key to iterate over specific emitter_address / operation_id / …

    +
    source

    fn counter_key_from_filter_item( + &self, + filter_item: &FilterItem, + indent: &KeyIndent, +) -> Vec<u8>

    Counter key for specific emitter_address / operation_id / …

    +

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/event_cache/struct.EventCache.html b/massa_event_cache/event_cache/struct.EventCache.html new file mode 100644 index 00000000000..e30e26b36cc --- /dev/null +++ b/massa_event_cache/event_cache/struct.EventCache.html @@ -0,0 +1,159 @@ +EventCache in massa_event_cache::event_cache - Rust

    Struct massa_event_cache::event_cache::EventCache

    source ·
    pub(crate) struct EventCache {
    Show 13 fields + db: DB, + entry_count: usize, + max_entry_count: usize, + snip_amount: usize, + event_ser: SCOutputEventSerializer, + event_deser: SCOutputEventDeserializer, + key_builder: DbKeyBuilder, + first_slot: Slot, + last_slot: Slot, + thread_count: u8, + max_events_per_operation: u64, + max_operations_per_block: u64, + max_events_per_query: usize, +
    }
    Expand description

    Disk based event cache db (rocksdb based)

    +

    Fields§

    §db: DB

    RocksDB database

    +
    §entry_count: usize

    How many entries are in the db. Count is initialized at creation time by iterating +over all the entries in the db then it is maintained in memory

    +
    §max_entry_count: usize

    Maximum number of entries we want to keep in the db. +When this maximum is reached snip_amount entries are removed

    +
    §snip_amount: usize

    How many entries are removed when entry_count reaches max_entry_count

    +
    §event_ser: SCOutputEventSerializer

    Event serializer

    +
    §event_deser: SCOutputEventDeserializer

    Event deserializer

    +
    §key_builder: DbKeyBuilder

    Key builder

    +
    §first_slot: Slot

    First event slot in db

    +
    §last_slot: Slot

    Last event slot in db

    +
    §thread_count: u8

    Thread count

    +
    §max_events_per_operation: u64

    Maximum number of events per operation

    +
    §max_operations_per_block: u64

    Maximum number of operations per block

    +
    §max_events_per_query: usize

    Max number of events returned by a query

    +

    Implementations§

    source§

    impl EventCache

    source

    pub fn new( + path: &Path, + max_entry_count: usize, + snip_amount: usize, + thread_count: u8, + max_recursive_call_depth: u16, + max_event_data_length: u64, + max_events_per_operation: u64, + max_operations_per_block: u64, + max_events_per_query: usize, +) -> Self

    Create a new EventCache

    +
    source

    fn insert_into_batch(&mut self, event: SCOutputEvent, batch: &mut WriteBatch)

    From an event add keys & values into a rocksdb batch

    +
    source

    pub fn insert(&mut self, event: SCOutputEvent)

    Insert a new event in the cache

    +
    source

    pub fn insert_multi_it( + &mut self, + events: impl ExactSizeIterator<Item = SCOutputEvent> + Clone, +)

    Insert new events in the cache

    +
    source

    pub(crate) fn get_filtered_sc_output_events( + &self, + filter: &EventFilter, +) -> (Vec<u64>, Vec<SCOutputEvent>)

    Get events filtered by the given argument

    +
    source

    fn filter_for( + &self, + indent: &KeyIndent, + filter_item: &FilterItem, + result: &mut BTreeSet<Vec<u8>>, + seen: Option<&BTreeSet<Vec<u8>>>, +) -> u64

    source

    fn filter_item_estimate_count( + &self, + key_indent: &KeyIndent, + filter_item: &FilterItem, +) -> Result<u64, ModelsError>

    Estimate for a given KeyIndent & FilterItem the number of row to iterate

    +
    source

    fn snip(&mut self, snip_amount: Option<usize>)

    Try to remove some entries from the db

    +

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/index.html b/massa_event_cache/index.html new file mode 100644 index 00000000000..90b3078530a --- /dev/null +++ b/massa_event_cache/index.html @@ -0,0 +1 @@ +massa_event_cache - Rust

    Crate massa_event_cache

    source ·

    Modules§

    \ No newline at end of file diff --git a/massa_event_cache/rocksdb_operator/fn.counter_merge.html b/massa_event_cache/rocksdb_operator/fn.counter_merge.html new file mode 100644 index 00000000000..7d42d4fc22b --- /dev/null +++ b/massa_event_cache/rocksdb_operator/fn.counter_merge.html @@ -0,0 +1,5 @@ +counter_merge in massa_event_cache::rocksdb_operator - Rust

    Function massa_event_cache::rocksdb_operator::counter_merge

    source ·
    pub fn counter_merge(
    +    _key: &[u8],
    +    existing_val: Option<&[u8]>,
    +    operands: &MergeOperands,
    +) -> Option<Vec<u8>>
    \ No newline at end of file diff --git a/massa_event_cache/rocksdb_operator/index.html b/massa_event_cache/rocksdb_operator/index.html new file mode 100644 index 00000000000..1ef27233f9a --- /dev/null +++ b/massa_event_cache/rocksdb_operator/index.html @@ -0,0 +1 @@ +massa_event_cache::rocksdb_operator - Rust

    Module massa_event_cache::rocksdb_operator

    source ·

    Functions§

    \ No newline at end of file diff --git a/massa_event_cache/rocksdb_operator/sidebar-items.js b/massa_event_cache/rocksdb_operator/sidebar-items.js new file mode 100644 index 00000000000..c8974b22ae4 --- /dev/null +++ b/massa_event_cache/rocksdb_operator/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"fn":["counter_merge"]}; \ No newline at end of file diff --git a/massa_event_cache/ser_deser/index.html b/massa_event_cache/ser_deser/index.html new file mode 100644 index 00000000000..a79f9236c17 --- /dev/null +++ b/massa_event_cache/ser_deser/index.html @@ -0,0 +1 @@ +massa_event_cache::ser_deser - Rust

    Module massa_event_cache::ser_deser

    source ·

    Structs§

    \ No newline at end of file diff --git a/massa_event_cache/ser_deser/sidebar-items.js b/massa_event_cache/ser_deser/sidebar-items.js new file mode 100644 index 00000000000..9bf9010fb75 --- /dev/null +++ b/massa_event_cache/ser_deser/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"struct":["SCOutputEventDeserializer","SCOutputEventDeserializerArgs","SCOutputEventSerializer"]}; \ No newline at end of file diff --git a/massa_event_cache/ser_deser/struct.SCOutputEventDeserializer.html b/massa_event_cache/ser_deser/struct.SCOutputEventDeserializer.html new file mode 100644 index 00000000000..d9e894123ff --- /dev/null +++ b/massa_event_cache/ser_deser/struct.SCOutputEventDeserializer.html @@ -0,0 +1,108 @@ +SCOutputEventDeserializer in massa_event_cache::ser_deser - Rust
    pub struct SCOutputEventDeserializer {
    +    index_in_slot_deser: U64VarIntDeserializer,
    +    addr_len_deser: U32VarIntDeserializer,
    +    slot_deser: SlotDeserializer,
    +    addr_deser: AddressDeserializer,
    +    block_id_deser: OptionDeserializer<BlockId, BlockIdDeserializer>,
    +    op_id_deser: OptionDeserializer<OperationId, OperationIdDeserializer>,
    +    data_deser: StringDeserializer<U64VarIntDeserializer, u64>,
    +}
    Expand description

    SCOutputEvent deserializer

    +

    Fields§

    §index_in_slot_deser: U64VarIntDeserializer§addr_len_deser: U32VarIntDeserializer§slot_deser: SlotDeserializer§addr_deser: AddressDeserializer§block_id_deser: OptionDeserializer<BlockId, BlockIdDeserializer>§op_id_deser: OptionDeserializer<OperationId, OperationIdDeserializer>§data_deser: StringDeserializer<U64VarIntDeserializer, u64>

    Implementations§

    Trait Implementations§

    source§

    impl Deserializer<SCOutputEvent> for SCOutputEventDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + &self, + buffer: &'a [u8], +) -> IResult<&'a [u8], SCOutputEvent, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/ser_deser/struct.SCOutputEventDeserializerArgs.html b/massa_event_cache/ser_deser/struct.SCOutputEventDeserializerArgs.html new file mode 100644 index 00000000000..dc41735689b --- /dev/null +++ b/massa_event_cache/ser_deser/struct.SCOutputEventDeserializerArgs.html @@ -0,0 +1,101 @@ +SCOutputEventDeserializerArgs in massa_event_cache::ser_deser - Rust
    pub struct SCOutputEventDeserializerArgs {
    +    pub thread_count: u8,
    +    pub max_call_stack_length: u16,
    +    pub max_event_data_length: u64,
    +}
    Expand description

    SCOutputEvent deserializer args

    +

    Fields§

    §thread_count: u8§max_call_stack_length: u16§max_event_data_length: u64

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/ser_deser/struct.SCOutputEventSerializer.html b/massa_event_cache/ser_deser/struct.SCOutputEventSerializer.html new file mode 100644 index 00000000000..f7d5581c183 --- /dev/null +++ b/massa_event_cache/ser_deser/struct.SCOutputEventSerializer.html @@ -0,0 +1,109 @@ +SCOutputEventSerializer in massa_event_cache::ser_deser - Rust
    pub struct SCOutputEventSerializer {
    +    index_in_slot_ser: U64VarIntSerializer,
    +    addr_len_ser: U32VarIntSerializer,
    +    slot_ser: SlotSerializer,
    +    addr_ser: AddressSerializer,
    +    block_id_ser: OptionSerializer<BlockId, BlockIdSerializer>,
    +    op_id_ser: OptionSerializer<OperationId, OperationIdSerializer>,
    +    data_ser: StringSerializer<U64VarIntSerializer, u64>,
    +}
    Expand description

    Metadata serializer

    +

    Fields§

    §index_in_slot_ser: U64VarIntSerializer§addr_len_ser: U32VarIntSerializer§slot_ser: SlotSerializer§addr_ser: AddressSerializer§block_id_ser: OptionSerializer<BlockId, BlockIdSerializer>§op_id_ser: OptionSerializer<OperationId, OperationIdSerializer>§data_ser: StringSerializer<U64VarIntSerializer, u64>

    Implementations§

    Trait Implementations§

    source§

    impl Default for SCOutputEventSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<SCOutputEvent> for SCOutputEventSerializer

    source§

    fn serialize( + &self, + value: &SCOutputEvent, + buffer: &mut Vec<u8>, +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/sidebar-items.js b/massa_event_cache/sidebar-items.js new file mode 100644 index 00000000000..eb2588f720c --- /dev/null +++ b/massa_event_cache/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"mod":["config","controller","event_cache","rocksdb_operator","ser_deser","worker"]}; \ No newline at end of file diff --git a/massa_event_cache/worker/fn.start_event_cache_writer_worker.html b/massa_event_cache/worker/fn.start_event_cache_writer_worker.html new file mode 100644 index 00000000000..fc90291c793 --- /dev/null +++ b/massa_event_cache/worker/fn.start_event_cache_writer_worker.html @@ -0,0 +1,3 @@ +start_event_cache_writer_worker in massa_event_cache::worker - Rust
    pub fn start_event_cache_writer_worker(
    +    cfg: EventCacheConfig,
    +) -> (Box<dyn EventCacheManager>, Box<dyn EventCacheController>)
    \ No newline at end of file diff --git a/massa_event_cache/worker/index.html b/massa_event_cache/worker/index.html new file mode 100644 index 00000000000..8856f7a7b79 --- /dev/null +++ b/massa_event_cache/worker/index.html @@ -0,0 +1,2 @@ +massa_event_cache::worker - Rust

    Module massa_event_cache::worker

    source ·

    Structs§

    Traits§

    Functions§

    \ No newline at end of file diff --git a/massa_event_cache/worker/sidebar-items.js b/massa_event_cache/worker/sidebar-items.js new file mode 100644 index 00000000000..8e1a808ba77 --- /dev/null +++ b/massa_event_cache/worker/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"fn":["start_event_cache_writer_worker"],"struct":["EventCacheWriterManagerImpl","EventCacheWriterThread"],"trait":["EventCacheManager"]}; \ No newline at end of file diff --git a/massa_event_cache/worker/struct.EventCacheWriterManagerImpl.html b/massa_event_cache/worker/struct.EventCacheWriterManagerImpl.html new file mode 100644 index 00000000000..0d154d75305 --- /dev/null +++ b/massa_event_cache/worker/struct.EventCacheWriterManagerImpl.html @@ -0,0 +1,105 @@ +EventCacheWriterManagerImpl in massa_event_cache::worker - Rust
    pub struct EventCacheWriterManagerImpl {
    +    pub(crate) input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +    pub(crate) thread_handle: Option<JoinHandle<()>>,
    +}
    Expand description

    … manager +Allows stopping the … worker

    +

    Fields§

    §input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>

    input data to process in the VM loop +with a wake-up condition variable that needs to be triggered when the data changes

    +
    §thread_handle: Option<JoinHandle<()>>

    handle used to join the worker thread

    +

    Trait Implementations§

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/worker/struct.EventCacheWriterThread.html b/massa_event_cache/worker/struct.EventCacheWriterThread.html new file mode 100644 index 00000000000..b3527facbf2 --- /dev/null +++ b/massa_event_cache/worker/struct.EventCacheWriterThread.html @@ -0,0 +1,109 @@ +EventCacheWriterThread in massa_event_cache::worker - Rust

    Struct massa_event_cache::worker::EventCacheWriterThread

    source ·
    pub(crate) struct EventCacheWriterThread {
    +    input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +    cache: Arc<RwLock<EventCache>>,
    +}
    Expand description

    Structure gathering all elements needed by the event cache thread

    +

    Fields§

    §input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>§cache: Arc<RwLock<EventCache>>

    Event cache

    +

    Implementations§

    source§

    impl EventCacheWriterThread

    source

    fn new( + input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>, + event_cache: Arc<RwLock<EventCache>>, +) -> Self

    source

    fn wait_loop_event(&mut self) -> (EventCacheWriterInputData, bool)

    Waits for an event to trigger a new iteration in the event cache main loop.

    +
    §Returns
    +

    ExecutionInputData representing the input requests, +and a boolean saying whether we should stop the loop.

    +
    source

    pub fn main_loop(&mut self)

    Main loop of the worker

    +

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where + Self: Display,

    Causes self to use its Display implementation when +Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where + Self: LowerExp,

    Causes self to use its LowerExp implementation when +Debug-formatted.
    §

    fn fmt_lower_hex(self) -> FmtLowerHex<Self>
    where + Self: LowerHex,

    Causes self to use its LowerHex implementation when +Debug-formatted.
    §

    fn fmt_octal(self) -> FmtOctal<Self>
    where + Self: Octal,

    Causes self to use its Octal implementation when Debug-formatted.
    §

    fn fmt_pointer(self) -> FmtPointer<Self>
    where + Self: Pointer,

    Causes self to use its Pointer implementation when +Debug-formatted.
    §

    fn fmt_upper_exp(self) -> FmtUpperExp<Self>
    where + Self: UpperExp,

    Causes self to use its UpperExp implementation when +Debug-formatted.
    §

    fn fmt_upper_hex(self) -> FmtUpperHex<Self>
    where + Self: UpperHex,

    Causes self to use its UpperHex implementation when +Debug-formatted.
    §

    fn fmt_list(self) -> FmtList<Self>
    where + &'a Self: for<'a> IntoIterator,

    Formats each item in a sequence. Read more
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    §

    impl<T> Instrument for T

    §

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
    §

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for T
    where + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> IntoRequest<T> for T

    source§

    fn into_request(self) -> Request<T>

    Wrap the input message T in a tonic::Request
    §

    impl<T> Pipe for T
    where + T: ?Sized,

    §

    fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
    where + Self: Sized,

    Pipes by value. This is generally the method you want to use. Read more
    §

    fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
    where + R: 'a,

    Borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
    where + R: 'a,

    Mutably borrows self and passes that borrow into the pipe function. Read more
    §

    fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
    where + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.borrow() into the pipe function. Read more
    §

    fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R, +) -> R
    where + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
    §

    fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
    where + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.as_ref() into the pipe function.
    §

    fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
    where + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.as_mut() into the pipe +function.
    §

    fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
    where + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

    Borrows self, then passes self.deref() into the pipe function.
    §

    fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R, +) -> R
    where + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

    Mutably borrows self, then passes self.deref_mut() into the pipe +function.
    source§

    impl<T> Same for T

    §

    type Output = T

    Should always be Self
    §

    impl<T> Tap for T

    §

    fn tap(self, func: impl FnOnce(&Self)) -> Self

    Immutable access to a value. Read more
    §

    fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

    Mutable access to a value. Read more
    §

    fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Immutable access to the Borrow<B> of a value. Read more
    §

    fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Mutable access to the BorrowMut<B> of a value. Read more
    §

    fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Immutable access to the AsRef<R> view of a value. Read more
    §

    fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Mutable access to the AsMut<R> view of a value. Read more
    §

    fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Immutable access to the Deref::Target of a value. Read more
    §

    fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Mutable access to the Deref::Target of a value. Read more
    §

    fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

    Calls .tap() only in debug builds, and is erased in release builds.
    §

    fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

    Calls .tap_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
    where + Self: Borrow<B>, + B: ?Sized,

    Calls .tap_borrow() only in debug builds, and is erased in release +builds.
    §

    fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
    where + Self: BorrowMut<B>, + B: ?Sized,

    Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
    where + Self: AsRef<R>, + R: ?Sized,

    Calls .tap_ref() only in debug builds, and is erased in release +builds.
    §

    fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
    where + Self: AsMut<R>, + R: ?Sized,

    Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
    where + Self: Deref<Target = T>, + T: ?Sized,

    Calls .tap_deref() only in debug builds, and is erased in release +builds.
    §

    fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
    where + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

    Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
    §

    impl<T> TryConv for T

    §

    fn try_conv<T>(self) -> Result<T, Self::Error>
    where + Self: TryInto<T>,

    Attempts to convert self into T using TryInto<T>. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where + V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
    \ No newline at end of file diff --git a/massa_event_cache/worker/trait.EventCacheManager.html b/massa_event_cache/worker/trait.EventCacheManager.html new file mode 100644 index 00000000000..01d6142185e --- /dev/null +++ b/massa_event_cache/worker/trait.EventCacheManager.html @@ -0,0 +1,9 @@ +EventCacheManager in massa_event_cache::worker - Rust

    Trait massa_event_cache::worker::EventCacheManager

    source ·
    pub trait EventCacheManager {
    +    // Required method
    +    fn stop(&mut self);
    +}
    Expand description

    Event cache manager trait used to stop the event cache thread

    +

    Required Methods§

    source

    fn stop(&mut self)

    Stop the event cache thread +Note that we do not take self by value to consume it +because it is not allowed to move out of Box<dyn ExecutionManager> +This will improve if the unsized_fn_params feature stabilizes enough to be safely usable.

    +

    Implementors§

    \ No newline at end of file diff --git a/massa_execution_exports/channels/struct.ExecutionChannels.html b/massa_execution_exports/channels/struct.ExecutionChannels.html index 7ed4c5f8da7..d5f99f1d592 100644 --- a/massa_execution_exports/channels/struct.ExecutionChannels.html +++ b/massa_execution_exports/channels/struct.ExecutionChannels.html @@ -1,4 +1,4 @@ -ExecutionChannels in massa_execution_exports::channels - Rust
    pub struct ExecutionChannels {
    +ExecutionChannels in massa_execution_exports::channels - Rust
    pub struct ExecutionChannels {
         pub slot_execution_output_sender: Sender<SlotExecutionOutput>,
     }
    Expand description

    channels used by the execution worker

    Fields§

    §slot_execution_output_sender: Sender<SlotExecutionOutput>

    Broadcast channel for new slot execution outputs

    @@ -117,4 +117,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.ExecutionError.html b/massa_execution_exports/enum.ExecutionError.html index 2401ead3db7..c9604093cae 100644 --- a/massa_execution_exports/enum.ExecutionError.html +++ b/massa_execution_exports/enum.ExecutionError.html @@ -1,4 +1,4 @@ -ExecutionError in massa_execution_exports - Rust

    Enum massa_execution_exports::ExecutionError

    source ·
    #[non_exhaustive]
    pub enum ExecutionError { +ExecutionError in massa_execution_exports - Rust

    Enum massa_execution_exports::ExecutionError

    source ·
    #[non_exhaustive]
    pub enum ExecutionError {
    Show 18 variants ChannelError(String), RuntimeError(String), MassaHashError(MassaHashError), @@ -41,7 +41,7 @@
    §

    CacheError(CacheError)

    Cache error: {0}

    §

    FactoryError(FactoryError)

    Factory error: {0}

    §

    DeferredCallsError(String)

    Autonomous smart contract call error: {0}

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionError

    source§

    fn clone(&self) -> ExecutionError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExecutionError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ExecutionError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CacheError> for ExecutionError

    source§

    fn from(source: CacheError) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ExecutionError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for ExecutionError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ExecutionError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutionError

    source§

    fn clone(&self) -> ExecutionError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExecutionError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ExecutionError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CacheError> for ExecutionError

    source§

    fn from(source: CacheError) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ExecutionError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for ExecutionError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ExecutionError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -158,4 +158,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.ExecutionQueryError.html b/massa_execution_exports/enum.ExecutionQueryError.html index 3cdbbc8a9a8..ca05506648e 100644 --- a/massa_execution_exports/enum.ExecutionQueryError.html +++ b/massa_execution_exports/enum.ExecutionQueryError.html @@ -1,4 +1,4 @@ -ExecutionQueryError in massa_execution_exports - Rust
    pub enum ExecutionQueryError {
    +ExecutionQueryError in massa_execution_exports - Rust
    pub enum ExecutionQueryError {
         NotFound(String),
     }
    Expand description

    Execution query errors

    Variants§

    §

    NotFound(String)

    Not found: {0}

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.ExecutionQueryExecutionStatus.html b/massa_execution_exports/enum.ExecutionQueryExecutionStatus.html index 8ebab8bc5ee..eb444a2f7d7 100644 --- a/massa_execution_exports/enum.ExecutionQueryExecutionStatus.html +++ b/massa_execution_exports/enum.ExecutionQueryExecutionStatus.html @@ -1,4 +1,4 @@ -ExecutionQueryExecutionStatus in massa_execution_exports - Rust
    pub enum ExecutionQueryExecutionStatus {
    +ExecutionQueryExecutionStatus in massa_execution_exports - Rust
    pub enum ExecutionQueryExecutionStatus {
         AlreadyExecutedWithSuccess,
         AlreadyExecutedWithFailure,
         ExecutableOrExpired,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.ExecutionQueryRequestItem.html b/massa_execution_exports/enum.ExecutionQueryRequestItem.html index 74950ea074b..f859de38fd1 100644 --- a/massa_execution_exports/enum.ExecutionQueryRequestItem.html +++ b/massa_execution_exports/enum.ExecutionQueryRequestItem.html @@ -1,4 +1,4 @@ -ExecutionQueryRequestItem in massa_execution_exports - Rust
    pub enum ExecutionQueryRequestItem {
    +ExecutionQueryRequestItem in massa_execution_exports - Rust
    pub enum ExecutionQueryRequestItem {
     
    Show 23 variants AddressExistsCandidate(Address), AddressExistsFinal(Address), AddressBalanceCandidate(Address), @@ -189,4 +189,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.ExecutionQueryResponseItem.html b/massa_execution_exports/enum.ExecutionQueryResponseItem.html index 03a63ce9b63..a64675a947d 100644 --- a/massa_execution_exports/enum.ExecutionQueryResponseItem.html +++ b/massa_execution_exports/enum.ExecutionQueryResponseItem.html @@ -1,4 +1,4 @@ -ExecutionQueryResponseItem in massa_execution_exports - Rust
    pub enum ExecutionQueryResponseItem {
    +ExecutionQueryResponseItem in massa_execution_exports - Rust
    pub enum ExecutionQueryResponseItem {
     
    Show 13 variants Boolean(bool), RollCount(u64), Amount(Amount), @@ -137,4 +137,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.ReadOnlyExecutionTarget.html b/massa_execution_exports/enum.ReadOnlyExecutionTarget.html index aaf35717077..e66de0dcfaf 100644 --- a/massa_execution_exports/enum.ReadOnlyExecutionTarget.html +++ b/massa_execution_exports/enum.ReadOnlyExecutionTarget.html @@ -1,4 +1,4 @@ -ReadOnlyExecutionTarget in massa_execution_exports - Rust
    pub enum ReadOnlyExecutionTarget {
    +ReadOnlyExecutionTarget in massa_execution_exports - Rust
    pub enum ReadOnlyExecutionTarget {
         BytecodeExecution(Vec<u8>),
         FunctionCall {
             target_addr: Address,
    @@ -126,4 +126,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/enum.SlotExecutionOutput.html b/massa_execution_exports/enum.SlotExecutionOutput.html index fad0d0e094c..19f6635b3bc 100644 --- a/massa_execution_exports/enum.SlotExecutionOutput.html +++ b/massa_execution_exports/enum.SlotExecutionOutput.html @@ -1,4 +1,4 @@ -SlotExecutionOutput in massa_execution_exports - Rust
    pub enum SlotExecutionOutput {
    +SlotExecutionOutput in massa_execution_exports - Rust
    pub enum SlotExecutionOutput {
         ExecutedSlot(ExecutionOutput),
         FinalizedSlot(ExecutionOutput),
     }
    Expand description

    structure describing the output of the execution of a slot

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/error/enum.ExecutionError.html b/massa_execution_exports/error/enum.ExecutionError.html index fdf0899e40c..44c295d6dda 100644 --- a/massa_execution_exports/error/enum.ExecutionError.html +++ b/massa_execution_exports/error/enum.ExecutionError.html @@ -1,4 +1,4 @@ -ExecutionError in massa_execution_exports::error - Rust

    Enum massa_execution_exports::error::ExecutionError

    source ·
    #[non_exhaustive]
    pub enum ExecutionError { +ExecutionError in massa_execution_exports::error - Rust

    Enum massa_execution_exports::error::ExecutionError

    source ·
    #[non_exhaustive]
    pub enum ExecutionError {
    Show 18 variants ChannelError(String), RuntimeError(String), MassaHashError(MassaHashError), @@ -41,7 +41,7 @@
    §

    CacheError(CacheError)

    Cache error: {0}

    §

    FactoryError(FactoryError)

    Factory error: {0}

    §

    DeferredCallsError(String)

    Autonomous smart contract call error: {0}

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionError

    source§

    fn clone(&self) -> ExecutionError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExecutionError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ExecutionError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CacheError> for ExecutionError

    source§

    fn from(source: CacheError) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ExecutionError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for ExecutionError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ExecutionError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutionError

    source§

    fn clone(&self) -> ExecutionError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ExecutionError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ExecutionError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CacheError> for ExecutionError

    source§

    fn from(source: CacheError) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ExecutionError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for ExecutionError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ExecutionError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -158,4 +158,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/error/enum.ExecutionQueryError.html b/massa_execution_exports/error/enum.ExecutionQueryError.html index 31231ad024d..c627d5e7356 100644 --- a/massa_execution_exports/error/enum.ExecutionQueryError.html +++ b/massa_execution_exports/error/enum.ExecutionQueryError.html @@ -1,4 +1,4 @@ -ExecutionQueryError in massa_execution_exports::error - Rust
    pub enum ExecutionQueryError {
    +ExecutionQueryError in massa_execution_exports::error - Rust
    pub enum ExecutionQueryError {
         NotFound(String),
     }
    Expand description

    Execution query errors

    Variants§

    §

    NotFound(String)

    Not found: {0}

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/event_store/struct.EventStore.html b/massa_execution_exports/event_store/struct.EventStore.html index 050495f3566..bb752df857d 100644 --- a/massa_execution_exports/event_store/struct.EventStore.html +++ b/massa_execution_exports/event_store/struct.EventStore.html @@ -1,4 +1,4 @@ -EventStore in massa_execution_exports::event_store - Rust

    Struct massa_execution_exports::event_store::EventStore

    source ·
    pub struct EventStore(pub VecDeque<SCOutputEvent>);
    Expand description

    Store for events emitted by smart contracts

    +EventStore in massa_execution_exports::event_store - Rust

    Struct massa_execution_exports::event_store::EventStore

    source ·
    pub struct EventStore(pub VecDeque<SCOutputEvent>);
    Expand description

    Store for events emitted by smart contracts

    Tuple Fields§

    §0: VecDeque<SCOutputEvent>

    Implementations§

    source§

    impl EventStore

    source

    pub fn push(&mut self, event: SCOutputEvent)

    Push a new smart contract event to the store

    source

    pub fn take(&mut self) -> VecDeque<SCOutputEvent>

    Take the event store

    source

    pub fn clear(&mut self)

    Clear the event store

    @@ -21,8 +21,8 @@ &'a self, filter: &'b EventFilter, ) -> impl Iterator<Item = &'a SCOutputEvent> + 'b

    Get events iterator optionally filtered by given EventFilter

    -

    Trait Implementations§

    source§

    impl Clone for EventStore

    source§

    fn clone(&self) -> EventStore

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventStore

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventStore

    source§

    fn default() -> EventStore

    Returns the “default value” for a type. Read more
    source§

    impl Serialize for EventStore

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for EventStore

    source§

    fn clone(&self) -> EventStore

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventStore

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventStore

    source§

    fn default() -> EventStore

    Returns the “default value” for a type. Read more
    source§

    impl Serialize for EventStore

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -137,4 +137,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/settings/index.html b/massa_execution_exports/settings/index.html index ead16f89523..42aa5525d8c 100644 --- a/massa_execution_exports/settings/index.html +++ b/massa_execution_exports/settings/index.html @@ -1,2 +1,2 @@ -massa_execution_exports::settings - Rust

    Module massa_execution_exports::settings

    source ·
    Expand description

    This module provides the structures used to provide configuration parameters to the Execution system

    +massa_execution_exports::settings - Rust

    Module massa_execution_exports::settings

    source ·
    Expand description

    This module provides the structures used to provide configuration parameters to the Execution system

    Structs§

    \ No newline at end of file diff --git a/massa_execution_exports/settings/struct.ExecutionConfig.html b/massa_execution_exports/settings/struct.ExecutionConfig.html index f59ce7c1ad8..403b79f16e6 100644 --- a/massa_execution_exports/settings/struct.ExecutionConfig.html +++ b/massa_execution_exports/settings/struct.ExecutionConfig.html @@ -1,4 +1,4 @@ -ExecutionConfig in massa_execution_exports::settings - Rust
    pub struct ExecutionConfig {
    Show 44 fields +ExecutionConfig in massa_execution_exports::settings - Rust
    pub struct ExecutionConfig {
    Show 47 fields pub readonly_queue_length: usize, pub max_final_events: usize, pub max_async_gas: u64, @@ -43,6 +43,9 @@ pub condom_limits: CondomLimits, pub deferred_calls_config: DeferredCallsConfig, pub max_event_per_operation: usize, + pub event_cache_path: PathBuf, + pub event_cache_size: usize, + pub event_snip_amount: usize,
    }
    Expand description

    Execution module configuration

    Fields§

    §readonly_queue_length: usize

    read-only execution request queue length

    §max_final_events: usize

    maximum number of SC output events kept in cache

    @@ -89,6 +92,9 @@
    §condom_limits: CondomLimits

    Runtime condom middleware limits

    §deferred_calls_config: DeferredCallsConfig

    deferred calls config

    §max_event_per_operation: usize

    Maximum number of event that an operation can emit

    +
    §event_cache_path: PathBuf

    Path to the hard drive event cache storage

    +
    §event_cache_size: usize

    Maximum number of entries we want to keep in the Event cache

    +
    §event_snip_amount: usize

    Amount of entries removed when event_cache_size is reached

    Trait Implementations§

    source§

    impl Clone for ExecutionConfig

    source§

    fn clone(&self) -> ExecutionConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -204,4 +210,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/settings/struct.StorageCostsConstants.html b/massa_execution_exports/settings/struct.StorageCostsConstants.html index edb532f6dfa..58792645b32 100644 --- a/massa_execution_exports/settings/struct.StorageCostsConstants.html +++ b/massa_execution_exports/settings/struct.StorageCostsConstants.html @@ -1,4 +1,4 @@ -StorageCostsConstants in massa_execution_exports::settings - Rust
    pub struct StorageCostsConstants {
    +StorageCostsConstants in massa_execution_exports::settings - Rust
    pub struct StorageCostsConstants {
         pub ledger_cost_per_byte: Amount,
         pub ledger_entry_base_cost: Amount,
         pub ledger_entry_datastore_base_cost: Amount,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.CondomLimits.html b/massa_execution_exports/struct.CondomLimits.html index 477b13a3db1..cd3e4a2e36e 100644 --- a/massa_execution_exports/struct.CondomLimits.html +++ b/massa_execution_exports/struct.CondomLimits.html @@ -1,4 +1,4 @@ -CondomLimits in massa_execution_exports - Rust

    Struct massa_execution_exports::CondomLimits

    pub struct CondomLimits {
    Show 15 fields +CondomLimits in massa_execution_exports - Rust

    Struct massa_execution_exports::CondomLimits

    pub struct CondomLimits {
    Show 15 fields pub max_exports: Option<usize>, pub max_functions: Option<usize>, pub max_signature_len: Option<usize>, @@ -129,4 +129,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.EventStore.html b/massa_execution_exports/struct.EventStore.html index ec88ec314a2..65708015249 100644 --- a/massa_execution_exports/struct.EventStore.html +++ b/massa_execution_exports/struct.EventStore.html @@ -1,4 +1,4 @@ -EventStore in massa_execution_exports - Rust

    Struct massa_execution_exports::EventStore

    source ·
    pub struct EventStore(pub VecDeque<SCOutputEvent>);
    Expand description

    Store for events emitted by smart contracts

    +EventStore in massa_execution_exports - Rust

    Struct massa_execution_exports::EventStore

    source ·
    pub struct EventStore(pub VecDeque<SCOutputEvent>);
    Expand description

    Store for events emitted by smart contracts

    Tuple Fields§

    §0: VecDeque<SCOutputEvent>

    Implementations§

    source§

    impl EventStore

    source

    pub fn push(&mut self, event: SCOutputEvent)

    Push a new smart contract event to the store

    source

    pub fn take(&mut self) -> VecDeque<SCOutputEvent>

    Take the event store

    source

    pub fn clear(&mut self)

    Clear the event store

    @@ -21,8 +21,8 @@ &'a self, filter: &'b EventFilter, ) -> impl Iterator<Item = &'a SCOutputEvent> + 'b

    Get events iterator optionally filtered by given EventFilter

    -

    Trait Implementations§

    source§

    impl Clone for EventStore

    source§

    fn clone(&self) -> EventStore

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventStore

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventStore

    source§

    fn default() -> EventStore

    Returns the “default value” for a type. Read more
    source§

    impl Serialize for EventStore

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for EventStore

    source§

    fn clone(&self) -> EventStore

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventStore

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventStore

    source§

    fn default() -> EventStore

    Returns the “default value” for a type. Read more
    source§

    impl Serialize for EventStore

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -137,4 +137,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutedBlockInfo.html b/massa_execution_exports/struct.ExecutedBlockInfo.html index 39e3b3fbf53..aadc5dd2611 100644 --- a/massa_execution_exports/struct.ExecutedBlockInfo.html +++ b/massa_execution_exports/struct.ExecutedBlockInfo.html @@ -1,4 +1,4 @@ -ExecutedBlockInfo in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutedBlockInfo

    source ·
    pub struct ExecutedBlockInfo {
    +ExecutedBlockInfo in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutedBlockInfo

    source ·
    pub struct ExecutedBlockInfo {
         pub block_id: BlockId,
         pub current_version: u32,
         pub announced_version: Option<u32>,
    @@ -6,8 +6,8 @@
     

    Fields§

    §block_id: BlockId

    Block id

    §current_version: u32

    Current network version (see Versioning doc)

    §announced_version: Option<u32>

    Announced network version (see Versioning doc)

    -

    Trait Implementations§

    source§

    impl Clone for ExecutedBlockInfo

    source§

    fn clone(&self) -> ExecutedBlockInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutedBlockInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for ExecutedBlockInfo

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutedBlockInfo

    source§

    fn clone(&self) -> ExecutedBlockInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutedBlockInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for ExecutedBlockInfo

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -122,4 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionAddressInfo.html b/massa_execution_exports/struct.ExecutionAddressInfo.html index c4ea522141b..4621ffcc904 100644 --- a/massa_execution_exports/struct.ExecutionAddressInfo.html +++ b/massa_execution_exports/struct.ExecutionAddressInfo.html @@ -1,4 +1,4 @@ -ExecutionAddressInfo in massa_execution_exports - Rust
    pub struct ExecutionAddressInfo {
    +ExecutionAddressInfo in massa_execution_exports - Rust
    pub struct ExecutionAddressInfo {
         pub candidate_balance: Amount,
         pub final_balance: Amount,
         pub final_roll_count: u64,
    @@ -131,4 +131,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionBlockMetadata.html b/massa_execution_exports/struct.ExecutionBlockMetadata.html index 5c3392a071d..6f62450426d 100644 --- a/massa_execution_exports/struct.ExecutionBlockMetadata.html +++ b/massa_execution_exports/struct.ExecutionBlockMetadata.html @@ -1,4 +1,4 @@ -ExecutionBlockMetadata in massa_execution_exports - Rust
    pub struct ExecutionBlockMetadata {
    +ExecutionBlockMetadata in massa_execution_exports - Rust
    pub struct ExecutionBlockMetadata {
         pub same_thread_parent_creator: Option<Address>,
         pub storage: Option<Storage>,
     }
    Expand description

    Metadata needed to execute the block

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionChannels.html b/massa_execution_exports/struct.ExecutionChannels.html index f1f8b9f8f7d..a6215ff3c68 100644 --- a/massa_execution_exports/struct.ExecutionChannels.html +++ b/massa_execution_exports/struct.ExecutionChannels.html @@ -1,4 +1,4 @@ -ExecutionChannels in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutionChannels

    source ·
    pub struct ExecutionChannels {
    +ExecutionChannels in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutionChannels

    source ·
    pub struct ExecutionChannels {
         pub slot_execution_output_sender: Sender<SlotExecutionOutput>,
     }
    Expand description

    channels used by the execution worker

    Fields§

    §slot_execution_output_sender: Sender<SlotExecutionOutput>

    Broadcast channel for new slot execution outputs

    @@ -117,4 +117,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionConfig.html b/massa_execution_exports/struct.ExecutionConfig.html index 8c335f16e8c..b9992938949 100644 --- a/massa_execution_exports/struct.ExecutionConfig.html +++ b/massa_execution_exports/struct.ExecutionConfig.html @@ -1,4 +1,4 @@ -ExecutionConfig in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutionConfig

    source ·
    pub struct ExecutionConfig {
    Show 44 fields +ExecutionConfig in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutionConfig

    source ·
    pub struct ExecutionConfig {
    Show 47 fields pub readonly_queue_length: usize, pub max_final_events: usize, pub max_async_gas: u64, @@ -43,6 +43,9 @@ pub condom_limits: CondomLimits, pub deferred_calls_config: DeferredCallsConfig, pub max_event_per_operation: usize, + pub event_cache_path: PathBuf, + pub event_cache_size: usize, + pub event_snip_amount: usize,
    }
    Expand description

    Execution module configuration

    Fields§

    §readonly_queue_length: usize

    read-only execution request queue length

    §max_final_events: usize

    maximum number of SC output events kept in cache

    @@ -89,6 +92,9 @@
    §condom_limits: CondomLimits

    Runtime condom middleware limits

    §deferred_calls_config: DeferredCallsConfig

    deferred calls config

    §max_event_per_operation: usize

    Maximum number of event that an operation can emit

    +
    §event_cache_path: PathBuf

    Path to the hard drive event cache storage

    +
    §event_cache_size: usize

    Maximum number of entries we want to keep in the Event cache

    +
    §event_snip_amount: usize

    Amount of entries removed when event_cache_size is reached

    Trait Implementations§

    source§

    impl Clone for ExecutionConfig

    source§

    fn clone(&self) -> ExecutionConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -204,4 +210,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionOutput.html b/massa_execution_exports/struct.ExecutionOutput.html index 91cd9f9dfb3..1c23bcf81bc 100644 --- a/massa_execution_exports/struct.ExecutionOutput.html +++ b/massa_execution_exports/struct.ExecutionOutput.html @@ -1,4 +1,4 @@ -ExecutionOutput in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutionOutput

    source ·
    pub struct ExecutionOutput {
    +ExecutionOutput in massa_execution_exports - Rust

    Struct massa_execution_exports::ExecutionOutput

    source ·
    pub struct ExecutionOutput {
         pub slot: Slot,
         pub block_info: Option<ExecutedBlockInfo>,
         pub state_changes: StateChanges,
    @@ -14,8 +14,8 @@
     
    §deferred_credits_execution: Vec<(Address, Result<Amount, String>)>

    Deferred credits execution (empty if execution-info feature is NOT enabled)

    §cancel_async_message_execution: Vec<(Address, Result<Amount, String>)>

    Cancel async message execution (empty if execution-info feature is NOT enabled)

    §auto_sell_execution: Vec<(Address, Amount)>

    Auto sell roll execution (empty if execution-info feature is NOT enabled)

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionOutput

    source§

    fn clone(&self) -> ExecutionOutput

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionOutput

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ExecutionOutput> for ExecutionOutput

    source§

    fn from(value: ExecutionOutput) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ExecutionOutput

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutionOutput

    source§

    fn clone(&self) -> ExecutionOutput

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionOutput

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ExecutionOutput> for ExecutionOutput

    source§

    fn from(value: ExecutionOutput) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ExecutionOutput

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -130,4 +130,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionQueryCycleInfos.html b/massa_execution_exports/struct.ExecutionQueryCycleInfos.html index 0a7a2b415c0..2e31baa6bc5 100644 --- a/massa_execution_exports/struct.ExecutionQueryCycleInfos.html +++ b/massa_execution_exports/struct.ExecutionQueryCycleInfos.html @@ -1,4 +1,4 @@ -ExecutionQueryCycleInfos in massa_execution_exports - Rust
    pub struct ExecutionQueryCycleInfos {
    +ExecutionQueryCycleInfos in massa_execution_exports - Rust
    pub struct ExecutionQueryCycleInfos {
         pub cycle: u64,
         pub is_final: bool,
         pub staker_infos: BTreeMap<Address, ExecutionQueryStakerInfo>,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionQueryRequest.html b/massa_execution_exports/struct.ExecutionQueryRequest.html index be16f6a071a..2ec0c5cf0cf 100644 --- a/massa_execution_exports/struct.ExecutionQueryRequest.html +++ b/massa_execution_exports/struct.ExecutionQueryRequest.html @@ -1,4 +1,4 @@ -ExecutionQueryRequest in massa_execution_exports - Rust
    pub struct ExecutionQueryRequest {
    +ExecutionQueryRequest in massa_execution_exports - Rust
    pub struct ExecutionQueryRequest {
         pub requests: Vec<ExecutionQueryRequestItem>,
     }
    Expand description

    Request to atomically execute a batch of execution state queries

    Fields§

    §requests: Vec<ExecutionQueryRequestItem>

    List of requests

    @@ -113,4 +113,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionQueryResponse.html b/massa_execution_exports/struct.ExecutionQueryResponse.html index adf4716ced3..3301c309950 100644 --- a/massa_execution_exports/struct.ExecutionQueryResponse.html +++ b/massa_execution_exports/struct.ExecutionQueryResponse.html @@ -1,4 +1,4 @@ -ExecutionQueryResponse in massa_execution_exports - Rust
    pub struct ExecutionQueryResponse {
    +ExecutionQueryResponse in massa_execution_exports - Rust
    pub struct ExecutionQueryResponse {
         pub responses: Vec<Result<ExecutionQueryResponseItem, ExecutionQueryError>>,
         pub candidate_cursor: Slot,
         pub final_cursor: Slot,
    @@ -119,4 +119,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionQueryStakerInfo.html b/massa_execution_exports/struct.ExecutionQueryStakerInfo.html index 206b5e65551..e0a7a62910e 100644 --- a/massa_execution_exports/struct.ExecutionQueryStakerInfo.html +++ b/massa_execution_exports/struct.ExecutionQueryStakerInfo.html @@ -1,4 +1,4 @@ -ExecutionQueryStakerInfo in massa_execution_exports - Rust
    pub struct ExecutionQueryStakerInfo {
    +ExecutionQueryStakerInfo in massa_execution_exports - Rust
    pub struct ExecutionQueryStakerInfo {
         pub active_rolls: u64,
         pub production_stats: ProductionStats,
     }
    Expand description

    Staker information for a given cycle

    @@ -115,4 +115,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ExecutionStackElement.html b/massa_execution_exports/struct.ExecutionStackElement.html index 4480fb3fe69..53f4117769b 100644 --- a/massa_execution_exports/struct.ExecutionStackElement.html +++ b/massa_execution_exports/struct.ExecutionStackElement.html @@ -1,4 +1,4 @@ -ExecutionStackElement in massa_execution_exports - Rust
    pub struct ExecutionStackElement {
    +ExecutionStackElement in massa_execution_exports - Rust
    pub struct ExecutionStackElement {
         pub address: Address,
         pub coins: Amount,
         pub owned_addresses: Vec<Address>,
    @@ -135,4 +135,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.GasCosts.html b/massa_execution_exports/struct.GasCosts.html index 9041f1377b8..0d3cc57456c 100644 --- a/massa_execution_exports/struct.GasCosts.html +++ b/massa_execution_exports/struct.GasCosts.html @@ -1,11 +1,11 @@ -GasCosts in massa_execution_exports - Rust

    Struct massa_execution_exports::GasCosts

    pub struct GasCosts {
    +GasCosts in massa_execution_exports - Rust

    Struct massa_execution_exports::GasCosts

    pub struct GasCosts {
         pub(crate) abi_costs: HashMap<String, u64>,
         pub(crate) launch_cost: u64,
         pub(crate) operator_cost: u64,
         pub cl_compilation_cost: u64,
         pub sp_compilation_cost: u64,
         pub max_instance_cost: u64,
    -}

    Fields§

    §abi_costs: HashMap<String, u64>§launch_cost: u64§operator_cost: u64§cl_compilation_cost: u64§sp_compilation_cost: u64§max_instance_cost: u64

    Implementations§

    §

    impl GasCosts

    pub fn new(abi_cost_file: PathBuf) -> Result<GasCosts, Error>

    pub fn get_abi_costs(&self) -> &HashMap<String, u64>

    Trait Implementations§

    §

    impl Clone for GasCosts

    §

    fn clone(&self) -> GasCosts

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    §

    impl Debug for GasCosts

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    §

    impl Default for GasCosts

    §

    fn default() -> GasCosts

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §abi_costs: HashMap<String, u64>§launch_cost: u64§operator_cost: u64§cl_compilation_cost: u64§sp_compilation_cost: u64§max_instance_cost: u64

    Implementations§

    §

    impl GasCosts

    pub fn new(abi_cost_file: PathBuf) -> Result<GasCosts, Error>

    pub fn get_abi_costs(&self) -> &HashMap<String, u64>

    Trait Implementations§

    §

    impl Clone for GasCosts

    §

    fn clone(&self) -> GasCosts

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    §

    impl Debug for GasCosts

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    §

    impl Default for GasCosts

    §

    fn default() -> GasCosts

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -120,4 +120,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ReadOnlyCallRequest.html b/massa_execution_exports/struct.ReadOnlyCallRequest.html index 47611bb635a..9dd50817b2c 100644 --- a/massa_execution_exports/struct.ReadOnlyCallRequest.html +++ b/massa_execution_exports/struct.ReadOnlyCallRequest.html @@ -1,4 +1,4 @@ -ReadOnlyCallRequest in massa_execution_exports - Rust

    Struct massa_execution_exports::ReadOnlyCallRequest

    source ·
    pub struct ReadOnlyCallRequest {
    +ReadOnlyCallRequest in massa_execution_exports - Rust

    Struct massa_execution_exports::ReadOnlyCallRequest

    source ·
    pub struct ReadOnlyCallRequest {
         pub max_gas: u64,
         pub call_stack: Vec<ExecutionStackElement>,
         pub target_addr: Address,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ReadOnlyExecutionOutput.html b/massa_execution_exports/struct.ReadOnlyExecutionOutput.html index 36b836782f3..b6af6b41cf0 100644 --- a/massa_execution_exports/struct.ReadOnlyExecutionOutput.html +++ b/massa_execution_exports/struct.ReadOnlyExecutionOutput.html @@ -1,4 +1,4 @@ -ReadOnlyExecutionOutput in massa_execution_exports - Rust
    pub struct ReadOnlyExecutionOutput {
    +ReadOnlyExecutionOutput in massa_execution_exports - Rust
    pub struct ReadOnlyExecutionOutput {
         pub out: ExecutionOutput,
         pub gas_cost: u64,
         pub call_result: Vec<u8>,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.ReadOnlyExecutionRequest.html b/massa_execution_exports/struct.ReadOnlyExecutionRequest.html index 2f81d961105..ed2ff8278d1 100644 --- a/massa_execution_exports/struct.ReadOnlyExecutionRequest.html +++ b/massa_execution_exports/struct.ReadOnlyExecutionRequest.html @@ -1,4 +1,4 @@ -ReadOnlyExecutionRequest in massa_execution_exports - Rust
    pub struct ReadOnlyExecutionRequest {
    +ReadOnlyExecutionRequest in massa_execution_exports - Rust
    pub struct ReadOnlyExecutionRequest {
         pub max_gas: u64,
         pub call_stack: Vec<ExecutionStackElement>,
         pub target: ReadOnlyExecutionTarget,
    @@ -125,4 +125,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/struct.StorageCostsConstants.html b/massa_execution_exports/struct.StorageCostsConstants.html index d2a1f803568..d4bf4b6208b 100644 --- a/massa_execution_exports/struct.StorageCostsConstants.html +++ b/massa_execution_exports/struct.StorageCostsConstants.html @@ -1,4 +1,4 @@ -StorageCostsConstants in massa_execution_exports - Rust
    pub struct StorageCostsConstants {
    +StorageCostsConstants in massa_execution_exports - Rust
    pub struct StorageCostsConstants {
         pub ledger_cost_per_byte: Amount,
         pub ledger_entry_base_cost: Amount,
         pub ledger_entry_datastore_base_cost: Amount,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/enum.ExecutionQueryExecutionStatus.html b/massa_execution_exports/types/enum.ExecutionQueryExecutionStatus.html index 85bad1784ec..9a5f38c7ecf 100644 --- a/massa_execution_exports/types/enum.ExecutionQueryExecutionStatus.html +++ b/massa_execution_exports/types/enum.ExecutionQueryExecutionStatus.html @@ -1,4 +1,4 @@ -ExecutionQueryExecutionStatus in massa_execution_exports::types - Rust
    pub enum ExecutionQueryExecutionStatus {
    +ExecutionQueryExecutionStatus in massa_execution_exports::types - Rust
    pub enum ExecutionQueryExecutionStatus {
         AlreadyExecutedWithSuccess,
         AlreadyExecutedWithFailure,
         ExecutableOrExpired,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/enum.ExecutionQueryRequestItem.html b/massa_execution_exports/types/enum.ExecutionQueryRequestItem.html index dab55477460..4d14e977bed 100644 --- a/massa_execution_exports/types/enum.ExecutionQueryRequestItem.html +++ b/massa_execution_exports/types/enum.ExecutionQueryRequestItem.html @@ -1,4 +1,4 @@ -ExecutionQueryRequestItem in massa_execution_exports::types - Rust
    pub enum ExecutionQueryRequestItem {
    +ExecutionQueryRequestItem in massa_execution_exports::types - Rust
    pub enum ExecutionQueryRequestItem {
     
    Show 23 variants AddressExistsCandidate(Address), AddressExistsFinal(Address), AddressBalanceCandidate(Address), @@ -189,4 +189,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/enum.ExecutionQueryResponseItem.html b/massa_execution_exports/types/enum.ExecutionQueryResponseItem.html index 1464111425b..e1229ef7c65 100644 --- a/massa_execution_exports/types/enum.ExecutionQueryResponseItem.html +++ b/massa_execution_exports/types/enum.ExecutionQueryResponseItem.html @@ -1,4 +1,4 @@ -ExecutionQueryResponseItem in massa_execution_exports::types - Rust
    pub enum ExecutionQueryResponseItem {
    +ExecutionQueryResponseItem in massa_execution_exports::types - Rust
    pub enum ExecutionQueryResponseItem {
     
    Show 13 variants Boolean(bool), RollCount(u64), Amount(Amount), @@ -137,4 +137,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/enum.ReadOnlyExecutionTarget.html b/massa_execution_exports/types/enum.ReadOnlyExecutionTarget.html index f68af5dfe4f..3fef887b452 100644 --- a/massa_execution_exports/types/enum.ReadOnlyExecutionTarget.html +++ b/massa_execution_exports/types/enum.ReadOnlyExecutionTarget.html @@ -1,4 +1,4 @@ -ReadOnlyExecutionTarget in massa_execution_exports::types - Rust
    pub enum ReadOnlyExecutionTarget {
    +ReadOnlyExecutionTarget in massa_execution_exports::types - Rust
    pub enum ReadOnlyExecutionTarget {
         BytecodeExecution(Vec<u8>),
         FunctionCall {
             target_addr: Address,
    @@ -126,4 +126,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/enum.SlotExecutionOutput.html b/massa_execution_exports/types/enum.SlotExecutionOutput.html index 9ceb41904ca..0c195137221 100644 --- a/massa_execution_exports/types/enum.SlotExecutionOutput.html +++ b/massa_execution_exports/types/enum.SlotExecutionOutput.html @@ -1,4 +1,4 @@ -SlotExecutionOutput in massa_execution_exports::types - Rust
    pub enum SlotExecutionOutput {
    +SlotExecutionOutput in massa_execution_exports::types - Rust
    pub enum SlotExecutionOutput {
         ExecutedSlot(ExecutionOutput),
         FinalizedSlot(ExecutionOutput),
     }
    Expand description

    structure describing the output of the execution of a slot

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutedBlockInfo.html b/massa_execution_exports/types/struct.ExecutedBlockInfo.html index ae75434e104..8883d46a74b 100644 --- a/massa_execution_exports/types/struct.ExecutedBlockInfo.html +++ b/massa_execution_exports/types/struct.ExecutedBlockInfo.html @@ -1,4 +1,4 @@ -ExecutedBlockInfo in massa_execution_exports::types - Rust

    Struct massa_execution_exports::types::ExecutedBlockInfo

    source ·
    pub struct ExecutedBlockInfo {
    +ExecutedBlockInfo in massa_execution_exports::types - Rust

    Struct massa_execution_exports::types::ExecutedBlockInfo

    source ·
    pub struct ExecutedBlockInfo {
         pub block_id: BlockId,
         pub current_version: u32,
         pub announced_version: Option<u32>,
    @@ -6,8 +6,8 @@
     

    Fields§

    §block_id: BlockId

    Block id

    §current_version: u32

    Current network version (see Versioning doc)

    §announced_version: Option<u32>

    Announced network version (see Versioning doc)

    -

    Trait Implementations§

    source§

    impl Clone for ExecutedBlockInfo

    source§

    fn clone(&self) -> ExecutedBlockInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutedBlockInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for ExecutedBlockInfo

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutedBlockInfo

    source§

    fn clone(&self) -> ExecutedBlockInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutedBlockInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for ExecutedBlockInfo

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -122,4 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionAddressInfo.html b/massa_execution_exports/types/struct.ExecutionAddressInfo.html index 29d21437c4b..35e97ede5a1 100644 --- a/massa_execution_exports/types/struct.ExecutionAddressInfo.html +++ b/massa_execution_exports/types/struct.ExecutionAddressInfo.html @@ -1,4 +1,4 @@ -ExecutionAddressInfo in massa_execution_exports::types - Rust
    pub struct ExecutionAddressInfo {
    +ExecutionAddressInfo in massa_execution_exports::types - Rust
    pub struct ExecutionAddressInfo {
         pub candidate_balance: Amount,
         pub final_balance: Amount,
         pub final_roll_count: u64,
    @@ -131,4 +131,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionBlockMetadata.html b/massa_execution_exports/types/struct.ExecutionBlockMetadata.html index 052c24f4269..9b4b563e15e 100644 --- a/massa_execution_exports/types/struct.ExecutionBlockMetadata.html +++ b/massa_execution_exports/types/struct.ExecutionBlockMetadata.html @@ -1,4 +1,4 @@ -ExecutionBlockMetadata in massa_execution_exports::types - Rust
    pub struct ExecutionBlockMetadata {
    +ExecutionBlockMetadata in massa_execution_exports::types - Rust
    pub struct ExecutionBlockMetadata {
         pub same_thread_parent_creator: Option<Address>,
         pub storage: Option<Storage>,
     }
    Expand description

    Metadata needed to execute the block

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionOutput.html b/massa_execution_exports/types/struct.ExecutionOutput.html index 18429758691..8925ab3bedc 100644 --- a/massa_execution_exports/types/struct.ExecutionOutput.html +++ b/massa_execution_exports/types/struct.ExecutionOutput.html @@ -1,4 +1,4 @@ -ExecutionOutput in massa_execution_exports::types - Rust

    Struct massa_execution_exports::types::ExecutionOutput

    source ·
    pub struct ExecutionOutput {
    +ExecutionOutput in massa_execution_exports::types - Rust

    Struct massa_execution_exports::types::ExecutionOutput

    source ·
    pub struct ExecutionOutput {
         pub slot: Slot,
         pub block_info: Option<ExecutedBlockInfo>,
         pub state_changes: StateChanges,
    @@ -14,8 +14,8 @@
     
    §deferred_credits_execution: Vec<(Address, Result<Amount, String>)>

    Deferred credits execution (empty if execution-info feature is NOT enabled)

    §cancel_async_message_execution: Vec<(Address, Result<Amount, String>)>

    Cancel async message execution (empty if execution-info feature is NOT enabled)

    §auto_sell_execution: Vec<(Address, Amount)>

    Auto sell roll execution (empty if execution-info feature is NOT enabled)

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionOutput

    source§

    fn clone(&self) -> ExecutionOutput

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionOutput

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ExecutionOutput> for ExecutionOutput

    source§

    fn from(value: ExecutionOutput) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ExecutionOutput

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutionOutput

    source§

    fn clone(&self) -> ExecutionOutput

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionOutput

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ExecutionOutput> for ExecutionOutput

    source§

    fn from(value: ExecutionOutput) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ExecutionOutput

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -130,4 +130,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionQueryCycleInfos.html b/massa_execution_exports/types/struct.ExecutionQueryCycleInfos.html index 78c8a0bb4f6..bb56de4f607 100644 --- a/massa_execution_exports/types/struct.ExecutionQueryCycleInfos.html +++ b/massa_execution_exports/types/struct.ExecutionQueryCycleInfos.html @@ -1,4 +1,4 @@ -ExecutionQueryCycleInfos in massa_execution_exports::types - Rust
    pub struct ExecutionQueryCycleInfos {
    +ExecutionQueryCycleInfos in massa_execution_exports::types - Rust
    pub struct ExecutionQueryCycleInfos {
         pub cycle: u64,
         pub is_final: bool,
         pub staker_infos: BTreeMap<Address, ExecutionQueryStakerInfo>,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionQueryRequest.html b/massa_execution_exports/types/struct.ExecutionQueryRequest.html index afd9420c867..4159bda383a 100644 --- a/massa_execution_exports/types/struct.ExecutionQueryRequest.html +++ b/massa_execution_exports/types/struct.ExecutionQueryRequest.html @@ -1,4 +1,4 @@ -ExecutionQueryRequest in massa_execution_exports::types - Rust
    pub struct ExecutionQueryRequest {
    +ExecutionQueryRequest in massa_execution_exports::types - Rust
    pub struct ExecutionQueryRequest {
         pub requests: Vec<ExecutionQueryRequestItem>,
     }
    Expand description

    Request to atomically execute a batch of execution state queries

    Fields§

    §requests: Vec<ExecutionQueryRequestItem>

    List of requests

    @@ -113,4 +113,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionQueryResponse.html b/massa_execution_exports/types/struct.ExecutionQueryResponse.html index 45e5f86f699..8d78463aeb4 100644 --- a/massa_execution_exports/types/struct.ExecutionQueryResponse.html +++ b/massa_execution_exports/types/struct.ExecutionQueryResponse.html @@ -1,4 +1,4 @@ -ExecutionQueryResponse in massa_execution_exports::types - Rust
    pub struct ExecutionQueryResponse {
    +ExecutionQueryResponse in massa_execution_exports::types - Rust
    pub struct ExecutionQueryResponse {
         pub responses: Vec<Result<ExecutionQueryResponseItem, ExecutionQueryError>>,
         pub candidate_cursor: Slot,
         pub final_cursor: Slot,
    @@ -119,4 +119,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionQueryStakerInfo.html b/massa_execution_exports/types/struct.ExecutionQueryStakerInfo.html index 19b1d61d1b4..33886084896 100644 --- a/massa_execution_exports/types/struct.ExecutionQueryStakerInfo.html +++ b/massa_execution_exports/types/struct.ExecutionQueryStakerInfo.html @@ -1,4 +1,4 @@ -ExecutionQueryStakerInfo in massa_execution_exports::types - Rust
    pub struct ExecutionQueryStakerInfo {
    +ExecutionQueryStakerInfo in massa_execution_exports::types - Rust
    pub struct ExecutionQueryStakerInfo {
         pub active_rolls: u64,
         pub production_stats: ProductionStats,
     }
    Expand description

    Staker information for a given cycle

    @@ -115,4 +115,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ExecutionStackElement.html b/massa_execution_exports/types/struct.ExecutionStackElement.html index a4f99c45ece..08d04f35951 100644 --- a/massa_execution_exports/types/struct.ExecutionStackElement.html +++ b/massa_execution_exports/types/struct.ExecutionStackElement.html @@ -1,4 +1,4 @@ -ExecutionStackElement in massa_execution_exports::types - Rust
    pub struct ExecutionStackElement {
    +ExecutionStackElement in massa_execution_exports::types - Rust
    pub struct ExecutionStackElement {
         pub address: Address,
         pub coins: Amount,
         pub owned_addresses: Vec<Address>,
    @@ -135,4 +135,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ReadOnlyCallRequest.html b/massa_execution_exports/types/struct.ReadOnlyCallRequest.html index fceae39bf91..6351a4890b4 100644 --- a/massa_execution_exports/types/struct.ReadOnlyCallRequest.html +++ b/massa_execution_exports/types/struct.ReadOnlyCallRequest.html @@ -1,4 +1,4 @@ -ReadOnlyCallRequest in massa_execution_exports::types - Rust
    pub struct ReadOnlyCallRequest {
    +ReadOnlyCallRequest in massa_execution_exports::types - Rust
    pub struct ReadOnlyCallRequest {
         pub max_gas: u64,
         pub call_stack: Vec<ExecutionStackElement>,
         pub target_addr: Address,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ReadOnlyExecutionOutput.html b/massa_execution_exports/types/struct.ReadOnlyExecutionOutput.html index c5d50183415..a48c47ecd17 100644 --- a/massa_execution_exports/types/struct.ReadOnlyExecutionOutput.html +++ b/massa_execution_exports/types/struct.ReadOnlyExecutionOutput.html @@ -1,4 +1,4 @@ -ReadOnlyExecutionOutput in massa_execution_exports::types - Rust
    pub struct ReadOnlyExecutionOutput {
    +ReadOnlyExecutionOutput in massa_execution_exports::types - Rust
    pub struct ReadOnlyExecutionOutput {
         pub out: ExecutionOutput,
         pub gas_cost: u64,
         pub call_result: Vec<u8>,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_exports/types/struct.ReadOnlyExecutionRequest.html b/massa_execution_exports/types/struct.ReadOnlyExecutionRequest.html index df584252eee..7f90ca3d613 100644 --- a/massa_execution_exports/types/struct.ReadOnlyExecutionRequest.html +++ b/massa_execution_exports/types/struct.ReadOnlyExecutionRequest.html @@ -1,4 +1,4 @@ -ReadOnlyExecutionRequest in massa_execution_exports::types - Rust
    pub struct ReadOnlyExecutionRequest {
    +ReadOnlyExecutionRequest in massa_execution_exports::types - Rust
    pub struct ReadOnlyExecutionRequest {
         pub max_gas: u64,
         pub call_stack: Vec<ExecutionStackElement>,
         pub target: ReadOnlyExecutionTarget,
    @@ -125,4 +125,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/active_history/enum.HistorySearchResult.html b/massa_execution_worker/active_history/enum.HistorySearchResult.html index 1cc8f691305..91d6301afc9 100644 --- a/massa_execution_worker/active_history/enum.HistorySearchResult.html +++ b/massa_execution_worker/active_history/enum.HistorySearchResult.html @@ -1,4 +1,4 @@ -HistorySearchResult in massa_execution_worker::active_history - Rust
    pub enum HistorySearchResult<T> {
    +HistorySearchResult in massa_execution_worker::active_history - Rust
    pub enum HistorySearchResult<T> {
         Present(T),
         Absent,
         NoInfo,
    @@ -120,4 +120,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/active_history/enum.SlotIndexPosition.html b/massa_execution_worker/active_history/enum.SlotIndexPosition.html index 571f3138364..9ccb18670f6 100644 --- a/massa_execution_worker/active_history/enum.SlotIndexPosition.html +++ b/massa_execution_worker/active_history/enum.SlotIndexPosition.html @@ -1,4 +1,4 @@ -SlotIndexPosition in massa_execution_worker::active_history - Rust
    pub enum SlotIndexPosition {
    +SlotIndexPosition in massa_execution_worker::active_history - Rust
    pub enum SlotIndexPosition {
         Past,
         Future,
         Found(usize),
    @@ -119,4 +119,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/active_history/struct.ActiveHistory.html b/massa_execution_worker/active_history/struct.ActiveHistory.html index c243e8780db..e2352853462 100644 --- a/massa_execution_worker/active_history/struct.ActiveHistory.html +++ b/massa_execution_worker/active_history/struct.ActiveHistory.html @@ -1,6 +1,6 @@ -ActiveHistory in massa_execution_worker::active_history - Rust
    pub(crate) struct ActiveHistory(pub VecDeque<ExecutionOutput>);
    Expand description

    History of the outputs of recently executed slots. +ActiveHistory in massa_execution_worker::active_history - Rust

    pub(crate) struct ActiveHistory(pub VecDeque<ExecutionOutput>);
    Expand description

    History of the outputs of recently executed slots. Slots should be consecutive, oldest at the beginning and latest at the back.

    -

    Tuple Fields§

    §0: VecDeque<ExecutionOutput>

    Implementations§

    source§

    impl ActiveHistory

    source

    pub fn truncate_from(&mut self, slot: &Slot, thread_count: u8)

    Remove slot and the slots after it from history

    +

    Tuple Fields§

    §0: VecDeque<ExecutionOutput>

    Implementations§

    source§

    impl ActiveHistory

    source

    pub fn truncate_from(&mut self, slot: &Slot, thread_count: u8)

    Remove slot and the slots after it from history

    source

    pub fn fetch_executed_op(&self, op_id: &OperationId) -> HistorySearchResult<()>

    Lazily query (from end to beginning) the active list of executed ops to check if an op was executed.

    Returns a HistorySearchResult.

    source

    pub fn fetch_message( @@ -164,4 +164,5 @@

    §Return va V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/context/struct.ExecutionContext.html b/massa_execution_worker/context/struct.ExecutionContext.html index ff4e95ed35b..b16b701f91c 100644 --- a/massa_execution_worker/context/struct.ExecutionContext.html +++ b/massa_execution_worker/context/struct.ExecutionContext.html @@ -1,5 +1,5 @@ -ExecutionContext in massa_execution_worker::context - Rust

    Struct massa_execution_worker::context::ExecutionContext

    source ·
    pub struct ExecutionContext {
    Show 24 fields - config: ExecutionConfig, +ExecutionContext in massa_execution_worker::context - Rust

    Struct massa_execution_worker::context::ExecutionContext

    source ·
    pub struct ExecutionContext {
    Show 24 fields + config: ExecutionConfig, speculative_ledger: SpeculativeLedger, speculative_async_pool: SpeculativeAsyncPool, speculative_deferred_calls: SpeculativeDeferredCallRegistry, @@ -12,9 +12,9 @@ pub created_event_index: u64, pub created_message_index: u64, pub opt_block_id: Option<BlockId>, - pub stack: Vec<ExecutionStackElement>, + pub stack: Vec<ExecutionStackElement>, pub read_only: bool, - pub events: EventStore, + pub events: EventStore, pub unsafe_rng: Xoshiro256PlusPlus, pub creator_address: Option<Address>, pub origin_operation_id: Option<OperationId>, @@ -26,7 +26,7 @@
    }
    Expand description

    An execution context that needs to be initialized before executing bytecode, passed to the VM to interact with during bytecode execution (through ABIs), and read after execution to gather results.

    -

    Fields§

    §config: ExecutionConfig

    configuration

    +

    Fields§

    §config: ExecutionConfig

    configuration

    §speculative_ledger: SpeculativeLedger

    speculative ledger state, as seen after everything that happened so far in the context

    §speculative_async_pool: SpeculativeAsyncPool

    speculative asynchronous pool state, @@ -42,9 +42,9 @@

    §created_event_index: u64

    counter of newly created events so far during this execution

    §created_message_index: u64

    counter of newly created messages so far during this execution

    §opt_block_id: Option<BlockId>

    block Id, if one is present at the execution slot

    -
    §stack: Vec<ExecutionStackElement>

    address call stack, most recent is at the back

    +
    §stack: Vec<ExecutionStackElement>

    address call stack, most recent is at the back

    §read_only: bool

    True if it’s a read-only context

    -
    §events: EventStore

    generated events during this execution, with multiple indexes

    +
    §events: EventStore

    generated events during this execution, with multiple indexes

    §unsafe_rng: Xoshiro256PlusPlus

    Unsafe random state (can be predicted and manipulated)

    §creator_address: Option<Address>

    Creator address. The bytecode of this address can’t be modified

    §origin_operation_id: Option<OperationId>

    operation id that originally caused this execution (if any)

    @@ -55,7 +55,7 @@ so excluding the gas used by the last sc call.

    §recursion_counter: u16

    recursion counter, incremented for each new nested call

    Implementations§

    source§

    impl ExecutionContext

    source

    pub(crate) fn new( - config: ExecutionConfig, + config: ExecutionConfig, final_state: Arc<RwLock<dyn FinalStateController>>, active_history: Arc<RwLock<ActiveHistory>>, module_cache: Arc<RwLock<ModuleCache>>, @@ -77,7 +77,7 @@

    §returns
    source

    pub fn reset_to_snapshot( &mut self, snapshot: ExecutionContextSnapshot, - error: ExecutionError, + error: ExecutionError, )

    Resets context to an existing snapshot. Optionally emits an error as an event after restoring the snapshot. Note that the snapshot does not include slot-level information such as the slot number or block ID.

    @@ -87,9 +87,9 @@
    §Argumentserror: an execution error to emit as an event conserved after snapshot reset.
    source

    pub(crate) fn readonly( - config: ExecutionConfig, + config: ExecutionConfig, slot: Slot, - call_stack: Vec<ExecutionStackElement>, + call_stack: Vec<ExecutionStackElement>, final_state: Arc<RwLock<dyn FinalStateController>>, active_history: Arc<RwLock<ActiveHistory>>, module_cache: Arc<RwLock<ModuleCache>>, @@ -120,7 +120,7 @@

    §Returns
  • AsyncMessage is the asynchronous message to execute
  • source

    pub(crate) fn active_slot( - config: ExecutionConfig, + config: ExecutionConfig, slot: Slot, opt_block_id: Option<BlockId>, final_state: Arc<RwLock<dyn FinalStateController>>, @@ -137,18 +137,18 @@

    §arguments
    §returns

    A ExecutionContext instance

    -
    source

    pub fn get_current_address(&self) -> Result<Address, ExecutionError>

    Gets the address at the top of the call stack, if any

    +
    source

    pub fn get_current_address(&self) -> Result<Address, ExecutionError>

    Gets the address at the top of the call stack, if any

    source

    pub fn get_current_owned_addresses( &self, -) -> Result<Vec<Address>, ExecutionError>

    Gets the current list of owned addresses (top of the stack) +) -> Result<Vec<Address>, ExecutionError>

    Gets the current list of owned addresses (top of the stack) Ordering is conserved for determinism

    -
    source

    pub fn get_current_call_coins(&self) -> Result<Amount, ExecutionError>

    Gets the current call coins

    +
    source

    pub fn get_current_call_coins(&self) -> Result<Amount, ExecutionError>

    Gets the current call coins

    source

    pub fn get_call_stack(&self) -> Vec<Address>

    Gets the addresses from the call stack (last = top of the stack)

    source

    pub fn has_write_rights_on(&self, addr: &Address) -> bool

    Checks whether the context currently grants write access to a given address

    source

    pub fn create_new_sc_address( &mut self, bytecode: Bytecode, -) -> Result<Address, ExecutionError>

    Creates a new smart contract address with initial bytecode, and returns this address

    +) -> Result<Address, ExecutionError>

    Creates a new smart contract address with initial bytecode, and returns this address

    source

    pub fn get_bytecode(&self, address: &Address) -> Option<Bytecode>

    gets the bytecode of an address if it exists in the speculative ledger, or returns None

    source

    pub fn get_keys( &self, @@ -163,7 +163,7 @@

    §returns
    address: &Address, key: Vec<u8>, data: Vec<u8>, -) -> Result<(), ExecutionError>

    Sets a datastore entry for an address in the speculative ledger. +) -> Result<(), ExecutionError>

    Sets a datastore entry for an address in the speculative ledger. Fail if the address is absent from the ledger. The datastore entry is created if it is absent for that address.

    §Arguments
    @@ -177,7 +177,7 @@
    §ArgumentsAddress, key: Vec<u8>, data: Vec<u8>, -) -> Result<(), ExecutionError>

    Appends data to a datastore entry for an address in the speculative ledger. +) -> Result<(), ExecutionError>

    Appends data to a datastore entry for an address in the speculative ledger. Fail if the address is absent from the ledger. Fails if the datastore entry is absent for that address.

    §Arguments
    @@ -190,7 +190,7 @@
    §ArgumentsAddress, key: &[u8], -) -> Result<(), ExecutionError>

    Deletes a datastore entry for an address. +) -> Result<(), ExecutionError>

    Deletes a datastore entry for an address. Fails if the address or the entry does not exist or if write access rights are missing.

    §Arguments
      @@ -203,7 +203,7 @@
      §ArgumentsOption<Address>, amount: Amount, check_rights: bool, -) -> Result<(), ExecutionError>

      Transfers coins from one address to another. +) -> Result<(), ExecutionError>

      Transfers coins from one address to another. No changes are retained in case of failure. Spending is only allowed from existing addresses we have write access on

      §Arguments
      @@ -237,7 +237,7 @@
      §Arguments &mut self, seller_addr: &Address, roll_count: u64, -) -> Result<(), ExecutionError>

      Try to sell roll_count rolls from the seller address.

      +) -> Result<(), ExecutionError>

      Try to sell roll_count rolls from the seller address.

      §Arguments
      • seller_addr: address to sell the rolls from
      • @@ -247,7 +247,7 @@
        §Arguments &mut self, denounced_addr: &Address, roll_count: u64, -) -> Result<Amount, ExecutionError>

        Try to slash roll_count rolls from the denounced address. If not enough rolls, +) -> Result<Amount, ExecutionError>

        Try to slash roll_count rolls from the denounced address. If not enough rolls, slash the available amount and return the result

        §Arguments
          @@ -276,8 +276,8 @@
          §Arguments
    source

    pub fn settle_slot( &mut self, - block_info: Option<ExecutedBlockInfo>, -) -> ExecutionOutput

    Finishes a slot and generates the execution output. + block_info: Option<ExecutedBlockInfo>, +) -> ExecutionOutput

    Finishes a slot and generates the execution output. Settles emitted asynchronous messages, reimburse the senders of deleted messages. Moves the output of the execution out of the context, resetting some context fields in the process.

    @@ -287,7 +287,7 @@
    §Arguments &mut self, address: &Address, bytecode: Bytecode, -) -> Result<(), ExecutionError>

    Sets a bytecode for an address in the speculative ledger. +) -> Result<(), ExecutionError>

    Sets a bytecode for an address in the speculative ledger. Fail if the address is absent from the ledger.

    §Arguments
      @@ -334,7 +334,7 @@
      §Arguments
    source

    pub fn check_target_sc_address( &self, target_sc_address: Address, -) -> Result<(), ExecutionError>

    in case of

    +) -> Result<(), ExecutionError>

    in case of

    async_msg, call OP, call SC to SC, read only call

    check if the given address is a smart contract address and if it exists returns an error instead

    @@ -347,11 +347,11 @@
    §Arguments max_gas_request: u64, current_slot: Slot, params_size: u64, -) -> Result<Amount, ExecutionError>

    Get the price it would cost to reserve “gas” with params at target slot “slot”.

    +) -> Result<Amount, ExecutionError>

    Get the price it would cost to reserve “gas” with params at target slot “slot”.

    source

    pub fn deferred_call_register( &mut self, call: DeferredCall, -) -> Result<DeferredCallId, ExecutionError>

    source

    pub fn deferred_call_exists(&self, call_id: &DeferredCallId) -> bool

    Check if a deferred call exists +) -> Result<DeferredCallId, ExecutionError>

    source

    pub fn deferred_call_exists(&self, call_id: &DeferredCallId) -> bool

    Check if a deferred call exists If it exists, check if it has been cancelled If it has been cancelled, return false

    source

    pub fn get_deferred_call( @@ -367,7 +367,7 @@

    §Arguments &mut self, call_id: &DeferredCallId, caller_address: Address, -) -> Result<(), ExecutionError>

    when a deferred call is cancelled we need to refund the coins to the caller

    +) -> Result<(), ExecutionError>

    when a deferred call is cancelled we need to refund the coins to the caller

    source

    pub fn get_deferred_calls_by_slot( &self, slot: Slot, @@ -483,4 +483,5 @@

    §Arguments V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/context/struct.ExecutionContextSnapshot.html b/massa_execution_worker/context/struct.ExecutionContextSnapshot.html index f370b9270ad..db5e690b1d4 100644 --- a/massa_execution_worker/context/struct.ExecutionContextSnapshot.html +++ b/massa_execution_worker/context/struct.ExecutionContextSnapshot.html @@ -1,4 +1,4 @@ -ExecutionContextSnapshot in massa_execution_worker::context - Rust
    pub struct ExecutionContextSnapshot {
    Show 15 fields +ExecutionContextSnapshot in massa_execution_worker::context - Rust
    pub struct ExecutionContextSnapshot {
    Show 15 fields pub ledger_changes: LedgerChanges, pub async_pool_changes: AsyncPoolChanges, pub deferred_calls_changes: DeferredCallRegistryChanges, @@ -9,7 +9,7 @@ pub created_addr_index: u64, pub created_event_index: u64, pub created_message_index: u64, - pub stack: Vec<ExecutionStackElement>, + pub stack: Vec<ExecutionStackElement>, pub event_count: usize, pub unsafe_rng: Xoshiro256PlusPlus, pub gas_remaining_before_subexecution: Option<u64>, @@ -26,7 +26,7 @@
    §created_addr_index: u64

    counter of newly created addresses so far at this slot during this execution

    §created_event_index: u64

    counter of newly created events so far during this execution

    §created_message_index: u64

    counter of async messages emitted so far in this execution

    -
    §stack: Vec<ExecutionStackElement>

    address call stack, most recent is at the back

    +
    §stack: Vec<ExecutionStackElement>

    address call stack, most recent is at the back

    §event_count: usize

    keep the count of event emitted in the context

    §unsafe_rng: Xoshiro256PlusPlus

    Unsafe random state

    §gas_remaining_before_subexecution: Option<u64>

    The gas remaining before the last subexecution. @@ -145,4 +145,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/controller/struct.ExecutionControllerImpl.html b/massa_execution_worker/controller/struct.ExecutionControllerImpl.html index 3929f3f632c..358ccee4089 100644 --- a/massa_execution_worker/controller/struct.ExecutionControllerImpl.html +++ b/massa_execution_worker/controller/struct.ExecutionControllerImpl.html @@ -1,15 +1,15 @@ -ExecutionControllerImpl in massa_execution_worker::controller - Rust
    pub struct ExecutionControllerImpl {
    +ExecutionControllerImpl in massa_execution_worker::controller - Rust
    pub struct ExecutionControllerImpl {
         pub(crate) input_data: Arc<(Condvar, Mutex<ExecutionInputData>)>,
         pub(crate) execution_state: Arc<RwLock<ExecutionState>>,
     }
    Expand description

    implementation of the execution controller

    Fields§

    §input_data: Arc<(Condvar, Mutex<ExecutionInputData>)>

    input data to process in the Execution controller loop with a wake-up condition variable that needs to be triggered when the data changes

    §execution_state: Arc<RwLock<ExecutionState>>

    current execution state (see execution.rs for details)

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionControllerImpl

    source§

    fn clone(&self) -> ExecutionControllerImpl

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl ExecutionController for ExecutionControllerImpl

    Trait Implementations§

    source§

    impl Clone for ExecutionControllerImpl

    source§

    fn clone(&self) -> ExecutionControllerImpl

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl ExecutionController for ExecutionControllerImpl

    source§

    fn update_blockclique_status( &self, finalized_blocks: HashMap<Slot, BlockId>, new_blockclique: Option<HashMap<Slot, BlockId>>, - block_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>, + block_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>, )

    Updates blockclique status by signaling newly finalized blocks and the latest blockclique.

    §Arguments
      @@ -17,8 +17,8 @@
      §Arguments
    • blockclique: new blockclique (if changed). Indexed by slot.
    • block_metadata: storage instances and metadata for new blocks. Each storage owns refs to the block and its ops/endorsements.
    -
    source§

    fn query_state(&self, req: ExecutionQueryRequest) -> ExecutionQueryResponse

    Atomically query the execution state with multiple requests

    -
    source§

    fn get_filtered_sc_output_event( +

    source§

    fn query_state(&self, req: ExecutionQueryRequest) -> ExecutionQueryResponse

    Atomically query the execution state with multiple requests

    +
    source§

    fn get_filtered_sc_output_event( &self, filter: EventFilter, ) -> Vec<SCOutputEvent>

    Get the generated execution events, optionally filtered by:

    @@ -29,7 +29,7 @@
    §Arguments
  • original caller address
  • operation id
  • -
    source§

    fn get_final_and_candidate_balance( +

    source§

    fn get_final_and_candidate_balance( &self, addresses: &[Address], ) -> Vec<(Option<Amount>, Option<Amount>)>

    Get the final and candidate values of balance.

    @@ -37,7 +37,7 @@
    §Return va
    • (final_balance, candidate_balance)
    -
    source§

    fn get_final_and_active_data_entry( +

    source§

    fn get_final_and_active_data_entry( &self, input: Vec<(Address, Vec<u8>)>, ) -> Vec<(Option<Vec<u8>>, Option<Vec<u8>>)>

    Get a copy of a single datastore entry with its final and active values

    @@ -45,27 +45,27 @@
    §Retur
    • Vec<(final_data_entry, active_data_entry)>
    -
    source§

    fn get_cycle_active_rolls(&self, cycle: u64) -> BTreeMap<Address, u64>

    Return the active rolls distribution for the given cycle

    -
    source§

    fn execute_readonly_request( +

    source§

    fn get_cycle_active_rolls(&self, cycle: u64) -> BTreeMap<Address, u64>

    Return the active rolls distribution for the given cycle

    +
    source§

    fn execute_readonly_request( &self, - req: ReadOnlyExecutionRequest, -) -> Result<ReadOnlyExecutionOutput, ExecutionError>

    Executes a read-only request + req: ReadOnlyExecutionRequest, +) -> Result<ReadOnlyExecutionOutput, ExecutionError>

    Executes a read-only request Read-only requests do not modify consensus state

    -
    source§

    fn get_denunciation_execution_status( +

    source§

    fn get_denunciation_execution_status( &self, denunciation_index: &DenunciationIndex, ) -> (bool, bool)

    Check if a denunciation has been executed given a DenunciationIndex Returns a tuple of booleans: (speculative_execution_status, final_execution_status)

    -
    source§

    fn get_addresses_infos( +

    source§

    fn get_addresses_infos( &self, addresses: &[Address], deferred_credits_max_slot: Bound<Slot>, -) -> Vec<ExecutionAddressInfo>

    Gets information about a batch of addresses

    -
    source§

    fn get_stats(&self) -> ExecutionStats

    Get execution statistics

    -
    source§

    fn clone_box(&self) -> Box<dyn ExecutionController>

    Returns a boxed clone of self. +) -> Vec<ExecutionAddressInfo>

    Gets information about a batch of addresses

    +
    source§

    fn get_stats(&self) -> ExecutionStats

    Get execution statistics

    +
    source§

    fn clone_box(&self) -> Box<dyn ExecutionController>

    Returns a boxed clone of self. Allows cloning Box<dyn ExecutionController>, see massa-execution-exports/controller_traits.rs

    -
    source§

    fn get_ops_exec_status( +

    source§

    fn get_ops_exec_status( &self, batch: &[OperationId], ) -> Vec<(Option<bool>, Option<bool>)>

    See trait definition

    @@ -184,4 +184,5 @@
    §Retur V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/controller/struct.ExecutionInputData.html b/massa_execution_worker/controller/struct.ExecutionInputData.html index b9e8961eaf7..13d747f87bd 100644 --- a/massa_execution_worker/controller/struct.ExecutionInputData.html +++ b/massa_execution_worker/controller/struct.ExecutionInputData.html @@ -1,16 +1,16 @@ -ExecutionInputData in massa_execution_worker::controller - Rust
    pub(crate) struct ExecutionInputData {
    +ExecutionInputData in massa_execution_worker::controller - Rust
    pub(crate) struct ExecutionInputData {
         pub stop: bool,
         pub finalized_blocks: HashMap<Slot, BlockId>,
         pub new_blockclique: Option<HashMap<Slot, BlockId>>,
    -    pub block_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>,
    -    pub readonly_requests: RequestQueue<ReadOnlyExecutionRequest, ReadOnlyExecutionOutput>,
    +    pub block_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>,
    +    pub readonly_requests: RequestQueue<ReadOnlyExecutionRequest, ReadOnlyExecutionOutput>,
     }
    Expand description

    structure used to communicate with execution thread

    Fields§

    §stop: bool

    set stop to true to stop the thread

    §finalized_blocks: HashMap<Slot, BlockId>

    list of newly finalized blocks

    §new_blockclique: Option<HashMap<Slot, BlockId>>

    new blockclique (if there is a new one)

    -
    §block_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>

    storage instances for previously unprocessed blocks

    -
    §readonly_requests: RequestQueue<ReadOnlyExecutionRequest, ReadOnlyExecutionOutput>

    queue for read-only execution requests and response MPSCs to send back their outputs

    -

    Implementations§

    source§

    impl ExecutionInputData

    source

    pub fn new(config: ExecutionConfig) -> Self

    Creates a new empty ExecutionInputData

    +
    §block_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>

    storage instances for previously unprocessed blocks

    +
    §readonly_requests: RequestQueue<ReadOnlyExecutionRequest, ReadOnlyExecutionOutput>

    queue for read-only execution requests and response MPSCs to send back their outputs

    +

    Implementations§

    source§

    impl ExecutionInputData

    source

    pub fn new(config: ExecutionConfig) -> Self

    Creates a new empty ExecutionInputData

    source

    pub fn take(&mut self) -> Self

    Takes the current input data into a clone that is returned, and resets self.

    Trait Implementations§

    source§

    impl Display for ExecutionInputData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/controller/struct.ExecutionManagerImpl.html b/massa_execution_worker/controller/struct.ExecutionManagerImpl.html index a7ecd8d7b72..9484add98d3 100644 --- a/massa_execution_worker/controller/struct.ExecutionManagerImpl.html +++ b/massa_execution_worker/controller/struct.ExecutionManagerImpl.html @@ -1,4 +1,4 @@ -ExecutionManagerImpl in massa_execution_worker::controller - Rust
    pub struct ExecutionManagerImpl {
    +ExecutionManagerImpl in massa_execution_worker::controller - Rust
    pub struct ExecutionManagerImpl {
         pub(crate) input_data: Arc<(Condvar, Mutex<ExecutionInputData>)>,
         pub(crate) thread_handle: Option<JoinHandle<()>>,
     }
    Expand description

    Execution manager @@ -6,7 +6,7 @@

    Fields§

    §input_data: Arc<(Condvar, Mutex<ExecutionInputData>)>

    input data to process in the Execution manager loop with a wake-up condition variable that needs to be triggered when the data changes

    §thread_handle: Option<JoinHandle<()>>

    handle used to join the worker thread

    -

    Trait Implementations§

    source§

    impl ExecutionManager for ExecutionManagerImpl

    source§

    fn stop(&mut self)

    stops the worker

    +

    Trait Implementations§

    source§

    impl ExecutionManager for ExecutionManagerImpl

    source§

    fn stop(&mut self)

    stops the worker

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -118,4 +118,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution/index.html b/massa_execution_worker/execution/index.html index 619b4d0639c..d8897da7db3 100644 --- a/massa_execution_worker/execution/index.html +++ b/massa_execution_worker/execution/index.html @@ -1,4 +1,4 @@ -massa_execution_worker::execution - Rust

    Module massa_execution_worker::execution

    source ·
    Expand description

    This module deals with executing final and active slots, as well as read-only requests. +massa_execution_worker::execution - Rust

    Module massa_execution_worker::execution

    source ·
    Expand description

    This module deals with executing final and active slots, as well as read-only requests. It also keeps a history of executed slots, thus holding the speculative state of the ledger.

    Execution usually happens in the following way:

    source

    pub fn execute_operation( &self, operation: &SecureShareOperation, block_slot: Slot, remaining_block_gas: &mut u64, block_credits: &mut Amount, -) -> Result<(), ExecutionError>

    Execute an operation in the context of a block. +) -> Result<(), ExecutionError>

    Execute an operation in the context of a block. Assumes the execution context was initialized at the beginning of the slot.

    §Arguments
      @@ -76,44 +77,44 @@
      §Argumentsremaining_block_gas: mutable reference towards the remaining gas in the block
    • block_credits: mutable reference towards the total block reward/fee credits
    -
    source

    fn execute_denunciation( +

    source

    fn execute_denunciation( &self, denunciation: &Denunciation, block_slot: &Slot, block_credits: &mut Amount, -) -> Result<DenunciationResult, ExecutionError>

    Execute a denunciation in the context of a block.

    +) -> Result<DenunciationResult, ExecutionError>

    Execute a denunciation in the context of a block.

    §Arguments
    • denunciation: denunciation to process
    • block_credits: mutable reference towards the total block reward/fee credits
    -
    source

    pub fn execute_roll_sell_op( +

    source

    pub fn execute_roll_sell_op( &self, operation: &OperationType, seller_addr: Address, -) -> Result<(), ExecutionError>

    Execute an operation of type RollSell +) -> Result<(), ExecutionError>

    Execute an operation of type RollSell Will panic if called with another operation type

    §Arguments
    • operation: the WrappedOperation to process, must be an RollSell
    • sender_addr: address of the sender
    -
    source

    pub fn execute_roll_buy_op( +

    source

    pub fn execute_roll_buy_op( &self, operation: &OperationType, buyer_addr: Address, -) -> Result<(), ExecutionError>

    Execute an operation of type RollBuy +) -> Result<(), ExecutionError>

    Execute an operation of type RollBuy Will panic if called with another operation type

    §Arguments
    • operation: the WrappedOperation to process, must be an RollBuy
    • buyer_addr: address of the buyer
    -
    source

    pub fn execute_transaction_op( +

    source

    pub fn execute_transaction_op( &self, operation: &OperationType, sender_addr: Address, -) -> Result<(), ExecutionError>

    Execute an operation of type Transaction +) -> Result<(), ExecutionError>

    Execute an operation of type Transaction Will panic if called with another operation type

    §Arguments
      @@ -121,22 +122,22 @@
      §Argumentsoperation_id: ID of the operation
    • sender_addr: address of the sender
    -
    source

    pub fn execute_executesc_op( +

    source

    pub fn execute_executesc_op( &self, operation: &OperationType, sender_addr: Address, -) -> Result<(), ExecutionError>

    Execute an operation of type ExecuteSC +) -> Result<(), ExecutionError>

    Execute an operation of type ExecuteSC Will panic if called with another operation type

    §Arguments
    • operation: the WrappedOperation to process, must be an ExecuteSC
    • sender_addr: address of the sender
    -
    source

    pub fn execute_callsc_op( +

    source

    pub fn execute_callsc_op( &self, operation: &OperationType, sender_addr: Address, -) -> Result<(), ExecutionError>

    Execute an operation of type CallSC +) -> Result<(), ExecutionError>

    Execute an operation of type CallSC Will panic if called with another operation type

    §Arguments
      @@ -145,27 +146,27 @@
      §Arguments
    • operation_id: ID of the operation
    • sender_addr: address of the sender
    -
    source

    pub fn execute_async_message( +

    source

    pub fn execute_async_message( &self, message: AsyncMessage, bytecode: Option<Bytecode>, -) -> Result<AsyncMessageExecutionResult, ExecutionError>

    Tries to execute an asynchronous message +) -> Result<AsyncMessageExecutionResult, ExecutionError>

    Tries to execute an asynchronous message If the execution failed reimburse the message sender.

    §Arguments
    • message: message information
    • bytecode: executable target bytecode, or None if unavailable
    -
    source

    fn execute_deferred_call( +
    source

    fn execute_deferred_call( &self, id: &DeferredCallId, call: DeferredCall, -) -> Result<DeferredCallExecutionResult, ExecutionError>

    source

    pub fn execute_slot( +) -> Result<DeferredCallExecutionResult, ExecutionError>

    source

    pub fn execute_slot( &self, slot: &Slot, - exec_target: Option<&(BlockId, ExecutionBlockMetadata)>, + exec_target: Option<&(BlockId, ExecutionBlockMetadata)>, selector: Box<dyn SelectorController>, -) -> ExecutionOutput

    Executes a full slot (with or without a block inside) without causing any changes to the state, +) -> ExecutionOutput

    Executes a full slot (with or without a block inside) without causing any changes to the state, just yielding the execution output.

    §Arguments
      @@ -175,22 +176,22 @@
      §Arguments
    §Returns

    An ExecutionOutput structure summarizing the output of the executed slot

    -
    source

    pub fn execute_candidate_slot( +

    source

    pub fn execute_candidate_slot( &mut self, slot: &Slot, - exec_target: Option<&(BlockId, ExecutionBlockMetadata)>, + exec_target: Option<&(BlockId, ExecutionBlockMetadata)>, selector: Box<dyn SelectorController>, )

    Execute a candidate slot

    -
    source

    pub fn execute_final_slot( +

    source

    pub fn execute_final_slot( &mut self, slot: &Slot, - exec_target: Option<&(BlockId, ExecutionBlockMetadata)>, + exec_target: Option<&(BlockId, ExecutionBlockMetadata)>, selector: Box<dyn SelectorController>, )

    Execute an SCE-final slot

    -
    source

    pub(crate) fn execute_readonly_request( +

    source

    pub(crate) fn execute_readonly_request( &self, - req: ReadOnlyExecutionRequest, -) -> Result<ReadOnlyExecutionOutput, ExecutionError>

    Runs a read-only execution request. + req: ReadOnlyExecutionRequest, +) -> Result<ReadOnlyExecutionOutput, ExecutionError>

    Runs a read-only execution request. The executed bytecode appears to be able to read and write the consensus state, but all accumulated changes are simply returned as an ExecutionOutput object, and not actually applied to the consensus state.

    @@ -200,32 +201,32 @@
    §Arguments
    §Returns

    ExecutionOutput describing the output of the execution, or an error

    -
    source

    pub fn get_final_and_candidate_balance( +

    source

    pub fn get_final_and_candidate_balance( &self, address: &Address, ) -> (Option<Amount>, Option<Amount>)

    Gets a balance both at the latest final and candidate executed slots

    -
    source

    pub fn get_final_and_active_bytecode( +

    source

    pub fn get_final_and_active_bytecode( &self, address: &Address, ) -> (Option<Bytecode>, Option<Bytecode>)

    Gets a balance both at the latest final and candidate executed slots

    -
    source

    pub fn get_final_and_candidate_rolls(&self, address: &Address) -> (u64, u64)

    Gets roll counts both at the latest final and active executed slots

    -
    source

    pub fn get_final_and_active_data_entry( +

    source

    pub fn get_final_and_candidate_rolls(&self, address: &Address) -> (u64, u64)

    Gets roll counts both at the latest final and active executed slots

    +
    source

    pub fn get_final_and_active_data_entry( &self, address: &Address, key: &[u8], ) -> (Option<Vec<u8>>, Option<Vec<u8>>)

    Gets a data entry both at the latest final and active executed slots

    -
    source

    pub fn get_final_and_candidate_datastore_keys( +

    source

    pub fn get_final_and_candidate_datastore_keys( &self, addr: &Address, prefix: &[u8], ) -> (Option<BTreeSet<Vec<u8>>>, Option<BTreeSet<Vec<u8>>>)

    Get every final and active datastore key of the given address

    -
    source

    pub fn get_address_cycle_infos( +
    source

    pub fn get_address_cycle_infos( &self, address: &Address, -) -> Vec<ExecutionAddressCycleInfo>

    source

    pub fn get_cycle_active_rolls(&self, cycle: u64) -> BTreeMap<Address, u64>

    Returns for a given cycle the stakers taken into account +) -> Vec<ExecutionAddressCycleInfo>

    source

    pub fn get_cycle_active_rolls(&self, cycle: u64) -> BTreeMap<Address, u64>

    Returns for a given cycle the stakers taken into account by the selector. That correspond to the roll_counts in cycle - 3.

    By default it returns an empty map.

    -
    source

    pub fn get_filtered_sc_output_event( +

    source

    pub fn get_filtered_sc_output_event( &self, filter: EventFilter, ) -> Vec<SCOutputEvent>

    Gets execution events optionally filtered by:

    @@ -237,7 +238,7 @@
    §Returns
  • operation id
  • event state (final, candidate or both)
  • -
    source

    pub fn get_denunciation_execution_status( +

    source

    pub fn get_denunciation_execution_status( &self, denunciation_index: &DenunciationIndex, ) -> (bool, bool)

    Check if a denunciation has been executed given a DenunciationIndex @@ -246,22 +247,22 @@

    §Returns
  • first boolean is true if the denunciation has been executed speculatively
  • second boolean is true if the denunciation has been executed in the final state
  • -
    source

    pub fn get_cycle_infos( +

    source

    pub fn get_cycle_infos( &self, cycle: u64, restrict_to_addresses: Option<&PreHashSet<Address>>, -) -> Option<ExecutionQueryCycleInfos>

    Get cycle infos

    -
    source

    pub fn get_address_future_deferred_credits( +) -> Option<ExecutionQueryCycleInfos>

    Get cycle infos

    +
    source

    pub fn get_address_future_deferred_credits( &self, address: &Address, max_slot: Bound<Slot>, ) -> BTreeMap<Slot, Amount>

    Get future deferred credits of an address

    -
    source

    pub fn get_address_deferred_credits( +

    source

    pub fn get_address_deferred_credits( &self, address: &Address, ) -> (BTreeMap<Slot, Amount>, BTreeMap<Slot, Amount>)

    Get future deferred credits of an address Returns tuple: (speculative, final)

    -
    source

    pub fn get_ops_exec_status( +

    source

    pub fn get_ops_exec_status( &self, batch: &[OperationId], ) -> Vec<(Option<bool>, Option<bool>)>

    Get the execution status of a batch of operations.

    @@ -270,20 +271,20 @@
    §Returns
    If an Option is None it means that the op execution was not found. Note that old op executions are forgotten. Otherwise, the status is a boolean indicating whether the execution was successful (true) or if there was an error (false.)

    -
    source

    pub fn update_versioning_stats( +

    source

    pub fn update_versioning_stats( &mut self, - block_info: &Option<ExecutedBlockInfo>, + block_info: &Option<ExecutedBlockInfo>, slot: &Slot, )

    Update MipStore with block header stats

    -
    source

    pub fn deferred_call_quote( +
    source

    pub fn deferred_call_quote( &self, target_slot: Slot, max_request_gas: u64, params_size: u64, -) -> (Slot, u64, bool, Amount)

    source

    pub fn deferred_call_info( +) -> (Slot, u64, bool, Amount)

    source

    pub fn deferred_call_info( &self, call_id: &DeferredCallId, -) -> Option<DeferredCall>

    source

    pub fn get_deferred_calls_by_slot(&self, slot: Slot) -> Vec<DeferredCallId>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Option<DeferredCall>

    source

    pub fn get_deferred_calls_by_slot(&self, slot: Slot) -> Vec<DeferredCallId>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -394,4 +395,5 @@
    §Returns
    V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution_info/enum.OperationInfo.html b/massa_execution_worker/execution_info/enum.OperationInfo.html index b6d44a355bf..46e7d2bc3ad 100644 --- a/massa_execution_worker/execution_info/enum.OperationInfo.html +++ b/massa_execution_worker/execution_info/enum.OperationInfo.html @@ -1,4 +1,4 @@ -OperationInfo in massa_execution_worker::execution_info - Rust
    pub enum OperationInfo {
    +OperationInfo in massa_execution_worker::execution_info - Rust
    pub enum OperationInfo {
         RollBuy(u64),
         RollSell(u64),
     }

    Variants§

    §

    RollBuy(u64)

    §

    RollSell(u64)

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -112,4 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution_info/struct.AsyncMessageExecutionResult.html b/massa_execution_worker/execution_info/struct.AsyncMessageExecutionResult.html index ad999a32f9b..7e16ebd47ad 100644 --- a/massa_execution_worker/execution_info/struct.AsyncMessageExecutionResult.html +++ b/massa_execution_worker/execution_info/struct.AsyncMessageExecutionResult.html @@ -1,4 +1,4 @@ -AsyncMessageExecutionResult in massa_execution_worker::execution_info - Rust
    pub struct AsyncMessageExecutionResult {
    +AsyncMessageExecutionResult in massa_execution_worker::execution_info - Rust
    pub struct AsyncMessageExecutionResult {
         pub(crate) success: bool,
         pub(crate) sender: Option<Address>,
         pub(crate) destination: Option<Address>,
    @@ -115,4 +115,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution_info/struct.DeferredCallExecutionResult.html b/massa_execution_worker/execution_info/struct.DeferredCallExecutionResult.html index 0460d48d90e..5dc5dcc1956 100644 --- a/massa_execution_worker/execution_info/struct.DeferredCallExecutionResult.html +++ b/massa_execution_worker/execution_info/struct.DeferredCallExecutionResult.html @@ -1,4 +1,4 @@ -DeferredCallExecutionResult in massa_execution_worker::execution_info - Rust
    pub struct DeferredCallExecutionResult {
    +DeferredCallExecutionResult in massa_execution_worker::execution_info - Rust
    pub struct DeferredCallExecutionResult {
         pub(crate) success: bool,
         pub(crate) sender: Address,
         pub(crate) target_address: Address,
    @@ -116,4 +116,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution_info/struct.DenunciationResult.html b/massa_execution_worker/execution_info/struct.DenunciationResult.html index 714acd6f106..c275c94b97b 100644 --- a/massa_execution_worker/execution_info/struct.DenunciationResult.html +++ b/massa_execution_worker/execution_info/struct.DenunciationResult.html @@ -1,4 +1,4 @@ -DenunciationResult in massa_execution_worker::execution_info - Rust
    pub struct DenunciationResult {
    +DenunciationResult in massa_execution_worker::execution_info - Rust
    pub struct DenunciationResult {
         pub address_denounced: Address,
         pub slot: Slot,
         pub slashed: Amount,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution_info/struct.ExecutionInfo.html b/massa_execution_worker/execution_info/struct.ExecutionInfo.html index 3f5f097eb00..626c392e797 100644 --- a/massa_execution_worker/execution_info/struct.ExecutionInfo.html +++ b/massa_execution_worker/execution_info/struct.ExecutionInfo.html @@ -1,4 +1,4 @@ -ExecutionInfo in massa_execution_worker::execution_info - Rust
    pub struct ExecutionInfo {
    +ExecutionInfo in massa_execution_worker::execution_info - Rust
    pub struct ExecutionInfo {
         info_per_slot: LruMap<Slot, ExecutionInfoForSlot>,
     }

    Fields§

    §info_per_slot: LruMap<Slot, ExecutionInfoForSlot>

    Implementations§

    source§

    impl ExecutionInfo

    source

    pub(crate) fn new(max_slot_size_cache: u32) -> Self

    source

    pub(crate) fn save_for_slot(&mut self, slot: Slot, info: ExecutionInfoForSlot)

    Save transfer for a given slot

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -112,4 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/execution_info/struct.ExecutionInfoForSlot.html b/massa_execution_worker/execution_info/struct.ExecutionInfoForSlot.html index bc69935e5ae..d518a624d82 100644 --- a/massa_execution_worker/execution_info/struct.ExecutionInfoForSlot.html +++ b/massa_execution_worker/execution_info/struct.ExecutionInfoForSlot.html @@ -1,4 +1,4 @@ -ExecutionInfoForSlot in massa_execution_worker::execution_info - Rust
    pub struct ExecutionInfoForSlot {
    +ExecutionInfoForSlot in massa_execution_worker::execution_info - Rust
    pub struct ExecutionInfoForSlot {
         pub(crate) block_producer_reward: Option<(Address, Amount)>,
         pub(crate) endorsement_creator_rewards: HashMap<Address, Amount>,
         pub(crate) endorsement_target_reward: Option<(Address, Amount)>,
    @@ -123,4 +123,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/fn.start_execution_worker.html b/massa_execution_worker/fn.start_execution_worker.html index 6afa755ebb7..8bfe91b4b49 100644 --- a/massa_execution_worker/fn.start_execution_worker.html +++ b/massa_execution_worker/fn.start_execution_worker.html @@ -1,12 +1,13 @@ -start_execution_worker in massa_execution_worker - Rust

    Function massa_execution_worker::start_execution_worker

    source ·
    pub fn start_execution_worker(
    -    config: ExecutionConfig,
    +start_execution_worker in massa_execution_worker - Rust

    Function massa_execution_worker::start_execution_worker

    source ·
    pub fn start_execution_worker(
    +    config: ExecutionConfig,
         final_state: Arc<RwLock<dyn FinalStateController>>,
         selector: Box<dyn SelectorController>,
         mip_store: MipStore,
    -    channels: ExecutionChannels,
    +    channels: ExecutionChannels,
         wallet: Arc<RwLock<Wallet>>,
         massa_metrics: MassaMetrics,
    -) -> (Box<dyn ExecutionManager>, Box<dyn ExecutionController>)
    Expand description

    Launches an execution worker thread and returns an ExecutionManager to interact with it

    + event_cache: Box<dyn EventCacheController>, +) -> (Box<dyn ExecutionManager>, Box<dyn ExecutionController>)
    Expand description

    Launches an execution worker thread and returns an ExecutionManager to interact with it

    §parameters

    Get the datastore keys (aka entries) for a given address

    §Returns

    A list of keys (keys are byte arrays)

    [DeprecatedByNewRuntime] Replaced by get_keys_wasmv1

    @@ -87,10 +87,10 @@
    §Returns
    &self, prefix: &[u8], address: Option<String>, -) -> Result<BTreeSet<Vec<u8>>>

    Get the datastore keys (aka entries) for a given address, or the current address if none is provided

    +) -> Result<BTreeSet<Vec<u8>>>

    Get the datastore keys (aka entries) for a given address, or the current address if none is provided

    §Returns

    A list of keys (keys are byte arrays)

    -
    source§

    fn raw_get_data(&self, key: &[u8]) -> Result<Vec<u8>>

    Gets a datastore value by key for the current address (top of the call stack).

    +
    source§

    fn raw_get_data(&self, key: &[u8]) -> Result<Vec<u8>>

    Gets a datastore value by key for the current address (top of the call stack).

    §Arguments
    • key: string key of the datastore entry to retrieve
    • @@ -98,7 +98,7 @@
      §Arguments§Returns

      The datastore value matching the provided key, if found, otherwise an error.

      [DeprecatedByNewRuntime] Replaced by raw_get_data_wasmv1

      -
    source§

    fn raw_get_data_for(&self, address: &str, key: &[u8]) -> Result<Vec<u8>>

    Gets a datastore value by key for a given address.

    +
    source§

    fn raw_get_data_for(&self, address: &str, key: &[u8]) -> Result<Vec<u8>>

    Gets a datastore value by key for a given address.

    §Arguments
    • address: string representation of the address
    • @@ -111,7 +111,7 @@
      §Returns
      &self, key: &[u8], address: Option<String>, -) -> Result<Vec<u8>>

      Gets a datastore value by key for a given address, or the current address if none is provided.

      +) -> Result<Vec<u8>>

      Gets a datastore value by key for a given address, or the current address if none is provided.

      §Arguments
      • address: string representation of the address
      • @@ -119,7 +119,7 @@
        §Arguments
        §Returns

        The datastore value matching the provided key, if found, otherwise an error.

        -
    source§

    fn raw_set_data(&self, key: &[u8], value: &[u8]) -> Result<()>

    Sets a datastore entry for the current address (top of the call stack). +

    source§

    fn raw_set_data(&self, key: &[u8], value: &[u8]) -> Result<()>

    Sets a datastore entry for the current address (top of the call stack). Fails if the address does not exist. Creates the entry if does not exist.

    §Arguments
    @@ -134,7 +134,7 @@
    §Argumentsstr, key: &[u8], value: &[u8], -) -> Result<()>

    Sets a datastore entry for a given address. +) -> Result<()>

    Sets a datastore entry for a given address. Fails if the address does not exist. Creates the entry if it does not exist.

    §Arguments
    @@ -144,7 +144,7 @@
    §Argumentsvalue: new value to set

    [DeprecatedByNewRuntime] Replaced by raw_set_data_wasmv1

    -
    source§

    fn raw_append_data(&self, key: &[u8], value: &[u8]) -> Result<()>

    Appends data to a datastore entry for the current address (top of the call stack). +

    source§

    fn raw_append_data(&self, key: &[u8], value: &[u8]) -> Result<()>

    Appends data to a datastore entry for the current address (top of the call stack). Fails if the address or entry does not exist.

    §Arguments
      @@ -157,7 +157,7 @@
      §Arguments address: &str, key: &[u8], value: &[u8], -) -> Result<()>

      Appends a value to a datastore entry for a given address. +) -> Result<()>

      Appends a value to a datastore entry for a given address. Fails if the entry or address does not exist.

      §Arguments
        @@ -171,7 +171,7 @@
        §Arguments key: &[u8], value: &[u8], address: Option<String>, -) -> Result<()>

        Appends a value to a datastore entry for a given address, or the current address if none is provided +) -> Result<()>

        Appends a value to a datastore entry for a given address, or the current address if none is provided Fails if the entry or address does not exist.

        §Arguments
          @@ -179,14 +179,14 @@
          §Arguments
        • key: string key of the datastore entry
        • value: value to append
        -
    source§

    fn raw_delete_data(&self, key: &[u8]) -> Result<()>

    Deletes a datastore entry by key for the current address (top of the call stack). +

    source§

    fn raw_delete_data(&self, key: &[u8]) -> Result<()>

    Deletes a datastore entry by key for the current address (top of the call stack). Fails if the address or entry does not exist.

    §Arguments
    • key: string key of the datastore entry to delete

    [DeprecatedByNewRuntime] Replaced by raw_delete_data_wasmv1

    -
    source§

    fn raw_delete_data_for(&self, address: &str, key: &[u8]) -> Result<()>

    Deletes a datastore entry by key for a given address. +

    source§

    fn raw_delete_data_for(&self, address: &str, key: &[u8]) -> Result<()>

    Deletes a datastore entry by key for a given address. Fails if the address or entry does not exist.

    §Arguments
      @@ -198,14 +198,14 @@
      §Arguments &self, key: &[u8], address: Option<String>, -) -> Result<()>

      Deletes a datastore entry by key for a given address, or the current address if none is provided. +) -> Result<()>

      Deletes a datastore entry by key for a given address, or the current address if none is provided. Fails if the address or entry does not exist.

      §Arguments
      • address: string representation of the address
      • key: string key of the datastore entry to delete
      -
    source§

    fn has_data(&self, key: &[u8]) -> Result<bool>

    Checks if a datastore entry exists for the current address (top of the call stack).

    +
    source§

    fn has_data(&self, key: &[u8]) -> Result<bool>

    Checks if a datastore entry exists for the current address (top of the call stack).

    §Arguments
    • key: string key of the datastore entry to retrieve
    • @@ -213,7 +213,7 @@
      §Arguments
      §Returns

      true if the address exists and has the entry matching the provided key in its datastore, otherwise false

      [DeprecatedByNewRuntime] Replaced by has_data_wasmv1

      -
    source§

    fn has_data_for(&self, address: &str, key: &[u8]) -> Result<bool>

    Checks if a datastore entry exists for a given address.

    +
    source§

    fn has_data_for(&self, address: &str, key: &[u8]) -> Result<bool>

    Checks if a datastore entry exists for a given address.

    §Arguments
    • address: string representation of the address
    • @@ -226,7 +226,7 @@
      §Returns
      &self, key: &[u8], address: Option<String>, -) -> Result<bool>

      Checks if a datastore entry exists for a given address, or the current address if none is provided.

      +) -> Result<bool>

      Checks if a datastore entry exists for a given address, or the current address if none is provided.

      §Arguments
      • address: string representation of the address
      • @@ -234,24 +234,24 @@
        §Arguments
      §Returns

      true if the address exists and has the entry matching the provided key in its datastore, otherwise false

      -
    source§

    fn caller_has_write_access(&self) -> Result<bool>

    Check whether or not the caller has write access in the current context

    +
    source§

    fn caller_has_write_access(&self) -> Result<bool>

    Check whether or not the caller has write access in the current context

    §Returns

    true if the caller has write access

    -
    source§

    fn raw_get_bytecode(&self) -> Result<Vec<u8>>

    Returns bytecode of the current address

    +
    source§

    fn raw_get_bytecode(&self) -> Result<Vec<u8>>

    Returns bytecode of the current address

    [DeprecatedByNewRuntime] Replaced by raw_get_bytecode_wasmv1

    -
    source§

    fn raw_get_bytecode_for(&self, address: &str) -> Result<Vec<u8>>

    Returns bytecode of the target address

    +
    source§

    fn raw_get_bytecode_for(&self, address: &str) -> Result<Vec<u8>>

    Returns bytecode of the target address

    [DeprecatedByNewRuntime] Replaced by raw_get_bytecode_wasmv1

    -
    source§

    fn get_bytecode_wasmv1(&self, address: Option<String>) -> Result<Vec<u8>>

    Returns bytecode of the target address, or the current address if not provided

    -
    source§

    fn get_op_keys(&self, prefix_opt: Option<&[u8]>) -> Result<Vec<Vec<u8>>>

    Get the operation datastore keys (aka entries). +

    source§

    fn get_bytecode_wasmv1(&self, address: Option<String>) -> Result<Vec<u8>>

    Returns bytecode of the target address, or the current address if not provided

    +
    source§

    fn get_op_keys(&self, prefix_opt: Option<&[u8]>) -> Result<Vec<Vec<u8>>>

    Get the operation datastore keys (aka entries). Note that the datastore is only accessible to the initial caller level.

    §Returns

    A list of keys (keys are byte arrays)

    [DeprecatedByNewRuntime] Replaced by get_op_keys_wasmv1

    -
    source§

    fn get_op_keys_wasmv1(&self, prefix: &[u8]) -> Result<Vec<Vec<u8>>>

    Get the operation datastore keys (aka entries). +

    source§

    fn get_op_keys_wasmv1(&self, prefix: &[u8]) -> Result<Vec<Vec<u8>>>

    Get the operation datastore keys (aka entries). Note that the datastore is only accessible to the initial caller level.

    §Returns

    A list of keys (keys are byte arrays) that match the given prefix

    -
    source§

    fn op_entry_exists(&self, key: &[u8]) -> Result<bool>

    Checks if an operation datastore entry exists in the operation datastore. +

    source§

    fn op_entry_exists(&self, key: &[u8]) -> Result<bool>

    Checks if an operation datastore entry exists in the operation datastore. Note that the datastore is only accessible to the initial caller level.

    §Arguments
      @@ -259,7 +259,7 @@
      §Arguments
    §Returns

    true if the entry is matching the provided key in its operation datastore, otherwise false

    -
    source§

    fn get_op_data(&self, key: &[u8]) -> Result<Vec<u8>>

    Gets an operation datastore value by key. +

    source§

    fn get_op_data(&self, key: &[u8]) -> Result<Vec<u8>>

    Gets an operation datastore value by key. Note that the datastore is only accessible to the initial caller level.

    §Arguments
      @@ -267,14 +267,14 @@
      §Arguments
    §Returns

    The operation datastore value matching the provided key, if found, otherwise an error.

    -
    source§

    fn hash(&self, data: &[u8]) -> Result<[u8; 32]>

    Hashes arbitrary data

    +
    source§

    fn hash(&self, data: &[u8]) -> Result<[u8; 32]>

    Hashes arbitrary data

    §Arguments
    • data: data bytes to hash
    §Returns

    The hash in bytes format

    -
    source§

    fn address_from_public_key(&self, public_key: &str) -> Result<String>

    Converts a public key to an address

    +
    source§

    fn address_from_public_key(&self, public_key: &str) -> Result<String>

    Converts a public key to an address

    §Arguments
    • public_key: string representation of the public key
    • @@ -286,7 +286,7 @@
      §Returns
      data: &[u8], signature: &str, public_key: &str, -) -> Result<bool>

      Verifies a signature

      +) -> Result<bool>

      Verifies a signature

      §Arguments
      • data: the data bytes that were signed
      • @@ -300,7 +300,7 @@
        §Returns
        message_: &[u8], signature_: &[u8], public_key_: &[u8], -) -> Result<bool>

        Verify an EVM signature

        +) -> Result<bool>

        Verify an EVM signature

        Information:

        • Expects a SECP256K1 signature in full ETH format. @@ -309,15 +309,15 @@
          §Returns
        • Expects a public key in raw secp256k1 format. Length: 64 bytes
        -
    source§

    fn hash_keccak256(&self, bytes: &[u8]) -> Result<[u8; 32]>

    Keccak256 hash function

    -
    source§

    fn evm_get_address_from_pubkey(&self, public_key_: &[u8]) -> Result<Vec<u8>>

    Get an EVM address from a raw secp256k1 public key (64 bytes). +

    source§

    fn hash_keccak256(&self, bytes: &[u8]) -> Result<[u8; 32]>

    Keccak256 hash function

    +
    source§

    fn evm_get_address_from_pubkey(&self, public_key_: &[u8]) -> Result<Vec<u8>>

    Get an EVM address from a raw secp256k1 public key (64 bytes). Address is the last 20 bytes of the hash of the public key.

    source§

    fn evm_get_pubkey_from_signature( &self, hash_: &[u8], signature_: &[u8], -) -> Result<Vec<u8>>

    Get a raw secp256k1 public key from an EVM signature and the signed hash.

    -
    source§

    fn transfer_coins(&self, to_address: &str, raw_amount: u64) -> Result<()>

    Transfer coins from the current address (top of the call stack) towards a target address.

    +) -> Result<Vec<u8>>

    Get a raw secp256k1 public key from an EVM signature and the signed hash.

    +
    source§

    fn transfer_coins(&self, to_address: &str, raw_amount: u64) -> Result<()>

    Transfer coins from the current address (top of the call stack) towards a target address.

    §Arguments
    • to_address: string representation of the address to which the coins are sent
    • @@ -329,7 +329,7 @@
      §Arguments from_address: &str, to_address: &str, raw_amount: u64, -) -> Result<()>

      Transfer coins from a given address towards a target address.

      +) -> Result<()>

      Transfer coins from a given address towards a target address.

      §Arguments
      • from_address: string representation of the address that is sending the coins
      • @@ -342,52 +342,52 @@
        §Arguments to_address: String, raw_amount: NativeAmount, from_address: Option<String>, -) -> Result<()>

        Transfer coins from a given address (or the current address if not specified) towards a target address.

        +) -> Result<()>

        Transfer coins from a given address (or the current address if not specified) towards a target address.

        §Arguments
        • to_address: string representation of the address to which the coins are sent
        • raw_amount: raw representation (no decimal factor) of the amount of coins to transfer
        • from_address: string representation of the address that is sending the coins
        -
    source§

    fn get_owned_addresses(&self) -> Result<Vec<String>>

    Returns the list of owned addresses (top of the call stack). +

    source§

    fn get_owned_addresses(&self) -> Result<Vec<String>>

    Returns the list of owned addresses (top of the call stack). Those addresses are the ones the current execution context has write access to, typically it includes the current address itself, but also the ones that were created previously by the current call to allow initializing them.

    §Returns

    A vector with the string representation of each owned address. Note that the ordering of this vector is deterministic and conserved.

    -
    source§

    fn get_call_stack(&self) -> Result<Vec<String>>

    Returns the addresses in the call stack, from the bottom to the top.

    +
    source§

    fn get_call_stack(&self) -> Result<Vec<String>>

    Returns the addresses in the call stack, from the bottom to the top.

    §Returns

    A vector with the string representation of each call stack address.

    -
    source§

    fn get_call_coins(&self) -> Result<u64>

    Gets the amount of coins that have been transferred at the beginning of the call. +

    source§

    fn get_call_coins(&self) -> Result<u64>

    Gets the amount of coins that have been transferred at the beginning of the call. See the init_call method.

    §Returns

    The raw representation (no decimal factor) of the amount of coins

    [DeprecatedByNewRuntime] Replaced by get_call_coins_wasmv1

    -
    source§

    fn get_call_coins_wasmv1(&self) -> Result<NativeAmount>

    Gets the amount of coins that have been transferred at the beginning of the call. +

    source§

    fn get_call_coins_wasmv1(&self) -> Result<NativeAmount>

    Gets the amount of coins that have been transferred at the beginning of the call. See the init_call method.

    §Returns

    The amount of coins

    -
    source§

    fn generate_event(&self, data: String) -> Result<()>

    Emits an execution event to be stored.

    +
    source§

    fn generate_event(&self, data: String) -> Result<()>

    Emits an execution event to be stored.

    §Arguments:

    data: the string data that is the payload of the event

    [DeprecatedByNewRuntime] Replaced by get_current_slot

    -
    source§

    fn generate_event_wasmv1(&self, data: Vec<u8>) -> Result<()>

    Emits an execution event to be stored.

    +
    source§

    fn generate_event_wasmv1(&self, data: Vec<u8>) -> Result<()>

    Emits an execution event to be stored.

    §Arguments:

    data: the bytes_array data that is the payload of the event

    -
    source§

    fn get_time(&self) -> Result<u64>

    Returns the current time (millisecond UNIX timestamp) +

    source§

    fn get_time(&self) -> Result<u64>

    Returns the current time (millisecond UNIX timestamp) Note that in order to ensure determinism, this is actually the time of the context slot.

    -
    source§

    fn unsafe_random(&self) -> Result<i64>

    Returns a pseudo-random deterministic i64 number

    +
    source§

    fn unsafe_random(&self) -> Result<i64>

    Returns a pseudo-random deterministic i64 number

    §Warning

    This random number generator is unsafe: it can be both predicted and manipulated before the execution

    [DeprecatedByNewRuntime] Replaced by unsafe_random_wasmv1

    -
    source§

    fn unsafe_random_f64(&self) -> Result<f64>

    Returns a pseudo-random deterministic f64 number

    +
    source§

    fn unsafe_random_f64(&self) -> Result<f64>

    Returns a pseudo-random deterministic f64 number

    §Warning

    This random number generator is unsafe: it can be both predicted and manipulated before the execution

    [DeprecatedByNewRuntime] Replaced by unsafe_random_wasmv1

    -
    source§

    fn unsafe_random_wasmv1(&self, num_bytes: u64) -> Result<Vec<u8>>

    Returns a pseudo-random deterministic byte array, with the given number of bytes

    +
    source§

    fn unsafe_random_wasmv1(&self, num_bytes: u64) -> Result<Vec<u8>>

    Returns a pseudo-random deterministic byte array, with the given number of bytes

    §Warning

    This random number generator is unsafe: it can be both predicted and manipulated before the execution

    @@ -402,7 +402,7 @@
    §Warning
    raw_coins: u64, data: &[u8], filter: Option<(&str, Option<&[u8]>)>, -) -> Result<()>

    Adds an asynchronous message to the context speculative asynchronous pool

    +) -> Result<()>

    Adds an asynchronous message to the context speculative asynchronous pool

    §Arguments
    • target_address: Destination address hash in format string
    • @@ -414,30 +414,30 @@
      §Arguments
    • raw_coins: Coins given by the sender
    • data: Message data
    -
    source§

    fn get_current_period(&self) -> Result<u64>

    Returns the period of the current execution slot

    +
    source§

    fn get_current_period(&self) -> Result<u64>

    Returns the period of the current execution slot

    [DeprecatedByNewRuntime] Replaced by get_current_slot

    -
    source§

    fn get_current_thread(&self) -> Result<u8>

    Returns the thread of the current execution slot

    +
    source§

    fn get_current_thread(&self) -> Result<u8>

    Returns the thread of the current execution slot

    [DeprecatedByNewRuntime] Replaced by get_current_slot

    -
    source§

    fn get_current_slot(&self) -> Result<Slot>

    Returns the current execution slot

    -
    source§

    fn raw_set_bytecode(&self, bytecode: &[u8]) -> Result<()>

    Sets the bytecode of the current address

    +
    source§

    fn get_current_slot(&self) -> Result<Slot>

    Returns the current execution slot

    +
    source§

    fn raw_set_bytecode(&self, bytecode: &[u8]) -> Result<()>

    Sets the bytecode of the current address

    [DeprecatedByNewRuntime] Replaced by raw_set_bytecode_wasmv1

    -
    source§

    fn raw_set_bytecode_for(&self, address: &str, bytecode: &[u8]) -> Result<()>

    Sets the bytecode of an arbitrary address. +

    source§

    fn raw_set_bytecode_for(&self, address: &str, bytecode: &[u8]) -> Result<()>

    Sets the bytecode of an arbitrary address. Fails if the address does not exist, is an user address, or if the context doesn’t have write access rights on it.

    [DeprecatedByNewRuntime] Replaced by raw_set_bytecode_wasmv1

    source§

    fn set_bytecode_wasmv1( &self, bytecode: &[u8], address: Option<String>, -) -> Result<()>

    Sets the bytecode of an arbitrary address, or the current address if not provided. +) -> Result<()>

    Sets the bytecode of an arbitrary address, or the current address if not provided. Fails if the address does not exist, is an user address, or if the context doesn’t have write access rights on it.

    -
    source§

    fn hash_sha256(&self, bytes: &[u8]) -> Result<[u8; 32]>

    Hashes givens byte array with sha256

    +
    source§

    fn hash_sha256(&self, bytes: &[u8]) -> Result<[u8; 32]>

    Hashes givens byte array with sha256

    §Arguments
    • bytes: byte array to hash
    §Returns

    The byte array of the resulting hash

    -
    source§

    fn hash_blake3(&self, bytes: &[u8]) -> Result<[u8; 32]>

    Hashes givens byte array with blake3

    +
    source§

    fn hash_blake3(&self, bytes: &[u8]) -> Result<[u8; 32]>

    Hashes givens byte array with blake3

    §Arguments
    • bytes: byte array to hash
    • @@ -449,7 +449,7 @@
      §Returns
      target_slot: (u64, u8), gas_limit: u64, params_size: u64, -) -> Result<(bool, u64)>

      Get the number of fees needed to reserve space in the target slot

      +) -> Result<(bool, u64)>

      Get the number of fees needed to reserve space in the target slot

      §Arguments
      • target_slot: tuple containing the period and thread of the target slot
      • @@ -465,7 +465,7 @@
        §Returns
        max_gas: u64, params: &[u8], coins: u64, -) -> Result<String>

        Register deferred call

        +) -> Result<String>

        Register deferred call

        §Arguments
        • target_addr: string representation of the target address
        • @@ -477,101 +477,101 @@
          §Arguments
        §Returns

        The id of the call

        -
    source§

    fn deferred_call_exists(&self, id: &str) -> Result<bool>

    Check if an deferred call exists

    +
    source§

    fn deferred_call_exists(&self, id: &str) -> Result<bool>

    Check if an deferred call exists

    §Arguments
    • id: the id of the call
    §Returns

    true if the call exists, false otherwise

    -
    source§

    fn deferred_call_cancel(&self, id: &str) -> Result<()>

    Cancel a deferred call

    +
    source§

    fn deferred_call_cancel(&self, id: &str) -> Result<()>

    Cancel a deferred call

    §Arguments
    • id: the id of the call
    -
    source§

    fn native_amount_from_str_wasmv1(&self, amount: &str) -> Result<NativeAmount>

    Returns a NativeAmount from a string

    +
    source§

    fn native_amount_from_str_wasmv1(&self, amount: &str) -> Result<NativeAmount>

    Returns a NativeAmount from a string

    source§

    fn native_amount_to_string_wasmv1( &self, amount: &NativeAmount, -) -> Result<String>

    Returns a string from a NativeAmount

    -
    source§

    fn check_native_amount_wasmv1(&self, amount: &NativeAmount) -> Result<bool>

    Checks if the given native amount is valid

    +) -> Result<String>

    Returns a string from a NativeAmount

    +
    source§

    fn check_native_amount_wasmv1(&self, amount: &NativeAmount) -> Result<bool>

    Checks if the given native amount is valid

    source§

    fn add_native_amount_wasmv1( &self, amount1: &NativeAmount, amount2: &NativeAmount, -) -> Result<NativeAmount>

    Adds two native amounts, saturating at the numeric bounds instead of overflowing.

    +) -> Result<NativeAmount>

    Adds two native amounts, saturating at the numeric bounds instead of overflowing.

    source§

    fn sub_native_amount_wasmv1( &self, amount1: &NativeAmount, amount2: &NativeAmount, -) -> Result<NativeAmount>

    Subtracts two native amounts, saturating at the numeric bounds instead of overflowing.

    +) -> Result<NativeAmount>

    Subtracts two native amounts, saturating at the numeric bounds instead of overflowing.

    source§

    fn scalar_mul_native_amount_wasmv1( &self, amount: &NativeAmount, factor: u64, -) -> Result<NativeAmount>

    Multiplies a native amount by a factor, saturating at the numeric bounds instead of overflowing.

    +) -> Result<NativeAmount>

    Multiplies a native amount by a factor, saturating at the numeric bounds instead of overflowing.

    source§

    fn scalar_div_rem_native_amount_wasmv1( &self, dividend: &NativeAmount, divisor: u64, -) -> Result<(NativeAmount, NativeAmount)>

    Divides a native amount by a divisor, return an error if the divisor is 0.

    +) -> Result<(NativeAmount, NativeAmount)>

    Divides a native amount by a divisor, return an error if the divisor is 0.

    source§

    fn div_rem_native_amount_wasmv1( &self, dividend: &NativeAmount, divisor: &NativeAmount, -) -> Result<(u64, NativeAmount)>

    Divides a native amount by a divisor, return an error if the divisor is 0.

    +) -> Result<(u64, NativeAmount)>

    Divides a native amount by a divisor, return an error if the divisor is 0.

    source§

    fn save_gas_remaining_before_subexecution(&self, gas_remaining: u64)

    Try to get a write lock on the execution context then set the gas_used_until_the_last_subexecution field to the given gas_remaining value.

    If the context is locked, this function does nothing but log a warning.

    -
    source§

    fn get_interface_version(&self) -> Result<u32>

    Interface version to sync with the runtime for its versioning

    -
    source§

    fn increment_recursion_counter(&self) -> Result<()>

    source§

    fn decrement_recursion_counter(&self) -> Result<()>

    source§

    fn set_ds_value_wasmv1( +

    source§

    fn get_interface_version(&self) -> Result<u32>

    Interface version to sync with the runtime for its versioning

    +
    source§

    fn increment_recursion_counter(&self) -> Result<()>

    source§

    fn decrement_recursion_counter(&self) -> Result<()>

    source§

    fn set_ds_value_wasmv1( &self, key: &[u8], value: &[u8], address: Option<String>, -) -> Result<()>

    source§

    fn validate_address(&self, address: &str) -> Result<bool>

    Validate an address
    source§

    fn is_address_eoa(&self, address_: &str) -> Result<bool>

    Return true if the address is a User address, false if it is an SC -address
    source§

    fn get_origin_operation_id(&self) -> Result<Option<String>>

    source§

    fn init_call_wasmv1( +) -> Result<()>

    source§

    fn validate_address(&self, address: &str) -> Result<bool>

    Validate an address
    source§

    fn is_address_eoa(&self, address_: &str) -> Result<bool>

    Return true if the address is a User address, false if it is an SC +address
    source§

    fn get_origin_operation_id(&self) -> Result<Option<String>>

    source§

    fn init_call_wasmv1( &self, address: &str, raw_coins: NativeAmount, -) -> Result<Vec<u8>>

    Prepare the execution of a module at the given address and transfer a -given amount of coins
    source§

    fn base58_check_to_bytes_wasmv1(&self, s: &str) -> Result<Vec<u8>>

    source§

    fn bytes_to_base58_check_wasmv1(&self, data: &[u8]) -> String

    source§

    fn check_address_wasmv1(&self, to_check: &str) -> Result<bool>

    source§

    fn check_pubkey_wasmv1(&self, to_check: &str) -> Result<bool>

    source§

    fn check_signature_wasmv1(&self, to_check: &str) -> Result<bool>

    source§

    fn get_address_category_wasmv1(&self, to_check: &str) -> Result<AddressCategory>

    source§

    fn get_address_version_wasmv1(&self, address: &str) -> Result<u64>

    source§

    fn get_pubkey_version_wasmv1(&self, pubkey: &str) -> Result<u64>

    source§

    fn get_signature_version_wasmv1(&self, signature: &str) -> Result<u64>

    source§

    fn checked_add_native_time_wasmv1( +) -> Result<Vec<u8>>

    Prepare the execution of a module at the given address and transfer a +given amount of coins
    source§

    fn base58_check_to_bytes_wasmv1(&self, s: &str) -> Result<Vec<u8>>

    source§

    fn bytes_to_base58_check_wasmv1(&self, data: &[u8]) -> String

    source§

    fn check_address_wasmv1(&self, to_check: &str) -> Result<bool>

    source§

    fn check_pubkey_wasmv1(&self, to_check: &str) -> Result<bool>

    source§

    fn check_signature_wasmv1(&self, to_check: &str) -> Result<bool>

    source§

    fn get_address_category_wasmv1(&self, to_check: &str) -> Result<AddressCategory>

    source§

    fn get_address_version_wasmv1(&self, address: &str) -> Result<u64>

    source§

    fn get_pubkey_version_wasmv1(&self, pubkey: &str) -> Result<u64>

    source§

    fn get_signature_version_wasmv1(&self, signature: &str) -> Result<u64>

    source§

    fn checked_add_native_time_wasmv1( &self, time1: &NativeTime, time2: &NativeTime, -) -> Result<NativeTime>

    source§

    fn checked_sub_native_time_wasmv1( +) -> Result<NativeTime>

    source§

    fn checked_sub_native_time_wasmv1( &self, time1: &NativeTime, time2: &NativeTime, -) -> Result<NativeTime>

    source§

    fn checked_mul_native_time_wasmv1( +) -> Result<NativeTime>

    source§

    fn checked_mul_native_time_wasmv1( &self, time: &NativeTime, factor: u64, -) -> Result<NativeTime>

    source§

    fn checked_scalar_div_native_time_wasmv1( +) -> Result<NativeTime>

    source§

    fn checked_scalar_div_native_time_wasmv1( &self, dividend: &NativeTime, divisor: u64, -) -> Result<(NativeTime, NativeTime)>

    source§

    fn checked_div_native_time_wasmv1( +) -> Result<(NativeTime, NativeTime)>

    source§

    fn checked_div_native_time_wasmv1( &self, dividend: &NativeTime, divisor: &NativeTime, -) -> Result<(u64, NativeTime)>

    source§

    fn compare_address_wasmv1( +) -> Result<(u64, NativeTime)>

    source§

    fn compare_address_wasmv1( &self, left: &str, right: &str, -) -> Result<ComparisonResult>

    source§

    fn compare_native_amount_wasmv1( +) -> Result<ComparisonResult>

    source§

    fn compare_native_amount_wasmv1( &self, left: &NativeAmount, right: &NativeAmount, -) -> Result<ComparisonResult>

    source§

    fn compare_native_time_wasmv1( +) -> Result<ComparisonResult>

    source§

    fn compare_native_time_wasmv1( &self, left: &NativeTime, right: &NativeTime, -) -> Result<ComparisonResult>

    source§

    fn compare_pub_key_wasmv1( +) -> Result<ComparisonResult>

    source§

    fn compare_pub_key_wasmv1( &self, left: &str, right: &str, -) -> Result<ComparisonResult>

    source§

    fn chain_id(&self) -> Result<u64>

    source§

    impl InterfaceClone for InterfaceImpl

    source§

    fn clone_box(&self) -> Box<dyn Interface>

    allows cloning a boxed InterfaceImpl

    +) -> Result<ComparisonResult>
    source§

    fn chain_id(&self) -> Result<u64>

    source§

    impl InterfaceClone for InterfaceImpl

    source§

    fn clone_box(&self) -> Box<dyn Interface>

    allows cloning a boxed InterfaceImpl

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -687,4 +687,5 @@

    §Arguments V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/request_queue/struct.RequestQueue.html b/massa_execution_worker/request_queue/struct.RequestQueue.html index 1e653006047..d12c92de333 100644 --- a/massa_execution_worker/request_queue/struct.RequestQueue.html +++ b/massa_execution_worker/request_queue/struct.RequestQueue.html @@ -1,4 +1,4 @@ -RequestQueue in massa_execution_worker::request_queue - Rust
    pub(crate) struct RequestQueue<T, R> {
    +RequestQueue in massa_execution_worker::request_queue - Rust
    pub(crate) struct RequestQueue<T, R> {
         max_items: usize,
         queue: VecDeque<RequestWithResponseSender<T, R>>,
     }
    Expand description

    Structure representing an execution request queue with maximal length. @@ -16,7 +16,7 @@

    §Arguments
    source

    pub fn extend(&mut self, other: RequestQueue<T, R>)

    Extends Self with the contents of another RequestQueue. The contents of the incoming queue are appended last. Excess items with respect to self.max_items are canceled and dropped.

    -
    source

    pub fn cancel(&mut self, err: ExecutionError)

    Cancel all queued items.

    +
    source

    pub fn cancel(&mut self, err: ExecutionError)

    Cancel all queued items.

    §Arguments
    • err: the error to send through the response channel of cancelled items
    • @@ -154,4 +154,5 @@
      §Returns
      V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/request_queue/struct.RequestWithResponseSender.html b/massa_execution_worker/request_queue/struct.RequestWithResponseSender.html index 7259b7c9143..dc8ec31f678 100644 --- a/massa_execution_worker/request_queue/struct.RequestWithResponseSender.html +++ b/massa_execution_worker/request_queue/struct.RequestWithResponseSender.html @@ -1,26 +1,26 @@ -RequestWithResponseSender in massa_execution_worker::request_queue - Rust
    pub(crate) struct RequestWithResponseSender<T, R> {
    +RequestWithResponseSender in massa_execution_worker::request_queue - Rust
    pub(crate) struct RequestWithResponseSender<T, R> {
         request: T,
    -    response_tx: MassaSender<Result<R, ExecutionError>>,
    +    response_tx: MassaSender<Result<R, ExecutionError>>,
     }
    Expand description

    Represents an execution request T coupled with an MPSC sender for a result of type R

    Fields§

    §request: T

    The underlying execution request

    -
    §response_tx: MassaSender<Result<R, ExecutionError>>

    An std::mpsc::Sender to later send the execution output R (or an error)

    +
    §response_tx: MassaSender<Result<R, ExecutionError>>

    An std::mpsc::Sender to later send the execution output R (or an error)

    Implementations§

    source§

    impl<T, R> RequestWithResponseSender<T, R>

    source

    pub fn new( request: T, - response_tx: MassaSender<Result<R, ExecutionError>>, + response_tx: MassaSender<Result<R, ExecutionError>>, ) -> Self

    Create a new request with response sender

    §Arguments
    • request: the underlying request of type T
    • response_tx: an std::mpsc::Sender to later send the execution output R (or an error)
    -
    source

    pub fn cancel(self, err: ExecutionError)

    Cancel the request by consuming the object and sending an error through the response channel.

    +
    source

    pub fn cancel(self, err: ExecutionError)

    Cancel the request by consuming the object and sending an error through the response channel.

    §Arguments
    • err: the error to send through the response channel
    source

    pub fn into_request_sender_pair( self, -) -> (T, MassaSender<Result<R, ExecutionError>>)

    Destructure self into a (request, response sender) pair

    +) -> (T, MassaSender<Result<R, ExecutionError>>)

    Destructure self into a (request, response sender) pair

    Trait Implementations§

    source§

    impl<T: Debug, R: Debug> Debug for RequestWithResponseSender<T, R>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    §

    impl<T, R> Freeze for RequestWithResponseSender<T, R>
    where T: Freeze,

    §

    impl<T, R> RefUnwindSafe for RequestWithResponseSender<T, R>
    where T: RefUnwindSafe,

    §

    impl<T, R> Send for RequestWithResponseSender<T, R>
    where @@ -140,4 +140,5 @@
    §Arguments

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/slot_sequencer/struct.SlotInfo.html b/massa_execution_worker/slot_sequencer/struct.SlotInfo.html index 67075696fb1..789b74042f7 100644 --- a/massa_execution_worker/slot_sequencer/struct.SlotInfo.html +++ b/massa_execution_worker/slot_sequencer/struct.SlotInfo.html @@ -1,13 +1,13 @@ -SlotInfo in massa_execution_worker::slot_sequencer - Rust

    Struct massa_execution_worker::slot_sequencer::SlotInfo

    source ·
    pub struct SlotInfo {
    +SlotInfo in massa_execution_worker::slot_sequencer - Rust

    Struct massa_execution_worker::slot_sequencer::SlotInfo

    source ·
    pub struct SlotInfo {
         slot: Slot,
         consensus_final: bool,
         execution_final: bool,
    -    content: Option<(BlockId, ExecutionBlockMetadata)>,
    +    content: Option<(BlockId, ExecutionBlockMetadata)>,
     }
    Expand description

    Information about a slot in the execution sequence

    Fields§

    §slot: Slot

    Slot

    §consensus_final: bool

    Whether the slot is CSS-final

    §execution_final: bool

    Whether the slot is SCE-final

    -
    §content: Option<(BlockId, ExecutionBlockMetadata)>

    Content of the slot (None if miss, otherwise block ID and associated metadata)

    +
    §content: Option<(BlockId, ExecutionBlockMetadata)>

    Content of the slot (None if miss, otherwise block ID and associated metadata)

    Implementations§

    source§

    impl SlotInfo

    source

    pub fn get_block_id(&self) -> Option<&BlockId>

    Get the block ID (if any) at that slot

    Trait Implementations§

    source§

    impl Clone for SlotInfo

    source§

    fn clone(&self) -> SlotInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -124,4 +124,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/slot_sequencer/struct.SlotSequencer.html b/massa_execution_worker/slot_sequencer/struct.SlotSequencer.html index 79fd1e7b883..28c29c91dc4 100644 --- a/massa_execution_worker/slot_sequencer/struct.SlotSequencer.html +++ b/massa_execution_worker/slot_sequencer/struct.SlotSequencer.html @@ -1,5 +1,5 @@ -SlotSequencer in massa_execution_worker::slot_sequencer - Rust
    pub struct SlotSequencer {
    -    config: ExecutionConfig,
    +SlotSequencer in massa_execution_worker::slot_sequencer - Rust
    pub struct SlotSequencer {
    +    config: ExecutionConfig,
         sequence: VecDeque<SlotInfo>,
         latest_consensus_final_slots: Vec<Slot>,
         latest_execution_final_slot: Slot,
    @@ -12,13 +12,13 @@
     SlotSequencer::run_task_with allows running the next slot in the queue, if any.
     Note that SCE-final slots are executed in priority over candidate slots.
     SlotSequencer::get_next_slot_deadline allows getting the time at which the next slot will happen (this is useful to sequence slots as they happen even if there is no block there).

    -

    Fields§

    §config: ExecutionConfig

    Config

    +

    Fields§

    §config: ExecutionConfig

    Config

    §sequence: VecDeque<SlotInfo>

    Continuous sequence of slots containing all the slots relevant for Execution and their current states (see SlotInfo). Oldest slot is at front.

    §latest_consensus_final_slots: Vec<Slot>

    latest CSS-final slots (one per thread)

    §latest_execution_final_slot: Slot

    latest SCE-final slot

    §latest_executed_final_slot: Slot

    final slot execution cursor

    §latest_executed_candidate_slot: Slot

    candidate slot execution cursor

    -

    Implementations§

    source§

    impl SlotSequencer

    source

    pub fn new(config: ExecutionConfig, final_cursor: Slot) -> Self

    Create a new slot sequencer. +

    Implementations§

    source§

    impl SlotSequencer

    source

    pub fn new(config: ExecutionConfig, final_cursor: Slot) -> Self

    Create a new slot sequencer. Note that this will create a SlotSequencer with an empty internal sequence which makes it unusable until SlotSequencer::update is called a first time to feed the CSS-final blocks.

    §Arguments
    @@ -29,7 +29,7 @@
    §Arguments
    &mut self, initial_consensus_final_blocks: HashMap<Slot, BlockId>, initial_blockclique: HashMap<Slot, BlockId>, - blocks_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>, + blocks_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>, )

    Internal method that inits the sequencer. This method is called on the first call to SlotSequencer::update. It allows feeding the initial sequence of CSS-final blocks to the sequencer.

    @@ -45,7 +45,7 @@
    §ArgumentsHashMap<Slot, BlockId>, new_blockclique: Option<HashMap<Slot, BlockId>>, - new_blocks_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>, + new_blocks_metadata: PreHashMap<BlockId, ExecutionBlockMetadata>, )

    Notify the sequencer of incoming changes: CSS-finalized blocks and changes in the blockclique. This function is also called on time slots to ensure new slots are taken into account even if they don’t contain a block.

    §Arguments
    @@ -61,7 +61,7 @@
    §ArgumentsOption<BlockId>, blockclique_updated: bool, new_blockclique_block: Option<BlockId>, - new_blocks_metadata: &mut PreHashMap<BlockId, ExecutionBlockMetadata>, + new_blocks_metadata: &mut PreHashMap<BlockId, ExecutionBlockMetadata>, in_execution_finality: bool, ) -> (SlotInfo, bool)

    Internal method called by Self::update to construct one slot of the new slot sequence by using info about newly CSS-finalized blocks, the new blockclique (if any) and the previous state of that slot.

    @@ -86,7 +86,7 @@
    §Returns
    This function is called on Self::init to cleanup bootstrap artifacts, and when a task is processed with Self::run_task_with.

    source

    pub fn run_task_with<F, T>(&mut self, callback: F) -> Option<T>
    where - F: Fn(bool, &Slot, Option<&(BlockId, ExecutionBlockMetadata)>) -> T,

    If a slot is ready for execution, this method will mark it as executed and call the provided callback function on it for execution. + F: Fn(bool, &Slot, Option<&(BlockId, ExecutionBlockMetadata)>) -> T,

    If a slot is ready for execution, this method will mark it as executed and call the provided callback function on it for execution. SCE-final slots are executed in priority over candidate slots.

    §Arguments
      @@ -219,4 +219,5 @@
      §Returns
      V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/speculative_async_pool/struct.SpeculativeAsyncPool.html b/massa_execution_worker/speculative_async_pool/struct.SpeculativeAsyncPool.html index 2314fed6db4..c08f412797e 100644 --- a/massa_execution_worker/speculative_async_pool/struct.SpeculativeAsyncPool.html +++ b/massa_execution_worker/speculative_async_pool/struct.SpeculativeAsyncPool.html @@ -1,4 +1,4 @@ -SpeculativeAsyncPool in massa_execution_worker::speculative_async_pool - Rust
    pub(crate) struct SpeculativeAsyncPool {
    +SpeculativeAsyncPool in massa_execution_worker::speculative_async_pool - Rust
    pub(crate) struct SpeculativeAsyncPool {
         final_state: Arc<RwLock<dyn FinalStateController>>,
         active_history: Arc<RwLock<ActiveHistory>>,
         pool_changes: AsyncPoolChanges,
    @@ -170,4 +170,5 @@ 
    §Returns
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/speculative_deferred_calls/struct.SpeculativeDeferredCallRegistry.html b/massa_execution_worker/speculative_deferred_calls/struct.SpeculativeDeferredCallRegistry.html index b4776bc2a44..e6816fa7198 100644 --- a/massa_execution_worker/speculative_deferred_calls/struct.SpeculativeDeferredCallRegistry.html +++ b/massa_execution_worker/speculative_deferred_calls/struct.SpeculativeDeferredCallRegistry.html @@ -1,4 +1,4 @@ -SpeculativeDeferredCallRegistry in massa_execution_worker::speculative_deferred_calls - Rust
    pub(crate) struct SpeculativeDeferredCallRegistry {
    +SpeculativeDeferredCallRegistry in massa_execution_worker::speculative_deferred_calls - Rust
    pub(crate) struct SpeculativeDeferredCallRegistry {
         final_state: Arc<RwLock<dyn FinalStateController>>,
         active_history: Arc<RwLock<ActiveHistory>>,
         deferred_calls_changes: DeferredCallRegistryChanges,
    @@ -16,7 +16,7 @@ 
    §Arguments
    <
    source

    pub fn get_calls_by_slot(&self, slot: Slot) -> DeferredSlotCalls

    source

    pub fn get_call(&self, id: &DeferredCallId) -> Option<DeferredCall>

    source

    pub fn delete_call(&mut self, id: &DeferredCallId, slot: Slot)

    source

    pub fn cancel_call( &mut self, id: &DeferredCallId, -) -> Result<(Address, Amount), ExecutionError>

    Cancel a call +) -> Result<(Address, Amount), ExecutionError>

    Cancel a call Returns the sender address and the amount of coins to reimburse them

    source

    fn overbooking_fee( resource_supply: u128, @@ -24,18 +24,18 @@

    §Arguments
    < current_occupancy: u128, resource_request: u128, max_penalty: Amount, -) -> Result<Amount, ExecutionError>
    source

    pub fn compute_call_fee( +) -> Result<Amount, ExecutionError>

    source

    pub fn compute_call_fee( &self, target_slot: Slot, max_gas_request: u64, current_slot: Slot, params_size: u64, -) -> Result<Amount, ExecutionError>

    Compute call fee

    +) -> Result<Amount, ExecutionError>

    Compute call fee

    source

    pub fn register_call( &mut self, call: DeferredCall, trail_hash: Hash, -) -> Result<DeferredCallId, ExecutionError>

    Register a new call +) -> Result<DeferredCallId, ExecutionError>

    Register a new call Returns the call id

    §Arguments
      @@ -154,4 +154,5 @@
      §Arguments
      §

      fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/speculative_executed_denunciations/struct.SpeculativeExecutedDenunciations.html b/massa_execution_worker/speculative_executed_denunciations/struct.SpeculativeExecutedDenunciations.html index ba3c3fac21a..3bf340a3132 100644 --- a/massa_execution_worker/speculative_executed_denunciations/struct.SpeculativeExecutedDenunciations.html +++ b/massa_execution_worker/speculative_executed_denunciations/struct.SpeculativeExecutedDenunciations.html @@ -1,4 +1,4 @@ -SpeculativeExecutedDenunciations in massa_execution_worker::speculative_executed_denunciations - Rust
    pub(crate) struct SpeculativeExecutedDenunciations {
    +SpeculativeExecutedDenunciations in massa_execution_worker::speculative_executed_denunciations - Rust
    pub(crate) struct SpeculativeExecutedDenunciations {
         final_state: Arc<RwLock<dyn FinalStateController>>,
         active_history: Arc<RwLock<ActiveHistory>>,
         executed_denunciations: ExecutedDenunciationsChanges,
    @@ -133,4 +133,5 @@ 
    §Arguments
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/speculative_executed_ops/struct.SpeculativeExecutedOps.html b/massa_execution_worker/speculative_executed_ops/struct.SpeculativeExecutedOps.html index 8c413b5c3a6..e19f929d269 100644 --- a/massa_execution_worker/speculative_executed_ops/struct.SpeculativeExecutedOps.html +++ b/massa_execution_worker/speculative_executed_ops/struct.SpeculativeExecutedOps.html @@ -1,4 +1,4 @@ -SpeculativeExecutedOps in massa_execution_worker::speculative_executed_ops - Rust
    pub(crate) struct SpeculativeExecutedOps {
    +SpeculativeExecutedOps in massa_execution_worker::speculative_executed_ops - Rust
    pub(crate) struct SpeculativeExecutedOps {
         final_state: Arc<RwLock<dyn FinalStateController>>,
         active_history: Arc<RwLock<ActiveHistory>>,
         executed_ops: ExecutedOpsChanges,
    @@ -145,4 +145,5 @@ 
    §Arguments
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/speculative_ledger/struct.SpeculativeLedger.html b/massa_execution_worker/speculative_ledger/struct.SpeculativeLedger.html index 7216866d226..e86f2284b4f 100644 --- a/massa_execution_worker/speculative_ledger/struct.SpeculativeLedger.html +++ b/massa_execution_worker/speculative_ledger/struct.SpeculativeLedger.html @@ -1,11 +1,11 @@ -SpeculativeLedger in massa_execution_worker::speculative_ledger - Rust
    pub(crate) struct SpeculativeLedger {
    +SpeculativeLedger in massa_execution_worker::speculative_ledger - Rust
    pub(crate) struct SpeculativeLedger {
         final_state: Arc<RwLock<dyn FinalStateController>>,
         active_history: Arc<RwLock<ActiveHistory>>,
         pub added_changes: LedgerChanges,
         max_datastore_key_length: u8,
         max_datastore_value_size: u64,
         max_bytecode_size: u64,
    -    storage_costs_constants: StorageCostsConstants,
    +    storage_costs_constants: StorageCostsConstants,
     }
    Expand description

    The SpeculativeLedger contains an thread-safe shared reference to the final ledger (read-only), a list of existing changes that happened o the ledger since its finality, as well as an extra list of “added” changes. @@ -19,14 +19,14 @@

    §max_datastore_key_length: u8

    max datastore key length

    §max_datastore_value_size: u64

    Max datastore value size

    §max_bytecode_size: u64

    Max bytecode size

    -
    §storage_costs_constants: StorageCostsConstants

    storage cost constants

    +
    §storage_costs_constants: StorageCostsConstants

    storage cost constants

    Implementations§

    source§

    impl SpeculativeLedger

    source

    pub fn new( final_state: Arc<RwLock<dyn FinalStateController>>, active_history: Arc<RwLock<ActiveHistory>>, max_datastore_key_length: u8, max_bytecode_size: u64, max_datastore_value_size: u64, - storage_costs_constants: StorageCostsConstants, + storage_costs_constants: StorageCostsConstants, ) -> Self

    creates a new SpeculativeLedger

    §Arguments

    Transfers coins from one address to another. +) -> Result<(), ExecutionError>

    Transfers coins from one address to another. No changes are retained in case of failure. The spending address, if defined, must exist.

    §Parameters:
    @@ -71,7 +71,7 @@
    §Returns
    creator_address: Address, addr: Address, bytecode: Bytecode, -) -> Result<(), ExecutionError>

    Creates a new smart contract address with initial bytecode.

    +) -> Result<(), ExecutionError>

    Creates a new smart contract address with initial bytecode.

    §Arguments
    • creator_address: address that asked for this creation. Will pay the storage costs.
    • @@ -83,7 +83,7 @@
      §ArgumentsAddress, addr: &Address, bytecode: Bytecode, -) -> Result<(), ExecutionError>

      Sets the bytecode associated to an address in the ledger. +) -> Result<(), ExecutionError>

      Sets the bytecode associated to an address in the ledger. Fails if the address doesn’t exist.

      §Arguments
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/speculative_roll_state/struct.SpeculativeRollState.html b/massa_execution_worker/speculative_roll_state/struct.SpeculativeRollState.html index 46f93cd0a12..cfe839c014f 100644 --- a/massa_execution_worker/speculative_roll_state/struct.SpeculativeRollState.html +++ b/massa_execution_worker/speculative_roll_state/struct.SpeculativeRollState.html @@ -1,4 +1,4 @@ -SpeculativeRollState in massa_execution_worker::speculative_roll_state - Rust
    pub(crate) struct SpeculativeRollState {
    +SpeculativeRollState in massa_execution_worker::speculative_roll_state - Rust
    pub(crate) struct SpeculativeRollState {
         final_state: Arc<RwLock<dyn FinalStateController>>,
         active_history: Arc<RwLock<ActiveHistory>>,
         pub(crate) added_changes: PoSChanges,
    @@ -35,7 +35,7 @@ 
    §Argumentsu64, thread_count: u8, roll_price: Amount, -) -> Result<(), ExecutionError>

    Try to sell roll_count rolls from the seller address.

    +) -> Result<(), ExecutionError>

    Try to sell roll_count rolls from the seller address.

    §Arguments
    • seller_addr: address to sell the rolls from
    • @@ -45,7 +45,7 @@
      §ArgumentsAddress, roll_count: u64, -) -> Result<u64, ExecutionError>

      Try to slash roll_count rolls from the given address. If not enough roll, slash +) -> Result<u64, ExecutionError>

      Try to slash roll_count rolls from the given address. If not enough roll, slash the available amount and return the value.

      §Arguments
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/stats/struct.ExecutionStatsCounter.html b/massa_execution_worker/stats/struct.ExecutionStatsCounter.html index 9644d6445cf..b4f4c252510 100644 --- a/massa_execution_worker/stats/struct.ExecutionStatsCounter.html +++ b/massa_execution_worker/stats/struct.ExecutionStatsCounter.html @@ -1,4 +1,4 @@ -ExecutionStatsCounter in massa_execution_worker::stats - Rust
    pub struct ExecutionStatsCounter {
    +ExecutionStatsCounter in massa_execution_worker::stats - Rust
    pub struct ExecutionStatsCounter {
         time_window_duration: MassaTime,
         final_blocks: VecDeque<(usize, MassaTime)>,
         final_executed_ops: VecDeque<(usize, MassaTime)>,
    @@ -129,4 +129,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/storage_backend/struct.FileStorageBackend.html b/massa_execution_worker/storage_backend/struct.FileStorageBackend.html index 8a519aae379..9841a63cd6b 100644 --- a/massa_execution_worker/storage_backend/struct.FileStorageBackend.html +++ b/massa_execution_worker/storage_backend/struct.FileStorageBackend.html @@ -1,4 +1,4 @@ -FileStorageBackend in massa_execution_worker::storage_backend - Rust
    pub struct FileStorageBackend {
    +FileStorageBackend in massa_execution_worker::storage_backend - Rust
    pub struct FileStorageBackend {
         folder: PathBuf,
         slots_saved: VecDeque<Slot>,
         max_blocks: u64,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/storage_backend/struct.RocksDBStorageBackend.html b/massa_execution_worker/storage_backend/struct.RocksDBStorageBackend.html index d0ec9725664..66b4ffb4295 100644 --- a/massa_execution_worker/storage_backend/struct.RocksDBStorageBackend.html +++ b/massa_execution_worker/storage_backend/struct.RocksDBStorageBackend.html @@ -1,4 +1,4 @@ -RocksDBStorageBackend in massa_execution_worker::storage_backend - Rust
    pub struct RocksDBStorageBackend {
    +RocksDBStorageBackend in massa_execution_worker::storage_backend - Rust
    pub struct RocksDBStorageBackend {
         db: DB,
         slots_saved: VecDeque<Slot>,
         max_blocks: u64,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_execution_worker/worker/fn.start_execution_worker.html b/massa_execution_worker/worker/fn.start_execution_worker.html index 73ab2dde3bc..96e09715738 100644 --- a/massa_execution_worker/worker/fn.start_execution_worker.html +++ b/massa_execution_worker/worker/fn.start_execution_worker.html @@ -1,12 +1,13 @@ -start_execution_worker in massa_execution_worker::worker - Rust
    pub fn start_execution_worker(
    -    config: ExecutionConfig,
    +start_execution_worker in massa_execution_worker::worker - Rust
    pub fn start_execution_worker(
    +    config: ExecutionConfig,
         final_state: Arc<RwLock<dyn FinalStateController>>,
         selector: Box<dyn SelectorController>,
         mip_store: MipStore,
    -    channels: ExecutionChannels,
    +    channels: ExecutionChannels,
         wallet: Arc<RwLock<Wallet>>,
         massa_metrics: MassaMetrics,
    -) -> (Box<dyn ExecutionManager>, Box<dyn ExecutionController>)
    Expand description

    Launches an execution worker thread and returns an ExecutionManager to interact with it

    + event_cache: Box<dyn EventCacheController>, +) -> (Box<dyn ExecutionManager>, Box<dyn ExecutionController>)
    Expand description

    Launches an execution worker thread and returns an ExecutionManager to interact with it

    §parameters

    -
    source

    fn update_readonly_requests( +

    source

    fn update_readonly_requests( &mut self, - new_requests: RequestQueue<ReadOnlyExecutionRequest, ReadOnlyExecutionOutput>, + new_requests: RequestQueue<ReadOnlyExecutionRequest, ReadOnlyExecutionOutput>, )

    Append incoming read-only requests to the relevant queue, Cancel those that are in excess if there are too many.

    -
    source

    fn execute_one_readonly_request(&mut self) -> bool

    Executes a read-only request from the queue, if any. +

    source

    fn execute_one_readonly_request(&mut self) -> bool

    Executes a read-only request from the queue, if any. The result of the execution is sent asynchronously through the response channel provided with the request.

    §Returns

    true if a request was executed, false otherwise

    -
    source

    fn wait_loop_event(&mut self) -> (ExecutionInputData, bool)

    Waits for an event to trigger a new iteration in the execution main loop.

    +
    source

    fn wait_loop_event(&mut self) -> (ExecutionInputData, bool)

    Waits for an event to trigger a new iteration in the execution main loop.

    §Returns

    ExecutionInputData representing the input requests, and a boolean saying whether we should stop the loop.

    -
    source

    pub fn main_loop(&mut self)

    Main loop of the execution worker

    +
    source

    pub fn main_loop(&mut self)

    Main loop of the execution worker

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -145,4 +145,5 @@

    §Returns
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_exports/config/struct.FactoryConfig.html b/massa_factory_exports/config/struct.FactoryConfig.html index e3aab273fc2..45655be3a58 100644 --- a/massa_factory_exports/config/struct.FactoryConfig.html +++ b/massa_factory_exports/config/struct.FactoryConfig.html @@ -1,4 +1,4 @@ -FactoryConfig in massa_factory_exports::config - Rust

    Struct massa_factory_exports::config::FactoryConfig

    source ·
    pub struct FactoryConfig {
    +FactoryConfig in massa_factory_exports::config - Rust

    Struct massa_factory_exports::config::FactoryConfig

    source ·
    pub struct FactoryConfig {
         pub thread_count: u8,
         pub genesis_timestamp: MassaTime,
         pub t0: MassaTime,
    @@ -139,4 +139,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_exports/enum.FactoryError.html b/massa_factory_exports/enum.FactoryError.html index d437d562f13..a1d86c83653 100644 --- a/massa_factory_exports/enum.FactoryError.html +++ b/massa_factory_exports/enum.FactoryError.html @@ -1,4 +1,4 @@ -FactoryError in massa_factory_exports - Rust

    Enum massa_factory_exports::FactoryError

    source ·
    #[non_exhaustive]
    pub enum FactoryError { +FactoryError in massa_factory_exports - Rust

    Enum massa_factory_exports::FactoryError

    source ·
    #[non_exhaustive]
    pub enum FactoryError { GenericError(String), }
    Expand description

    factory error

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    GenericError(String)

    Generic error: {0}

    @@ -115,4 +115,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_exports/error/enum.FactoryError.html b/massa_factory_exports/error/enum.FactoryError.html index 80d8950ff9b..99bdeb5358d 100644 --- a/massa_factory_exports/error/enum.FactoryError.html +++ b/massa_factory_exports/error/enum.FactoryError.html @@ -1,4 +1,4 @@ -FactoryError in massa_factory_exports::error - Rust

    Enum massa_factory_exports::error::FactoryError

    source ·
    #[non_exhaustive]
    pub enum FactoryError { +FactoryError in massa_factory_exports::error - Rust

    Enum massa_factory_exports::error::FactoryError

    source ·
    #[non_exhaustive]
    pub enum FactoryError { GenericError(String), }
    Expand description

    factory error

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    GenericError(String)

    Generic error: {0}

    @@ -115,4 +115,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_exports/struct.FactoryChannels.html b/massa_factory_exports/struct.FactoryChannels.html index e0f118ce7cd..566970883f5 100644 --- a/massa_factory_exports/struct.FactoryChannels.html +++ b/massa_factory_exports/struct.FactoryChannels.html @@ -1,4 +1,4 @@ -FactoryChannels in massa_factory_exports - Rust

    Struct massa_factory_exports::FactoryChannels

    source ·
    pub struct FactoryChannels {
    +FactoryChannels in massa_factory_exports - Rust

    Struct massa_factory_exports::FactoryChannels

    source ·
    pub struct FactoryChannels {
         pub selector: Box<dyn SelectorController>,
         pub consensus: Box<dyn ConsensusController>,
         pub pool: Box<dyn PoolController>,
    @@ -125,4 +125,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_exports/struct.FactoryConfig.html b/massa_factory_exports/struct.FactoryConfig.html index b4b2c7a957e..1e6e057c5d1 100644 --- a/massa_factory_exports/struct.FactoryConfig.html +++ b/massa_factory_exports/struct.FactoryConfig.html @@ -1,4 +1,4 @@ -FactoryConfig in massa_factory_exports - Rust

    Struct massa_factory_exports::FactoryConfig

    source ·
    pub struct FactoryConfig {
    +FactoryConfig in massa_factory_exports - Rust

    Struct massa_factory_exports::FactoryConfig

    source ·
    pub struct FactoryConfig {
         pub thread_count: u8,
         pub genesis_timestamp: MassaTime,
         pub t0: MassaTime,
    @@ -139,4 +139,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_exports/types/struct.FactoryChannels.html b/massa_factory_exports/types/struct.FactoryChannels.html index d6e45cb7d40..b05b5863da4 100644 --- a/massa_factory_exports/types/struct.FactoryChannels.html +++ b/massa_factory_exports/types/struct.FactoryChannels.html @@ -1,4 +1,4 @@ -FactoryChannels in massa_factory_exports::types - Rust

    Struct massa_factory_exports::types::FactoryChannels

    source ·
    pub struct FactoryChannels {
    +FactoryChannels in massa_factory_exports::types - Rust

    Struct massa_factory_exports::types::FactoryChannels

    source ·
    pub struct FactoryChannels {
         pub selector: Box<dyn SelectorController>,
         pub consensus: Box<dyn ConsensusController>,
         pub pool: Box<dyn PoolController>,
    @@ -125,4 +125,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_worker/block_factory/struct.BlockFactoryWorker.html b/massa_factory_worker/block_factory/struct.BlockFactoryWorker.html index 5311f044a70..c62eff76bd3 100644 --- a/massa_factory_worker/block_factory/struct.BlockFactoryWorker.html +++ b/massa_factory_worker/block_factory/struct.BlockFactoryWorker.html @@ -1,4 +1,4 @@ -BlockFactoryWorker in massa_factory_worker::block_factory - Rust
    pub(crate) struct BlockFactoryWorker {
    +BlockFactoryWorker in massa_factory_worker::block_factory - Rust
    pub(crate) struct BlockFactoryWorker {
         cfg: FactoryConfig,
         wallet: Arc<RwLock<Wallet>>,
         channels: FactoryChannels,
    @@ -133,4 +133,5 @@ 
    §Return va V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_worker/endorsement_factory/struct.EndorsementFactoryWorker.html b/massa_factory_worker/endorsement_factory/struct.EndorsementFactoryWorker.html index c16b898c89d..8e5bc5b4bdc 100644 --- a/massa_factory_worker/endorsement_factory/struct.EndorsementFactoryWorker.html +++ b/massa_factory_worker/endorsement_factory/struct.EndorsementFactoryWorker.html @@ -1,4 +1,4 @@ -EndorsementFactoryWorker in massa_factory_worker::endorsement_factory - Rust
    pub(crate) struct EndorsementFactoryWorker {
    +EndorsementFactoryWorker in massa_factory_worker::endorsement_factory - Rust
    pub(crate) struct EndorsementFactoryWorker {
         cfg: FactoryConfig,
         wallet: Arc<RwLock<Wallet>>,
         channels: FactoryChannels,
    @@ -132,4 +132,5 @@ 
    §Return va V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_factory_worker/manager/struct.FactoryManagerImpl.html b/massa_factory_worker/manager/struct.FactoryManagerImpl.html index 099f8810e5b..723bb7e8b14 100644 --- a/massa_factory_worker/manager/struct.FactoryManagerImpl.html +++ b/massa_factory_worker/manager/struct.FactoryManagerImpl.html @@ -1,4 +1,4 @@ -FactoryManagerImpl in massa_factory_worker::manager - Rust

    Struct massa_factory_worker::manager::FactoryManagerImpl

    source ·
    pub struct FactoryManagerImpl {
    +FactoryManagerImpl in massa_factory_worker::manager - Rust

    Struct massa_factory_worker::manager::FactoryManagerImpl

    source ·
    pub struct FactoryManagerImpl {
         pub(crate) block_worker: Option<(MassaSender<()>, JoinHandle<()>)>,
         pub(crate) endorsement_worker: Option<(MassaSender<()>, JoinHandle<()>)>,
     }
    Expand description

    Implementation of the factory manager @@ -117,4 +117,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_final_state/enum.FinalStateError.html b/massa_final_state/enum.FinalStateError.html index f8bf8516220..b80357d4ff1 100644 --- a/massa_final_state/enum.FinalStateError.html +++ b/massa_final_state/enum.FinalStateError.html @@ -12,7 +12,7 @@
    §

    SnapshotError(String)

    Snapshot error: {0}

    §

    ExtendFromDbError(ExtendFromDbError)

    ExtendFromDbError

    §

    NonConsistentWithShutdownPeriodError(IsConsistentWithShutdownPeriodError)

    IsConsistentWithShutdownPeriodError

    -

    Trait Implementations§

    source§

    impl Debug for FinalStateError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for FinalStateError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for FinalStateError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ExtendFromDbError> for FinalStateError

    source§

    fn from(source: ExtendFromDbError) -> Self

    Converts to this type from the input type.
    source§

    impl From<IsConsistentWithShutdownPeriodError> for FinalStateError

    source§

    fn from(source: IsConsistentWithShutdownPeriodError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for FinalStateError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for FinalStateError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for FinalStateError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ExtendFromDbError> for FinalStateError

    source§

    fn from(source: ExtendFromDbError) -> Self

    Converts to this type from the input type.
    source§

    impl From<IsConsistentWithShutdownPeriodError> for FinalStateError

    source§

    fn from(source: IsConsistentWithShutdownPeriodError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_final_state/error/enum.FinalStateError.html b/massa_final_state/error/enum.FinalStateError.html index a1043bd179f..8e5e393dbec 100644 --- a/massa_final_state/error/enum.FinalStateError.html +++ b/massa_final_state/error/enum.FinalStateError.html @@ -12,7 +12,7 @@
    §

    SnapshotError(String)

    Snapshot error: {0}

    §

    ExtendFromDbError(ExtendFromDbError)

    ExtendFromDbError

    §

    NonConsistentWithShutdownPeriodError(IsConsistentWithShutdownPeriodError)

    IsConsistentWithShutdownPeriodError

    -

    Trait Implementations§

    source§

    impl Debug for FinalStateError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for FinalStateError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for FinalStateError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ExtendFromDbError> for FinalStateError

    source§

    fn from(source: ExtendFromDbError) -> Self

    Converts to this type from the input type.
    source§

    impl From<IsConsistentWithShutdownPeriodError> for FinalStateError

    source§

    fn from(source: IsConsistentWithShutdownPeriodError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for FinalStateError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for FinalStateError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for FinalStateError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ExtendFromDbError> for FinalStateError

    source§

    fn from(source: ExtendFromDbError) -> Self

    Converts to this type from the input type.
    source§

    impl From<IsConsistentWithShutdownPeriodError> for FinalStateError

    source§

    fn from(source: IsConsistentWithShutdownPeriodError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_final_state/final_state/struct.FinalState.html b/massa_final_state/final_state/struct.FinalState.html index 586e3568a6c..ecc5f673bae 100644 --- a/massa_final_state/final_state/struct.FinalState.html +++ b/massa_final_state/final_state/struct.FinalState.html @@ -65,7 +65,7 @@
    §Arguments
    &mut self, cycle: u64, ) -> Result<(), FinalStateError>

    Used during interpolation, when a new cycle is set as completed

    -
    source

    fn _finalize(&mut self, slot: Slot, changes: StateChanges) -> AnyResult<()>

    source

    fn _is_db_valid(&self) -> AnyResult<()>

    Internal function called by is_db_valid

    +
    source

    fn _finalize(&mut self, slot: Slot, changes: StateChanges) -> AnyResult<()>

    source

    fn _is_db_valid(&self) -> AnyResult<()>

    Internal function called by is_db_valid

    source

    pub fn new_derived_from_snapshot( db: ShareableMassaDBController, config: FinalStateConfig, diff --git a/massa_final_state/state_changes/struct.StateChanges.html b/massa_final_state/state_changes/struct.StateChanges.html index 08da691358d..42fa412d52d 100644 --- a/massa_final_state/state_changes/struct.StateChanges.html +++ b/massa_final_state/state_changes/struct.StateChanges.html @@ -15,12 +15,12 @@

    §executed_denunciations_changes: ExecutedDenunciationsChanges

    executed denunciations changes

    §execution_trail_hash_change: SetOrKeep<Hash>

    execution trail hash change

    Implementations§

    source§

    impl StateChanges

    source

    pub fn apply(&mut self, changes: StateChanges)

    extends the current StateChanges with another one

    -

    Trait Implementations§

    source§

    impl Clone for StateChanges

    source§

    fn clone(&self) -> StateChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for StateChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for StateChanges

    source§

    fn default() -> StateChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for StateChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<StateChanges> for StateChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for StateChanges

    source§

    fn clone(&self) -> StateChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for StateChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for StateChanges

    source§

    fn default() -> StateChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for StateChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<StateChanges> for StateChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], StateChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<StateChanges> for StateChanges

    source§

    fn from(value: StateChanges) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for StateChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<StateChanges> for StateChangesSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], StateChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<StateChanges> for StateChanges

    source§

    fn from(value: StateChanges) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for StateChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<StateChanges> for StateChangesSerializer

    source§

    fn serialize( &self, value: &StateChanges, buffer: &mut Vec<u8>, @@ -122,5 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_final_state/struct.FinalState.html b/massa_final_state/struct.FinalState.html index 4b59363f725..89b07cf8525 100644 --- a/massa_final_state/struct.FinalState.html +++ b/massa_final_state/struct.FinalState.html @@ -65,7 +65,7 @@
    §Arguments
    &mut self, cycle: u64, ) -> Result<(), FinalStateError>

    Used during interpolation, when a new cycle is set as completed

    -
    source

    fn _finalize(&mut self, slot: Slot, changes: StateChanges) -> AnyResult<()>

    source

    fn _is_db_valid(&self) -> AnyResult<()>

    Internal function called by is_db_valid

    +
    source

    fn _finalize(&mut self, slot: Slot, changes: StateChanges) -> AnyResult<()>

    source

    fn _is_db_valid(&self) -> AnyResult<()>

    Internal function called by is_db_valid

    source

    pub fn new_derived_from_snapshot( db: ShareableMassaDBController, config: FinalStateConfig, diff --git a/massa_final_state/struct.StateChanges.html b/massa_final_state/struct.StateChanges.html index f78a5791336..f9af60341d7 100644 --- a/massa_final_state/struct.StateChanges.html +++ b/massa_final_state/struct.StateChanges.html @@ -15,12 +15,12 @@ §executed_denunciations_changes: ExecutedDenunciationsChanges

    executed denunciations changes

    §execution_trail_hash_change: SetOrKeep<Hash>

    execution trail hash change

    Implementations§

    source§

    impl StateChanges

    source

    pub fn apply(&mut self, changes: StateChanges)

    extends the current StateChanges with another one

    -

    Trait Implementations§

    source§

    impl Clone for StateChanges

    source§

    fn clone(&self) -> StateChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for StateChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for StateChanges

    source§

    fn default() -> StateChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for StateChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<StateChanges> for StateChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for StateChanges

    source§

    fn clone(&self) -> StateChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for StateChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for StateChanges

    source§

    fn default() -> StateChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for StateChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<StateChanges> for StateChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], StateChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<StateChanges> for StateChanges

    source§

    fn from(value: StateChanges) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for StateChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<StateChanges> for StateChangesSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], StateChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<StateChanges> for StateChanges

    source§

    fn from(value: StateChanges) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for StateChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<StateChanges> for StateChangesSerializer

    source§

    fn serialize( &self, value: &StateChanges, buffer: &mut Vec<u8>, @@ -122,5 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_grpc/config/enum.ServiceName.html b/massa_grpc/config/enum.ServiceName.html index b6d354a5589..501f9463b65 100644 --- a/massa_grpc/config/enum.ServiceName.html +++ b/massa_grpc/config/enum.ServiceName.html @@ -1,11 +1,11 @@ -ServiceName in massa_grpc::config - Rust

    Enum massa_grpc::config::ServiceName

    source ·
    pub enum ServiceName {
    +ServiceName in massa_grpc::config - Rust

    Enum massa_grpc::config::ServiceName

    source ·
    pub enum ServiceName {
         Public,
         Private,
     }
    Expand description

    gRPC service name

    Variants§

    §

    Public

    Public service name

    §

    Private

    Private service name

    -

    Trait Implementations§

    source§

    impl Clone for ServiceName

    source§

    fn clone(&self) -> ServiceName

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ServiceName

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ServiceName

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ServiceName

    source§

    fn clone(&self) -> ServiceName

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ServiceName

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ServiceName

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -127,6 +127,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/config/struct.GrpcApiConfig.html b/massa_grpc/config/struct.GrpcApiConfig.html index 29d19255115..5190d2f6e9d 100644 --- a/massa_grpc/config/struct.GrpcApiConfig.html +++ b/massa_grpc/config/struct.GrpcApiConfig.html @@ -1,11 +1,11 @@ -GrpcApiConfig in massa_grpc::config - Rust

    Struct massa_grpc::config::GrpcApiConfig

    source ·
    pub struct GrpcApiConfig {
    +GrpcApiConfig in massa_grpc::config - Rust

    Struct massa_grpc::config::GrpcApiConfig

    source ·
    pub struct GrpcApiConfig {
         pub public: GrpcConfig,
         pub private: GrpcConfig,
     }
    Expand description

    gRPC API configuration.

    Fields§

    §public: GrpcConfig

    Public server gRPC configuration.

    §private: GrpcConfig

    Private server gRPC configuration.

    -

    Trait Implementations§

    source§

    impl Clone for GrpcApiConfig

    source§

    fn clone(&self) -> GrpcApiConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcApiConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcApiConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for GrpcApiConfig

    source§

    fn clone(&self) -> GrpcApiConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcApiConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcApiConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -127,6 +127,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/config/struct.GrpcConfig.html b/massa_grpc/config/struct.GrpcConfig.html index 3ece4c1ba7b..87c29d3a469 100644 --- a/massa_grpc/config/struct.GrpcConfig.html +++ b/massa_grpc/config/struct.GrpcConfig.html @@ -1,4 +1,4 @@ -GrpcConfig in massa_grpc::config - Rust

    Struct massa_grpc::config::GrpcConfig

    source ·
    pub struct GrpcConfig {
    Show 63 fields +GrpcConfig in massa_grpc::config - Rust

    Struct massa_grpc::config::GrpcConfig

    source ·
    pub struct GrpcConfig {
    Show 63 fields pub name: ServiceName, pub enabled: bool, pub accept_http1: bool, @@ -127,8 +127,8 @@
    §client_private_key_path: PathBuf

    client private key path

    §chain_id: u64

    chain id

    §minimal_fees: Amount

    minimal fees

    -

    Trait Implementations§

    source§

    impl Clone for GrpcConfig

    source§

    fn clone(&self) -> GrpcConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for GrpcConfig

    source§

    fn clone(&self) -> GrpcConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -250,6 +250,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/error/enum.GrpcError.html b/massa_grpc/error/enum.GrpcError.html index b5284adaa06..ed7b0bc990e 100644 --- a/massa_grpc/error/enum.GrpcError.html +++ b/massa_grpc/error/enum.GrpcError.html @@ -1,8 +1,8 @@ -GrpcError in massa_grpc::error - Rust

    Enum massa_grpc::error::GrpcError

    source ·
    #[non_exhaustive]
    pub enum GrpcError { +GrpcError in massa_grpc::error - Rust

    Enum massa_grpc::error::GrpcError

    source ·
    #[non_exhaustive]
    pub enum GrpcError {
    Show 13 variants MassaHashError(MassaHashError), MassaSignatureError(MassaSignatureError), ConsensusError(ConsensusError), - ExecutionError(ExecutionError), + ExecutionError(ExecutionError), ProtocolError(ProtocolError), ReflectionError(Error), ModelsError(ModelsError), @@ -16,7 +16,7 @@

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    MassaHashError(MassaHashError)

    massa_hash error: {0}

    §

    MassaSignatureError(MassaSignatureError)

    massa_hash error: {0}

    §

    ConsensusError(ConsensusError)

    consensus error: {0}

    -
    §

    ExecutionError(ExecutionError)

    execution error: {0}

    +
    §

    ExecutionError(ExecutionError)

    execution error: {0}

    §

    ProtocolError(ProtocolError)

    Protocol error: {0}

    §

    ReflectionError(Error)

    Reflection error : {0}

    §

    ModelsError(ModelsError)

    Models error: {0}

    @@ -26,7 +26,7 @@
    §

    InternalServerError(String)

    Internal server error: {0}

    §

    InvalidArgument(String)

    Invalid argument error: {0}

    §

    Unimplemented(String)

    Not implemented error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for GrpcError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for GrpcError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for GrpcError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ConsensusError> for GrpcError

    source§

    fn from(source: ConsensusError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for GrpcError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<ExecutionError> for GrpcError

    source§

    fn from(source: ExecutionError) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for GrpcError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<GrpcError> for Status

    source§

    fn from(error: GrpcError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for GrpcError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for GrpcError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for GrpcError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for GrpcError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for GrpcError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<WalletError> for GrpcError

    source§

    fn from(source: WalletError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for GrpcError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for GrpcError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for GrpcError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<ConsensusError> for GrpcError

    source§

    fn from(source: ConsensusError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for GrpcError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<ExecutionError> for GrpcError

    source§

    fn from(source: ExecutionError) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for GrpcError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<GrpcError> for Status

    source§

    fn from(error: GrpcError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for GrpcError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for GrpcError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for GrpcError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ProtocolError> for GrpcError

    source§

    fn from(source: ProtocolError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for GrpcError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<WalletError> for GrpcError

    source§

    fn from(source: WalletError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -146,5 +146,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/server/struct.MassaPrivateGrpc.html b/massa_grpc/server/struct.MassaPrivateGrpc.html index 01f28eda63a..dc61cb83a78 100644 --- a/massa_grpc/server/struct.MassaPrivateGrpc.html +++ b/massa_grpc/server/struct.MassaPrivateGrpc.html @@ -1,6 +1,6 @@ -MassaPrivateGrpc in massa_grpc::server - Rust

    Struct massa_grpc::server::MassaPrivateGrpc

    source ·
    pub struct MassaPrivateGrpc {
    +MassaPrivateGrpc in massa_grpc::server - Rust

    Struct massa_grpc::server::MassaPrivateGrpc

    source ·
    pub struct MassaPrivateGrpc {
         pub consensus_controller: Box<dyn ConsensusController>,
    -    pub execution_controller: Box<dyn ExecutionController>,
    +    pub execution_controller: Box<dyn ExecutionController>,
         pub pool_controller: Box<dyn PoolController>,
         pub protocol_controller: Box<dyn ProtocolController>,
         pub stop_cv: Arc<(Mutex<bool>, Condvar)>,
    @@ -13,7 +13,7 @@
         pub bs_white_black_list: Option<SharedWhiteBlackList<'static>>,
     }
    Expand description

    gRPC PRIVATE API content

    Fields§

    §consensus_controller: Box<dyn ConsensusController>

    link to the consensus component

    -
    §execution_controller: Box<dyn ExecutionController>

    link to the execution component

    +
    §execution_controller: Box<dyn ExecutionController>

    link to the execution component

    §pool_controller: Box<dyn PoolController>

    link to the pool component

    §protocol_controller: Box<dyn ProtocolController>

    link to the protocol component

    §stop_cv: Arc<(Mutex<bool>, Condvar)>

    Mechanism by which to gracefully shut down. @@ -269,5 +269,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/server/struct.MassaPublicGrpc.html b/massa_grpc/server/struct.MassaPublicGrpc.html index 81367b40944..0c394f1ccac 100644 --- a/massa_grpc/server/struct.MassaPublicGrpc.html +++ b/massa_grpc/server/struct.MassaPublicGrpc.html @@ -1,8 +1,8 @@ -MassaPublicGrpc in massa_grpc::server - Rust

    Struct massa_grpc::server::MassaPublicGrpc

    source ·
    pub struct MassaPublicGrpc {
    Show 14 fields +MassaPublicGrpc in massa_grpc::server - Rust

    Struct massa_grpc::server::MassaPublicGrpc

    source ·
    pub struct MassaPublicGrpc {
    Show 14 fields pub consensus_controller: Box<dyn ConsensusController>, pub consensus_broadcasts: ConsensusBroadcasts, - pub execution_controller: Box<dyn ExecutionController>, - pub execution_channels: ExecutionChannels, + pub execution_controller: Box<dyn ExecutionController>, + pub execution_channels: ExecutionChannels, pub pool_broadcasts: PoolBroadcasts, pub pool_controller: Box<dyn PoolController>, pub protocol_controller: Box<dyn ProtocolController>, @@ -16,8 +16,8 @@
    }
    Expand description

    gRPC PUBLIC API content

    Fields§

    §consensus_controller: Box<dyn ConsensusController>

    link to the consensus component

    §consensus_broadcasts: ConsensusBroadcasts

    Broadcasts made by consensus component

    -
    §execution_controller: Box<dyn ExecutionController>

    link to the execution component

    -
    §execution_channels: ExecutionChannels

    link(channels) to the execution component

    +
    §execution_controller: Box<dyn ExecutionController>

    link to the execution component

    +
    §execution_channels: ExecutionChannels

    link(channels) to the execution component

    §pool_broadcasts: PoolBroadcasts

    Broadcasts made by pool component

    §pool_controller: Box<dyn PoolController>

    link to the pool component

    §protocol_controller: Box<dyn ProtocolController>

    link to the protocol component

    @@ -323,5 +323,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/server/struct.StopHandle.html b/massa_grpc/server/struct.StopHandle.html index 81706c1b0e1..048da71bfbc 100644 --- a/massa_grpc/server/struct.StopHandle.html +++ b/massa_grpc/server/struct.StopHandle.html @@ -1,4 +1,4 @@ -StopHandle in massa_grpc::server - Rust

    Struct massa_grpc::server::StopHandle

    source ·
    pub struct StopHandle {
    +StopHandle in massa_grpc::server - Rust

    Struct massa_grpc::server::StopHandle

    source ·
    pub struct StopHandle {
         stop_cmd_sender: Sender<()>,
     }
    Expand description

    Used to be able to stop the gRPC API

    Fields§

    §stop_cmd_sender: Sender<()>

    Implementations§

    source§

    impl StopHandle

    source

    pub fn stop(self)

    stop the gRPC API gracefully

    @@ -120,5 +120,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_blocks/struct.Filter.html b/massa_grpc/stream/new_blocks/struct.Filter.html index ad16c0de3af..970c6625827 100644 --- a/massa_grpc/stream/new_blocks/struct.Filter.html +++ b/massa_grpc/stream/new_blocks/struct.Filter.html @@ -1,4 +1,4 @@ -Filter in massa_grpc::stream::new_blocks - Rust

    Struct massa_grpc::stream::new_blocks::Filter

    source ·
    struct Filter {
    +Filter in massa_grpc::stream::new_blocks - Rust

    Struct massa_grpc::stream::new_blocks::Filter

    source ·
    struct Filter {
         block_ids: Option<HashSet<BlockId>>,
         addresses: Option<HashSet<Address>>,
         slot_ranges: Option<HashSet<SlotRange>>,
    @@ -124,5 +124,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_endorsements/struct.Filter.html b/massa_grpc/stream/new_endorsements/struct.Filter.html index 28f2a2db2e7..bc736425ae2 100644 --- a/massa_grpc/stream/new_endorsements/struct.Filter.html +++ b/massa_grpc/stream/new_endorsements/struct.Filter.html @@ -1,4 +1,4 @@ -Filter in massa_grpc::stream::new_endorsements - Rust

    Struct massa_grpc::stream::new_endorsements::Filter

    source ·
    struct Filter {
    +Filter in massa_grpc::stream::new_endorsements - Rust

    Struct massa_grpc::stream::new_endorsements::Filter

    source ·
    struct Filter {
         endorsement_ids: Option<HashSet<EndorsementId>>,
         addresses: Option<HashSet<Address>>,
         block_ids: Option<HashSet<BlockId>>,
    @@ -120,5 +120,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_filled_blocks/struct.Filter.html b/massa_grpc/stream/new_filled_blocks/struct.Filter.html index 842e6a68f3a..c048630886d 100644 --- a/massa_grpc/stream/new_filled_blocks/struct.Filter.html +++ b/massa_grpc/stream/new_filled_blocks/struct.Filter.html @@ -1,4 +1,4 @@ -Filter in massa_grpc::stream::new_filled_blocks - Rust

    Struct massa_grpc::stream::new_filled_blocks::Filter

    source ·
    struct Filter {
    +Filter in massa_grpc::stream::new_filled_blocks - Rust

    Struct massa_grpc::stream::new_filled_blocks::Filter

    source ·
    struct Filter {
         block_ids: Option<HashSet<BlockId>>,
         addresses: Option<HashSet<Address>>,
         slot_ranges: Option<HashSet<SlotRange>>,
    @@ -124,5 +124,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_operations/struct.Filter.html b/massa_grpc/stream/new_operations/struct.Filter.html index 8e2503ccb46..04ebdd398d2 100644 --- a/massa_grpc/stream/new_operations/struct.Filter.html +++ b/massa_grpc/stream/new_operations/struct.Filter.html @@ -1,4 +1,4 @@ -Filter in massa_grpc::stream::new_operations - Rust

    Struct massa_grpc::stream::new_operations::Filter

    source ·
    struct Filter {
    +Filter in massa_grpc::stream::new_operations - Rust

    Struct massa_grpc::stream::new_operations::Filter

    source ·
    struct Filter {
         operation_ids: Option<HashSet<OperationId>>,
         addresses: Option<HashSet<Address>>,
         operation_types: Option<HashSet<i32>>,
    @@ -120,5 +120,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_abi_call_stacks/struct.SlotAbiCallStack.html b/massa_grpc/stream/new_slot_abi_call_stacks/struct.SlotAbiCallStack.html index 986c2a4b34e..b349c42ac1e 100644 --- a/massa_grpc/stream/new_slot_abi_call_stacks/struct.SlotAbiCallStack.html +++ b/massa_grpc/stream/new_slot_abi_call_stacks/struct.SlotAbiCallStack.html @@ -1,4 +1,4 @@ -SlotAbiCallStack in massa_grpc::stream::new_slot_abi_call_stacks - Rust
    struct SlotAbiCallStack {
    +SlotAbiCallStack in massa_grpc::stream::new_slot_abi_call_stacks - Rust
    struct SlotAbiCallStack {
         pub slot: Slot,
     }

    Fields§

    §slot: Slot

    Slot

    Trait Implementations§

    source§

    impl Clone for SlotAbiCallStack

    source§

    fn clone(&self) -> SlotAbiCallStack

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -123,5 +123,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map.html b/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map.html index 6f67663b3cf..6850f812978 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map.html +++ b/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map.html @@ -1,6 +1,6 @@ filter_map in massa_grpc::stream::new_slot_execution_outputs - Rust
    fn filter_map(
    -    slot_execution_output: SlotExecutionOutput,
    +    slot_execution_output: SlotExecutionOutput,
         filters: &Filter,
         grpc_config: &GrpcConfig,
    -) -> Option<SlotExecutionOutput>
    Expand description

    Return if the slot execution outputs should be send to client

    +) -> Option<SlotExecutionOutput>
    Expand description

    Return if the slot execution outputs should be send to client

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map_exec_output.html b/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map_exec_output.html index 5093385ecaa..093da3eb0c1 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map_exec_output.html +++ b/massa_grpc/stream/new_slot_execution_outputs/fn.filter_map_exec_output.html @@ -1,5 +1,5 @@ filter_map_exec_output in massa_grpc::stream::new_slot_execution_outputs - Rust
    fn filter_map_exec_output(
    -    exec_output: ExecutionOutput,
    +    exec_output: ExecutionOutput,
         filters: &Filter,
         grpc_config: &GrpcConfig,
    -) -> Option<ExecutionOutput>
    \ No newline at end of file +) -> Option<ExecutionOutput>
    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/struct.AsyncPoolChangesFilter.html b/massa_grpc/stream/new_slot_execution_outputs/struct.AsyncPoolChangesFilter.html index 8ac4b378539..af807b16f69 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/struct.AsyncPoolChangesFilter.html +++ b/massa_grpc/stream/new_slot_execution_outputs/struct.AsyncPoolChangesFilter.html @@ -1,4 +1,4 @@ -AsyncPoolChangesFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct AsyncPoolChangesFilter {
    +AsyncPoolChangesFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct AsyncPoolChangesFilter {
         none: Option<()>,
     }

    Fields§

    §none: Option<()>

    Trait Implementations§

    source§

    impl Clone for AsyncPoolChangesFilter

    source§

    fn clone(&self) -> AsyncPoolChangesFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for AsyncPoolChangesFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for AsyncPoolChangesFilter

    source§

    fn default() -> AsyncPoolChangesFilter

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -122,5 +122,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedDenounciationFilter.html b/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedDenounciationFilter.html index fd8a6c19e6e..251ed99ad39 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedDenounciationFilter.html +++ b/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedDenounciationFilter.html @@ -1,4 +1,4 @@ -ExecutedDenounciationFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct ExecutedDenounciationFilter {
    +ExecutedDenounciationFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct ExecutedDenounciationFilter {
         none: Option<()>,
     }

    Fields§

    §none: Option<()>

    Trait Implementations§

    source§

    impl Clone for ExecutedDenounciationFilter

    source§

    fn clone(&self) -> ExecutedDenounciationFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutedDenounciationFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ExecutedDenounciationFilter

    source§

    fn default() -> ExecutedDenounciationFilter

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -122,5 +122,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedOpsChangesFilter.html b/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedOpsChangesFilter.html index d736dbf38f0..095978cb98c 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedOpsChangesFilter.html +++ b/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutedOpsChangesFilter.html @@ -1,4 +1,4 @@ -ExecutedOpsChangesFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct ExecutedOpsChangesFilter {
    +ExecutedOpsChangesFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct ExecutedOpsChangesFilter {
         none: Option<()>,
     }

    Fields§

    §none: Option<()>

    Trait Implementations§

    source§

    impl Clone for ExecutedOpsChangesFilter

    source§

    fn clone(&self) -> ExecutedOpsChangesFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutedOpsChangesFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ExecutedOpsChangesFilter

    source§

    fn default() -> ExecutedOpsChangesFilter

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -122,5 +122,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutionEventFilter.html b/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutionEventFilter.html index aeaa39bc430..e82ec639491 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutionEventFilter.html +++ b/massa_grpc/stream/new_slot_execution_outputs/struct.ExecutionEventFilter.html @@ -1,4 +1,4 @@ -ExecutionEventFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct ExecutionEventFilter {
    +ExecutionEventFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct ExecutionEventFilter {
         none: Option<()>,
     }

    Fields§

    §none: Option<()>

    Trait Implementations§

    source§

    impl Clone for ExecutionEventFilter

    source§

    fn clone(&self) -> ExecutionEventFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionEventFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ExecutionEventFilter

    source§

    fn default() -> ExecutionEventFilter

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -122,5 +122,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/struct.Filter.html b/massa_grpc/stream/new_slot_execution_outputs/struct.Filter.html index e54f18e9c09..20651d3eae3 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/struct.Filter.html +++ b/massa_grpc/stream/new_slot_execution_outputs/struct.Filter.html @@ -1,4 +1,4 @@ -Filter in massa_grpc::stream::new_slot_execution_outputs - Rust

    Struct massa_grpc::stream::new_slot_execution_outputs::Filter

    source ·
    struct Filter {
    +Filter in massa_grpc::stream::new_slot_execution_outputs - Rust

    Struct massa_grpc::stream::new_slot_execution_outputs::Filter

    source ·
    struct Filter {
         status_filter: Option<HashSet<i32>>,
         slot_ranges_filter: Option<HashSet<SlotRange>>,
         async_pool_changes_filter: Option<AsyncPoolChangesFilter>,
    @@ -128,5 +128,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/stream/new_slot_execution_outputs/struct.LedgerChangesFilter.html b/massa_grpc/stream/new_slot_execution_outputs/struct.LedgerChangesFilter.html index b38cccb9baa..9fdfb9187e4 100644 --- a/massa_grpc/stream/new_slot_execution_outputs/struct.LedgerChangesFilter.html +++ b/massa_grpc/stream/new_slot_execution_outputs/struct.LedgerChangesFilter.html @@ -1,4 +1,4 @@ -LedgerChangesFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct LedgerChangesFilter {
    +LedgerChangesFilter in massa_grpc::stream::new_slot_execution_outputs - Rust
    struct LedgerChangesFilter {
         none: Option<()>,
     }

    Fields§

    §none: Option<()>

    Trait Implementations§

    source§

    impl Clone for LedgerChangesFilter

    source§

    fn clone(&self) -> LedgerChangesFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChangesFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChangesFilter

    source§

    fn default() -> LedgerChangesFilter

    Returns the “default value” for a type. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -122,5 +122,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/struct.EndorsementDraw.html b/massa_grpc/struct.EndorsementDraw.html index d6c986f1312..4b17da071b4 100644 --- a/massa_grpc/struct.EndorsementDraw.html +++ b/massa_grpc/struct.EndorsementDraw.html @@ -1,4 +1,4 @@ -EndorsementDraw in massa_grpc - Rust

    Struct massa_grpc::EndorsementDraw

    source ·
    pub(crate) struct EndorsementDraw {
    +EndorsementDraw in massa_grpc - Rust

    Struct massa_grpc::EndorsementDraw

    source ·
    pub(crate) struct EndorsementDraw {
         pub(crate) index: u64,
         pub(crate) producer: String,
     }

    Fields§

    §index: u64

    Endorsement index

    @@ -142,5 +142,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/struct.SlotDraw.html b/massa_grpc/struct.SlotDraw.html index 163788d33aa..96fdaa15203 100644 --- a/massa_grpc/struct.SlotDraw.html +++ b/massa_grpc/struct.SlotDraw.html @@ -1,4 +1,4 @@ -SlotDraw in massa_grpc - Rust

    Struct massa_grpc::SlotDraw

    source ·
    pub(crate) struct SlotDraw {
    +SlotDraw in massa_grpc - Rust

    Struct massa_grpc::SlotDraw

    source ·
    pub(crate) struct SlotDraw {
         pub(crate) slot: Option<Slot>,
         pub(crate) block_producer: Option<String>,
         pub(crate) endorsement_draws: Vec<EndorsementDraw>,
    @@ -144,5 +144,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_grpc/struct.SlotRange.html b/massa_grpc/struct.SlotRange.html index b8ae46b3e7a..73a414f2d06 100644 --- a/massa_grpc/struct.SlotRange.html +++ b/massa_grpc/struct.SlotRange.html @@ -1,4 +1,4 @@ -SlotRange in massa_grpc - Rust

    Struct massa_grpc::SlotRange

    source ·
    pub struct SlotRange {
    +SlotRange in massa_grpc - Rust

    Struct massa_grpc::SlotRange

    source ·
    pub struct SlotRange {
         pub(crate) start_slot: Option<Slot>,
         pub(crate) end_slot: Option<Slot>,
     }
    Expand description

    Slot range type

    @@ -142,5 +142,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_hash/hash/struct.Hash.html b/massa_hash/hash/struct.Hash.html index d8bcb8b131d..88d4cc93b34 100644 --- a/massa_hash/hash/struct.Hash.html +++ b/massa_hash/hash/struct.Hash.html @@ -54,7 +54,7 @@
    §Example
    let hash = Hash::compute_from(&"hello world".as_bytes());
     let serialized = hash.into_bytes();
     let deserialized: Hash = Hash::from_bytes(&serialized);
    -

    Trait Implementations§

    source§

    impl Clone for Hash

    source§

    fn clone(&self) -> Hash

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Hash

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Hash

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Hash, D::Error>

    ::serde::Deserialize trait for Hash +

    Trait Implementations§

    source§

    impl Clone for Hash

    source§

    fn clone(&self) -> Hash

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Hash

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Hash

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Hash, D::Error>

    ::serde::Deserialize trait for Hash if the deserializer is human readable, deserialization is done using deserialize_bs58_check else, it uses deserialize_binary

    @@ -89,7 +89,7 @@
    §Example
    by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for Hash

    source§

    fn partial_cmp(&self, other: &Self) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for Hash

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Hash +operator. Read more

    source§

    impl Serialize for Hash

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Hash if the serializer is human readable, serialization is done using serialize_bs58_check else, it uses serialize_binary

    @@ -117,5 +117,5 @@
    §Example
    T: Clone,
    §

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    source§

    impl<T> ToString for T
    where T: Display + ?Sized,

    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where - U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + U: TryFrom<T>,
    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_hash/hash_xof/struct.HashXof.html b/massa_hash/hash_xof/struct.HashXof.html index 83f2d86b58c..25f2f557050 100644 --- a/massa_hash/hash_xof/struct.HashXof.html +++ b/massa_hash/hash_xof/struct.HashXof.html @@ -12,7 +12,7 @@
  • ambiguous letters combined (eg. O vs 0, or l vs 1)
  • contains a checksum at the end to detect typing errors
  • -

    Trait Implementations§

    source§

    impl<const SIZE: usize> BitXor for HashXof<SIZE>

    §

    type Output = HashXof<SIZE>

    The resulting type after applying the ^ operator.
    source§

    fn bitxor(self, other: Self) -> Self

    Performs the ^ operation. Read more
    source§

    impl<const SIZE: usize> BitXorAssign for HashXof<SIZE>

    source§

    fn bitxor_assign(&mut self, rhs: Self)

    Performs the ^= operation. Read more
    source§

    impl<const SIZE: usize> Clone for HashXof<SIZE>

    source§

    fn clone(&self) -> HashXof<SIZE>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<const SIZE: usize> Debug for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> Deserializer<HashXof<SIZE>> for HashXofDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl<const SIZE: usize> BitXor for HashXof<SIZE>

    §

    type Output = HashXof<SIZE>

    The resulting type after applying the ^ operator.
    source§

    fn bitxor(self, other: Self) -> Self

    Performs the ^ operation. Read more
    source§

    impl<const SIZE: usize> BitXorAssign for HashXof<SIZE>

    source§

    fn bitxor_assign(&mut self, rhs: Self)

    Performs the ^= operation. Read more
    source§

    impl<const SIZE: usize> Clone for HashXof<SIZE>

    source§

    fn clone(&self) -> HashXof<SIZE>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<const SIZE: usize> Debug for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> Deserializer<HashXof<SIZE>> for HashXofDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], HashXof<SIZE>, E>

    §Example
    @@ -24,7 +24,7 @@ let (rest, deserialized) = hash_deserializer.deserialize::<DeserializeError>(hash.to_bytes()).unwrap(); assert_eq!(deserialized, hash); assert_eq!(rest.len(), 0);
    -
    source§

    impl<const SIZE: usize> Display for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> PartialEq for HashXof<SIZE>

    source§

    fn eq(&self, other: &HashXof<SIZE>) -> bool

    This method tests for self and other values to be equal, and is used +
    source§

    impl<const SIZE: usize> Display for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> PartialEq for HashXof<SIZE>

    source§

    fn eq(&self, other: &HashXof<SIZE>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl<const SIZE: usize> Serializer<HashXof<SIZE>> for HashXofSerializer

    source§

    fn serialize( &self, diff --git a/massa_hash/struct.Hash.html b/massa_hash/struct.Hash.html index 568d226d8e6..307b87ea217 100644 --- a/massa_hash/struct.Hash.html +++ b/massa_hash/struct.Hash.html @@ -54,7 +54,7 @@

    §Example
    let hash = Hash::compute_from(&"hello world".as_bytes());
     let serialized = hash.into_bytes();
     let deserialized: Hash = Hash::from_bytes(&serialized);
    -

    Trait Implementations§

    source§

    impl Clone for Hash

    source§

    fn clone(&self) -> Hash

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Hash

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Hash

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Hash, D::Error>

    ::serde::Deserialize trait for Hash +

    Trait Implementations§

    source§

    impl Clone for Hash

    source§

    fn clone(&self) -> Hash

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Hash

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Hash

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Hash, D::Error>

    ::serde::Deserialize trait for Hash if the deserializer is human readable, deserialization is done using deserialize_bs58_check else, it uses deserialize_binary

    @@ -89,7 +89,7 @@
    §Example
    by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for Hash

    source§

    fn partial_cmp(&self, other: &Self) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for Hash

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Hash +operator. Read more

    source§

    impl Serialize for Hash

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Hash if the serializer is human readable, serialization is done using serialize_bs58_check else, it uses serialize_binary

    @@ -117,5 +117,5 @@
    §Example
    T: Clone,
    §

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    source§

    impl<T> ToString for T
    where T: Display + ?Sized,

    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where - U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + U: TryFrom<T>,
    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_hash/struct.HashXof.html b/massa_hash/struct.HashXof.html index c62614b60c7..739625b399d 100644 --- a/massa_hash/struct.HashXof.html +++ b/massa_hash/struct.HashXof.html @@ -12,7 +12,7 @@
  • ambiguous letters combined (eg. O vs 0, or l vs 1)
  • contains a checksum at the end to detect typing errors
  • -

    Trait Implementations§

    source§

    impl<const SIZE: usize> BitXor for HashXof<SIZE>

    §

    type Output = HashXof<SIZE>

    The resulting type after applying the ^ operator.
    source§

    fn bitxor(self, other: Self) -> Self

    Performs the ^ operation. Read more
    source§

    impl<const SIZE: usize> BitXorAssign for HashXof<SIZE>

    source§

    fn bitxor_assign(&mut self, rhs: Self)

    Performs the ^= operation. Read more
    source§

    impl<const SIZE: usize> Clone for HashXof<SIZE>

    source§

    fn clone(&self) -> HashXof<SIZE>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<const SIZE: usize> Debug for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> Deserializer<HashXof<SIZE>> for HashXofDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl<const SIZE: usize> BitXor for HashXof<SIZE>

    §

    type Output = HashXof<SIZE>

    The resulting type after applying the ^ operator.
    source§

    fn bitxor(self, other: Self) -> Self

    Performs the ^ operation. Read more
    source§

    impl<const SIZE: usize> BitXorAssign for HashXof<SIZE>

    source§

    fn bitxor_assign(&mut self, rhs: Self)

    Performs the ^= operation. Read more
    source§

    impl<const SIZE: usize> Clone for HashXof<SIZE>

    source§

    fn clone(&self) -> HashXof<SIZE>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<const SIZE: usize> Debug for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> Deserializer<HashXof<SIZE>> for HashXofDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], HashXof<SIZE>, E>

    §Example
    @@ -24,7 +24,7 @@ let (rest, deserialized) = hash_deserializer.deserialize::<DeserializeError>(hash.to_bytes()).unwrap(); assert_eq!(deserialized, hash); assert_eq!(rest.len(), 0);
    -
    source§

    impl<const SIZE: usize> Display for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> PartialEq for HashXof<SIZE>

    source§

    fn eq(&self, other: &HashXof<SIZE>) -> bool

    This method tests for self and other values to be equal, and is used +
    source§

    impl<const SIZE: usize> Display for HashXof<SIZE>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<const SIZE: usize> PartialEq for HashXof<SIZE>

    source§

    fn eq(&self, other: &HashXof<SIZE>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl<const SIZE: usize> Serializer<HashXof<SIZE>> for HashXofSerializer

    source§

    fn serialize( &self, diff --git a/massa_ledger_exports/enum.LedgerError.html b/massa_ledger_exports/enum.LedgerError.html index bd44a8be9c4..12f8b53405e 100644 --- a/massa_ledger_exports/enum.LedgerError.html +++ b/massa_ledger_exports/enum.LedgerError.html @@ -6,7 +6,7 @@

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    ContainerInconsistency(String)

    container inconsistency: {0}

    §

    MissingEntry(String)

    missing entry: {0}

    §

    FileError(String)

    file error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for LedgerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for LedgerError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for LedgerError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for LedgerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for LedgerError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for LedgerError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_ledger_exports/error/enum.LedgerError.html b/massa_ledger_exports/error/enum.LedgerError.html index 5cb61c97849..bb078769adb 100644 --- a/massa_ledger_exports/error/enum.LedgerError.html +++ b/massa_ledger_exports/error/enum.LedgerError.html @@ -6,7 +6,7 @@

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    ContainerInconsistency(String)

    container inconsistency: {0}

    §

    MissingEntry(String)

    missing entry: {0}

    §

    FileError(String)

    file error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for LedgerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for LedgerError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for LedgerError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for LedgerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for LedgerError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for LedgerError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_ledger_exports/ledger_changes/struct.LedgerChanges.html b/massa_ledger_exports/ledger_changes/struct.LedgerChanges.html index e84da03bbcc..a678e69b430 100644 --- a/massa_ledger_exports/ledger_changes/struct.LedgerChanges.html +++ b/massa_ledger_exports/ledger_changes/struct.LedgerChanges.html @@ -159,8 +159,8 @@
    §Argumentskey: datastore key

    Trait Implementations§

    source§

    impl Applicable<LedgerChanges> for LedgerChanges

    source§

    fn apply(&mut self, changes: LedgerChanges)

    extends the current LedgerChanges with another one

    -
    source§

    impl Clone for LedgerChanges

    source§

    fn clone(&self) -> LedgerChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChanges

    source§

    fn default() -> LedgerChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Clone for LedgerChanges

    source§

    fn clone(&self) -> LedgerChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChanges

    source§

    fn default() -> LedgerChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerChanges, E>

    §Example
    @@ -193,8 +193,8 @@
    §Argumentsassert_eq!(changes, changes_deser);
    source§

    impl PartialEq for LedgerChanges

    source§

    fn eq(&self, other: &LedgerChanges) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for LedgerChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for LedgerChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    fn serialize( &self, value: &LedgerChanges, buffer: &mut Vec<u8>, @@ -327,5 +327,5 @@

    §Arguments
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_ledger_exports/ledger_changes/struct.LedgerEntryUpdate.html b/massa_ledger_exports/ledger_changes/struct.LedgerEntryUpdate.html index 051a7f22480..ad793042d17 100644 --- a/massa_ledger_exports/ledger_changes/struct.LedgerEntryUpdate.html +++ b/massa_ledger_exports/ledger_changes/struct.LedgerEntryUpdate.html @@ -7,12 +7,12 @@ §bytecode: SetOrKeep<Bytecode>

    change the executable bytecode

    §datastore: BTreeMap<Vec<u8>, SetOrDelete<Vec<u8>>>

    change datastore entries

    Trait Implementations§

    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntry

    A LedgerEntryUpdate can be applied to a LedgerEntry

    -
    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntryUpdate

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    extends the LedgerEntryUpdate with another one

    -
    source§

    impl Clone for LedgerEntryUpdate

    source§

    fn clone(&self) -> LedgerEntryUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntryUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntryUpdate

    source§

    fn default() -> LedgerEntryUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntryUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntryUpdate> for LedgerEntryUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntryUpdate

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    extends the LedgerEntryUpdate with another one

    +
    source§

    impl Clone for LedgerEntryUpdate

    source§

    fn clone(&self) -> LedgerEntryUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntryUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntryUpdate

    source§

    fn default() -> LedgerEntryUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntryUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntryUpdate> for LedgerEntryUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], LedgerEntryUpdate, E>

    §Example
    +) -> IResult<&'a [u8], LedgerEntryUpdate, E>
    §Example
    use massa_serialization::{Deserializer, Serializer, DeserializeError};
     use massa_models::{prehash::PreHashMap, address::Address, amount::Amount, bytecode::Bytecode};
     use std::str::FromStr;
    @@ -39,12 +39,12 @@
     assert_eq!(ledger_entry, ledger_entry_deser);
    source§

    impl From<LedgerEntryUpdate> for LedgerEntryUpdate

    source§

    fn from(value: LedgerEntryUpdate) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for LedgerEntryUpdate

    source§

    fn eq(&self, other: &LedgerEntryUpdate) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for LedgerEntryUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntryUpdate> for LedgerEntryUpdateSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for LedgerEntryUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntryUpdate> for LedgerEntryUpdateSerializer

    source§

    fn serialize( &self, value: &LedgerEntryUpdate, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_serialization::Serializer;
     use massa_models::{prehash::PreHashMap, address::Address, amount::Amount, bytecode::Bytecode};
     use std::str::FromStr;
    @@ -169,5 +169,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_ledger_exports/ledger_entry/struct.LedgerEntry.html b/massa_ledger_exports/ledger_entry/struct.LedgerEntry.html index 8ae48b9c1cc..14dde82617f 100644 --- a/massa_ledger_exports/ledger_entry/struct.LedgerEntry.html +++ b/massa_ledger_exports/ledger_entry/struct.LedgerEntry.html @@ -7,8 +7,8 @@ §bytecode: Bytecode

    Executable bytecode

    §datastore: Datastore

    A key-value store associating a hash to arbitrary bytes

    Trait Implementations§

    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntry

    A LedgerEntryUpdate can be applied to a LedgerEntry

    -
    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Clone for LedgerEntry

    source§

    fn clone(&self) -> LedgerEntry

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntry

    source§

    fn default() -> LedgerEntry

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntry

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntry> for LedgerEntryDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Clone for LedgerEntry

    source§

    fn clone(&self) -> LedgerEntry

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntry

    source§

    fn default() -> LedgerEntry

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntry

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntry> for LedgerEntryDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerEntry, E>

    §Example
    @@ -37,8 +37,8 @@ assert_eq!(ledger_entry, ledger_entry_deser);
    source§

    impl From<LedgerEntry> for LedgerEntry

    source§

    fn from(value: LedgerEntry) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for LedgerEntry

    source§

    fn eq(&self, other: &LedgerEntry) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for LedgerEntry

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntry> for LedgerEntrySerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for LedgerEntry

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntry> for LedgerEntrySerializer

    source§

    fn serialize( &self, value: &LedgerEntry, buffer: &mut Vec<u8>, @@ -166,5 +166,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_ledger_exports/struct.LedgerChanges.html b/massa_ledger_exports/struct.LedgerChanges.html index 292684aa332..01a94353e73 100644 --- a/massa_ledger_exports/struct.LedgerChanges.html +++ b/massa_ledger_exports/struct.LedgerChanges.html @@ -159,8 +159,8 @@
    §Argumentskey: datastore key

    Trait Implementations§

    source§

    impl Applicable<LedgerChanges> for LedgerChanges

    source§

    fn apply(&mut self, changes: LedgerChanges)

    extends the current LedgerChanges with another one

    -
    source§

    impl Clone for LedgerChanges

    source§

    fn clone(&self) -> LedgerChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChanges

    source§

    fn default() -> LedgerChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Clone for LedgerChanges

    source§

    fn clone(&self) -> LedgerChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChanges

    source§

    fn default() -> LedgerChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerChanges, E>

    §Example
    @@ -193,8 +193,8 @@
    §Argumentsassert_eq!(changes, changes_deser);
    source§

    impl PartialEq for LedgerChanges

    source§

    fn eq(&self, other: &LedgerChanges) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for LedgerChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for LedgerChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    fn serialize( &self, value: &LedgerChanges, buffer: &mut Vec<u8>, @@ -327,5 +327,5 @@

    §Arguments
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_ledger_exports/struct.LedgerEntry.html b/massa_ledger_exports/struct.LedgerEntry.html index 5e96cca8cd9..b063489a5de 100644 --- a/massa_ledger_exports/struct.LedgerEntry.html +++ b/massa_ledger_exports/struct.LedgerEntry.html @@ -7,8 +7,8 @@ §bytecode: Bytecode

    Executable bytecode

    §datastore: Datastore

    A key-value store associating a hash to arbitrary bytes

    Trait Implementations§

    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntry

    A LedgerEntryUpdate can be applied to a LedgerEntry

    -
    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Clone for LedgerEntry

    source§

    fn clone(&self) -> LedgerEntry

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntry

    source§

    fn default() -> LedgerEntry

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntry

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntry> for LedgerEntryDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Clone for LedgerEntry

    source§

    fn clone(&self) -> LedgerEntry

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntry

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntry

    source§

    fn default() -> LedgerEntry

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntry

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntry> for LedgerEntryDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerEntry, E>

    §Example
    @@ -37,8 +37,8 @@ assert_eq!(ledger_entry, ledger_entry_deser);
    source§

    impl From<LedgerEntry> for LedgerEntry

    source§

    fn from(value: LedgerEntry) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for LedgerEntry

    source§

    fn eq(&self, other: &LedgerEntry) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for LedgerEntry

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntry> for LedgerEntrySerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for LedgerEntry

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntry> for LedgerEntrySerializer

    source§

    fn serialize( &self, value: &LedgerEntry, buffer: &mut Vec<u8>, @@ -166,5 +166,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_ledger_exports/struct.LedgerEntryUpdate.html b/massa_ledger_exports/struct.LedgerEntryUpdate.html index 724f0790e00..a9b1f80cca5 100644 --- a/massa_ledger_exports/struct.LedgerEntryUpdate.html +++ b/massa_ledger_exports/struct.LedgerEntryUpdate.html @@ -7,12 +7,12 @@ §bytecode: SetOrKeep<Bytecode>

    change the executable bytecode

    §datastore: BTreeMap<Vec<u8>, SetOrDelete<Vec<u8>>>

    change datastore entries

    Trait Implementations§

    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntry

    A LedgerEntryUpdate can be applied to a LedgerEntry

    -
    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntryUpdate

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    extends the LedgerEntryUpdate with another one

    -
    source§

    impl Clone for LedgerEntryUpdate

    source§

    fn clone(&self) -> LedgerEntryUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntryUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntryUpdate

    source§

    fn default() -> LedgerEntryUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntryUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntryUpdate> for LedgerEntryUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    apply changes from other to mutable self
    source§

    impl Applicable<LedgerEntryUpdate> for LedgerEntryUpdate

    source§

    fn apply(&mut self, update: LedgerEntryUpdate)

    extends the LedgerEntryUpdate with another one

    +
    source§

    impl Clone for LedgerEntryUpdate

    source§

    fn clone(&self) -> LedgerEntryUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerEntryUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerEntryUpdate

    source§

    fn default() -> LedgerEntryUpdate

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerEntryUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerEntryUpdate> for LedgerEntryUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], LedgerEntryUpdate, E>

    §Example
    +) -> IResult<&'a [u8], LedgerEntryUpdate, E>
    §Example
    use massa_serialization::{Deserializer, Serializer, DeserializeError};
     use massa_models::{prehash::PreHashMap, address::Address, amount::Amount, bytecode::Bytecode};
     use std::str::FromStr;
    @@ -39,12 +39,12 @@
     assert_eq!(ledger_entry, ledger_entry_deser);
    source§

    impl From<LedgerEntryUpdate> for LedgerEntryUpdate

    source§

    fn from(value: LedgerEntryUpdate) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for LedgerEntryUpdate

    source§

    fn eq(&self, other: &LedgerEntryUpdate) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for LedgerEntryUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntryUpdate> for LedgerEntryUpdateSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for LedgerEntryUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerEntryUpdate> for LedgerEntryUpdateSerializer

    source§

    fn serialize( &self, value: &LedgerEntryUpdate, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_serialization::Serializer;
     use massa_models::{prehash::PreHashMap, address::Address, amount::Amount, bytecode::Bytecode};
     use std::str::FromStr;
    @@ -169,5 +169,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_logging/index.html b/massa_logging/index.html index c713189d75e..dd819a84790 100644 --- a/massa_logging/index.html +++ b/massa_logging/index.html @@ -1,2 +1,2 @@ massa_logging - Rust

    Crate massa_logging

    source ·
    Expand description

    Log utilities

    -

    Re-exports§

    Macros§

    \ No newline at end of file +

    Re-exports§

    Macros§

    \ No newline at end of file diff --git a/massa_models/active_block/struct.ActiveBlock.html b/massa_models/active_block/struct.ActiveBlock.html index ac365cc0770..f3912ce0fda 100644 --- a/massa_models/active_block/struct.ActiveBlock.html +++ b/massa_models/active_block/struct.ActiveBlock.html @@ -19,9 +19,9 @@ §slot: Slot

    Slot of the block.

    §fitness: u64

    Fitness

    §same_thread_parent_creator: Option<Address>

    Same-thread parent creator

    -

    Trait Implementations§

    source§

    impl Clone for ActiveBlock

    source§

    fn clone(&self) -> ActiveBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ActiveBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ActiveBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ActiveBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ActiveBlock

    source§

    fn clone(&self) -> ActiveBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ActiveBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ActiveBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ActiveBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -119,5 +119,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/address/enum.Address.html b/massa_models/address/enum.Address.html index 20d52e9e7e4..7940f43bea3 100644 --- a/massa_models/address/enum.Address.html +++ b/massa_models/address/enum.Address.html @@ -7,10 +7,10 @@
    source

    pub fn from_public_key(public_key: &PublicKey) -> Self

    Computes the address associated with the given public key. Depends on the Public Key version

    source

    pub fn to_prefixed_bytes(self) -> Vec<u8>

    Serialize the address as bytes. Includes the type and version prefixes

    -

    Trait Implementations§

    source§

    impl Clone for Address

    source§

    fn clone(&self) -> Address

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Address

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Address

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Address, D::Error>

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Address> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Address

    source§

    fn clone(&self) -> Address

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Address

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Address

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Address, D::Error>

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Address> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Address, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for Address

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for Address

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for Address

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], Address, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for Address

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for Address

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for Address

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for Address

    source§

    fn cmp(&self, other: &Address) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -19,11 +19,11 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for Address

    source§

    fn partial_cmp(&self, other: &Address) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for Address

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Address> for AddressSerializer

    source§

    impl Serialize for Address

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Address> for AddressSerializer

    source§

    fn serialize( &self, value: &Address, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for Address

    source§

    impl Eq for Address

    source§

    impl PreHashed for Address

    source§

    impl StructuralPartialEq for Address

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for Address

    source§

    impl Eq for Address

    source§

    impl PreHashed for Address

    source§

    impl StructuralPartialEq for Address

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -134,7 +134,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/address/enum.SCAddress.html b/massa_models/address/enum.SCAddress.html index c3e1cfa4ad8..fc803aa35bd 100644 --- a/massa_models/address/enum.SCAddress.html +++ b/massa_models/address/enum.SCAddress.html @@ -2,10 +2,10 @@ SCAddressV0(SCAddressV0), }
    Expand description

    Derived from a public key.

    Variants§

    §

    SCAddressV0(SCAddressV0)

    Implementations§

    source§

    impl SCAddress

    source

    fn from_str_without_prefixed_type(s: &str) -> Result<Self, ModelsError>

    source

    pub fn to_prefixed_bytes(self) -> Vec<u8>

    Serialize the address as bytes. Includes the type and version prefixes

    -

    Trait Implementations§

    source§

    impl Clone for SCAddress

    source§

    fn clone(&self) -> SCAddress

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<SCAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for SCAddress

    source§

    fn clone(&self) -> SCAddress

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<SCAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SCAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for SCAddress

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for SCAddress

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], SCAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for SCAddress

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for SCAddress

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for SCAddress

    source§

    fn cmp(&self, other: &SCAddress) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -14,11 +14,11 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for SCAddress

    source§

    fn partial_cmp(&self, other: &SCAddress) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for SCAddress

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<SCAddress> for AddressSerializer

    source§

    impl Serialize for SCAddress

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<SCAddress> for AddressSerializer

    source§

    fn serialize( &self, value: &SCAddress, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for SCAddress

    source§

    impl Eq for SCAddress

    source§

    impl StructuralPartialEq for SCAddress

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for SCAddress

    source§

    impl Eq for SCAddress

    source§

    impl StructuralPartialEq for SCAddress

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where diff --git a/massa_models/address/enum.UserAddress.html b/massa_models/address/enum.UserAddress.html index 3fdfc6d265c..47a92b43d7b 100644 --- a/massa_models/address/enum.UserAddress.html +++ b/massa_models/address/enum.UserAddress.html @@ -4,10 +4,10 @@

    Variants§

    §

    UserAddressV0(UserAddressV0)

    Implementations§

    source§

    impl UserAddress

    source

    fn get_thread(&self, thread_count: u8) -> u8

    Gets the associated thread. Depends on the thread_count

    source

    fn from_public_key(public_key: &PublicKey) -> Self

    Computes the address associated with the given public key

    source

    fn from_str_without_prefixed_type(s: &str) -> Result<Self, ModelsError>

    source

    pub fn to_prefixed_bytes(self) -> Vec<u8>

    Serialize the address as bytes. Includes the type and version prefixes

    -

    Trait Implementations§

    source§

    impl Clone for UserAddress

    source§

    fn clone(&self) -> UserAddress

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<UserAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for UserAddress

    source§

    fn clone(&self) -> UserAddress

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<UserAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], UserAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for UserAddress

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for UserAddress

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], UserAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for UserAddress

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for UserAddress

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for UserAddress

    source§

    fn cmp(&self, other: &UserAddress) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -16,11 +16,11 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for UserAddress

    source§

    fn partial_cmp(&self, other: &UserAddress) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for UserAddress

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<UserAddress> for AddressSerializer

    source§

    impl Serialize for UserAddress

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<UserAddress> for AddressSerializer

    source§

    fn serialize( &self, value: &UserAddress, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for UserAddress

    source§

    impl Eq for UserAddress

    source§

    impl StructuralPartialEq for UserAddress

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for UserAddress

    source§

    impl Eq for UserAddress

    source§

    impl StructuralPartialEq for UserAddress

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where diff --git a/massa_models/address/struct.AddressDeserializer.html b/massa_models/address/struct.AddressDeserializer.html index f9b2398d92d..952825632d1 100644 --- a/massa_models/address/struct.AddressDeserializer.html +++ b/massa_models/address/struct.AddressDeserializer.html @@ -1,25 +1,25 @@ AddressDeserializer in massa_models::address - Rust

    Struct massa_models::address::AddressDeserializer

    source ·
    pub struct AddressDeserializer {
    -    type_deserializer: U64VarIntDeserializer,
    -    version_deserializer: U64VarIntDeserializer,
    +    type_deserializer: U64VarIntDeserializer,
    +    version_deserializer: U64VarIntDeserializer,
         hash_deserializer: HashDeserializer,
     }
    Expand description

    Deserializer for Address

    -

    Fields§

    §type_deserializer: U64VarIntDeserializer§version_deserializer: U64VarIntDeserializer§hash_deserializer: HashDeserializer

    Implementations§

    source§

    impl AddressDeserializer

    source

    pub const fn new() -> Self

    Creates a new deserializer for Address

    -

    Trait Implementations§

    source§

    impl Clone for AddressDeserializer

    source§

    fn clone(&self) -> AddressDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for AddressDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<Address> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §type_deserializer: U64VarIntDeserializer§version_deserializer: U64VarIntDeserializer§hash_deserializer: HashDeserializer

    Implementations§

    source§

    impl AddressDeserializer

    source

    pub const fn new() -> Self

    Creates a new deserializer for Address

    +

    Trait Implementations§

    source§

    impl Clone for AddressDeserializer

    source§

    fn clone(&self) -> AddressDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for AddressDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<Address> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Address, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<SCAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], Address, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<SCAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SCAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<SCAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], SCAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<SCAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SCAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<UserAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], SCAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<UserAddress> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], UserAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<UserAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], UserAddress, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<UserAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], UserAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], UserAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/address/struct.AddressSerializer.html b/massa_models/address/struct.AddressSerializer.html index bae08956f74..293c474c31f 100644 --- a/massa_models/address/struct.AddressSerializer.html +++ b/massa_models/address/struct.AddressSerializer.html @@ -1,29 +1,29 @@ AddressSerializer in massa_models::address - Rust

    Struct massa_models::address::AddressSerializer

    source ·
    pub struct AddressSerializer {
    -    type_serializer: U64VarIntSerializer,
    -    version_serializer: U64VarIntSerializer,
    +    type_serializer: U64VarIntSerializer,
    +    version_serializer: U64VarIntSerializer,
     }
    Expand description

    Serializer for Address

    -

    Fields§

    §type_serializer: U64VarIntSerializer§version_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl AddressSerializer

    source

    pub fn new() -> Self

    Serializes an Address into a Vec<u8>

    -

    Trait Implementations§

    source§

    impl Clone for AddressSerializer

    source§

    fn clone(&self) -> AddressSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for AddressSerializer

    source§

    fn default() -> AddressSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Address> for AddressSerializer

    Fields§

    §type_serializer: U64VarIntSerializer§version_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl AddressSerializer

    source

    pub fn new() -> Self

    Serializes an Address into a Vec<u8>

    +

    Trait Implementations§

    source§

    impl Clone for AddressSerializer

    source§

    fn clone(&self) -> AddressSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for AddressSerializer

    source§

    fn default() -> AddressSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Address> for AddressSerializer

    source§

    fn serialize( &self, value: &Address, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<SCAddress> for AddressSerializer

    source§

    fn serialize( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<SCAddress> for AddressSerializer

    source§

    fn serialize( &self, value: &SCAddress, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<SCAddressV0> for AddressSerializer

    source§

    fn serialize( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<SCAddressV0> for AddressSerializer

    source§

    fn serialize( &self, value: &SCAddressV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<UserAddress> for AddressSerializer

    source§

    fn serialize( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<UserAddress> for AddressSerializer

    source§

    fn serialize( &self, value: &UserAddress, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<UserAddressV0> for AddressSerializer

    source§

    fn serialize( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<UserAddressV0> for AddressSerializer

    source§

    fn serialize( &self, value: &UserAddressV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/address/struct.ExecutionAddressCycleInfo.html b/massa_models/address/struct.ExecutionAddressCycleInfo.html index 4e37410c7e8..ba64d09ebd1 100644 --- a/massa_models/address/struct.ExecutionAddressCycleInfo.html +++ b/massa_models/address/struct.ExecutionAddressCycleInfo.html @@ -10,9 +10,9 @@
    §ok_count: u64

    ok_count blocks were created by this address during that cycle

    §nok_count: u64

    ok_count blocks were missed by this address during that cycle

    §active_rolls: Option<u64>

    number of active rolls the address had at that cycle (if still available)

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionAddressCycleInfo

    source§

    fn clone(&self) -> ExecutionAddressCycleInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionAddressCycleInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExecutionAddressCycleInfo

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ExecutionAddressCycleInfo

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutionAddressCycleInfo

    source§

    fn clone(&self) -> ExecutionAddressCycleInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionAddressCycleInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExecutionAddressCycleInfo

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for ExecutionAddressCycleInfo

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -110,5 +110,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/address/struct.SCAddressV0.html b/massa_models/address/struct.SCAddressV0.html index 71bb9d0a80e..3736990f984 100644 --- a/massa_models/address/struct.SCAddressV0.html +++ b/massa_models/address/struct.SCAddressV0.html @@ -2,10 +2,10 @@

    Tuple Fields§

    §0: Hash

    Implementations§

    source§

    impl SCAddressV0

    source

    pub fn get_version(&self) -> u64

    Fetches the version of the SC Address

    source§

    impl SCAddressV0

    source

    pub fn to_prefixed_bytes(self) -> Vec<u8>

    Serialize the address as bytes. Includes the type and version prefixes

    source

    fn from_bytes(data: &[u8]) -> Result<SCAddressV0, ModelsError>

    Deserialize the address without considering the version byte

    -

    Trait Implementations§

    source§

    impl Clone for SCAddressV0

    source§

    fn clone(&self) -> SCAddressV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<SCAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for SCAddressV0

    source§

    fn clone(&self) -> SCAddressV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<SCAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SCAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for SCAddressV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for SCAddressV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], SCAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for SCAddressV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for SCAddressV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for SCAddressV0

    source§

    fn cmp(&self, other: &SCAddressV0) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -14,11 +14,11 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for SCAddressV0

    source§

    fn partial_cmp(&self, other: &SCAddressV0) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for SCAddressV0

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<SCAddressV0> for AddressSerializer

    source§

    impl Serialize for SCAddressV0

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<SCAddressV0> for AddressSerializer

    source§

    fn serialize( &self, value: &SCAddressV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for SCAddressV0

    source§

    impl Copy for SCAddressV0

    source§

    impl Eq for SCAddressV0

    source§

    impl StructuralPartialEq for SCAddressV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for SCAddressV0

    source§

    impl Copy for SCAddressV0

    source§

    impl Eq for SCAddressV0

    source§

    impl StructuralPartialEq for SCAddressV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where diff --git a/massa_models/address/struct.UserAddressV0.html b/massa_models/address/struct.UserAddressV0.html index 89245742522..16ff662f710 100644 --- a/massa_models/address/struct.UserAddressV0.html +++ b/massa_models/address/struct.UserAddressV0.html @@ -4,10 +4,10 @@

    source

    fn get_thread(&self, thread_count: u8) -> u8

    Gets the associated thread. Depends on the thread_count

    source

    fn from_bytes(data: &[u8]) -> Result<UserAddressV0, ModelsError>

    Deserialize the address without considering the version byte

    source§

    impl UserAddressV0

    source

    pub fn from_public_key(public_key: &PublicKeyV0) -> Self

    Computes address associated with given public key

    -

    Trait Implementations§

    source§

    impl Clone for UserAddressV0

    source§

    fn clone(&self) -> UserAddressV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<UserAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for UserAddressV0

    source§

    fn clone(&self) -> UserAddressV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<UserAddressV0> for AddressDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], UserAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for UserAddressV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for UserAddressV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], UserAddressV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for UserAddressV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for UserAddressV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for UserAddressV0

    source§

    fn cmp(&self, other: &UserAddressV0) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -16,11 +16,11 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for UserAddressV0

    source§

    fn partial_cmp(&self, other: &UserAddressV0) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for UserAddressV0

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<UserAddressV0> for AddressSerializer

    source§

    impl Serialize for UserAddressV0

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<UserAddressV0> for AddressSerializer

    source§

    fn serialize( &self, value: &UserAddressV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for UserAddressV0

    source§

    impl Copy for UserAddressV0

    source§

    impl Eq for UserAddressV0

    source§

    impl StructuralPartialEq for UserAddressV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for UserAddressV0

    source§

    impl Copy for UserAddressV0

    source§

    impl Eq for UserAddressV0

    source§

    impl StructuralPartialEq for UserAddressV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where diff --git a/massa_models/amount/struct.Amount.html b/massa_models/amount/struct.Amount.html index beadb642fd1..c58818fd9a6 100644 --- a/massa_models/amount/struct.Amount.html +++ b/massa_models/amount/struct.Amount.html @@ -89,11 +89,11 @@ let res : Amount = amount_1.checked_rem_u64(40000000000).unwrap(); assert_eq!(res, Amount::from_str("2").unwrap());

    Trait Implementations§

    source§

    impl Clone for Amount

    source§

    fn clone(&self) -> Amount

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Amount

    Use display implementation in debug to get the decimal representation

    -
    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for Amount

    source§

    fn default() -> Amount

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for Amount

    source§

    fn deserialize<D>(deserializer: D) -> Result<Amount, D::Error>
    where - D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Amount> for AmountDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for Amount

    source§

    fn default() -> Amount

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for Amount

    source§

    fn deserialize<D>(deserializer: D) -> Result<Amount, D::Error>
    where + D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Amount> for AmountDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Amount, E>

    §Example
    +) -> IResult<&'a [u8], Amount, E>
    §Example
    use massa_models::amount::{Amount, AmountSerializer, AmountDeserializer};
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
     use std::str::FromStr;
    @@ -127,12 +127,12 @@
     by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for Amount

    source§

    fn partial_cmp(&self, other: &Amount) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for Amount

    source§

    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where - S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Amount> for AmountSerializer

    source§

    impl Serialize for Amount

    source§

    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where + S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Amount> for AmountSerializer

    source§

    fn serialize( &self, value: &Amount, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_models::amount::{Amount, AmountSerializer};
     use massa_serialization::Serializer;
     use std::str::FromStr;
    @@ -250,5 +250,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/amount/struct.AmountDeserializer.html b/massa_models/amount/struct.AmountDeserializer.html index b5877e142b3..d8c98a90a41 100644 --- a/massa_models/amount/struct.AmountDeserializer.html +++ b/massa_models/amount/struct.AmountDeserializer.html @@ -1,8 +1,8 @@ AmountDeserializer in massa_models::amount - Rust

    Struct massa_models::amount::AmountDeserializer

    source ·
    pub struct AmountDeserializer {
    -    u64_deserializer: U64VarIntDeserializer,
    +    u64_deserializer: U64VarIntDeserializer,
     }
    Expand description

    Deserializer for amount

    -

    Fields§

    §u64_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl AmountDeserializer

    source

    pub fn new(min_amount: Bound<Amount>, max_amount: Bound<Amount>) -> Self

    Create a new AmountDeserializer

    -

    Trait Implementations§

    source§

    impl Clone for AmountDeserializer

    source§

    fn clone(&self) -> AmountDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Amount> for AmountDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §u64_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl AmountDeserializer

    source

    pub fn new(min_amount: Bound<Amount>, max_amount: Bound<Amount>) -> Self

    Create a new AmountDeserializer

    +

    Trait Implementations§

    source§

    impl Clone for AmountDeserializer

    source§

    fn clone(&self) -> AmountDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Amount> for AmountDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Amount, E>

    §Example
    diff --git a/massa_models/amount/struct.AmountSerializer.html b/massa_models/amount/struct.AmountSerializer.html index dc13ac65a34..f38b06a9ca2 100644 --- a/massa_models/amount/struct.AmountSerializer.html +++ b/massa_models/amount/struct.AmountSerializer.html @@ -1,12 +1,12 @@ AmountSerializer in massa_models::amount - Rust

    Struct massa_models::amount::AmountSerializer

    source ·
    pub struct AmountSerializer {
    -    u64_serializer: U64VarIntSerializer,
    +    u64_serializer: U64VarIntSerializer,
     }
    Expand description

    Serializer for amount

    -

    Fields§

    §u64_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl AmountSerializer

    source

    pub fn new() -> Self

    Create a new AmountSerializer

    -

    Trait Implementations§

    source§

    impl Clone for AmountSerializer

    source§

    fn clone(&self) -> AmountSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for AmountSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Amount> for AmountSerializer

    Fields§

    §u64_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl AmountSerializer

    source

    pub fn new() -> Self

    Create a new AmountSerializer

    +

    Trait Implementations§

    source§

    impl Clone for AmountSerializer

    source§

    fn clone(&self) -> AmountSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for AmountSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Amount> for AmountSerializer

    source§

    fn serialize( &self, value: &Amount, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_models::amount::{Amount, AmountSerializer};
     use massa_serialization::Serializer;
     use std::str::FromStr;
    diff --git a/massa_models/amount/struct.AmountVisitor.html b/massa_models/amount/struct.AmountVisitor.html
    index b654afcb5ab..64f0590a113 100644
    --- a/massa_models/amount/struct.AmountVisitor.html
    +++ b/massa_models/amount/struct.AmountVisitor.html
    @@ -1,57 +1,57 @@
    -AmountVisitor in massa_models::amount - Rust

    Struct massa_models::amount::AmountVisitor

    source ·
    struct AmountVisitor;

    Trait Implementations§

    source§

    impl<'de> Visitor<'de> for AmountVisitor

    §

    type Value = Amount

    The value produced by this visitor.
    source§

    fn visit_str<E>(self, value: &str) -> Result<Amount, E>
    where - E: Error,

    The input contains a string. The lifetime of the string is ephemeral and -it may be destroyed after this method returns. Read more
    source§

    fn expecting(&self, formatter: &mut Formatter<'_>) -> Result

    Format a message stating what data this Visitor expects to receive. Read more
    source§

    fn visit_bool<E>(self, v: bool) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a boolean. Read more
    source§

    fn visit_i8<E>(self, v: i8) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i8. Read more
    source§

    fn visit_i16<E>(self, v: i16) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i16. Read more
    source§

    fn visit_i32<E>(self, v: i32) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i32. Read more
    source§

    fn visit_i64<E>(self, v: i64) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i64. Read more
    source§

    fn visit_i128<E>(self, v: i128) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a i128. Read more
    source§

    fn visit_u8<E>(self, v: u8) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u8. Read more
    source§

    fn visit_u16<E>(self, v: u16) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u16. Read more
    source§

    fn visit_u32<E>(self, v: u32) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u32. Read more
    source§

    fn visit_u64<E>(self, v: u64) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u64. Read more
    source§

    fn visit_u128<E>(self, v: u128) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u128. Read more
    source§

    fn visit_f32<E>(self, v: f32) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an f32. Read more
    source§

    fn visit_f64<E>(self, v: f64) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an f64. Read more
    source§

    fn visit_char<E>(self, v: char) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a char. Read more
    source§

    fn visit_borrowed_str<E>(self, v: &'de str) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a string that lives at least as long as the -Deserializer. Read more
    source§

    fn visit_string<E>(self, v: String) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a string and ownership of the string is being given -to the Visitor. Read more
    source§

    fn visit_bytes<E>(self, v: &[u8]) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a byte array. The lifetime of the byte array is -ephemeral and it may be destroyed after this method returns. Read more
    source§

    fn visit_borrowed_bytes<E>(self, v: &'de [u8]) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a byte array that lives at least as long as the -Deserializer. Read more
    source§

    fn visit_byte_buf<E>(self, v: Vec<u8>) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a byte array and ownership of the byte array is being -given to the Visitor. Read more
    source§

    fn visit_none<E>(self) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an optional that is absent. Read more
    source§

    fn visit_some<D>( +AmountVisitor in massa_models::amount - Rust

    Struct massa_models::amount::AmountVisitor

    source ·
    struct AmountVisitor;

    Trait Implementations§

    source§

    impl<'de> Visitor<'de> for AmountVisitor

    §

    type Value = Amount

    The value produced by this visitor.
    source§

    fn visit_str<E>(self, value: &str) -> Result<Amount, E>
    where + E: Error,

    The input contains a string. The lifetime of the string is ephemeral and +it may be destroyed after this method returns. Read more
    source§

    fn expecting(&self, formatter: &mut Formatter<'_>) -> Result

    Format a message stating what data this Visitor expects to receive. Read more
    source§

    fn visit_bool<E>(self, v: bool) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a boolean. Read more
    source§

    fn visit_i8<E>(self, v: i8) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i8. Read more
    source§

    fn visit_i16<E>(self, v: i16) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i16. Read more
    source§

    fn visit_i32<E>(self, v: i32) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i32. Read more
    source§

    fn visit_i64<E>(self, v: i64) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i64. Read more
    source§

    fn visit_i128<E>(self, v: i128) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a i128. Read more
    source§

    fn visit_u8<E>(self, v: u8) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u8. Read more
    source§

    fn visit_u16<E>(self, v: u16) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u16. Read more
    source§

    fn visit_u32<E>(self, v: u32) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u32. Read more
    source§

    fn visit_u64<E>(self, v: u64) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u64. Read more
    source§

    fn visit_u128<E>(self, v: u128) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u128. Read more
    source§

    fn visit_f32<E>(self, v: f32) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an f32. Read more
    source§

    fn visit_f64<E>(self, v: f64) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an f64. Read more
    source§

    fn visit_char<E>(self, v: char) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a char. Read more
    source§

    fn visit_borrowed_str<E>(self, v: &'de str) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a string that lives at least as long as the +Deserializer. Read more
    source§

    fn visit_string<E>(self, v: String) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a string and ownership of the string is being given +to the Visitor. Read more
    source§

    fn visit_bytes<E>(self, v: &[u8]) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a byte array. The lifetime of the byte array is +ephemeral and it may be destroyed after this method returns. Read more
    source§

    fn visit_borrowed_bytes<E>(self, v: &'de [u8]) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a byte array that lives at least as long as the +Deserializer. Read more
    source§

    fn visit_byte_buf<E>(self, v: Vec<u8>) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a byte array and ownership of the byte array is being +given to the Visitor. Read more
    source§

    fn visit_none<E>(self) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an optional that is absent. Read more
    source§

    fn visit_some<D>( self, deserializer: D, -) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where - D: Deserializer<'de>,

    The input contains an optional that is present. Read more
    source§

    fn visit_unit<E>(self) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a unit (). Read more
    source§

    fn visit_newtype_struct<D>( +) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where + D: Deserializer<'de>,

    The input contains an optional that is present. Read more
    source§

    fn visit_unit<E>(self) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a unit (). Read more
    source§

    fn visit_newtype_struct<D>( self, deserializer: D, -) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where - D: Deserializer<'de>,

    The input contains a newtype struct. Read more
    source§

    fn visit_seq<A>( +) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where + D: Deserializer<'de>,

    The input contains a newtype struct. Read more
    source§

    fn visit_seq<A>( self, seq: A, -) -> Result<Self::Value, <A as SeqAccess<'de>>::Error>
    where - A: SeqAccess<'de>,

    The input contains a sequence of elements. Read more
    source§

    fn visit_map<A>( +) -> Result<Self::Value, <A as SeqAccess<'de>>::Error>
    where + A: SeqAccess<'de>,

    The input contains a sequence of elements. Read more
    source§

    fn visit_map<A>( self, map: A, -) -> Result<Self::Value, <A as MapAccess<'de>>::Error>
    where - A: MapAccess<'de>,

    The input contains a key-value map. Read more
    source§

    fn visit_enum<A>( +) -> Result<Self::Value, <A as MapAccess<'de>>::Error>
    where + A: MapAccess<'de>,

    The input contains a key-value map. Read more
    source§

    fn visit_enum<A>( self, data: A, -) -> Result<Self::Value, <A as EnumAccess<'de>>::Error>
    where - A: EnumAccess<'de>,

    The input contains an enum. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<Self::Value, <A as EnumAccess<'de>>::Error>
    where + A: EnumAccess<'de>,

    The input contains an enum. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where - Self: Into<T>,

    Converts self into T using Into<T>. Read more
    source§

    impl<'de, T> Expected for T
    where - T: Visitor<'de>,

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result<(), Error>

    Format an explanation of what data was being expected. Same signature as + Self: Into<T>,
    Converts self into T using Into<T>. Read more
    source§

    impl<'de, T> Expected for T
    where + T: Visitor<'de>,

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result<(), Error>

    Format an explanation of what data was being expected. Same signature as the Display and Debug traits.
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where Self: Display,

    Causes self to use its Display implementation when diff --git a/massa_models/block/enum.BlockGraphStatus.html b/massa_models/block/enum.BlockGraphStatus.html index 33e87afbef8..c5e210d4b2e 100644 --- a/massa_models/block/enum.BlockGraphStatus.html +++ b/massa_models/block/enum.BlockGraphStatus.html @@ -16,11 +16,11 @@
    §

    Final

    forever applies

    §

    Discarded

    discarded for any reason

    §

    NotFound

    not found in graph

    -

    Trait Implementations§

    source§

    impl Debug for BlockGraphStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockGraphStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<BlockGraphStatus> for i32

    source§

    fn from(value: BlockGraphStatus) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for BlockGraphStatus

    source§

    fn eq(&self, other: &BlockGraphStatus) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Debug for BlockGraphStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockGraphStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<BlockGraphStatus> for i32

    source§

    fn from(value: BlockGraphStatus) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for BlockGraphStatus

    source§

    fn eq(&self, other: &BlockGraphStatus) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for BlockGraphStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for BlockGraphStatus

    source§

    impl StructuralPartialEq for BlockGraphStatus

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for BlockGraphStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for BlockGraphStatus

    source§

    impl StructuralPartialEq for BlockGraphStatus

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where @@ -121,5 +121,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/block/struct.Block.html b/massa_models/block/struct.Block.html index f0f053fe910..b0ba7eedafb 100644 --- a/massa_models/block/struct.Block.html +++ b/massa_models/block/struct.Block.html @@ -4,11 +4,11 @@ }
    Expand description

    block

    Fields§

    §header: SecuredHeader

    signed header

    §operations: Vec<OperationId>

    operations ids

    -

    Trait Implementations§

    source§

    impl Clone for Block

    source§

    fn clone(&self) -> Block

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Block

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Block

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Block> for BlockDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Block

    source§

    fn clone(&self) -> Block

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Block

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Block

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Block> for BlockDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Block, E>

    §Example:
    +) -> IResult<&'a [u8], Block, E>
    §Example:
    use massa_models::{block::{Block, BlockSerializer, BlockDeserializer, BlockDeserializerArgs}, config::THREAD_COUNT, slot::Slot, endorsement::{Endorsement, EndorsementSerializer}, secure_share::SecureShareContent, prehash::PreHashSet};
     use massa_models::block_id::BlockId;
     use massa_models::block_header::{BlockHeader, BlockHeaderSerializer};
    @@ -94,19 +94,19 @@
         orig_block.header.signature,
         res_block.header.signature
     );
    -
    source§

    impl Display for Block

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Block> for Block

    source§

    fn from(value: Block) -> Self

    Converts to this type from the input type.
    source§

    impl SecureShareContent for Block

    source§

    fn new_verifiable<SC: Serializer<Self>, U: Id>( +

    source§

    impl Display for Block

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Block> for Block

    source§

    fn from(value: Block) -> Self

    Converts to this type from the input type.
    source§

    impl SecureShareContent for Block

    source§

    fn new_verifiable<SC: Serializer<Self>, U: Id>( self, content_serializer: SC, _keypair: &KeyPair, _chain_id: u64, ) -> Result<SecureShare<Self, U>, ModelsError>

    Using the provided key-pair, applies a cryptographic signature, and packages -the data required to share and verify the data in a trust-free network of peers.
    source§

    fn serialize( +the data required to share and verify the data in a trust-free network of peers.

    source§

    fn serialize( _signature: &Signature, _creator_public_key: &PublicKey, serialized_content: &[u8], buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, DC: Deserializer<Self>, U: Id>( - _content_serializer: Option<&dyn Serializer<Self>>, +) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, DC: Deserializer<Self>, U: Id>( + _content_serializer: Option<&dyn Serializer<Self>>, _signature_deserializer: &SignatureDeserializer, _creator_public_key_deserializer: &PublicKeyDeserializer, content_deserializer: &DC, @@ -130,12 +130,12 @@ &self, _public_key: &PublicKey, content_hash: &Hash, -) -> Hash

    Compute hash used for signature
    source§

    impl Serialize for Block

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Block> for BlockSerializer

    source§

    fn serialize( +) -> Hash

    Compute hash used for signature
    source§

    impl Serialize for Block

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Block> for BlockSerializer

    source§

    fn serialize( &self, value: &Block, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{block::{Block, BlockSerializer}, config::THREAD_COUNT, slot::Slot, endorsement::{Endorsement, EndorsementSerializer}, secure_share::SecureShareContent, prehash::PreHashSet};
     use massa_models::block_header::{BlockHeader, BlockHeaderSerializer};
     use massa_models::block_id::{BlockId};
    @@ -295,5 +295,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/block/struct.BlockDeserializer.html b/massa_models/block/struct.BlockDeserializer.html index d33281d1a13..5dbe485492b 100644 --- a/massa_models/block/struct.BlockDeserializer.html +++ b/massa_models/block/struct.BlockDeserializer.html @@ -3,7 +3,7 @@ op_ids_deserializer: OperationIdsDeserializer, }
    Expand description

    Deserializer for Block

    Fields§

    §header_deserializer: SecureShareDeserializer<BlockHeader, BlockHeaderDeserializer>§op_ids_deserializer: OperationIdsDeserializer

    Implementations§

    source§

    impl BlockDeserializer

    source

    pub fn new(args: BlockDeserializerArgs) -> Self

    Creates a new BlockDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Block> for BlockDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<Block> for BlockDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Block, E>

    §Example:
    diff --git a/massa_models/block/struct.BlockSerializer.html b/massa_models/block/struct.BlockSerializer.html index f06dedcd6a5..6f12e8e7409 100644 --- a/massa_models/block/struct.BlockSerializer.html +++ b/massa_models/block/struct.BlockSerializer.html @@ -3,11 +3,11 @@ op_ids_serializer: OperationIdsSerializer, }
    Expand description

    Serializer for Block

    Fields§

    §header_serializer: SecureShareSerializer§op_ids_serializer: OperationIdsSerializer

    Implementations§

    source§

    impl BlockSerializer

    source

    pub fn new() -> Self

    Creates a new BlockSerializer

    -

    Trait Implementations§

    source§

    impl Default for BlockSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Block> for BlockSerializer

    Trait Implementations§

    source§

    impl Default for BlockSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Block> for BlockSerializer

    source§

    fn serialize( &self, value: &Block, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{block::{Block, BlockSerializer}, config::THREAD_COUNT, slot::Slot, endorsement::{Endorsement, EndorsementSerializer}, secure_share::SecureShareContent, prehash::PreHashSet};
     use massa_models::block_header::{BlockHeader, BlockHeaderSerializer};
     use massa_models::block_id::{BlockId};
    diff --git a/massa_models/block/struct.FilledBlock.html b/massa_models/block/struct.FilledBlock.html
    index 6369a6baf40..6ced2be3dc2 100644
    --- a/massa_models/block/struct.FilledBlock.html
    +++ b/massa_models/block/struct.FilledBlock.html
    @@ -4,9 +4,9 @@
     }
    Expand description

    filled block

    Fields§

    §header: SecuredHeader

    signed header

    §operations: Vec<(OperationId, Option<SecureShareOperation>)>

    operations

    -

    Trait Implementations§

    source§

    impl Clone for FilledBlock

    source§

    fn clone(&self) -> FilledBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for FilledBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for FilledBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<FilledBlock> for FilledBlock

    source§

    fn from(value: FilledBlock) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for FilledBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for FilledBlock

    source§

    fn clone(&self) -> FilledBlock

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for FilledBlock

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for FilledBlock

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl From<FilledBlock> for FilledBlock

    source§

    fn from(value: FilledBlock) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for FilledBlock

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -104,5 +104,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/block_header/struct.BlockHeader.html b/massa_models/block_header/struct.BlockHeader.html index a0880e08cc9..7eae0ff83d3 100644 --- a/massa_models/block_header/struct.BlockHeader.html +++ b/massa_models/block_header/struct.BlockHeader.html @@ -14,8 +14,8 @@ §operation_merkle_root: Hash

    all operations hash

    §endorsements: Vec<SecureShareEndorsement>

    endorsements

    §denunciations: Vec<Denunciation>

    denunciations

    -

    Trait Implementations§

    source§

    impl Clone for BlockHeader

    source§

    fn clone(&self) -> BlockHeader

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockHeader

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockHeader

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockHeader> for BlockHeaderDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for BlockHeader

    source§

    fn clone(&self) -> BlockHeader

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockHeader

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockHeader

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockHeader> for BlockHeaderDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], BlockHeader, E>

    §Example:
    @@ -85,7 +85,7 @@ public_key: &PublicKey, content_hash: &Hash, signature: &Signature, -) -> Result<(), ModelsError>
    verify signature
    source§

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( +) -> Result<(), ModelsError>

    verify signature
    source§

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( self, content_serializer: Ser, keypair: &KeyPair, @@ -101,19 +101,19 @@ creator_public_key: &PublicKey, serialized_content: &[u8], buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( - content_serializer: Option<&dyn Serializer<Self>>, +) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( + content_serializer: Option<&dyn Serializer<Self>>, signature_deserializer: &SignatureDeserializer, creator_public_key_deserializer: &PublicKeyDeserializer, content_deserializer: &Deser, buffer: &'a [u8], chain_id: u64, -) -> IResult<&'a [u8], SecureShare<Self, ID>, E>

    Deserialize the secured structure
    source§

    impl Serialize for BlockHeader

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockHeader> for BlockHeaderSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], SecureShare<Self, ID>, E>

    Deserialize the secured structure
    source§

    impl Serialize for BlockHeader

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockHeader> for BlockHeaderSerializer

    source§

    fn serialize( &self, value: &BlockHeader, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{block_id::BlockId, block_header::BlockHeader, block_header::BlockHeaderSerializer};
     use massa_models::endorsement::{Endorsement, EndorsementSerializer};
     use massa_models::secure_share::SecureShareContent;
    @@ -260,5 +260,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/block_header/struct.BlockHeaderDeserializer.html b/massa_models/block_header/struct.BlockHeaderDeserializer.html index e1f9c78c14e..52a729ccc22 100644 --- a/massa_models/block_header/struct.BlockHeaderDeserializer.html +++ b/massa_models/block_header/struct.BlockHeaderDeserializer.html @@ -1,19 +1,19 @@ BlockHeaderDeserializer in massa_models::block_header - Rust
    pub struct BlockHeaderDeserializer {
    Show 13 fields slot_deserializer: SlotDeserializer, endorsement_serializer: EndorsementSerializer, - endorsement_len_deserializer: U32VarIntDeserializer, + endorsement_len_deserializer: U32VarIntDeserializer, hash_deserializer: HashDeserializer, thread_count: u8, endorsement_count: u32, last_start_period: Option<u64>, - denunciation_len_deserializer: U32VarIntDeserializer, + denunciation_len_deserializer: U32VarIntDeserializer, denunciation_deserializer: DenunciationDeserializer, - network_versions_deserializer: U32VarIntDeserializer, - opt_deserializer: OptionDeserializer<u32, U32VarIntDeserializer>, + network_versions_deserializer: U32VarIntDeserializer, + opt_deserializer: OptionDeserializer<u32, U32VarIntDeserializer>, block_id_deserializer: BlockIdDeserializer, chain_id: u64,
    }
    Expand description

    Deserializer for BlockHeader

    -

    Fields§

    §slot_deserializer: SlotDeserializer§endorsement_serializer: EndorsementSerializer§endorsement_len_deserializer: U32VarIntDeserializer§hash_deserializer: HashDeserializer§thread_count: u8§endorsement_count: u32§last_start_period: Option<u64>§denunciation_len_deserializer: U32VarIntDeserializer§denunciation_deserializer: DenunciationDeserializer§network_versions_deserializer: U32VarIntDeserializer§opt_deserializer: OptionDeserializer<u32, U32VarIntDeserializer>§block_id_deserializer: BlockIdDeserializer§chain_id: u64

    Implementations§

    source§

    impl BlockHeaderDeserializer

    source

    pub fn new( +

    Fields§

    §slot_deserializer: SlotDeserializer§endorsement_serializer: EndorsementSerializer§endorsement_len_deserializer: U32VarIntDeserializer§hash_deserializer: HashDeserializer§thread_count: u8§endorsement_count: u32§last_start_period: Option<u64>§denunciation_len_deserializer: U32VarIntDeserializer§denunciation_deserializer: DenunciationDeserializer§network_versions_deserializer: U32VarIntDeserializer§opt_deserializer: OptionDeserializer<u32, U32VarIntDeserializer>§block_id_deserializer: BlockIdDeserializer§chain_id: u64

    Implementations§

    source§

    impl BlockHeaderDeserializer

    source

    pub fn new( thread_count: u8, endorsement_count: u32, max_denunciations_in_block_header: u32, @@ -21,7 +21,7 @@ chain_id: u64, ) -> Self

    Creates a new BlockHeaderDeserializer If last_start_period is Some(lsp), then the deserializer will check for valid (non)-genesis blocks

    -

    Trait Implementations§

    source§

    impl Deserializer<BlockHeader> for BlockHeaderDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<BlockHeader> for BlockHeaderDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], BlockHeader, E>

    §Example:
    diff --git a/massa_models/block_header/struct.BlockHeaderSerializer.html b/massa_models/block_header/struct.BlockHeaderSerializer.html index adfd4601356..498fd8c1084 100644 --- a/massa_models/block_header/struct.BlockHeaderSerializer.html +++ b/massa_models/block_header/struct.BlockHeaderSerializer.html @@ -3,16 +3,16 @@ endorsement_serializer: SecureShareSerializer, endorsement_content_serializer: EndorsementSerializerLW, denunciation_serializer: DenunciationSerializer, - u32_serializer: U32VarIntSerializer, - opt_serializer: OptionSerializer<u32, U32VarIntSerializer>, + u32_serializer: U32VarIntSerializer, + opt_serializer: OptionSerializer<u32, U32VarIntSerializer>, block_id_serializer: BlockIdSerializer, }
    Expand description

    Serializer for BlockHeader

    -

    Fields§

    §slot_serializer: SlotSerializer§endorsement_serializer: SecureShareSerializer§endorsement_content_serializer: EndorsementSerializerLW§denunciation_serializer: DenunciationSerializer§u32_serializer: U32VarIntSerializer§opt_serializer: OptionSerializer<u32, U32VarIntSerializer>§block_id_serializer: BlockIdSerializer

    Implementations§

    source§

    impl BlockHeaderSerializer

    source

    pub fn new() -> Self

    Creates a new BlockHeaderSerializer

    -

    Trait Implementations§

    source§

    impl Default for BlockHeaderSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BlockHeader> for BlockHeaderSerializer

    Fields§

    §slot_serializer: SlotSerializer§endorsement_serializer: SecureShareSerializer§endorsement_content_serializer: EndorsementSerializerLW§denunciation_serializer: DenunciationSerializer§u32_serializer: U32VarIntSerializer§opt_serializer: OptionSerializer<u32, U32VarIntSerializer>§block_id_serializer: BlockIdSerializer

    Implementations§

    source§

    impl BlockHeaderSerializer

    source

    pub fn new() -> Self

    Creates a new BlockHeaderSerializer

    +

    Trait Implementations§

    source§

    impl Default for BlockHeaderSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BlockHeader> for BlockHeaderSerializer

    source§

    fn serialize( &self, value: &BlockHeader, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{block_id::BlockId, block_header::BlockHeader, block_header::BlockHeaderSerializer};
     use massa_models::endorsement::{Endorsement, EndorsementSerializer};
     use massa_models::secure_share::SecureShareContent;
    diff --git a/massa_models/block_id/enum.BlockId.html b/massa_models/block_id/enum.BlockId.html
    index 59e2343c5e5..64922af4515 100644
    --- a/massa_models/block_id/enum.BlockId.html
    +++ b/massa_models/block_id/enum.BlockId.html
    @@ -3,13 +3,13 @@
     }
    Expand description

    block id

    Variants§

    §

    BlockIdV0(BlockIdV0)

    Implementations§

    source§

    impl BlockId

    source

    pub fn get_first_bit(&self) -> bool

    first bit of the hashed block id

    source

    pub fn get_version(&self) -> u64

    version of the block id

    -

    Trait Implementations§

    source§

    impl Clone for BlockId

    source§

    fn clone(&self) -> BlockId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockId
    where +

    Trait Implementations§

    source§

    impl Clone for BlockId

    source§

    fn clone(&self) -> BlockId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockId
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockId> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockId> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BlockId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for BlockId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for BlockId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +) -> IResult<&'a [u8], BlockId, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for BlockId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for BlockId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    let ser = block_id.to_string();
     let res_block_id = BlockId::from_str(&ser).unwrap();
     assert_eq!(block_id, res_block_id);
    @@ -22,13 +22,13 @@ by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for BlockId

    source§

    fn partial_cmp(&self, other: &BlockId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for BlockId
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockId> for BlockIdSerializer

    source§

    impl Serialize for BlockId
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockId> for BlockIdSerializer

    source§

    fn serialize( &self, value: &BlockId, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for BlockId

    source§

    impl Eq for BlockId

    source§

    impl PreHashed for BlockId

    source§

    impl StructuralPartialEq for BlockId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for BlockId

    source§

    impl Eq for BlockId

    source§

    impl PreHashed for BlockId

    source§

    impl StructuralPartialEq for BlockId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -139,7 +139,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/block_id/struct.BlockIdDeserializer.html b/massa_models/block_id/struct.BlockIdDeserializer.html index 77db7ccdc9d..783caa04c5e 100644 --- a/massa_models/block_id/struct.BlockIdDeserializer.html +++ b/massa_models/block_id/struct.BlockIdDeserializer.html @@ -1,15 +1,15 @@ BlockIdDeserializer in massa_models::block_id - Rust

    Struct massa_models::block_id::BlockIdDeserializer

    source ·
    pub struct BlockIdDeserializer {
         hash_deserializer: HashDeserializer,
    -    version_deserializer: U64VarIntDeserializer,
    +    version_deserializer: U64VarIntDeserializer,
     }
    Expand description

    Deserializer for BlockId

    -

    Fields§

    §hash_deserializer: HashDeserializer§version_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl BlockIdDeserializer

    source

    pub fn new() -> Self

    Creates a new deserializer for BlockId

    -

    Trait Implementations§

    source§

    impl Clone for BlockIdDeserializer

    source§

    fn clone(&self) -> BlockIdDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BlockIdDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<BlockId> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §hash_deserializer: HashDeserializer§version_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl BlockIdDeserializer

    source

    pub fn new() -> Self

    Creates a new deserializer for BlockId

    +

    Trait Implementations§

    source§

    impl Clone for BlockIdDeserializer

    source§

    fn clone(&self) -> BlockIdDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BlockIdDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<BlockId> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BlockId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<BlockIdV0> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], BlockId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<BlockIdV0> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BlockIdV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], BlockIdV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/block_id/struct.BlockIdSerializer.html b/massa_models/block_id/struct.BlockIdSerializer.html index 84f9acde65c..230cdd68be0 100644 --- a/massa_models/block_id/struct.BlockIdSerializer.html +++ b/massa_models/block_id/struct.BlockIdSerializer.html @@ -1,16 +1,16 @@ BlockIdSerializer in massa_models::block_id - Rust

    Struct massa_models::block_id::BlockIdSerializer

    source ·
    pub struct BlockIdSerializer {
    -    version_serializer: U64VarIntSerializer,
    +    version_serializer: U64VarIntSerializer,
     }
    Expand description

    Serializer for BlockId

    -

    Fields§

    §version_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl BlockIdSerializer

    source

    pub fn new() -> Self

    Creates a new serializer for BlockId

    -

    Trait Implementations§

    source§

    impl Clone for BlockIdSerializer

    source§

    fn clone(&self) -> BlockIdSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BlockIdSerializer

    source§

    fn default() -> BlockIdSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BlockId> for BlockIdSerializer

    Fields§

    §version_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl BlockIdSerializer

    source

    pub fn new() -> Self

    Creates a new serializer for BlockId

    +

    Trait Implementations§

    source§

    impl Clone for BlockIdSerializer

    source§

    fn clone(&self) -> BlockIdSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BlockIdSerializer

    source§

    fn default() -> BlockIdSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BlockId> for BlockIdSerializer

    source§

    fn serialize( &self, value: &BlockId, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<BlockIdV0> for BlockIdSerializer

    source§

    fn serialize( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<BlockIdV0> for BlockIdSerializer

    source§

    fn serialize( &self, value: &BlockIdV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/block_id/struct.BlockIdV0.html b/massa_models/block_id/struct.BlockIdV0.html index 19a3624df31..f8e9924d08e 100644 --- a/massa_models/block_id/struct.BlockIdV0.html +++ b/massa_models/block_id/struct.BlockIdV0.html @@ -1,13 +1,13 @@ BlockIdV0 in massa_models::block_id - Rust

    Struct massa_models::block_id::BlockIdV0

    source ·
    pub struct BlockIdV0(pub Hash);
    Expand description

    block id

    Tuple Fields§

    §0: Hash

    Implementations§

    source§

    impl BlockIdV0

    source

    fn get_hash(&self) -> &Hash

    source

    pub fn get_first_bit(&self) -> bool

    first bit of the hashed block id

    source

    pub fn get_version(&self) -> u64

    version of the block id

    -

    Trait Implementations§

    source§

    impl Clone for BlockIdV0

    source§

    fn clone(&self) -> BlockIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<'de> Deserialize<'de> for BlockIdV0
    where +

    Trait Implementations§

    source§

    impl Clone for BlockIdV0

    source§

    fn clone(&self) -> BlockIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<'de> Deserialize<'de> for BlockIdV0
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockIdV0> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockIdV0> for BlockIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BlockIdV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for BlockIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for BlockIdV0

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for BlockIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], BlockIdV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for BlockIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for BlockIdV0

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for BlockIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for BlockIdV0

    source§

    fn cmp(&self, other: &BlockIdV0) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -16,13 +16,13 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for BlockIdV0

    source§

    fn partial_cmp(&self, other: &BlockIdV0) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for BlockIdV0
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockIdV0> for BlockIdSerializer

    source§

    impl Serialize for BlockIdV0
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockIdV0> for BlockIdSerializer

    source§

    fn serialize( &self, value: &BlockIdV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for BlockIdV0

    source§

    impl Copy for BlockIdV0

    source§

    impl Eq for BlockIdV0

    source§

    impl StructuralPartialEq for BlockIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for BlockIdV0

    source§

    impl Copy for BlockIdV0

    source§

    impl Eq for BlockIdV0

    source§

    impl StructuralPartialEq for BlockIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -133,6 +133,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    \ No newline at end of file diff --git a/massa_models/bytecode/struct.Bytecode.html b/massa_models/bytecode/struct.Bytecode.html index bf8732ad477..381f51964fd 100644 --- a/massa_models/bytecode/struct.Bytecode.html +++ b/massa_models/bytecode/struct.Bytecode.html @@ -1,16 +1,16 @@ Bytecode in massa_models::bytecode - Rust

    Struct massa_models::bytecode::Bytecode

    source ·
    pub struct Bytecode(pub Vec<u8>);
    Expand description

    Structure representing executable bytecode

    -

    Tuple Fields§

    §0: Vec<u8>

    Trait Implementations§

    source§

    impl Clone for Bytecode

    source§

    fn clone(&self) -> Bytecode

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Bytecode

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for Bytecode

    source§

    fn default() -> Bytecode

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for Bytecode

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Bytecode> for BytecodeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Tuple Fields§

    §0: Vec<u8>

    Trait Implementations§

    source§

    impl Clone for Bytecode

    source§

    fn clone(&self) -> Bytecode

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Bytecode

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for Bytecode

    source§

    fn default() -> Bytecode

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for Bytecode

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Bytecode> for BytecodeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Bytecode, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for Bytecode

    source§

    fn eq(&self, other: &Bytecode) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], Bytecode, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for Bytecode

    source§

    fn eq(&self, other: &Bytecode) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for Bytecode

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Bytecode> for BytecodeSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for Bytecode

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Bytecode> for BytecodeSerializer

    source§

    fn serialize( &self, value: &Bytecode, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Eq for Bytecode

    source§

    impl StructuralPartialEq for Bytecode

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Eq for Bytecode

    source§

    impl StructuralPartialEq for Bytecode

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -114,5 +114,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/bytecode/struct.BytecodeDeserializer.html b/massa_models/bytecode/struct.BytecodeDeserializer.html index 6ecd2808781..b2ef91c5340 100644 --- a/massa_models/bytecode/struct.BytecodeDeserializer.html +++ b/massa_models/bytecode/struct.BytecodeDeserializer.html @@ -1,12 +1,12 @@ BytecodeDeserializer in massa_models::bytecode - Rust

    Struct massa_models::bytecode::BytecodeDeserializer

    source ·
    pub struct BytecodeDeserializer {
    -    version_byte_deserializer: U64VarIntDeserializer,
    +    version_byte_deserializer: U64VarIntDeserializer,
         vec_u8_deserializer: VecU8Deserializer,
     }
    Expand description

    Deserializer for Bytecode

    -

    Fields§

    §version_byte_deserializer: U64VarIntDeserializer§vec_u8_deserializer: VecU8Deserializer

    Implementations§

    source§

    impl BytecodeDeserializer

    source

    pub fn new(max_datastore_value_length: u64) -> Self

    Creates a new LedgerEntryDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Bytecode> for BytecodeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §version_byte_deserializer: U64VarIntDeserializer§vec_u8_deserializer: VecU8Deserializer

    Implementations§

    source§

    impl BytecodeDeserializer

    source

    pub fn new(max_datastore_value_length: u64) -> Self

    Creates a new LedgerEntryDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<Bytecode> for BytecodeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Bytecode, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], Bytecode, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/bytecode/struct.BytecodeSerializer.html b/massa_models/bytecode/struct.BytecodeSerializer.html index 6cd3b10d1ef..36e648dcc2d 100644 --- a/massa_models/bytecode/struct.BytecodeSerializer.html +++ b/massa_models/bytecode/struct.BytecodeSerializer.html @@ -1,13 +1,13 @@ BytecodeSerializer in massa_models::bytecode - Rust

    Struct massa_models::bytecode::BytecodeSerializer

    source ·
    pub struct BytecodeSerializer {
    -    version_byte_serializer: U64VarIntSerializer,
    +    version_byte_serializer: U64VarIntSerializer,
         vec_u8_serializer: VecU8Serializer,
     }
    Expand description

    Serializer for Bytecode

    -

    Fields§

    §version_byte_serializer: U64VarIntSerializer§vec_u8_serializer: VecU8Serializer

    Implementations§

    source§

    impl BytecodeSerializer

    source

    pub fn new() -> Self

    Creates a new BytecodeSerializer

    -

    Trait Implementations§

    source§

    impl Default for BytecodeSerializer

    source§

    fn default() -> BytecodeSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Bytecode> for BytecodeSerializer

    Fields§

    §version_byte_serializer: U64VarIntSerializer§vec_u8_serializer: VecU8Serializer

    Implementations§

    source§

    impl BytecodeSerializer

    source

    pub fn new() -> Self

    Creates a new BytecodeSerializer

    +

    Trait Implementations§

    source§

    impl Default for BytecodeSerializer

    source§

    fn default() -> BytecodeSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Bytecode> for BytecodeSerializer

    source§

    fn serialize( &self, value: &Bytecode, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/clique/struct.Clique.html b/massa_models/clique/struct.Clique.html index 0d041a4fc14..00f2c6937f6 100644 --- a/massa_models/clique/struct.Clique.html +++ b/massa_models/clique/struct.Clique.html @@ -7,8 +7,8 @@
    §fitness: u64

    Fitness used to compute finality Depends on descendants and endorsement count

    §is_blockclique: bool

    True if it is the clique of higher fitness

    -

    Trait Implementations§

    source§

    impl Clone for Clique

    source§

    fn clone(&self) -> Clique

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Clique

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for Clique

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for Clique

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Clique> for CliqueDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Clique

    source§

    fn clone(&self) -> Clique

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Clique

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for Clique

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for Clique

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Clique> for CliqueDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Clique, E>

    §Example
    @@ -25,12 +25,12 @@ assert_eq!(clique.block_ids, clique_deserialized.block_ids); assert_eq!(clique.is_blockclique, clique_deserialized.is_blockclique); assert_eq!(clique.fitness, clique_deserialized.fitness);
    -
    source§

    impl Serialize for Clique

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Clique> for CliqueSerializer

    source§

    impl Serialize for Clique

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Clique> for CliqueSerializer

    source§

    fn serialize( &self, value: &Clique, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    let clique = Clique {
             block_ids: vec![get_dummy_block_id("parent1"), get_dummy_block_id("parent2")].into_iter().collect(),
             fitness: 123,
    @@ -137,5 +137,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/clique/struct.CliqueDeserializer.html b/massa_models/clique/struct.CliqueDeserializer.html index c9c9c2e11ce..16a2f0d24a7 100644 --- a/massa_models/clique/struct.CliqueDeserializer.html +++ b/massa_models/clique/struct.CliqueDeserializer.html @@ -1,10 +1,10 @@ CliqueDeserializer in massa_models::clique - Rust

    Struct massa_models::clique::CliqueDeserializer

    source ·
    pub struct CliqueDeserializer {
    -    block_ids_length_deserializer: U32VarIntDeserializer,
    +    block_ids_length_deserializer: U32VarIntDeserializer,
         block_id_deserializer: BlockIdDeserializer,
    -    fitness_deserializer: U64VarIntDeserializer,
    +    fitness_deserializer: U64VarIntDeserializer,
     }
    Expand description

    Basic deserializer for Clique

    -

    Fields§

    §block_ids_length_deserializer: U32VarIntDeserializer§block_id_deserializer: BlockIdDeserializer§fitness_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl CliqueDeserializer

    source

    pub fn new(max_bootstrap_blocks: u32) -> Self

    Creates a CliqueDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Clique> for CliqueDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §block_ids_length_deserializer: U32VarIntDeserializer§block_id_deserializer: BlockIdDeserializer§fitness_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl CliqueDeserializer

    source

    pub fn new(max_bootstrap_blocks: u32) -> Self

    Creates a CliqueDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<Clique> for CliqueDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Clique, E>

    §Example
    diff --git a/massa_models/clique/struct.CliqueSerializer.html b/massa_models/clique/struct.CliqueSerializer.html index f413da76da7..0bff786668e 100644 --- a/massa_models/clique/struct.CliqueSerializer.html +++ b/massa_models/clique/struct.CliqueSerializer.html @@ -1,14 +1,14 @@ CliqueSerializer in massa_models::clique - Rust

    Struct massa_models::clique::CliqueSerializer

    source ·
    pub struct CliqueSerializer {
    -    block_ids_length_serializer: U32VarIntSerializer,
    -    fitness_serializer: U64VarIntSerializer,
    +    block_ids_length_serializer: U32VarIntSerializer,
    +    fitness_serializer: U64VarIntSerializer,
         block_id_serializer: BlockIdSerializer,
     }
    Expand description

    Basic serializer for Clique

    -

    Fields§

    §block_ids_length_serializer: U32VarIntSerializer§fitness_serializer: U64VarIntSerializer§block_id_serializer: BlockIdSerializer

    Implementations§

    source§

    impl CliqueSerializer

    source

    pub fn new() -> Self

    Creates a CliqueSerializer

    -

    Trait Implementations§

    source§

    impl Default for CliqueSerializer

    source§

    fn default() -> CliqueSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Clique> for CliqueSerializer

    Fields§

    §block_ids_length_serializer: U32VarIntSerializer§fitness_serializer: U64VarIntSerializer§block_id_serializer: BlockIdSerializer

    Implementations§

    source§

    impl CliqueSerializer

    source

    pub fn new() -> Self

    Creates a CliqueSerializer

    +

    Trait Implementations§

    source§

    impl Default for CliqueSerializer

    source§

    fn default() -> CliqueSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Clique> for CliqueSerializer

    source§

    fn serialize( &self, value: &Clique, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    let clique = Clique {
             block_ids: vec![get_dummy_block_id("parent1"), get_dummy_block_id("parent2")].into_iter().collect(),
             fitness: 123,
    diff --git a/massa_models/composite/enum.OperationSearchResultBlockStatus.html b/massa_models/composite/enum.OperationSearchResultBlockStatus.html
    index 09be071e99b..c41df1f1054 100644
    --- a/massa_models/composite/enum.OperationSearchResultBlockStatus.html
    +++ b/massa_models/composite/enum.OperationSearchResultBlockStatus.html
    @@ -10,9 +10,9 @@
     
    §

    WaitingForDependencies

    the block waits for dependencies for further processing

    §

    Active

    the block has been processed and is valid

    §

    Discarded

    the block is discarded

    -

    Trait Implementations§

    source§

    impl Clone for OperationSearchResultBlockStatus

    source§

    fn clone(&self) -> OperationSearchResultBlockStatus

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationSearchResultBlockStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationSearchResultBlockStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for OperationSearchResultBlockStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for OperationSearchResultBlockStatus

    source§

    fn clone(&self) -> OperationSearchResultBlockStatus

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationSearchResultBlockStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationSearchResultBlockStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for OperationSearchResultBlockStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -110,5 +110,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/composite/enum.OperationSearchResultStatus.html b/massa_models/composite/enum.OperationSearchResultStatus.html index 68d5f642cc1..733f1dc898e 100644 --- a/massa_models/composite/enum.OperationSearchResultStatus.html +++ b/massa_models/composite/enum.OperationSearchResultStatus.html @@ -6,9 +6,9 @@

    Variants§

    §

    Pending

    in pool

    §

    InBlock(OperationSearchResultBlockStatus)

    in a block, the block being in [OperationSearchResultBlockStatus]

    §

    Discarded

    discarded

    -

    Trait Implementations§

    source§

    impl Clone for OperationSearchResultStatus

    source§

    fn clone(&self) -> OperationSearchResultStatus

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationSearchResultStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationSearchResultStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for OperationSearchResultStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for OperationSearchResultStatus

    source§

    fn clone(&self) -> OperationSearchResultStatus

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationSearchResultStatus

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationSearchResultStatus

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for OperationSearchResultStatus

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -106,5 +106,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/composite/struct.OperationSearchResult.html b/massa_models/composite/struct.OperationSearchResult.html index 46cbd72e5e3..daf1cddb4fd 100644 --- a/massa_models/composite/struct.OperationSearchResult.html +++ b/massa_models/composite/struct.OperationSearchResult.html @@ -9,9 +9,9 @@ §in_blocks: PreHashMap<BlockId, (usize, bool)>

    maps block id to index on the operation in the block and if it’s final

    §status: OperationSearchResultStatus

    operation status

    Implementations§

    source§

    impl OperationSearchResult

    source

    pub fn extend(&mut self, other: &OperationSearchResult)

    combine two operation search result

    -

    Trait Implementations§

    source§

    impl Clone for OperationSearchResult

    source§

    fn clone(&self) -> OperationSearchResult

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationSearchResult

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationSearchResult

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for OperationSearchResult

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for OperationSearchResult

    source§

    fn clone(&self) -> OperationSearchResult

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationSearchResult

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationSearchResult

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for OperationSearchResult

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -109,5 +109,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/composite/struct.PubkeySig.html b/massa_models/composite/struct.PubkeySig.html index ad0dc02a121..42f01172e04 100644 --- a/massa_models/composite/struct.PubkeySig.html +++ b/massa_models/composite/struct.PubkeySig.html @@ -5,9 +5,9 @@ used for serialization/deserialization purpose

    Fields§

    §public_key: PublicKey

    public key

    §signature: Signature

    signature

    -

    Trait Implementations§

    source§

    impl Clone for PubkeySig

    source§

    fn clone(&self) -> PubkeySig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PubkeySig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PubkeySig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for PubkeySig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for PubkeySig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for PubkeySig

    source§

    fn clone(&self) -> PubkeySig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PubkeySig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PubkeySig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for PubkeySig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for PubkeySig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -106,5 +106,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/composite/struct.StakersCycleProductionStats.html b/massa_models/composite/struct.StakersCycleProductionStats.html index 4f2d10775fe..77790d35d7c 100644 --- a/massa_models/composite/struct.StakersCycleProductionStats.html +++ b/massa_models/composite/struct.StakersCycleProductionStats.html @@ -7,9 +7,9 @@ §is_final: bool

    if that cycle is final

    §ok_nok_counts: PreHashMap<Address, (u64, u64)>

    map address to produced valid block count and not valid but expected block count really a re arranged [crate::address::AddressCycleProductionStats]

    -

    Trait Implementations§

    source§

    impl Clone for StakersCycleProductionStats

    source§

    fn clone(&self) -> StakersCycleProductionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for StakersCycleProductionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for StakersCycleProductionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for StakersCycleProductionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for StakersCycleProductionStats

    source§

    fn clone(&self) -> StakersCycleProductionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for StakersCycleProductionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for StakersCycleProductionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for StakersCycleProductionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -107,5 +107,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/config/compact_config/struct.CompactConfig.html b/massa_models/config/compact_config/struct.CompactConfig.html index b1527c1bc93..7f601cd2fb4 100644 --- a/massa_models/config/compact_config/struct.CompactConfig.html +++ b/massa_models/config/compact_config/struct.CompactConfig.html @@ -20,9 +20,9 @@ §block_reward: Amount

    Reward amount for a block creation

    §roll_price: Amount

    Price of a roll on the network

    §max_block_size: u32

    Max total size of a block

    -

    Trait Implementations§

    source§

    impl Clone for CompactConfig

    source§

    fn clone(&self) -> CompactConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for CompactConfig

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for CompactConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<CompactConfig> for CompactConfig

    source§

    fn from(value: CompactConfig) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for CompactConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for CompactConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for CompactConfig

    source§

    fn clone(&self) -> CompactConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for CompactConfig

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for CompactConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<CompactConfig> for CompactConfig

    source§

    fn from(value: CompactConfig) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for CompactConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for CompactConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -122,5 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/config/fn.build_massa_settings.html b/massa_models/config/fn.build_massa_settings.html index 1fd6835fc5e..ad06282e32f 100644 --- a/massa_models/config/fn.build_massa_settings.html +++ b/massa_models/config/fn.build_massa_settings.html @@ -1,4 +1,4 @@ -build_massa_settings in massa_models::config - Rust

    Function massa_models::config::build_massa_settings

    source ·
    pub fn build_massa_settings<T: Deserialize<'static>>(
    +build_massa_settings in massa_models::config - Rust

    Function massa_models::config::build_massa_settings

    source ·
    pub fn build_massa_settings<T: Deserialize<'static>>(
         app_name: &str,
         env_prefix: &str,
     ) -> T
    Expand description

    Merge the settings

    diff --git a/massa_models/config/massa_settings/fn.build_massa_settings.html b/massa_models/config/massa_settings/fn.build_massa_settings.html index 78f655acc07..6826496b5e9 100644 --- a/massa_models/config/massa_settings/fn.build_massa_settings.html +++ b/massa_models/config/massa_settings/fn.build_massa_settings.html @@ -1,4 +1,4 @@ -build_massa_settings in massa_models::config::massa_settings - Rust
    pub fn build_massa_settings<T: Deserialize<'static>>(
    +build_massa_settings in massa_models::config::massa_settings - Rust
    pub fn build_massa_settings<T: Deserialize<'static>>(
         app_name: &str,
         env_prefix: &str,
     ) -> T
    Expand description

    Merge the settings

    diff --git a/massa_models/config/struct.CompactConfig.html b/massa_models/config/struct.CompactConfig.html index aa0a7bbc2d9..3650dddf681 100644 --- a/massa_models/config/struct.CompactConfig.html +++ b/massa_models/config/struct.CompactConfig.html @@ -20,9 +20,9 @@
    §block_reward: Amount

    Reward amount for a block creation

    §roll_price: Amount

    Price of a roll on the network

    §max_block_size: u32

    Max total size of a block

    -

    Trait Implementations§

    source§

    impl Clone for CompactConfig

    source§

    fn clone(&self) -> CompactConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for CompactConfig

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for CompactConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<CompactConfig> for CompactConfig

    source§

    fn from(value: CompactConfig) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for CompactConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for CompactConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for CompactConfig

    source§

    fn clone(&self) -> CompactConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for CompactConfig

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for CompactConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for CompactConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<CompactConfig> for CompactConfig

    source§

    fn from(value: CompactConfig) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for CompactConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for CompactConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -122,5 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/datastore/struct.DatastoreDeserializer.html b/massa_models/datastore/struct.DatastoreDeserializer.html index bce3dcbfbf6..b1ea71b7157 100644 --- a/massa_models/datastore/struct.DatastoreDeserializer.html +++ b/massa_models/datastore/struct.DatastoreDeserializer.html @@ -1,14 +1,14 @@ DatastoreDeserializer in massa_models::datastore - Rust

    Struct massa_models::datastore::DatastoreDeserializer

    source ·
    pub struct DatastoreDeserializer {
    -    length_deserializer: U64VarIntDeserializer,
    +    length_deserializer: U64VarIntDeserializer,
         key_deserializer: VecU8Deserializer,
         value_deserializer: VecU8Deserializer,
     }
    Expand description

    Deserializer for Datastore field in LedgerEntry

    -

    Fields§

    §length_deserializer: U64VarIntDeserializer§key_deserializer: VecU8Deserializer§value_deserializer: VecU8Deserializer

    Implementations§

    source§

    impl DatastoreDeserializer

    source

    pub fn new( +

    Fields§

    §length_deserializer: U64VarIntDeserializer§key_deserializer: VecU8Deserializer§value_deserializer: VecU8Deserializer

    Implementations§

    source§

    impl DatastoreDeserializer

    source

    pub fn new( max_datastore_entry_count: u64, max_datastore_key_length: u8, max_datastore_value_length: u64, ) -> Self

    Creates a new DatastoreDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], BTreeMap<Vec<u8>, Vec<u8>>, E>

    §Example
    diff --git a/massa_models/datastore/struct.DatastoreSerializer.html b/massa_models/datastore/struct.DatastoreSerializer.html index 123d9757131..63581cb838b 100644 --- a/massa_models/datastore/struct.DatastoreSerializer.html +++ b/massa_models/datastore/struct.DatastoreSerializer.html @@ -1,13 +1,13 @@ DatastoreSerializer in massa_models::datastore - Rust

    Struct massa_models::datastore::DatastoreSerializer

    source ·
    pub struct DatastoreSerializer {
    -    u64_serializer: U64VarIntSerializer,
    +    u64_serializer: U64VarIntSerializer,
         vec_u8_serializer: VecU8Serializer,
     }
    Expand description

    Serializer for Datastore

    -

    Fields§

    §u64_serializer: U64VarIntSerializer§vec_u8_serializer: VecU8Serializer

    Implementations§

    source§

    impl DatastoreSerializer

    source

    pub fn new() -> Self

    Creates a new DatastoreSerializer

    -

    Trait Implementations§

    source§

    impl Default for DatastoreSerializer

    source§

    fn default() -> DatastoreSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreSerializer

    Fields§

    §u64_serializer: U64VarIntSerializer§vec_u8_serializer: VecU8Serializer

    Implementations§

    source§

    impl DatastoreSerializer

    source

    pub fn new() -> Self

    Creates a new DatastoreSerializer

    +

    Trait Implementations§

    source§

    impl Default for DatastoreSerializer

    source§

    fn default() -> DatastoreSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreSerializer

    source§

    fn serialize( &self, value: &BTreeMap<Vec<u8>, Vec<u8>>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use std::collections::BTreeMap;
     use massa_models::datastore::DatastoreSerializer;
     use massa_serialization::Serializer;
    diff --git a/massa_models/deferred_calls/enum.DeferredCallId.html b/massa_models/deferred_calls/enum.DeferredCallId.html
    index 3314151bc34..21935107334 100644
    --- a/massa_models/deferred_calls/enum.DeferredCallId.html
    +++ b/massa_models/deferred_calls/enum.DeferredCallId.html
    @@ -9,10 +9,10 @@
     ) -> Result<Self, ModelsError>

    Create a new DeferredCallId

    source

    pub fn as_bytes(&self) -> &[u8]

    Return the version of the DeferredCallId as bytes

    source

    pub fn from_bytes(bytes: &[u8]) -> Result<Self, ModelsError>

    Create an DeferredCallId from bytes

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCallId

    source§

    fn clone(&self) -> DeferredCallId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCallId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCallId

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<DeferredCallId, D::Error>

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCallId> for DeferredCallIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DeferredCallId

    source§

    fn clone(&self) -> DeferredCallId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCallId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCallId

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<DeferredCallId, D::Error>

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCallId> for DeferredCallIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DeferredCallId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for DeferredCallId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for DeferredCallId

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for DeferredCallId

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], DeferredCallId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for DeferredCallId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for DeferredCallId

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for DeferredCallId

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for DeferredCallId

    source§

    fn cmp(&self, other: &DeferredCallId) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -21,12 +21,12 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for DeferredCallId

    source§

    fn partial_cmp(&self, other: &DeferredCallId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for DeferredCallId

    source§

    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where - S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCallId> for DeferredCallIdSerializer

    source§

    impl Serialize for DeferredCallId

    source§

    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where + S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCallId> for DeferredCallIdSerializer

    source§

    fn serialize( &self, value: &DeferredCallId, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Eq for DeferredCallId

    source§

    impl StructuralPartialEq for DeferredCallId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Eq for DeferredCallId

    source§

    impl StructuralPartialEq for DeferredCallId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -136,5 +136,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/deferred_calls/struct.DeferredCallIdDeserializer.html b/massa_models/deferred_calls/struct.DeferredCallIdDeserializer.html index ae7ecbe85ea..57a4921b1e4 100644 --- a/massa_models/deferred_calls/struct.DeferredCallIdDeserializer.html +++ b/massa_models/deferred_calls/struct.DeferredCallIdDeserializer.html @@ -2,10 +2,10 @@ bytes_deserializer: VecU8Deserializer, }
    Expand description

    Deserializer for DeferredCallId

    Fields§

    §bytes_deserializer: VecU8Deserializer

    Implementations§

    source§

    impl DeferredCallIdDeserializer

    source

    pub fn new() -> Self

    Deserializes a Vec<u8> into an DeferredCallId

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCallIdDeserializer

    source§

    fn clone(&self) -> DeferredCallIdDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for DeferredCallIdDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<DeferredCallId> for DeferredCallIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DeferredCallIdDeserializer

    source§

    fn clone(&self) -> DeferredCallIdDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for DeferredCallIdDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<DeferredCallId> for DeferredCallIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DeferredCallId, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], DeferredCallId, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/deferred_calls/struct.DeferredCallIdSerializer.html b/massa_models/deferred_calls/struct.DeferredCallIdSerializer.html index 3791cee7180..da754c1a42e 100644 --- a/massa_models/deferred_calls/struct.DeferredCallIdSerializer.html +++ b/massa_models/deferred_calls/struct.DeferredCallIdSerializer.html @@ -2,11 +2,11 @@ bytes_serializer: VecU8Serializer, }
    Expand description

    Serializer for DeferredCallId

    Fields§

    §bytes_serializer: VecU8Serializer

    Implementations§

    source§

    impl DeferredCallIdSerializer

    source

    pub fn new() -> Self

    Serializes an DeferredCallId into a Vec<u8>

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCallIdSerializer

    source§

    fn clone(&self) -> DeferredCallIdSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for DeferredCallIdSerializer

    source§

    fn default() -> DeferredCallIdSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<DeferredCallId> for DeferredCallIdSerializer

    Trait Implementations§

    source§

    impl Clone for DeferredCallIdSerializer

    source§

    fn clone(&self) -> DeferredCallIdSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for DeferredCallIdSerializer

    source§

    fn default() -> DeferredCallIdSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<DeferredCallId> for DeferredCallIdSerializer

    source§

    fn serialize( &self, value: &DeferredCallId, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/denunciation/enum.Denunciation.html b/massa_models/denunciation/enum.Denunciation.html index 62c5ab79505..aef589460a3 100644 --- a/massa_models/denunciation/enum.Denunciation.html +++ b/massa_models/denunciation/enum.Denunciation.html @@ -27,26 +27,26 @@
  • A final slot period (for example in order to cleanup denunciation pool caches)
  • A block slot period (in execution (execute_denunciation(…)))
  • -

    Trait Implementations§

    source§

    impl Clone for Denunciation

    source§

    fn clone(&self) -> Denunciation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Denunciation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Denunciation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Denunciation> for DenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Denunciation

    source§

    fn clone(&self) -> Denunciation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Denunciation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Denunciation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Denunciation> for DenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Denunciation, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<&Denunciation> for DenunciationIndex

    Create a DenunciationIndex from a Denunciation

    -
    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<&Denunciation> for DenunciationTypeId

    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<Denunciation> for Denunciation

    source§

    fn from(value: Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for Denunciation

    source§

    fn eq(&self, other: &Denunciation) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], Denunciation, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<&Denunciation> for DenunciationIndex

    Create a DenunciationIndex from a Denunciation

    +
    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<&Denunciation> for DenunciationTypeId

    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<Denunciation> for Denunciation

    source§

    fn from(value: Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for Denunciation

    source§

    fn eq(&self, other: &Denunciation) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for Denunciation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Denunciation> for DenunciationSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for Denunciation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Denunciation> for DenunciationSerializer

    source§

    fn serialize( &self, value: &Denunciation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl TryFrom<(&DenunciationPrecursor, &DenunciationPrecursor)> for Denunciation

    Create a new Denunciation from 2 SecureHeader

    -
    §

    type Error = DenunciationError

    The type returned in the event of a conversion error.
    source§

    fn try_from( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl TryFrom<(&DenunciationPrecursor, &DenunciationPrecursor)> for Denunciation

    Create a new Denunciation from 2 SecureHeader

    +
    §

    type Error = DenunciationError

    The type returned in the event of a conversion error.
    source§

    fn try_from( (de_p_1, de_p_2): (&DenunciationPrecursor, &DenunciationPrecursor), ) -> Result<Self, Self::Error>

    Performs the conversion.
    source§

    impl TryFrom<(&SecureShare<BlockHeader, BlockId>, &SecureShare<BlockHeader, BlockId>)> for Denunciation

    Create a new Denunciation from 2 SecureHeader

    -
    §

    type Error = DenunciationError

    The type returned in the event of a conversion error.
    source§

    fn try_from( +

    §

    type Error = DenunciationError

    The type returned in the event of a conversion error.
    source§

    fn try_from( (s_bh1, s_bh2): (&SecuredHeader, &SecuredHeader), ) -> Result<Self, Self::Error>

    Performs the conversion.
    source§

    impl TryFrom<(&SecureShare<Endorsement, EndorsementId>, &SecureShare<Endorsement, EndorsementId>)> for Denunciation

    Create a new Denunciation from 2 SecureShareEndorsement

    -
    §

    type Error = DenunciationError

    The type returned in the event of a conversion error.
    source§

    fn try_from( +

    §

    type Error = DenunciationError

    The type returned in the event of a conversion error.
    source§

    fn try_from( (s_e1, s_e2): (&SecureShareEndorsement, &SecureShareEndorsement), ) -> Result<Self, Self::Error>

    Performs the conversion.
    source§

    impl StructuralPartialEq for Denunciation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where @@ -146,5 +146,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/denunciation/enum.DenunciationError.html b/massa_models/denunciation/enum.DenunciationError.html index ab1e44ee7d1..2742e025fef 100644 --- a/massa_models/denunciation/enum.DenunciationError.html +++ b/massa_models/denunciation/enum.DenunciationError.html @@ -1,9 +1,9 @@ DenunciationError in massa_models::denunciation - Rust

    Enum massa_models::denunciation::DenunciationError

    source ·
    pub enum DenunciationError {
         InvalidInput(String),
         Signature(MassaSignatureError),
    -    Serialization(SerializeError),
    +    Serialization(SerializeError),
     }
    Expand description

    Denunciation error

    -

    Variants§

    §

    InvalidInput(String)

    §

    Signature(MassaSignatureError)

    §

    Serialization(SerializeError)

    Trait Implementations§

    source§

    impl Debug for DenunciationError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for DenunciationError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for DenunciationError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<MassaSignatureError> for DenunciationError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for DenunciationError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Variants§

    §

    InvalidInput(String)

    §

    Signature(MassaSignatureError)

    §

    Serialization(SerializeError)

    Trait Implementations§

    source§

    impl Debug for DenunciationError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for DenunciationError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for DenunciationError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<MassaSignatureError> for DenunciationError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for DenunciationError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/denunciation/enum.DenunciationIndex.html b/massa_models/denunciation/enum.DenunciationIndex.html index 06cde4553d3..350451fde1f 100644 --- a/massa_models/denunciation/enum.DenunciationIndex.html +++ b/massa_models/denunciation/enum.DenunciationIndex.html @@ -15,13 +15,13 @@

    Implementations§

    source§

    impl DenunciationIndex

    source

    pub fn get_slot(&self) -> &Slot

    Get field: slot

    source

    pub fn get_index(&self) -> Option<&u32>

    Get field: index (return None for a block header denunciation index)

    source

    pub fn get_hash(&self) -> Hash

    Compute the hash

    -

    Trait Implementations§

    source§

    impl Clone for DenunciationIndex

    source§

    fn clone(&self) -> DenunciationIndex

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DenunciationIndex

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DenunciationIndex

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DenunciationIndex> for DenunciationIndexDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DenunciationIndex

    source§

    fn clone(&self) -> DenunciationIndex

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DenunciationIndex

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for DenunciationIndex

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DenunciationIndex> for DenunciationIndexDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DenunciationIndex, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<&Denunciation> for DenunciationIndex

    Create a DenunciationIndex from a Denunciation

    -
    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<&DenunciationIndex> for DenunciationIndexTypeId

    source§

    fn from(value: &DenunciationIndex) -> Self

    Converts to this type from the input type.
    source§

    impl From<&DenunciationPrecursor> for DenunciationIndex

    Create a DenunciationIndex from a DenunciationPrecursor

    -
    source§

    fn from(value: &DenunciationPrecursor) -> Self

    Converts to this type from the input type.
    source§

    impl From<DenunciationIndex> for DenunciationIndex

    source§

    fn from(value: DenunciationIndex) -> Self

    Converts to this type from the input type.
    source§

    impl Hash for DenunciationIndex

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], DenunciationIndex, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<&Denunciation> for DenunciationIndex

    Create a DenunciationIndex from a Denunciation

    +
    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<&DenunciationIndex> for DenunciationIndexTypeId

    source§

    fn from(value: &DenunciationIndex) -> Self

    Converts to this type from the input type.
    source§

    impl From<&DenunciationPrecursor> for DenunciationIndex

    Create a DenunciationIndex from a DenunciationPrecursor

    +
    source§

    fn from(value: &DenunciationPrecursor) -> Self

    Converts to this type from the input type.
    source§

    impl From<DenunciationIndex> for DenunciationIndex

    source§

    fn from(value: DenunciationIndex) -> Self

    Converts to this type from the input type.
    source§

    impl Hash for DenunciationIndex

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for DenunciationIndex

    source§

    fn cmp(&self, other: &Self) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -30,12 +30,12 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for DenunciationIndex

    source§

    fn partial_cmp(&self, other: &Self) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for DenunciationIndex

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DenunciationIndex> for DenunciationIndexSerializer

    source§

    impl Serialize for DenunciationIndex

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DenunciationIndex> for DenunciationIndexSerializer

    source§

    fn serialize( &self, value: &DenunciationIndex, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for DenunciationIndex

    source§

    impl Eq for DenunciationIndex

    source§

    impl StructuralPartialEq for DenunciationIndex

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for DenunciationIndex

    source§

    impl Eq for DenunciationIndex

    source§

    impl StructuralPartialEq for DenunciationIndex

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -145,7 +145,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/denunciation/enum.DenunciationIndexTypeId.html b/massa_models/denunciation/enum.DenunciationIndexTypeId.html index 665f5080379..762984ba0e0 100644 --- a/massa_models/denunciation/enum.DenunciationIndexTypeId.html +++ b/massa_models/denunciation/enum.DenunciationIndexTypeId.html @@ -1,7 +1,7 @@ DenunciationIndexTypeId in massa_models::denunciation - Rust
    #[repr(u32)]
    enum DenunciationIndexTypeId { BlockHeader = 0, Endorsement = 1, -}

    Variants§

    §

    BlockHeader = 0

    §

    Endorsement = 1

    Trait Implementations§

    source§

    impl Debug for DenunciationIndexTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&DenunciationIndex> for DenunciationIndexTypeId

    source§

    fn from(value: &DenunciationIndex) -> Self

    Converts to this type from the input type.
    source§

    impl From<DenunciationIndexTypeId> for u32

    source§

    fn from(enum_value: DenunciationIndexTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for DenunciationIndexTypeId

    source§

    fn eq(&self, other: &DenunciationIndexTypeId) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    BlockHeader = 0

    §

    Endorsement = 1

    Trait Implementations§

    source§

    impl Debug for DenunciationIndexTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&DenunciationIndex> for DenunciationIndexTypeId

    source§

    fn from(value: &DenunciationIndex) -> Self

    Converts to this type from the input type.
    source§

    impl From<DenunciationIndexTypeId> for u32

    source§

    fn from(enum_value: DenunciationIndexTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for DenunciationIndexTypeId

    source§

    fn eq(&self, other: &DenunciationIndexTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u32> for DenunciationIndexTypeId

    §

    type Error = TryFromPrimitiveError<DenunciationIndexTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for DenunciationIndexTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<DenunciationIndexTypeId>

    source§

    const NAME: &'static str = "DenunciationIndexTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, diff --git a/massa_models/denunciation/enum.DenunciationPrecursor.html b/massa_models/denunciation/enum.DenunciationPrecursor.html index fc8bf5dd7d7..cf685a14e36 100644 --- a/massa_models/denunciation/enum.DenunciationPrecursor.html +++ b/massa_models/denunciation/enum.DenunciationPrecursor.html @@ -8,7 +8,7 @@

    Implementations§

    source§

    impl DenunciationPrecursor

    source

    pub fn get_slot(&self) -> &Slot

    Get field: slot

    source

    pub fn get_public_key(&self) -> &PublicKey

    Get field: pub key

    Trait Implementations§

    source§

    impl Clone for DenunciationPrecursor

    source§

    fn clone(&self) -> DenunciationPrecursor

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DenunciationPrecursor

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&DenunciationPrecursor> for DenunciationIndex

    Create a DenunciationIndex from a DenunciationPrecursor

    -
    source§

    fn from(value: &DenunciationPrecursor) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SecureShare<BlockHeader, BlockId>> for DenunciationPrecursor

    source§

    fn from(value: &SecuredHeader) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SecureShare<Endorsement, EndorsementId>> for DenunciationPrecursor

    source§

    fn from(value: &SecureShareEndorsement) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for DenunciationPrecursor

    source§

    fn eq(&self, other: &DenunciationPrecursor) -> bool

    This method tests for self and other values to be equal, and is used +
    source§

    fn from(value: &DenunciationPrecursor) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SecureShare<BlockHeader, BlockId>> for DenunciationPrecursor

    source§

    fn from(value: &SecuredHeader) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SecureShare<Endorsement, EndorsementId>> for DenunciationPrecursor

    source§

    fn from(value: &SecureShareEndorsement) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for DenunciationPrecursor

    source§

    fn eq(&self, other: &DenunciationPrecursor) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl StructuralPartialEq for DenunciationPrecursor

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where diff --git a/massa_models/denunciation/enum.DenunciationTypeId.html b/massa_models/denunciation/enum.DenunciationTypeId.html index 0e42e70962c..f565c2420ba 100644 --- a/massa_models/denunciation/enum.DenunciationTypeId.html +++ b/massa_models/denunciation/enum.DenunciationTypeId.html @@ -1,7 +1,7 @@ DenunciationTypeId in massa_models::denunciation - Rust

    Enum massa_models::denunciation::DenunciationTypeId

    source ·
    #[repr(u32)]
    pub enum DenunciationTypeId { BlockHeader = 0, Endorsement = 1, -}

    Variants§

    §

    BlockHeader = 0

    §

    Endorsement = 1

    Implementations§

    Trait Implementations§

    source§

    impl Debug for DenunciationTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&Denunciation> for DenunciationTypeId

    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<DenunciationTypeId> for u32

    source§

    fn from(enum_value: DenunciationTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl TryFrom<u32> for DenunciationTypeId

    §

    type Error = TryFromPrimitiveError<DenunciationTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for DenunciationTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<DenunciationTypeId>

    source§

    const NAME: &'static str = "DenunciationTypeId"

    source§

    fn try_from_primitive( +}

    Variants§

    §

    BlockHeader = 0

    §

    Endorsement = 1

    Implementations§

    Trait Implementations§

    source§

    impl Debug for DenunciationTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&Denunciation> for DenunciationTypeId

    source§

    fn from(value: &Denunciation) -> Self

    Converts to this type from the input type.
    source§

    impl From<DenunciationTypeId> for u32

    source§

    fn from(enum_value: DenunciationTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl TryFrom<u32> for DenunciationTypeId

    §

    type Error = TryFromPrimitiveError<DenunciationTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for DenunciationTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<DenunciationTypeId>

    source§

    const NAME: &'static str = "DenunciationTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where diff --git a/massa_models/denunciation/struct.BlockHeaderDenunciation.html b/massa_models/denunciation/struct.BlockHeaderDenunciation.html index 73f12239dd5..0006a181591 100644 --- a/massa_models/denunciation/struct.BlockHeaderDenunciation.html +++ b/massa_models/denunciation/struct.BlockHeaderDenunciation.html @@ -11,18 +11,18 @@ slot: &Slot, content_hash: &Hash, ) -> Hash

    Rebuild full hash of SecuredHeader from given arguments

    -
    source

    pub fn get_public_key(&self) -> &PublicKey

    source

    pub fn get_slot(&self) -> &Slot

    source

    pub fn get_hash_1(&self) -> &Hash

    source

    pub fn get_hash_2(&self) -> &Hash

    source

    pub fn get_signature_1(&self) -> &Signature

    source

    pub fn get_signature_2(&self) -> &Signature

    Trait Implementations§

    source§

    impl Clone for BlockHeaderDenunciation

    source§

    fn clone(&self) -> BlockHeaderDenunciation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockHeaderDenunciation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockHeaderDenunciation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockHeaderDenunciation> for BlockHeaderDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source

    pub fn get_public_key(&self) -> &PublicKey

    source

    pub fn get_slot(&self) -> &Slot

    source

    pub fn get_hash_1(&self) -> &Hash

    source

    pub fn get_hash_2(&self) -> &Hash

    source

    pub fn get_signature_1(&self) -> &Signature

    source

    pub fn get_signature_2(&self) -> &Signature

    Trait Implementations§

    source§

    impl Clone for BlockHeaderDenunciation

    source§

    fn clone(&self) -> BlockHeaderDenunciation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockHeaderDenunciation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockHeaderDenunciation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BlockHeaderDenunciation> for BlockHeaderDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BlockHeaderDenunciation, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for BlockHeaderDenunciation

    source§

    fn eq(&self, other: &BlockHeaderDenunciation) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], BlockHeaderDenunciation, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for BlockHeaderDenunciation

    source§

    fn eq(&self, other: &BlockHeaderDenunciation) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for BlockHeaderDenunciation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockHeaderDenunciation> for BlockHeaderDenunciationSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for BlockHeaderDenunciation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BlockHeaderDenunciation> for BlockHeaderDenunciationSerializer

    source§

    fn serialize( &self, value: &BlockHeaderDenunciation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl StructuralPartialEq for BlockHeaderDenunciation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl StructuralPartialEq for BlockHeaderDenunciation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -120,5 +120,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/denunciation/struct.BlockHeaderDenunciationDeserializer.html b/massa_models/denunciation/struct.BlockHeaderDenunciationDeserializer.html index c5fcb70650c..3a11d383519 100644 --- a/massa_models/denunciation/struct.BlockHeaderDenunciationDeserializer.html +++ b/massa_models/denunciation/struct.BlockHeaderDenunciationDeserializer.html @@ -5,10 +5,10 @@ signature_deserializer: SignatureDeserializer, }
    Expand description

    Deserializer for BlockHeaderDenunciation

    Fields§

    §slot_deserializer: SlotDeserializer§hash_deserializer: HashDeserializer§pubkey_deserializer: PublicKeyDeserializer§signature_deserializer: SignatureDeserializer

    Implementations§

    source§

    impl BlockHeaderDenunciationDeserializer

    source

    pub const fn new(thread_count: u8) -> Self

    Creates a new BlockHeaderDenunciationDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<BlockHeaderDenunciation> for BlockHeaderDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<BlockHeaderDenunciation> for BlockHeaderDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BlockHeaderDenunciation, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], BlockHeaderDenunciation, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/denunciation/struct.BlockHeaderDenunciationSerializer.html b/massa_models/denunciation/struct.BlockHeaderDenunciationSerializer.html index 668f3da1eac..9cec128b386 100644 --- a/massa_models/denunciation/struct.BlockHeaderDenunciationSerializer.html +++ b/massa_models/denunciation/struct.BlockHeaderDenunciationSerializer.html @@ -3,11 +3,11 @@ hash_serializer: HashSerializer, }
    Expand description

    Serializer for BlockHeaderDenunciation

    Fields§

    §slot_serializer: SlotSerializer§hash_serializer: HashSerializer

    Implementations§

    source§

    impl BlockHeaderDenunciationSerializer

    source

    const fn new() -> Self

    Creates a new BlockHeaderDenunciationSerializer

    -

    Trait Implementations§

    Trait Implementations§

    source§

    impl Default for BlockHeaderDenunciationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BlockHeaderDenunciation> for BlockHeaderDenunciationSerializer

    source§

    fn serialize( &self, value: &BlockHeaderDenunciation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/denunciation/struct.DenunciationDeserializer.html b/massa_models/denunciation/struct.DenunciationDeserializer.html index a585da7e543..8a81b1e53a0 100644 --- a/massa_models/denunciation/struct.DenunciationDeserializer.html +++ b/massa_models/denunciation/struct.DenunciationDeserializer.html @@ -1,13 +1,13 @@ DenunciationDeserializer in massa_models::denunciation - Rust
    pub struct DenunciationDeserializer {
         endo_de_deserializer: EndorsementDenunciationDeserializer,
         blkh_de_deserializer: BlockHeaderDenunciationDeserializer,
    -    type_id_deserializer: U32VarIntDeserializer,
    +    type_id_deserializer: U32VarIntDeserializer,
     }
    Expand description

    Deserializer for Denunciation

    -

    Fields§

    §endo_de_deserializer: EndorsementDenunciationDeserializer§blkh_de_deserializer: BlockHeaderDenunciationDeserializer§type_id_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl DenunciationDeserializer

    source

    pub const fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new DenunciationDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Denunciation> for DenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §endo_de_deserializer: EndorsementDenunciationDeserializer§blkh_de_deserializer: BlockHeaderDenunciationDeserializer§type_id_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl DenunciationDeserializer

    source

    pub const fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new DenunciationDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<Denunciation> for DenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Denunciation, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], Denunciation, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/denunciation/struct.DenunciationIndexDeserializer.html b/massa_models/denunciation/struct.DenunciationIndexDeserializer.html index 2cad68b0583..65338122415 100644 --- a/massa_models/denunciation/struct.DenunciationIndexDeserializer.html +++ b/massa_models/denunciation/struct.DenunciationIndexDeserializer.html @@ -1,13 +1,13 @@ DenunciationIndexDeserializer in massa_models::denunciation - Rust
    pub struct DenunciationIndexDeserializer {
    -    id_deserializer: U32VarIntDeserializer,
    +    id_deserializer: U32VarIntDeserializer,
         slot_deserializer: SlotDeserializer,
    -    index_deserializer: U32VarIntDeserializer,
    +    index_deserializer: U32VarIntDeserializer,
     }
    Expand description

    Deserializer for DenunciationIndex

    -

    Fields§

    §id_deserializer: U32VarIntDeserializer§slot_deserializer: SlotDeserializer§index_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl DenunciationIndexDeserializer

    source

    pub const fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new DenunciationIndexDeserializer

    -

    Trait Implementations§

    source§

    impl Clone for DenunciationIndexDeserializer

    source§

    fn clone(&self) -> DenunciationIndexDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<DenunciationIndex> for DenunciationIndexDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §id_deserializer: U32VarIntDeserializer§slot_deserializer: SlotDeserializer§index_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl DenunciationIndexDeserializer

    source

    pub const fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new DenunciationIndexDeserializer

    +

    Trait Implementations§

    source§

    impl Clone for DenunciationIndexDeserializer

    source§

    fn clone(&self) -> DenunciationIndexDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<DenunciationIndex> for DenunciationIndexDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DenunciationIndex, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], DenunciationIndex, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/denunciation/struct.DenunciationIndexSerializer.html b/massa_models/denunciation/struct.DenunciationIndexSerializer.html index 581f0d952ab..18f3e20771b 100644 --- a/massa_models/denunciation/struct.DenunciationIndexSerializer.html +++ b/massa_models/denunciation/struct.DenunciationIndexSerializer.html @@ -1,14 +1,14 @@ DenunciationIndexSerializer in massa_models::denunciation - Rust
    pub struct DenunciationIndexSerializer {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
         slot_serializer: SlotSerializer,
    -    index_serializer: U32VarIntSerializer,
    +    index_serializer: U32VarIntSerializer,
     }
    Expand description

    Serializer for DenunciationIndex

    -

    Fields§

    §u32_serializer: U32VarIntSerializer§slot_serializer: SlotSerializer§index_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl DenunciationIndexSerializer

    source

    pub const fn new() -> Self

    Creates a new DenunciationIndexSerializer

    -

    Trait Implementations§

    source§

    impl Clone for DenunciationIndexSerializer

    source§

    fn clone(&self) -> DenunciationIndexSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for DenunciationIndexSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<DenunciationIndex> for DenunciationIndexSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer§slot_serializer: SlotSerializer§index_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl DenunciationIndexSerializer

    source

    pub const fn new() -> Self

    Creates a new DenunciationIndexSerializer

    +

    Trait Implementations§

    source§

    impl Clone for DenunciationIndexSerializer

    source§

    fn clone(&self) -> DenunciationIndexSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for DenunciationIndexSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<DenunciationIndex> for DenunciationIndexSerializer

    source§

    fn serialize( &self, value: &DenunciationIndex, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/denunciation/struct.DenunciationSerializer.html b/massa_models/denunciation/struct.DenunciationSerializer.html index 1b1b404bfea..6af476fc053 100644 --- a/massa_models/denunciation/struct.DenunciationSerializer.html +++ b/massa_models/denunciation/struct.DenunciationSerializer.html @@ -1,14 +1,14 @@ DenunciationSerializer in massa_models::denunciation - Rust
    pub struct DenunciationSerializer {
         endo_de_serializer: EndorsementDenunciationSerializer,
         blkh_de_serializer: BlockHeaderDenunciationSerializer,
    -    type_id_serializer: U32VarIntSerializer,
    +    type_id_serializer: U32VarIntSerializer,
     }
    Expand description

    Serializer for Denunciation

    -

    Fields§

    §endo_de_serializer: EndorsementDenunciationSerializer§blkh_de_serializer: BlockHeaderDenunciationSerializer§type_id_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl DenunciationSerializer

    source

    pub const fn new() -> Self

    Creates a new BlockHeaderDenunciationSerializer

    -

    Trait Implementations§

    source§

    impl Default for DenunciationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Denunciation> for DenunciationSerializer

    Fields§

    §endo_de_serializer: EndorsementDenunciationSerializer§blkh_de_serializer: BlockHeaderDenunciationSerializer§type_id_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl DenunciationSerializer

    source

    pub const fn new() -> Self

    Creates a new BlockHeaderDenunciationSerializer

    +

    Trait Implementations§

    source§

    impl Default for DenunciationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Denunciation> for DenunciationSerializer

    source§

    fn serialize( &self, value: &Denunciation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/denunciation/struct.EndorsementDenunciation.html b/massa_models/denunciation/struct.EndorsementDenunciation.html index 06cef7327f1..fcbae26d456 100644 --- a/massa_models/denunciation/struct.EndorsementDenunciation.html +++ b/massa_models/denunciation/struct.EndorsementDenunciation.html @@ -13,18 +13,18 @@ index: &u32, content_hash: &Hash, ) -> Hash

    Rebuild full hash of SecureShareEndorsement from given arguments

    -
    source

    pub fn get_public_key(&self) -> &PublicKey

    source

    pub fn get_slot(&self) -> &Slot

    source

    pub fn get_index(&self) -> &u32

    source

    pub fn get_hash_1(&self) -> &Hash

    source

    pub fn get_hash_2(&self) -> &Hash

    source

    pub fn get_signature_1(&self) -> &Signature

    source

    pub fn get_signature_2(&self) -> &Signature

    Trait Implementations§

    source§

    impl Clone for EndorsementDenunciation

    source§

    fn clone(&self) -> EndorsementDenunciation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EndorsementDenunciation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for EndorsementDenunciation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<EndorsementDenunciation> for EndorsementDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source

    pub fn get_public_key(&self) -> &PublicKey

    source

    pub fn get_slot(&self) -> &Slot

    source

    pub fn get_index(&self) -> &u32

    source

    pub fn get_hash_1(&self) -> &Hash

    source

    pub fn get_hash_2(&self) -> &Hash

    source

    pub fn get_signature_1(&self) -> &Signature

    source

    pub fn get_signature_2(&self) -> &Signature

    Trait Implementations§

    source§

    impl Clone for EndorsementDenunciation

    source§

    fn clone(&self) -> EndorsementDenunciation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EndorsementDenunciation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for EndorsementDenunciation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<EndorsementDenunciation> for EndorsementDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], EndorsementDenunciation, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for EndorsementDenunciation

    source§

    fn eq(&self, other: &EndorsementDenunciation) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], EndorsementDenunciation, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl PartialEq for EndorsementDenunciation

    source§

    fn eq(&self, other: &EndorsementDenunciation) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for EndorsementDenunciation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<EndorsementDenunciation> for EndorsementDenunciationSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for EndorsementDenunciation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<EndorsementDenunciation> for EndorsementDenunciationSerializer

    source§

    fn serialize( &self, value: &EndorsementDenunciation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl StructuralPartialEq for EndorsementDenunciation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl StructuralPartialEq for EndorsementDenunciation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -122,5 +122,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/denunciation/struct.EndorsementDenunciationDeserializer.html b/massa_models/denunciation/struct.EndorsementDenunciationDeserializer.html index 7e073ccd067..b731837145a 100644 --- a/massa_models/denunciation/struct.EndorsementDenunciationDeserializer.html +++ b/massa_models/denunciation/struct.EndorsementDenunciationDeserializer.html @@ -1,15 +1,15 @@ EndorsementDenunciationDeserializer in massa_models::denunciation - Rust
    struct EndorsementDenunciationDeserializer {
         slot_deserializer: SlotDeserializer,
    -    index_deserializer: U32VarIntDeserializer,
    +    index_deserializer: U32VarIntDeserializer,
         hash_deserializer: HashDeserializer,
         pubkey_deserializer: PublicKeyDeserializer,
         signature_deserializer: SignatureDeserializer,
     }
    Expand description

    Deserializer for EndorsementDenunciation

    -

    Fields§

    §slot_deserializer: SlotDeserializer§index_deserializer: U32VarIntDeserializer§hash_deserializer: HashDeserializer§pubkey_deserializer: PublicKeyDeserializer§signature_deserializer: SignatureDeserializer

    Implementations§

    source§

    impl EndorsementDenunciationDeserializer

    source

    const fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new EndorsementDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<EndorsementDenunciation> for EndorsementDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §slot_deserializer: SlotDeserializer§index_deserializer: U32VarIntDeserializer§hash_deserializer: HashDeserializer§pubkey_deserializer: PublicKeyDeserializer§signature_deserializer: SignatureDeserializer

    Implementations§

    source§

    impl EndorsementDenunciationDeserializer

    source

    const fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new EndorsementDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<EndorsementDenunciation> for EndorsementDenunciationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], EndorsementDenunciation, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], EndorsementDenunciation, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/denunciation/struct.EndorsementDenunciationSerializer.html b/massa_models/denunciation/struct.EndorsementDenunciationSerializer.html index 42148a5c0c9..78bd942828d 100644 --- a/massa_models/denunciation/struct.EndorsementDenunciationSerializer.html +++ b/massa_models/denunciation/struct.EndorsementDenunciationSerializer.html @@ -1,14 +1,14 @@ EndorsementDenunciationSerializer in massa_models::denunciation - Rust
    struct EndorsementDenunciationSerializer {
         slot_serializer: SlotSerializer,
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
         hash_serializer: HashSerializer,
     }
    Expand description

    Serializer for EndorsementDenunciation

    -

    Fields§

    §slot_serializer: SlotSerializer§u32_serializer: U32VarIntSerializer§hash_serializer: HashSerializer

    Implementations§

    source§

    impl EndorsementDenunciationSerializer

    source

    const fn new() -> Self

    Creates a new EndorsementDenunciationSerializer

    -

    Trait Implementations§

    source§

    impl Default for EndorsementDenunciationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<EndorsementDenunciation> for EndorsementDenunciationSerializer

    Fields§

    §slot_serializer: SlotSerializer§u32_serializer: U32VarIntSerializer§hash_serializer: HashSerializer

    Implementations§

    source§

    impl EndorsementDenunciationSerializer

    source

    const fn new() -> Self

    Creates a new EndorsementDenunciationSerializer

    +

    Trait Implementations§

    source§

    impl Default for EndorsementDenunciationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<EndorsementDenunciation> for EndorsementDenunciationSerializer

    source§

    fn serialize( &self, value: &EndorsementDenunciation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/endorsement/enum.EndorsementId.html b/massa_models/endorsement/enum.EndorsementId.html index 1814f8faa5e..895f43f413c 100644 --- a/massa_models/endorsement/enum.EndorsementId.html +++ b/massa_models/endorsement/enum.EndorsementId.html @@ -1,13 +1,13 @@ EndorsementId in massa_models::endorsement - Rust

    Enum massa_models::endorsement::EndorsementId

    source ·
    pub enum EndorsementId {
         EndorsementIdV0(EndorsementIdV0),
     }
    Expand description

    endorsement id

    -

    Variants§

    §

    EndorsementIdV0(EndorsementIdV0)

    Trait Implementations§

    source§

    impl Clone for EndorsementId

    source§

    fn clone(&self) -> EndorsementId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EndorsementId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for EndorsementId
    where +

    Variants§

    §

    EndorsementIdV0(EndorsementIdV0)

    Trait Implementations§

    source§

    impl Clone for EndorsementId

    source§

    fn clone(&self) -> EndorsementId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EndorsementId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for EndorsementId
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<EndorsementId> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<EndorsementId> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], EndorsementId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for EndorsementId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for EndorsementId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +) -> IResult<&'a [u8], EndorsementId, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for EndorsementId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for EndorsementId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    let ser = endo_id.to_string();
     let res_endo_id = EndorsementId::from_str(&ser).unwrap();
     assert_eq!(endo_id, res_endo_id);
    @@ -20,9 +20,9 @@ by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for EndorsementId

    source§

    fn partial_cmp(&self, other: &EndorsementId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for EndorsementId
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for EndorsementId

    source§

    impl Eq for EndorsementId

    source§

    impl PreHashed for EndorsementId

    source§

    impl StructuralPartialEq for EndorsementId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +operator. Read more

    source§

    impl Serialize for EndorsementId
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for EndorsementId

    source§

    impl Eq for EndorsementId

    source§

    impl PreHashed for EndorsementId

    source§

    impl StructuralPartialEq for EndorsementId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -133,7 +133,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/endorsement/struct.Endorsement.html b/massa_models/endorsement/struct.Endorsement.html index 0792dca6005..054e3e34ea4 100644 --- a/massa_models/endorsement/struct.Endorsement.html +++ b/massa_models/endorsement/struct.Endorsement.html @@ -7,11 +7,11 @@ §index: u32

    Endorsement index inside the including block

    §endorsed_block: BlockId

    Hash of endorsed block. This is the parent in thread self.slot.thread of the block in which the endorsement is included

    -

    Trait Implementations§

    source§

    impl Clone for Endorsement

    source§

    fn clone(&self) -> Endorsement

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Endorsement

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Endorsement

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Endorsement> for EndorsementDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Endorsement

    source§

    fn clone(&self) -> Endorsement

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Endorsement

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Endorsement

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Endorsement> for EndorsementDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Endorsement, E>

    §Example:
    +) -> IResult<&'a [u8], Endorsement, E>
    §Example:
    use massa_models::{slot::Slot, block_id::BlockId, endorsement::{Endorsement, EndorsementSerializer, EndorsementDeserializer}};
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
     use massa_hash::Hash;
    @@ -28,10 +28,10 @@
     assert_eq!(deserialized.slot, endorsement.slot);
     assert_eq!(deserialized.index, endorsement.index);
     assert_eq!(deserialized.endorsed_block, endorsement.endorsed_block);
    -
    source§

    impl Deserializer<Endorsement> for EndorsementDeserializerLW

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Deserializer<Endorsement> for EndorsementDeserializerLW

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Endorsement, E>

    §Example:
    +) -> IResult<&'a [u8], Endorsement, E>
    §Example:
    use massa_models::{slot::Slot, block_id::BlockId, endorsement::{Endorsement, EndorsementSerializerLW, EndorsementDeserializerLW}};
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
     use massa_hash::Hash;
    @@ -64,7 +64,7 @@
         public_key: &PublicKey,
         content_hash: &Hash,
         signature: &Signature,
    -) -> Result<(), ModelsError>
    verify signature
    source§

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( +) -> Result<(), ModelsError>

    verify signature
    source§

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( self, content_serializer: Ser, keypair: &KeyPair, @@ -75,24 +75,24 @@ content_serialized: &[u8], content_creator_pub_key: &PublicKey, _chain_id: u64, -) -> Hash

    Compute hash
    source§

    fn serialize( +) -> Hash

    Compute hash
    source§

    fn serialize( signature: &Signature, creator_public_key: &PublicKey, serialized_content: &[u8], buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( - content_serializer: Option<&dyn Serializer<Self>>, +) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( + content_serializer: Option<&dyn Serializer<Self>>, signature_deserializer: &SignatureDeserializer, creator_public_key_deserializer: &PublicKeyDeserializer, content_deserializer: &Deser, buffer: &'a [u8], chain_id: u64, -) -> IResult<&'a [u8], SecureShare<Self, ID>, E>

    Deserialize the secured structure
    source§

    impl Serialize for Endorsement

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Endorsement> for EndorsementSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], SecureShare<Self, ID>, E>

    Deserialize the secured structure
    source§

    impl Serialize for Endorsement

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Endorsement> for EndorsementSerializer

    source§

    fn serialize( &self, value: &Endorsement, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{slot::Slot, block_id::BlockId, endorsement::{Endorsement, EndorsementSerializer}};
     use massa_serialization::Serializer;
     use massa_hash::Hash;
    @@ -104,11 +104,11 @@
     };
     let mut buffer = Vec::new();
     EndorsementSerializer::new().serialize(&endorsement, &mut buffer).unwrap();
    -
    source§

    impl Serializer<Endorsement> for EndorsementSerializerLW

    source§

    impl Serializer<Endorsement> for EndorsementSerializerLW

    source§

    fn serialize( &self, value: &Endorsement, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{slot::Slot, block_id::BlockId, endorsement::{Endorsement, EndorsementSerializerLW}};
     use massa_serialization::Serializer;
     use massa_hash::Hash;
    @@ -225,5 +225,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/endorsement/struct.EndorsementDeserializer.html b/massa_models/endorsement/struct.EndorsementDeserializer.html index aaabae8f25a..86d13fce0ae 100644 --- a/massa_models/endorsement/struct.EndorsementDeserializer.html +++ b/massa_models/endorsement/struct.EndorsementDeserializer.html @@ -1,10 +1,10 @@ EndorsementDeserializer in massa_models::endorsement - Rust
    pub struct EndorsementDeserializer {
         slot_deserializer: SlotDeserializer,
    -    index_deserializer: U32VarIntDeserializer,
    +    index_deserializer: U32VarIntDeserializer,
         block_id_deserializer: BlockIdDeserializer,
     }
    Expand description

    Deserializer for Endorsement

    -

    Fields§

    §slot_deserializer: SlotDeserializer§index_deserializer: U32VarIntDeserializer§block_id_deserializer: BlockIdDeserializer

    Implementations§

    source§

    impl EndorsementDeserializer

    source

    pub fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new EndorsementDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Endorsement> for EndorsementDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §slot_deserializer: SlotDeserializer§index_deserializer: U32VarIntDeserializer§block_id_deserializer: BlockIdDeserializer

    Implementations§

    source§

    impl EndorsementDeserializer

    source

    pub fn new(thread_count: u8, endorsement_count: u32) -> Self

    Creates a new EndorsementDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<Endorsement> for EndorsementDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Endorsement, E>

    §Example:
    diff --git a/massa_models/endorsement/struct.EndorsementDeserializerLW.html b/massa_models/endorsement/struct.EndorsementDeserializerLW.html index c30c738ab9c..16dcd3b1fee 100644 --- a/massa_models/endorsement/struct.EndorsementDeserializerLW.html +++ b/massa_models/endorsement/struct.EndorsementDeserializerLW.html @@ -1,14 +1,14 @@ EndorsementDeserializerLW in massa_models::endorsement - Rust
    pub struct EndorsementDeserializerLW {
    -    index_deserializer: U32VarIntDeserializer,
    +    index_deserializer: U32VarIntDeserializer,
         slot: Slot,
         endorsed_block: BlockId,
     }
    Expand description

    Lightweight Deserializer for Endorsement

    -

    Fields§

    §index_deserializer: U32VarIntDeserializer§slot: Slot§endorsed_block: BlockId

    Implementations§

    source§

    impl EndorsementDeserializerLW

    source

    pub const fn new( +

    Fields§

    §index_deserializer: U32VarIntDeserializer§slot: Slot§endorsed_block: BlockId

    Implementations§

    source§

    impl EndorsementDeserializerLW

    source

    pub const fn new( endorsement_count: u32, slot: Slot, endorsed_block: BlockId, ) -> Self

    Creates a new EndorsementDeserializerLW

    -

    Trait Implementations§

    source§

    impl Deserializer<Endorsement> for EndorsementDeserializerLW

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<Endorsement> for EndorsementDeserializerLW

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Endorsement, E>

    §Example:
    diff --git a/massa_models/endorsement/struct.EndorsementIdDeserializer.html b/massa_models/endorsement/struct.EndorsementIdDeserializer.html index ec64bab9d45..b0132e3ab18 100644 --- a/massa_models/endorsement/struct.EndorsementIdDeserializer.html +++ b/massa_models/endorsement/struct.EndorsementIdDeserializer.html @@ -1,13 +1,13 @@ EndorsementIdDeserializer in massa_models::endorsement - Rust
    struct EndorsementIdDeserializer {
    -    version_deserializer: U64VarIntDeserializer,
    +    version_deserializer: U64VarIntDeserializer,
         hash_deserializer: HashDeserializer,
    -}

    Fields§

    §version_deserializer: U64VarIntDeserializer§hash_deserializer: HashDeserializer

    Implementations§

    Trait Implementations§

    source§

    impl Deserializer<EndorsementId> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +}

    Fields§

    §version_deserializer: U64VarIntDeserializer§hash_deserializer: HashDeserializer

    Implementations§

    Trait Implementations§

    source§

    impl Deserializer<EndorsementId> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], EndorsementId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<EndorsementIdV0> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], EndorsementId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<EndorsementIdV0> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], EndorsementIdV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], EndorsementIdV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/endorsement/struct.EndorsementIdV0.html b/massa_models/endorsement/struct.EndorsementIdV0.html index 202e005efd3..f66c2066411 100644 --- a/massa_models/endorsement/struct.EndorsementIdV0.html +++ b/massa_models/endorsement/struct.EndorsementIdV0.html @@ -1,11 +1,11 @@ EndorsementIdV0 in massa_models::endorsement - Rust

    Struct massa_models::endorsement::EndorsementIdV0

    source ·
    pub struct EndorsementIdV0(Hash);
    Expand description

    endorsement id

    -

    Tuple Fields§

    §0: Hash

    Implementations§

    Trait Implementations§

    source§

    impl Clone for EndorsementIdV0

    source§

    fn clone(&self) -> EndorsementIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<'de> Deserialize<'de> for EndorsementIdV0
    where +

    Tuple Fields§

    §0: Hash

    Implementations§

    Trait Implementations§

    source§

    impl Clone for EndorsementIdV0

    source§

    fn clone(&self) -> EndorsementIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<'de> Deserialize<'de> for EndorsementIdV0
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<EndorsementIdV0> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<EndorsementIdV0> for EndorsementIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], EndorsementIdV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for EndorsementIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for EndorsementIdV0

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for EndorsementIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], EndorsementIdV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for EndorsementIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for EndorsementIdV0

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for EndorsementIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for EndorsementIdV0

    source§

    fn cmp(&self, other: &EndorsementIdV0) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -14,9 +14,9 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for EndorsementIdV0

    source§

    fn partial_cmp(&self, other: &EndorsementIdV0) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for EndorsementIdV0
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Versioned for EndorsementIdV0

    source§

    impl Copy for EndorsementIdV0

    source§

    impl Eq for EndorsementIdV0

    source§

    impl StructuralPartialEq for EndorsementIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +operator. Read more

    source§

    impl Serialize for EndorsementIdV0
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Versioned for EndorsementIdV0

    source§

    impl Copy for EndorsementIdV0

    source§

    impl Eq for EndorsementIdV0

    source§

    impl StructuralPartialEq for EndorsementIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -127,6 +127,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    \ No newline at end of file diff --git a/massa_models/endorsement/struct.EndorsementSerializer.html b/massa_models/endorsement/struct.EndorsementSerializer.html index 4fddd1acc9d..7a058cc721a 100644 --- a/massa_models/endorsement/struct.EndorsementSerializer.html +++ b/massa_models/endorsement/struct.EndorsementSerializer.html @@ -1,14 +1,14 @@ EndorsementSerializer in massa_models::endorsement - Rust

    Struct massa_models::endorsement::EndorsementSerializer

    source ·
    pub struct EndorsementSerializer {
         slot_serializer: SlotSerializer,
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
         block_id_serializer: BlockIdSerializer,
     }
    Expand description

    Serializer for Endorsement

    -

    Fields§

    §slot_serializer: SlotSerializer§u32_serializer: U32VarIntSerializer§block_id_serializer: BlockIdSerializer

    Implementations§

    source§

    impl EndorsementSerializer

    source

    pub fn new() -> Self

    Creates a new EndorsementSerializer

    -

    Trait Implementations§

    source§

    impl Clone for EndorsementSerializer

    source§

    fn clone(&self) -> EndorsementSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for EndorsementSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Endorsement> for EndorsementSerializer

    Fields§

    §slot_serializer: SlotSerializer§u32_serializer: U32VarIntSerializer§block_id_serializer: BlockIdSerializer

    Implementations§

    source§

    impl EndorsementSerializer

    source

    pub fn new() -> Self

    Creates a new EndorsementSerializer

    +

    Trait Implementations§

    source§

    impl Clone for EndorsementSerializer

    source§

    fn clone(&self) -> EndorsementSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for EndorsementSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Endorsement> for EndorsementSerializer

    source§

    fn serialize( &self, value: &Endorsement, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{slot::Slot, block_id::BlockId, endorsement::{Endorsement, EndorsementSerializer}};
     use massa_serialization::Serializer;
     use massa_hash::Hash;
    diff --git a/massa_models/endorsement/struct.EndorsementSerializerLW.html b/massa_models/endorsement/struct.EndorsementSerializerLW.html
    index 362f47ba00f..378ca6b5dfa 100644
    --- a/massa_models/endorsement/struct.EndorsementSerializerLW.html
    +++ b/massa_models/endorsement/struct.EndorsementSerializerLW.html
    @@ -1,13 +1,13 @@
     EndorsementSerializerLW in massa_models::endorsement - Rust
    pub struct EndorsementSerializerLW {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
     }
    Expand description

    Lightweight Serializer for Endorsement When included in a BlockHeader, we want to serialize only the index (optimization)

    -

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl EndorsementSerializerLW

    source

    pub fn new() -> Self

    Creates a new EndorsementSerializerLW

    -

    Trait Implementations§

    source§

    impl Default for EndorsementSerializerLW

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Endorsement> for EndorsementSerializerLW

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl EndorsementSerializerLW

    source

    pub fn new() -> Self

    Creates a new EndorsementSerializerLW

    +

    Trait Implementations§

    source§

    impl Default for EndorsementSerializerLW

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Endorsement> for EndorsementSerializerLW

    source§

    fn serialize( &self, value: &Endorsement, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{slot::Slot, block_id::BlockId, endorsement::{Endorsement, EndorsementSerializerLW}};
     use massa_serialization::Serializer;
     use massa_hash::Hash;
    diff --git a/massa_models/error/enum.ModelsError.html b/massa_models/error/enum.ModelsError.html
    index e25e9d8169c..f1bcb5d5021 100644
    --- a/massa_models/error/enum.ModelsError.html
    +++ b/massa_models/error/enum.ModelsError.html
    @@ -1,7 +1,7 @@
     ModelsError in massa_models::error - Rust

    Enum massa_models::error::ModelsError

    source ·
    #[non_exhaustive]
    pub enum ModelsError {
    Show 27 variants HashError, SerializeError(String), - SerializationError(SerializeError), + SerializationError(SerializeError), DeserializeError(String), BufferError(String), MassaHashError(MassaHashError), @@ -29,7 +29,7 @@
    }
    Expand description

    models error

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    HashError

    hashing error

    §

    SerializeError(String)

    Serialization error: {0}

    -
    §

    SerializationError(SerializeError)

    Serialization error: {0}

    +
    §

    SerializationError(SerializeError)

    Serialization error: {0}

    §

    DeserializeError(String)

    Deserialization error: {0}

    §

    BufferError(String)

    buffer error: {0}

    §

    MassaHashError(MassaHashError)

    MassaHash error: {0}

    @@ -54,7 +54,7 @@
    §

    OutdatedBootstrapCursor

    Outdated bootstrap cursor

    §

    ErrorRaised(String)

    Error raised {0}

    §

    DeferredCallIdParseError

    deferred call id parsing error

    -

    Trait Implementations§

    source§

    impl Clone for ModelsError

    source§

    fn clone(&self) -> ModelsError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ModelsError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ModelsError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ModelsError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<&'static str> for ModelsError

    source§

    fn from(err: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<Err<Error<&[u8]>>> for ModelsError

    source§

    fn from(err: Err<Error<&[u8]>>) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for ModelsError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for ModelsError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for ModelsError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ModelsError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ModelsError

    source§

    fn clone(&self) -> ModelsError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ModelsError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ModelsError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ModelsError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<&'static str> for ModelsError

    source§

    fn from(err: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<Err<Error<&[u8]>>> for ModelsError

    source§

    fn from(err: Err<Error<&[u8]>>) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for ModelsError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for ModelsError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SerializeError> for ModelsError

    source§

    fn from(source: SerializeError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ModelsError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/execution/struct.EventFilter.html b/massa_models/execution/struct.EventFilter.html index 6b9f43561b9..71767049d30 100644 --- a/massa_models/execution/struct.EventFilter.html +++ b/massa_models/execution/struct.EventFilter.html @@ -20,9 +20,9 @@

    Some(true) means events coming from a failed sc execution Some(false) means events coming from a succeeded sc execution None means both

    -

    Trait Implementations§

    source§

    impl Clone for EventFilter

    source§

    fn clone(&self) -> EventFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventFilter

    source§

    fn default() -> EventFilter

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for EventFilter

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for EventFilter

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for EventFilter

    source§

    fn clone(&self) -> EventFilter

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventFilter

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for EventFilter

    source§

    fn default() -> EventFilter

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for EventFilter

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for EventFilter

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -120,5 +120,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/ledger/struct.LedgerChange.html b/massa_models/ledger/struct.LedgerChange.html index 1ae3b7a2522..4c55b6d02f3 100644 --- a/massa_models/ledger/struct.LedgerChange.html +++ b/massa_models/ledger/struct.LedgerChange.html @@ -6,11 +6,11 @@ §balance_increment: bool

    whether to increment or decrements balance of delta

    Implementations§

    source§

    impl LedgerChange

    source

    pub fn chain(&mut self, change: &LedgerChange) -> Result<(), ModelsError>

    Applies another ledger change on top of self

    source

    pub fn is_nil(&self) -> bool

    true if the change is 0

    -

    Trait Implementations§

    source§

    impl Clone for LedgerChange

    source§

    fn clone(&self) -> LedgerChange

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChange

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChange

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChange

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChange> for LedgerChangeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for LedgerChange

    source§

    fn clone(&self) -> LedgerChange

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChange

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChange

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChange

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChange> for LedgerChangeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], LedgerChange, E>

    §Example
    +) -> IResult<&'a [u8], LedgerChange, E>
    §Example
    use massa_models::{address::Address, amount::Amount};
     use std::str::FromStr;
     use massa_models::ledger::{LedgerChange, LedgerChangeDeserializer, LedgerChangeSerializer};
    @@ -25,12 +25,12 @@
     assert_eq!(rest.len(), 0);
     assert_eq!(ledger_change.balance_delta, serialized.balance_delta);
     assert_eq!(ledger_change.balance_increment, serialized.balance_increment);
    -
    source§

    impl Serialize for LedgerChange

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChange> for LedgerChangeSerializer

    source§

    impl Serialize for LedgerChange

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChange> for LedgerChangeSerializer

    source§

    fn serialize( &self, value: &LedgerChange, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_models::{address::Address, amount::Amount};
     use std::str::FromStr;
     use massa_models::ledger::{LedgerChange, LedgerChangeSerializer};
    @@ -139,5 +139,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/ledger/struct.LedgerChangeDeserializer.html b/massa_models/ledger/struct.LedgerChangeDeserializer.html index 5371fbb5f46..cd1bee7c7e5 100644 --- a/massa_models/ledger/struct.LedgerChangeDeserializer.html +++ b/massa_models/ledger/struct.LedgerChangeDeserializer.html @@ -2,7 +2,7 @@ amount_deserializer: AmountDeserializer, }
    Expand description

    Basic deserializer for LedgerChange

    Fields§

    §amount_deserializer: AmountDeserializer

    Implementations§

    source§

    impl LedgerChangeDeserializer

    source

    pub fn new() -> Self

    Creates a LedgerChangeDeserializer

    -

    Trait Implementations§

    source§

    impl Default for LedgerChangeDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<LedgerChange> for LedgerChangeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Default for LedgerChangeDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<LedgerChange> for LedgerChangeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerChange, E>

    §Example
    diff --git a/massa_models/ledger/struct.LedgerChangeSerializer.html b/massa_models/ledger/struct.LedgerChangeSerializer.html index 61252276d7a..8566c67973f 100644 --- a/massa_models/ledger/struct.LedgerChangeSerializer.html +++ b/massa_models/ledger/struct.LedgerChangeSerializer.html @@ -2,11 +2,11 @@ amount_serializer: AmountSerializer, }
    Expand description

    Basic serializer for LedgerChange

    Fields§

    §amount_serializer: AmountSerializer

    Implementations§

    source§

    impl LedgerChangeSerializer

    source

    pub fn new() -> Self

    Creates a LedgerChangeSerializer

    -

    Trait Implementations§

    Trait Implementations§

    source§

    impl Default for LedgerChangeSerializer

    source§

    fn default() -> LedgerChangeSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<LedgerChange> for LedgerChangeSerializer

    source§

    fn serialize( &self, value: &LedgerChange, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example
    +) -> Result<(), SerializeError>
    §Example
    use massa_models::{address::Address, amount::Amount};
     use std::str::FromStr;
     use massa_models::ledger::{LedgerChange, LedgerChangeSerializer};
    diff --git a/massa_models/ledger/struct.LedgerChanges.html b/massa_models/ledger/struct.LedgerChanges.html
    index d2d71a54bb8..d3accd0906d 100644
    --- a/massa_models/ledger/struct.LedgerChanges.html
    +++ b/massa_models/ledger/struct.LedgerChanges.html
    @@ -5,8 +5,8 @@
     
    source

    pub fn sync_from(&mut self, addrs: &PreHashSet<Address>, other: LedgerChanges)

    merge another ledger changes into self, overwriting existing data addresses that are in not other are removed from self

    source

    pub fn clone_subset(&self, addrs: &PreHashSet<Address>) -> Self

    clone subset

    -

    Trait Implementations§

    source§

    impl Clone for LedgerChanges

    source§

    fn clone(&self) -> LedgerChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChanges

    source§

    fn default() -> LedgerChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for LedgerChanges

    source§

    fn clone(&self) -> LedgerChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerChanges

    source§

    fn default() -> LedgerChanges

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerChanges, E>

    §Example
    @@ -26,12 +26,12 @@ data_serialized = Vec::new(); } assert_eq!(ledger_changes.0.len(), res.0.len());
    -
    source§

    impl Serialize for LedgerChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    impl Serialize for LedgerChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    fn serialize( &self, value: &LedgerChanges, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -129,5 +129,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/ledger/struct.LedgerChangesDeserializer.html b/massa_models/ledger/struct.LedgerChangesDeserializer.html index d97544b423d..dc10ec24754 100644 --- a/massa_models/ledger/struct.LedgerChangesDeserializer.html +++ b/massa_models/ledger/struct.LedgerChangesDeserializer.html @@ -1,10 +1,10 @@ LedgerChangesDeserializer in massa_models::ledger - Rust

    Struct massa_models::ledger::LedgerChangesDeserializer

    source ·
    pub struct LedgerChangesDeserializer {
    -    length_deserializer: U64VarIntDeserializer,
    +    length_deserializer: U64VarIntDeserializer,
         address_deserializer: AddressDeserializer,
         ledger_change_deserializer: LedgerChangeDeserializer,
     }
    Expand description

    Basic deserializer for LedgerChanges

    -

    Fields§

    §length_deserializer: U64VarIntDeserializer§address_deserializer: AddressDeserializer§ledger_change_deserializer: LedgerChangeDeserializer

    Implementations§

    source§

    impl LedgerChangesDeserializer

    source

    pub fn new(max_ledger_changes_count: u64) -> Self

    Creates a LedgerChangesDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §length_deserializer: U64VarIntDeserializer§address_deserializer: AddressDeserializer§ledger_change_deserializer: LedgerChangeDeserializer

    Implementations§

    source§

    impl LedgerChangesDeserializer

    source

    pub fn new(max_ledger_changes_count: u64) -> Self

    Creates a LedgerChangesDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<LedgerChanges> for LedgerChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerChanges, E>

    §Example
    diff --git a/massa_models/ledger/struct.LedgerChangesSerializer.html b/massa_models/ledger/struct.LedgerChangesSerializer.html index ad50591aeb3..eda4899b40b 100644 --- a/massa_models/ledger/struct.LedgerChangesSerializer.html +++ b/massa_models/ledger/struct.LedgerChangesSerializer.html @@ -1,14 +1,14 @@ LedgerChangesSerializer in massa_models::ledger - Rust

    Struct massa_models::ledger::LedgerChangesSerializer

    source ·
    pub struct LedgerChangesSerializer {
    -    length_serializer: U64VarIntSerializer,
    +    length_serializer: U64VarIntSerializer,
         address_serializer: AddressSerializer,
         ledger_change_serializer: LedgerChangeSerializer,
     }
    Expand description

    Basic serializer for LedgerChanges

    -

    Fields§

    §length_serializer: U64VarIntSerializer§address_serializer: AddressSerializer§ledger_change_serializer: LedgerChangeSerializer

    Implementations§

    source§

    impl LedgerChangesSerializer

    source

    pub fn new() -> Self

    Creates a LedgerChangesSerializer

    -

    Trait Implementations§

    source§

    impl Default for LedgerChangesSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    Fields§

    §length_serializer: U64VarIntSerializer§address_serializer: AddressSerializer§ledger_change_serializer: LedgerChangeSerializer

    Implementations§

    source§

    impl LedgerChangesSerializer

    source

    pub fn new() -> Self

    Creates a LedgerChangesSerializer

    +

    Trait Implementations§

    source§

    impl Default for LedgerChangesSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<LedgerChanges> for LedgerChangesSerializer

    source§

    fn serialize( &self, value: &LedgerChanges, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_models/ledger/struct.LedgerData.html b/massa_models/ledger/struct.LedgerData.html index a0ac39bfef2..b2f5b3d4658 100644 --- a/massa_models/ledger/struct.LedgerData.html +++ b/massa_models/ledger/struct.LedgerData.html @@ -6,11 +6,11 @@

    source

    pub fn apply_change(&mut self, change: &LedgerChange) -> Result<()>

    apply a LedgerChange for an entry Can fail in overflow or underflow occur

    source

    pub fn is_nil(&self) -> bool

    returns true if the balance is zero

    -

    Trait Implementations§

    source§

    impl Clone for LedgerData

    source§

    fn clone(&self) -> LedgerData

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerData

    source§

    fn default() -> LedgerData

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerData

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerData> for LedgerDataDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for LedgerData

    source§

    fn clone(&self) -> LedgerData

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for LedgerData

    source§

    fn default() -> LedgerData

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerData

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<LedgerData> for LedgerDataDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], LedgerData, E>

    §Example:
    +) -> IResult<&'a [u8], LedgerData, E>
    §Example:
    use massa_models::amount::Amount;
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
     use std::str::FromStr;
    @@ -24,12 +24,12 @@
     let (rest, ledger_data_deserialized) = LedgerDataDeserializer::new().deserialize::<DeserializeError>(&buffer).unwrap();
     assert_eq!(rest.len(), 0);
     assert_eq!(ledger_data.balance, ledger_data_deserialized.balance);
    -
    source§

    impl Serialize for LedgerData

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerData> for LedgerDataSerializer

    source§

    impl Serialize for LedgerData

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<LedgerData> for LedgerDataSerializer

    source§

    fn serialize( &self, value: &LedgerData, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::amount::Amount;
     use massa_serialization::Serializer;
     use std::str::FromStr;
    @@ -139,5 +139,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/ledger/struct.LedgerDataDeserializer.html b/massa_models/ledger/struct.LedgerDataDeserializer.html index b1dcb46666a..11cc9c31f4c 100644 --- a/massa_models/ledger/struct.LedgerDataDeserializer.html +++ b/massa_models/ledger/struct.LedgerDataDeserializer.html @@ -2,7 +2,7 @@ amount_deserializer: AmountDeserializer, }
    Expand description

    Basic deserializer for LedgerData

    Fields§

    §amount_deserializer: AmountDeserializer

    Implementations§

    source§

    impl LedgerDataDeserializer

    source

    pub fn new() -> Self

    Creates a LedgerDataDeserializer

    -

    Trait Implementations§

    source§

    impl Default for LedgerDataDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<LedgerData> for LedgerDataDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Default for LedgerDataDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<LedgerData> for LedgerDataDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], LedgerData, E>

    §Example:
    diff --git a/massa_models/ledger/struct.LedgerDataSerializer.html b/massa_models/ledger/struct.LedgerDataSerializer.html index 26ac615ae03..60e54da99ad 100644 --- a/massa_models/ledger/struct.LedgerDataSerializer.html +++ b/massa_models/ledger/struct.LedgerDataSerializer.html @@ -2,11 +2,11 @@ amount_serializer: AmountSerializer, }
    Expand description

    Basic serializer for LedgerData

    Fields§

    §amount_serializer: AmountSerializer

    Implementations§

    source§

    impl LedgerDataSerializer

    source

    pub fn new() -> Self

    Creates a LedgerDataSerializer

    -

    Trait Implementations§

    source§

    impl Default for LedgerDataSerializer

    source§

    fn default() -> LedgerDataSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<LedgerData> for LedgerDataSerializer

    Trait Implementations§

    source§

    impl Default for LedgerDataSerializer

    source§

    fn default() -> LedgerDataSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<LedgerData> for LedgerDataSerializer

    source§

    fn serialize( &self, value: &LedgerData, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::amount::Amount;
     use massa_serialization::Serializer;
     use std::str::FromStr;
    diff --git a/massa_models/node/struct.NodeId.html b/massa_models/node/struct.NodeId.html
    index 2e41350775b..8a86f4570a4 100644
    --- a/massa_models/node/struct.NodeId.html
    +++ b/massa_models/node/struct.NodeId.html
    @@ -1,10 +1,10 @@
     NodeId in massa_models::node - Rust

    Struct massa_models::node::NodeId

    source ·
    pub struct NodeId(PublicKey);
    Expand description

    NodeId wraps a public key to uniquely identify a node.

    Tuple Fields§

    §0: PublicKey

    Implementations§

    source§

    impl NodeId

    source

    pub fn new(public_key: PublicKey) -> Self

    Create a new NodeId from a public key.

    source

    pub fn get_public_key(&self) -> PublicKey

    Get the public key of the NodeId.

    -

    Trait Implementations§

    source§

    impl Clone for NodeId

    source§

    fn clone(&self) -> NodeId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NodeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for NodeId
    where +

    Trait Implementations§

    source§

    impl Clone for NodeId

    source§

    fn clone(&self) -> NodeId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NodeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for NodeId
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for NodeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for NodeId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    + <Self as FromStr>::Err: Display,
    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for NodeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for NodeId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    let ser = node_id.to_string();
     let res_node_id = NodeId::from_str(&ser).unwrap();
     let from_raw = NodeId::from_str("N12UbyLJDS7zimGWf3LTHe8hYY67RdLke1iDRZqJbQQLHQSKPW8j").unwrap();
    @@ -18,9 +18,9 @@
     by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for NodeId

    source§

    fn partial_cmp(&self, other: &NodeId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for NodeId
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for NodeId

    source§

    impl Eq for NodeId

    source§

    impl StructuralPartialEq for NodeId

    Auto Trait Implementations§

    §

    impl Freeze for NodeId

    §

    impl RefUnwindSafe for NodeId

    §

    impl Send for NodeId

    §

    impl Sync for NodeId

    §

    impl Unpin for NodeId

    §

    impl UnwindSafe for NodeId

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +operator. Read more

    source§

    impl Serialize for NodeId
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for NodeId

    source§

    impl Eq for NodeId

    source§

    impl StructuralPartialEq for NodeId

    Auto Trait Implementations§

    §

    impl Freeze for NodeId

    §

    impl RefUnwindSafe for NodeId

    §

    impl Send for NodeId

    §

    impl Sync for NodeId

    §

    impl Unpin for NodeId

    §

    impl UnwindSafe for NodeId

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -131,7 +131,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/operation/enum.OperationId.html b/massa_models/operation/enum.OperationId.html index 19ccbfcb84f..9701114a40c 100644 --- a/massa_models/operation/enum.OperationId.html +++ b/massa_models/operation/enum.OperationId.html @@ -4,13 +4,13 @@

    Variants§

    §

    OperationIdV0(OperationIdV0)

    Implementations§

    source§

    impl OperationId

    source

    pub fn into_prefix(self) -> OperationPrefixId

    convert the [OperationId] into a [OperationPrefixId]

    source

    pub fn prefix(&self) -> OperationPrefixId

    get a prefix from the [OperationId] by copying it

    source

    pub fn get_version(&self) -> u64

    Get the version of the operation by looking at the first bytes of the id

    -

    Trait Implementations§

    source§

    impl Clone for OperationId

    source§

    fn clone(&self) -> OperationId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationId
    where +

    Trait Implementations§

    source§

    impl Clone for OperationId

    source§

    fn clone(&self) -> OperationId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationId
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationId> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationId> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], OperationId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for OperationId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for OperationId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +) -> IResult<&'a [u8], OperationId, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for OperationId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for OperationId

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    let ser = op_id.to_string();
     let res_op_id = OperationId::from_str(&ser).unwrap();
     assert_eq!(op_id, res_op_id);
    @@ -23,13 +23,13 @@ by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for OperationId

    source§

    fn partial_cmp(&self, other: &OperationId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for OperationId
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<OperationId> for OperationIdSerializer

    source§

    impl Serialize for OperationId
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<OperationId> for OperationIdSerializer

    source§

    fn serialize( &self, value: &OperationId, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for OperationId

    source§

    impl Eq for OperationId

    source§

    impl PreHashed for OperationId

    source§

    impl StructuralPartialEq for OperationId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Copy for OperationId

    source§

    impl Eq for OperationId

    source§

    impl PreHashed for OperationId

    source§

    impl StructuralPartialEq for OperationId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -140,7 +140,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/operation/enum.OperationPrefixId.html b/massa_models/operation/enum.OperationPrefixId.html index 47271be7d7d..e7125bd0916 100644 --- a/massa_models/operation/enum.OperationPrefixId.html +++ b/massa_models/operation/enum.OperationPrefixId.html @@ -1,8 +1,8 @@ OperationPrefixId in massa_models::operation - Rust

    Enum massa_models::operation::OperationPrefixId

    source ·
    pub enum OperationPrefixId {
         OperationPrefixIdV0(OperationPrefixIdV0),
     }
    Expand description

    Left part of the operation id hash stored in a vector of size OPERATION_ID_PREFIX_SIZE_BYTES

    -

    Variants§

    §

    OperationPrefixIdV0(OperationPrefixIdV0)

    Trait Implementations§

    source§

    impl Clone for OperationPrefixId

    source§

    fn clone(&self) -> OperationPrefixId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationPrefixId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationPrefixId

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationPrefixId> for OperationPrefixIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Variants§

    §

    OperationPrefixIdV0(OperationPrefixIdV0)

    Trait Implementations§

    source§

    impl Clone for OperationPrefixId

    source§

    fn clone(&self) -> OperationPrefixId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationPrefixId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationPrefixId

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationPrefixId> for OperationPrefixIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], OperationPrefixId, E>

    §Example:
    @@ -14,8 +14,8 @@ op_prefixes.insert(OperationPrefixId::from(&[20; OPERATION_ID_PREFIX_SIZE_BYTES])); let mut buffer = Vec::new(); OperationPrefixIdsSerializer::new().serialize(&op_prefixes, &mut buffer).unwrap();
    -
    source§

    impl Display for OperationPrefixId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&[u8; 17]> for OperationPrefixId

    source§

    fn from(bytes: &[u8; 17]) -> Self

    get prefix of the operation id of size OPERATION_ID_PREFIX_SIZE_BIT

    -
    source§

    impl From<&OperationPrefixId> for Vec<u8>

    source§

    fn from(prefix: &OperationPrefixId) -> Self

    Converts to this type from the input type.
    source§

    impl Hash for OperationPrefixId

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +

    source§

    impl Display for OperationPrefixId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&[u8; 17]> for OperationPrefixId

    source§

    fn from(bytes: &[u8; 17]) -> Self

    get prefix of the operation id of size OPERATION_ID_PREFIX_SIZE_BIT

    +
    source§

    impl From<&OperationPrefixId> for Vec<u8>

    source§

    fn from(prefix: &OperationPrefixId) -> Self

    Converts to this type from the input type.
    source§

    impl Hash for OperationPrefixId

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for OperationPrefixId

    source§

    fn cmp(&self, other: &OperationPrefixId) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -24,8 +24,8 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for OperationPrefixId

    source§

    fn partial_cmp(&self, other: &OperationPrefixId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for OperationPrefixId

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for OperationPrefixId

    source§

    impl Eq for OperationPrefixId

    source§

    impl PreHashed for OperationPrefixId

    source§

    impl StructuralPartialEq for OperationPrefixId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +operator. Read more

    source§

    impl Serialize for OperationPrefixId

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for OperationPrefixId

    source§

    impl Eq for OperationPrefixId

    source§

    impl PreHashed for OperationPrefixId

    source§

    impl StructuralPartialEq for OperationPrefixId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -136,7 +136,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/operation/enum.OperationType.html b/massa_models/operation/enum.OperationType.html index 039bd9f7dbd..6f7e6d25128 100644 --- a/massa_models/operation/enum.OperationType.html +++ b/massa_models/operation/enum.OperationType.html @@ -41,8 +41,8 @@
    §param: Vec<u8>

    Parameter to pass to the target function

    §max_gas: u64

    The maximum amount of gas that the execution of the contract is allowed to cost.

    §coins: Amount

    Extra coins that are spent from the caller’s balance and transferred to the target

    -

    Trait Implementations§

    source§

    impl Clone for OperationType

    source§

    fn clone(&self) -> OperationType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationType

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationType> for OperationTypeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for OperationType

    source§

    fn clone(&self) -> OperationType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationType

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationType> for OperationTypeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], OperationType, E>

    §Example:
    @@ -77,14 +77,14 @@ } _ => panic!("Unexpected operation type"), };
    -
    source§

    impl Display for OperationType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<OperationType> for OpType

    source§

    fn from(value: OperationType) -> Self

    Converts to this type from the input type.
    source§

    impl From<OperationType> for OperationType

    source§

    fn from(operation_type: OperationType) -> OperationType

    Converts to this type from the input type.
    source§

    impl PartialEq for OperationType

    source§

    fn eq(&self, other: &OperationType) -> bool

    This method tests for self and other values to be equal, and is used +
    source§

    impl Display for OperationType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<OperationType> for OpType

    source§

    fn from(value: OperationType) -> Self

    Converts to this type from the input type.
    source§

    impl From<OperationType> for OperationType

    source§

    fn from(operation_type: OperationType) -> OperationType

    Converts to this type from the input type.
    source§

    impl PartialEq for OperationType

    source§

    fn eq(&self, other: &OperationType) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for OperationType

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<OperationType> for OperationTypeSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for OperationType

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<OperationType> for OperationTypeSerializer

    source§

    fn serialize( &self, value: &OperationType, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use std::collections::BTreeMap;
     use massa_models::{operation::{OperationTypeSerializer, OperationTypeDeserializer,OperationType}, address::Address, amount::Amount};
     use massa_signature::KeyPair;
    @@ -199,5 +199,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/operation/enum.OperationTypeId.html b/massa_models/operation/enum.OperationTypeId.html index 6e198fd3b13..1092c097043 100644 --- a/massa_models/operation/enum.OperationTypeId.html +++ b/massa_models/operation/enum.OperationTypeId.html @@ -6,7 +6,7 @@ CallSC = 4, }

    Variants§

    §

    Transaction = 0

    §

    RollBuy = 1

    §

    RollSell = 2

    §

    ExecuteSC = 3

    §

    CallSC = 4

    Trait Implementations§

    source§

    impl Debug for OperationTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<OperationTypeId> for u32

    source§

    fn from(enum_value: OperationTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for OperationTypeId

    source§

    fn eq(&self, other: &OperationTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u32> for OperationTypeId

    §

    type Error = TryFromPrimitiveError<OperationTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for OperationTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<OperationTypeId>

    source§

    const NAME: &'static str = "OperationTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u32> for OperationTypeId

    §

    type Error = TryFromPrimitiveError<OperationTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for OperationTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<OperationTypeId>

    source§

    const NAME: &'static str = "OperationTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for OperationTypeId

    source§

    impl StructuralPartialEq for OperationTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where diff --git a/massa_models/operation/struct.Operation.html b/massa_models/operation/struct.Operation.html index 8228ed64c3d..0bcb7057350 100644 --- a/massa_models/operation/struct.Operation.html +++ b/massa_models/operation/struct.Operation.html @@ -6,8 +6,8 @@

    Fields§

    §fee: Amount

    the fee they have decided for this operation

    §expire_period: u64

    after expire_period slot the operation won’t be included in a block

    §op: OperationType

    the type specific operation part

    -

    Trait Implementations§

    source§

    impl Clone for Operation

    source§

    fn clone(&self) -> Operation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Operation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Operation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Operation> for OperationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Operation

    source§

    fn clone(&self) -> Operation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Operation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Operation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Operation> for OperationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Operation, E>

    §Example:
    @@ -42,7 +42,7 @@ } _ => panic!("wrong operation type"), };
    -
    source§

    impl Display for Operation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Operation> for Operation

    source§

    fn from(op: Operation) -> Self

    Converts to this type from the input type.
    source§

    impl SecureShareContent for Operation

    source§

    impl Display for Operation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Operation> for Operation

    source§

    fn from(op: Operation) -> Self

    Converts to this type from the input type.
    source§

    impl SecureShareContent for Operation

    source§

    fn compute_hash( &self, content_serialized: &[u8], content_creator_pub_key: &PublicKey, @@ -56,7 +56,7 @@ public_key: &PublicKey, content_hash: &Hash, signature: &Signature, -) -> Result<(), ModelsError>

    verify signature
    source§

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( +) -> Result<(), ModelsError>

    verify signature
    source§

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( self, content_serializer: Ser, keypair: &KeyPair, @@ -71,19 +71,19 @@ creator_public_key: &PublicKey, serialized_content: &[u8], buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( - content_serializer: Option<&dyn Serializer<Self>>, +) -> Result<(), SerializeError>

    Serialize the secured structure
    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( + content_serializer: Option<&dyn Serializer<Self>>, signature_deserializer: &SignatureDeserializer, creator_public_key_deserializer: &PublicKeyDeserializer, content_deserializer: &Deser, buffer: &'a [u8], chain_id: u64, -) -> IResult<&'a [u8], SecureShare<Self, ID>, E>

    Deserialize the secured structure
    source§

    impl Serialize for Operation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Operation> for OperationSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], SecureShare<Self, ID>, E>

    Deserialize the secured structure
    source§

    impl Serialize for Operation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Operation> for OperationSerializer

    source§

    fn serialize( &self, value: &Operation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{amount::Amount, address::Address, operation::{OperationType, OperationSerializer, Operation}};
     use massa_signature::KeyPair;
     use massa_serialization::Serializer;
    @@ -200,5 +200,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/operation/struct.OperationDeserializer.html b/massa_models/operation/struct.OperationDeserializer.html index 2a749a60761..bed27571002 100644 --- a/massa_models/operation/struct.OperationDeserializer.html +++ b/massa_models/operation/struct.OperationDeserializer.html @@ -1,9 +1,9 @@ OperationDeserializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationDeserializer

    source ·
    pub struct OperationDeserializer {
    -    expire_period_deserializer: U64VarIntDeserializer,
    +    expire_period_deserializer: U64VarIntDeserializer,
         amount_deserializer: AmountDeserializer,
         op_type_deserializer: OperationTypeDeserializer,
     }
    Expand description

    Serializer for Operation

    -

    Fields§

    §expire_period_deserializer: U64VarIntDeserializer§amount_deserializer: AmountDeserializer§op_type_deserializer: OperationTypeDeserializer

    Implementations§

    source§

    impl OperationDeserializer

    source

    pub fn new( +

    Fields§

    §expire_period_deserializer: U64VarIntDeserializer§amount_deserializer: AmountDeserializer§op_type_deserializer: OperationTypeDeserializer

    Implementations§

    source§

    impl OperationDeserializer

    source

    pub fn new( max_datastore_value_length: u64, max_function_name_length: u16, max_parameters_size: u32, @@ -11,7 +11,7 @@ max_op_datastore_key_length: u8, max_op_datastore_value_length: u64, ) -> Self

    Creates a OperationDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Operation> for OperationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<Operation> for OperationDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Operation, E>

    §Example:
    diff --git a/massa_models/operation/struct.OperationIdDeserializer.html b/massa_models/operation/struct.OperationIdDeserializer.html index d1778bdd8b2..defa6b7595c 100644 --- a/massa_models/operation/struct.OperationIdDeserializer.html +++ b/massa_models/operation/struct.OperationIdDeserializer.html @@ -1,15 +1,15 @@ OperationIdDeserializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationIdDeserializer

    source ·
    pub struct OperationIdDeserializer {
         hash_deserializer: HashDeserializer,
    -    version_deserializer: U64VarIntDeserializer,
    +    version_deserializer: U64VarIntDeserializer,
     }
    Expand description

    Deserializer for OperationId

    -

    Fields§

    §hash_deserializer: HashDeserializer§version_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl OperationIdDeserializer

    source

    pub fn new() -> Self

    Creates a new deserializer for OperationId

    -

    Trait Implementations§

    source§

    impl Clone for OperationIdDeserializer

    source§

    fn clone(&self) -> OperationIdDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationIdDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<OperationId> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §hash_deserializer: HashDeserializer§version_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl OperationIdDeserializer

    source

    pub fn new() -> Self

    Creates a new deserializer for OperationId

    +

    Trait Implementations§

    source§

    impl Clone for OperationIdDeserializer

    source§

    fn clone(&self) -> OperationIdDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationIdDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<OperationId> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], OperationId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<OperationIdV0> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +) -> IResult<&'a [u8], OperationId, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Deserializer<OperationIdV0> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], OperationIdV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], OperationIdV0, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/operation/struct.OperationIdSerializer.html b/massa_models/operation/struct.OperationIdSerializer.html index 3f909effab0..7391fba3716 100644 --- a/massa_models/operation/struct.OperationIdSerializer.html +++ b/massa_models/operation/struct.OperationIdSerializer.html @@ -1,16 +1,16 @@ OperationIdSerializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationIdSerializer

    source ·
    pub struct OperationIdSerializer {
    -    version_serializer: U64VarIntSerializer,
    +    version_serializer: U64VarIntSerializer,
     }
    Expand description

    Serializer for OperationId

    -

    Fields§

    §version_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl OperationIdSerializer

    source

    pub fn new() -> Self

    Creates a new serializer for OperationId

    -

    Trait Implementations§

    source§

    impl Clone for OperationIdSerializer

    source§

    fn clone(&self) -> OperationIdSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationIdSerializer

    source§

    fn default() -> OperationIdSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<OperationId> for OperationIdSerializer

    Fields§

    §version_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl OperationIdSerializer

    source

    pub fn new() -> Self

    Creates a new serializer for OperationId

    +

    Trait Implementations§

    source§

    impl Clone for OperationIdSerializer

    source§

    fn clone(&self) -> OperationIdSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationIdSerializer

    source§

    fn default() -> OperationIdSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<OperationId> for OperationIdSerializer

    source§

    fn serialize( &self, value: &OperationId, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<OperationIdV0> for OperationIdSerializer

    source§

    fn serialize( +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Serializer<OperationIdV0> for OperationIdSerializer

    source§

    fn serialize( &self, value: &OperationIdV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/operation/struct.OperationIdV0.html b/massa_models/operation/struct.OperationIdV0.html index f9d6f524d3e..361080a6d5d 100644 --- a/massa_models/operation/struct.OperationIdV0.html +++ b/massa_models/operation/struct.OperationIdV0.html @@ -1,13 +1,13 @@ OperationIdV0 in massa_models::operation - Rust

    Struct massa_models::operation::OperationIdV0

    source ·
    pub struct OperationIdV0(Hash);
    Expand description

    operation id

    Tuple Fields§

    §0: Hash

    Implementations§

    source§

    impl OperationIdV0

    source

    pub fn into_prefix(self) -> OperationPrefixId

    convert the [OperationId] into a [OperationPrefixId]

    source

    pub fn prefix(&self) -> OperationPrefixId

    get a prefix from the [OperationId] by copying it

    -
    source

    fn get_hash(&self) -> &Hash

    source

    fn get_version(&self) -> u64

    Trait Implementations§

    source§

    impl Clone for OperationIdV0

    source§

    fn clone(&self) -> OperationIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationIdV0
    where +

    source

    fn get_hash(&self) -> &Hash

    source

    fn get_version(&self) -> u64

    Trait Implementations§

    source§

    impl Clone for OperationIdV0

    source§

    fn clone(&self) -> OperationIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationIdV0
    where Self: FromStr, - <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationIdV0> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + <Self as FromStr>::Err: Display,

    source§

    fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<OperationIdV0> for OperationIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], OperationIdV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for OperationIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for OperationIdV0

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for OperationIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +) -> IResult<&'a [u8], OperationIdV0, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Display for OperationIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for OperationIdV0

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for OperationIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for OperationIdV0

    source§

    fn cmp(&self, other: &OperationIdV0) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -16,13 +16,13 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for OperationIdV0

    source§

    fn partial_cmp(&self, other: &OperationIdV0) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for OperationIdV0
    where - Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<OperationIdV0> for OperationIdSerializer

    source§

    impl Serialize for OperationIdV0
    where + Self: Display,

    source§

    fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<OperationIdV0> for OperationIdSerializer

    source§

    fn serialize( &self, value: &OperationIdV0, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for OperationIdV0

    source§

    impl Copy for OperationIdV0

    source§

    impl Eq for OperationIdV0

    source§

    impl StructuralPartialEq for OperationIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl Versioned for OperationIdV0

    source§

    impl Copy for OperationIdV0

    source§

    impl Eq for OperationIdV0

    source§

    impl StructuralPartialEq for OperationIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -133,7 +133,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/operation/struct.OperationIdsDeserializer.html b/massa_models/operation/struct.OperationIdsDeserializer.html index fe39da06630..799af37718c 100644 --- a/massa_models/operation/struct.OperationIdsDeserializer.html +++ b/massa_models/operation/struct.OperationIdsDeserializer.html @@ -1,9 +1,9 @@ OperationIdsDeserializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationIdsDeserializer

    source ·
    pub struct OperationIdsDeserializer {
    -    length_deserializer: U32VarIntDeserializer,
    +    length_deserializer: U32VarIntDeserializer,
         op_id_deserializer: OperationIdDeserializer,
     }
    Expand description

    Deserializer for Vec<OperationId>

    -

    Fields§

    §length_deserializer: U32VarIntDeserializer§op_id_deserializer: OperationIdDeserializer

    Implementations§

    source§

    impl OperationIdsDeserializer

    source

    pub fn new(max_operations_per_message: u32) -> Self

    Creates a new OperationIdsDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Vec<OperationId>> for OperationIdsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §length_deserializer: U32VarIntDeserializer§op_id_deserializer: OperationIdDeserializer

    Implementations§

    source§

    impl OperationIdsDeserializer

    source

    pub fn new(max_operations_per_message: u32) -> Self

    Creates a new OperationIdsDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<Vec<OperationId>> for OperationIdsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Vec<OperationId>, E>

    §Example:
    diff --git a/massa_models/operation/struct.OperationIdsSerializer.html b/massa_models/operation/struct.OperationIdsSerializer.html index c1fe69b0277..5831aae847d 100644 --- a/massa_models/operation/struct.OperationIdsSerializer.html +++ b/massa_models/operation/struct.OperationIdsSerializer.html @@ -1,13 +1,13 @@ OperationIdsSerializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationIdsSerializer

    source ·
    pub struct OperationIdsSerializer {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
         op_id_serializer: OperationIdSerializer,
     }
    Expand description

    Serializer for Vec<OperationId>

    -

    Fields§

    §u32_serializer: U32VarIntSerializer§op_id_serializer: OperationIdSerializer

    Implementations§

    source§

    impl OperationIdsSerializer

    source

    pub fn new() -> Self

    Creates a new OperationIdsSerializer

    -

    Trait Implementations§

    source§

    impl Default for OperationIdsSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Vec<OperationId>> for OperationIdsSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer§op_id_serializer: OperationIdSerializer

    Implementations§

    source§

    impl OperationIdsSerializer

    source

    pub fn new() -> Self

    Creates a new OperationIdsSerializer

    +

    Trait Implementations§

    source§

    impl Default for OperationIdsSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Vec<OperationId>> for OperationIdsSerializer

    source§

    fn serialize( &self, value: &Vec<OperationId>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::operation::{OperationId, OperationIdsSerializer};
     use massa_serialization::Serializer;
     use std::str::FromStr;
    diff --git a/massa_models/operation/struct.OperationPrefixIdDeserializer.html b/massa_models/operation/struct.OperationPrefixIdDeserializer.html
    index 5f7457344cc..d16d004a6de 100644
    --- a/massa_models/operation/struct.OperationPrefixIdDeserializer.html
    +++ b/massa_models/operation/struct.OperationPrefixIdDeserializer.html
    @@ -1,6 +1,6 @@
     OperationPrefixIdDeserializer in massa_models::operation - Rust
    pub struct OperationPrefixIdDeserializer;
    Expand description

    Deserializer for [OperationPrefixId]

    Implementations§

    source§

    impl OperationPrefixIdDeserializer

    source

    pub const fn new() -> Self

    Creates a deserializer for [OperationPrefixId]

    -

    Trait Implementations§

    source§

    impl Default for OperationPrefixIdDeserializer

    source§

    fn default() -> OperationPrefixIdDeserializer

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<OperationPrefixId> for OperationPrefixIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Default for OperationPrefixIdDeserializer

    source§

    fn default() -> OperationPrefixIdDeserializer

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<OperationPrefixId> for OperationPrefixIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], OperationPrefixId, E>

    §Example:
    diff --git a/massa_models/operation/struct.OperationPrefixIdV0.html b/massa_models/operation/struct.OperationPrefixIdV0.html index 41ca473fbb0..804c36a4509 100644 --- a/massa_models/operation/struct.OperationPrefixIdV0.html +++ b/massa_models/operation/struct.OperationPrefixIdV0.html @@ -1,6 +1,6 @@ OperationPrefixIdV0 in massa_models::operation - Rust

    Struct massa_models::operation::OperationPrefixIdV0

    source ·
    pub struct OperationPrefixIdV0([u8; 17]);
    Expand description

    Left part of the operation id hash stored in a vector of size OPERATION_ID_PREFIX_SIZE_BYTES

    -

    Tuple Fields§

    §0: [u8; 17]

    Trait Implementations§

    source§

    impl Clone for OperationPrefixIdV0

    source§

    fn clone(&self) -> OperationPrefixIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationPrefixIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationPrefixIdV0

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for OperationPrefixIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for OperationPrefixIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +

    Tuple Fields§

    §0: [u8; 17]

    Trait Implementations§

    source§

    impl Clone for OperationPrefixIdV0

    source§

    fn clone(&self) -> OperationPrefixIdV0

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for OperationPrefixIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for OperationPrefixIdV0

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for OperationPrefixIdV0

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for OperationPrefixIdV0

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for OperationPrefixIdV0

    source§

    fn cmp(&self, other: &OperationPrefixIdV0) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -9,8 +9,8 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for OperationPrefixIdV0

    source§

    fn partial_cmp(&self, other: &OperationPrefixIdV0) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for OperationPrefixIdV0

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Versioned for OperationPrefixIdV0

    source§

    impl Copy for OperationPrefixIdV0

    source§

    impl Eq for OperationPrefixIdV0

    source§

    impl StructuralPartialEq for OperationPrefixIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +operator. Read more

    source§

    impl Serialize for OperationPrefixIdV0

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Versioned for OperationPrefixIdV0

    source§

    impl Copy for OperationPrefixIdV0

    source§

    impl Eq for OperationPrefixIdV0

    source§

    impl StructuralPartialEq for OperationPrefixIdV0

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -121,7 +121,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/operation/struct.OperationPrefixIdsDeserializer.html b/massa_models/operation/struct.OperationPrefixIdsDeserializer.html index db33d70ce82..5da457b44cd 100644 --- a/massa_models/operation/struct.OperationPrefixIdsDeserializer.html +++ b/massa_models/operation/struct.OperationPrefixIdsDeserializer.html @@ -1,9 +1,9 @@ OperationPrefixIdsDeserializer in massa_models::operation - Rust
    pub struct OperationPrefixIdsDeserializer {
    -    length_deserializer: U32VarIntDeserializer,
    +    length_deserializer: U32VarIntDeserializer,
         pref_deserializer: OperationPrefixIdDeserializer,
     }
    Expand description

    Deserializer for OperationPrefixIds

    -

    Fields§

    §length_deserializer: U32VarIntDeserializer§pref_deserializer: OperationPrefixIdDeserializer

    Implementations§

    source§

    impl OperationPrefixIdsDeserializer

    source

    pub const fn new(max_operations_per_message: u32) -> Self

    Creates a new OperationIdsDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §length_deserializer: U32VarIntDeserializer§pref_deserializer: OperationPrefixIdDeserializer

    Implementations§

    source§

    impl OperationPrefixIdsDeserializer

    source

    pub const fn new(max_operations_per_message: u32) -> Self

    Creates a new OperationIdsDeserializer

    +

    Trait Implementations§

    source§

    impl Deserializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], OperationPrefixIds, E>

    §Example:
    diff --git a/massa_models/operation/struct.OperationPrefixIdsSerializer.html b/massa_models/operation/struct.OperationPrefixIdsSerializer.html index 5b95ee4a48c..cf0a7236212 100644 --- a/massa_models/operation/struct.OperationPrefixIdsSerializer.html +++ b/massa_models/operation/struct.OperationPrefixIdsSerializer.html @@ -1,12 +1,12 @@ OperationPrefixIdsSerializer in massa_models::operation - Rust
    pub struct OperationPrefixIdsSerializer {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
     }
    Expand description

    Serializer for OperationPrefixIds

    -

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl OperationPrefixIdsSerializer

    source

    pub const fn new() -> Self

    Creates a new OperationIdsSerializer

    -

    Trait Implementations§

    source§

    impl Clone for OperationPrefixIdsSerializer

    source§

    fn clone(&self) -> OperationPrefixIdsSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationPrefixIdsSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl OperationPrefixIdsSerializer

    source

    pub const fn new() -> Self

    Creates a new OperationIdsSerializer

    +

    Trait Implementations§

    source§

    impl Clone for OperationPrefixIdsSerializer

    source§

    fn clone(&self) -> OperationPrefixIdsSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationPrefixIdsSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsSerializer

    source§

    fn serialize( &self, value: &OperationPrefixIds, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/operation/struct.OperationSerializer.html b/massa_models/operation/struct.OperationSerializer.html index 1ff6b96aaec..6c65da8d2be 100644 --- a/massa_models/operation/struct.OperationSerializer.html +++ b/massa_models/operation/struct.OperationSerializer.html @@ -1,14 +1,14 @@ OperationSerializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationSerializer

    source ·
    pub struct OperationSerializer {
    -    u64_serializer: U64VarIntSerializer,
    +    u64_serializer: U64VarIntSerializer,
         amount_serializer: AmountSerializer,
         op_type_serializer: OperationTypeSerializer,
     }
    Expand description

    Serializer for Operation

    -

    Fields§

    §u64_serializer: U64VarIntSerializer§amount_serializer: AmountSerializer§op_type_serializer: OperationTypeSerializer

    Implementations§

    source§

    impl OperationSerializer

    source

    pub fn new() -> Self

    Creates a new OperationSerializer

    -

    Trait Implementations§

    source§

    impl Default for OperationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Operation> for OperationSerializer

    Fields§

    §u64_serializer: U64VarIntSerializer§amount_serializer: AmountSerializer§op_type_serializer: OperationTypeSerializer

    Implementations§

    source§

    impl OperationSerializer

    source

    pub fn new() -> Self

    Creates a new OperationSerializer

    +

    Trait Implementations§

    source§

    impl Default for OperationSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Operation> for OperationSerializer

    source§

    fn serialize( &self, value: &Operation, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>

    §Example:
    use massa_models::{amount::Amount, address::Address, operation::{OperationType, OperationSerializer, Operation}};
     use massa_signature::KeyPair;
     use massa_serialization::Serializer;
    diff --git a/massa_models/operation/struct.OperationTypeDeserializer.html b/massa_models/operation/struct.OperationTypeDeserializer.html
    index 1e8b4905802..cddb5680dde 100644
    --- a/massa_models/operation/struct.OperationTypeDeserializer.html
    +++ b/massa_models/operation/struct.OperationTypeDeserializer.html
    @@ -1,15 +1,15 @@
     OperationTypeDeserializer in massa_models::operation - Rust
    pub struct OperationTypeDeserializer {
    -    id_deserializer: U32VarIntDeserializer,
    -    rolls_number_deserializer: U64VarIntDeserializer,
    -    max_gas_deserializer: U64VarIntDeserializer,
    +    id_deserializer: U32VarIntDeserializer,
    +    rolls_number_deserializer: U64VarIntDeserializer,
    +    max_gas_deserializer: U64VarIntDeserializer,
         address_deserializer: AddressDeserializer,
         data_deserializer: VecU8Deserializer,
         amount_deserializer: AmountDeserializer,
    -    function_name_deserializer: StringDeserializer<U16VarIntDeserializer, u16>,
    +    function_name_deserializer: StringDeserializer<U16VarIntDeserializer, u16>,
         parameter_deserializer: VecU8Deserializer,
         datastore_deserializer: DatastoreDeserializer,
     }
    Expand description

    Deserializer for OperationType

    -

    Fields§

    §id_deserializer: U32VarIntDeserializer§rolls_number_deserializer: U64VarIntDeserializer§max_gas_deserializer: U64VarIntDeserializer§address_deserializer: AddressDeserializer§data_deserializer: VecU8Deserializer§amount_deserializer: AmountDeserializer§function_name_deserializer: StringDeserializer<U16VarIntDeserializer, u16>§parameter_deserializer: VecU8Deserializer§datastore_deserializer: DatastoreDeserializer

    Implementations§

    source§

    impl OperationTypeDeserializer

    source

    pub fn new( +

    Fields§

    §id_deserializer: U32VarIntDeserializer§rolls_number_deserializer: U64VarIntDeserializer§max_gas_deserializer: U64VarIntDeserializer§address_deserializer: AddressDeserializer§data_deserializer: VecU8Deserializer§amount_deserializer: AmountDeserializer§function_name_deserializer: StringDeserializer<U16VarIntDeserializer, u16>§parameter_deserializer: VecU8Deserializer§datastore_deserializer: DatastoreDeserializer

    Implementations§

    source§

    impl OperationTypeDeserializer

    source

    pub fn new( max_datastore_value_length: u64, max_function_name_length: u16, max_parameters_size: u32, @@ -17,7 +17,7 @@ max_op_datastore_key_length: u8, max_op_datastore_value_length: u64, ) -> Self

    Creates a new OperationTypeDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<OperationType> for OperationTypeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<OperationType> for OperationTypeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], OperationType, E>

    §Example:
    diff --git a/massa_models/operation/struct.OperationTypeSerializer.html b/massa_models/operation/struct.OperationTypeSerializer.html index 64ad04116d1..f515e73fc55 100644 --- a/massa_models/operation/struct.OperationTypeSerializer.html +++ b/massa_models/operation/struct.OperationTypeSerializer.html @@ -1,18 +1,18 @@ OperationTypeSerializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationTypeSerializer

    source ·
    pub struct OperationTypeSerializer {
    -    u32_serializer: U32VarIntSerializer,
    -    u64_serializer: U64VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
    +    u64_serializer: U64VarIntSerializer,
         vec_u8_serializer: VecU8Serializer,
         amount_serializer: AmountSerializer,
         address_serializer: AddressSerializer,
    -    function_name_serializer: StringSerializer<U16VarIntSerializer, u16>,
    +    function_name_serializer: StringSerializer<U16VarIntSerializer, u16>,
         datastore_serializer: DatastoreSerializer,
     }
    Expand description

    Serializer for OperationType

    -

    Fields§

    §u32_serializer: U32VarIntSerializer§u64_serializer: U64VarIntSerializer§vec_u8_serializer: VecU8Serializer§amount_serializer: AmountSerializer§address_serializer: AddressSerializer§function_name_serializer: StringSerializer<U16VarIntSerializer, u16>§datastore_serializer: DatastoreSerializer

    Implementations§

    source§

    impl OperationTypeSerializer

    source

    pub fn new() -> Self

    Creates a new OperationTypeSerializer

    -

    Trait Implementations§

    source§

    impl Default for OperationTypeSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<OperationType> for OperationTypeSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer§u64_serializer: U64VarIntSerializer§vec_u8_serializer: VecU8Serializer§amount_serializer: AmountSerializer§address_serializer: AddressSerializer§function_name_serializer: StringSerializer<U16VarIntSerializer, u16>§datastore_serializer: DatastoreSerializer

    Implementations§

    source§

    impl OperationTypeSerializer

    source

    pub fn new() -> Self

    Creates a new OperationTypeSerializer

    +

    Trait Implementations§

    source§

    impl Default for OperationTypeSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<OperationType> for OperationTypeSerializer

    source§

    fn serialize( &self, value: &OperationType, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use std::collections::BTreeMap;
     use massa_models::{operation::{OperationTypeSerializer, OperationTypeDeserializer,OperationType}, address::Address, amount::Amount};
     use massa_signature::KeyPair;
    diff --git a/massa_models/operation/struct.OperationsDeserializer.html b/massa_models/operation/struct.OperationsDeserializer.html
    index 877435fa122..d00edaaf5be 100644
    --- a/massa_models/operation/struct.OperationsDeserializer.html
    +++ b/massa_models/operation/struct.OperationsDeserializer.html
    @@ -1,8 +1,8 @@
     OperationsDeserializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationsDeserializer

    source ·
    pub struct OperationsDeserializer {
    -    length_deserializer: U32VarIntDeserializer,
    +    length_deserializer: U32VarIntDeserializer,
         signed_op_deserializer: SecureShareDeserializer<Operation, OperationDeserializer>,
     }
    Expand description

    Deserializer for Operations

    -

    Fields§

    §length_deserializer: U32VarIntDeserializer§signed_op_deserializer: SecureShareDeserializer<Operation, OperationDeserializer>

    Implementations§

    source§

    impl OperationsDeserializer

    source

    pub fn new( +

    Fields§

    §length_deserializer: U32VarIntDeserializer§signed_op_deserializer: SecureShareDeserializer<Operation, OperationDeserializer>

    Implementations§

    source§

    impl OperationsDeserializer

    source

    pub fn new( max_operations_per_message: u32, max_datastore_value_length: u64, max_function_name_length: u16, @@ -12,7 +12,7 @@ max_op_datastore_value_length: u64, chain_id: u64, ) -> Self

    Creates a new OperationsDeserializer

    -

    Trait Implementations§

    source§

    impl Deserializer<Vec<SecureShare<Operation, OperationId>>> for OperationsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Deserializer<Vec<SecureShare<Operation, OperationId>>> for OperationsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Vec<SecureShareOperation>, E>

    §Example:
    diff --git a/massa_models/operation/struct.OperationsSerializer.html b/massa_models/operation/struct.OperationsSerializer.html index 347421961ea..c78c59aa340 100644 --- a/massa_models/operation/struct.OperationsSerializer.html +++ b/massa_models/operation/struct.OperationsSerializer.html @@ -1,13 +1,13 @@ OperationsSerializer in massa_models::operation - Rust

    Struct massa_models::operation::OperationsSerializer

    source ·
    pub struct OperationsSerializer {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
         signed_op_serializer: SecureShareSerializer,
     }
    Expand description

    Serializer for Operations

    -

    Fields§

    §u32_serializer: U32VarIntSerializer§signed_op_serializer: SecureShareSerializer

    Implementations§

    source§

    impl OperationsSerializer

    source

    pub const fn new() -> Self

    Creates a new OperationsSerializer

    -

    Trait Implementations§

    source§

    impl Clone for OperationsSerializer

    source§

    fn clone(&self) -> OperationsSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationsSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Vec<SecureShare<Operation, OperationId>>> for OperationsSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer§signed_op_serializer: SecureShareSerializer

    Implementations§

    source§

    impl OperationsSerializer

    source

    pub const fn new() -> Self

    Creates a new OperationsSerializer

    +

    Trait Implementations§

    source§

    impl Clone for OperationsSerializer

    source§

    fn clone(&self) -> OperationsSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for OperationsSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Vec<SecureShare<Operation, OperationId>>> for OperationsSerializer

    source§

    fn serialize( &self, value: &Vec<SecureShareOperation>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::{operation::{SecureShareOperation, Operation, OperationType, OperationsSerializer, OperationSerializer}, secure_share::SecureShareContent, address::Address, amount::Amount};
     use massa_signature::KeyPair;
     use massa_serialization::Serializer;
    diff --git a/massa_models/output_event/index.html b/massa_models/output_event/index.html
    index 181f805fbb0..23f21efbde7 100644
    --- a/massa_models/output_event/index.html
    +++ b/massa_models/output_event/index.html
    @@ -1,2 +1,2 @@
    -massa_models::output_event - Rust

    Module massa_models::output_event

    source ·
    Expand description

    smart contract output events

    +massa_models::output_event - Rust

    Module massa_models::output_event

    source ·
    Expand description

    smart contract output events

    Structs§

    \ No newline at end of file diff --git a/massa_models/output_event/struct.EventExecutionContext.html b/massa_models/output_event/struct.EventExecutionContext.html index cc916abb056..59c0883e1db 100644 --- a/massa_models/output_event/struct.EventExecutionContext.html +++ b/massa_models/output_event/struct.EventExecutionContext.html @@ -1,4 +1,4 @@ -EventExecutionContext in massa_models::output_event - Rust

    Struct massa_models::output_event::EventExecutionContext

    source ·
    pub struct EventExecutionContext {
    +EventExecutionContext in massa_models::output_event - Rust

    Struct massa_models::output_event::EventExecutionContext

    source ·
    pub struct EventExecutionContext {
         pub slot: Slot,
         pub block: Option<BlockId>,
         pub read_only: bool,
    @@ -16,14 +16,22 @@
     
    §origin_operation_id: Option<OperationId>

    origin operation id

    §is_final: bool

    if the event is final

    §is_error: bool

    if the sc that emitted this event failed

    -

    Trait Implementations§

    source§

    impl Clone for EventExecutionContext

    source§

    fn clone(&self) -> EventExecutionContext

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventExecutionContext

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for EventExecutionContext

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for EventExecutionContext

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<EventExecutionContext> for ScExecutionEventContext

    source§

    fn from(value: EventExecutionContext) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for EventExecutionContext

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for EventExecutionContext

    source§

    fn clone(&self) -> EventExecutionContext

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for EventExecutionContext

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for EventExecutionContext

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for EventExecutionContext

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<EventExecutionContext> for ScExecutionEventContext

    source§

    fn from(value: EventExecutionContext) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for EventExecutionContext

    source§

    fn eq(&self, other: &EventExecutionContext) -> bool

    This method tests for self and other values to be equal, and is used +by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always +sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for EventExecutionContext

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for EventExecutionContext

    source§

    impl StructuralPartialEq for EventExecutionContext

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where T: Clone,

    source§

    default unsafe fn clone_to_uninit(&self, dst: *mut T)

    🔬This is a nightly-only experimental API. (clone_to_uninit)
    Performs copy-assignment from self to dst. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where - Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn equivalent(&self, key: &K) -> bool

    Checks if this value is equivalent to the given key. Read more
    §

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn equivalent(&self, key: &K) -> bool

    Compare self to key and return true if they are equal.
    source§

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    source§

    fn equivalent(&self, key: &K) -> bool

    Compare self to key and return true if they are equal.
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where Self: Display,

    Causes self to use its Display implementation when Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where @@ -117,5 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/output_event/struct.SCOutputEvent.html b/massa_models/output_event/struct.SCOutputEvent.html index 970ac2ccdad..cf22996ccf1 100644 --- a/massa_models/output_event/struct.SCOutputEvent.html +++ b/massa_models/output_event/struct.SCOutputEvent.html @@ -1,17 +1,32 @@ -SCOutputEvent in massa_models::output_event - Rust

    Struct massa_models::output_event::SCOutputEvent

    source ·
    pub struct SCOutputEvent {
    +SCOutputEvent in massa_models::output_event - Rust

    Struct massa_models::output_event::SCOutputEvent

    source ·
    pub struct SCOutputEvent {
         pub context: EventExecutionContext,
         pub data: String,
     }
    Expand description

    By product of a byte code execution

    Fields§

    §context: EventExecutionContext

    context generated by the execution context

    §data: String

    json data string

    -

    Trait Implementations§

    source§

    impl Clone for SCOutputEvent

    source§

    fn clone(&self) -> SCOutputEvent

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SCOutputEvent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SCOutputEvent

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for SCOutputEvent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<SCOutputEvent> for ScExecutionEvent

    source§

    fn from(value: SCOutputEvent) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for SCOutputEvent

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for SCOutputEvent

    source§

    fn clone(&self) -> SCOutputEvent

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SCOutputEvent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SCOutputEvent

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for SCOutputEvent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<SCOutputEvent> for ScExecutionEvent

    source§

    fn from(value: SCOutputEvent) -> Self

    Converts to this type from the input type.
    source§

    impl Ord for SCOutputEvent

    source§

    fn cmp(&self, other: &Self) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where + Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where + Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where + Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    source§

    impl PartialEq for SCOutputEvent

    source§

    fn eq(&self, other: &SCOutputEvent) -> bool

    This method tests for self and other values to be equal, and is used +by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always +sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for SCOutputEvent

    source§

    fn partial_cmp(&self, other: &Self) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= +operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= +operator. Read more
    source§

    impl Serialize for SCOutputEvent

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for SCOutputEvent

    source§

    impl StructuralPartialEq for SCOutputEvent

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where - T: Clone,

    source§

    default unsafe fn clone_to_uninit(&self, dst: *mut T)

    🔬This is a nightly-only experimental API. (clone_to_uninit)
    Performs copy-assignment from self to dst. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where - Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where + T: Clone,

    source§

    default unsafe fn clone_to_uninit(&self, dst: *mut T)

    🔬This is a nightly-only experimental API. (clone_to_uninit)
    Performs copy-assignment from self to dst. Read more
    §

    impl<Q, K> Comparable<K> for Q
    where + Q: Ord + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn compare(&self, key: &K) -> Ordering

    Compare self to key and return their ordering.
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where + Self: Into<T>,

    Converts self into T using Into<T>. Read more
    §

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn equivalent(&self, key: &K) -> bool

    Checks if this value is equivalent to the given key. Read more
    §

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    §

    fn equivalent(&self, key: &K) -> bool

    Compare self to key and return true if they are equal.
    source§

    impl<Q, K> Equivalent<K> for Q
    where + Q: Eq + ?Sized, + K: Borrow<Q> + ?Sized,

    source§

    fn equivalent(&self, key: &K) -> bool

    Compare self to key and return true if they are equal.
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where Self: Display,

    Causes self to use its Display implementation when Debug-formatted.
    §

    fn fmt_lower_exp(self) -> FmtLowerExp<Self>
    where @@ -105,5 +120,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/rolls/struct.RollCompensation.html b/massa_models/rolls/struct.RollCompensation.html index 28dbd14c353..452a71ab580 100644 --- a/massa_models/rolls/struct.RollCompensation.html +++ b/massa_models/rolls/struct.RollCompensation.html @@ -1,7 +1,7 @@ RollCompensation in massa_models::rolls - Rust

    Struct massa_models::rolls::RollCompensation

    source ·
    pub struct RollCompensation(pub u64);
    Expand description

    just a u64 to keep track of the roll sells and buys during a cycle

    -

    Tuple Fields§

    §0: u64

    Trait Implementations§

    source§

    impl Clone for RollCompensation

    source§

    fn clone(&self) -> RollCompensation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollCompensation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for RollCompensation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for RollCompensation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for RollCompensation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Tuple Fields§

    §0: u64

    Trait Implementations§

    source§

    impl Clone for RollCompensation

    source§

    fn clone(&self) -> RollCompensation

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollCompensation

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for RollCompensation

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for RollCompensation

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for RollCompensation

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -100,5 +100,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/rolls/struct.RollCounts.html b/massa_models/rolls/struct.RollCounts.html index 1eee3cdbf6e..54acdd24d7d 100644 --- a/massa_models/rolls/struct.RollCounts.html +++ b/massa_models/rolls/struct.RollCounts.html @@ -6,9 +6,9 @@
    source

    pub fn clone_subset(&self, addrs: &PreHashSet<Address>) -> Self

    get roll counts for a subset of addresses.

    source

    pub fn sync_from(&mut self, addrs: &PreHashSet<Address>, other: RollCounts)

    merge another roll counts into self, overwriting existing data addresses that are in not other are removed from self

    -

    Trait Implementations§

    source§

    impl Clone for RollCounts

    source§

    fn clone(&self) -> RollCounts

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollCounts

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for RollCounts

    source§

    fn default() -> RollCounts

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for RollCounts

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for RollCounts

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for RollCounts

    source§

    fn clone(&self) -> RollCounts

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollCounts

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for RollCounts

    source§

    fn default() -> RollCounts

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for RollCounts

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for RollCounts

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -106,5 +106,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/rolls/struct.RollUpdate.html b/massa_models/rolls/struct.RollUpdate.html index 3df6ce13b0b..2deabc3003b 100644 --- a/massa_models/rolls/struct.RollUpdate.html +++ b/massa_models/rolls/struct.RollUpdate.html @@ -7,11 +7,11 @@

    Implementations§

    source§

    impl RollUpdate

    source

    fn chain(&mut self, change: &Self) -> Result<RollCompensation>

    chain two roll updates, compensate and return compensation count

    source

    pub fn compensate(&mut self) -> RollCompensation

    compensate a roll update, return compensation count

    source

    pub fn is_nil(&self) -> bool

    true if the update has no effect

    -

    Trait Implementations§

    source§

    impl Clone for RollUpdate

    source§

    fn clone(&self) -> RollUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for RollUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<RollUpdate> for RollUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for RollUpdate

    source§

    fn clone(&self) -> RollUpdate

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollUpdate

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for RollUpdate

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<RollUpdate> for RollUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], RollUpdate, E>

    §Example:
    +) -> IResult<&'a [u8], RollUpdate, E>
    §Example:
    use massa_models::rolls::{RollUpdate, RollUpdateDeserializer, RollUpdateSerializer};
     use massa_serialization::{Serializer, Deserializer, DeserializeError};
     
    @@ -25,12 +25,12 @@
     assert_eq!(rest.len(), 0);
     assert_eq!(roll_update.roll_purchases, roll_update_deserialized.roll_purchases);
     assert_eq!(roll_update.roll_sales, roll_update_deserialized.roll_sales);
    -
    source§

    impl Serialize for RollUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<RollUpdate> for RollUpdateSerializer

    source§

    impl Serialize for RollUpdate

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<RollUpdate> for RollUpdateSerializer

    source§

    fn serialize( &self, value: &RollUpdate, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::rolls::{RollUpdate, RollUpdateSerializer};
     use massa_serialization::Serializer;
     
    @@ -138,5 +138,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/rolls/struct.RollUpdateDeserializer.html b/massa_models/rolls/struct.RollUpdateDeserializer.html index cb3d00ae970..3c6331f2a02 100644 --- a/massa_models/rolls/struct.RollUpdateDeserializer.html +++ b/massa_models/rolls/struct.RollUpdateDeserializer.html @@ -1,8 +1,8 @@ RollUpdateDeserializer in massa_models::rolls - Rust

    Struct massa_models::rolls::RollUpdateDeserializer

    source ·
    pub struct RollUpdateDeserializer {
    -    u64_deserializer: U64VarIntDeserializer,
    +    u64_deserializer: U64VarIntDeserializer,
     }
    Expand description

    Deserializer for RollUpdate

    -

    Fields§

    §u64_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl RollUpdateDeserializer

    source

    pub fn new() -> Self

    Creates a new RollUpdateDeserializer

    -

    Trait Implementations§

    source§

    impl Default for RollUpdateDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<RollUpdate> for RollUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §u64_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl RollUpdateDeserializer

    source

    pub fn new() -> Self

    Creates a new RollUpdateDeserializer

    +

    Trait Implementations§

    source§

    impl Default for RollUpdateDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<RollUpdate> for RollUpdateDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], RollUpdate, E>

    §Example:
    diff --git a/massa_models/rolls/struct.RollUpdateSerializer.html b/massa_models/rolls/struct.RollUpdateSerializer.html index ab4a1184ac0..0ba23f6653e 100644 --- a/massa_models/rolls/struct.RollUpdateSerializer.html +++ b/massa_models/rolls/struct.RollUpdateSerializer.html @@ -1,12 +1,12 @@ RollUpdateSerializer in massa_models::rolls - Rust

    Struct massa_models::rolls::RollUpdateSerializer

    source ·
    pub struct RollUpdateSerializer {
    -    u64_serializer: U64VarIntSerializer,
    +    u64_serializer: U64VarIntSerializer,
     }
    Expand description

    Serializer for RollUpdate

    -

    Fields§

    §u64_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl RollUpdateSerializer

    source

    pub fn new() -> Self

    Creates a new RollUpdateSerializer

    -

    Trait Implementations§

    source§

    impl Default for RollUpdateSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<RollUpdate> for RollUpdateSerializer

    Fields§

    §u64_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl RollUpdateSerializer

    source

    pub fn new() -> Self

    Creates a new RollUpdateSerializer

    +

    Trait Implementations§

    source§

    impl Default for RollUpdateSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<RollUpdate> for RollUpdateSerializer

    source§

    fn serialize( &self, value: &RollUpdate, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    §Example:
    +) -> Result<(), SerializeError>
    §Example:
    use massa_models::rolls::{RollUpdate, RollUpdateSerializer};
     use massa_serialization::Serializer;
     
    diff --git a/massa_models/rolls/struct.RollUpdates.html b/massa_models/rolls/struct.RollUpdates.html
    index 58384a1ad96..c1245d7db36 100644
    --- a/massa_models/rolls/struct.RollUpdates.html
    +++ b/massa_models/rolls/struct.RollUpdates.html
    @@ -12,9 +12,9 @@
     
    source

    pub fn clone_subset(&self, addrs: &PreHashSet<Address>) -> Self

    get the roll update for a subset of addresses

    source

    pub fn sync_from(&mut self, addrs: &PreHashSet<Address>, other: RollUpdates)

    merge another roll updates into self, overwriting existing data addresses that are in not other are removed from self

    -

    Trait Implementations§

    source§

    impl Clone for RollUpdates

    source§

    fn clone(&self) -> RollUpdates

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollUpdates

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for RollUpdates

    source§

    fn default() -> RollUpdates

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for RollUpdates

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for RollUpdates

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for RollUpdates

    source§

    fn clone(&self) -> RollUpdates

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RollUpdates

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for RollUpdates

    source§

    fn default() -> RollUpdates

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for RollUpdates

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for RollUpdates

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -112,5 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/secure_share/struct.SecureShare.html b/massa_models/secure_share/struct.SecureShare.html index 325ecff057f..17b9492e3fd 100644 --- a/massa_models/secure_share/struct.SecureShare.html +++ b/massa_models/secure_share/struct.SecureShare.html @@ -53,13 +53,13 @@ T: Display + SecureShareContent + Clone, ID: Id + Clone,
    source§

    fn clone(&self) -> SecureShare<T, ID>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ID> Debug for SecureShare<T, ID>
    where T: Display + SecureShareContent + Debug, - ID: Id + Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de, T, ID> Deserialize<'de> for SecureShare<T, ID>
    where - T: Display + SecureShareContent + Deserialize<'de>, - ID: Id + Deserialize<'de>,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T, ID, Deser> Deserializer<SecureShare<T, ID>> for SecureShareDeserializer<T, Deser>
    where + ID: Id + Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de, T, ID> Deserialize<'de> for SecureShare<T, ID>
    where + T: Display + SecureShareContent + Deserialize<'de>, + ID: Id + Deserialize<'de>,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T, ID, Deser> Deserializer<SecureShare<T, ID>> for SecureShareDeserializer<T, Deser>
    where T: Display + SecureShareContent, ID: Id, - Deser: Deserializer<T>,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + Deser: Deserializer<T>,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], SecureShare<T, ID>, E>

    @@ -86,20 +86,20 @@ assert_eq!(secured.id, deserialized.id);
    source§

    impl<T, ID> Display for SecureShare<T, ID>
    where T: Display + SecureShareContent, - ID: Id,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&SecureShare<BlockHeader, BlockId>> for DenunciationPrecursor

    source§

    fn from(value: &SecuredHeader) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SecureShare<Endorsement, EndorsementId>> for DenunciationPrecursor

    source§

    fn from(value: &SecureShareEndorsement) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<Block, BlockId>> for SignedBlock

    source§

    fn from(value: SecureShareBlock) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<BlockHeader, BlockId>> for SignedBlockHeader

    source§

    fn from(value: SecuredHeader) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<Endorsement, EndorsementId>> for SignedEndorsement

    source§

    fn from(value: SecureShareEndorsement) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<Operation, OperationId>> for SignedOperation

    source§

    fn from(value: SecureShareOperation) -> Self

    Converts to this type from the input type.
    source§

    impl<T, ID> PartialEq for SecureShare<T, ID>
    where + ID: Id,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&SecureShare<BlockHeader, BlockId>> for DenunciationPrecursor

    source§

    fn from(value: &SecuredHeader) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SecureShare<Endorsement, EndorsementId>> for DenunciationPrecursor

    source§

    fn from(value: &SecureShareEndorsement) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<Block, BlockId>> for SignedBlock

    source§

    fn from(value: SecureShareBlock) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<BlockHeader, BlockId>> for SignedBlockHeader

    source§

    fn from(value: SecuredHeader) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<Endorsement, EndorsementId>> for SignedEndorsement

    source§

    fn from(value: SecureShareEndorsement) -> Self

    Converts to this type from the input type.
    source§

    impl From<SecureShare<Operation, OperationId>> for SignedOperation

    source§

    fn from(value: SecureShareOperation) -> Self

    Converts to this type from the input type.
    source§

    impl<T, ID> PartialEq for SecureShare<T, ID>

    source§

    fn eq(&self, other: &SecureShare<T, ID>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T, ID> Serialize for SecureShare<T, ID>

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T, ID> Serializer<SecureShare<T, ID>> for SecureShareSerializer
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl<T, ID> Serialize for SecureShare<T, ID>

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T, ID> Serializer<SecureShare<T, ID>> for SecureShareSerializer
    where T: Display + SecureShareContent, - ID: Id,

    source§

    fn serialize( &self, value: &SecureShare<T, ID>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T, ID> Eq for SecureShare<T, ID>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T, ID> Eq for SecureShare<T, ID>
    where T: Display + SecureShareContent + Eq, ID: Id + Eq,

    source§

    impl<T, ID> StructuralPartialEq for SecureShare<T, ID>
    where T: Display + SecureShareContent, @@ -220,5 +220,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/secure_share/struct.SecureShareDeserializer.html b/massa_models/secure_share/struct.SecureShareDeserializer.html index 41a0c29985d..1ac06e8e292 100644 --- a/massa_models/secure_share/struct.SecureShareDeserializer.html +++ b/massa_models/secure_share/struct.SecureShareDeserializer.html @@ -1,6 +1,6 @@ SecureShareDeserializer in massa_models::secure_share - Rust
    pub struct SecureShareDeserializer<T, Deser>
    where T: Display + SecureShareContent, - Deser: Deserializer<T>,
    { + Deser: Deserializer<T>,
    { signature_deserializer: SignatureDeserializer, public_key_deserializer: PublicKeyDeserializer, content_deserializer: Deser, @@ -9,12 +9,12 @@ }
    Expand description

    Deserializer for SecureShare structure

    Fields§

    §signature_deserializer: SignatureDeserializer§public_key_deserializer: PublicKeyDeserializer§content_deserializer: Deser§chain_id: u64§marker_t: PhantomData<T>

    Implementations§

    source§

    impl<T, Deser> SecureShareDeserializer<T, Deser>
    where T: Display + SecureShareContent, - Deser: Deserializer<T>,

    source

    pub const fn new(content_deserializer: Deser, chain_id: u64) -> Self

    Creates a new SecureShareDeserializer

    + Deser: Deserializer<T>,
    source

    pub const fn new(content_deserializer: Deser, chain_id: u64) -> Self

    Creates a new SecureShareDeserializer

    §Arguments
    • content_deserializer - Deserializer for the content
    -
    source

    pub fn deserialize_with<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, ID: Id, Ser: Serializer<T>>( +

    source

    pub fn deserialize_with<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, ID: Id, Ser: Serializer<T>>( &self, content_serializer: &Ser, buffer: &'a [u8], @@ -30,10 +30,10 @@

    §Arguments:<
    §Returns:

    A rest (data left over from deserialization), an instance of T, and the data enabling signature verification

    -

    Trait Implementations§

    source§

    impl<T, ID, Deser> Deserializer<SecureShare<T, ID>> for SecureShareDeserializer<T, Deser>
    where +

    Trait Implementations§

    source§

    impl<T, ID, Deser> Deserializer<SecureShare<T, ID>> for SecureShareDeserializer<T, Deser>
    where T: Display + SecureShareContent, ID: Id, - Deser: Deserializer<T>,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + Deser: Deserializer<T>,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], SecureShare<T, ID>, E>

    diff --git a/massa_models/secure_share/struct.SecureShareSerializer.html b/massa_models/secure_share/struct.SecureShareSerializer.html index 9be6b4c86cc..1669c28f0de 100644 --- a/massa_models/secure_share/struct.SecureShareSerializer.html +++ b/massa_models/secure_share/struct.SecureShareSerializer.html @@ -5,8 +5,8 @@ content_serializer: &Ser, value: &SecureShare<T, ID>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>
    where - Ser: Serializer<T>, +) -> Result<(), SerializeError>
    where + Ser: Serializer<T>, T: Display + SecureShareContent, ID: Id,

    This method is used to serialize a SecureShare structure and use a custom serializer instead of using the serialized form of the content stored in serialized_data. @@ -17,13 +17,13 @@

    §Arguments:
  • value: SecureShare structure to be serialized
  • buffer: buffer of serialized data to be extend
  • -

    Trait Implementations§

    source§

    impl Clone for SecureShareSerializer

    source§

    fn clone(&self) -> SecureShareSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for SecureShareSerializer

    source§

    fn default() -> SecureShareSerializer

    Returns the “default value” for a type. Read more
    source§

    impl<T, ID> Serializer<SecureShare<T, ID>> for SecureShareSerializer
    where +

    Trait Implementations§

    source§

    impl Clone for SecureShareSerializer

    source§

    fn clone(&self) -> SecureShareSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for SecureShareSerializer

    source§

    fn default() -> SecureShareSerializer

    Returns the “default value” for a type. Read more
    source§

    impl<T, ID> Serializer<SecureShare<T, ID>> for SecureShareSerializer
    where T: Display + SecureShareContent, - ID: Id,

    source§

    fn serialize( &self, value: &SecureShare<T, ID>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/secure_share/trait.SecureShareContent.html b/massa_models/secure_share/trait.SecureShareContent.html index b987232d8c3..dcbc1f62f44 100644 --- a/massa_models/secure_share/trait.SecureShareContent.html +++ b/massa_models/secure_share/trait.SecureShareContent.html @@ -12,7 +12,7 @@ content_hash: &Hash, signature: &Signature, ) -> Result<(), ModelsError> { ... } - fn new_verifiable<Ser: Serializer<Self>, ID: Id>( + fn new_verifiable<Ser: Serializer<Self>, ID: Id>( self, content_serializer: Ser, keypair: &KeyPair, @@ -34,9 +34,9 @@ creator_public_key: &PublicKey, serialized_content: &[u8], buffer: &mut Vec<u8>, - ) -> Result<(), SerializeError> { ... } - fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( - content_serializer: Option<&dyn Serializer<Self>>, + ) -> Result<(), SerializeError> { ... } + fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( + content_serializer: Option<&dyn Serializer<Self>>, signature_deserializer: &SignatureDeserializer, creator_public_key_deserializer: &PublicKeyDeserializer, content_deserializer: &Deser, @@ -55,7 +55,7 @@ content_hash: &Hash, signature: &Signature, ) -> Result<(), ModelsError>

    verify signature

    -
    source

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( +

    source

    fn new_verifiable<Ser: Serializer<Self>, ID: Id>( self, content_serializer: Ser, keypair: &KeyPair, @@ -78,9 +78,9 @@ creator_public_key: &PublicKey, serialized_content: &[u8], buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize the secured structure

    -
    source

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( - content_serializer: Option<&dyn Serializer<Self>>, +) -> Result<(), SerializeError>

    Serialize the secured structure

    +
    source

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>, Deser: Deserializer<Self>, ID: Id>( + content_serializer: Option<&dyn Serializer<Self>>, signature_deserializer: &SignatureDeserializer, creator_public_key_deserializer: &PublicKeyDeserializer, content_deserializer: &Deser, diff --git a/massa_models/serialization/struct.BitVecDeserializer.html b/massa_models/serialization/struct.BitVecDeserializer.html index 9283df03ada..586b1734d82 100644 --- a/massa_models/serialization/struct.BitVecDeserializer.html +++ b/massa_models/serialization/struct.BitVecDeserializer.html @@ -1,11 +1,11 @@ BitVecDeserializer in massa_models::serialization - Rust

    Struct massa_models::serialization::BitVecDeserializer

    source ·
    pub struct BitVecDeserializer {
    -    u32_deserializer: U32VarIntDeserializer,
    +    u32_deserializer: U32VarIntDeserializer,
     }
    Expand description

    BitVec<u8> Deserializer

    -

    Fields§

    §u32_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl BitVecDeserializer

    source

    pub fn new() -> BitVecDeserializer

    Create a new BitVec<u8> Deserializer

    -

    Trait Implementations§

    source§

    impl Clone for BitVecDeserializer

    source§

    fn clone(&self) -> BitVecDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BitVecDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<BitVec<u8>> for BitVecDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §u32_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl BitVecDeserializer

    source

    pub fn new() -> BitVecDeserializer

    Create a new BitVec<u8> Deserializer

    +

    Trait Implementations§

    source§

    impl Clone for BitVecDeserializer

    source§

    fn clone(&self) -> BitVecDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BitVecDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<BitVec<u8>> for BitVecDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], BitVec<u8>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> IResult<&'a [u8], BitVec<u8>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/serialization/struct.BitVecSerializer.html b/massa_models/serialization/struct.BitVecSerializer.html index 334d1e551a0..98281e690bf 100644 --- a/massa_models/serialization/struct.BitVecSerializer.html +++ b/massa_models/serialization/struct.BitVecSerializer.html @@ -1,12 +1,12 @@ BitVecSerializer in massa_models::serialization - Rust

    Struct massa_models::serialization::BitVecSerializer

    source ·
    pub struct BitVecSerializer {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
     }
    Expand description

    BitVec<u8> Serializer

    -

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl BitVecSerializer

    source

    pub fn new() -> BitVecSerializer

    Create a new BitVec<u8> Serializer

    -

    Trait Implementations§

    source§

    impl Clone for BitVecSerializer

    source§

    fn clone(&self) -> BitVecSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BitVecSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BitVec<u8>> for BitVecSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl BitVecSerializer

    source

    pub fn new() -> BitVecSerializer

    Create a new BitVec<u8> Serializer

    +

    Trait Implementations§

    source§

    impl Clone for BitVecSerializer

    source§

    fn clone(&self) -> BitVecSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for BitVecSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<BitVec<u8>> for BitVecSerializer

    source§

    fn serialize( &self, value: &BitVec<u8>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_models/serialization/struct.IpAddrDeserializer.html b/massa_models/serialization/struct.IpAddrDeserializer.html index 004ac798ecf..42d91021394 100644 --- a/massa_models/serialization/struct.IpAddrDeserializer.html +++ b/massa_models/serialization/struct.IpAddrDeserializer.html @@ -1,6 +1,6 @@ IpAddrDeserializer in massa_models::serialization - Rust

    Struct massa_models::serialization::IpAddrDeserializer

    source ·
    pub struct IpAddrDeserializer;
    Expand description

    Deserializer for IpAddr

    Implementations§

    source§

    impl IpAddrDeserializer

    source

    pub const fn new() -> Self

    Creates a IpAddrDeserializer

    -

    Trait Implementations§

    source§

    impl Clone for IpAddrDeserializer

    source§

    fn clone(&self) -> IpAddrDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for IpAddrDeserializer

    source§

    fn default() -> IpAddrDeserializer

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<IpAddr> for IpAddrDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for IpAddrDeserializer

    source§

    fn clone(&self) -> IpAddrDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for IpAddrDeserializer

    source§

    fn default() -> IpAddrDeserializer

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<IpAddr> for IpAddrDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], IpAddr, E>

    diff --git a/massa_models/serialization/struct.IpAddrSerializer.html b/massa_models/serialization/struct.IpAddrSerializer.html index e1d91977f71..0382a4011a4 100644 --- a/massa_models/serialization/struct.IpAddrSerializer.html +++ b/massa_models/serialization/struct.IpAddrSerializer.html @@ -1,10 +1,10 @@ IpAddrSerializer in massa_models::serialization - Rust

    Struct massa_models::serialization::IpAddrSerializer

    source ·
    pub struct IpAddrSerializer;
    Expand description

    Serializer for IpAddr

    Implementations§

    source§

    impl IpAddrSerializer

    source

    pub const fn new() -> Self

    Creates a IpAddrSerializer

    -

    Trait Implementations§

    source§

    impl Clone for IpAddrSerializer

    source§

    fn clone(&self) -> IpAddrSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for IpAddrSerializer

    source§

    fn default() -> IpAddrSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<IpAddr> for IpAddrSerializer

    Trait Implementations§

    source§

    impl Clone for IpAddrSerializer

    source§

    fn clone(&self) -> IpAddrSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for IpAddrSerializer

    source§

    fn default() -> IpAddrSerializer

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<IpAddr> for IpAddrSerializer

    source§

    fn serialize( &self, value: &IpAddr, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    +) -> Result<(), SerializeError>
    use massa_models::{address::Address, amount::Amount, slot::Slot, serialization::IpAddrSerializer};
     use massa_serialization::Serializer;
     use std::str::FromStr;
    diff --git a/massa_models/serialization/struct.PreHashSetDeserializer.html b/massa_models/serialization/struct.PreHashSetDeserializer.html
    index 3ded31940b1..0b81609bee1 100644
    --- a/massa_models/serialization/struct.PreHashSetDeserializer.html
    +++ b/massa_models/serialization/struct.PreHashSetDeserializer.html
    @@ -1,22 +1,22 @@
     PreHashSetDeserializer in massa_models::serialization - Rust
    pub struct PreHashSetDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone,
    { - varint_u64_deserializer: U64VarIntDeserializer, + ST: Deserializer<T> + Clone,
    { + varint_u64_deserializer: U64VarIntDeserializer, data_deserializer: ST, phantom_t: PhantomData<T>, }
    Expand description

    Basic PreHashSet<_> deserializer

    -

    Fields§

    §varint_u64_deserializer: U64VarIntDeserializer§data_deserializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> PreHashSetDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone,

    source

    pub const fn new( +

    Fields§

    §varint_u64_deserializer: U64VarIntDeserializer§data_deserializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> PreHashSetDeserializer<T, ST>
    where + ST: Deserializer<T> + Clone,

    source

    pub const fn new( data_deserializer: ST, min_length: Bound<u64>, max_length: Bound<u64>, ) -> Self

    Creates a new PreHashSetDeserializer

    Trait Implementations§

    source§

    impl<T: Clone, ST> Clone for PreHashSetDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone + Clone,

    source§

    fn clone(&self) -> PreHashSetDeserializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Deserializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone, - T: PreHashed + Eq + Hash,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + ST: Deserializer<T> + Clone + Clone,

    source§

    fn clone(&self) -> PreHashSetDeserializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Deserializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetDeserializer<T, ST>
    where + ST: Deserializer<T> + Clone, + T: PreHashed + Eq + Hash,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], PreHashSet<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for PreHashSetDeserializer<T, ST>
    where +) -> IResult<&'a [u8], PreHashSet<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for PreHashSetDeserializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for PreHashSetDeserializer<T, ST>

    §

    impl<T, ST> Send for PreHashSetDeserializer<T, ST>
    where diff --git a/massa_models/serialization/struct.PreHashSetSerializer.html b/massa_models/serialization/struct.PreHashSetSerializer.html index 498969b761e..56940314150 100644 --- a/massa_models/serialization/struct.PreHashSetSerializer.html +++ b/massa_models/serialization/struct.PreHashSetSerializer.html @@ -1,19 +1,19 @@ PreHashSetSerializer in massa_models::serialization - Rust

    Struct massa_models::serialization::PreHashSetSerializer

    source ·
    pub struct PreHashSetSerializer<T, ST>
    where - ST: Serializer<T>,
    { - len_serializer: U64VarIntSerializer, + ST: Serializer<T>,
    { + len_serializer: U64VarIntSerializer, data_serializer: ST, phantom_t: PhantomData<T>, }
    Expand description

    Basic PreHashSet<_> serializer

    -

    Fields§

    §len_serializer: U64VarIntSerializer§data_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> PreHashSetSerializer<T, ST>
    where - ST: Serializer<T>,

    source

    pub fn new(data_serializer: ST) -> Self

    Creates a new PreHashSetSerializer

    +

    Fields§

    §len_serializer: U64VarIntSerializer§data_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> PreHashSetSerializer<T, ST>
    where + ST: Serializer<T>,

    source

    pub fn new(data_serializer: ST) -> Self

    Creates a new PreHashSetSerializer

    Trait Implementations§

    source§

    impl<T: Clone, ST> Clone for PreHashSetSerializer<T, ST>
    where - ST: Serializer<T> + Clone,

    source§

    fn clone(&self) -> PreHashSetSerializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Serializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetSerializer<T, ST>
    where - ST: Serializer<T>, - T: PreHashed,

    source§

    fn clone(&self) -> PreHashSetSerializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Serializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetSerializer<T, ST>
    where + ST: Serializer<T>, + T: PreHashed,

    source§

    fn serialize( &self, value: &PreHashSet<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for PreHashSetSerializer<T, ST>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for PreHashSetSerializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for PreHashSetSerializer<T, ST>

    §

    impl<T, ST> Send for PreHashSetSerializer<T, ST>
    where diff --git a/massa_models/serialization/struct.StringDeserializer.html b/massa_models/serialization/struct.StringDeserializer.html index fac7b1b5999..5ec2e67c761 100644 --- a/massa_models/serialization/struct.StringDeserializer.html +++ b/massa_models/serialization/struct.StringDeserializer.html @@ -1,24 +1,24 @@ StringDeserializer in massa_models::serialization - Rust

    Struct massa_models::serialization::StringDeserializer

    source ·
    pub struct StringDeserializer<DL, L>
    where - DL: Deserializer<L>, + DL: Deserializer<L>, L: TryFrom<usize> + ToUsize,
    { length_deserializer: DL, marker_l: PhantomData<L>, }
    Expand description

    Deserializer for String with generic deserializer for the size of the string

    Fields§

    §length_deserializer: DL§marker_l: PhantomData<L>

    Implementations§

    source§

    impl<DL, L> StringDeserializer<DL, L>
    where - DL: Deserializer<L>, + DL: Deserializer<L>, L: TryFrom<usize> + ToUsize,

    source

    pub const fn new(length_deserializer: DL) -> Self

    Creates a StringDeserializer.

    §Arguments:
    • length_deserializer: Serializer for the length of the string (should be one of UXXVarIntSerializer)

    Trait Implementations§

    source§

    impl<DL, L> Clone for StringDeserializer<DL, L>
    where - DL: Deserializer<L> + Clone, - L: TryFrom<usize> + ToUsize + Clone,

    source§

    fn clone(&self) -> StringDeserializer<DL, L>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<DL, L> Deserializer<String> for StringDeserializer<DL, L>
    where - DL: Deserializer<L>, - L: TryFrom<usize> + ToUsize,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + DL: Deserializer<L> + Clone, + L: TryFrom<usize> + ToUsize + Clone,

    source§

    fn clone(&self) -> StringDeserializer<DL, L>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<DL, L> Deserializer<String> for StringDeserializer<DL, L>
    where + DL: Deserializer<L>, + L: TryFrom<usize> + ToUsize,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], String, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<DL, L> Freeze for StringDeserializer<DL, L>
    where +) -> IResult<&'a [u8], String, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<DL, L> Freeze for StringDeserializer<DL, L>
    where DL: Freeze,

    §

    impl<DL, L> RefUnwindSafe for StringDeserializer<DL, L>

    §

    impl<DL, L> Send for StringDeserializer<DL, L>
    where diff --git a/massa_models/serialization/struct.StringSerializer.html b/massa_models/serialization/struct.StringSerializer.html index 812fae0b16c..932c297a684 100644 --- a/massa_models/serialization/struct.StringSerializer.html +++ b/massa_models/serialization/struct.StringSerializer.html @@ -1,25 +1,25 @@ StringSerializer in massa_models::serialization - Rust

    Struct massa_models::serialization::StringSerializer

    source ·
    pub struct StringSerializer<SL, L>
    where - SL: Serializer<L>, + SL: Serializer<L>, L: TryFrom<usize>,
    { length_serializer: SL, marker_l: PhantomData<L>, }
    Expand description

    Serializer for String with generic serializer for the size of the string

    Fields§

    §length_serializer: SL§marker_l: PhantomData<L>

    Implementations§

    source§

    impl<SL, L> StringSerializer<SL, L>
    where - SL: Serializer<L>, + SL: Serializer<L>, L: TryFrom<usize>,

    source

    pub fn new(length_serializer: SL) -> Self

    Creates a StringSerializer.

    §Arguments:
    • length_serializer: Serializer for the length of the string (should be one of UXXVarIntSerializer)

    Trait Implementations§

    source§

    impl<SL, L> Clone for StringSerializer<SL, L>
    where - SL: Serializer<L> + Clone, - L: TryFrom<usize> + Clone,

    source§

    fn clone(&self) -> StringSerializer<SL, L>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<SL, L> Serializer<String> for StringSerializer<SL, L>
    where - SL: Serializer<L>, - L: TryFrom<usize>,

    source§

    fn clone(&self) -> StringSerializer<SL, L>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<SL, L> Serializer<String> for StringSerializer<SL, L>
    where + SL: Serializer<L>, + L: TryFrom<usize>,

    source§

    fn serialize( &self, value: &String, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<SL, L> Freeze for StringSerializer<SL, L>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<SL, L> Freeze for StringSerializer<SL, L>
    where SL: Freeze,

    §

    impl<SL, L> RefUnwindSafe for StringSerializer<SL, L>

    §

    impl<SL, L> Send for StringSerializer<SL, L>
    where diff --git a/massa_models/serialization/struct.VecDeserializer.html b/massa_models/serialization/struct.VecDeserializer.html index 2a07c043729..98d6762327d 100644 --- a/massa_models/serialization/struct.VecDeserializer.html +++ b/massa_models/serialization/struct.VecDeserializer.html @@ -1,21 +1,21 @@ VecDeserializer in massa_models::serialization - Rust

    Struct massa_models::serialization::VecDeserializer

    source ·
    pub struct VecDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone,
    { - varint_u64_deserializer: U64VarIntDeserializer, + ST: Deserializer<T> + Clone,
    { + varint_u64_deserializer: U64VarIntDeserializer, data_deserializer: ST, phantom_t: PhantomData<T>, }
    Expand description

    Basic Vec<_> deserializer

    -

    Fields§

    §varint_u64_deserializer: U64VarIntDeserializer§data_deserializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> VecDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone,

    source

    pub const fn new( +

    Fields§

    §varint_u64_deserializer: U64VarIntDeserializer§data_deserializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> VecDeserializer<T, ST>
    where + ST: Deserializer<T> + Clone,

    source

    pub const fn new( data_deserializer: ST, min_length: Bound<u64>, max_length: Bound<u64>, ) -> Self

    Creates a new VecDeserializer

    Trait Implementations§

    source§

    impl<T: Clone, ST> Clone for VecDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone + Clone,

    source§

    fn clone(&self) -> VecDeserializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Deserializer<Vec<T>> for VecDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( + ST: Deserializer<T> + Clone + Clone,

    source§

    fn clone(&self) -> VecDeserializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Deserializer<Vec<T>> for VecDeserializer<T, ST>
    where + ST: Deserializer<T> + Clone,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], Vec<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for VecDeserializer<T, ST>
    where +) -> IResult<&'a [u8], Vec<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for VecDeserializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for VecDeserializer<T, ST>

    §

    impl<T, ST> Send for VecDeserializer<T, ST>
    where diff --git a/massa_models/serialization/struct.VecSerializer.html b/massa_models/serialization/struct.VecSerializer.html index bfcb9fd7465..762f95c0008 100644 --- a/massa_models/serialization/struct.VecSerializer.html +++ b/massa_models/serialization/struct.VecSerializer.html @@ -1,18 +1,18 @@ VecSerializer in massa_models::serialization - Rust

    Struct massa_models::serialization::VecSerializer

    source ·
    pub struct VecSerializer<T, ST>
    where - ST: Serializer<T>,
    { - len_serializer: U64VarIntSerializer, + ST: Serializer<T>,
    { + len_serializer: U64VarIntSerializer, data_serializer: ST, phantom_t: PhantomData<T>, }
    Expand description

    Basic Vec<_> serializer

    -

    Fields§

    §len_serializer: U64VarIntSerializer§data_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> VecSerializer<T, ST>
    where - ST: Serializer<T>,

    source

    pub fn new(data_serializer: ST) -> Self

    Creates a new VecSerializer

    +

    Fields§

    §len_serializer: U64VarIntSerializer§data_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> VecSerializer<T, ST>
    where + ST: Serializer<T>,

    source

    pub fn new(data_serializer: ST) -> Self

    Creates a new VecSerializer

    Trait Implementations§

    source§

    impl<T: Clone, ST> Clone for VecSerializer<T, ST>
    where - ST: Serializer<T> + Clone,

    source§

    fn clone(&self) -> VecSerializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Serializer<Vec<T>> for VecSerializer<T, ST>
    where - ST: Serializer<T>,

    source§

    fn clone(&self) -> VecSerializer<T, ST>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T, ST> Serializer<Vec<T>> for VecSerializer<T, ST>
    where + ST: Serializer<T>,

    source§

    fn serialize( &self, value: &Vec<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for VecSerializer<T, ST>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for VecSerializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for VecSerializer<T, ST>

    §

    impl<T, ST> Send for VecSerializer<T, ST>
    where diff --git a/massa_models/serialization/struct.VecU8Deserializer.html b/massa_models/serialization/struct.VecU8Deserializer.html index 158cfcd03e4..adaaae65456 100644 --- a/massa_models/serialization/struct.VecU8Deserializer.html +++ b/massa_models/serialization/struct.VecU8Deserializer.html @@ -1,8 +1,8 @@ VecU8Deserializer in massa_models::serialization - Rust

    Struct massa_models::serialization::VecU8Deserializer

    source ·
    pub struct VecU8Deserializer {
    -    varint_u64_deserializer: U64VarIntDeserializer,
    +    varint_u64_deserializer: U64VarIntDeserializer,
     }
    Expand description

    Basic Vec<u8> deserializer

    -

    Fields§

    §varint_u64_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl VecU8Deserializer

    source

    pub const fn new(min_length: Bound<u64>, max_length: Bound<u64>) -> Self

    Creates a new VecU8Deserializer

    -

    Trait Implementations§

    source§

    impl Clone for VecU8Deserializer

    source§

    fn clone(&self) -> VecU8Deserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Vec<u8>> for VecU8Deserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §varint_u64_deserializer: U64VarIntDeserializer

    Implementations§

    source§

    impl VecU8Deserializer

    source

    pub const fn new(min_length: Bound<u64>, max_length: Bound<u64>) -> Self

    Creates a new VecU8Deserializer

    +

    Trait Implementations§

    source§

    impl Clone for VecU8Deserializer

    source§

    fn clone(&self) -> VecU8Deserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Vec<u8>> for VecU8Deserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Vec<u8>, E>

    diff --git a/massa_models/serialization/struct.VecU8Serializer.html b/massa_models/serialization/struct.VecU8Serializer.html index 2c87ab40cc7..ae4e3868f02 100644 --- a/massa_models/serialization/struct.VecU8Serializer.html +++ b/massa_models/serialization/struct.VecU8Serializer.html @@ -1,12 +1,12 @@ VecU8Serializer in massa_models::serialization - Rust

    Struct massa_models::serialization::VecU8Serializer

    source ·
    pub struct VecU8Serializer {
    -    len_serializer: U64VarIntSerializer,
    +    len_serializer: U64VarIntSerializer,
     }
    Expand description

    Basic Vec<u8> serializer

    -

    Fields§

    §len_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl VecU8Serializer

    source

    pub fn new() -> Self

    Creates a new VecU8Serializer

    -

    Trait Implementations§

    source§

    impl Clone for VecU8Serializer

    source§

    fn clone(&self) -> VecU8Serializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for VecU8Serializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Vec<u8>> for VecU8Serializer

    Fields§

    §len_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl VecU8Serializer

    source

    pub fn new() -> Self

    Creates a new VecU8Serializer

    +

    Trait Implementations§

    source§

    impl Clone for VecU8Serializer

    source§

    fn clone(&self) -> VecU8Serializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for VecU8Serializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Vec<u8>> for VecU8Serializer

    source§

    fn serialize( &self, value: &Vec<u8>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    use std::ops::Bound::Included;
     use massa_serialization::Serializer;
     use massa_models::serialization::VecU8Serializer;
    diff --git a/massa_models/slot/struct.IndexedSlot.html b/massa_models/slot/struct.IndexedSlot.html
    index c0cf29f851e..dff78649448 100644
    --- a/massa_models/slot/struct.IndexedSlot.html
    +++ b/massa_models/slot/struct.IndexedSlot.html
    @@ -4,13 +4,13 @@
     }
    Expand description

    When an address is drawn to create an endorsement it is selected for a specific index

    Fields§

    §slot: Slot

    slot

    §index: usize

    endorsement index in the slot

    -

    Trait Implementations§

    source§

    impl Clone for IndexedSlot

    source§

    fn clone(&self) -> IndexedSlot

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for IndexedSlot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for IndexedSlot

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for IndexedSlot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<IndexedSlot> for IndexedSlot

    source§

    fn from(s: IndexedSlot) -> Self

    Converts to this type from the input type.
    source§

    impl Hash for IndexedSlot

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +

    Trait Implementations§

    source§

    impl Clone for IndexedSlot

    source§

    fn clone(&self) -> IndexedSlot

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for IndexedSlot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for IndexedSlot

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for IndexedSlot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<IndexedSlot> for IndexedSlot

    source§

    fn from(s: IndexedSlot) -> Self

    Converts to this type from the input type.
    source§

    impl Hash for IndexedSlot

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl PartialEq for IndexedSlot

    source§

    fn eq(&self, other: &IndexedSlot) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for IndexedSlot

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for IndexedSlot

    source§

    impl StructuralPartialEq for IndexedSlot

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for IndexedSlot

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for IndexedSlot

    source§

    impl StructuralPartialEq for IndexedSlot

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -118,5 +118,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/slot/struct.Slot.html b/massa_models/slot/struct.Slot.html index 647cb70f9c8..1311592aaa6 100644 --- a/massa_models/slot/struct.Slot.html +++ b/massa_models/slot/struct.Slot.html @@ -55,8 +55,8 @@
    §Example
    §Example
    let slot = Slot::new(10,3);
     assert_eq!(slot.skip(62, 32).unwrap(), Slot::new(12, 1));
    -

    Trait Implementations§

    source§

    impl Clone for Slot

    source§

    fn clone(&self) -> Slot

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Slot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Slot

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Slot> for SlotDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Slot

    source§

    fn clone(&self) -> Slot

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Slot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Slot

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Slot> for SlotDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Slot, E>

    @@ -72,7 +72,7 @@
    §Example
    let (rest, slot_deser) = deserializer.deserialize::<DeserializeError>(&serialized).unwrap(); assert!(rest.is_empty()); assert_eq!(slot, slot_deser);
    -
    source§

    impl Display for Slot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Slot> for Slot

    source§

    fn from(s: Slot) -> Self

    Converts to this type from the input type.
    source§

    impl From<Slot> for Slot

    source§

    fn from(s: Slot) -> Self

    Converts to this type from the input type.
    source§

    impl FromStr for Slot

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for Slot

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +

    source§

    impl Display for Slot

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Slot> for Slot

    source§

    fn from(s: Slot) -> Self

    Converts to this type from the input type.
    source§

    impl From<Slot> for Slot

    source§

    fn from(s: Slot) -> Self

    Converts to this type from the input type.
    source§

    impl FromStr for Slot

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl Hash for Slot

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for Slot

    source§

    fn cmp(&self, other: &Self) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where @@ -81,12 +81,12 @@
    §Example
    by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for Slot

    source§

    fn partial_cmp(&self, other: &Self) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for Slot

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Slot> for SlotSerializer

    source§

    impl Serialize for Slot

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Slot> for SlotSerializer

    source§

    fn serialize( &self, value: &Slot, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    +) -> Result<(), SerializeError>
    use std::ops::Bound::Included;
     use massa_serialization::Serializer;
     use massa_models::slot::{Slot, SlotSerializer};
    @@ -206,7 +206,7 @@ 
    §Example
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_models/slot/struct.SlotDeserializer.html b/massa_models/slot/struct.SlotDeserializer.html index 736bed82e63..d9213fbf447 100644 --- a/massa_models/slot/struct.SlotDeserializer.html +++ b/massa_models/slot/struct.SlotDeserializer.html @@ -1,12 +1,12 @@ SlotDeserializer in massa_models::slot - Rust

    Struct massa_models::slot::SlotDeserializer

    source ·
    pub struct SlotDeserializer {
    -    period_deserializer: U64VarIntDeserializer,
    +    period_deserializer: U64VarIntDeserializer,
         range_thread: (Bound<u8>, Bound<u8>),
     }
    Expand description

    Basic Slot Deserializer

    -

    Fields§

    §period_deserializer: U64VarIntDeserializer§range_thread: (Bound<u8>, Bound<u8>)

    Implementations§

    source§

    impl SlotDeserializer

    source

    pub const fn new( +

    Fields§

    §period_deserializer: U64VarIntDeserializer§range_thread: (Bound<u8>, Bound<u8>)

    Implementations§

    source§

    impl SlotDeserializer

    source

    pub const fn new( range_period: (Bound<u64>, Bound<u64>), range_thread: (Bound<u8>, Bound<u8>), ) -> Self

    Creates a SlotDeserializer

    -

    Trait Implementations§

    source§

    impl Clone for SlotDeserializer

    source§

    fn clone(&self) -> SlotDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Slot> for SlotDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for SlotDeserializer

    source§

    fn clone(&self) -> SlotDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Slot> for SlotDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Slot, E>

    diff --git a/massa_models/slot/struct.SlotSerializer.html b/massa_models/slot/struct.SlotSerializer.html index e640a899e2c..4e235f9db9e 100644 --- a/massa_models/slot/struct.SlotSerializer.html +++ b/massa_models/slot/struct.SlotSerializer.html @@ -1,12 +1,12 @@ SlotSerializer in massa_models::slot - Rust

    Struct massa_models::slot::SlotSerializer

    source ·
    pub struct SlotSerializer {
    -    u64_serializer: U64VarIntSerializer,
    +    u64_serializer: U64VarIntSerializer,
     }
    Expand description

    Basic serializer for Slot

    -

    Fields§

    §u64_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl SlotSerializer

    source

    pub const fn new() -> Self

    Creates a SlotSerializer

    -

    Trait Implementations§

    source§

    impl Clone for SlotSerializer

    source§

    fn clone(&self) -> SlotSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for SlotSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Slot> for SlotSerializer

    Fields§

    §u64_serializer: U64VarIntSerializer

    Implementations§

    source§

    impl SlotSerializer

    source

    pub const fn new() -> Self

    Creates a SlotSerializer

    +

    Trait Implementations§

    source§

    impl Clone for SlotSerializer

    source§

    fn clone(&self) -> SlotSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for SlotSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Slot> for SlotSerializer

    source§

    fn serialize( &self, value: &Slot, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    use std::ops::Bound::Included;
     use massa_serialization::Serializer;
     use massa_models::slot::{Slot, SlotSerializer};
    diff --git a/massa_models/stats/struct.ConsensusStats.html b/massa_models/stats/struct.ConsensusStats.html
    index 4b9e10b22a7..bbc2858c292 100644
    --- a/massa_models/stats/struct.ConsensusStats.html
    +++ b/massa_models/stats/struct.ConsensusStats.html
    @@ -10,9 +10,9 @@
     
    §final_block_count: u64

    number of final blocks

    §stale_block_count: u64

    number of stale blocks in memory

    §clique_count: u64

    number of actives cliques

    -

    Trait Implementations§

    source§

    impl Clone for ConsensusStats

    source§

    fn clone(&self) -> ConsensusStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for ConsensusStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ConsensusStats> for ConsensusStats

    source§

    fn from(value: ConsensusStats) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ConsensusStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ConsensusStats

    source§

    fn clone(&self) -> ConsensusStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for ConsensusStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ConsensusStats> for ConsensusStats

    source§

    fn from(value: ConsensusStats) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ConsensusStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -111,5 +111,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/stats/struct.ExecutionStats.html b/massa_models/stats/struct.ExecutionStats.html index d8b564c16d3..4701236e201 100644 --- a/massa_models/stats/struct.ExecutionStats.html +++ b/massa_models/stats/struct.ExecutionStats.html @@ -12,9 +12,9 @@ §final_executed_operations_count: usize

    number of final executed operations in the time window

    §active_cursor: Slot

    active execution cursor slot

    §final_cursor: Slot

    final execution cursor slot

    -

    Trait Implementations§

    source§

    impl Clone for ExecutionStats

    source§

    fn clone(&self) -> ExecutionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExecutionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for ExecutionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ExecutionStats> for ExecutionStats

    source§

    fn from(value: ExecutionStats) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ExecutionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ExecutionStats

    source§

    fn clone(&self) -> ExecutionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExecutionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for ExecutionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<ExecutionStats> for ExecutionStats

    source§

    fn from(value: ExecutionStats) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for ExecutionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -113,5 +113,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/stats/struct.NetworkStats.html b/massa_models/stats/struct.NetworkStats.html index 94054c87582..a66220c80b6 100644 --- a/massa_models/stats/struct.NetworkStats.html +++ b/massa_models/stats/struct.NetworkStats.html @@ -10,9 +10,9 @@ §known_peer_count: u64

    total known peers count

    §banned_peer_count: u64

    banned node count

    §active_node_count: u64

    active node count

    -

    Trait Implementations§

    source§

    impl Clone for NetworkStats

    source§

    fn clone(&self) -> NetworkStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NetworkStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for NetworkStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for NetworkStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<NetworkStats> for NetworkStats

    source§

    fn from(value: NetworkStats) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for NetworkStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for NetworkStats

    source§

    fn clone(&self) -> NetworkStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NetworkStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for NetworkStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for NetworkStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<NetworkStats> for NetworkStats

    source§

    fn from(value: NetworkStats) -> Self

    Converts to this type from the input type.
    source§

    impl Serialize for NetworkStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -111,5 +111,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/stats/struct.PoolStats.html b/massa_models/stats/struct.PoolStats.html index f0af1a62c02..02722733276 100644 --- a/massa_models/stats/struct.PoolStats.html +++ b/massa_models/stats/struct.PoolStats.html @@ -4,9 +4,9 @@ }
    Expand description

    stats produced by pool module

    Fields§

    §operation_count: u64

    number of operations in the pool

    §endorsement_count: u64

    number of endorsement in the pool

    -

    Trait Implementations§

    source§

    impl Debug for PoolStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for PoolStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for PoolStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for PoolStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for PoolStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Serialize for PoolStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where @@ -102,5 +102,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/streaming_step/enum.StreamingStep.html b/massa_models/streaming_step/enum.StreamingStep.html index 4fbe78a1f5d..10f09a2f28c 100644 --- a/massa_models/streaming_step/enum.StreamingStep.html +++ b/massa_models/streaming_step/enum.StreamingStep.html @@ -8,20 +8,20 @@
    §

    Finished(Option<T>)

    Finished step, after all the information has been streamed

    Also can keep an indicator of the last content streamed

    Implementations§

    source§

    impl<T> StreamingStep<T>

    source

    pub fn finished(&self) -> bool

    Indicates if the current step if finished or not without caring about the values

    -

    Trait Implementations§

    source§

    impl<T: Clone> Clone for StreamingStep<T>

    source§

    fn clone(&self) -> StreamingStep<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug> Debug for StreamingStep<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T, ST> Deserializer<StreamingStep<T>> for StreamingStepDeserializer<T, ST>
    where - ST: Deserializer<T>, - T: Clone,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl<T: Clone> Clone for StreamingStep<T>

    source§

    fn clone(&self) -> StreamingStep<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug> Debug for StreamingStep<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T, ST> Deserializer<StreamingStep<T>> for StreamingStepDeserializer<T, ST>
    where + ST: Deserializer<T>, + T: Clone,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], StreamingStep<T>, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq> PartialEq for StreamingStep<T>

    source§

    fn eq(&self, other: &StreamingStep<T>) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], StreamingStep<T>, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq> PartialEq for StreamingStep<T>

    source§

    fn eq(&self, other: &StreamingStep<T>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T, ST> Serializer<StreamingStep<T>> for StreamingStepSerializer<T, ST>
    where - ST: Serializer<T>, - T: Debug,

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl<T, ST> Serializer<StreamingStep<T>> for StreamingStepSerializer<T, ST>
    where + ST: Serializer<T>, + T: Debug,

    source§

    fn serialize( &self, value: &StreamingStep<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Copy> Copy for StreamingStep<T>

    source§

    impl<T: Eq> Eq for StreamingStep<T>

    source§

    impl<T> StructuralPartialEq for StreamingStep<T>

    Auto Trait Implementations§

    §

    impl<T> Freeze for StreamingStep<T>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Copy> Copy for StreamingStep<T>

    source§

    impl<T: Eq> Eq for StreamingStep<T>

    source§

    impl<T> StructuralPartialEq for StreamingStep<T>

    Auto Trait Implementations§

    §

    impl<T> Freeze for StreamingStep<T>
    where T: Freeze,

    §

    impl<T> RefUnwindSafe for StreamingStep<T>
    where T: RefUnwindSafe,

    §

    impl<T> Send for StreamingStep<T>
    where T: Send,

    §

    impl<T> Sync for StreamingStep<T>
    where diff --git a/massa_models/streaming_step/struct.StreamingStepDeserializer.html b/massa_models/streaming_step/struct.StreamingStepDeserializer.html index 477c0e15e89..3f2ad157ec8 100644 --- a/massa_models/streaming_step/struct.StreamingStepDeserializer.html +++ b/massa_models/streaming_step/struct.StreamingStepDeserializer.html @@ -1,20 +1,20 @@ StreamingStepDeserializer in massa_models::streaming_step - Rust
    pub struct StreamingStepDeserializer<T, ST>
    where - ST: Deserializer<T>, + ST: Deserializer<T>, T: Clone,
    { - u64_deser: U64VarIntDeserializer, + u64_deser: U64VarIntDeserializer, data_deser: ST, - opt_deser: OptionDeserializer<T, ST>, + opt_deser: OptionDeserializer<T, ST>, phantom_t: PhantomData<T>, }
    Expand description

    StreamingStep deserializer

    -

    Fields§

    §u64_deser: U64VarIntDeserializer§data_deser: ST§opt_deser: OptionDeserializer<T, ST>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> StreamingStepDeserializer<T, ST>
    where - ST: Deserializer<T> + Clone, +

    Fields§

    §u64_deser: U64VarIntDeserializer§data_deser: ST§opt_deser: OptionDeserializer<T, ST>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> StreamingStepDeserializer<T, ST>
    where + ST: Deserializer<T> + Clone, T: Clone,

    source

    pub fn new(data_deser: ST) -> Self

    Creates a new StreamingStep deserializer

    -

    Trait Implementations§

    source§

    impl<T, ST> Deserializer<StreamingStep<T>> for StreamingStepDeserializer<T, ST>
    where - ST: Deserializer<T>, - T: Clone,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl<T, ST> Deserializer<StreamingStep<T>> for StreamingStepDeserializer<T, ST>
    where + ST: Deserializer<T>, + T: Clone,

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], StreamingStep<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for StreamingStepDeserializer<T, ST>
    where +) -> IResult<&'a [u8], StreamingStep<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for StreamingStepDeserializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for StreamingStepDeserializer<T, ST>

    §

    impl<T, ST> Send for StreamingStepDeserializer<T, ST>
    where diff --git a/massa_models/streaming_step/struct.StreamingStepSerializer.html b/massa_models/streaming_step/struct.StreamingStepSerializer.html index 495bdc09e85..bccdb4fd4c0 100644 --- a/massa_models/streaming_step/struct.StreamingStepSerializer.html +++ b/massa_models/streaming_step/struct.StreamingStepSerializer.html @@ -1,19 +1,19 @@ StreamingStepSerializer in massa_models::streaming_step - Rust
    pub struct StreamingStepSerializer<T, ST>
    where - ST: Serializer<T>,
    { - u64_serializer: U64VarIntSerializer, + ST: Serializer<T>,
    { + u64_serializer: U64VarIntSerializer, data_serializer: ST, - option_serializer: OptionSerializer<T, ST>, + option_serializer: OptionSerializer<T, ST>, phantom_t: PhantomData<T>, }
    Expand description

    StreamingStep serializer

    -

    Fields§

    §u64_serializer: U64VarIntSerializer§data_serializer: ST§option_serializer: OptionSerializer<T, ST>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> StreamingStepSerializer<T, ST>
    where - ST: Serializer<T> + Clone,

    source

    pub fn new(data_serializer: ST) -> Self

    Creates a new StreamingStep serializer

    -

    Trait Implementations§

    source§

    impl<T, ST> Serializer<StreamingStep<T>> for StreamingStepSerializer<T, ST>
    where - ST: Serializer<T>, - T: Debug,

    Fields§

    §u64_serializer: U64VarIntSerializer§data_serializer: ST§option_serializer: OptionSerializer<T, ST>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T, ST> StreamingStepSerializer<T, ST>
    where + ST: Serializer<T> + Clone,

    source

    pub fn new(data_serializer: ST) -> Self

    Creates a new StreamingStep serializer

    +

    Trait Implementations§

    source§

    impl<T, ST> Serializer<StreamingStep<T>> for StreamingStepSerializer<T, ST>
    where + ST: Serializer<T>, + T: Debug,

    source§

    fn serialize( &self, value: &StreamingStep<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for StreamingStepSerializer<T, ST>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for StreamingStepSerializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for StreamingStepSerializer<T, ST>

    §

    impl<T, ST> Send for StreamingStepSerializer<T, ST>
    where diff --git a/massa_models/types/enum.SetOrDelete.html b/massa_models/types/enum.SetOrDelete.html index 018af42eed3..4f6c73599c1 100644 --- a/massa_models/types/enum.SetOrDelete.html +++ b/massa_models/types/enum.SetOrDelete.html @@ -5,20 +5,20 @@

    Variants§

    §

    Set(T)

    sets a new absolute value T

    §

    Delete

    deletes the value

    Trait Implementations§

    source§

    impl<T: Clone> Applicable<SetOrDelete<T>> for SetOrDelete<T>

    allows applying another SetOrDelete to the current one

    -
    source§

    fn apply(&mut self, other: Self)

    apply changes from other to mutable self
    source§

    impl<T: Clone + Clone> Clone for SetOrDelete<T>

    source§

    fn clone(&self) -> SetOrDelete<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug + Clone> Debug for SetOrDelete<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de, T> Deserialize<'de> for SetOrDelete<T>
    where - T: Deserialize<'de> + Clone,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrDelete<T>> for SetOrDeleteDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn apply(&mut self, other: Self)

    apply changes from other to mutable self
    source§

    impl<T: Clone + Clone> Clone for SetOrDelete<T>

    source§

    fn clone(&self) -> SetOrDelete<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug + Clone> Debug for SetOrDelete<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de, T> Deserialize<'de> for SetOrDelete<T>
    where + T: Deserialize<'de> + Clone,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrDelete<T>> for SetOrDeleteDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SetOrDelete<T>, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq + Clone> PartialEq for SetOrDelete<T>

    source§

    fn eq(&self, other: &SetOrDelete<T>) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], SetOrDelete<T>, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq + Clone> PartialEq for SetOrDelete<T>

    source§

    fn eq(&self, other: &SetOrDelete<T>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> Serialize for SetOrDelete<T>
    where - T: Serialize + Clone,

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrDelete<T>> for SetOrDeleteSerializer<T, ST>

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> Serialize for SetOrDelete<T>
    where + T: Serialize + Clone,

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrDelete<T>> for SetOrDeleteSerializer<T, ST>

    source§

    fn serialize( &self, value: &SetOrDelete<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Eq + Clone> Eq for SetOrDelete<T>

    source§

    impl<T: Clone> StructuralPartialEq for SetOrDelete<T>

    Auto Trait Implementations§

    §

    impl<T> Freeze for SetOrDelete<T>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Eq + Clone> Eq for SetOrDelete<T>

    source§

    impl<T: Clone> StructuralPartialEq for SetOrDelete<T>

    Auto Trait Implementations§

    §

    impl<T> Freeze for SetOrDelete<T>
    where T: Freeze,

    §

    impl<T> RefUnwindSafe for SetOrDelete<T>
    where T: RefUnwindSafe,

    §

    impl<T> Send for SetOrDelete<T>
    where T: Send,

    §

    impl<T> Sync for SetOrDelete<T>
    where @@ -128,5 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/types/enum.SetOrKeep.html b/massa_models/types/enum.SetOrKeep.html index caa3eeced97..6b2a37352c8 100644 --- a/massa_models/types/enum.SetOrKeep.html +++ b/massa_models/types/enum.SetOrKeep.html @@ -7,20 +7,20 @@

    Implementations§

    source§

    impl<T: Clone> SetOrKeep<T>

    source

    pub fn apply_to(self, val: &mut T)

    applies the current SetOrKeep to a target mutable value

    Trait Implementations§

    source§

    impl<T: Clone> Applicable<SetOrKeep<T>> for SetOrKeep<T>

    allows applying another SetOrKeep to the current one

    source§

    fn apply(&mut self, other: SetOrKeep<T>)

    apply changes from other to mutable self
    source§

    impl<T: Clone + Clone> Clone for SetOrKeep<T>

    source§

    fn clone(&self) -> SetOrKeep<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug + Clone> Debug for SetOrKeep<T>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<T: Clone> Default for SetOrKeep<T>

    By default, SetOrKeep keeps the existing value

    -
    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de, T> Deserialize<'de> for SetOrKeep<T>
    where - T: Deserialize<'de> + Clone,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrKeep<T>> for SetOrKeepDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de, T> Deserialize<'de> for SetOrKeep<T>
    where + T: Deserialize<'de> + Clone,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrKeep<T>> for SetOrKeepDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SetOrKeep<T>, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq + Clone> PartialEq for SetOrKeep<T>

    source§

    fn eq(&self, other: &SetOrKeep<T>) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], SetOrKeep<T>, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq + Clone> PartialEq for SetOrKeep<T>

    source§

    fn eq(&self, other: &SetOrKeep<T>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T> Serialize for SetOrKeep<T>
    where - T: Serialize + Clone,

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrKeep<T>> for SetOrKeepSerializer<T, ST>

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl<T> Serialize for SetOrKeep<T>
    where + T: Serialize + Clone,

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrKeep<T>> for SetOrKeepSerializer<T, ST>

    source§

    fn serialize( &self, value: &SetOrKeep<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Eq + Clone> Eq for SetOrKeep<T>

    source§

    impl<T: Clone> StructuralPartialEq for SetOrKeep<T>

    Auto Trait Implementations§

    §

    impl<T> Freeze for SetOrKeep<T>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Eq + Clone> Eq for SetOrKeep<T>

    source§

    impl<T: Clone> StructuralPartialEq for SetOrKeep<T>

    Auto Trait Implementations§

    §

    impl<T> Freeze for SetOrKeep<T>
    where T: Freeze,

    §

    impl<T> RefUnwindSafe for SetOrKeep<T>
    where T: RefUnwindSafe,

    §

    impl<T> Send for SetOrKeep<T>
    where T: Send,

    §

    impl<T> Sync for SetOrKeep<T>
    where @@ -130,5 +130,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/types/enum.SetUpdateOrDelete.html b/massa_models/types/enum.SetUpdateOrDelete.html index 8028490afaa..df094a41992 100644 --- a/massa_models/types/enum.SetUpdateOrDelete.html +++ b/massa_models/types/enum.SetUpdateOrDelete.html @@ -12,22 +12,22 @@
    §

    Delete

    Deletes the value T

    Trait Implementations§

    source§

    impl<T: Default + Applicable<V>, V> Applicable<SetUpdateOrDelete<T, V>> for SetUpdateOrDelete<T, V>
    where V: Clone + Applicable<V>,

    Support applying another SetUpdateOrDelete to self

    -
    source§

    fn apply(&mut self, other: SetUpdateOrDelete<T, V>)

    apply changes from other to mutable self
    source§

    impl<T: Clone + Default + Applicable<V>, V: Clone + Applicable<V> + Clone> Clone for SetUpdateOrDelete<T, V>

    source§

    fn clone(&self) -> SetUpdateOrDelete<T, V>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug + Default + Applicable<V>, V: Debug + Applicable<V> + Clone> Debug for SetUpdateOrDelete<T, V>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de, T, V> Deserialize<'de> for SetUpdateOrDelete<T, V>
    where - T: Deserialize<'de> + Default + Applicable<V>, - V: Deserialize<'de> + Applicable<V> + Clone,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> Deserializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteDeserializer<T, V, DT, DV>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    fn apply(&mut self, other: SetUpdateOrDelete<T, V>)

    apply changes from other to mutable self
    source§

    impl<T: Clone + Default + Applicable<V>, V: Clone + Applicable<V> + Clone> Clone for SetUpdateOrDelete<T, V>

    source§

    fn clone(&self) -> SetUpdateOrDelete<T, V>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl<T: Debug + Default + Applicable<V>, V: Debug + Applicable<V> + Clone> Debug for SetUpdateOrDelete<T, V>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de, T, V> Deserialize<'de> for SetUpdateOrDelete<T, V>
    where + T: Deserialize<'de> + Default + Applicable<V>, + V: Deserialize<'de> + Applicable<V> + Clone,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> Deserializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteDeserializer<T, V, DT, DV>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SetUpdateOrDelete<T, V>, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq + Default + Applicable<V>, V: PartialEq + Applicable<V> + Clone> PartialEq for SetUpdateOrDelete<T, V>

    source§

    fn eq(&self, other: &SetUpdateOrDelete<T, V>) -> bool

    This method tests for self and other values to be equal, and is used +) -> IResult<&'a [u8], SetUpdateOrDelete<T, V>, E>
    Deserialize a value T from a buffer of u8. Read more
    source§

    impl<T: PartialEq + Default + Applicable<V>, V: PartialEq + Applicable<V> + Clone> PartialEq for SetUpdateOrDelete<T, V>

    source§

    fn eq(&self, other: &SetUpdateOrDelete<T, V>) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl<T, V> Serialize for SetUpdateOrDelete<T, V>
    where - T: Serialize + Default + Applicable<V>, - V: Serialize + Applicable<V> + Clone,

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> Serializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteSerializer<T, V, ST, SV>

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl<T, V> Serialize for SetUpdateOrDelete<T, V>
    where + T: Serialize + Default + Applicable<V>, + V: Serialize + Applicable<V> + Clone,

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> Serializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteSerializer<T, V, ST, SV>

    source§

    fn serialize( &self, value: &SetUpdateOrDelete<T, V>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Eq + Default + Applicable<V>, V: Eq + Applicable<V> + Clone> Eq for SetUpdateOrDelete<T, V>

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone> StructuralPartialEq for SetUpdateOrDelete<T, V>

    Auto Trait Implementations§

    §

    impl<T, V> Freeze for SetUpdateOrDelete<T, V>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more
    source§

    impl<T: Eq + Default + Applicable<V>, V: Eq + Applicable<V> + Clone> Eq for SetUpdateOrDelete<T, V>

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone> StructuralPartialEq for SetUpdateOrDelete<T, V>

    Auto Trait Implementations§

    §

    impl<T, V> Freeze for SetUpdateOrDelete<T, V>
    where T: Freeze, V: Freeze,

    §

    impl<T, V> RefUnwindSafe for SetUpdateOrDelete<T, V>
    where T: RefUnwindSafe, @@ -143,5 +143,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/types/struct.SetOrDeleteDeserializer.html b/massa_models/types/struct.SetOrDeleteDeserializer.html index 5d5481280cd..61b9d56741a 100644 --- a/massa_models/types/struct.SetOrDeleteDeserializer.html +++ b/massa_models/types/struct.SetOrDeleteDeserializer.html @@ -1,10 +1,10 @@ -SetOrDeleteDeserializer in massa_models::types - Rust

    Struct massa_models::types::SetOrDeleteDeserializer

    source ·
    pub struct SetOrDeleteDeserializer<T: Clone, DT: Deserializer<T>> {
    +SetOrDeleteDeserializer in massa_models::types - Rust

    Struct massa_models::types::SetOrDeleteDeserializer

    source ·
    pub struct SetOrDeleteDeserializer<T: Clone, DT: Deserializer<T>> {
         inner_deserializer: DT,
         phantom_t: PhantomData<T>,
    -}

    Fields§

    §inner_deserializer: DT§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> SetOrDeleteDeserializer<T, DT>

    source

    pub fn new(inner_deserializer: DT) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrDelete<T>> for SetOrDeleteDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +}

    Fields§

    §inner_deserializer: DT§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> SetOrDeleteDeserializer<T, DT>

    source

    pub fn new(inner_deserializer: DT) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrDelete<T>> for SetOrDeleteDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SetOrDelete<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, DT> Freeze for SetOrDeleteDeserializer<T, DT>
    where +) -> IResult<&'a [u8], SetOrDelete<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, DT> Freeze for SetOrDeleteDeserializer<T, DT>
    where DT: Freeze,

    §

    impl<T, DT> RefUnwindSafe for SetOrDeleteDeserializer<T, DT>

    §

    impl<T, DT> Send for SetOrDeleteDeserializer<T, DT>
    where diff --git a/massa_models/types/struct.SetOrDeleteSerializer.html b/massa_models/types/struct.SetOrDeleteSerializer.html index 9df8794e5bd..e1450ddf8a3 100644 --- a/massa_models/types/struct.SetOrDeleteSerializer.html +++ b/massa_models/types/struct.SetOrDeleteSerializer.html @@ -1,11 +1,11 @@ -SetOrDeleteSerializer in massa_models::types - Rust

    Struct massa_models::types::SetOrDeleteSerializer

    source ·
    pub struct SetOrDeleteSerializer<T: Clone, ST: Serializer<T>> {
    +SetOrDeleteSerializer in massa_models::types - Rust

    Struct massa_models::types::SetOrDeleteSerializer

    source ·
    pub struct SetOrDeleteSerializer<T: Clone, ST: Serializer<T>> {
         inner_serializer: ST,
         phantom_t: PhantomData<T>,
    -}

    Fields§

    §inner_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> SetOrDeleteSerializer<T, ST>

    source

    pub fn new(inner_serializer: ST) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrDelete<T>> for SetOrDeleteSerializer<T, ST>

    Fields§

    §inner_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> SetOrDeleteSerializer<T, ST>

    source

    pub fn new(inner_serializer: ST) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrDelete<T>> for SetOrDeleteSerializer<T, ST>

    source§

    fn serialize( &self, value: &SetOrDelete<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for SetOrDeleteSerializer<T, ST>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for SetOrDeleteSerializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for SetOrDeleteSerializer<T, ST>

    §

    impl<T, ST> Send for SetOrDeleteSerializer<T, ST>
    where diff --git a/massa_models/types/struct.SetOrKeepDeserializer.html b/massa_models/types/struct.SetOrKeepDeserializer.html index 9d9e9547865..07ac1593d0d 100644 --- a/massa_models/types/struct.SetOrKeepDeserializer.html +++ b/massa_models/types/struct.SetOrKeepDeserializer.html @@ -1,10 +1,10 @@ -SetOrKeepDeserializer in massa_models::types - Rust

    Struct massa_models::types::SetOrKeepDeserializer

    source ·
    pub struct SetOrKeepDeserializer<T: Clone, DT: Deserializer<T>> {
    +SetOrKeepDeserializer in massa_models::types - Rust

    Struct massa_models::types::SetOrKeepDeserializer

    source ·
    pub struct SetOrKeepDeserializer<T: Clone, DT: Deserializer<T>> {
         inner_deserializer: DT,
         phantom_t: PhantomData<T>,
    -}

    Fields§

    §inner_deserializer: DT§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> SetOrKeepDeserializer<T, DT>

    source

    pub fn new(inner_deserializer: DT) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrKeep<T>> for SetOrKeepDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +}

    Fields§

    §inner_deserializer: DT§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> SetOrKeepDeserializer<T, DT>

    source

    pub fn new(inner_deserializer: DT) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrKeep<T>> for SetOrKeepDeserializer<T, DT>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SetOrKeep<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, DT> Freeze for SetOrKeepDeserializer<T, DT>
    where +) -> IResult<&'a [u8], SetOrKeep<T>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, DT> Freeze for SetOrKeepDeserializer<T, DT>
    where DT: Freeze,

    §

    impl<T, DT> RefUnwindSafe for SetOrKeepDeserializer<T, DT>

    §

    impl<T, DT> Send for SetOrKeepDeserializer<T, DT>
    where diff --git a/massa_models/types/struct.SetOrKeepSerializer.html b/massa_models/types/struct.SetOrKeepSerializer.html index dec4d03f960..14e65ab19d5 100644 --- a/massa_models/types/struct.SetOrKeepSerializer.html +++ b/massa_models/types/struct.SetOrKeepSerializer.html @@ -1,11 +1,11 @@ -SetOrKeepSerializer in massa_models::types - Rust

    Struct massa_models::types::SetOrKeepSerializer

    source ·
    pub struct SetOrKeepSerializer<T: Clone, ST: Serializer<T>> {
    +SetOrKeepSerializer in massa_models::types - Rust

    Struct massa_models::types::SetOrKeepSerializer

    source ·
    pub struct SetOrKeepSerializer<T: Clone, ST: Serializer<T>> {
         inner_serializer: ST,
         phantom_t: PhantomData<T>,
    -}

    Fields§

    §inner_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> SetOrKeepSerializer<T, ST>

    source

    pub fn new(inner_serializer: ST) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrKeep<T>> for SetOrKeepSerializer<T, ST>

    Fields§

    §inner_serializer: ST§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> SetOrKeepSerializer<T, ST>

    source

    pub fn new(inner_serializer: ST) -> Self

    Trait Implementations§

    source§

    impl<T: Clone, ST: Serializer<T>> Serializer<SetOrKeep<T>> for SetOrKeepSerializer<T, ST>

    source§

    fn serialize( &self, value: &SetOrKeep<T>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for SetOrKeepSerializer<T, ST>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, ST> Freeze for SetOrKeepSerializer<T, ST>
    where ST: Freeze,

    §

    impl<T, ST> RefUnwindSafe for SetOrKeepSerializer<T, ST>

    §

    impl<T, ST> Send for SetOrKeepSerializer<T, ST>
    where diff --git a/massa_models/types/struct.SetUpdateOrDeleteDeserializer.html b/massa_models/types/struct.SetUpdateOrDeleteDeserializer.html index 6179af98c19..0f6995fb17a 100644 --- a/massa_models/types/struct.SetUpdateOrDeleteDeserializer.html +++ b/massa_models/types/struct.SetUpdateOrDeleteDeserializer.html @@ -1,12 +1,12 @@ -SetUpdateOrDeleteDeserializer in massa_models::types - Rust
    pub struct SetUpdateOrDeleteDeserializer<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> {
    +SetUpdateOrDeleteDeserializer in massa_models::types - Rust
    pub struct SetUpdateOrDeleteDeserializer<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> {
         inner_deserializer_set: DT,
         inner_deserializer_update: DV,
         phantom_t: PhantomData<T>,
         phantom_v: PhantomData<V>,
    -}

    Fields§

    §inner_deserializer_set: DT§inner_deserializer_update: DV§phantom_t: PhantomData<T>§phantom_v: PhantomData<V>

    Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> SetUpdateOrDeleteDeserializer<T, V, DT, DV>

    source

    pub fn new(inner_deserializer_set: DT, inner_deserializer_update: DV) -> Self

    Trait Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> Deserializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteDeserializer<T, V, DT, DV>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +}

    Fields§

    §inner_deserializer_set: DT§inner_deserializer_update: DV§phantom_t: PhantomData<T>§phantom_v: PhantomData<V>

    Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> SetUpdateOrDeleteDeserializer<T, V, DT, DV>

    source

    pub fn new(inner_deserializer_set: DT, inner_deserializer_update: DV) -> Self

    Trait Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> Deserializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteDeserializer<T, V, DT, DV>

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], SetUpdateOrDelete<T, V>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, V, DT, DV> Freeze for SetUpdateOrDeleteDeserializer<T, V, DT, DV>
    where +) -> IResult<&'a [u8], SetUpdateOrDelete<T, V>, E>

    Deserialize a value T from a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, V, DT, DV> Freeze for SetUpdateOrDeleteDeserializer<T, V, DT, DV>
    where DT: Freeze, DV: Freeze,

    §

    impl<T, V, DT, DV> RefUnwindSafe for SetUpdateOrDeleteDeserializer<T, V, DT, DV>
    where DT: RefUnwindSafe, diff --git a/massa_models/types/struct.SetUpdateOrDeleteSerializer.html b/massa_models/types/struct.SetUpdateOrDeleteSerializer.html index f237389aa28..6ea53a981dd 100644 --- a/massa_models/types/struct.SetUpdateOrDeleteSerializer.html +++ b/massa_models/types/struct.SetUpdateOrDeleteSerializer.html @@ -1,13 +1,13 @@ -SetUpdateOrDeleteSerializer in massa_models::types - Rust

    Struct massa_models::types::SetUpdateOrDeleteSerializer

    source ·
    pub struct SetUpdateOrDeleteSerializer<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> {
    +SetUpdateOrDeleteSerializer in massa_models::types - Rust

    Struct massa_models::types::SetUpdateOrDeleteSerializer

    source ·
    pub struct SetUpdateOrDeleteSerializer<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> {
         inner_serializer_set: ST,
         inner_serializer_update: SV,
         phantom_t: PhantomData<T>,
         phantom_v: PhantomData<V>,
    -}

    Fields§

    §inner_serializer_set: ST§inner_serializer_update: SV§phantom_t: PhantomData<T>§phantom_v: PhantomData<V>

    Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> SetUpdateOrDeleteSerializer<T, V, ST, SV>

    source

    pub fn new(inner_serializer_set: ST, inner_serializer_update: SV) -> Self

    Trait Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> Serializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteSerializer<T, V, ST, SV>

    Fields§

    §inner_serializer_set: ST§inner_serializer_update: SV§phantom_t: PhantomData<T>§phantom_v: PhantomData<V>

    Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> SetUpdateOrDeleteSerializer<T, V, ST, SV>

    source

    pub fn new(inner_serializer_set: ST, inner_serializer_update: SV) -> Self

    Trait Implementations§

    source§

    impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> Serializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteSerializer<T, V, ST, SV>

    source§

    fn serialize( &self, value: &SetUpdateOrDelete<T, V>, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, V, ST, SV> Freeze for SetUpdateOrDeleteSerializer<T, V, ST, SV>
    where +) -> Result<(), SerializeError>

    Serialize a value T into a buffer of u8. Read more

    Auto Trait Implementations§

    §

    impl<T, V, ST, SV> Freeze for SetUpdateOrDeleteSerializer<T, V, ST, SV>
    where ST: Freeze, SV: Freeze,

    §

    impl<T, V, ST, SV> RefUnwindSafe for SetUpdateOrDeleteSerializer<T, V, ST, SV>
    where ST: RefUnwindSafe, diff --git a/massa_models/version/struct.Version.html b/massa_models/version/struct.Version.html index 4b4d6cfcc72..6cfe5120875 100644 --- a/massa_models/version/struct.Version.html +++ b/massa_models/version/struct.Version.html @@ -5,8 +5,8 @@ }
    Expand description

    Application version, checked during handshakes

    Fields§

    §instance: [char; 4]

    ASCII uppercase alpha

    §major: u32§minor: u32

    Implementations§

    source§

    impl Version

    source

    pub fn is_compatible(&self, other: &Version) -> bool

    true if instance and major are the same

    -

    Trait Implementations§

    source§

    impl Clone for Version

    source§

    fn clone(&self) -> Version

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Version

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Version

    source§

    fn deserialize<D>(deserializer: D) -> Result<Version, D::Error>
    where - D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Version> for VersionDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for Version

    source§

    fn clone(&self) -> Version

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Version

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Version

    source§

    fn deserialize<D>(deserializer: D) -> Result<Version, D::Error>
    where + D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<Version> for VersionDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Version, E>

    @@ -23,17 +23,17 @@ let (rest, version_deser) = deserializer.deserialize::<DeserializeError>(&serialized).unwrap(); assert_eq!(rest.len(), 0); assert_eq!(version, version_deser);
    -
    source§

    impl Display for Version

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    +
    source§

    impl Display for Version

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    let v: version::Version = version::Version::from_str("TEST.1.10").unwrap();
     assert_eq!(v.to_string(), "TEST.1.10");
    source§

    impl FromStr for Version

    §

    type Err = ModelsError

    The associated error which can be returned from parsing.
    source§

    fn from_str(str_version: &str) -> Result<Self, Self::Err>

    Parses a string s to return a value of this type. Read more
    source§

    impl PartialEq for Version

    source§

    fn eq(&self, other: &Version) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for Version

    source§

    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where - S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Version> for VersionSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for Version

    source§

    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where + S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<Version> for VersionSerializer

    source§

    fn serialize( &self, value: &Version, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    use std::ops::Bound::Included;
     use std::str::FromStr;
     use massa_serialization::Serializer;
    @@ -149,5 +149,5 @@
         V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_models/version/struct.VersionDeserializer.html b/massa_models/version/struct.VersionDeserializer.html index 8e861aacef4..e5ebf03ab42 100644 --- a/massa_models/version/struct.VersionDeserializer.html +++ b/massa_models/version/struct.VersionDeserializer.html @@ -1,8 +1,8 @@ VersionDeserializer in massa_models::version - Rust

    Struct massa_models::version::VersionDeserializer

    source ·
    pub struct VersionDeserializer {
    -    u32_deserializer: U32VarIntDeserializer,
    +    u32_deserializer: U32VarIntDeserializer,
     }
    Expand description

    Serializer for Version

    -

    Fields§

    §u32_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl VersionDeserializer

    source

    pub const fn new() -> Self

    Creates a VersionSerializer

    -

    Trait Implementations§

    source§

    impl Clone for VersionDeserializer

    source§

    fn clone(&self) -> VersionDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for VersionDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<Version> for VersionDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Fields§

    §u32_deserializer: U32VarIntDeserializer

    Implementations§

    source§

    impl VersionDeserializer

    source

    pub const fn new() -> Self

    Creates a VersionSerializer

    +

    Trait Implementations§

    source§

    impl Clone for VersionDeserializer

    source§

    fn clone(&self) -> VersionDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for VersionDeserializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Deserializer<Version> for VersionDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Version, E>

    diff --git a/massa_models/version/struct.VersionSerializer.html b/massa_models/version/struct.VersionSerializer.html index f5de1c7dd49..567bbbbee4c 100644 --- a/massa_models/version/struct.VersionSerializer.html +++ b/massa_models/version/struct.VersionSerializer.html @@ -1,12 +1,12 @@ VersionSerializer in massa_models::version - Rust

    Struct massa_models::version::VersionSerializer

    source ·
    pub struct VersionSerializer {
    -    u32_serializer: U32VarIntSerializer,
    +    u32_serializer: U32VarIntSerializer,
     }
    Expand description

    Serializer for Version

    -

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl VersionSerializer

    source

    pub const fn new() -> Self

    Creates a VersionSerializer

    -

    Trait Implementations§

    source§

    impl Clone for VersionSerializer

    source§

    fn clone(&self) -> VersionSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for VersionSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Version> for VersionSerializer

    Fields§

    §u32_serializer: U32VarIntSerializer

    Implementations§

    source§

    impl VersionSerializer

    source

    pub const fn new() -> Self

    Creates a VersionSerializer

    +

    Trait Implementations§

    source§

    impl Clone for VersionSerializer

    source§

    fn clone(&self) -> VersionSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for VersionSerializer

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl Serializer<Version> for VersionSerializer

    source§

    fn serialize( &self, value: &Version, buffer: &mut Vec<u8>, -) -> Result<(), SerializeError>

    use std::ops::Bound::Included;
     use std::str::FromStr;
     use massa_serialization::Serializer;
    diff --git a/massa_models/version/struct.VersionVisitor.html b/massa_models/version/struct.VersionVisitor.html
    index 700e928a4fb..ac2ce1f1ef8 100644
    --- a/massa_models/version/struct.VersionVisitor.html
    +++ b/massa_models/version/struct.VersionVisitor.html
    @@ -1,57 +1,57 @@
    -VersionVisitor in massa_models::version - Rust

    Struct massa_models::version::VersionVisitor

    source ·
    struct VersionVisitor;

    Trait Implementations§

    source§

    impl<'de> Visitor<'de> for VersionVisitor

    §

    type Value = Version

    The value produced by this visitor.
    source§

    fn visit_str<E>(self, value: &str) -> Result<Version, E>
    where - E: Error,

    The input contains a string. The lifetime of the string is ephemeral and -it may be destroyed after this method returns. Read more
    source§

    fn expecting(&self, formatter: &mut Formatter<'_>) -> Result

    Format a message stating what data this Visitor expects to receive. Read more
    source§

    fn visit_bool<E>(self, v: bool) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a boolean. Read more
    source§

    fn visit_i8<E>(self, v: i8) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i8. Read more
    source§

    fn visit_i16<E>(self, v: i16) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i16. Read more
    source§

    fn visit_i32<E>(self, v: i32) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i32. Read more
    source§

    fn visit_i64<E>(self, v: i64) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an i64. Read more
    source§

    fn visit_i128<E>(self, v: i128) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a i128. Read more
    source§

    fn visit_u8<E>(self, v: u8) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u8. Read more
    source§

    fn visit_u16<E>(self, v: u16) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u16. Read more
    source§

    fn visit_u32<E>(self, v: u32) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u32. Read more
    source§

    fn visit_u64<E>(self, v: u64) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u64. Read more
    source§

    fn visit_u128<E>(self, v: u128) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a u128. Read more
    source§

    fn visit_f32<E>(self, v: f32) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an f32. Read more
    source§

    fn visit_f64<E>(self, v: f64) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an f64. Read more
    source§

    fn visit_char<E>(self, v: char) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a char. Read more
    source§

    fn visit_borrowed_str<E>(self, v: &'de str) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a string that lives at least as long as the -Deserializer. Read more
    source§

    fn visit_string<E>(self, v: String) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a string and ownership of the string is being given -to the Visitor. Read more
    source§

    fn visit_bytes<E>(self, v: &[u8]) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a byte array. The lifetime of the byte array is -ephemeral and it may be destroyed after this method returns. Read more
    source§

    fn visit_borrowed_bytes<E>(self, v: &'de [u8]) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a byte array that lives at least as long as the -Deserializer. Read more
    source§

    fn visit_byte_buf<E>(self, v: Vec<u8>) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a byte array and ownership of the byte array is being -given to the Visitor. Read more
    source§

    fn visit_none<E>(self) -> Result<Self::Value, E>
    where - E: Error,

    The input contains an optional that is absent. Read more
    source§

    fn visit_some<D>( +VersionVisitor in massa_models::version - Rust

    Struct massa_models::version::VersionVisitor

    source ·
    struct VersionVisitor;

    Trait Implementations§

    source§

    impl<'de> Visitor<'de> for VersionVisitor

    §

    type Value = Version

    The value produced by this visitor.
    source§

    fn visit_str<E>(self, value: &str) -> Result<Version, E>
    where + E: Error,

    The input contains a string. The lifetime of the string is ephemeral and +it may be destroyed after this method returns. Read more
    source§

    fn expecting(&self, formatter: &mut Formatter<'_>) -> Result

    Format a message stating what data this Visitor expects to receive. Read more
    source§

    fn visit_bool<E>(self, v: bool) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a boolean. Read more
    source§

    fn visit_i8<E>(self, v: i8) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i8. Read more
    source§

    fn visit_i16<E>(self, v: i16) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i16. Read more
    source§

    fn visit_i32<E>(self, v: i32) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i32. Read more
    source§

    fn visit_i64<E>(self, v: i64) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an i64. Read more
    source§

    fn visit_i128<E>(self, v: i128) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a i128. Read more
    source§

    fn visit_u8<E>(self, v: u8) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u8. Read more
    source§

    fn visit_u16<E>(self, v: u16) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u16. Read more
    source§

    fn visit_u32<E>(self, v: u32) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u32. Read more
    source§

    fn visit_u64<E>(self, v: u64) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u64. Read more
    source§

    fn visit_u128<E>(self, v: u128) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a u128. Read more
    source§

    fn visit_f32<E>(self, v: f32) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an f32. Read more
    source§

    fn visit_f64<E>(self, v: f64) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an f64. Read more
    source§

    fn visit_char<E>(self, v: char) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a char. Read more
    source§

    fn visit_borrowed_str<E>(self, v: &'de str) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a string that lives at least as long as the +Deserializer. Read more
    source§

    fn visit_string<E>(self, v: String) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a string and ownership of the string is being given +to the Visitor. Read more
    source§

    fn visit_bytes<E>(self, v: &[u8]) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a byte array. The lifetime of the byte array is +ephemeral and it may be destroyed after this method returns. Read more
    source§

    fn visit_borrowed_bytes<E>(self, v: &'de [u8]) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a byte array that lives at least as long as the +Deserializer. Read more
    source§

    fn visit_byte_buf<E>(self, v: Vec<u8>) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a byte array and ownership of the byte array is being +given to the Visitor. Read more
    source§

    fn visit_none<E>(self) -> Result<Self::Value, E>
    where + E: Error,

    The input contains an optional that is absent. Read more
    source§

    fn visit_some<D>( self, deserializer: D, -) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where - D: Deserializer<'de>,

    The input contains an optional that is present. Read more
    source§

    fn visit_unit<E>(self) -> Result<Self::Value, E>
    where - E: Error,

    The input contains a unit (). Read more
    source§

    fn visit_newtype_struct<D>( +) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where + D: Deserializer<'de>,

    The input contains an optional that is present. Read more
    source§

    fn visit_unit<E>(self) -> Result<Self::Value, E>
    where + E: Error,

    The input contains a unit (). Read more
    source§

    fn visit_newtype_struct<D>( self, deserializer: D, -) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where - D: Deserializer<'de>,

    The input contains a newtype struct. Read more
    source§

    fn visit_seq<A>( +) -> Result<Self::Value, <D as Deserializer<'de>>::Error>
    where + D: Deserializer<'de>,

    The input contains a newtype struct. Read more
    source§

    fn visit_seq<A>( self, seq: A, -) -> Result<Self::Value, <A as SeqAccess<'de>>::Error>
    where - A: SeqAccess<'de>,

    The input contains a sequence of elements. Read more
    source§

    fn visit_map<A>( +) -> Result<Self::Value, <A as SeqAccess<'de>>::Error>
    where + A: SeqAccess<'de>,

    The input contains a sequence of elements. Read more
    source§

    fn visit_map<A>( self, map: A, -) -> Result<Self::Value, <A as MapAccess<'de>>::Error>
    where - A: MapAccess<'de>,

    The input contains a key-value map. Read more
    source§

    fn visit_enum<A>( +) -> Result<Self::Value, <A as MapAccess<'de>>::Error>
    where + A: MapAccess<'de>,

    The input contains a key-value map. Read more
    source§

    fn visit_enum<A>( self, data: A, -) -> Result<Self::Value, <A as EnumAccess<'de>>::Error>
    where - A: EnumAccess<'de>,

    The input contains an enum. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<Self::Value, <A as EnumAccess<'de>>::Error>
    where + A: EnumAccess<'de>,

    The input contains an enum. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where - Self: Into<T>,

    Converts self into T using Into<T>. Read more
    source§

    impl<'de, T> Expected for T
    where - T: Visitor<'de>,

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result<(), Error>

    Format an explanation of what data was being expected. Same signature as + Self: Into<T>,
    Converts self into T using Into<T>. Read more
    source§

    impl<'de, T> Expected for T
    where + T: Visitor<'de>,

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result<(), Error>

    Format an explanation of what data was being expected. Same signature as the Display and Debug traits.
    §

    impl<T> FmtForward for T

    §

    fn fmt_binary(self) -> FmtBinary<Self>
    where Self: Binary,

    Causes self to use its Binary implementation when Debug-formatted.
    §

    fn fmt_display(self) -> FmtDisplay<Self>
    where Self: Display,

    Causes self to use its Display implementation when diff --git a/massa_module_cache/config/struct.ModuleCacheConfig.html b/massa_module_cache/config/struct.ModuleCacheConfig.html index 33ec1ae6d7b..eadc44260c3 100644 --- a/massa_module_cache/config/struct.ModuleCacheConfig.html +++ b/massa_module_cache/config/struct.ModuleCacheConfig.html @@ -1,4 +1,4 @@ -ModuleCacheConfig in massa_module_cache::config - Rust

    Struct massa_module_cache::config::ModuleCacheConfig

    source ·
    pub struct ModuleCacheConfig {
    +ModuleCacheConfig in massa_module_cache::config - Rust

    Struct massa_module_cache::config::ModuleCacheConfig

    source ·
    pub struct ModuleCacheConfig {
         pub hd_cache_path: PathBuf,
         pub gas_costs: GasCosts,
         pub lru_cache_size: u32,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/controller/struct.ModuleCache.html b/massa_module_cache/controller/struct.ModuleCache.html index ab313c20b07..fa1da4f7470 100644 --- a/massa_module_cache/controller/struct.ModuleCache.html +++ b/massa_module_cache/controller/struct.ModuleCache.html @@ -1,4 +1,4 @@ -ModuleCache in massa_module_cache::controller - Rust

    Struct massa_module_cache::controller::ModuleCache

    source ·
    pub struct ModuleCache {
    +ModuleCache in massa_module_cache::controller - Rust

    Struct massa_module_cache::controller::ModuleCache

    source ·
    pub struct ModuleCache {
         cfg: ModuleCacheConfig,
         lru_cache: LRUCache,
         hd_cache: HDCache,
    @@ -146,4 +146,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/error/enum.CacheError.html b/massa_module_cache/error/enum.CacheError.html index 1332f860677..f262723c8f0 100644 --- a/massa_module_cache/error/enum.CacheError.html +++ b/massa_module_cache/error/enum.CacheError.html @@ -1,10 +1,10 @@ -CacheError in massa_module_cache::error - Rust

    Enum massa_module_cache::error::CacheError

    source ·
    #[non_exhaustive]
    pub enum CacheError { +CacheError in massa_module_cache::error - Rust

    Enum massa_module_cache::error::CacheError

    source ·
    #[non_exhaustive]
    pub enum CacheError { VMError(String), LoadError(String), }
    Expand description

    Cache error

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    VMError(String)

    VM error: {0}

    §

    LoadError(String)

    Load error: {0}

    -

    Trait Implementations§

    source§

    impl Clone for CacheError

    source§

    fn clone(&self) -> CacheError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for CacheError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for CacheError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for CacheError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for CacheError

    source§

    fn from(e: Error) -> CacheError

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for CacheError

    source§

    fn clone(&self) -> CacheError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for CacheError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for CacheError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for CacheError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for CacheError

    source§

    fn from(e: Error) -> CacheError

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -121,4 +121,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/hd_cache/struct.HDCache.html b/massa_module_cache/hd_cache/struct.HDCache.html index 75782347561..de3a23c366c 100644 --- a/massa_module_cache/hd_cache/struct.HDCache.html +++ b/massa_module_cache/hd_cache/struct.HDCache.html @@ -1,4 +1,4 @@ -HDCache in massa_module_cache::hd_cache - Rust

    Struct massa_module_cache::hd_cache::HDCache

    source ·
    pub(crate) struct HDCache {
    +HDCache in massa_module_cache::hd_cache - Rust

    Struct massa_module_cache::hd_cache::HDCache

    source ·
    pub(crate) struct HDCache {
         db: DB,
         entry_count: usize,
         max_entry_count: usize,
    @@ -146,4 +146,5 @@ 
    §Arguments
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/lru_cache/struct.LRUCache.html b/massa_module_cache/lru_cache/struct.LRUCache.html index 1d9639e555b..18940eeb6f7 100644 --- a/massa_module_cache/lru_cache/struct.LRUCache.html +++ b/massa_module_cache/lru_cache/struct.LRUCache.html @@ -1,4 +1,4 @@ -LRUCache in massa_module_cache::lru_cache - Rust

    Struct massa_module_cache::lru_cache::LRUCache

    source ·
    pub(crate) struct LRUCache {
    +LRUCache in massa_module_cache::lru_cache - Rust

    Struct massa_module_cache::lru_cache::LRUCache

    source ·
    pub(crate) struct LRUCache {
         cache: LruMap<Hash, ModuleInfo, ByLength, BuildHashMapper<Hash>>,
     }
    Expand description

    RAM stored LRU cache. The LRU caching scheme is to remove the least recently used module when the cache is full.

    @@ -128,4 +128,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/types/enum.ModuleInfo.html b/massa_module_cache/types/enum.ModuleInfo.html index 8b0046a96e9..a15cd3c6549 100644 --- a/massa_module_cache/types/enum.ModuleInfo.html +++ b/massa_module_cache/types/enum.ModuleInfo.html @@ -1,4 +1,4 @@ -ModuleInfo in massa_module_cache::types - Rust

    Enum massa_module_cache::types::ModuleInfo

    source ·
    pub enum ModuleInfo {
    +ModuleInfo in massa_module_cache::types - Rust

    Enum massa_module_cache::types::ModuleInfo

    source ·
    pub enum ModuleInfo {
         Invalid(String),
         Module(RuntimeModule),
         ModuleAndDelta((RuntimeModule, u64)),
    @@ -118,4 +118,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/types/enum.ModuleMetadata.html b/massa_module_cache/types/enum.ModuleMetadata.html index 07613a68267..8843b5cc0b2 100644 --- a/massa_module_cache/types/enum.ModuleMetadata.html +++ b/massa_module_cache/types/enum.ModuleMetadata.html @@ -1,4 +1,4 @@ -ModuleMetadata in massa_module_cache::types - Rust

    Enum massa_module_cache::types::ModuleMetadata

    source ·
    pub enum ModuleMetadata {
    +ModuleMetadata in massa_module_cache::types - Rust

    Enum massa_module_cache::types::ModuleMetadata

    source ·
    pub enum ModuleMetadata {
         Invalid(String),
         NotExecuted,
         Delta(u64),
    @@ -133,4 +133,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/types/enum.ModuleMetadataId.html b/massa_module_cache/types/enum.ModuleMetadataId.html index d881d24efad..4495597a583 100644 --- a/massa_module_cache/types/enum.ModuleMetadataId.html +++ b/massa_module_cache/types/enum.ModuleMetadataId.html @@ -1,4 +1,4 @@ -ModuleMetadataId in massa_module_cache::types - Rust

    Enum massa_module_cache::types::ModuleMetadataId

    source ·
    #[repr(u64)]
    enum ModuleMetadataId { +ModuleMetadataId in massa_module_cache::types - Rust

    Enum massa_module_cache::types::ModuleMetadataId

    source ·
    #[repr(u64)]
    enum ModuleMetadataId { Invalid = 0, NotExecuted = 1, Delta = 2, @@ -128,4 +128,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/types/struct.ModuleMetadataDeserializer.html b/massa_module_cache/types/struct.ModuleMetadataDeserializer.html index f7a82cf2735..c965b58c636 100644 --- a/massa_module_cache/types/struct.ModuleMetadataDeserializer.html +++ b/massa_module_cache/types/struct.ModuleMetadataDeserializer.html @@ -1,4 +1,4 @@ -ModuleMetadataDeserializer in massa_module_cache::types - Rust
    pub struct ModuleMetadataDeserializer {
    +ModuleMetadataDeserializer in massa_module_cache::types - Rust
    pub struct ModuleMetadataDeserializer {
         id_deser: U64VarIntDeserializer,
         delta_deser: U64VarIntDeserializer,
         err_msg_deser: StringDeserializer<U64VarIntDeserializer, u64>,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_module_cache/types/struct.ModuleMetadataSerializer.html b/massa_module_cache/types/struct.ModuleMetadataSerializer.html index e10c538e721..137e902268e 100644 --- a/massa_module_cache/types/struct.ModuleMetadataSerializer.html +++ b/massa_module_cache/types/struct.ModuleMetadataSerializer.html @@ -1,4 +1,4 @@ -ModuleMetadataSerializer in massa_module_cache::types - Rust
    pub struct ModuleMetadataSerializer {
    +ModuleMetadataSerializer in massa_module_cache::types - Rust
    pub struct ModuleMetadataSerializer {
         u64_ser: U64VarIntSerializer,
         err_msg_ser: StringSerializer<U64VarIntSerializer, u64>,
     }
    Expand description

    Metadata serializer

    @@ -117,4 +117,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/fn.configure_grpc.html b/massa_node/fn.configure_grpc.html index 9e37a75ea15..8d0784abc02 100644 --- a/massa_node/fn.configure_grpc.html +++ b/massa_node/fn.configure_grpc.html @@ -1,4 +1,4 @@ -configure_grpc in massa_node - Rust

    Function massa_node::configure_grpc

    source ·
    pub(crate) fn configure_grpc(
    +configure_grpc in massa_node - Rust

    Function massa_node::configure_grpc

    source ·
    pub(crate) fn configure_grpc(
         name: ServiceName,
         settings: &GrpcSettings,
         keypair: KeyPair,
    diff --git a/massa_node/fn.launch.html b/massa_node/fn.launch.html
    index 115ad7b8a28..888706af157 100644
    --- a/massa_node/fn.launch.html
    +++ b/massa_node/fn.launch.html
    @@ -1,5 +1,5 @@
    -launch in massa_node - Rust

    Function massa_node::launch

    source ·
    pub(crate) async fn launch(
    +launch in massa_node - Rust

    Function massa_node::launch

    source ·
    pub(crate) async fn launch(
         args: &Args,
         node_wallet: Arc<RwLock<Wallet>>,
         sig_int_toggled: Arc<(Mutex<bool>, Condvar)>,
    -) -> (MassaReceiver<ConsensusEvent>, Option<BootstrapManager>, Box<dyn ConsensusManager>, Box<dyn ExecutionManager>, Box<dyn SelectorManager>, Box<dyn PoolManager>, Box<dyn ProtocolManager>, Box<dyn FactoryManager>, StopHandle, StopHandle, StopHandle, Option<StopHandle>, Option<StopHandle>, MetricsStopper, MassaSurveyStopper)
    \ No newline at end of file +) -> (MassaReceiver<ConsensusEvent>, Option<BootstrapManager>, Box<dyn ConsensusManager>, Box<dyn ExecutionManager>, Box<dyn SelectorManager>, Box<dyn PoolManager>, Box<dyn ProtocolManager>, Box<dyn FactoryManager>, Box<dyn EventCacheManager>, StopHandle, StopHandle, StopHandle, Option<StopHandle>, Option<StopHandle>, MetricsStopper, MassaSurveyStopper)
    \ No newline at end of file diff --git a/massa_node/fn.load_wallet.html b/massa_node/fn.load_wallet.html index 3ac3d0cd8a8..de40a94d816 100644 --- a/massa_node/fn.load_wallet.html +++ b/massa_node/fn.load_wallet.html @@ -1,6 +1,6 @@ -load_wallet in massa_node - Rust

    Function massa_node::load_wallet

    source ·
    pub(crate) fn load_wallet(
    +load_wallet in massa_node - Rust

    Function massa_node::load_wallet

    source ·
    pub(crate) fn load_wallet(
         password: Option<String>,
         path: &Path,
         chain_id: u64,
    -) -> Result<Arc<RwLock<Wallet>>>
    Expand description

    Load wallet, asking for passwords if necessary

    +) -> Result<Arc<RwLock<Wallet>>>
    Expand description

    Load wallet, asking for passwords if necessary

    \ No newline at end of file diff --git a/massa_node/fn.main.html b/massa_node/fn.main.html index a38ad167a37..fe7b6f2df25 100644 --- a/massa_node/fn.main.html +++ b/massa_node/fn.main.html @@ -1 +1 @@ -main in massa_node - Rust

    Function massa_node::main

    source ·
    pub(crate) fn main() -> Result<()>
    \ No newline at end of file +main in massa_node - Rust

    Function massa_node::main

    source ·
    pub(crate) fn main() -> Result<()>
    \ No newline at end of file diff --git a/massa_node/fn.run.html b/massa_node/fn.run.html index daee82d0a23..02333a11f84 100644 --- a/massa_node/fn.run.html +++ b/massa_node/fn.run.html @@ -1 +1 @@ -run in massa_node - Rust

    Function massa_node::run

    source ·
    pub(crate) async fn run(args: Args) -> Result<()>
    \ No newline at end of file +run in massa_node - Rust

    Function massa_node::run

    source ·
    pub(crate) async fn run(args: Args) -> Result<()>
    \ No newline at end of file diff --git a/massa_node/fn.stop.html b/massa_node/fn.stop.html index 53ea7b6f050..98f15a0f4d3 100644 --- a/massa_node/fn.stop.html +++ b/massa_node/fn.stop.html @@ -1,9 +1,9 @@ -stop in massa_node - Rust

    Function massa_node::stop

    source ·
    pub(crate) async fn stop(
    +stop in massa_node - Rust

    Function massa_node::stop

    source ·
    pub(crate) async fn stop(
         _consensus_event_receiver: MassaReceiver<ConsensusEvent>,
         __arg1: Managers,
    -    api_private_handle: StopHandle,
    -    api_public_handle: StopHandle,
    -    api_handle: StopHandle,
    +    api_private_handle: StopHandle,
    +    api_public_handle: StopHandle,
    +    api_handle: StopHandle,
         grpc_private_handle: Option<StopHandle>,
         grpc_public_handle: Option<StopHandle>,
         metrics_stopper: MetricsStopper,
    diff --git a/massa_node/index.html b/massa_node/index.html
    index 08ccc426d5e..bb38bb38778 100644
    --- a/massa_node/index.html
    +++ b/massa_node/index.html
    @@ -1,4 +1,4 @@
    -massa_node - Rust

    Crate massa_node

    source ·
    Expand description

    +massa_node - Rust

    Crate massa_node

    source ·
    Expand description

    diff --git a/massa_node/settings/index.html b/massa_node/settings/index.html index 27c77dbd661..f2ffbe3c5ea 100644 --- a/massa_node/settings/index.html +++ b/massa_node/settings/index.html @@ -1,4 +1,4 @@ -massa_node::settings - Rust

    Module massa_node::settings

    source ·
    Expand description

    Build here the default node settings from the configuration file toml

    +massa_node::settings - Rust

    Module massa_node::settings

    source ·
    Expand description

    Build here the default node settings from the configuration file toml

    Structs§

    \ No newline at end of file diff --git a/massa_node/settings/struct.APISettings.html b/massa_node/settings/struct.APISettings.html index b47c891623a..fc08de0a416 100644 --- a/massa_node/settings/struct.APISettings.html +++ b/massa_node/settings/struct.APISettings.html @@ -1,4 +1,4 @@ -APISettings in massa_node::settings - Rust

    Struct massa_node::settings::APISettings

    source ·
    pub struct APISettings {
    Show 18 fields +APISettings in massa_node::settings - Rust

    Struct massa_node::settings::APISettings

    source ·
    pub struct APISettings {
    Show 18 fields pub draw_lookahead_period_count: u64, pub bind_private: SocketAddr, pub bind_public: SocketAddr, @@ -18,8 +18,8 @@ pub enable_broadcast: bool, pub deferred_credits_delta: MassaTime,
    }
    Expand description

    API and server configuration, read from a file configuration.

    -

    Fields§

    §draw_lookahead_period_count: u64§bind_private: SocketAddr§bind_public: SocketAddr§bind_api: SocketAddr§max_arguments: u64§openrpc_spec_path: PathBuf§max_request_body_size: u32§max_response_body_size: u32§max_connections: u32§max_subscriptions_per_connection: u32§max_log_length: u32§allow_hosts: Vec<String>§batch_request_limit: u32§ping_interval: MassaTime§enable_http: bool§enable_ws: bool§enable_broadcast: bool§deferred_credits_delta: MassaTime

    Trait Implementations§

    source§

    impl Clone for APISettings

    source§

    fn clone(&self) -> APISettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for APISettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for APISettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §draw_lookahead_period_count: u64§bind_private: SocketAddr§bind_public: SocketAddr§bind_api: SocketAddr§max_arguments: u64§openrpc_spec_path: PathBuf§max_request_body_size: u32§max_response_body_size: u32§max_connections: u32§max_subscriptions_per_connection: u32§max_log_length: u32§allow_hosts: Vec<String>§batch_request_limit: u32§ping_interval: MassaTime§enable_http: bool§enable_ws: bool§enable_broadcast: bool§deferred_credits_delta: MassaTime

    Trait Implementations§

    source§

    impl Clone for APISettings

    source§

    fn clone(&self) -> APISettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for APISettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for APISettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -141,6 +141,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.BlockDumpSettings.html b/massa_node/settings/struct.BlockDumpSettings.html index fc6c931ae7c..ff68e32bb8c 100644 --- a/massa_node/settings/struct.BlockDumpSettings.html +++ b/massa_node/settings/struct.BlockDumpSettings.html @@ -1,8 +1,8 @@ -BlockDumpSettings in massa_node::settings - Rust

    Struct massa_node::settings::BlockDumpSettings

    source ·
    pub struct BlockDumpSettings {
    +BlockDumpSettings in massa_node::settings - Rust

    Struct massa_node::settings::BlockDumpSettings

    source ·
    pub struct BlockDumpSettings {
         pub(crate) block_dump_folder_path: PathBuf,
     }

    Fields§

    §block_dump_folder_path: PathBuf

    Where to dump blocks

    -

    Trait Implementations§

    source§

    impl Clone for BlockDumpSettings

    source§

    fn clone(&self) -> BlockDumpSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockDumpSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockDumpSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for BlockDumpSettings

    source§

    fn clone(&self) -> BlockDumpSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BlockDumpSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BlockDumpSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -124,6 +124,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.BootstrapSettings.html b/massa_node/settings/struct.BootstrapSettings.html index a75f2d8d5c6..7f670ff8cf9 100644 --- a/massa_node/settings/struct.BootstrapSettings.html +++ b/massa_node/settings/struct.BootstrapSettings.html @@ -1,4 +1,4 @@ -BootstrapSettings in massa_node::settings - Rust

    Struct massa_node::settings::BootstrapSettings

    source ·
    pub struct BootstrapSettings {
    Show 19 fields +BootstrapSettings in massa_node::settings - Rust

    Struct massa_node::settings::BootstrapSettings

    source ·
    pub struct BootstrapSettings {
    Show 19 fields pub bootstrap_list: Vec<(SocketAddr, NodeId)>, pub bootstrap_protocol: IpType, pub bootstrap_whitelist_path: PathBuf, @@ -20,8 +20,8 @@ pub bootstrap_timeout: MassaTime,
    }
    Expand description

    Bootstrap configuration.

    Fields§

    §bootstrap_list: Vec<(SocketAddr, NodeId)>§bootstrap_protocol: IpType§bootstrap_whitelist_path: PathBuf§bootstrap_blacklist_path: PathBuf§bind: Option<SocketAddr>§connect_timeout: MassaTime§read_timeout: MassaTime§write_timeout: MassaTime§read_error_timeout: MassaTime§write_error_timeout: MassaTime§retry_delay: MassaTime§max_ping: MassaTime§max_clock_delta: MassaTime§cache_duration: MassaTime§max_simultaneous_bootstraps: u32§per_ip_min_interval: MassaTime§ip_list_max_size: usize§rate_limit: u64§bootstrap_timeout: MassaTime

    Allocated time with which to manage the bootstrap process

    -

    Trait Implementations§

    source§

    impl Clone for BootstrapSettings

    source§

    fn clone(&self) -> BootstrapSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for BootstrapSettings

    source§

    fn clone(&self) -> BootstrapSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -143,6 +143,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.ConsensusSettings.html b/massa_node/settings/struct.ConsensusSettings.html index 28cb8b85a92..d2081165f76 100644 --- a/massa_node/settings/struct.ConsensusSettings.html +++ b/massa_node/settings/struct.ConsensusSettings.html @@ -1,4 +1,4 @@ -ConsensusSettings in massa_node::settings - Rust

    Struct massa_node::settings::ConsensusSettings

    source ·
    pub struct ConsensusSettings {
    +ConsensusSettings in massa_node::settings - Rust

    Struct massa_node::settings::ConsensusSettings

    source ·
    pub struct ConsensusSettings {
         pub max_discarded_blocks: usize,
         pub max_future_processing_blocks: usize,
         pub max_dependency_blocks: usize,
    @@ -21,8 +21,8 @@
     
    §broadcast_blocks_headers_channel_capacity: usize

    blocks headers channel capacity

    §broadcast_blocks_channel_capacity: usize

    blocks channel capacity

    §broadcast_filled_blocks_channel_capacity: usize

    filled blocks channel capacity

    -

    Trait Implementations§

    source§

    impl Clone for ConsensusSettings

    source§

    fn clone(&self) -> ConsensusSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ConsensusSettings

    source§

    fn clone(&self) -> ConsensusSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ConsensusSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ConsensusSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -144,6 +144,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.ExecutionSettings.html b/massa_node/settings/struct.ExecutionSettings.html index 78a9f720d8d..ad27821d78e 100644 --- a/massa_node/settings/struct.ExecutionSettings.html +++ b/massa_node/settings/struct.ExecutionSettings.html @@ -1,4 +1,4 @@ -ExecutionSettings in massa_node::settings - Rust

    Struct massa_node::settings::ExecutionSettings

    source ·
    pub struct ExecutionSettings {
    Show 13 fields +ExecutionSettings in massa_node::settings - Rust

    Struct massa_node::settings::ExecutionSettings

    source ·
    pub struct ExecutionSettings {
    Show 17 fields pub max_final_events: usize, pub readonly_queue_length: usize, pub cursor_delay: MassaTime, @@ -12,10 +12,14 @@ pub broadcast_slot_execution_output_channel_capacity: usize, pub broadcast_slot_execution_traces_channel_capacity: usize, pub execution_traces_limit: usize, + pub event_cache_path: PathBuf, + pub event_cache_size: usize, + pub event_snip_amount: usize, + pub max_event_per_query: usize,
    }

    Fields§

    §max_final_events: usize§readonly_queue_length: usize§cursor_delay: MassaTime§stats_time_window_duration: MassaTime§max_read_only_gas: u64§abi_gas_costs_file: PathBuf§hd_cache_path: PathBuf§lru_cache_size: u32§hd_cache_size: usize§snip_amount: usize§broadcast_slot_execution_output_channel_capacity: usize

    slot execution outputs channel capacity

    §broadcast_slot_execution_traces_channel_capacity: usize

    slot execution traces channel capacity

    -
    §execution_traces_limit: usize

    Trait Implementations§

    source§

    impl Clone for ExecutionSettings

    source§

    fn clone(&self) -> ExecutionSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExecutionSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +
    §execution_traces_limit: usize§event_cache_path: PathBuf§event_cache_size: usize§event_snip_amount: usize§max_event_per_query: usize

    Trait Implementations§

    source§

    impl Clone for ExecutionSettings

    source§

    fn clone(&self) -> ExecutionSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ExecutionSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ExecutionSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -137,6 +141,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.FactorySettings.html b/massa_node/settings/struct.FactorySettings.html index 51fc6970e3c..ecee9ebd688 100644 --- a/massa_node/settings/struct.FactorySettings.html +++ b/massa_node/settings/struct.FactorySettings.html @@ -1,4 +1,4 @@ -FactorySettings in massa_node::settings - Rust

    Struct massa_node::settings::FactorySettings

    source ·
    pub struct FactorySettings {
    +FactorySettings in massa_node::settings - Rust

    Struct massa_node::settings::FactorySettings

    source ·
    pub struct FactorySettings {
         pub initial_delay: MassaTime,
         pub staking_wallet_path: PathBuf,
         pub stop_production_when_zero_connections: bool,
    @@ -6,8 +6,8 @@
     

    Fields§

    §initial_delay: MassaTime

    Initial delay

    §staking_wallet_path: PathBuf

    Staking wallet file

    §stop_production_when_zero_connections: bool

    stop the production in case we are not connected to anyone

    -

    Trait Implementations§

    source§

    impl Clone for FactorySettings

    source§

    fn clone(&self) -> FactorySettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for FactorySettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for FactorySettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for FactorySettings

    source§

    fn clone(&self) -> FactorySettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for FactorySettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for FactorySettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -129,6 +129,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.GrpcApiSettings.html b/massa_node/settings/struct.GrpcApiSettings.html index e3e99de3af5..23be542f229 100644 --- a/massa_node/settings/struct.GrpcApiSettings.html +++ b/massa_node/settings/struct.GrpcApiSettings.html @@ -1,11 +1,11 @@ -GrpcApiSettings in massa_node::settings - Rust

    Struct massa_node::settings::GrpcApiSettings

    source ·
    pub struct GrpcApiSettings {
    +GrpcApiSettings in massa_node::settings - Rust

    Struct massa_node::settings::GrpcApiSettings

    source ·
    pub struct GrpcApiSettings {
         pub public: GrpcSettings,
         pub private: GrpcSettings,
     }
    Expand description

    gRPC API settings.

    Fields§

    §public: GrpcSettings

    Public server gRPC configuration.

    §private: GrpcSettings

    Private server gRPC configuration.

    -

    Trait Implementations§

    source§

    impl Clone for GrpcApiSettings

    source§

    fn clone(&self) -> GrpcApiSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcApiSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcApiSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for GrpcApiSettings

    source§

    fn clone(&self) -> GrpcApiSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcApiSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcApiSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -127,6 +127,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.GrpcSettings.html b/massa_node/settings/struct.GrpcSettings.html index e15f66bdbc0..b94c6d3a4c6 100644 --- a/massa_node/settings/struct.GrpcSettings.html +++ b/massa_node/settings/struct.GrpcSettings.html @@ -1,4 +1,4 @@ -GrpcSettings in massa_node::settings - Rust

    Struct massa_node::settings::GrpcSettings

    source ·
    pub struct GrpcSettings {
    Show 42 fields +GrpcSettings in massa_node::settings - Rust

    Struct massa_node::settings::GrpcSettings

    source ·
    pub struct GrpcSettings {
    Show 42 fields pub enabled: bool, pub accept_http1: bool, pub enable_cors: bool, @@ -85,8 +85,8 @@
    §client_certificate_authority_root_path: PathBuf

    client certificate authority root path

    §client_certificate_path: PathBuf

    client certificate path

    §client_private_key_path: PathBuf

    client private key path

    -

    Trait Implementations§

    source§

    impl Clone for GrpcSettings

    source§

    fn clone(&self) -> GrpcSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for GrpcSettings

    source§

    fn clone(&self) -> GrpcSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for GrpcSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for GrpcSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -208,6 +208,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.LedgerSettings.html b/massa_node/settings/struct.LedgerSettings.html index 686e8f62ba7..87727c2836b 100644 --- a/massa_node/settings/struct.LedgerSettings.html +++ b/massa_node/settings/struct.LedgerSettings.html @@ -1,12 +1,12 @@ -LedgerSettings in massa_node::settings - Rust

    Struct massa_node::settings::LedgerSettings

    source ·
    pub struct LedgerSettings {
    +LedgerSettings in massa_node::settings - Rust

    Struct massa_node::settings::LedgerSettings

    source ·
    pub struct LedgerSettings {
         pub initial_ledger_path: PathBuf,
         pub disk_ledger_path: PathBuf,
         pub final_history_length: usize,
         pub initial_deferred_credits_path: Option<PathBuf>,
         pub ledger_backup_periods_interval: u64,
         pub max_ledger_backups: u64,
    -}

    Fields§

    §initial_ledger_path: PathBuf§disk_ledger_path: PathBuf§final_history_length: usize§initial_deferred_credits_path: Option<PathBuf>§ledger_backup_periods_interval: u64§max_ledger_backups: u64

    Trait Implementations§

    source§

    impl Clone for LedgerSettings

    source§

    fn clone(&self) -> LedgerSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §initial_ledger_path: PathBuf§disk_ledger_path: PathBuf§final_history_length: usize§initial_deferred_credits_path: Option<PathBuf>§ledger_backup_periods_interval: u64§max_ledger_backups: u64

    Trait Implementations§

    source§

    impl Clone for LedgerSettings

    source§

    fn clone(&self) -> LedgerSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LedgerSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for LedgerSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -128,6 +128,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.LoggingSettings.html b/massa_node/settings/struct.LoggingSettings.html index cab8d0d95ed..eea66da83ff 100644 --- a/massa_node/settings/struct.LoggingSettings.html +++ b/massa_node/settings/struct.LoggingSettings.html @@ -1,7 +1,7 @@ -LoggingSettings in massa_node::settings - Rust

    Struct massa_node::settings::LoggingSettings

    source ·
    pub struct LoggingSettings {
    +LoggingSettings in massa_node::settings - Rust

    Struct massa_node::settings::LoggingSettings

    source ·
    pub struct LoggingSettings {
         pub level: usize,
    -}

    Fields§

    §level: usize

    Trait Implementations§

    source§

    impl Clone for LoggingSettings

    source§

    fn clone(&self) -> LoggingSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LoggingSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for LoggingSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §level: usize

    Trait Implementations§

    source§

    impl Clone for LoggingSettings

    source§

    fn clone(&self) -> LoggingSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for LoggingSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for LoggingSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -123,6 +123,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.MetricsSettings.html b/massa_node/settings/struct.MetricsSettings.html index 6fdc1994f6c..ff83f0c2ce5 100644 --- a/massa_node/settings/struct.MetricsSettings.html +++ b/massa_node/settings/struct.MetricsSettings.html @@ -1,12 +1,12 @@ -MetricsSettings in massa_node::settings - Rust

    Struct massa_node::settings::MetricsSettings

    source ·
    pub struct MetricsSettings {
    +MetricsSettings in massa_node::settings - Rust

    Struct massa_node::settings::MetricsSettings

    source ·
    pub struct MetricsSettings {
         pub enabled: bool,
         pub bind: SocketAddr,
         pub tick_delay: MassaTime,
     }

    Fields§

    §enabled: bool

    enable prometheus metrics

    §bind: SocketAddr

    port on which to listen for prometheus metrics

    §tick_delay: MassaTime

    interval at which to update metrics

    -

    Trait Implementations§

    source§

    impl Clone for MetricsSettings

    source§

    fn clone(&self) -> MetricsSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MetricsSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for MetricsSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for MetricsSettings

    source§

    fn clone(&self) -> MetricsSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MetricsSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for MetricsSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -128,6 +128,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.NetworkSettings.html b/massa_node/settings/struct.NetworkSettings.html index 933750e9327..ac7c0ae1df1 100644 --- a/massa_node/settings/struct.NetworkSettings.html +++ b/massa_node/settings/struct.NetworkSettings.html @@ -1,8 +1,8 @@ -NetworkSettings in massa_node::settings - Rust

    Struct massa_node::settings::NetworkSettings

    source ·
    pub struct NetworkSettings {
    +NetworkSettings in massa_node::settings - Rust

    Struct massa_node::settings::NetworkSettings

    source ·
    pub struct NetworkSettings {
         pub routable_ip: Option<IpAddr>,
     }

    Fields§

    §routable_ip: Option<IpAddr>

    Ip seen by others. If none the bind ip is used

    -

    Trait Implementations§

    source§

    impl Clone for NetworkSettings

    source§

    fn clone(&self) -> NetworkSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NetworkSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for NetworkSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for NetworkSettings

    source§

    fn clone(&self) -> NetworkSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NetworkSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for NetworkSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -124,6 +124,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.PoolSettings.html b/massa_node/settings/struct.PoolSettings.html index 8afa4fb63f7..eef74d63e42 100644 --- a/massa_node/settings/struct.PoolSettings.html +++ b/massa_node/settings/struct.PoolSettings.html @@ -1,4 +1,4 @@ -PoolSettings in massa_node::settings - Rust

    Struct massa_node::settings::PoolSettings

    source ·
    pub struct PoolSettings {
    +PoolSettings in massa_node::settings - Rust

    Struct massa_node::settings::PoolSettings

    source ·
    pub struct PoolSettings {
         pub max_operation_pool_size: usize,
         pub max_operation_pool_excess_items: usize,
         pub operation_max_future_start_delay: MassaTime,
    @@ -12,8 +12,8 @@
     

    Fields§

    §max_operation_pool_size: usize§max_operation_pool_excess_items: usize§operation_max_future_start_delay: MassaTime§operation_pool_refresh_interval: MassaTime§max_endorsements_pool_size_per_thread: usize§max_item_return_count: usize§broadcast_endorsements_channel_capacity: usize

    endorsements channel capacity

    §broadcast_operations_channel_capacity: usize

    operations channel capacity

    §minimal_fees: Amount

    operations minimum fees for block creator

    -

    Trait Implementations§

    source§

    impl Clone for PoolSettings

    source§

    fn clone(&self) -> PoolSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoolSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for PoolSettings

    source§

    fn clone(&self) -> PoolSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoolSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -135,6 +135,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.ProtocolSettings.html b/massa_node/settings/struct.ProtocolSettings.html index d1d635b2aa7..6c989b2ee19 100644 --- a/massa_node/settings/struct.ProtocolSettings.html +++ b/massa_node/settings/struct.ProtocolSettings.html @@ -1,4 +1,4 @@ -ProtocolSettings in massa_node::settings - Rust

    Struct massa_node::settings::ProtocolSettings

    source ·
    pub struct ProtocolSettings {
    Show 40 fields +ProtocolSettings in massa_node::settings - Rust

    Struct massa_node::settings::ProtocolSettings

    source ·
    pub struct ProtocolSettings {
    Show 40 fields pub ask_block_timeout: MassaTime, pub max_blocks_kept_for_propagation: usize, pub max_block_propagation_time: MassaTime, @@ -82,8 +82,8 @@
    §default_category_info: PeerCategoryInfo

    Limits for default category

    §test_oldest_peer_cooldown: MassaTime

    Cooldown before testing again an old peer

    §rate_limit: u64

    Rate limitation to apply to the data stream (per second)

    -

    Trait Implementations§

    source§

    impl Clone for ProtocolSettings

    source§

    fn clone(&self) -> ProtocolSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProtocolSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ProtocolSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ProtocolSettings

    source§

    fn clone(&self) -> ProtocolSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProtocolSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ProtocolSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -205,6 +205,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.SETTINGS.html b/massa_node/settings/struct.SETTINGS.html index e40d9c13ec0..5325e428568 100644 --- a/massa_node/settings/struct.SETTINGS.html +++ b/massa_node/settings/struct.SETTINGS.html @@ -1,4 +1,4 @@ -SETTINGS in massa_node::settings - Rust

    Struct massa_node::settings::SETTINGS

    source ·
    pub struct SETTINGS {
    +SETTINGS in massa_node::settings - Rust

    Struct massa_node::settings::SETTINGS

    source ·
    pub struct SETTINGS {
         __private_field: (),
     }

    Fields§

    §__private_field: ()

    Trait Implementations§

    source§

    impl Deref for SETTINGS

    §

    type Target = Settings

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Settings

    Dereferences the value.
    source§

    impl LazyStatic for SETTINGS

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -118,5 +118,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.SelectionSettings.html b/massa_node/settings/struct.SelectionSettings.html index 3cb58fc93de..580eb6c1d6a 100644 --- a/massa_node/settings/struct.SelectionSettings.html +++ b/massa_node/settings/struct.SelectionSettings.html @@ -1,7 +1,7 @@ -SelectionSettings in massa_node::settings - Rust

    Struct massa_node::settings::SelectionSettings

    source ·
    pub struct SelectionSettings {
    +SelectionSettings in massa_node::settings - Rust

    Struct massa_node::settings::SelectionSettings

    source ·
    pub struct SelectionSettings {
         pub initial_rolls_path: PathBuf,
    -}

    Fields§

    §initial_rolls_path: PathBuf

    Trait Implementations§

    source§

    impl Clone for SelectionSettings

    source§

    fn clone(&self) -> SelectionSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SelectionSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SelectionSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §initial_rolls_path: PathBuf

    Trait Implementations§

    source§

    impl Clone for SelectionSettings

    source§

    fn clone(&self) -> SelectionSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SelectionSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SelectionSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -123,6 +123,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.Settings.html b/massa_node/settings/struct.Settings.html index 2164d42dfbb..a7e3cf2f0c7 100644 --- a/massa_node/settings/struct.Settings.html +++ b/massa_node/settings/struct.Settings.html @@ -1,4 +1,4 @@ -Settings in massa_node::settings - Rust

    Struct massa_node::settings::Settings

    source ·
    pub struct Settings {
    Show 15 fields +Settings in massa_node::settings - Rust

    Struct massa_node::settings::Settings

    source ·
    pub struct Settings {
    Show 15 fields pub logging: LoggingSettings, pub protocol: ProtocolSettings, pub consensus: ConsensusSettings, @@ -14,8 +14,8 @@ pub metrics: MetricsSettings, pub versioning: VersioningSettings, pub block_dump: BlockDumpSettings, -
    }

    Fields§

    §logging: LoggingSettings§protocol: ProtocolSettings§consensus: ConsensusSettings§api: APISettings§network: NetworkSettings§bootstrap: BootstrapSettings§pool: PoolSettings§execution: ExecutionSettings§ledger: LedgerSettings§selector: SelectionSettings§factory: FactorySettings§grpc: GrpcApiSettings§metrics: MetricsSettings§versioning: VersioningSettings§block_dump: BlockDumpSettings

    Trait Implementations§

    source§

    impl Clone for Settings

    source§

    fn clone(&self) -> Settings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Settings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Settings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    }

    Fields§

    §logging: LoggingSettings§protocol: ProtocolSettings§consensus: ConsensusSettings§api: APISettings§network: NetworkSettings§bootstrap: BootstrapSettings§pool: PoolSettings§execution: ExecutionSettings§ledger: LedgerSettings§selector: SelectionSettings§factory: FactorySettings§grpc: GrpcApiSettings§metrics: MetricsSettings§versioning: VersioningSettings§block_dump: BlockDumpSettings

    Trait Implementations§

    source§

    impl Clone for Settings

    source§

    fn clone(&self) -> Settings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Settings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Settings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -137,6 +137,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/settings/struct.VersioningSettings.html b/massa_node/settings/struct.VersioningSettings.html index 8bf8c8d9897..d5aed501ca7 100644 --- a/massa_node/settings/struct.VersioningSettings.html +++ b/massa_node/settings/struct.VersioningSettings.html @@ -1,7 +1,7 @@ -VersioningSettings in massa_node::settings - Rust

    Struct massa_node::settings::VersioningSettings

    source ·
    pub struct VersioningSettings {
    +VersioningSettings in massa_node::settings - Rust

    Struct massa_node::settings::VersioningSettings

    source ·
    pub struct VersioningSettings {
         pub(crate) mip_stats_warn_announced_version: u32,
    -}

    Fields§

    §mip_stats_warn_announced_version: u32

    Trait Implementations§

    source§

    impl Clone for VersioningSettings

    source§

    fn clone(&self) -> VersioningSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for VersioningSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for VersioningSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §mip_stats_warn_announced_version: u32

    Trait Implementations§

    source§

    impl Clone for VersioningSettings

    source§

    fn clone(&self) -> VersioningSettings

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for VersioningSettings

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for VersioningSettings

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -123,6 +123,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/struct.Args.html b/massa_node/struct.Args.html index f3119d6664e..7f7798d325d 100644 --- a/massa_node/struct.Args.html +++ b/massa_node/struct.Args.html @@ -1,20 +1,20 @@ -Args in massa_node - Rust

    Struct massa_node::Args

    source ·
    pub(crate) struct Args {
    +Args in massa_node - Rust

    Struct massa_node::Args

    source ·
    pub(crate) struct Args {
         pub(crate) keep_ledger: bool,
         pub(crate) password: Option<String>,
         pub(crate) restart_from_snapshot_at_period: Option<u64>,
     }

    Fields§

    §keep_ledger: bool§password: Option<String>

    Wallet password

    §restart_from_snapshot_at_period: Option<u64>

    restart_from_snapshot_at_period

    -

    Trait Implementations§

    source§

    impl Args for Args

    source§

    fn group_id() -> Option<Id>

    Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
    source§

    fn augment_args<'b>(__clap_app: Command) -> Command

    Append to [Command] so it can instantiate Self via -[FromArgMatches::from_arg_matches_mut] Read more
    source§

    fn augment_args_for_update<'b>(__clap_app: Command) -> Command

    Append to [Command] so it can instantiate self via -[FromArgMatches::update_from_arg_matches_mut] Read more
    source§

    impl CommandFactory for Args

    source§

    fn command<'b>() -> Command

    Build a [Command] that can instantiate Self. Read more
    source§

    fn command_for_update<'b>() -> Command

    Build a [Command] that can update self. Read more
    source§

    impl FromArgMatches for Args

    source§

    fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

    Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
    source§

    fn from_arg_matches_mut( +

    Trait Implementations§

    source§

    impl Args for Args

    source§

    fn group_id() -> Option<Id>

    Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
    source§

    fn augment_args<'b>(__clap_app: Command) -> Command

    Append to [Command] so it can instantiate Self via +[FromArgMatches::from_arg_matches_mut] Read more
    source§

    fn augment_args_for_update<'b>(__clap_app: Command) -> Command

    Append to [Command] so it can instantiate self via +[FromArgMatches::update_from_arg_matches_mut] Read more
    source§

    impl CommandFactory for Args

    source§

    fn command<'b>() -> Command

    Build a [Command] that can instantiate Self. Read more
    source§

    fn command_for_update<'b>() -> Command

    Build a [Command] that can update self. Read more
    source§

    impl FromArgMatches for Args

    source§

    fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

    Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
    source§

    fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, -) -> Result<Self, Error>

    Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
    source§

    fn update_from_arg_matches( +) -> Result<Self, Error>

    Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
    source§

    fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, -) -> Result<(), Error>

    Assign values from ArgMatches to self.
    source§

    fn update_from_arg_matches_mut( +) -> Result<(), Error>

    Assign values from ArgMatches to self.
    source§

    fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, -) -> Result<(), Error>

    Assign values from ArgMatches to self.
    source§

    impl Parser for Args

    §

    fn parse() -> Self

    Parse from std::env::args_os(), [exit][Error::exit] on error.
    §

    fn try_parse() -> Result<Self, Error>

    Parse from std::env::args_os(), return Err on error.
    §

    fn parse_from<I, T>(itr: I) -> Self
    where +) -> Result<(), Error>

    Assign values from ArgMatches to self.
    source§

    impl Parser for Args

    §

    fn parse() -> Self

    Parse from std::env::args_os(), [exit][Error::exit] on error.
    §

    fn try_parse() -> Result<Self, Error>

    Parse from std::env::args_os(), return Err on error.
    §

    fn parse_from<I, T>(itr: I) -> Self
    where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

    Parse from iterator, [exit][Error::exit] on error.
    §

    fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
    where I: IntoIterator<Item = T>, @@ -140,5 +140,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/struct.Managers.html b/massa_node/struct.Managers.html index 574d1a3ed95..f8eeb14f750 100644 --- a/massa_node/struct.Managers.html +++ b/massa_node/struct.Managers.html @@ -1,12 +1,13 @@ -Managers in massa_node - Rust

    Struct massa_node::Managers

    source ·
    pub(crate) struct Managers {
    +Managers in massa_node - Rust

    Struct massa_node::Managers

    source ·
    pub(crate) struct Managers {
         pub(crate) bootstrap_manager: Option<BootstrapManager>,
         pub(crate) consensus_manager: Box<dyn ConsensusManager>,
    -    pub(crate) execution_manager: Box<dyn ExecutionManager>,
    +    pub(crate) execution_manager: Box<dyn ExecutionManager>,
         pub(crate) selector_manager: Box<dyn SelectorManager>,
         pub(crate) pool_manager: Box<dyn PoolManager>,
         pub(crate) protocol_manager: Box<dyn ProtocolManager>,
         pub(crate) factory_manager: Box<dyn FactoryManager>,
    -}

    Fields§

    §bootstrap_manager: Option<BootstrapManager>§consensus_manager: Box<dyn ConsensusManager>§execution_manager: Box<dyn ExecutionManager>§selector_manager: Box<dyn SelectorManager>§pool_manager: Box<dyn PoolManager>§protocol_manager: Box<dyn ProtocolManager>§factory_manager: Box<dyn FactoryManager>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where + pub(crate) event_cache_manager: Box<dyn EventCacheManager>, +}

    Fields§

    §bootstrap_manager: Option<BootstrapManager>§consensus_manager: Box<dyn ConsensusManager>§execution_manager: Box<dyn ExecutionManager>§selector_manager: Box<dyn SelectorManager>§pool_manager: Box<dyn PoolManager>§protocol_manager: Box<dyn ProtocolManager>§factory_manager: Box<dyn FactoryManager>§event_cache_manager: Box<dyn EventCacheManager>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where @@ -123,4 +124,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/survey/struct.MassaSurvey.html b/massa_node/survey/struct.MassaSurvey.html index 8dc69f80100..fb5346bc36d 100644 --- a/massa_node/survey/struct.MassaSurvey.html +++ b/massa_node/survey/struct.MassaSurvey.html @@ -1,6 +1,6 @@ -MassaSurvey in massa_node::survey - Rust

    Struct massa_node::survey::MassaSurvey

    source ·
    pub struct MassaSurvey {}

    Implementations§

    source§

    impl MassaSurvey

    source

    pub fn run( +MassaSurvey in massa_node::survey - Rust

    Struct massa_node::survey::MassaSurvey

    source ·
    pub struct MassaSurvey {}

    Implementations§

    source§

    impl MassaSurvey

    source

    pub fn run( tick_delay: Duration, - execution_controller: Box<dyn ExecutionController>, + execution_controller: Box<dyn ExecutionController>, pool_controller: Box<dyn PoolController>, massa_metrics: MassaMetrics, config: (u8, MassaTime, MassaTime, u64, u64), @@ -123,5 +123,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_node/survey/struct.MassaSurveyStopper.html b/massa_node/survey/struct.MassaSurveyStopper.html index 645b6ff6abe..3af1bfd65eb 100644 --- a/massa_node/survey/struct.MassaSurveyStopper.html +++ b/massa_node/survey/struct.MassaSurveyStopper.html @@ -1,4 +1,4 @@ -MassaSurveyStopper in massa_node::survey - Rust

    Struct massa_node::survey::MassaSurveyStopper

    source ·
    pub struct MassaSurveyStopper {
    +MassaSurveyStopper in massa_node::survey - Rust

    Struct massa_node::survey::MassaSurveyStopper

    source ·
    pub struct MassaSurveyStopper {
         tx_stopper: Option<MassaSender<()>>,
         handle: Option<JoinHandle<()>>,
     }

    Fields§

    §tx_stopper: Option<MassaSender<()>>§handle: Option<JoinHandle<()>>

    Implementations§

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -119,5 +119,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_exports/channels/struct.PoolBroadcasts.html b/massa_pool_exports/channels/struct.PoolBroadcasts.html index efe98c74849..25f1c69747e 100644 --- a/massa_pool_exports/channels/struct.PoolBroadcasts.html +++ b/massa_pool_exports/channels/struct.PoolBroadcasts.html @@ -1,4 +1,4 @@ -PoolBroadcasts in massa_pool_exports::channels - Rust

    Struct massa_pool_exports::channels::PoolBroadcasts

    source ·
    pub struct PoolBroadcasts {
    +PoolBroadcasts in massa_pool_exports::channels - Rust

    Struct massa_pool_exports::channels::PoolBroadcasts

    source ·
    pub struct PoolBroadcasts {
         pub endorsement_sender: Sender<SecureShareEndorsement>,
         pub operation_sender: Sender<SecureShareOperation>,
     }
    Expand description

    Broadcasts used by the pool worker to send new operations and endorsements

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_exports/channels/struct.PoolChannels.html b/massa_pool_exports/channels/struct.PoolChannels.html index 3b275ba79e6..12c5b7c0530 100644 --- a/massa_pool_exports/channels/struct.PoolChannels.html +++ b/massa_pool_exports/channels/struct.PoolChannels.html @@ -1,9 +1,9 @@ -PoolChannels in massa_pool_exports::channels - Rust

    Struct massa_pool_exports::channels::PoolChannels

    source ·
    pub struct PoolChannels {
    -    pub execution_controller: Box<dyn ExecutionController>,
    +PoolChannels in massa_pool_exports::channels - Rust

    Struct massa_pool_exports::channels::PoolChannels

    source ·
    pub struct PoolChannels {
    +    pub execution_controller: Box<dyn ExecutionController>,
         pub selector: Box<dyn SelectorController>,
         pub broadcasts: PoolBroadcasts,
     }
    Expand description

    channels used by the pool worker

    -

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Communication with the execution module

    +

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Communication with the execution module

    §selector: Box<dyn SelectorController>

    Selector to get draws

    §broadcasts: PoolBroadcasts

    Broadcasts used by the pool worker to send new operations and endorsements

    Trait Implementations§

    source§

    impl Clone for PoolChannels

    source§

    fn clone(&self) -> PoolChannels

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -121,4 +121,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_exports/config/struct.PoolConfig.html b/massa_pool_exports/config/struct.PoolConfig.html index c91ac9a4d99..553758fad83 100644 --- a/massa_pool_exports/config/struct.PoolConfig.html +++ b/massa_pool_exports/config/struct.PoolConfig.html @@ -1,4 +1,4 @@ -PoolConfig in massa_pool_exports::config - Rust

    Struct massa_pool_exports::config::PoolConfig

    source ·
    pub struct PoolConfig {
    Show 27 fields +PoolConfig in massa_pool_exports::config - Rust

    Struct massa_pool_exports::config::PoolConfig

    source ·
    pub struct PoolConfig {
    Show 27 fields pub thread_count: u8, pub max_block_size: u32, pub max_block_gas: u64, @@ -59,9 +59,9 @@
  • If from snapshot: retrieve from args
  • If from bootstrap: set during bootstrap
  • -

    Trait Implementations§

    source§

    impl Clone for PoolConfig

    source§

    fn clone(&self) -> PoolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for PoolConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for PoolConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for PoolConfig

    source§

    fn clone(&self) -> PoolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for PoolConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for PoolConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -177,5 +177,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_exports/struct.PoolBroadcasts.html b/massa_pool_exports/struct.PoolBroadcasts.html index 938f84b0047..43cada5aab8 100644 --- a/massa_pool_exports/struct.PoolBroadcasts.html +++ b/massa_pool_exports/struct.PoolBroadcasts.html @@ -1,4 +1,4 @@ -PoolBroadcasts in massa_pool_exports - Rust

    Struct massa_pool_exports::PoolBroadcasts

    source ·
    pub struct PoolBroadcasts {
    +PoolBroadcasts in massa_pool_exports - Rust

    Struct massa_pool_exports::PoolBroadcasts

    source ·
    pub struct PoolBroadcasts {
         pub endorsement_sender: Sender<SecureShareEndorsement>,
         pub operation_sender: Sender<SecureShareOperation>,
     }
    Expand description

    Broadcasts used by the pool worker to send new operations and endorsements

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_exports/struct.PoolChannels.html b/massa_pool_exports/struct.PoolChannels.html index 17f14aa0812..920386240e9 100644 --- a/massa_pool_exports/struct.PoolChannels.html +++ b/massa_pool_exports/struct.PoolChannels.html @@ -1,9 +1,9 @@ -PoolChannels in massa_pool_exports - Rust

    Struct massa_pool_exports::PoolChannels

    source ·
    pub struct PoolChannels {
    -    pub execution_controller: Box<dyn ExecutionController>,
    +PoolChannels in massa_pool_exports - Rust

    Struct massa_pool_exports::PoolChannels

    source ·
    pub struct PoolChannels {
    +    pub execution_controller: Box<dyn ExecutionController>,
         pub selector: Box<dyn SelectorController>,
         pub broadcasts: PoolBroadcasts,
     }
    Expand description

    channels used by the pool worker

    -

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Communication with the execution module

    +

    Fields§

    §execution_controller: Box<dyn ExecutionController>

    Communication with the execution module

    §selector: Box<dyn SelectorController>

    Selector to get draws

    §broadcasts: PoolBroadcasts

    Broadcasts used by the pool worker to send new operations and endorsements

    Trait Implementations§

    source§

    impl Clone for PoolChannels

    source§

    fn clone(&self) -> PoolChannels

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -121,4 +121,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_exports/struct.PoolConfig.html b/massa_pool_exports/struct.PoolConfig.html index 5bf174c00e2..157f0a8ff55 100644 --- a/massa_pool_exports/struct.PoolConfig.html +++ b/massa_pool_exports/struct.PoolConfig.html @@ -1,4 +1,4 @@ -PoolConfig in massa_pool_exports - Rust

    Struct massa_pool_exports::PoolConfig

    source ·
    pub struct PoolConfig {
    Show 27 fields +PoolConfig in massa_pool_exports - Rust

    Struct massa_pool_exports::PoolConfig

    source ·
    pub struct PoolConfig {
    Show 27 fields pub thread_count: u8, pub max_block_size: u32, pub max_block_gas: u64, @@ -59,9 +59,9 @@
  • If from snapshot: retrieve from args
  • If from bootstrap: set during bootstrap
  • -

    Trait Implementations§

    source§

    impl Clone for PoolConfig

    source§

    fn clone(&self) -> PoolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for PoolConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for PoolConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for PoolConfig

    source§

    fn clone(&self) -> PoolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PoolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for PoolConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for PoolConfig

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

    Converts some archived metadata to the pointer metadata for itself.
    source§

    impl<T> Borrow<T> for T
    where @@ -177,5 +177,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/controller_impl/enum.Command.html b/massa_pool_worker/controller_impl/enum.Command.html index 44f237eff64..0dbbdb0c5d9 100644 --- a/massa_pool_worker/controller_impl/enum.Command.html +++ b/massa_pool_worker/controller_impl/enum.Command.html @@ -1,4 +1,4 @@ -Command in massa_pool_worker::controller_impl - Rust

    Enum massa_pool_worker::controller_impl::Command

    source ·
    pub enum Command {
    +Command in massa_pool_worker::controller_impl - Rust

    Enum massa_pool_worker::controller_impl::Command

    source ·
    pub enum Command {
         AddItems(Storage),
         AddDenunciationPrecursor(DenunciationPrecursor),
         NotifyFinalCsPeriods(Vec<u64>),
    @@ -119,4 +119,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/controller_impl/struct.PoolControllerImpl.html b/massa_pool_worker/controller_impl/struct.PoolControllerImpl.html index eb154b8810f..6d25a0c4541 100644 --- a/massa_pool_worker/controller_impl/struct.PoolControllerImpl.html +++ b/massa_pool_worker/controller_impl/struct.PoolControllerImpl.html @@ -1,5 +1,5 @@ -PoolControllerImpl in massa_pool_worker::controller_impl - Rust
    pub struct PoolControllerImpl {
    -    pub(crate) _config: PoolConfig,
    +PoolControllerImpl in massa_pool_worker::controller_impl - Rust
    pub struct PoolControllerImpl {
    +    pub(crate) _config: PoolConfig,
         pub(crate) operation_pool: Arc<RwLock<OperationPool>>,
         pub(crate) endorsement_pool: Arc<RwLock<EndorsementPool>>,
         pub(crate) denunciation_pool: Arc<RwLock<DenunciationPool>>,
    @@ -8,7 +8,7 @@
         pub(crate) denunciations_input_sender: SyncSender<Command>,
         pub last_cs_final_periods: Vec<u64>,
     }
    Expand description

    Pool controller

    -

    Fields§

    §_config: PoolConfig

    Config

    +

    Fields§

    §_config: PoolConfig

    Config

    §operation_pool: Arc<RwLock<OperationPool>>

    Shared reference to the operation pool

    §endorsement_pool: Arc<RwLock<EndorsementPool>>

    Shared reference to the endorsement pool

    §denunciation_pool: Arc<RwLock<DenunciationPool>>

    Shared reference to the denunciation pool

    @@ -16,28 +16,28 @@
    §endorsements_input_sender: SyncSender<Command>

    Endorsement write worker command sender

    §denunciations_input_sender: SyncSender<Command>

    Denunciation write worker command sender

    §last_cs_final_periods: Vec<u64>

    Last final periods from Consensus

    -

    Trait Implementations§

    source§

    impl Clone for PoolControllerImpl

    source§

    fn clone(&self) -> PoolControllerImpl

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl PoolController for PoolControllerImpl

    source§

    fn add_operations(&mut self, ops: Storage)

    Asynchronously add operations to pool. Simply print a warning on failure.

    -
    source§

    fn add_endorsements(&mut self, endorsements: Storage)

    Asynchronously add endorsements to pool. Simply print a warning on failure.

    -
    source§

    fn add_denunciation_precursor( +

    Trait Implementations§

    source§

    impl Clone for PoolControllerImpl

    source§

    fn clone(&self) -> PoolControllerImpl

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl PoolController for PoolControllerImpl

    source§

    fn add_operations(&mut self, ops: Storage)

    Asynchronously add operations to pool. Simply print a warning on failure.

    +
    source§

    fn add_endorsements(&mut self, endorsements: Storage)

    Asynchronously add endorsements to pool. Simply print a warning on failure.

    +
    source§

    fn add_denunciation_precursor( &self, denunciation_precursor: DenunciationPrecursor, )

    Add denunciation precursor to pool

    -
    source§

    fn notify_final_cs_periods(&mut self, final_cs_periods: &[u64])

    Asynchronously notify of new final consensus periods. Simply print a warning on failure.

    -
    source§

    fn get_block_operations(&self, slot: &Slot) -> (Vec<OperationId>, Storage)

    get operations for block creation

    -
    source§

    fn get_block_endorsements( +

    source§

    fn notify_final_cs_periods(&mut self, final_cs_periods: &[u64])

    Asynchronously notify of new final consensus periods. Simply print a warning on failure.

    +
    source§

    fn get_block_operations(&self, slot: &Slot) -> (Vec<OperationId>, Storage)

    get operations for block creation

    +
    source§

    fn get_block_endorsements( &self, target_block: &BlockId, target_slot: &Slot, ) -> (Vec<Option<EndorsementId>>, Storage)

    get endorsements for a block

    -
    source§

    fn get_block_denunciations(&self, target_slot: &Slot) -> Vec<Denunciation>

    get denunciationsq for a block

    -
    source§

    fn get_endorsement_count(&self) -> usize

    Get the number of endorsements in the pool

    -
    source§

    fn get_operation_count(&self) -> usize

    Get the number of operations in the pool

    -
    source§

    fn contains_endorsements(&self, endorsements: &[EndorsementId]) -> Vec<bool>

    Check if the pool contains a list of endorsements. Returns one boolean per item.

    -
    source§

    fn contains_operations(&self, operations: &[OperationId]) -> Vec<bool>

    Check if the pool contains a list of operations. Returns one boolean per item.

    -
    source§

    fn get_denunciation_count(&self) -> usize

    Get the number of denunciations in the pool

    -
    source§

    fn clone_box(&self) -> Box<dyn PoolController>

    Returns a boxed clone of self. +

    source§

    fn get_block_denunciations(&self, target_slot: &Slot) -> Vec<Denunciation>

    get denunciationsq for a block

    +
    source§

    fn get_endorsement_count(&self) -> usize

    Get the number of endorsements in the pool

    +
    source§

    fn get_operation_count(&self) -> usize

    Get the number of operations in the pool

    +
    source§

    fn contains_endorsements(&self, endorsements: &[EndorsementId]) -> Vec<bool>

    Check if the pool contains a list of endorsements. Returns one boolean per item.

    +
    source§

    fn contains_operations(&self, operations: &[OperationId]) -> Vec<bool>

    Check if the pool contains a list of operations. Returns one boolean per item.

    +
    source§

    fn get_denunciation_count(&self) -> usize

    Get the number of denunciations in the pool

    +
    source§

    fn clone_box(&self) -> Box<dyn PoolController>

    Returns a boxed clone of self. Allows cloning Box<dyn PoolController>,

    -
    source§

    fn get_final_cs_periods(&self) -> Vec<u64>

    Get final consensus periods

    +
    source§

    fn get_final_cs_periods(&self) -> Vec<u64>

    Get final consensus periods

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -153,4 +153,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/controller_impl/struct.PoolManagerImpl.html b/massa_pool_worker/controller_impl/struct.PoolManagerImpl.html index 0954d7a6366..1bc5aa8ff66 100644 --- a/massa_pool_worker/controller_impl/struct.PoolManagerImpl.html +++ b/massa_pool_worker/controller_impl/struct.PoolManagerImpl.html @@ -1,4 +1,4 @@ -PoolManagerImpl in massa_pool_worker::controller_impl - Rust
    pub struct PoolManagerImpl {
    +PoolManagerImpl in massa_pool_worker::controller_impl - Rust
    pub struct PoolManagerImpl {
         pub(crate) operations_thread_handle: Option<JoinHandle<()>>,
         pub(crate) endorsements_thread_handle: Option<JoinHandle<()>>,
         pub(crate) denunciations_thread_handle: Option<JoinHandle<()>>,
    @@ -13,7 +13,7 @@
     
    §operations_input_sender: SyncSender<Command>

    Operations input data mpsc (used to stop the pool thread)

    §endorsements_input_sender: SyncSender<Command>

    Endorsements input data mpsc (used to stop the pool thread)

    §denunciations_input_sender: SyncSender<Command>

    Denunciations input data mpsc (used to stop the pool thread)

    -

    Trait Implementations§

    source§

    impl PoolManager for PoolManagerImpl

    source§

    fn stop(&mut self)

    Stops the worker

    +

    Trait Implementations§

    source§

    impl PoolManager for PoolManagerImpl

    source§

    fn stop(&mut self)

    Stops the worker

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/denunciation_pool/enum.DenunciationStatus.html b/massa_pool_worker/denunciation_pool/enum.DenunciationStatus.html index 77d0a2d02cb..1f39ad89736 100644 --- a/massa_pool_worker/denunciation_pool/enum.DenunciationStatus.html +++ b/massa_pool_worker/denunciation_pool/enum.DenunciationStatus.html @@ -1,4 +1,4 @@ -DenunciationStatus in massa_pool_worker::denunciation_pool - Rust
    enum DenunciationStatus {
    +DenunciationStatus in massa_pool_worker::denunciation_pool - Rust
    enum DenunciationStatus {
         Accumulating(DenunciationPrecursor),
         DenunciationEmitted(Denunciation),
     }
    Expand description

    A Value (as in Key/Value) for denunciation pool internal cache

    @@ -121,4 +121,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/denunciation_pool/struct.DenunciationPool.html b/massa_pool_worker/denunciation_pool/struct.DenunciationPool.html index 405e6208349..c965748cbd7 100644 --- a/massa_pool_worker/denunciation_pool/struct.DenunciationPool.html +++ b/massa_pool_worker/denunciation_pool/struct.DenunciationPool.html @@ -1,13 +1,13 @@ -DenunciationPool in massa_pool_worker::denunciation_pool - Rust
    pub struct DenunciationPool {
    -    config: PoolConfig,
    -    channels: PoolChannels,
    +DenunciationPool in massa_pool_worker::denunciation_pool - Rust
    pub struct DenunciationPool {
    +    config: PoolConfig,
    +    channels: PoolChannels,
         last_cs_final_periods: Vec<u64>,
         denunciations_cache: BTreeMap<DenunciationIndex, DenunciationStatus>,
    -}

    Fields§

    §config: PoolConfig

    pool configuration

    -
    §channels: PoolChannels

    pool channels

    +}

    Fields§

    §config: PoolConfig

    pool configuration

    +
    §channels: PoolChannels

    pool channels

    §last_cs_final_periods: Vec<u64>

    last consensus final periods, per thread

    §denunciations_cache: BTreeMap<DenunciationIndex, DenunciationStatus>

    Internal cache for denunciations

    -

    Implementations§

    source§

    impl DenunciationPool

    source

    pub fn init(config: PoolConfig, channels: PoolChannels) -> Self

    source

    pub fn len(&self) -> usize

    Get the number of stored elements

    +

    Implementations§

    source§

    impl DenunciationPool

    source

    pub fn init(config: PoolConfig, channels: PoolChannels) -> Self

    source

    pub fn len(&self) -> usize

    Get the number of stored elements

    source

    pub fn add_denunciation_precursor( &mut self, denunciation_precursor: DenunciationPrecursor, @@ -128,4 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/endorsement_pool/struct.EndorsementPool.html b/massa_pool_worker/endorsement_pool/struct.EndorsementPool.html index 9735c304518..6524df8525e 100644 --- a/massa_pool_worker/endorsement_pool/struct.EndorsementPool.html +++ b/massa_pool_worker/endorsement_pool/struct.EndorsementPool.html @@ -1,23 +1,23 @@ -EndorsementPool in massa_pool_worker::endorsement_pool - Rust
    pub struct EndorsementPool {
    -    config: PoolConfig,
    +EndorsementPool in massa_pool_worker::endorsement_pool - Rust
    pub struct EndorsementPool {
    +    config: PoolConfig,
         endorsements_indexed: HashMap<(Slot, u32, BlockId), EndorsementId>,
         endorsements_sorted: Vec<BTreeMap<(Slot, u32, BlockId), EndorsementId>>,
         storage: Storage,
         last_cs_final_periods: Vec<u64>,
    -    channels: PoolChannels,
    +    channels: PoolChannels,
         wallet: Arc<RwLock<Wallet>>,
    -}

    Fields§

    §config: PoolConfig

    configuration

    +}

    Fields§

    §config: PoolConfig

    configuration

    §endorsements_indexed: HashMap<(Slot, u32, BlockId), EndorsementId>

    endorsements indexed by slot, index and block ID

    §endorsements_sorted: Vec<BTreeMap<(Slot, u32, BlockId), EndorsementId>>

    endorsements sorted by increasing inclusion slot for pruning indexed by thread, then BTreeMap<(inclusion_slot, index, target_block), endorsement_id>

    §storage: Storage

    storage

    §last_cs_final_periods: Vec<u64>

    last consensus final periods, per thread

    -
    §channels: PoolChannels

    channels used by the pool worker

    +
    §channels: PoolChannels

    channels used by the pool worker

    §wallet: Arc<RwLock<Wallet>>

    staking wallet, to know which addresses we are using to stake

    Implementations§

    source§

    impl EndorsementPool

    source

    pub fn init( - config: PoolConfig, + config: PoolConfig, storage: &Storage, - channels: PoolChannels, + channels: PoolChannels, wallet: Arc<RwLock<Wallet>>, ) -> Self

    source

    pub fn len(&self) -> usize

    Get the number of stored elements

    source

    pub fn contains(&self, id: &EndorsementId) -> bool

    Checks whether an element is stored in the pool.

    @@ -139,4 +139,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/fn.start_pool_controller.html b/massa_pool_worker/fn.start_pool_controller.html index 2486ea226a5..4f3d6123a81 100644 --- a/massa_pool_worker/fn.start_pool_controller.html +++ b/massa_pool_worker/fn.start_pool_controller.html @@ -1,7 +1,7 @@ start_pool_controller in massa_pool_worker - Rust

    Function massa_pool_worker::start_pool_controller

    source ·
    pub fn start_pool_controller(
    -    config: PoolConfig,
    +    config: PoolConfig,
         storage: &Storage,
    -    channels: PoolChannels,
    +    channels: PoolChannels,
         wallet: Arc<RwLock<Wallet>>,
    -) -> (Box<dyn PoolManager>, Box<dyn PoolController>)
    Expand description

    Start pool manager and controller

    +) -> (Box<dyn PoolManager>, Box<dyn PoolController>)
    Expand description

    Start pool manager and controller

    \ No newline at end of file diff --git a/massa_pool_worker/operation_pool/struct.OperationPool.html b/massa_pool_worker/operation_pool/struct.OperationPool.html index 5484b72482d..2ffc5e0ecf1 100644 --- a/massa_pool_worker/operation_pool/struct.OperationPool.html +++ b/massa_pool_worker/operation_pool/struct.OperationPool.html @@ -1,20 +1,20 @@ -OperationPool in massa_pool_worker::operation_pool - Rust

    Struct massa_pool_worker::operation_pool::OperationPool

    source ·
    pub struct OperationPool {
    -    config: PoolConfig,
    +OperationPool in massa_pool_worker::operation_pool - Rust

    Struct massa_pool_worker::operation_pool::OperationPool

    source ·
    pub struct OperationPool {
    +    config: PoolConfig,
         sorted_ops: Vec<OperationInfo>,
         pub(crate) storage: Storage,
         last_cs_final_periods: Vec<u64>,
    -    channels: PoolChannels,
    +    channels: PoolChannels,
         wallet: Arc<RwLock<Wallet>>,
    -}

    Fields§

    §config: PoolConfig

    configuration

    +}

    Fields§

    §config: PoolConfig

    configuration

    §sorted_ops: Vec<OperationInfo>

    operations map

    §storage: Storage

    storage instance

    §last_cs_final_periods: Vec<u64>

    last consensus final periods, per thread

    -
    §channels: PoolChannels

    channels used by the pool worker

    +
    §channels: PoolChannels

    channels used by the pool worker

    §wallet: Arc<RwLock<Wallet>>

    staking wallet, to know which addresses we are using to stake

    Implementations§

    source§

    impl OperationPool

    source

    pub fn init( - config: PoolConfig, + config: PoolConfig, storage: &Storage, - channels: PoolChannels, + channels: PoolChannels, wallet: Arc<RwLock<Wallet>>, ) -> Self

    source

    fn get_pos_draws(&mut self) -> BTreeSet<Slot>

    Get the relevant PoS draws of our staking addresses

    source

    fn get_execution_statuses(&self) -> PreHashMap<OperationId, bool>

    Returns the list of executed ops with a boolean indicating whether they are executed as final.

    @@ -161,4 +161,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/types/struct.OperationInfo.html b/massa_pool_worker/types/struct.OperationInfo.html index 11d89f220e6..548bae53236 100644 --- a/massa_pool_worker/types/struct.OperationInfo.html +++ b/massa_pool_worker/types/struct.OperationInfo.html @@ -1,4 +1,4 @@ -OperationInfo in massa_pool_worker::types - Rust

    Struct massa_pool_worker::types::OperationInfo

    source ·
    pub struct OperationInfo {
    +OperationInfo in massa_pool_worker::types - Rust

    Struct massa_pool_worker::types::OperationInfo

    source ·
    pub struct OperationInfo {
         pub id: OperationId,
         pub size: usize,
         pub max_gas_usage: u64,
    @@ -131,4 +131,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/worker/fn.start_pool_controller.html b/massa_pool_worker/worker/fn.start_pool_controller.html index 438cde040dc..aa253162559 100644 --- a/massa_pool_worker/worker/fn.start_pool_controller.html +++ b/massa_pool_worker/worker/fn.start_pool_controller.html @@ -1,7 +1,7 @@ start_pool_controller in massa_pool_worker::worker - Rust

    Function massa_pool_worker::worker::start_pool_controller

    source ·
    pub fn start_pool_controller(
    -    config: PoolConfig,
    +    config: PoolConfig,
         storage: &Storage,
    -    channels: PoolChannels,
    +    channels: PoolChannels,
         wallet: Arc<RwLock<Wallet>>,
    -) -> (Box<dyn PoolManager>, Box<dyn PoolController>)
    Expand description

    Start pool manager and controller

    +) -> (Box<dyn PoolManager>, Box<dyn PoolController>)
    Expand description

    Start pool manager and controller

    \ No newline at end of file diff --git a/massa_pool_worker/worker/struct.DenunciationPoolThread.html b/massa_pool_worker/worker/struct.DenunciationPoolThread.html index 9f62b290b1f..cd9cb41edb6 100644 --- a/massa_pool_worker/worker/struct.DenunciationPoolThread.html +++ b/massa_pool_worker/worker/struct.DenunciationPoolThread.html @@ -1,4 +1,4 @@ -DenunciationPoolThread in massa_pool_worker::worker - Rust

    Struct massa_pool_worker::worker::DenunciationPoolThread

    source ·
    pub(crate) struct DenunciationPoolThread {
    +DenunciationPoolThread in massa_pool_worker::worker - Rust

    Struct massa_pool_worker::worker::DenunciationPoolThread

    source ·
    pub(crate) struct DenunciationPoolThread {
         receiver: Receiver<Command>,
         denunciation_pool: Arc<RwLock<DenunciationPool>>,
     }
    Expand description

    Denunciation pool writer thread.

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/worker/struct.EndorsementPoolThread.html b/massa_pool_worker/worker/struct.EndorsementPoolThread.html index 1f57d415117..89eb4057478 100644 --- a/massa_pool_worker/worker/struct.EndorsementPoolThread.html +++ b/massa_pool_worker/worker/struct.EndorsementPoolThread.html @@ -1,4 +1,4 @@ -EndorsementPoolThread in massa_pool_worker::worker - Rust

    Struct massa_pool_worker::worker::EndorsementPoolThread

    source ·
    pub(crate) struct EndorsementPoolThread {
    +EndorsementPoolThread in massa_pool_worker::worker - Rust

    Struct massa_pool_worker::worker::EndorsementPoolThread

    source ·
    pub(crate) struct EndorsementPoolThread {
         receiver: Receiver<Command>,
         endorsement_pool: Arc<RwLock<EndorsementPool>>,
     }
    Expand description

    Endorsement pool write thread instance

    @@ -119,4 +119,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pool_worker/worker/struct.OperationPoolThread.html b/massa_pool_worker/worker/struct.OperationPoolThread.html index 4946ab0d662..2b33d9e0687 100644 --- a/massa_pool_worker/worker/struct.OperationPoolThread.html +++ b/massa_pool_worker/worker/struct.OperationPoolThread.html @@ -1,4 +1,4 @@ -OperationPoolThread in massa_pool_worker::worker - Rust

    Struct massa_pool_worker::worker::OperationPoolThread

    source ·
    pub(crate) struct OperationPoolThread {
    +OperationPoolThread in massa_pool_worker::worker - Rust

    Struct massa_pool_worker::worker::OperationPoolThread

    source ·
    pub(crate) struct OperationPoolThread {
         receiver: Receiver<Command>,
         operation_pool: Arc<RwLock<OperationPool>>,
     }
    Expand description

    Operation pool writer thread.

    @@ -7,9 +7,9 @@

    Implementations§

    source§

    impl OperationPoolThread

    source

    pub(crate) fn spawn( receiver: Receiver<Command>, operation_pool: Arc<RwLock<OperationPool>>, - config: PoolConfig, + config: PoolConfig, ) -> JoinHandle<()>

    Spawns a pool writer thread, returning a join handle.

    -
    source

    fn run(self, config: PoolConfig)

    Run the thread.

    +
    source

    fn run(self, config: PoolConfig)

    Run the thread.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, @@ -120,4 +120,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_pos_exports/cycle_info/struct.ProductionStats.html b/massa_pos_exports/cycle_info/struct.ProductionStats.html index 4049ed6b216..7adb989500d 100644 --- a/massa_pos_exports/cycle_info/struct.ProductionStats.html +++ b/massa_pos_exports/cycle_info/struct.ProductionStats.html @@ -6,11 +6,11 @@ §block_failure_count: u64

    Number of blocks missed

    Implementations§

    source§

    impl ProductionStats

    source

    pub fn is_satisfying(&self, max_miss_ratio: &Ratio<u64>) -> bool

    Check if the production stats are above the required percentage

    source

    pub fn extend(&mut self, stats: &ProductionStats)

    Increment a production stat structure with another

    -

    Trait Implementations§

    source§

    impl Clone for ProductionStats

    source§

    fn clone(&self) -> ProductionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProductionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ProductionStats

    source§

    fn default() -> ProductionStats

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for ProductionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for ProductionStats

    source§

    fn eq(&self, other: &ProductionStats) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Clone for ProductionStats

    source§

    fn clone(&self) -> ProductionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProductionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ProductionStats

    source§

    fn default() -> ProductionStats

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for ProductionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for ProductionStats

    source§

    fn eq(&self, other: &ProductionStats) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for ProductionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for ProductionStats

    source§

    impl Eq for ProductionStats

    source§

    impl StructuralPartialEq for ProductionStats

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for ProductionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for ProductionStats

    source§

    impl Eq for ProductionStats

    source§

    impl StructuralPartialEq for ProductionStats

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -115,5 +115,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/deferred_credits/struct.DeferredCredits.html b/massa_pos_exports/deferred_credits/struct.DeferredCredits.html index 22769df809f..5067ff82b05 100644 --- a/massa_pos_exports/deferred_credits/struct.DeferredCredits.html +++ b/massa_pos_exports/deferred_credits/struct.DeferredCredits.html @@ -21,12 +21,12 @@ address: Address, amount: Amount, ) -> Option<Amount>

    Insert an element

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCredits

    source§

    fn clone(&self) -> DeferredCredits

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCredits

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCredits

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCredits

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCredits> for DeferredCreditsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DeferredCredits

    source§

    fn clone(&self) -> DeferredCredits

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCredits

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCredits

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCredits

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCredits> for DeferredCreditsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DeferredCredits, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredCredits

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCredits> for DeferredCreditsSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], DeferredCredits, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredCredits

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCredits> for DeferredCreditsSerializer

    source§

    fn serialize( &self, value: &DeferredCredits, buffer: &mut Vec<u8>, @@ -128,5 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/pos_changes/struct.PoSChanges.html b/massa_pos_exports/pos_changes/struct.PoSChanges.html index 6549093162b..fe68bb6597c 100644 --- a/massa_pos_exports/pos_changes/struct.PoSChanges.html +++ b/massa_pos_exports/pos_changes/struct.PoSChanges.html @@ -11,12 +11,12 @@ ordered structure to ensure slot iteration order is deterministic

    Implementations§

    source§

    impl PoSChanges

    source

    pub fn is_empty(&self) -> bool

    Check if changes are empty

    source

    pub fn extend(&mut self, other: PoSChanges)

    Extends the current PosChanges with another one

    -

    Trait Implementations§

    source§

    impl Clone for PoSChanges

    source§

    fn clone(&self) -> PoSChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoSChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for PoSChanges

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for PoSChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<PoSChanges> for PoSChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for PoSChanges

    source§

    fn clone(&self) -> PoSChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoSChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for PoSChanges

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for PoSChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<PoSChanges> for PoSChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], PoSChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for PoSChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<PoSChanges> for PoSChangesSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], PoSChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for PoSChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<PoSChanges> for PoSChangesSerializer

    source§

    fn serialize( &self, value: &PoSChanges, buffer: &mut Vec<u8>, @@ -118,5 +118,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/settings/struct.SelectorConfig.html b/massa_pos_exports/settings/struct.SelectorConfig.html index c4a633e2943..14625c01c3d 100644 --- a/massa_pos_exports/settings/struct.SelectorConfig.html +++ b/massa_pos_exports/settings/struct.SelectorConfig.html @@ -12,9 +12,9 @@ §periods_per_cycle: u64

    Number of periods per cycle

    §genesis_address: Address

    genesis address to force draw genesis creators

    §channel_size: usize

    communication channel length

    -

    Trait Implementations§

    source§

    impl Clone for SelectorConfig

    source§

    fn clone(&self) -> SelectorConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SelectorConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SelectorConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for SelectorConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for SelectorConfig

    source§

    fn clone(&self) -> SelectorConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SelectorConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SelectorConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for SelectorConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -112,5 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/struct.DeferredCredits.html b/massa_pos_exports/struct.DeferredCredits.html index 6b74d0e3d1d..4c4b6c52451 100644 --- a/massa_pos_exports/struct.DeferredCredits.html +++ b/massa_pos_exports/struct.DeferredCredits.html @@ -21,12 +21,12 @@ address: Address, amount: Amount, ) -> Option<Amount>

    Insert an element

    -

    Trait Implementations§

    source§

    impl Clone for DeferredCredits

    source§

    fn clone(&self) -> DeferredCredits

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCredits

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCredits

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCredits

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCredits> for DeferredCreditsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for DeferredCredits

    source§

    fn clone(&self) -> DeferredCredits

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for DeferredCredits

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for DeferredCredits

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for DeferredCredits

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<DeferredCredits> for DeferredCreditsDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], DeferredCredits, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredCredits

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCredits> for DeferredCreditsSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], DeferredCredits, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for DeferredCredits

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<DeferredCredits> for DeferredCreditsSerializer

    source§

    fn serialize( &self, value: &DeferredCredits, buffer: &mut Vec<u8>, @@ -128,5 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/struct.PoSChanges.html b/massa_pos_exports/struct.PoSChanges.html index 4cc9d6328e9..7b528f9990c 100644 --- a/massa_pos_exports/struct.PoSChanges.html +++ b/massa_pos_exports/struct.PoSChanges.html @@ -11,12 +11,12 @@ ordered structure to ensure slot iteration order is deterministic

    Implementations§

    source§

    impl PoSChanges

    source

    pub fn is_empty(&self) -> bool

    Check if changes are empty

    source

    pub fn extend(&mut self, other: PoSChanges)

    Extends the current PosChanges with another one

    -

    Trait Implementations§

    source§

    impl Clone for PoSChanges

    source§

    fn clone(&self) -> PoSChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoSChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for PoSChanges

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for PoSChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<PoSChanges> for PoSChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for PoSChanges

    source§

    fn clone(&self) -> PoSChanges

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PoSChanges

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for PoSChanges

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for PoSChanges

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<PoSChanges> for PoSChangesDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], PoSChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for PoSChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<PoSChanges> for PoSChangesSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], PoSChanges, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl Serialize for PoSChanges

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<PoSChanges> for PoSChangesSerializer

    source§

    fn serialize( &self, value: &PoSChanges, buffer: &mut Vec<u8>, @@ -118,5 +118,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/struct.ProductionStats.html b/massa_pos_exports/struct.ProductionStats.html index 492cc834c97..6785d554fa6 100644 --- a/massa_pos_exports/struct.ProductionStats.html +++ b/massa_pos_exports/struct.ProductionStats.html @@ -6,11 +6,11 @@ §block_failure_count: u64

    Number of blocks missed

    Implementations§

    source§

    impl ProductionStats

    source

    pub fn is_satisfying(&self, max_miss_ratio: &Ratio<u64>) -> bool

    Check if the production stats are above the required percentage

    source

    pub fn extend(&mut self, stats: &ProductionStats)

    Increment a production stat structure with another

    -

    Trait Implementations§

    source§

    impl Clone for ProductionStats

    source§

    fn clone(&self) -> ProductionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProductionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ProductionStats

    source§

    fn default() -> ProductionStats

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for ProductionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for ProductionStats

    source§

    fn eq(&self, other: &ProductionStats) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Clone for ProductionStats

    source§

    fn clone(&self) -> ProductionStats

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProductionStats

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Default for ProductionStats

    source§

    fn default() -> ProductionStats

    Returns the “default value” for a type. Read more
    source§

    impl<'de> Deserialize<'de> for ProductionStats

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for ProductionStats

    source§

    fn eq(&self, other: &ProductionStats) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for ProductionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for ProductionStats

    source§

    impl Eq for ProductionStats

    source§

    impl StructuralPartialEq for ProductionStats

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for ProductionStats

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Copy for ProductionStats

    source§

    impl Eq for ProductionStats

    source§

    impl StructuralPartialEq for ProductionStats

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -115,5 +115,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_pos_exports/struct.SelectorConfig.html b/massa_pos_exports/struct.SelectorConfig.html index 426443c127c..cb14ee81dfc 100644 --- a/massa_pos_exports/struct.SelectorConfig.html +++ b/massa_pos_exports/struct.SelectorConfig.html @@ -12,9 +12,9 @@ §periods_per_cycle: u64

    Number of periods per cycle

    §genesis_address: Address

    genesis address to force draw genesis creators

    §channel_size: usize

    communication channel length

    -

    Trait Implementations§

    source§

    impl Clone for SelectorConfig

    source§

    fn clone(&self) -> SelectorConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SelectorConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SelectorConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for SelectorConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for SelectorConfig

    source§

    fn clone(&self) -> SelectorConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SelectorConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for SelectorConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for SelectorConfig

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -112,5 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/bootstrap_peers/struct.BootstrapPeers.html b/massa_protocol_exports/bootstrap_peers/struct.BootstrapPeers.html index 704e7e09562..5804aec6916 100644 --- a/massa_protocol_exports/bootstrap_peers/struct.BootstrapPeers.html +++ b/massa_protocol_exports/bootstrap_peers/struct.BootstrapPeers.html @@ -1,6 +1,6 @@ BootstrapPeers in massa_protocol_exports::bootstrap_peers - Rust
    pub struct BootstrapPeers(pub Vec<(PeerId, HashMap<SocketAddr, TransportType>)>);
    Expand description

    Peers that are transmitted during bootstrap

    -

    Tuple Fields§

    §0: Vec<(PeerId, HashMap<SocketAddr, TransportType>)>

    Trait Implementations§

    source§

    impl Clone for BootstrapPeers

    source§

    fn clone(&self) -> BootstrapPeers

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapPeers

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapPeers

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BootstrapPeers> for BootstrapPeersDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Tuple Fields§

    §0: Vec<(PeerId, HashMap<SocketAddr, TransportType>)>

    Trait Implementations§

    source§

    impl Clone for BootstrapPeers

    source§

    fn clone(&self) -> BootstrapPeers

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapPeers

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapPeers

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BootstrapPeers> for BootstrapPeersDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], BootstrapPeers, E>

    @@ -29,8 +29,8 @@ assert_eq!(peers, peers);
    source§

    impl PartialEq for BootstrapPeers

    source§

    fn eq(&self, other: &BootstrapPeers) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for BootstrapPeers

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BootstrapPeers> for BootstrapPeersSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for BootstrapPeers

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BootstrapPeers> for BootstrapPeersSerializer

    source§

    fn serialize( &self, value: &BootstrapPeers, buffer: &mut Vec<u8>, @@ -165,5 +165,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/bootstrap_peers/struct.PeerData.html b/massa_protocol_exports/bootstrap_peers/struct.PeerData.html index 0ea45ebf6b5..88683521319 100644 --- a/massa_protocol_exports/bootstrap_peers/struct.PeerData.html +++ b/massa_protocol_exports/bootstrap_peers/struct.PeerData.html @@ -2,11 +2,11 @@ pub listeners: HashMap<SocketAddr, TransportType>, pub category: String, }
    Expand description

    Peer info provided in bootstrap

    -

    Fields§

    §listeners: HashMap<SocketAddr, TransportType>§category: String

    Trait Implementations§

    source§

    impl Clone for PeerData

    source§

    fn clone(&self) -> PeerData

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerData

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for PeerData

    source§

    fn eq(&self, other: &PeerData) -> bool

    This method tests for self and other values to be equal, and is used +

    Fields§

    §listeners: HashMap<SocketAddr, TransportType>§category: String

    Trait Implementations§

    source§

    impl Clone for PeerData

    source§

    fn clone(&self) -> PeerData

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerData

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for PeerData

    source§

    fn eq(&self, other: &PeerData) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for PeerData

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for PeerData

    source§

    impl StructuralPartialEq for PeerData

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for PeerData

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for PeerData

    source§

    impl StructuralPartialEq for PeerData

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -117,5 +117,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/enum.ProtocolError.html b/massa_protocol_exports/enum.ProtocolError.html index d66991e923b..8d5d23d2263 100644 --- a/massa_protocol_exports/enum.ProtocolError.html +++ b/massa_protocol_exports/enum.ProtocolError.html @@ -6,7 +6,7 @@ PeerConnectionError(NetworkConnectionErrorType), InvalidIpError(IpAddr), IOError(Error), - SerdeError(Error), + SerdeError(Error), UnexpectedNodeCommandChannelClosure, UnexpectedWriterClosure, TimeError(TimeError), @@ -35,7 +35,7 @@
    §

    PeerConnectionError(NetworkConnectionErrorType)

    Error during network connection: {0:?}

    §

    InvalidIpError(IpAddr)

    The ip: {0} address is not valid

    §

    IOError(Error)

    IO error: {0}

    -
    §

    SerdeError(Error)

    Serde error: {0}

    +
    §

    SerdeError(Error)

    Serde error: {0}

    §

    UnexpectedNodeCommandChannelClosure

    The network controller should not drop a node command sender before shutting down the node.

    §

    UnexpectedWriterClosure

    The writer of a node should not drop its event sender before sending a clean_exit message.

    §

    TimeError(TimeError)

    Time error: {0}

    @@ -54,7 +54,7 @@
    §announced_received: u32

    received announced network version

    §

    FactoryError(FactoryError)

    Versioned factory error: {0}

    §

    PosError(PosError)

    PoS error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for ProtocolError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProtocolError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProtocolError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ProtocolError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ProtocolError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for ProtocolError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ProtocolError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for ProtocolError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProtocolError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProtocolError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ProtocolError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ProtocolError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for ProtocolError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ProtocolError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_protocol_exports/enum.TransportType.html b/massa_protocol_exports/enum.TransportType.html index 8563525b99b..6b733276c25 100644 --- a/massa_protocol_exports/enum.TransportType.html +++ b/massa_protocol_exports/enum.TransportType.html @@ -4,19 +4,19 @@ }
    Expand description

    Define the different transports available TODO: Maybe try to fusion with the InternalTransportType enum above

    Variants§

    §

    Tcp = 0

    §

    Quic = 1

    Implementations§

    §

    impl TransportType

    pub fn from_transport_config(config: &TransportConfig) -> TransportType

    Extract the transport type from TransportConfig

    -

    Trait Implementations§

    §

    impl Clone for TransportType

    §

    fn clone(&self) -> TransportType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    §

    impl Debug for TransportType

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    §

    impl<'de> Deserialize<'de> for TransportType

    §

    fn deserialize<__D>( +

    Trait Implementations§

    §

    impl Clone for TransportType

    §

    fn clone(&self) -> TransportType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    §

    impl Debug for TransportType

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    §

    impl<'de> Deserialize<'de> for TransportType

    §

    fn deserialize<__D>( __deserializer: __D, -) -> Result<TransportType, <__D as Deserializer<'de>>::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    §

    impl Hash for TransportType

    §

    fn hash<__H>(&self, state: &mut __H)
    where +) -> Result<TransportType, <__D as Deserializer<'de>>::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    §

    impl Hash for TransportType

    §

    fn hash<__H>(&self, state: &mut __H)
    where __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    §

    impl PartialEq for TransportType

    §

    fn eq(&self, other: &TransportType) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    §

    impl Serialize for TransportType

    §

    fn serialize<__S>( +sufficient, and should not be overridden without very good reason.

    §

    impl Serialize for TransportType

    §

    fn serialize<__S>( &self, __serializer: __S, -) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    §

    impl Copy for TransportType

    §

    impl Eq for TransportType

    §

    impl StructuralPartialEq for TransportType

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    §

    impl Copy for TransportType

    §

    impl Eq for TransportType

    §

    impl StructuralPartialEq for TransportType

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CallHasher for T
    where @@ -131,5 +131,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/error/enum.ProtocolError.html b/massa_protocol_exports/error/enum.ProtocolError.html index 866d8ed0fac..bec5d498933 100644 --- a/massa_protocol_exports/error/enum.ProtocolError.html +++ b/massa_protocol_exports/error/enum.ProtocolError.html @@ -6,7 +6,7 @@ PeerConnectionError(NetworkConnectionErrorType), InvalidIpError(IpAddr), IOError(Error), - SerdeError(Error), + SerdeError(Error), UnexpectedNodeCommandChannelClosure, UnexpectedWriterClosure, TimeError(TimeError), @@ -35,7 +35,7 @@
    §

    PeerConnectionError(NetworkConnectionErrorType)

    Error during network connection: {0:?}

    §

    InvalidIpError(IpAddr)

    The ip: {0} address is not valid

    §

    IOError(Error)

    IO error: {0}

    -
    §

    SerdeError(Error)

    Serde error: {0}

    +
    §

    SerdeError(Error)

    Serde error: {0}

    §

    UnexpectedNodeCommandChannelClosure

    The network controller should not drop a node command sender before shutting down the node.

    §

    UnexpectedWriterClosure

    The writer of a node should not drop its event sender before sending a clean_exit message.

    §

    TimeError(TimeError)

    Time error: {0}

    @@ -54,7 +54,7 @@
    §announced_received: u32

    received announced network version

    §

    FactoryError(FactoryError)

    Versioned factory error: {0}

    §

    PosError(PosError)

    PoS error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for ProtocolError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProtocolError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProtocolError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ProtocolError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ProtocolError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for ProtocolError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ProtocolError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for ProtocolError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProtocolError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProtocolError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for ProtocolError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<FactoryError> for ProtocolError

    source§

    fn from(source: FactoryError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for ProtocolError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.
    source§

    impl From<PosError> for ProtocolError

    source§

    fn from(source: PosError) -> Self

    Converts to this type from the input type.
    source§

    impl From<TimeError> for ProtocolError

    source§

    fn from(source: TimeError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_protocol_exports/peer_id/struct.PeerId.html b/massa_protocol_exports/peer_id/struct.PeerId.html index 14bf5b0e0f7..c18e95f45c6 100644 --- a/massa_protocol_exports/peer_id/struct.PeerId.html +++ b/massa_protocol_exports/peer_id/struct.PeerId.html @@ -4,7 +4,7 @@ &self, hash: &MassaHash, signature: &Signature, -) -> Result<(), ProtocolError>

    Trait Implementations§

    source§

    impl Clone for PeerId

    source§

    fn clone(&self) -> PeerId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerId

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PeerId, D::Error>

    ::serde::Deserialize trait for PeerId

    +) -> Result<(), ProtocolError>

    Trait Implementations§

    source§

    impl Clone for PeerId

    source§

    fn clone(&self) -> PeerId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerId

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PeerId, D::Error>

    ::serde::Deserialize trait for PeerId

    source§

    impl Deserializer<PeerId> for PeerIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], @@ -17,8 +17,8 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for PeerId

    source§

    fn partial_cmp(&self, other: &PeerId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl PeerId for PeerId

    source§

    fn generate() -> Self

    source§

    impl Serialize for PeerId

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PeerId

    -
    source§

    impl Serializer<PeerId> for PeerIdSerializer

    source§

    impl PeerId for PeerId

    source§

    fn generate() -> Self

    source§

    impl Serialize for PeerId

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PeerId

    +
    source§

    impl Serializer<PeerId> for PeerIdSerializer

    source§

    fn serialize( &self, value: &PeerId, buffer: &mut Vec<u8>, @@ -140,7 +140,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_protocol_exports/settings/struct.PeerCategoryInfo.html b/massa_protocol_exports/settings/struct.PeerCategoryInfo.html index a87a39f72ed..f0237033482 100644 --- a/massa_protocol_exports/settings/struct.PeerCategoryInfo.html +++ b/massa_protocol_exports/settings/struct.PeerCategoryInfo.html @@ -3,8 +3,8 @@ pub target_out_connections: usize, pub max_in_connections: usize, pub max_in_connections_per_ip: usize, -}

    Fields§

    §allow_local_peers: bool§target_out_connections: usize§max_in_connections: usize§max_in_connections_per_ip: usize

    Trait Implementations§

    source§

    impl Clone for PeerCategoryInfo

    source§

    fn clone(&self) -> PeerCategoryInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerCategoryInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerCategoryInfo

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for PeerCategoryInfo

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §allow_local_peers: bool§target_out_connections: usize§max_in_connections: usize§max_in_connections_per_ip: usize

    Trait Implementations§

    source§

    impl Clone for PeerCategoryInfo

    source§

    fn clone(&self) -> PeerCategoryInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerCategoryInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerCategoryInfo

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for PeerCategoryInfo

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -110,5 +110,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/settings/struct.ProtocolConfig.html b/massa_protocol_exports/settings/struct.ProtocolConfig.html index 1cb44d295d6..633acf9114b 100644 --- a/massa_protocol_exports/settings/struct.ProtocolConfig.html +++ b/massa_protocol_exports/settings/struct.ProtocolConfig.html @@ -151,8 +151,8 @@ §test_oldest_peer_cooldown: MassaTime

    Cooldown before testing again an old peer

    §rate_limit: u64

    Rate limit to apply on the data stream

    §chain_id: u64

    Chain id

    -

    Trait Implementations§

    source§

    impl Clone for ProtocolConfig

    source§

    fn clone(&self) -> ProtocolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProtocolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ProtocolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ProtocolConfig

    source§

    fn clone(&self) -> ProtocolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProtocolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ProtocolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -257,5 +257,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/struct.BootstrapPeers.html b/massa_protocol_exports/struct.BootstrapPeers.html index befbff46f5a..e5cf6f857e9 100644 --- a/massa_protocol_exports/struct.BootstrapPeers.html +++ b/massa_protocol_exports/struct.BootstrapPeers.html @@ -1,6 +1,6 @@ BootstrapPeers in massa_protocol_exports - Rust

    Struct massa_protocol_exports::BootstrapPeers

    source ·
    pub struct BootstrapPeers(pub Vec<(PeerId, HashMap<SocketAddr, TransportType>)>);
    Expand description

    Peers that are transmitted during bootstrap

    -

    Tuple Fields§

    §0: Vec<(PeerId, HashMap<SocketAddr, TransportType>)>

    Trait Implementations§

    source§

    impl Clone for BootstrapPeers

    source§

    fn clone(&self) -> BootstrapPeers

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapPeers

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapPeers

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BootstrapPeers> for BootstrapPeersDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Tuple Fields§

    §0: Vec<(PeerId, HashMap<SocketAddr, TransportType>)>

    Trait Implementations§

    source§

    impl Clone for BootstrapPeers

    source§

    fn clone(&self) -> BootstrapPeers

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for BootstrapPeers

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for BootstrapPeers

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<BootstrapPeers> for BootstrapPeersDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], BootstrapPeers, E>

    @@ -29,8 +29,8 @@ assert_eq!(peers, peers);
    source§

    impl PartialEq for BootstrapPeers

    source§

    fn eq(&self, other: &BootstrapPeers) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for BootstrapPeers

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BootstrapPeers> for BootstrapPeersSerializer

    source§

    fn serialize( +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for BootstrapPeers

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<BootstrapPeers> for BootstrapPeersSerializer

    source§

    fn serialize( &self, value: &BootstrapPeers, buffer: &mut Vec<u8>, @@ -165,5 +165,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/struct.PeerCategoryInfo.html b/massa_protocol_exports/struct.PeerCategoryInfo.html index 79bff6b47d4..22889fcc0e6 100644 --- a/massa_protocol_exports/struct.PeerCategoryInfo.html +++ b/massa_protocol_exports/struct.PeerCategoryInfo.html @@ -3,8 +3,8 @@ pub target_out_connections: usize, pub max_in_connections: usize, pub max_in_connections_per_ip: usize, -}

    Fields§

    §allow_local_peers: bool§target_out_connections: usize§max_in_connections: usize§max_in_connections_per_ip: usize

    Trait Implementations§

    source§

    impl Clone for PeerCategoryInfo

    source§

    fn clone(&self) -> PeerCategoryInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerCategoryInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerCategoryInfo

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for PeerCategoryInfo

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Fields§

    §allow_local_peers: bool§target_out_connections: usize§max_in_connections: usize§max_in_connections_per_ip: usize

    Trait Implementations§

    source§

    impl Clone for PeerCategoryInfo

    source§

    fn clone(&self) -> PeerCategoryInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerCategoryInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerCategoryInfo

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Copy for PeerCategoryInfo

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -110,5 +110,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/struct.PeerData.html b/massa_protocol_exports/struct.PeerData.html index 3c355778c96..71448b4e106 100644 --- a/massa_protocol_exports/struct.PeerData.html +++ b/massa_protocol_exports/struct.PeerData.html @@ -2,11 +2,11 @@ pub listeners: HashMap<SocketAddr, TransportType>, pub category: String, }
    Expand description

    Peer info provided in bootstrap

    -

    Fields§

    §listeners: HashMap<SocketAddr, TransportType>§category: String

    Trait Implementations§

    source§

    impl Clone for PeerData

    source§

    fn clone(&self) -> PeerData

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerData

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for PeerData

    source§

    fn eq(&self, other: &PeerData) -> bool

    This method tests for self and other values to be equal, and is used +

    Fields§

    §listeners: HashMap<SocketAddr, TransportType>§category: String

    Trait Implementations§

    source§

    impl Clone for PeerData

    source§

    fn clone(&self) -> PeerData

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerData

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerData

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl PartialEq for PeerData

    source§

    fn eq(&self, other: &PeerData) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for PeerData

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for PeerData

    source§

    impl StructuralPartialEq for PeerData

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for PeerData

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Eq for PeerData

    source§

    impl StructuralPartialEq for PeerData

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -117,5 +117,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_exports/struct.PeerId.html b/massa_protocol_exports/struct.PeerId.html index b6fc375da80..396745153e1 100644 --- a/massa_protocol_exports/struct.PeerId.html +++ b/massa_protocol_exports/struct.PeerId.html @@ -4,7 +4,7 @@ &self, hash: &MassaHash, signature: &Signature, -) -> Result<(), ProtocolError>

    Trait Implementations§

    source§

    impl Clone for PeerId

    source§

    fn clone(&self) -> PeerId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerId

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PeerId, D::Error>

    ::serde::Deserialize trait for PeerId

    +) -> Result<(), ProtocolError>

    Trait Implementations§

    source§

    impl Clone for PeerId

    source§

    fn clone(&self) -> PeerId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PeerId

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PeerId, D::Error>

    ::serde::Deserialize trait for PeerId

    source§

    impl Deserializer<PeerId> for PeerIdDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], @@ -17,8 +17,8 @@ by ==.

    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for PeerId

    source§

    fn partial_cmp(&self, other: &PeerId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl PeerId for PeerId

    source§

    fn generate() -> Self

    source§

    impl Serialize for PeerId

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PeerId

    -
    source§

    impl Serializer<PeerId> for PeerIdSerializer

    source§

    impl PeerId for PeerId

    source§

    fn generate() -> Self

    source§

    impl Serialize for PeerId

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PeerId

    +
    source§

    impl Serializer<PeerId> for PeerIdSerializer

    source§

    fn serialize( &self, value: &PeerId, buffer: &mut Vec<u8>, @@ -140,7 +140,7 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    source§

    impl<T> RuleType for T
    where T: Copy + Debug + Eq + Hash + Ord,

    \ No newline at end of file diff --git a/massa_protocol_exports/struct.ProtocolConfig.html b/massa_protocol_exports/struct.ProtocolConfig.html index 17412ca38e8..df87ecaa47f 100644 --- a/massa_protocol_exports/struct.ProtocolConfig.html +++ b/massa_protocol_exports/struct.ProtocolConfig.html @@ -151,8 +151,8 @@ §test_oldest_peer_cooldown: MassaTime

    Cooldown before testing again an old peer

    §rate_limit: u64

    Rate limit to apply on the data stream

    §chain_id: u64

    Chain id

    -

    Trait Implementations§

    source§

    impl Clone for ProtocolConfig

    source§

    fn clone(&self) -> ProtocolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProtocolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ProtocolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for ProtocolConfig

    source§

    fn clone(&self) -> ProtocolConfig

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ProtocolConfig

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for ProtocolConfig

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -257,5 +257,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_protocol_worker/connectivity/enum.ConnectivityCommand.html b/massa_protocol_worker/connectivity/enum.ConnectivityCommand.html index 91a6e55c579..49bd8abfefe 100644 --- a/massa_protocol_worker/connectivity/enum.ConnectivityCommand.html +++ b/massa_protocol_worker/connectivity/enum.ConnectivityCommand.html @@ -1,4 +1,4 @@ -ConnectivityCommand in massa_protocol_worker::connectivity - Rust
    pub enum ConnectivityCommand {
    +ConnectivityCommand in massa_protocol_worker::connectivity - Rust
    pub enum ConnectivityCommand {
         Stop,
         GetStats {
             responder: MassaSender<(NetworkStats, HashMap<PeerId, (SocketAddr, PeerConnectionType)>)>,
    @@ -118,4 +118,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/context/struct.Context.html b/massa_protocol_worker/context/struct.Context.html index 2248f49aee0..c08d4ec222f 100644 --- a/massa_protocol_worker/context/struct.Context.html +++ b/massa_protocol_worker/context/struct.Context.html @@ -1,4 +1,4 @@ -Context in massa_protocol_worker::context - Rust

    Struct massa_protocol_worker::context::Context

    source ·
    pub struct Context {
    +Context in massa_protocol_worker::context - Rust

    Struct massa_protocol_worker::context::Context

    source ·
    pub struct Context {
         pub our_keypair: KeyPair,
     }

    Fields§

    §our_keypair: KeyPair

    Trait Implementations§

    source§

    impl Clone for Context

    source§

    fn clone(&self) -> Context

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Context<PeerId> for Context

    source§

    impl InitConnectionHandler<PeerId, Context, MessagesHandler> for MassaHandshake

    source§

    fn perform_handshake( &mut self, @@ -126,4 +126,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/controller/struct.ProtocolControllerImpl.html b/massa_protocol_worker/controller/struct.ProtocolControllerImpl.html index ee7c8adb9f2..00b4bab810b 100644 --- a/massa_protocol_worker/controller/struct.ProtocolControllerImpl.html +++ b/massa_protocol_worker/controller/struct.ProtocolControllerImpl.html @@ -1,4 +1,4 @@ -ProtocolControllerImpl in massa_protocol_worker::controller - Rust
    pub struct ProtocolControllerImpl {
    +ProtocolControllerImpl in massa_protocol_worker::controller - Rust
    pub struct ProtocolControllerImpl {
         pub sender_block_retrieval_handler: Option<MassaSender<BlockHandlerRetrievalCommand>>,
         pub sender_block_handler: Option<MassaSender<BlockHandlerPropagationCommand>>,
         pub sender_operation_handler: Option<MassaSender<OperationHandlerPropagationCommand>>,
    @@ -154,4 +154,5 @@ 
    §Arguments
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/cache/struct.BlockCache.html b/massa_protocol_worker/handlers/block_handler/cache/struct.BlockCache.html index e16ac09a1d2..c991df04290 100644 --- a/massa_protocol_worker/handlers/block_handler/cache/struct.BlockCache.html +++ b/massa_protocol_worker/handlers/block_handler/cache/struct.BlockCache.html @@ -1,4 +1,4 @@ -BlockCache in massa_protocol_worker::handlers::block_handler::cache - Rust
    pub struct BlockCache {
    +BlockCache in massa_protocol_worker::handlers::block_handler::cache - Rust
    pub struct BlockCache {
         pub checked_headers: LruMap<BlockId, SecuredHeader>,
         pub blocks_known_by_peer: HashMap<PeerId, LruMap<BlockId, (bool, Instant)>>,
         pub max_known_blocks_by_peer: u32,
    @@ -130,4 +130,5 @@ 
    §Arguments
    V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/commands_propagation/enum.BlockHandlerPropagationCommand.html b/massa_protocol_worker/handlers/block_handler/commands_propagation/enum.BlockHandlerPropagationCommand.html index 481e7e66692..c03d17afdfa 100644 --- a/massa_protocol_worker/handlers/block_handler/commands_propagation/enum.BlockHandlerPropagationCommand.html +++ b/massa_protocol_worker/handlers/block_handler/commands_propagation/enum.BlockHandlerPropagationCommand.html @@ -1,4 +1,4 @@ -BlockHandlerPropagationCommand in massa_protocol_worker::handlers::block_handler::commands_propagation - Rust
    pub enum BlockHandlerPropagationCommand {
    +BlockHandlerPropagationCommand in massa_protocol_worker::handlers::block_handler::commands_propagation - Rust
    pub enum BlockHandlerPropagationCommand {
         Stop,
         IntegratedBlock {
             block_id: BlockId,
    @@ -125,4 +125,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/commands_retrieval/enum.BlockHandlerRetrievalCommand.html b/massa_protocol_worker/handlers/block_handler/commands_retrieval/enum.BlockHandlerRetrievalCommand.html index 554f8ec0075..a1dce79b9af 100644 --- a/massa_protocol_worker/handlers/block_handler/commands_retrieval/enum.BlockHandlerRetrievalCommand.html +++ b/massa_protocol_worker/handlers/block_handler/commands_retrieval/enum.BlockHandlerRetrievalCommand.html @@ -1,4 +1,4 @@ -BlockHandlerRetrievalCommand in massa_protocol_worker::handlers::block_handler::commands_retrieval - Rust
    pub enum BlockHandlerRetrievalCommand {
    +BlockHandlerRetrievalCommand in massa_protocol_worker::handlers::block_handler::commands_retrieval - Rust
    pub enum BlockHandlerRetrievalCommand {
         Stop,
         WishlistDelta {
             new: PreHashMap<BlockId, Option<SecuredHeader>>,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/enum.AskForBlockInfo.html b/massa_protocol_worker/handlers/block_handler/messages/enum.AskForBlockInfo.html index 3549feadf8f..ab8c02e6f41 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/enum.AskForBlockInfo.html +++ b/massa_protocol_worker/handlers/block_handler/messages/enum.AskForBlockInfo.html @@ -1,4 +1,4 @@ -AskForBlockInfo in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub enum AskForBlockInfo {
    +AskForBlockInfo in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub enum AskForBlockInfo {
         Header,
         OperationIds,
         Operations(Vec<OperationId>),
    @@ -133,4 +133,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoReply.html b/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoReply.html index 6e754adcc6f..10e9d8e85a6 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoReply.html +++ b/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoReply.html @@ -1,4 +1,4 @@ -BlockInfoReply in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub enum BlockInfoReply {
    +BlockInfoReply in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub enum BlockInfoReply {
         Header(SecuredHeader),
         OperationIds(Vec<OperationId>),
         Operations(Vec<SecureShareOperation>),
    @@ -123,4 +123,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoType.html b/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoType.html index ee036c6745a..29b32ee5fc7 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoType.html +++ b/massa_protocol_worker/handlers/block_handler/messages/enum.BlockInfoType.html @@ -1,11 +1,11 @@ -BlockInfoType in massa_protocol_worker::handlers::block_handler::messages - Rust
    #[repr(u64)]
    pub enum BlockInfoType { +BlockInfoType in massa_protocol_worker::handlers::block_handler::messages - Rust
    #[repr(u64)]
    pub enum BlockInfoType { Header = 0, OperationIds = 1, Operations = 2, NotFound = 3, }

    Variants§

    §

    Header = 0

    §

    OperationIds = 1

    §

    Operations = 2

    §

    NotFound = 3

    Trait Implementations§

    source§

    impl Debug for BlockInfoType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<BlockInfoType> for u64

    source§

    fn from(enum_value: BlockInfoType) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for BlockInfoType

    source§

    fn eq(&self, other: &BlockInfoType) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u64> for BlockInfoType

    §

    type Error = TryFromPrimitiveError<BlockInfoType>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for BlockInfoType

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<BlockInfoType>

    source§

    const NAME: &'static str = "BlockInfoType"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u64> for BlockInfoType

    §

    type Error = TryFromPrimitiveError<BlockInfoType>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for BlockInfoType

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<BlockInfoType>

    source§

    const NAME: &'static str = "BlockInfoType"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for BlockInfoType

    source§

    impl StructuralPartialEq for BlockInfoType

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -128,4 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/enum.BlockMessage.html b/massa_protocol_worker/handlers/block_handler/messages/enum.BlockMessage.html index 11e05d0329f..e53b5134416 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/enum.BlockMessage.html +++ b/massa_protocol_worker/handlers/block_handler/messages/enum.BlockMessage.html @@ -1,4 +1,4 @@ -BlockMessage in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub enum BlockMessage {
    +BlockMessage in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub enum BlockMessage {
         Header(SecuredHeader),
         DataRequest {
             block_id: BlockId,
    @@ -133,4 +133,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/enum.MessageTypeId.html b/massa_protocol_worker/handlers/block_handler/messages/enum.MessageTypeId.html index ec33cfab2a0..a094cec7142 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/enum.MessageTypeId.html +++ b/massa_protocol_worker/handlers/block_handler/messages/enum.MessageTypeId.html @@ -1,10 +1,10 @@ -MessageTypeId in massa_protocol_worker::handlers::block_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { +MessageTypeId in massa_protocol_worker::handlers::block_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { Header = 0, DataRequest = 1, DataResponse = 2, }

    Variants§

    §

    Header = 0

    §

    DataRequest = 1

    §

    DataResponse = 2

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&BlockMessage> for MessageTypeId

    source§

    fn from(value: &BlockMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageTypeId

    source§

    impl StructuralPartialEq for MessageTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -127,4 +127,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializer.html b/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializer.html index 555d3805fac..2c15ceaac7b 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializer.html +++ b/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializer.html @@ -1,4 +1,4 @@ -BlockMessageDeserializer in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub struct BlockMessageDeserializer {
    +BlockMessageDeserializer in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub struct BlockMessageDeserializer {
         id_deserializer: U64VarIntDeserializer,
         block_header_deserializer: SecureShareDeserializer<BlockHeader, BlockHeaderDeserializer>,
         block_id_deserializer: BlockIdDeserializer,
    @@ -118,4 +118,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializerArgs.html b/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializerArgs.html index 9425d17b4e4..7e9e7e52f7c 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializerArgs.html +++ b/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageDeserializerArgs.html @@ -1,4 +1,4 @@ -BlockMessageDeserializerArgs in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub struct BlockMessageDeserializerArgs {
    +BlockMessageDeserializerArgs in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub struct BlockMessageDeserializerArgs {
         pub thread_count: u8,
         pub endorsement_count: u32,
         pub max_operations_per_block: u32,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageSerializer.html b/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageSerializer.html index ccad1d087b0..51f8c8e6a75 100644 --- a/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageSerializer.html +++ b/massa_protocol_worker/handlers/block_handler/messages/struct.BlockMessageSerializer.html @@ -1,4 +1,4 @@ -BlockMessageSerializer in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub struct BlockMessageSerializer {
    +BlockMessageSerializer in massa_protocol_worker::handlers::block_handler::messages - Rust
    pub struct BlockMessageSerializer {
         id_serializer: U64VarIntSerializer,
         secure_share_serializer: SecureShareSerializer,
         length_serializer: U64VarIntSerializer,
    @@ -123,4 +123,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/propagation/struct.BlockPropagationData.html b/massa_protocol_worker/handlers/block_handler/propagation/struct.BlockPropagationData.html index d10ae0bab03..54d2e3572c4 100644 --- a/massa_protocol_worker/handlers/block_handler/propagation/struct.BlockPropagationData.html +++ b/massa_protocol_worker/handlers/block_handler/propagation/struct.BlockPropagationData.html @@ -1,4 +1,4 @@ -BlockPropagationData in massa_protocol_worker::handlers::block_handler::propagation - Rust
    struct BlockPropagationData {
    +BlockPropagationData in massa_protocol_worker::handlers::block_handler::propagation - Rust
    struct BlockPropagationData {
         pub time_added: Instant,
         pub _storage: Storage,
         pub header: SecuredHeader,
    @@ -116,4 +116,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/propagation/struct.PropagationThread.html b/massa_protocol_worker/handlers/block_handler/propagation/struct.PropagationThread.html index ff63df23d64..5029410d254 100644 --- a/massa_protocol_worker/handlers/block_handler/propagation/struct.PropagationThread.html +++ b/massa_protocol_worker/handlers/block_handler/propagation/struct.PropagationThread.html @@ -1,4 +1,4 @@ -PropagationThread in massa_protocol_worker::handlers::block_handler::propagation - Rust
    pub struct PropagationThread {
    +PropagationThread in massa_protocol_worker::handlers::block_handler::propagation - Rust
    pub struct PropagationThread {
         receiver: MassaReceiver<BlockHandlerPropagationCommand>,
         config: ProtocolConfig,
         cache: Arc<RwLock<BlockCache>>,
    @@ -126,4 +126,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/retrieval/struct.BlockInfo.html b/massa_protocol_worker/handlers/block_handler/retrieval/struct.BlockInfo.html index 697837c2cc8..c36514ba144 100644 --- a/massa_protocol_worker/handlers/block_handler/retrieval/struct.BlockInfo.html +++ b/massa_protocol_worker/handlers/block_handler/retrieval/struct.BlockInfo.html @@ -1,4 +1,4 @@ -BlockInfo in massa_protocol_worker::handlers::block_handler::retrieval - Rust
    pub(crate) struct BlockInfo {
    +BlockInfo in massa_protocol_worker::handlers::block_handler::retrieval - Rust
    pub(crate) struct BlockInfo {
         pub(crate) header: Option<SecuredHeader>,
         pub(crate) operation_ids: Option<Vec<OperationId>>,
         pub(crate) storage: Storage,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/retrieval/struct.RetrievalThread.html b/massa_protocol_worker/handlers/block_handler/retrieval/struct.RetrievalThread.html index bff93c19804..f2817659d4f 100644 --- a/massa_protocol_worker/handlers/block_handler/retrieval/struct.RetrievalThread.html +++ b/massa_protocol_worker/handlers/block_handler/retrieval/struct.RetrievalThread.html @@ -1,4 +1,4 @@ -RetrievalThread in massa_protocol_worker::handlers::block_handler::retrieval - Rust
    pub struct RetrievalThread {
    Show 22 fields +RetrievalThread in massa_protocol_worker::handlers::block_handler::retrieval - Rust
    pub struct RetrievalThread {
    Show 22 fields active_connections: Box<dyn ActiveConnectionsTrait>, selector_controller: Box<dyn SelectorController>, consensus_controller: Box<dyn ConsensusController>, @@ -207,4 +207,5 @@
    §Parameters:
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/block_handler/struct.BlockHandler.html b/massa_protocol_worker/handlers/block_handler/struct.BlockHandler.html index 7e0f6ccd3a4..ca4558f9324 100644 --- a/massa_protocol_worker/handlers/block_handler/struct.BlockHandler.html +++ b/massa_protocol_worker/handlers/block_handler/struct.BlockHandler.html @@ -1,4 +1,4 @@ -BlockHandler in massa_protocol_worker::handlers::block_handler - Rust
    pub struct BlockHandler {
    +BlockHandler in massa_protocol_worker::handlers::block_handler - Rust
    pub struct BlockHandler {
         pub block_retrieval_thread: Option<(MassaSender<BlockHandlerRetrievalCommand>, JoinHandle<()>)>,
         pub block_propagation_thread: Option<(MassaSender<BlockHandlerPropagationCommand>, JoinHandle<()>)>,
     }

    Fields§

    §block_retrieval_thread: Option<(MassaSender<BlockHandlerRetrievalCommand>, JoinHandle<()>)>§block_propagation_thread: Option<(MassaSender<BlockHandlerPropagationCommand>, JoinHandle<()>)>

    Implementations§

    source§

    impl BlockHandler

    source

    pub fn new( @@ -132,4 +132,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/cache/struct.EndorsementCache.html b/massa_protocol_worker/handlers/endorsement_handler/cache/struct.EndorsementCache.html index 6b2120e6cc8..60bf937a82f 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/cache/struct.EndorsementCache.html +++ b/massa_protocol_worker/handlers/endorsement_handler/cache/struct.EndorsementCache.html @@ -1,4 +1,4 @@ -EndorsementCache in massa_protocol_worker::handlers::endorsement_handler::cache - Rust
    pub struct EndorsementCache {
    +EndorsementCache in massa_protocol_worker::handlers::endorsement_handler::cache - Rust
    pub struct EndorsementCache {
         pub checked_endorsements: LruMap<EndorsementId, ()>,
         pub endorsements_known_by_peer: HashMap<PeerId, LruMap<EndorsementId, ()>>,
         pub max_known_endorsements_by_peer: u32,
    @@ -128,4 +128,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/commands_propagation/enum.EndorsementHandlerPropagationCommand.html b/massa_protocol_worker/handlers/endorsement_handler/commands_propagation/enum.EndorsementHandlerPropagationCommand.html index 78bf1d5bc5e..a058f17fe19 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/commands_propagation/enum.EndorsementHandlerPropagationCommand.html +++ b/massa_protocol_worker/handlers/endorsement_handler/commands_propagation/enum.EndorsementHandlerPropagationCommand.html @@ -1,4 +1,4 @@ -EndorsementHandlerPropagationCommand in massa_protocol_worker::handlers::endorsement_handler::commands_propagation - Rust
    pub enum EndorsementHandlerPropagationCommand {
    +EndorsementHandlerPropagationCommand in massa_protocol_worker::handlers::endorsement_handler::commands_propagation - Rust
    pub enum EndorsementHandlerPropagationCommand {
         Stop,
         PropagateEndorsements(Storage),
     }

    Variants§

    §

    Stop

    §

    PropagateEndorsements(Storage)

    Trait Implementations§

    source§

    impl Clone for EndorsementHandlerPropagationCommand

    source§

    fn clone(&self) -> EndorsementHandlerPropagationCommand

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -116,4 +116,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/commands_retrieval/enum.EndorsementHandlerRetrievalCommand.html b/massa_protocol_worker/handlers/endorsement_handler/commands_retrieval/enum.EndorsementHandlerRetrievalCommand.html index fe0d6d94f1d..616436ac61c 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/commands_retrieval/enum.EndorsementHandlerRetrievalCommand.html +++ b/massa_protocol_worker/handlers/endorsement_handler/commands_retrieval/enum.EndorsementHandlerRetrievalCommand.html @@ -1,4 +1,4 @@ -EndorsementHandlerRetrievalCommand in massa_protocol_worker::handlers::endorsement_handler::commands_retrieval - Rust
    pub enum EndorsementHandlerRetrievalCommand {
    +EndorsementHandlerRetrievalCommand in massa_protocol_worker::handlers::endorsement_handler::commands_retrieval - Rust
    pub enum EndorsementHandlerRetrievalCommand {
         Stop,
     }

    Variants§

    §

    Stop

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -111,4 +111,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/messages/enum.EndorsementMessage.html b/massa_protocol_worker/handlers/endorsement_handler/messages/enum.EndorsementMessage.html index 5d3ac0fddc9..59c7ba5489b 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/messages/enum.EndorsementMessage.html +++ b/massa_protocol_worker/handlers/endorsement_handler/messages/enum.EndorsementMessage.html @@ -1,4 +1,4 @@ -EndorsementMessage in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub enum EndorsementMessage {
    +EndorsementMessage in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub enum EndorsementMessage {
         Endorsements(Vec<SecureShareEndorsement>),
     }

    Variants§

    §

    Endorsements(Vec<SecureShareEndorsement>)

    Endorsements

    Trait Implementations§

    source§

    impl Debug for EndorsementMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deserializer<EndorsementMessage> for EndorsementMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( @@ -131,4 +131,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/messages/enum.MessageTypeId.html b/massa_protocol_worker/handlers/endorsement_handler/messages/enum.MessageTypeId.html index ecf5ffa920d..8562e4973df 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/messages/enum.MessageTypeId.html +++ b/massa_protocol_worker/handlers/endorsement_handler/messages/enum.MessageTypeId.html @@ -1,8 +1,8 @@ -MessageTypeId in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { +MessageTypeId in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { Endorsements = 0, }

    Variants§

    §

    Endorsements = 0

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&EndorsementMessage> for MessageTypeId

    source§

    fn from(message: &EndorsementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageTypeId

    source§

    impl StructuralPartialEq for MessageTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializer.html b/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializer.html index b46a4696b8a..a91d6b18255 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializer.html +++ b/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializer.html @@ -1,4 +1,4 @@ -EndorsementMessageDeserializer in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub struct EndorsementMessageDeserializer {
    +EndorsementMessageDeserializer in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub struct EndorsementMessageDeserializer {
         id_deserializer: U64VarIntDeserializer,
         length_endorsements_deserializer: U64VarIntDeserializer,
         secure_share_deserializer: SecureShareDeserializer<Endorsement, EndorsementDeserializer>,
    @@ -116,4 +116,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializerArgs.html b/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializerArgs.html index b7972a84080..0dc54169fe2 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializerArgs.html +++ b/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageDeserializerArgs.html @@ -1,4 +1,4 @@ -EndorsementMessageDeserializerArgs in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub struct EndorsementMessageDeserializerArgs {
    +EndorsementMessageDeserializerArgs in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub struct EndorsementMessageDeserializerArgs {
         pub thread_count: u8,
         pub max_length_endorsements: u64,
         pub endorsement_count: u32,
    @@ -114,4 +114,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageSerializer.html b/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageSerializer.html index 7884284c751..95ac199b547 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageSerializer.html +++ b/massa_protocol_worker/handlers/endorsement_handler/messages/struct.EndorsementMessageSerializer.html @@ -1,4 +1,4 @@ -EndorsementMessageSerializer in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub struct EndorsementMessageSerializer {
    +EndorsementMessageSerializer in massa_protocol_worker::handlers::endorsement_handler::messages - Rust
    pub struct EndorsementMessageSerializer {
         id_serializer: U64VarIntSerializer,
         length_endorsements_serializer: U64VarIntSerializer,
         secure_share_serializer: SecureShareSerializer,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/propagation/struct.PropagationThread.html b/massa_protocol_worker/handlers/endorsement_handler/propagation/struct.PropagationThread.html index 546500a83a2..782b9fb960e 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/propagation/struct.PropagationThread.html +++ b/massa_protocol_worker/handlers/endorsement_handler/propagation/struct.PropagationThread.html @@ -1,4 +1,4 @@ -PropagationThread in massa_protocol_worker::handlers::endorsement_handler::propagation - Rust
    struct PropagationThread {
    +PropagationThread in massa_protocol_worker::handlers::endorsement_handler::propagation - Rust
    struct PropagationThread {
         receiver: MassaReceiver<EndorsementHandlerPropagationCommand>,
         config: ProtocolConfig,
         cache: Arc<RwLock<EndorsementCache>>,
    @@ -117,4 +117,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/retrieval/struct.RetrievalThread.html b/massa_protocol_worker/handlers/endorsement_handler/retrieval/struct.RetrievalThread.html index 22bdfefa954..dfdc2a4cbe5 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/retrieval/struct.RetrievalThread.html +++ b/massa_protocol_worker/handlers/endorsement_handler/retrieval/struct.RetrievalThread.html @@ -1,4 +1,4 @@ -RetrievalThread in massa_protocol_worker::handlers::endorsement_handler::retrieval - Rust
    pub struct RetrievalThread {
    +RetrievalThread in massa_protocol_worker::handlers::endorsement_handler::retrieval - Rust
    pub struct RetrievalThread {
         receiver: MassaReceiver<(PeerId, Vec<u8>)>,
         receiver_ext: MassaReceiver<EndorsementHandlerRetrievalCommand>,
         cache: Arc<RwLock<EndorsementCache>>,
    @@ -123,4 +123,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/endorsement_handler/struct.EndorsementHandler.html b/massa_protocol_worker/handlers/endorsement_handler/struct.EndorsementHandler.html index 6123939b724..1ee6d372904 100644 --- a/massa_protocol_worker/handlers/endorsement_handler/struct.EndorsementHandler.html +++ b/massa_protocol_worker/handlers/endorsement_handler/struct.EndorsementHandler.html @@ -1,4 +1,4 @@ -EndorsementHandler in massa_protocol_worker::handlers::endorsement_handler - Rust
    pub struct EndorsementHandler {
    +EndorsementHandler in massa_protocol_worker::handlers::endorsement_handler - Rust
    pub struct EndorsementHandler {
         pub endorsement_retrieval_thread: Option<(MassaSender<EndorsementHandlerRetrievalCommand>, JoinHandle<()>)>,
         pub endorsement_propagation_thread: Option<(MassaSender<EndorsementHandlerPropagationCommand>, JoinHandle<()>)>,
     }

    Fields§

    §endorsement_retrieval_thread: Option<(MassaSender<EndorsementHandlerRetrievalCommand>, JoinHandle<()>)>§endorsement_propagation_thread: Option<(MassaSender<EndorsementHandlerPropagationCommand>, JoinHandle<()>)>

    Implementations§

    source§

    impl EndorsementHandler

    source

    pub fn new( @@ -126,4 +126,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/cache/struct.OperationCache.html b/massa_protocol_worker/handlers/operation_handler/cache/struct.OperationCache.html index 1e03db5f215..1ed739cdf84 100644 --- a/massa_protocol_worker/handlers/operation_handler/cache/struct.OperationCache.html +++ b/massa_protocol_worker/handlers/operation_handler/cache/struct.OperationCache.html @@ -1,4 +1,4 @@ -OperationCache in massa_protocol_worker::handlers::operation_handler::cache - Rust
    pub struct OperationCache {
    +OperationCache in massa_protocol_worker::handlers::operation_handler::cache - Rust
    pub struct OperationCache {
         pub checked_operations: LruMap<OperationId, ()>,
         pub checked_operations_prefix: LruMap<OperationPrefixId, ()>,
         pub ops_known_by_peer: HashMap<PeerId, LruMap<OperationPrefixId, ()>>,
    @@ -127,4 +127,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/commands_propagation/enum.OperationHandlerPropagationCommand.html b/massa_protocol_worker/handlers/operation_handler/commands_propagation/enum.OperationHandlerPropagationCommand.html index cccabff4675..b7bb5fe79c5 100644 --- a/massa_protocol_worker/handlers/operation_handler/commands_propagation/enum.OperationHandlerPropagationCommand.html +++ b/massa_protocol_worker/handlers/operation_handler/commands_propagation/enum.OperationHandlerPropagationCommand.html @@ -1,4 +1,4 @@ -OperationHandlerPropagationCommand in massa_protocol_worker::handlers::operation_handler::commands_propagation - Rust
    pub enum OperationHandlerPropagationCommand {
    +OperationHandlerPropagationCommand in massa_protocol_worker::handlers::operation_handler::commands_propagation - Rust
    pub enum OperationHandlerPropagationCommand {
         Stop,
         PropagateOperations(Storage),
     }

    Variants§

    §

    Stop

    §

    PropagateOperations(Storage)

    operations ids

    @@ -117,4 +117,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/commands_retrieval/enum.OperationHandlerRetrievalCommand.html b/massa_protocol_worker/handlers/operation_handler/commands_retrieval/enum.OperationHandlerRetrievalCommand.html index 9494b26bfa0..d29753aca06 100644 --- a/massa_protocol_worker/handlers/operation_handler/commands_retrieval/enum.OperationHandlerRetrievalCommand.html +++ b/massa_protocol_worker/handlers/operation_handler/commands_retrieval/enum.OperationHandlerRetrievalCommand.html @@ -1,4 +1,4 @@ -OperationHandlerRetrievalCommand in massa_protocol_worker::handlers::operation_handler::commands_retrieval - Rust
    pub enum OperationHandlerRetrievalCommand {
    +OperationHandlerRetrievalCommand in massa_protocol_worker::handlers::operation_handler::commands_retrieval - Rust
    pub enum OperationHandlerRetrievalCommand {
         Stop,
     }

    Variants§

    §

    Stop

    Trait Implementations§

    source§

    impl Clone for OperationHandlerRetrievalCommand

    source§

    fn clone(&self) -> OperationHandlerRetrievalCommand

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -115,4 +115,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/messages/enum.MessageTypeId.html b/massa_protocol_worker/handlers/operation_handler/messages/enum.MessageTypeId.html index 6bd9a4a1a24..a8c55284792 100644 --- a/massa_protocol_worker/handlers/operation_handler/messages/enum.MessageTypeId.html +++ b/massa_protocol_worker/handlers/operation_handler/messages/enum.MessageTypeId.html @@ -1,10 +1,10 @@ -MessageTypeId in massa_protocol_worker::handlers::operation_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { +MessageTypeId in massa_protocol_worker::handlers::operation_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { OperationsAnnouncement = 0, AskForOperations = 1, Operations = 2, -}

    Variants§

    §

    OperationsAnnouncement = 0

    §

    AskForOperations = 1

    §

    Operations = 2

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&OperationMessage> for MessageTypeId

    source§

    fn from(message: &OperationMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    OperationsAnnouncement = 0

    §

    AskForOperations = 1

    §

    Operations = 2

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&OperationMessage> for MessageTypeId

    source§

    fn from(message: &OperationMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageTypeId

    source§

    impl StructuralPartialEq for MessageTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -127,4 +127,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/messages/enum.OperationMessage.html b/massa_protocol_worker/handlers/operation_handler/messages/enum.OperationMessage.html index d09d903faec..8db774dc39e 100644 --- a/massa_protocol_worker/handlers/operation_handler/messages/enum.OperationMessage.html +++ b/massa_protocol_worker/handlers/operation_handler/messages/enum.OperationMessage.html @@ -1,4 +1,4 @@ -OperationMessage in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub enum OperationMessage {
    +OperationMessage in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub enum OperationMessage {
         OperationsAnnouncement(OperationPrefixIds),
         AskForOperations(OperationPrefixIds),
         Operations(Vec<SecureShareOperation>),
    @@ -123,4 +123,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializer.html b/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializer.html index 3407b36ee69..48c60f11124 100644 --- a/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializer.html +++ b/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializer.html @@ -1,4 +1,4 @@ -OperationMessageDeserializer in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub struct OperationMessageDeserializer {
    +OperationMessageDeserializer in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub struct OperationMessageDeserializer {
         id_deserializer: U64VarIntDeserializer,
         operation_prefix_ids_deserializer: OperationPrefixIdsDeserializer,
         operations_deserializer: OperationsDeserializer,
    @@ -116,4 +116,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializerArgs.html b/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializerArgs.html index b70e59c284e..cd65392b4fe 100644 --- a/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializerArgs.html +++ b/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageDeserializerArgs.html @@ -1,4 +1,4 @@ -OperationMessageDeserializerArgs in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub struct OperationMessageDeserializerArgs {
    +OperationMessageDeserializerArgs in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub struct OperationMessageDeserializerArgs {
         pub max_operations_prefix_ids: u32,
         pub max_operations: u32,
         pub max_datastore_value_length: u64,
    @@ -129,4 +129,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageSerializer.html b/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageSerializer.html index 82d4b4e4c30..8d686da0e48 100644 --- a/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageSerializer.html +++ b/massa_protocol_worker/handlers/operation_handler/messages/struct.OperationMessageSerializer.html @@ -1,4 +1,4 @@ -OperationMessageSerializer in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub struct OperationMessageSerializer {
    +OperationMessageSerializer in massa_protocol_worker::handlers::operation_handler::messages - Rust
    pub struct OperationMessageSerializer {
         id_serializer: U64VarIntSerializer,
         operation_prefix_ids_serializer: OperationPrefixIdsSerializer,
         operations_serializer: OperationsSerializer,
    @@ -121,4 +121,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/propagation/struct.PropagationThread.html b/massa_protocol_worker/handlers/operation_handler/propagation/struct.PropagationThread.html index 2b3ce5a60a6..0a572bac0d5 100644 --- a/massa_protocol_worker/handlers/operation_handler/propagation/struct.PropagationThread.html +++ b/massa_protocol_worker/handlers/operation_handler/propagation/struct.PropagationThread.html @@ -1,4 +1,4 @@ -PropagationThread in massa_protocol_worker::handlers::operation_handler::propagation - Rust
    struct PropagationThread {
    +PropagationThread in massa_protocol_worker::handlers::operation_handler::propagation - Rust
    struct PropagationThread {
         internal_receiver: MassaReceiver<OperationHandlerPropagationCommand>,
         active_connections: Box<dyn ActiveConnectionsTrait>,
         stored_for_propagation: VecDeque<(Instant, PreHashSet<OperationId>)>,
    @@ -120,4 +120,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/retrieval/struct.OperationBatchItem.html b/massa_protocol_worker/handlers/operation_handler/retrieval/struct.OperationBatchItem.html index e8420fb09be..c5dd676a2d3 100644 --- a/massa_protocol_worker/handlers/operation_handler/retrieval/struct.OperationBatchItem.html +++ b/massa_protocol_worker/handlers/operation_handler/retrieval/struct.OperationBatchItem.html @@ -1,4 +1,4 @@ -OperationBatchItem in massa_protocol_worker::handlers::operation_handler::retrieval - Rust
    pub struct OperationBatchItem {
    +OperationBatchItem in massa_protocol_worker::handlers::operation_handler::retrieval - Rust
    pub struct OperationBatchItem {
         pub instant: Instant,
         pub peer_id: PeerId,
         pub operations_prefix_ids: OperationPrefixIds,
    @@ -119,4 +119,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/retrieval/struct.RetrievalThread.html b/massa_protocol_worker/handlers/operation_handler/retrieval/struct.RetrievalThread.html index f4f3595802e..d1224facc0e 100644 --- a/massa_protocol_worker/handlers/operation_handler/retrieval/struct.RetrievalThread.html +++ b/massa_protocol_worker/handlers/operation_handler/retrieval/struct.RetrievalThread.html @@ -1,4 +1,4 @@ -RetrievalThread in massa_protocol_worker::handlers::operation_handler::retrieval - Rust
    pub struct RetrievalThread {
    Show 13 fields +RetrievalThread in massa_protocol_worker::handlers::operation_handler::retrieval - Rust
    pub struct RetrievalThread {
    Show 13 fields receiver: MassaReceiver<(PeerId, Vec<u8>)>, pool_controller: Box<dyn PoolController>, cache: Arc<RwLock<OperationCache>>, @@ -153,4 +153,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/operation_handler/struct.OperationHandler.html b/massa_protocol_worker/handlers/operation_handler/struct.OperationHandler.html index 511f9068194..a3699492377 100644 --- a/massa_protocol_worker/handlers/operation_handler/struct.OperationHandler.html +++ b/massa_protocol_worker/handlers/operation_handler/struct.OperationHandler.html @@ -1,4 +1,4 @@ -OperationHandler in massa_protocol_worker::handlers::operation_handler - Rust
    pub struct OperationHandler {
    +OperationHandler in massa_protocol_worker::handlers::operation_handler - Rust
    pub struct OperationHandler {
         pub operation_retrieval_thread: Option<(MassaSender<OperationHandlerRetrievalCommand>, JoinHandle<()>)>,
         pub operation_propagation_thread: Option<(MassaSender<OperationHandlerPropagationCommand>, JoinHandle<()>)>,
     }

    Fields§

    §operation_retrieval_thread: Option<(MassaSender<OperationHandlerRetrievalCommand>, JoinHandle<()>)>§operation_propagation_thread: Option<(MassaSender<OperationHandlerPropagationCommand>, JoinHandle<()>)>

    Implementations§

    source§

    impl OperationHandler

    source

    pub fn new( @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/announcement/struct.Announcement.html b/massa_protocol_worker/handlers/peer_handler/announcement/struct.Announcement.html index c7099e10fa6..3e1c85eaf2a 100644 --- a/massa_protocol_worker/handlers/peer_handler/announcement/struct.Announcement.html +++ b/massa_protocol_worker/handlers/peer_handler/announcement/struct.Announcement.html @@ -1,4 +1,4 @@ -Announcement in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct Announcement {
    +Announcement in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct Announcement {
         pub listeners: HashMap<SocketAddr, TransportType>,
         pub timestamp: u64,
         pub hash: Hash,
    @@ -147,4 +147,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializer.html b/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializer.html index 3418c468487..0a9b12ab467 100644 --- a/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializer.html +++ b/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializer.html @@ -1,4 +1,4 @@ -AnnouncementDeserializer in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct AnnouncementDeserializer {
    +AnnouncementDeserializer in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct AnnouncementDeserializer {
         length_listeners_deserializer: U64VarIntDeserializer,
         ip_addr_deserializer: IpAddrDeserializer,
     }

    Fields§

    §length_listeners_deserializer: U64VarIntDeserializer§ip_addr_deserializer: IpAddrDeserializer

    Implementations§

    Trait Implementations§

    source§

    impl Clone for AnnouncementDeserializer

    source§

    fn clone(&self) -> AnnouncementDeserializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Deserializer<Announcement> for AnnouncementDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( @@ -119,4 +119,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializerArgs.html b/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializerArgs.html index 9413e7f7362..5401b5f0e55 100644 --- a/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializerArgs.html +++ b/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementDeserializerArgs.html @@ -1,4 +1,4 @@ -AnnouncementDeserializerArgs in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct AnnouncementDeserializerArgs {
    +AnnouncementDeserializerArgs in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct AnnouncementDeserializerArgs {
         pub max_listeners: u64,
     }

    Fields§

    §max_listeners: u64

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -111,4 +111,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementSerializer.html b/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementSerializer.html index 323db92933f..921a3772909 100644 --- a/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementSerializer.html +++ b/massa_protocol_worker/handlers/peer_handler/announcement/struct.AnnouncementSerializer.html @@ -1,4 +1,4 @@ -AnnouncementSerializer in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct AnnouncementSerializer;

    Implementations§

    Trait Implementations§

    source§

    impl Clone for AnnouncementSerializer

    source§

    fn clone(&self) -> AnnouncementSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Serializer<Announcement> for AnnouncementSerializer

    source§

    fn serialize( +AnnouncementSerializer in massa_protocol_worker::handlers::peer_handler::announcement - Rust
    pub struct AnnouncementSerializer;

    Implementations§

    Trait Implementations§

    source§

    impl Clone for AnnouncementSerializer

    source§

    fn clone(&self) -> AnnouncementSerializer

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Serializer<Announcement> for AnnouncementSerializer

    source§

    fn serialize( &self, value: &Announcement, buffer: &mut Vec<u8>, @@ -117,4 +117,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/messages/enum.MessageTypeId.html b/massa_protocol_worker/handlers/peer_handler/messages/enum.MessageTypeId.html index 57414e2cc3b..259f0d379d9 100644 --- a/massa_protocol_worker/handlers/peer_handler/messages/enum.MessageTypeId.html +++ b/massa_protocol_worker/handlers/peer_handler/messages/enum.MessageTypeId.html @@ -1,9 +1,9 @@ -MessageTypeId in massa_protocol_worker::handlers::peer_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { +MessageTypeId in massa_protocol_worker::handlers::peer_handler::messages - Rust
    #[repr(u64)]
    pub enum MessageTypeId { NewPeerConnected = 0, ListPeers = 1, -}

    Variants§

    §

    NewPeerConnected = 0

    §

    ListPeers = 1

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&PeerManagementMessage> for MessageTypeId

    source§

    fn from(message: &PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    NewPeerConnected = 0

    §

    ListPeers = 1

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&PeerManagementMessage> for MessageTypeId

    source§

    fn from(message: &PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageTypeId

    source§

    impl StructuralPartialEq for MessageTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -126,4 +126,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/messages/enum.PeerManagementMessage.html b/massa_protocol_worker/handlers/peer_handler/messages/enum.PeerManagementMessage.html index 2b624bf9898..cd9863ded8f 100644 --- a/massa_protocol_worker/handlers/peer_handler/messages/enum.PeerManagementMessage.html +++ b/massa_protocol_worker/handlers/peer_handler/messages/enum.PeerManagementMessage.html @@ -1,10 +1,10 @@ -PeerManagementMessage in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub enum PeerManagementMessage {
    +PeerManagementMessage in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub enum PeerManagementMessage {
         NewPeerConnected((PeerId, HashMap<SocketAddr, TransportType>)),
         ListPeers(Vec<(PeerId, HashMap<SocketAddr, TransportType>)>),
     }

    Variants§

    §

    NewPeerConnected((PeerId, HashMap<SocketAddr, TransportType>))

    §

    ListPeers(Vec<(PeerId, HashMap<SocketAddr, TransportType>)>)

    Trait Implementations§

    source§

    impl Clone for PeerManagementMessage

    source§

    fn clone(&self) -> PeerManagementMessage

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerManagementMessage

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deserializer<PeerManagementMessage> for PeerManagementMessageDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], -) -> IResult<&'a [u8], PeerManagementMessage, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<&PeerManagementMessage> for MessageTypeId

    source§

    fn from(message: &PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<PeerManagementMessage> for Message

    source§

    fn from(message: PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl Serializer<PeerManagementMessage> for PeerManagementMessageSerializer

    source§

    fn serialize( +) -> IResult<&'a [u8], PeerManagementMessage, E>

    Deserialize a value T from a buffer of u8. Read more
    source§

    impl From<&PeerManagementMessage> for MessageTypeId

    source§

    fn from(message: &PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<PeerManagementMessage> for Message

    source§

    fn from(message: PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl Serializer<PeerManagementMessage> for PeerManagementMessageSerializer

    source§

    fn serialize( &self, value: &PeerManagementMessage, buffer: &mut Vec<u8>, @@ -123,4 +123,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializer.html b/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializer.html index adb2cb7a899..3f89bc7e3da 100644 --- a/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializer.html +++ b/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializer.html @@ -1,4 +1,4 @@ -PeerManagementMessageDeserializer in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub struct PeerManagementMessageDeserializer {
    +PeerManagementMessageDeserializer in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub struct PeerManagementMessageDeserializer {
         id_deserializer: U64VarIntDeserializer,
         listeners_length_deserializer: U64VarIntDeserializer,
         peers_length_deserializer: U64VarIntDeserializer,
    @@ -118,4 +118,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializerArgs.html b/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializerArgs.html index c431f05490a..c06d05ba255 100644 --- a/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializerArgs.html +++ b/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageDeserializerArgs.html @@ -1,4 +1,4 @@ -PeerManagementMessageDeserializerArgs in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub struct PeerManagementMessageDeserializerArgs {
    +PeerManagementMessageDeserializerArgs in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub struct PeerManagementMessageDeserializerArgs {
         pub max_listeners_per_peer: u64,
         pub max_peers_per_announcement: u64,
     }
    Expand description

    Limits used in the deserialization of OperationMessage

    @@ -115,4 +115,5 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageSerializer.html b/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageSerializer.html index b79b33a9ea8..b4483af678b 100644 --- a/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageSerializer.html +++ b/massa_protocol_worker/handlers/peer_handler/messages/struct.PeerManagementMessageSerializer.html @@ -1,4 +1,4 @@ -PeerManagementMessageSerializer in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub struct PeerManagementMessageSerializer {
    +PeerManagementMessageSerializer in massa_protocol_worker::handlers::peer_handler::messages - Rust
    pub struct PeerManagementMessageSerializer {
         id_serializer: U64VarIntSerializer,
         length_serializer: U64VarIntSerializer,
         ip_addr_serializer: IpAddrSerializer,
    @@ -122,4 +122,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/models/enum.PeerManagementCmd.html b/massa_protocol_worker/handlers/peer_handler/models/enum.PeerManagementCmd.html index 39f6f759042..110d85c843c 100644 --- a/massa_protocol_worker/handlers/peer_handler/models/enum.PeerManagementCmd.html +++ b/massa_protocol_worker/handlers/peer_handler/models/enum.PeerManagementCmd.html @@ -1,4 +1,4 @@ -PeerManagementCmd in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub enum PeerManagementCmd {
    +PeerManagementCmd in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub enum PeerManagementCmd {
         Ban(Vec<PeerId>),
         Unban(Vec<PeerId>),
         GetBootstrapPeers {
    @@ -120,4 +120,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/models/enum.PeerState.html b/massa_protocol_worker/handlers/peer_handler/models/enum.PeerState.html index cdf5aeb422e..1e33e69fc7b 100644 --- a/massa_protocol_worker/handlers/peer_handler/models/enum.PeerState.html +++ b/massa_protocol_worker/handlers/peer_handler/models/enum.PeerState.html @@ -1,4 +1,4 @@ -PeerState in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub enum PeerState {
    +PeerState in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub enum PeerState {
         Banned,
         InHandshake,
         HandshakeFailed,
    @@ -130,4 +130,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/models/struct.ConnectionMetadata.html b/massa_protocol_worker/handlers/peer_handler/models/struct.ConnectionMetadata.html index 8d625998265..664c5403604 100644 --- a/massa_protocol_worker/handlers/peer_handler/models/struct.ConnectionMetadata.html +++ b/massa_protocol_worker/handlers/peer_handler/models/struct.ConnectionMetadata.html @@ -1,4 +1,4 @@ -ConnectionMetadata in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct ConnectionMetadata {
    +ConnectionMetadata in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct ConnectionMetadata {
         pub last_success: Option<MassaTime>,
         pub last_failure: Option<MassaTime>,
         pub last_try_connect: Option<MassaTime>,
    @@ -143,4 +143,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/models/struct.PeerDB.html b/massa_protocol_worker/handlers/peer_handler/models/struct.PeerDB.html index 81bfdb83396..189e117910a 100644 --- a/massa_protocol_worker/handlers/peer_handler/models/struct.PeerDB.html +++ b/massa_protocol_worker/handlers/peer_handler/models/struct.PeerDB.html @@ -1,4 +1,4 @@ -PeerDB in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct PeerDB {
    +PeerDB in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct PeerDB {
         pub peers: HashMap<PeerId, PeerInfo>,
         pub tested_addresses: HashMap<SocketAddr, MassaTime>,
         pub try_connect_history: HashMap<SocketAddr, ConnectionMetadata>,
    @@ -134,4 +134,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/models/struct.PeerInfo.html b/massa_protocol_worker/handlers/peer_handler/models/struct.PeerInfo.html index e0bd3fd7174..13bdcbdfb52 100644 --- a/massa_protocol_worker/handlers/peer_handler/models/struct.PeerInfo.html +++ b/massa_protocol_worker/handlers/peer_handler/models/struct.PeerInfo.html @@ -1,4 +1,4 @@ -PeerInfo in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct PeerInfo {
    +PeerInfo in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct PeerInfo {
         pub last_announce: Option<Announcement>,
         pub state: PeerState,
     }

    Fields§

    §last_announce: Option<Announcement>§state: PeerState

    Trait Implementations§

    source§

    impl Clone for PeerInfo

    source§

    fn clone(&self) -> PeerInfo

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PeerInfo

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -116,4 +116,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/models/struct.PeerManagementChannel.html b/massa_protocol_worker/handlers/peer_handler/models/struct.PeerManagementChannel.html index 4ec1376acb8..d7e14aee8a9 100644 --- a/massa_protocol_worker/handlers/peer_handler/models/struct.PeerManagementChannel.html +++ b/massa_protocol_worker/handlers/peer_handler/models/struct.PeerManagementChannel.html @@ -1,4 +1,4 @@ -PeerManagementChannel in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct PeerManagementChannel {
    +PeerManagementChannel in massa_protocol_worker::handlers::peer_handler::models - Rust
    pub struct PeerManagementChannel {
         pub msg_sender: MassaSender<(PeerId, Vec<u8>)>,
         pub command_sender: MassaSender<PeerManagementCmd>,
     }

    Fields§

    §msg_sender: MassaSender<(PeerId, Vec<u8>)>§command_sender: MassaSender<PeerManagementCmd>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where @@ -112,4 +112,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/struct.MassaHandshake.html b/massa_protocol_worker/handlers/peer_handler/struct.MassaHandshake.html index 390aaf06f21..63a62e64cbe 100644 --- a/massa_protocol_worker/handlers/peer_handler/struct.MassaHandshake.html +++ b/massa_protocol_worker/handlers/peer_handler/struct.MassaHandshake.html @@ -1,4 +1,4 @@ -MassaHandshake in massa_protocol_worker::handlers::peer_handler - Rust
    pub struct MassaHandshake {
    +MassaHandshake in massa_protocol_worker::handlers::peer_handler - Rust
    pub struct MassaHandshake {
         pub announcement_serializer: AnnouncementSerializer,
         pub announcement_deserializer: AnnouncementDeserializer,
         pub version_serializer: VersionSerializer,
    @@ -137,4 +137,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/struct.PeerManagementHandler.html b/massa_protocol_worker/handlers/peer_handler/struct.PeerManagementHandler.html index 56dee664c10..00597ac246e 100644 --- a/massa_protocol_worker/handlers/peer_handler/struct.PeerManagementHandler.html +++ b/massa_protocol_worker/handlers/peer_handler/struct.PeerManagementHandler.html @@ -1,4 +1,4 @@ -PeerManagementHandler in massa_protocol_worker::handlers::peer_handler - Rust
    pub struct PeerManagementHandler {
    +PeerManagementHandler in massa_protocol_worker::handlers::peer_handler - Rust
    pub struct PeerManagementHandler {
         pub peer_db: Arc<RwLock<dyn PeerDBTrait>>,
         pub thread_join: Option<JoinHandle<()>>,
         pub sender: PeerManagementChannel,
    @@ -126,4 +126,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/handlers/peer_handler/tester/struct.Tester.html b/massa_protocol_worker/handlers/peer_handler/tester/struct.Tester.html index 4e633a0765c..42d6f5ac084 100644 --- a/massa_protocol_worker/handlers/peer_handler/tester/struct.Tester.html +++ b/massa_protocol_worker/handlers/peer_handler/tester/struct.Tester.html @@ -1,4 +1,4 @@ -Tester in massa_protocol_worker::handlers::peer_handler::tester - Rust
    pub struct Tester {
    +Tester in massa_protocol_worker::handlers::peer_handler::tester - Rust
    pub struct Tester {
         pub handler: Option<JoinHandle<()>>,
     }

    Fields§

    §handler: Option<JoinHandle<()>>

    Implementations§

    source§

    impl Tester

    source

    pub fn run( config: &ProtocolConfig, @@ -138,4 +138,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/manager/struct.ProtocolManagerImpl.html b/massa_protocol_worker/manager/struct.ProtocolManagerImpl.html index 81dc654d50a..235cf5c59b5 100644 --- a/massa_protocol_worker/manager/struct.ProtocolManagerImpl.html +++ b/massa_protocol_worker/manager/struct.ProtocolManagerImpl.html @@ -1,4 +1,4 @@ -ProtocolManagerImpl in massa_protocol_worker::manager - Rust
    pub struct ProtocolManagerImpl {
    +ProtocolManagerImpl in massa_protocol_worker::manager - Rust
    pub struct ProtocolManagerImpl {
         connectivity_thread: Option<(MassaSender<ConnectivityCommand>, JoinHandle<()>)>,
     }
    Expand description

    protocol manager used to stop the protocol

    Fields§

    §connectivity_thread: Option<(MassaSender<ConnectivityCommand>, JoinHandle<()>)>

    Implementations§

    source§

    impl ProtocolManagerImpl

    source

    pub fn new( @@ -115,4 +115,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/messages/enum.Message.html b/massa_protocol_worker/messages/enum.Message.html index 4bb53f552dc..e7dc12cbcbd 100644 --- a/massa_protocol_worker/messages/enum.Message.html +++ b/massa_protocol_worker/messages/enum.Message.html @@ -1,9 +1,9 @@ -Message in massa_protocol_worker::messages - Rust

    Enum massa_protocol_worker::messages::Message

    source ·
    pub enum Message {
    +Message in massa_protocol_worker::messages - Rust

    Enum massa_protocol_worker::messages::Message

    source ·
    pub enum Message {
         Block(Box<BlockMessage>),
         Endorsement(EndorsementMessage),
         Operation(OperationMessage),
         PeerManagement(Box<PeerManagementMessage>),
    -}

    Variants§

    Trait Implementations§

    source§

    impl Debug for Message

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&Message> for MessageTypeId

    source§

    fn from(value: &Message) -> Self

    Converts to this type from the input type.
    source§

    impl From<BlockMessage> for Message

    source§

    fn from(message: BlockMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<EndorsementMessage> for Message

    source§

    fn from(message: EndorsementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<OperationMessage> for Message

    source§

    fn from(message: OperationMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<PeerManagementMessage> for Message

    source§

    fn from(message: PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl MessagesSerializer<Message> for MessagesSerializer

    Variants§

    Trait Implementations§

    source§

    impl Debug for Message

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&Message> for MessageTypeId

    source§

    fn from(value: &Message) -> Self

    Converts to this type from the input type.
    source§

    impl From<BlockMessage> for Message

    source§

    fn from(message: BlockMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<EndorsementMessage> for Message

    source§

    fn from(message: EndorsementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<OperationMessage> for Message

    source§

    fn from(message: OperationMessage) -> Self

    Converts to this type from the input type.
    source§

    impl From<PeerManagementMessage> for Message

    source§

    fn from(message: PeerManagementMessage) -> Self

    Converts to this type from the input type.
    source§

    impl MessagesSerializer<Message> for MessagesSerializer

    source§

    fn serialize( &self, message: &Message, buffer: &mut Vec<u8>, @@ -119,4 +119,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/messages/enum.MessageTypeId.html b/massa_protocol_worker/messages/enum.MessageTypeId.html index f66b9a4033f..fd7ef741414 100644 --- a/massa_protocol_worker/messages/enum.MessageTypeId.html +++ b/massa_protocol_worker/messages/enum.MessageTypeId.html @@ -1,11 +1,11 @@ -MessageTypeId in massa_protocol_worker::messages - Rust

    Enum massa_protocol_worker::messages::MessageTypeId

    source ·
    #[repr(u64)]
    pub enum MessageTypeId { +MessageTypeId in massa_protocol_worker::messages - Rust

    Enum massa_protocol_worker::messages::MessageTypeId

    source ·
    #[repr(u64)]
    pub enum MessageTypeId { Block = 0, Endorsement = 1, Operation = 2, PeerManagement = 3, -}

    Variants§

    §

    Block = 0

    §

    Endorsement = 1

    §

    Operation = 2

    §

    PeerManagement = 3

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&Message> for MessageTypeId

    source§

    fn from(value: &Message) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    Block = 0

    §

    Endorsement = 1

    §

    Operation = 2

    §

    PeerManagement = 3

    Trait Implementations§

    source§

    impl Debug for MessageTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&Message> for MessageTypeId

    source§

    fn from(value: &Message) -> Self

    Converts to this type from the input type.
    source§

    impl From<MessageTypeId> for u64

    source§

    fn from(enum_value: MessageTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for MessageTypeId

    source§

    fn eq(&self, other: &MessageTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( +sufficient, and should not be overridden without very good reason.

    source§

    impl TryFrom<u64> for MessageTypeId

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u64) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for MessageTypeId

    §

    type Primitive = u64

    §

    type Error = TryFromPrimitiveError<MessageTypeId>

    source§

    const NAME: &'static str = "MessageTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for MessageTypeId

    source§

    impl StructuralPartialEq for MessageTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<T> ArchivePointee for T

    §

    type ArchivedMetadata = ()

    The archived version of the pointer metadata for this type.
    §

    fn pointer_metadata( @@ -128,4 +128,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/messages/struct.MessagesHandler.html b/massa_protocol_worker/messages/struct.MessagesHandler.html index 4098b0e07a7..240fd9240bf 100644 --- a/massa_protocol_worker/messages/struct.MessagesHandler.html +++ b/massa_protocol_worker/messages/struct.MessagesHandler.html @@ -1,4 +1,4 @@ -MessagesHandler in massa_protocol_worker::messages - Rust

    Struct massa_protocol_worker::messages::MessagesHandler

    source ·
    pub struct MessagesHandler {
    +MessagesHandler in massa_protocol_worker::messages - Rust

    Struct massa_protocol_worker::messages::MessagesHandler

    source ·
    pub struct MessagesHandler {
         pub id_deserializer: U64VarIntDeserializer,
         pub sender_blocks: MassaSender<(PeerId, Vec<u8>)>,
         pub sender_endorsements: MassaSender<(PeerId, Vec<u8>)>,
    @@ -130,4 +130,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/messages/struct.MessagesSerializer.html b/massa_protocol_worker/messages/struct.MessagesSerializer.html index 4c60c1ec3c1..6863092290e 100644 --- a/massa_protocol_worker/messages/struct.MessagesSerializer.html +++ b/massa_protocol_worker/messages/struct.MessagesSerializer.html @@ -1,4 +1,4 @@ -MessagesSerializer in massa_protocol_worker::messages - Rust
    pub struct MessagesSerializer {
    +MessagesSerializer in massa_protocol_worker::messages - Rust
    pub struct MessagesSerializer {
         id_serializer: U64VarIntSerializer,
         block_message_serializer: Option<BlockMessageSerializer>,
         operation_message_serializer: Option<OperationMessageSerializer>,
    @@ -136,4 +136,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/worker/struct.ProtocolChannels.html b/massa_protocol_worker/worker/struct.ProtocolChannels.html index 9f804a0d2ae..4ee60c23c9e 100644 --- a/massa_protocol_worker/worker/struct.ProtocolChannels.html +++ b/massa_protocol_worker/worker/struct.ProtocolChannels.html @@ -1,4 +1,4 @@ -ProtocolChannels in massa_protocol_worker::worker - Rust

    Struct massa_protocol_worker::worker::ProtocolChannels

    source ·
    pub struct ProtocolChannels {
    +ProtocolChannels in massa_protocol_worker::worker - Rust

    Struct massa_protocol_worker::worker::ProtocolChannels

    source ·
    pub struct ProtocolChannels {
         pub operation_handler_retrieval: (MassaSender<OperationHandlerRetrievalCommand>, MassaReceiver<OperationHandlerRetrievalCommand>),
         pub operation_handler_propagation: (MassaSender<OperationHandlerPropagationCommand>, MassaReceiver<OperationHandlerPropagationCommand>),
         pub endorsement_handler_retrieval: (MassaSender<EndorsementHandlerRetrievalCommand>, MassaReceiver<EndorsementHandlerRetrievalCommand>),
    @@ -118,4 +118,5 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_protocol_worker/wrap_network/struct.NetworkControllerImpl.html b/massa_protocol_worker/wrap_network/struct.NetworkControllerImpl.html index dda3918eb4e..11fbc51b39c 100644 --- a/massa_protocol_worker/wrap_network/struct.NetworkControllerImpl.html +++ b/massa_protocol_worker/wrap_network/struct.NetworkControllerImpl.html @@ -1,4 +1,4 @@ -NetworkControllerImpl in massa_protocol_worker::wrap_network - Rust
    pub struct NetworkControllerImpl {
    +NetworkControllerImpl in massa_protocol_worker::wrap_network - Rust
    pub struct NetworkControllerImpl {
         peernet_manager: PeerNetManager<PeerId, Context, MassaHandshake, MessagesHandler>,
     }

    Fields§

    §peernet_manager: PeerNetManager<PeerId, Context, MassaHandshake, MessagesHandler>

    Implementations§

    source§

    impl NetworkControllerImpl

    source

    pub fn new( peernet_manager: PeerNetManager<PeerId, Context, MassaHandshake, MessagesHandler>, @@ -125,4 +125,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/config/struct.ClientConfig.html b/massa_sdk/config/struct.ClientConfig.html index 65cbc275e58..f81ec7b955c 100644 --- a/massa_sdk/config/struct.ClientConfig.html +++ b/massa_sdk/config/struct.ClientConfig.html @@ -1,4 +1,4 @@ -ClientConfig in massa_sdk::config - Rust

    Struct massa_sdk::config::ClientConfig

    source ·
    pub struct ClientConfig {
    +ClientConfig in massa_sdk::config - Rust

    Struct massa_sdk::config::ClientConfig

    source ·
    pub struct ClientConfig {
         pub max_request_body_size: u32,
         pub request_timeout: MassaTime,
         pub max_concurrent_requests: usize,
    @@ -120,5 +120,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/config/struct.HttpConfig.html b/massa_sdk/config/struct.HttpConfig.html index 214e9e40f7f..49993ccdad6 100644 --- a/massa_sdk/config/struct.HttpConfig.html +++ b/massa_sdk/config/struct.HttpConfig.html @@ -1,4 +1,4 @@ -HttpConfig in massa_sdk::config - Rust

    Struct massa_sdk::config::HttpConfig

    source ·
    pub struct HttpConfig {
    +HttpConfig in massa_sdk::config - Rust

    Struct massa_sdk::config::HttpConfig

    source ·
    pub struct HttpConfig {
         pub client_config: ClientConfig,
         pub enabled: bool,
     }
    Expand description

    Http client settings. @@ -110,5 +110,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/config/struct.WsConfig.html b/massa_sdk/config/struct.WsConfig.html index bc2d8cbb05b..2d0c772462f 100644 --- a/massa_sdk/config/struct.WsConfig.html +++ b/massa_sdk/config/struct.WsConfig.html @@ -1,4 +1,4 @@ -WsConfig in massa_sdk::config - Rust

    Struct massa_sdk::config::WsConfig

    source ·
    pub struct WsConfig {
    +WsConfig in massa_sdk::config - Rust

    Struct massa_sdk::config::WsConfig

    source ·
    pub struct WsConfig {
         pub client_config: ClientConfig,
         pub enabled: bool,
         pub max_notifs_per_subscription: usize,
    @@ -114,5 +114,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/enum.ClientError.html b/massa_sdk/enum.ClientError.html index 59bb325e89b..06260919494 100644 --- a/massa_sdk/enum.ClientError.html +++ b/massa_sdk/enum.ClientError.html @@ -1,10 +1,10 @@ -ClientError in massa_sdk - Rust

    Enum massa_sdk::ClientError

    source ·
    pub enum ClientError {
    +ClientError in massa_sdk - Rust

    Enum massa_sdk::ClientError

    source ·
    pub enum ClientError {
         Url(InvalidUri),
         Connect(Error),
     }
    Expand description

    Error when creating a new client

    Variants§

    §

    Url(InvalidUri)

    Url error

    §

    Connect(Error)

    Connection error

    -

    Trait Implementations§

    source§

    impl Debug for ClientError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ClientError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ClientError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ClientError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<InvalidUri> for ClientError

    source§

    fn from(source: InvalidUri) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for ClientError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ClientError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ClientError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for ClientError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<InvalidUri> for ClientError

    source§

    fn from(source: InvalidUri) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    §

    impl<'a, T, E> AsTaggedExplicit<'a, E> for T
    where T: 'a,

    §

    fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

    §

    impl<'a, T, E> AsTaggedImplicit<'a, E> for T
    where T: 'a,

    §

    fn implicit( @@ -107,5 +107,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.Client.html b/massa_sdk/struct.Client.html index c64f50938bf..61f0495d3af 100644 --- a/massa_sdk/struct.Client.html +++ b/massa_sdk/struct.Client.html @@ -1,4 +1,4 @@ -Client in massa_sdk - Rust

    Struct massa_sdk::Client

    source ·
    pub struct Client {
    +Client in massa_sdk - Rust

    Struct massa_sdk::Client

    source ·
    pub struct Client {
         pub public: RpcClient,
         pub private: RpcClient,
         pub grpc_public: Option<PublicServiceClient<Channel>>,
    @@ -121,5 +121,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.ClientConfig.html b/massa_sdk/struct.ClientConfig.html index 7358ee2096c..9f0a98cfc66 100644 --- a/massa_sdk/struct.ClientConfig.html +++ b/massa_sdk/struct.ClientConfig.html @@ -1,4 +1,4 @@ -ClientConfig in massa_sdk - Rust

    Struct massa_sdk::ClientConfig

    source ·
    pub struct ClientConfig {
    +ClientConfig in massa_sdk - Rust

    Struct massa_sdk::ClientConfig

    source ·
    pub struct ClientConfig {
         pub max_request_body_size: u32,
         pub request_timeout: MassaTime,
         pub max_concurrent_requests: usize,
    @@ -120,5 +120,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.ClientV2.html b/massa_sdk/struct.ClientV2.html index 13a724b1848..4b4eb9ab2d6 100644 --- a/massa_sdk/struct.ClientV2.html +++ b/massa_sdk/struct.ClientV2.html @@ -1,4 +1,4 @@ -ClientV2 in massa_sdk - Rust

    Struct massa_sdk::ClientV2

    source ·
    pub struct ClientV2 {
    +ClientV2 in massa_sdk - Rust

    Struct massa_sdk::ClientV2

    source ·
    pub struct ClientV2 {
         pub api: RpcClientV2,
     }
    Expand description

    Client V2

    Fields§

    §api: RpcClientV2

    API V2 component

    @@ -110,5 +110,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.HttpConfig.html b/massa_sdk/struct.HttpConfig.html index e89f983e5b2..2a8e990272c 100644 --- a/massa_sdk/struct.HttpConfig.html +++ b/massa_sdk/struct.HttpConfig.html @@ -1,4 +1,4 @@ -HttpConfig in massa_sdk - Rust

    Struct massa_sdk::HttpConfig

    source ·
    pub struct HttpConfig {
    +HttpConfig in massa_sdk - Rust

    Struct massa_sdk::HttpConfig

    source ·
    pub struct HttpConfig {
         pub client_config: ClientConfig,
         pub enabled: bool,
     }
    Expand description

    Http client settings. @@ -110,5 +110,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.RpcClient.html b/massa_sdk/struct.RpcClient.html index 94f31d25c1b..e1cfe58b7b4 100644 --- a/massa_sdk/struct.RpcClient.html +++ b/massa_sdk/struct.RpcClient.html @@ -1,4 +1,4 @@ -RpcClient in massa_sdk - Rust

    Struct massa_sdk::RpcClient

    source ·
    pub struct RpcClient {
    +RpcClient in massa_sdk - Rust

    Struct massa_sdk::RpcClient

    source ·
    pub struct RpcClient {
         pub(crate) http_client: HttpClient<HttpBackend>,
     }
    Expand description

    Rpc client

    Fields§

    §http_client: HttpClient<HttpBackend>

    Implementations§

    source§

    impl RpcClient

    source

    pub async fn from_url(url: &str, http_config: &HttpConfig) -> RpcClient

    Default constructor

    @@ -202,5 +202,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.RpcClientV2.html b/massa_sdk/struct.RpcClientV2.html index 4c2b3395423..8b5499a6981 100644 --- a/massa_sdk/struct.RpcClientV2.html +++ b/massa_sdk/struct.RpcClientV2.html @@ -1,4 +1,4 @@ -RpcClientV2 in massa_sdk - Rust

    Struct massa_sdk::RpcClientV2

    source ·
    pub struct RpcClientV2 {
    +RpcClientV2 in massa_sdk - Rust

    Struct massa_sdk::RpcClientV2

    source ·
    pub struct RpcClientV2 {
         pub(crate) http_client: Option<HttpClient<HttpBackend>>,
         pub(crate) ws_client: Option<WsClient>,
     }
    Expand description

    Rpc V2 client

    @@ -129,5 +129,6 @@ V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_sdk/struct.WsConfig.html b/massa_sdk/struct.WsConfig.html index c53b99cae91..4bc8cc908bb 100644 --- a/massa_sdk/struct.WsConfig.html +++ b/massa_sdk/struct.WsConfig.html @@ -1,4 +1,4 @@ -WsConfig in massa_sdk - Rust

    Struct massa_sdk::WsConfig

    source ·
    pub struct WsConfig {
    +WsConfig in massa_sdk - Rust

    Struct massa_sdk::WsConfig

    source ·
    pub struct WsConfig {
         pub client_config: ClientConfig,
         pub enabled: bool,
         pub max_notifs_per_subscription: usize,
    @@ -114,5 +114,6 @@
         V: MultiLane<T>,
    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    §

    impl<T> MaybeSend for T
    where - T: Send,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    §

    impl<T> ErasedDestructor for T
    where + T: 'static,

    §

    impl<T> MaybeSend for T
    where + T: Send,

    §

    impl<T> MaybeSendSync for T

    \ No newline at end of file diff --git a/massa_signature/enum.KeyPair.html b/massa_signature/enum.KeyPair.html index fbe6a04bee0..3b3ea78f27c 100644 --- a/massa_signature/enum.KeyPair.html +++ b/massa_signature/enum.KeyPair.html @@ -31,27 +31,27 @@
    §Example
    let bytes = keypair.to_bytes(); let keypair2 = KeyPair::from_bytes(&bytes).unwrap(); assert_eq!(keypair.to_string(), keypair2.to_string());
    -

    Trait Implementations§

    source§

    impl Clone for KeyPair

    source§

    fn clone(&self) -> KeyPair

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for KeyPair

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<KeyPair, D::Error>

    ::serde::Deserialize trait for KeyPair +

    Trait Implementations§

    source§

    impl Clone for KeyPair

    source§

    fn clone(&self) -> KeyPair

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for KeyPair

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<KeyPair, D::Error>

    ::serde::Deserialize trait for KeyPair if the deserializer is human readable, deserialization is done using deserialize_bs58_check else, it uses deserialize_binary

    -
    §Example
    +
    §Example

    Human readable deserialization :

    let keypair = KeyPair::generate(0).unwrap();
     let serialized = serde_json::to_string(&keypair).unwrap();
     let deserialized: KeyPair = serde_json::from_str(&serialized).unwrap();
    -
    source§

    impl Display for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for KeyPair

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +
    source§

    impl Display for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for KeyPair

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    
     let keypair = KeyPair::generate(0).unwrap();
     let string = keypair.to_string();
     let keypair2 = KeyPair::from_str(&string).unwrap();
     assert_eq!(keypair.to_string(), keypair2.to_string());
    -
    §

    type Err = MassaSignatureError

    The associated error which can be returned from parsing.
    source§

    impl Serialize for KeyPair

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for KeyPair +

    §

    type Err = MassaSignatureError

    The associated error which can be returned from parsing.
    source§

    impl Serialize for KeyPair

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for KeyPair if the serializer is human readable, serialization is done using serialize_bs58_check else, it uses serialize_binary

    -
    §Example
    +
    §Example

    Human readable serialization :

    let keypair = KeyPair::generate(0).unwrap();
    @@ -70,5 +70,5 @@ 
    §Example
    T: Display + ?Sized,
    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where - V: MultiLane<T>,

    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + V: MultiLane<T>,
    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_signature/enum.MassaSignatureError.html b/massa_signature/enum.MassaSignatureError.html index e12544a5452..f26d6c9eb0f 100644 --- a/massa_signature/enum.MassaSignatureError.html +++ b/massa_signature/enum.MassaSignatureError.html @@ -8,7 +8,7 @@
    §

    SignatureError(String)

    Signature error : {0}

    §

    WrongPrefix(String, String)

    Wrong prefix for hash: expected {0}, got {1}

    §

    InvalidVersionError(String)

    invalid version identifier: {0}

    -

    Trait Implementations§

    source§

    impl Clone for MassaSignatureError

    source§

    fn clone(&self) -> MassaSignatureError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MassaSignatureError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for MassaSignatureError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for MassaSignatureError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for MassaSignatureError

    source§

    fn clone(&self) -> MassaSignatureError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MassaSignatureError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for MassaSignatureError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for MassaSignatureError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_signature/enum.PublicKey.html b/massa_signature/enum.PublicKey.html index a7b404b54c8..b46353d31f7 100644 --- a/massa_signature/enum.PublicKey.html +++ b/massa_signature/enum.PublicKey.html @@ -21,7 +21,7 @@
    §Example
    let serialized = keypair.get_public_key().to_bytes(); let deserialized: PublicKey = PublicKey::from_bytes(&serialized).unwrap();
    -

    Trait Implementations§

    source§

    impl Clone for PublicKey

    source§

    fn clone(&self) -> PublicKey

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PublicKey

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PublicKey, D::Error>

    ::serde::Deserialize trait for PublicKey +

    Trait Implementations§

    source§

    impl Clone for PublicKey

    source§

    fn clone(&self) -> PublicKey

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PublicKey

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PublicKey, D::Error>

    ::serde::Deserialize trait for PublicKey if the deserializer is human readable, deserialization is done using deserialize_bs58_check else, it uses deserialize_binary

    @@ -46,7 +46,7 @@
    §Example
    let (rest, deser_public_key) = PublicKeyDeserializer::new().deserialize::<DeserializeError>(&serialized).unwrap(); assert!(rest.is_empty()); assert_eq!(keypair.get_public_key(), deser_public_key);
    -
    source§

    impl Display for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for PublicKey

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +
    source§

    impl Display for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for PublicKey

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    
     let pubkey = KeyPair::generate(0).unwrap().get_public_key();
     let string = pubkey.to_string();
    @@ -61,7 +61,7 @@ 
    §Example
    by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for PublicKey

    source§

    fn partial_cmp(&self, other: &PublicKey) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for PublicKey

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PublicKey +operator. Read more

    source§

    impl Serialize for PublicKey

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PublicKey if the serializer is human readable, serialization is done using serialize_bs58_check else, it uses serialize_binary

    @@ -85,5 +85,5 @@
    §Example
    T: Display + ?Sized,
    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where - V: MultiLane<T>,

    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + V: MultiLane<T>,
    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_signature/enum.Signature.html b/massa_signature/enum.Signature.html index b10d21c5d28..1fa9d93b0c5 100644 --- a/massa_signature/enum.Signature.html +++ b/massa_signature/enum.Signature.html @@ -32,11 +32,11 @@
    §Example
    let serialized = signature.to_bytes(); let deserialized: Signature = Signature::from_bytes(&serialized).unwrap();
    -

    Trait Implementations§

    source§

    impl Clone for Signature

    source§

    fn clone(&self) -> Signature

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Signature

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Signature, D::Error>

    ::serde::Deserialize trait for Signature +

    Trait Implementations§

    source§

    impl Clone for Signature

    source§

    fn clone(&self) -> Signature

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Signature

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Signature, D::Error>

    ::serde::Deserialize trait for Signature if the deserializer is human readable, deserialization is done using from_bs58_check else, it uses from_bytes

    -
    §Example
    +
    §Example

    Human readable deserialization :

    let keypair = KeyPair::generate(0).unwrap();
    @@ -45,7 +45,7 @@ 
    §Example
    let serialized = serde_json::to_string(&signature).unwrap(); let deserialized: Signature = serde_json::from_str(&serialized).unwrap();
    -
    source§

    impl Deserializer<Signature> for SignatureDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Deserializer<Signature> for SignatureDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Signature, E>

    @@ -60,7 +60,7 @@
    §Example
    let (rest, deser_signature) = SignatureDeserializer::new().deserialize::<DeserializeError>(&serialized).unwrap(); assert!(rest.is_empty()); assert_eq!(signature, deser_signature);
    -
    source§

    impl Display for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for Signature

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +
    source§

    impl Display for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for Signature

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    
     let hash = Hash::compute_from("Hello World!".as_bytes());
     let signature = KeyPair::generate(0).unwrap().sign(&hash).unwrap();
    @@ -69,11 +69,11 @@ 
    §Example
    assert_eq!(signature, signature_2);
    §

    type Err = MassaSignatureError

    The associated error which can be returned from parsing.
    source§

    impl PartialEq for Signature

    source§

    fn eq(&self, other: &Signature) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for Signature

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Signature +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for Signature

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Signature if the serializer is human readable, serialization is done using to_bs58_check else, it uses to_bytes

    -
    §Example
    +
    §Example

    Human readable serialization :

    let keypair = KeyPair::generate(0).unwrap();
    @@ -96,5 +96,5 @@ 
    §Example
    T: Display + ?Sized,
    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where - V: MultiLane<T>,

    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + V: MultiLane<T>,
    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_signature/error/enum.MassaSignatureError.html b/massa_signature/error/enum.MassaSignatureError.html index 6de7eb0ae77..b48149ab8c3 100644 --- a/massa_signature/error/enum.MassaSignatureError.html +++ b/massa_signature/error/enum.MassaSignatureError.html @@ -8,7 +8,7 @@
    §

    SignatureError(String)

    Signature error : {0}

    §

    WrongPrefix(String, String)

    Wrong prefix for hash: expected {0}, got {1}

    §

    InvalidVersionError(String)

    invalid version identifier: {0}

    -

    Trait Implementations§

    source§

    impl Clone for MassaSignatureError

    source§

    fn clone(&self) -> MassaSignatureError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MassaSignatureError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for MassaSignatureError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for MassaSignatureError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for MassaSignatureError

    source§

    fn clone(&self) -> MassaSignatureError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MassaSignatureError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for MassaSignatureError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for MassaSignatureError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_signature/signature_impl/enum.KeyPair.html b/massa_signature/signature_impl/enum.KeyPair.html index 732f7811f93..65ae3f1501d 100644 --- a/massa_signature/signature_impl/enum.KeyPair.html +++ b/massa_signature/signature_impl/enum.KeyPair.html @@ -31,27 +31,27 @@
    §Example
    let bytes = keypair.to_bytes(); let keypair2 = KeyPair::from_bytes(&bytes).unwrap(); assert_eq!(keypair.to_string(), keypair2.to_string());
    -

    Trait Implementations§

    source§

    impl Clone for KeyPair

    source§

    fn clone(&self) -> KeyPair

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for KeyPair

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<KeyPair, D::Error>

    ::serde::Deserialize trait for KeyPair +

    Trait Implementations§

    source§

    impl Clone for KeyPair

    source§

    fn clone(&self) -> KeyPair

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for KeyPair

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<KeyPair, D::Error>

    ::serde::Deserialize trait for KeyPair if the deserializer is human readable, deserialization is done using deserialize_bs58_check else, it uses deserialize_binary

    -
    §Example
    +
    §Example

    Human readable deserialization :

    let keypair = KeyPair::generate(0).unwrap();
     let serialized = serde_json::to_string(&keypair).unwrap();
     let deserialized: KeyPair = serde_json::from_str(&serialized).unwrap();
    -
    source§

    impl Display for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for KeyPair

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +
    source§

    impl Display for KeyPair

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for KeyPair

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    
     let keypair = KeyPair::generate(0).unwrap();
     let string = keypair.to_string();
     let keypair2 = KeyPair::from_str(&string).unwrap();
     assert_eq!(keypair.to_string(), keypair2.to_string());
    -
    §

    type Err = MassaSignatureError

    The associated error which can be returned from parsing.
    source§

    impl Serialize for KeyPair

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for KeyPair +

    §

    type Err = MassaSignatureError

    The associated error which can be returned from parsing.
    source§

    impl Serialize for KeyPair

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for KeyPair if the serializer is human readable, serialization is done using serialize_bs58_check else, it uses serialize_binary

    -
    §Example
    +
    §Example

    Human readable serialization :

    let keypair = KeyPair::generate(0).unwrap();
    @@ -70,5 +70,5 @@ 
    §Example
    T: Display + ?Sized,
    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where - V: MultiLane<T>,

    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + V: MultiLane<T>,
    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_signature/signature_impl/enum.PublicKey.html b/massa_signature/signature_impl/enum.PublicKey.html index 71c71f1a62a..6a38a89c0c4 100644 --- a/massa_signature/signature_impl/enum.PublicKey.html +++ b/massa_signature/signature_impl/enum.PublicKey.html @@ -21,7 +21,7 @@
    §Example
    let serialized = keypair.get_public_key().to_bytes(); let deserialized: PublicKey = PublicKey::from_bytes(&serialized).unwrap();
    -

    Trait Implementations§

    source§

    impl Clone for PublicKey

    source§

    fn clone(&self) -> PublicKey

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PublicKey

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PublicKey, D::Error>

    ::serde::Deserialize trait for PublicKey +

    Trait Implementations§

    source§

    impl Clone for PublicKey

    source§

    fn clone(&self) -> PublicKey

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for PublicKey

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<PublicKey, D::Error>

    ::serde::Deserialize trait for PublicKey if the deserializer is human readable, deserialization is done using deserialize_bs58_check else, it uses deserialize_binary

    @@ -46,7 +46,7 @@
    §Example
    let (rest, deser_public_key) = PublicKeyDeserializer::new().deserialize::<DeserializeError>(&serialized).unwrap(); assert!(rest.is_empty()); assert_eq!(keypair.get_public_key(), deser_public_key);
    -
    source§

    impl Display for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for PublicKey

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +
    source§

    impl Display for PublicKey

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for PublicKey

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    
     let pubkey = KeyPair::generate(0).unwrap().get_public_key();
     let string = pubkey.to_string();
    @@ -61,7 +61,7 @@ 
    §Example
    by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for PublicKey

    source§

    fn partial_cmp(&self, other: &PublicKey) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for PublicKey

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PublicKey +operator. Read more

    source§

    impl Serialize for PublicKey

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for PublicKey if the serializer is human readable, serialization is done using serialize_bs58_check else, it uses serialize_binary

    @@ -85,5 +85,5 @@
    §Example
    T: Display + ?Sized,
    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where - V: MultiLane<T>,

    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + V: MultiLane<T>,
    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_signature/signature_impl/enum.Signature.html b/massa_signature/signature_impl/enum.Signature.html index 271faa04cec..adb8dfde8f5 100644 --- a/massa_signature/signature_impl/enum.Signature.html +++ b/massa_signature/signature_impl/enum.Signature.html @@ -32,11 +32,11 @@
    §Example
    let serialized = signature.to_bytes(); let deserialized: Signature = Signature::from_bytes(&serialized).unwrap();
    -

    Trait Implementations§

    source§

    impl Clone for Signature

    source§

    fn clone(&self) -> Signature

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Signature

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Signature, D::Error>

    ::serde::Deserialize trait for Signature +

    Trait Implementations§

    source§

    impl Clone for Signature

    source§

    fn clone(&self) -> Signature

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Signature

    source§

    fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Signature, D::Error>

    ::serde::Deserialize trait for Signature if the deserializer is human readable, deserialization is done using from_bs58_check else, it uses from_bytes

    -
    §Example
    +
    §Example

    Human readable deserialization :

    let keypair = KeyPair::generate(0).unwrap();
    @@ -45,7 +45,7 @@ 
    §Example
    let serialized = serde_json::to_string(&signature).unwrap(); let deserialized: Signature = serde_json::from_str(&serialized).unwrap();
    -
    source§

    impl Deserializer<Signature> for SignatureDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    source§

    impl Deserializer<Signature> for SignatureDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], Signature, E>

    @@ -60,7 +60,7 @@
    §Example
    let (rest, deser_signature) = SignatureDeserializer::new().deserialize::<DeserializeError>(&serialized).unwrap(); assert!(rest.is_empty()); assert_eq!(signature, deser_signature);
    -
    source§

    impl Display for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for Signature

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    +
    source§

    impl Display for Signature

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl FromStr for Signature

    source§

    fn from_str(s: &str) -> Result<Self, Self::Err>

    §Example
    
     let hash = Hash::compute_from("Hello World!".as_bytes());
     let signature = KeyPair::generate(0).unwrap().sign(&hash).unwrap();
    @@ -69,11 +69,11 @@ 
    §Example
    assert_eq!(signature, signature_2);
    §

    type Err = MassaSignatureError

    The associated error which can be returned from parsing.
    source§

    impl PartialEq for Signature

    source§

    fn eq(&self, other: &Signature) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Serialize for Signature

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Signature +sufficient, and should not be overridden without very good reason.

    source§

    impl Serialize for Signature

    source§

    fn serialize<S: Serializer>(&self, s: S) -> Result<S::Ok, S::Error>

    ::serde::Serialize trait for Signature if the serializer is human readable, serialization is done using to_bs58_check else, it uses to_bytes

    -
    §Example
    +
    §Example

    Human readable serialization :

    let keypair = KeyPair::generate(0).unwrap();
    @@ -96,5 +96,5 @@ 
    §Example
    T: Display + ?Sized,
    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<V, T> VZip<V> for T
    where - V: MultiLane<T>,

    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file + V: MultiLane<T>,
    §

    fn vzip(self) -> V

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_time/enum.TimeError.html b/massa_time/enum.TimeError.html index 3820c6f0323..0c8e56d84aa 100644 --- a/massa_time/enum.TimeError.html +++ b/massa_time/enum.TimeError.html @@ -6,7 +6,7 @@

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    ConversionError

    Error converting

    §

    TimeOverflowError

    Time overflow error

    §

    CheckedOperationError(String)

    Checked operation error : {0}

    -

    Trait Implementations§

    source§

    impl Clone for TimeError

    source§

    fn clone(&self) -> TimeError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for TimeError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for TimeError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for TimeError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for TimeError

    source§

    fn clone(&self) -> TimeError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for TimeError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for TimeError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for TimeError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_time/error/enum.TimeError.html b/massa_time/error/enum.TimeError.html index f2eaf8aee61..817d8dca849 100644 --- a/massa_time/error/enum.TimeError.html +++ b/massa_time/error/enum.TimeError.html @@ -6,7 +6,7 @@

    Variants (Non-exhaustive)§

    This enum is marked as non-exhaustive
    Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
    §

    ConversionError

    Error converting

    §

    TimeOverflowError

    Time overflow error

    §

    CheckedOperationError(String)

    Checked operation error : {0}

    -

    Trait Implementations§

    source§

    impl Clone for TimeError

    source§

    fn clone(&self) -> TimeError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for TimeError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for TimeError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for TimeError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Clone for TimeError

    source§

    fn clone(&self) -> TimeError

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for TimeError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for TimeError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for TimeError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where diff --git a/massa_time/struct.MassaTime.html b/massa_time/struct.MassaTime.html index e5c9f156384..9945f3e4e4b 100644 --- a/massa_time/struct.MassaTime.html +++ b/massa_time/struct.MassaTime.html @@ -105,8 +105,8 @@ assert_eq!(mins, 3); assert_eq!(secs, 6);

    source

    pub fn max() -> MassaTime

    Get max MassaTime value

    -

    Trait Implementations§

    source§

    impl Clone for MassaTime

    source§

    fn clone(&self) -> MassaTime

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MassaTime

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for MassaTime

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<MassaTime> for MassaTimeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( +

    Trait Implementations§

    source§

    impl Clone for MassaTime

    source§

    fn clone(&self) -> MassaTime

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MassaTime

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for MassaTime

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Deserializer<MassaTime> for MassaTimeDeserializer

    source§

    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>( &self, buffer: &'a [u8], ) -> IResult<&'a [u8], MassaTime, E>

    @@ -122,7 +122,7 @@ let (rest, time_deser) = deserializer.deserialize::<DeserializeError>(&serialized).unwrap(); assert!(rest.is_empty()); assert_eq!(time, time_deser);
    -
    source§

    impl Display for MassaTime

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<MassaTime> for Duration

    source§

    fn from(value: MassaTime) -> Self

    Conversion from massa_time to duration, representing timestamp in milliseconds.

    +
    source§

    impl Display for MassaTime

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<MassaTime> for Duration

    source§

    fn from(value: MassaTime) -> Self

    Conversion from massa_time to duration, representing timestamp in milliseconds.

    let duration: Duration = Duration::from_millis(42);
     let time : MassaTime = MassaTime::from_millis(42);
    @@ -137,8 +137,8 @@
     by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for MassaTime

    source§

    fn partial_cmp(&self, other: &MassaTime) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl Serialize for MassaTime

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<MassaTime> for MassaTimeSerializer

    source§

    impl Serialize for MassaTime

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Serializer<MassaTime> for MassaTimeSerializer

    source§

    fn serialize( &self, value: &MassaTime, buffer: &mut Vec<u8>, @@ -183,6 +183,6 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    source§

    impl<N> NodeTrait for N
    where N: Copy + Ord + Hash,

    \ No newline at end of file diff --git a/massa_versioning/versioning/enum.ComponentStateTypeId.html b/massa_versioning/versioning/enum.ComponentStateTypeId.html index e556e268ce2..f99114e18db 100644 --- a/massa_versioning/versioning/enum.ComponentStateTypeId.html +++ b/massa_versioning/versioning/enum.ComponentStateTypeId.html @@ -5,14 +5,14 @@ LockedIn = 3, Active = 4, Failed = 5, -}

    Variants§

    §

    Error = 0

    §

    Defined = 1

    §

    Started = 2

    §

    LockedIn = 3

    §

    Active = 4

    §

    Failed = 5

    Implementations§

    Trait Implementations§

    source§

    impl Clone for ComponentStateTypeId

    source§

    fn clone(&self) -> ComponentStateTypeId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ComponentStateTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&ComponentState> for ComponentStateTypeId

    source§

    fn from(value: &ComponentState) -> Self

    Converts to this type from the input type.
    source§

    impl From<&ComponentStateTypeId> for ComponentStateId

    source§

    fn from(value: &ComponentStateTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl From<ComponentStateTypeId> for u32

    source§

    fn from(enum_value: ComponentStateTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl Ord for ComponentStateTypeId

    source§

    fn cmp(&self, other: &ComponentStateTypeId) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where +}

    Variants§

    §

    Error = 0

    §

    Defined = 1

    §

    Started = 2

    §

    LockedIn = 3

    §

    Active = 4

    §

    Failed = 5

    Implementations§

    Trait Implementations§

    source§

    impl Clone for ComponentStateTypeId

    source§

    fn clone(&self) -> ComponentStateTypeId

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ComponentStateTypeId

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&ComponentState> for ComponentStateTypeId

    source§

    fn from(value: &ComponentState) -> Self

    Converts to this type from the input type.
    source§

    impl From<&ComponentStateTypeId> for ComponentStateId

    source§

    fn from(value: &ComponentStateTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl From<ComponentStateTypeId> for u32

    source§

    fn from(enum_value: ComponentStateTypeId) -> Self

    Converts to this type from the input type.
    source§

    impl Ord for ComponentStateTypeId

    source§

    fn cmp(&self, other: &ComponentStateTypeId) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    source§

    impl PartialEq for ComponentStateTypeId

    source§

    fn eq(&self, other: &ComponentStateTypeId) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl PartialOrd for ComponentStateTypeId

    source§

    fn partial_cmp(&self, other: &ComponentStateTypeId) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
    source§

    impl TryFrom<u32> for ComponentStateTypeId

    §

    type Error = TryFromPrimitiveError<ComponentStateTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for ComponentStateTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<ComponentStateTypeId>

    source§

    const NAME: &'static str = "ComponentStateTypeId"

    source§

    fn try_from_primitive( +operator. Read more

    source§

    impl TryFrom<u32> for ComponentStateTypeId

    §

    type Error = TryFromPrimitiveError<ComponentStateTypeId>

    The type returned in the event of a conversion error.
    source§

    fn try_from(number: u32) -> Result<Self, TryFromPrimitiveError<Self>>

    Performs the conversion.
    source§

    impl TryFromPrimitive for ComponentStateTypeId

    §

    type Primitive = u32

    §

    type Error = TryFromPrimitiveError<ComponentStateTypeId>

    source§

    const NAME: &'static str = "ComponentStateTypeId"

    source§

    fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

    source§

    impl Eq for ComponentStateTypeId

    source§

    impl StructuralPartialEq for ComponentStateTypeId

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where diff --git a/massa_versioning/versioning/enum.IsKVValidError.html b/massa_versioning/versioning/enum.IsKVValidError.html index 329a9258a30..0b17c314552 100644 --- a/massa_versioning/versioning/enum.IsKVValidError.html +++ b/massa_versioning/versioning/enum.IsKVValidError.html @@ -1,7 +1,7 @@ IsKVValidError in massa_versioning::versioning - Rust

    Enum massa_versioning::versioning::IsKVValidError

    source ·
    pub enum IsKVValidError {
         Deserialize(String),
         InvalidPrefix,
    -}

    Variants§

    §

    Deserialize(String)

    §

    InvalidPrefix

    Trait Implementations§

    source§

    impl Debug for IsKVValidError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for IsKVValidError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for IsKVValidError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +}

    Variants§

    §

    Deserialize(String)

    §

    InvalidPrefix

    Trait Implementations§

    source§

    impl Debug for IsKVValidError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for IsKVValidError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for IsKVValidError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_versioning/versioning/enum.MipComponent.html b/massa_versioning/versioning/enum.MipComponent.html index eaeef459a57..f01acf98807 100644 --- a/massa_versioning/versioning/enum.MipComponent.html +++ b/massa_versioning/versioning/enum.MipComponent.html @@ -6,7 +6,7 @@ FinalStateHashKind, // some variants omitted }
    Expand description

    Versioning component enum

    -

    Variants§

    §

    Address

    §

    KeyPair

    §

    Block

    §

    VM

    §

    FinalStateHashKind

    Implementations§

    Trait Implementations§

    source§

    impl Clone for MipComponent

    source§

    fn clone(&self) -> MipComponent

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MipComponent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&MipComponent> for MipComponent

    source§

    fn from(value: &MipComponent) -> Self

    Converts to this type from the input type.
    source§

    impl From<MipComponent> for u32

    source§

    fn from(enum_value: MipComponent) -> Self

    Converts to this type from the input type.
    source§

    impl From<u32> for MipComponent

    source§

    fn from(number: u32) -> Self

    Converts to this type from the input type.
    source§

    impl FromPrimitive for MipComponent

    §

    type Primitive = u32

    source§

    fn from_primitive(number: Self::Primitive) -> Self

    source§

    impl Hash for MipComponent

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where +

    Variants§

    §

    Address

    §

    KeyPair

    §

    Block

    §

    VM

    §

    FinalStateHashKind

    Implementations§

    Trait Implementations§

    source§

    impl Clone for MipComponent

    source§

    fn clone(&self) -> MipComponent

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for MipComponent

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&MipComponent> for MipComponent

    source§

    fn from(value: &MipComponent) -> Self

    Converts to this type from the input type.
    source§

    impl From<MipComponent> for u32

    source§

    fn from(enum_value: MipComponent) -> Self

    Converts to this type from the input type.
    source§

    impl From<u32> for MipComponent

    source§

    fn from(number: u32) -> Self

    Converts to this type from the input type.
    source§

    impl FromPrimitive for MipComponent

    §

    type Primitive = u32

    source§

    fn from_primitive(number: Self::Primitive) -> Self

    source§

    impl Hash for MipComponent

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where H: Hasher, Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl Ord for MipComponent

    source§

    fn cmp(&self, other: &MipComponent) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where diff --git a/massa_versioning/versioning/enum.StateAtError.html b/massa_versioning/versioning/enum.StateAtError.html index 8994a7cfb22..c96310792bf 100644 --- a/massa_versioning/versioning/enum.StateAtError.html +++ b/massa_versioning/versioning/enum.StateAtError.html @@ -3,7 +3,7 @@ EmptyHistory, Unpredictable, }
    Expand description

    Error returned by MipStateHistory::state_at

    -

    Variants§

    §

    BeforeInitialState(ComponentStateTypeId, MassaTime)

    §

    EmptyHistory

    §

    Unpredictable

    Trait Implementations§

    source§

    impl Debug for StateAtError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for StateAtError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for StateAtError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl PartialEq for StateAtError

    source§

    fn eq(&self, other: &StateAtError) -> bool

    This method tests for self and other values to be equal, and is used +

    Variants§

    §

    BeforeInitialState(ComponentStateTypeId, MassaTime)

    §

    EmptyHistory

    §

    Unpredictable

    Trait Implementations§

    source§

    impl Debug for StateAtError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for StateAtError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for StateAtError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl PartialEq for StateAtError

    source§

    fn eq(&self, other: &StateAtError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl StructuralPartialEq for StateAtError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where diff --git a/massa_versioning/versioning/enum.UpdateWithError.html b/massa_versioning/versioning/enum.UpdateWithError.html index a023bfbdc91..b8a52045e13 100644 --- a/massa_versioning/versioning/enum.UpdateWithError.html +++ b/massa_versioning/versioning/enum.UpdateWithError.html @@ -4,7 +4,7 @@ Overlapping(MipInfo, MipInfo), InvalidActivationDelay(MipInfo, MassaTime, MassaTime), }
    Expand description

    Error returned by MipStoreRaw::update_with

    -

    Variants§

    §

    NonConsistent(MipInfo, MipState, IsConsistentError)

    §

    Downgrade(MipInfo, ComponentState, ComponentState)

    §

    Overlapping(MipInfo, MipInfo)

    §

    InvalidActivationDelay(MipInfo, MassaTime, MassaTime)

    Trait Implementations§

    source§

    impl Debug for UpdateWithError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for UpdateWithError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for UpdateWithError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<UpdateWithError> for ExtendFromDbError

    source§

    fn from(source: UpdateWithError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for UpdateWithError

    source§

    fn eq(&self, other: &UpdateWithError) -> bool

    This method tests for self and other values to be equal, and is used +

    Variants§

    §

    NonConsistent(MipInfo, MipState, IsConsistentError)

    §

    Downgrade(MipInfo, ComponentState, ComponentState)

    §

    Overlapping(MipInfo, MipInfo)

    §

    InvalidActivationDelay(MipInfo, MassaTime, MassaTime)

    Trait Implementations§

    source§

    impl Debug for UpdateWithError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for UpdateWithError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for UpdateWithError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<UpdateWithError> for ExtendFromDbError

    source§

    fn from(source: UpdateWithError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq for UpdateWithError

    source§

    fn eq(&self, other: &UpdateWithError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl StructuralPartialEq for UpdateWithError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where diff --git a/massa_wallet/enum.WalletError.html b/massa_wallet/enum.WalletError.html index 26bbfc4f466..62cdde22fb6 100644 --- a/massa_wallet/enum.WalletError.html +++ b/massa_wallet/enum.WalletError.html @@ -18,7 +18,7 @@
    §

    MissingKeyError(Address)

    Missing key error: {0}

    §

    MassaCipherError(CipherError)

    MassaCipher error: {0}

    §

    VersionError(String)

    Version error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for WalletError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for WalletError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for WalletError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CipherError> for WalletError

    source§

    fn from(source: CipherError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for WalletError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for WalletError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for WalletError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for WalletError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for WalletError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for WalletError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CipherError> for WalletError

    source§

    fn from(source: CipherError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for WalletError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for WalletError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for WalletError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_wallet/error/enum.WalletError.html b/massa_wallet/error/enum.WalletError.html index 3c120b6942e..c3101c561af 100644 --- a/massa_wallet/error/enum.WalletError.html +++ b/massa_wallet/error/enum.WalletError.html @@ -18,7 +18,7 @@
    §

    MissingKeyError(Address)

    Missing key error: {0}

    §

    MassaCipherError(CipherError)

    MassaCipher error: {0}

    §

    VersionError(String)

    Version error: {0}

    -

    Trait Implementations§

    source§

    impl Debug for WalletError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for WalletError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for WalletError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CipherError> for WalletError

    source§

    fn from(source: CipherError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for WalletError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for WalletError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for WalletError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Trait Implementations§

    source§

    impl Debug for WalletError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for WalletError

    source§

    fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for WalletError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, request: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CipherError> for WalletError

    source§

    fn from(source: CipherError) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for WalletError

    source§

    fn from(source: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaHashError> for WalletError

    source§

    fn from(source: MassaHashError) -> Self

    Converts to this type from the input type.
    source§

    impl From<MassaSignatureError> for WalletError

    source§

    fn from(source: MassaSignatureError) -> Self

    Converts to this type from the input type.
    source§

    impl From<ModelsError> for WalletError

    source§

    fn from(source: ModelsError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Conv for T

    §

    fn conv<T>(self) -> T
    where diff --git a/massa_wallet/struct.Wallet.html b/massa_wallet/struct.Wallet.html index 7d456e70cde..a713545b738 100644 --- a/massa_wallet/struct.Wallet.html +++ b/massa_wallet/struct.Wallet.html @@ -36,9 +36,9 @@ content: Operation, address: Address, ) -> Result<SecureShareOperation, WalletError>

    Signs an operation with the keypair corresponding to the given address

    -

    Trait Implementations§

    source§

    impl Clone for Wallet

    source§

    fn clone(&self) -> Wallet

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Wallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Wallet

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for Wallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Drop for Wallet

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    source§

    impl Serialize for Wallet

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Zeroize for Wallet

    source§

    fn zeroize(&mut self)

    Zero out this object from memory using Rust intrinsics which ensure the +

    Trait Implementations§

    source§

    impl Clone for Wallet

    source§

    fn clone(&self) -> Wallet

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Wallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for Wallet

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Display for Wallet

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Drop for Wallet

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    source§

    impl Serialize for Wallet

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    source§

    impl Zeroize for Wallet

    source§

    fn zeroize(&mut self)

    Zero out this object from memory using Rust intrinsics which ensure the zeroization operation is not “optimized away” by the compiler.

    Auto Trait Implementations§

    §

    impl Freeze for Wallet

    §

    impl RefUnwindSafe for Wallet

    §

    impl Send for Wallet

    §

    impl Sync for Wallet

    §

    impl Unpin for Wallet

    §

    impl UnwindSafe for Wallet

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where @@ -138,5 +138,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more

    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/massa_wallet/struct.WalletFileFormat.html b/massa_wallet/struct.WalletFileFormat.html index 41bfa44856e..7ce5556e647 100644 --- a/massa_wallet/struct.WalletFileFormat.html +++ b/massa_wallet/struct.WalletFileFormat.html @@ -7,9 +7,9 @@ pub(crate) ciphered_data: Vec<u8>, pub(crate) public_key: Vec<u8>, }
    Expand description

    Follow the standard: https://github.com/massalabs/massa-standards/blob/main/wallet/file-format.md

    -

    Fields§

    §version: u64§nickname: String§address: String§salt: Salt§nonce: [u8; 12]§ciphered_data: Vec<u8>§public_key: Vec<u8>

    Trait Implementations§

    source§

    impl Clone for WalletFileFormat

    source§

    fn clone(&self) -> WalletFileFormat

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for WalletFileFormat

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for WalletFileFormat

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where - __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for WalletFileFormat

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where - __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where +

    Fields§

    §version: u64§nickname: String§address: String§salt: Salt§nonce: [u8; 12]§ciphered_data: Vec<u8>§public_key: Vec<u8>

    Trait Implementations§

    source§

    impl Clone for WalletFileFormat

    source§

    fn clone(&self) -> WalletFileFormat

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for WalletFileFormat

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<'de> Deserialize<'de> for WalletFileFormat

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where + __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    source§

    impl Serialize for WalletFileFormat

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where + __S: Serializer,

    Serialize this value into the given Serde serializer. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for T
    where T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for T
    where T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for T
    where T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    source§

    impl<T> CloneToUninit for T
    where @@ -107,5 +107,5 @@ V: MultiLane<T>,

    §

    fn vzip(self) -> V

    §

    impl<T> WithSubscriber for T

    §

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
    where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
    §

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where - T: for<'de> Deserialize<'de>,

    \ No newline at end of file +[WithDispatch] wrapper. Read more
    source§

    impl<T> DeserializeOwned for T
    where + T: for<'de> Deserialize<'de>,

    \ No newline at end of file diff --git a/search-index.js b/search-index.js index 3baba996578..c50c76a669c 100644 --- a/search-index.js +++ b/search-index.js @@ -1,45 +1,46 @@ var searchIndex = new Map(JSON.parse('[\ -["massa_api",{"t":"FKFKFFKFMCOOOCNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNMMOOONNNNNMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNONNNNNNNNMMMMMMMMOMMMMMMMONNNNNOOCOOOCMOMHMMNNNONOMONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNHHKMMMNMMMMHHHHH","n":["API","ApiServer","ApiV2","MassaRpcServer","Private","Public","RpcServer","StopHandle","add_staking_secret_keys","api","api_settings","api_settings","api_settings","api_trait","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","consensus_broadcasts","consensus_controller","consensus_controller","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","execute_read_only_bytecode","execute_read_only_call","execution_controller","execution_controller","execution_controller","from","from","from","from","from","get_addresses","get_addresses_bytecode","get_blockclique_block_by_slot","get_blocks","get_cliques","get_datastore_entries","get_deferred_call_ids_by_slot","get_deferred_call_info","get_deferred_call_quote","get_endorsements","get_filtered_sc_output_event","get_graph_interval","get_openrpc_spec","get_operations","get_slots_transfers","get_stakers","get_staking_addresses","get_status","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_rpc","keypair_factory","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","new","new","new","node_add_to_bootstrap_blacklist","node_add_to_bootstrap_whitelist","node_add_to_peers_whitelist","node_ban_by_id","node_ban_by_ip","node_bootstrap_blacklist","node_bootstrap_whitelist","node_bootstrap_whitelist_allow_all","node_id","node_peers_whitelist","node_remove_from_bootstrap_blacklist","node_remove_from_bootstrap_whitelist","node_remove_from_peers_whitelist","node_sign_message","node_unban_by_id","node_unban_by_ip","node_wallet","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pool_broadcasts","pool_command_sender","private","protocol_config","protocol_controller","protocol_controller","public","remove_staking_addresses","selector_controller","send_operations","serve","serve","serve","serve","serve","serve","server_handler","stop","stop_cv","stop_node","storage","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","version","version","vzip","vzip","vzip","vzip","vzip","wrong_api","broadcast_via_ws","MassaApiServer","get_largest_stakers","get_next_block_best_parents","get_version","into_rpc","subscribe_new_blocks","subscribe_new_blocks_headers","subscribe_new_filled_blocks","subscribe_new_operations","get_file_len","read_ips_from_jsonfile","run_scrud_operation","write_ips_to_jsonfile","check_input_operation"],"q":[[0,"massa_api"],[181,"massa_api::api"],[182,"massa_api::api_trait"],[191,"massa_api::private"],[195,"massa_api::public"],[196,"alloc::string"],[197,"alloc::vec"],[198,"core::future::future"],[199,"alloc::boxed"],[200,"core::pin"],[201,"rkyv::with"],[202,"core::result"],[203,"massa_api_exports::execution"],[204,"massa_models::address"],[205,"massa_api_exports::address"],[206,"massa_models::slot"],[207,"massa_models::block_id"],[208,"massa_api_exports::datastore"],[209,"massa_models::endorsement"],[210,"massa_models::execution"],[211,"massa_api_exports"],[212,"massa_models::operation"],[213,"massa_api_exports::page"],[214,"core::option"],[215,"tonic::request"],[216,"jsonrpsee_core::server::rpc_module"],[217,"core::alloc::layout"],[218,"massa_consensus_exports::controller_trait"],[219,"massa_execution_exports::controller_traits"],[220,"massa_api_exports::config"],[221,"massa_pos_exports::controller_traits"],[222,"massa_pool_exports::controller_traits"],[223,"massa_protocol_exports::controller_trait"],[224,"massa_protocol_exports::settings"],[225,"massa_models::version"],[226,"massa_models::node"],[227,"massa_storage"],[228,"massa_versioning::versioning"],[229,"massa_consensus_exports::channels"],[230,"massa_pool_exports::channels"],[231,"std::sync::mutex"],[232,"std::sync::condvar"],[233,"alloc::sync"],[234,"massa_wallet"],[235,"parking_lot::rwlock"],[236,"core::net::ip_addr"],[237,"massa_api_exports::operation"],[238,"core::net::socket_addr"],[239,"jsonrpsee_core::client::error"],[240,"jsonrpsee_core"],[241,"core::any"],[242,"tokio::sync::broadcast"],[243,"jsonrpsee_core::server::subscription"],[244,"serde::ser"],[245,"core::marker"],[246,"core::clone"],[247,"std::path"],[248,"alloc::collections::btree::set"]],"i":[0,0,0,0,0,0,0,0,1,0,42,54,46,0,42,54,46,43,59,42,54,46,43,59,46,42,46,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,1,1,42,54,46,42,54,46,43,59,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,1,42,42,54,46,43,59,43,43,43,1,1,1,1,1,1,1,1,42,1,1,1,1,1,1,1,54,42,54,46,43,59,46,42,0,42,42,54,0,1,42,1,0,61,62,43,43,43,59,59,54,1,42,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,46,42,54,46,43,59,0,0,0,72,72,72,72,72,72,72,72,0,0,0,0,0],"f":"````````{{{d{b}}{h{f}}}{{n{{l{j}}}}}}`````{{{d{c}}}{{d{e}}}{}{}}0000{{{d{A`c}}}{{d{A`e}}}{}{}}0000```{Ab{{d{c}}}{}}0000{Ab{{d{A`c}}}{}}0000{{{d{c}}{d{A`e}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0000{AbAh}0000{{{d{b}}{h{Aj}}}{{n{{l{j}}}}}}{{{d{b}}{h{Al}}}{{n{{l{j}}}}}}```{cc{}}0000{{{d{b}}{h{An}}}{{n{{l{j}}}}}}{{{d{b}}{h{B`}}}{{n{{l{j}}}}}}{{{d{b}}Bb}{{n{{l{j}}}}}}{{{d{b}}{h{Bd}}}{{n{{l{j}}}}}}{{{d{b}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bf}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bb}}}{{n{{l{j}}}}}}{{{d{b}}{h{f}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bh}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bj}}}{{n{{l{j}}}}}}{{{d{b}}Bl}{{n{{l{j}}}}}}{{{d{b}}Bn}{{n{{l{j}}}}}}7{{{d{b}}{h{C`}}}{{n{{l{j}}}}}}6{{{d{b}}{Cd{Cb}}}{{n{{l{j}}}}}}99{{}Ab}0000{ce{}{}}0000{c{{Cf{e}}}{}{}}0000{b{{Ch{b}}}}`{{}{{Af{CjCl}}}}0000{{{l{Cn}}{l{D`}}Db{l{Dd}}{l{Df}}{l{Dh}}DjDlDnE`Eb}{{Ef{Ed}}}}{{{l{Cn}}Eh{l{D`}}EjDbDl}{{Ef{El}}}}{{{l{Dh}}{l{D`}}Db{Ff{{Fd{{F`{En}}Fb}}}}{Ff{{Fj{Fh}}}}}{{Ef{Fl}}}}{{{d{b}}{h{Fn}}}{{n{{l{j}}}}}}00{{{d{b}}{h{Dn}}}{{n{{l{j}}}}}}1{{{d{b}}}{{n{{l{j}}}}}}00`0222{{{d{b}}{h{G`}}}{{n{{l{j}}}}}}23`{d}0000```````{{{d{b}}{h{An}}}{{n{{l{j}}}}}}`{{{d{b}}{h{Gb}}}{{n{{l{j}}}}}}{{{Ch{c}}{d{Gd}}{d{Db}}}{{Af{GfGh}}}{}}{{Gj{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{Gl{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{{Ef{Ed}}{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{{Ef{Fl}}{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{{Ef{El}}{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}`{GfAh}`{{{d{b}}}{{Gn{Ah}}}}`{c{{Af{e}}}{}{}}000000000{{{d{c}}}H`{}}0000{{{l{c}}}{{l{Hb}}}{}}0000{{{d{A`c}}}{{d{A`Hb}}}{}}0000{{{d{c}}}{{d{Hb}}}{}}0000``{ce{}{}}0000{{}{{Gn{c}}}{}}{{{Hd{c}}Hf}Hh{HjHlHn}}`{{{d{I`}}{Cd{Ib}}}{{n{{l{j}}}}}}{{{d{I`}}}{{n{{l{j}}}}}}0{I`{{Ch{I`}}}}{{{d{I`}}Hf}{{n{{l{j}}}}}}000{{Id{d{If}}En}{{Gn{Ih}}}}{{Id{d{If}}}{{Gn{{h{Fn}}}}}}{{Id{h{Fn}}IfIj}{{Gn{Ah}}}}{{Id{Il{Fn}}{d{If}}}{{Gn{Ah}}}}{{Gb{d{Db}}{Cd{Bb}}}{{Gn{In}}}}","D":"Mb","p":[[10,"MassaRpcServer",0],[1,"reference"],[5,"String",196],[5,"Vec",197],[10,"Future",198],[5,"Box",199],[5,"Pin",200],[0,"mut"],[1,"usize"],[5,"With",201],[6,"Result",202],[1,"unit"],[5,"ReadOnlyBytecodeExecution",203],[5,"ReadOnlyCall",203],[6,"Address",204],[5,"AddressFilter",205],[5,"Slot",206],[6,"BlockId",207],[5,"DatastoreEntryInput",208],[5,"DeferredCallsQuoteRequest",203],[6,"EndorsementId",209],[5,"EventFilter",210],[5,"TimeInterval",211],[6,"OperationId",212],[5,"PageRequest",213],[6,"Option",214],[5,"Request",215],[5,"RpcModule",216],[5,"Layout",217],[5,"LayoutError",217],[10,"ConsensusController",218],[10,"ExecutionController",219],[5,"APIConfig",220],[10,"SelectorController",221],[10,"PoolController",222],[10,"ProtocolController",223],[5,"ProtocolConfig",224],[5,"Version",225],[5,"NodeId",226],[5,"Storage",227],[5,"MipStore",228],[5,"Public",0],[5,"API",0],[5,"ConsensusBroadcasts",229],[5,"PoolBroadcasts",230],[5,"ApiV2",0],[1,"bool"],[5,"Mutex",231],[5,"Condvar",232],[1,"tuple"],[5,"Arc",233],[5,"Wallet",234],[8,"RwLock",235],[5,"Private",0],[6,"IpAddr",236],[1,"u8"],[5,"OperationInput",237],[6,"SocketAddr",238],[5,"StopHandle",0],[6,"Error",239],[10,"RpcServer",0],[10,"ApiServer",0],[8,"RpcResult",240],[5,"TypeId",241],[10,"Any",241],[5,"Sender",242],[5,"PendingSubscriptionSink",243],[8,"SubscriptionResult",240],[10,"Serialize",244],[10,"Send",245],[10,"Clone",246],[10,"MassaApiServer",182],[5,"ApiRequest",211],[5,"PathBuf",247],[6,"ListType",211],[1,"u64"],[6,"ScrudOperation",211],[5,"BTreeSet",248],[8,"SecureShareOperation",212]],"r":[],"b":[[97,"impl-API%3CPublic%3E"],[98,"impl-API%3CApiV2%3E"],[99,"impl-API%3CPrivate%3E"],[135,"impl-RpcServer-for-API%3CPublic%3E"],[136,"impl-RpcServer-for-API%3CPrivate%3E"],[137,"impl-ApiServer-for-API%3CApiV2%3E"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFsACgAPAAkAHAATAEwABABWAAQAXQAEAHYABACFAAAAiAADAJAAHQCwAAYA"}],\ -["massa_api_exports",{"t":"FPPPGPGPFPPCCNNNNNNNNNNNNCCNNHHOCCCNNNNNNNNNNNNNNNNCCCCOCNNCONNNNNNNNNNNNNNNNNNNFFFOOOONNNNNNOOOOONNNNNNNOOOOONNNOOOOONNNNNNNNNNNNNNNNNOOONNNOONNNNNNNNNNNNNNNNNFFFONNNNNNNNNNNNNNNOONNNNNNNNNNNNNNOONNNNNNOOOOOOOONNNONNNNNNNNNNNNNNNNNFOOOOOOOONNONNNOONOOONNNONNOOOOOOOOOOOOOOOOOOOOOONNNNNFFONNNNONNNNNNNNONNNNNNNNNNNONNNNNNNNNNNNNFNNNNNNONNNNOOONNONNNNNNNGPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNPFFFFPFPPFFGFGOOOONNNNNNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNONNNNNNNNNNNNNNNNNNNNOOOOOOOOOONNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNONNNNNONNNNNNONNNNNNNFNNONNNOOOOOONONNNNNNOOOOOOOONNNNNNONFFNNNNNNNONNNNNNNNOOONNNNOOONNOOONNNNNNNNNNFFFONNNNNNNNNNNNONNNNNNNNNNNNNNONOONNNNNONNNNNNNNNNNNFONNONNNNNONNNNNNNNNNNNNFONNNNNNNNNNNNONNNNN","n":["ApiRequest","Blacklist","Create","Delete","ListType","Read","ScrudOperation","Search","TimeInterval","Update","Whitelist","address","block","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","config","datastore","deserialize","deserialize","display_if_true","display_option_bool","end","endorsement","error","execution","fmt","fmt","fmt","from","from","from","from","from_ref","into","into","into","into","into_request","into_request","into_request","into_request","ledger","node","operation","page","page_request","rolls","serialize","serialize","slot","start","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","AddressFilter","AddressInfo","CompactAddressInfo","active_rolls","address","address","address","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","candidate_balance","candidate_balance","candidate_datastore_keys","candidate_roll_count","candidate_rolls","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","compact","created_blocks","created_endorsements","created_operations","cycle_infos","deferred_credits","deserialize","deserialize","deserialize","final_balance","final_balance","final_datastore_keys","final_roll_count","final_rolls","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from_ref","from_ref","into","into","into","into_request","into_request","into_request","is_final","next_block_draws","next_endorsement_draws","serialize","serialize","serialize","thread","thread","to_owned","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","BlockInfo","BlockInfoContent","BlockSummary","block","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","content","creator","deserialize","deserialize","deserialize","fmt","fmt","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","id","id","into","into","into","into_request","into_request","into_request","is_candidate","is_discarded","is_final","is_final","is_in_blockclique","is_in_blockclique","is_stale","parents","serialize","serialize","serialize","slot","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","APIConfig","allow_hosts","base_operation_gas_cost","batch_request_limit","bind_api","bind_private","bind_public","bootstrap_blacklist_path","bootstrap_whitelist_path","borrow","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","deferred_calls_config","deferred_credits_delta","deserialize","draw_lookahead_period_count","enable_http","enable_ws","fmt","from","from_ref","genesis_timestamp","into","into_request","keypair","last_start_period","max_arguments","max_connections","max_datastore_value_length","max_function_name_length","max_gas_per_block","max_log_length","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_parameter_size","max_request_body_size","max_response_body_size","max_subscriptions_per_connection","minimal_fees","openrpc_spec_path","periods_per_cycle","ping_interval","sp_compilation_cost","t0","thread_count","to_owned","try_from","try_into","type_id","vzip","DatastoreEntryInput","DatastoreEntryOutput","address","borrow","borrow","borrow_mut","borrow_mut","candidate_value","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","deserialize","deserialize","final_value","fmt","fmt","fmt","from","from","from_ref","from_ref","into","into","into_request","into_request","key","serialize","serialize","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","EndorsementInfo","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deserialize","endorsement","fmt","fmt","from","from_ref","id","in_blocks","in_pool","into","into_request","is_final","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","ApiError","BadRequest","ConsensusError","ExecutionError","FactoryError","InconsistencyError","InternalServerError","MassaHashError","MissingCommandSender","MissingConfig","ModelsError","NotFound","ProtocolError","ReceiveChannelError","SendChannelError","TimeError","WalletError","WrongAPI","borrow","borrow_mut","fmt","fmt","from","from","from","from","from","from","into","into_request","source","to_string","try_from","try_into","type_id","vzip","ASC","DeferredCallResponse","DeferredCallsQuoteRequest","DeferredCallsQuoteResponse","DeferredCallsSlotResponse","Error","ExecuteReadOnlyResponse","Ok","Operation","ReadOnlyBytecodeExecution","ReadOnlyCall","ReadOnlyResult","Transfer","TransferContext","address","amount","available","block_id","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytecode","call","call_id","call_ids","caller_address","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","context","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","effective_amount_received","executed_at","fee","fee","fee","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","gas_cost","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","max_gas","max_gas","max_gas_request","max_gas_request","operation_datastore","output_events","parameter","params_size","price","result","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","slot","state_changes","succeed","target_address","target_function","target_slot","target_slot","to","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","LedgerInfo","borrow","borrow_mut","candidate_ledger_info","clone","clone_into","clone_to_uninit","clone_to_uninit","deserialize","final_ledger_info","fmt","fmt","from","from_ref","into","into_request","locked_balance","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","NodeStatus","borrow","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","config","connected_nodes","consensus_stats","current_cycle","current_cycle_time","current_time","deserialize","execution_stats","fmt","fmt","from","from_ref","into","into_request","last_slot","minimal_fees","network_stats","next_cycle_time","next_slot","node_id","node_ip","pool_stats","serialize","to_owned","to_string","try_from","try_into","type_id","version","vzip","OperationInfo","OperationInput","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","creator_public_key","deserialize","deserialize","fmt","fmt","fmt","from","from","from_ref","id","in_blocks","in_pool","into","into","into_request","into_request","is_operation_final","op_exec_status","operation","serialize","serialize","serialized_content","signature","thread","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","PageRequest","PagedVec","PagedVecV2","_total_count","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","content","deserialize","deserialize","from","from","from","from","from_ref","from_ref","into","into","into","into_request","into_request","into_request","limit","new","offset","res","serialize","serialize","serialize","to_owned","to_owned","total_count","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","RollsInfo","active_rolls","borrow","borrow_mut","candidate_rolls","clone","clone_into","clone_to_uninit","clone_to_uninit","deserialize","final_rolls","fmt","fmt","from","from_ref","into","into_request","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","SlotAmount","amount","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deserialize","fmt","from","from_ref","into","into_request","serialize","slot","to_owned","try_from","try_into","type_id","vzip"],"q":[[0,"massa_api_exports"],[80,"massa_api_exports::address"],[160,"massa_api_exports::block"],[232,"massa_api_exports::config"],[286,"massa_api_exports::datastore"],[328,"massa_api_exports::endorsement"],[353,"massa_api_exports::error"],[389,"massa_api_exports::execution"],[611,"massa_api_exports::ledger"],[635,"massa_api_exports::node"],[672,"massa_api_exports::operation"],[715,"massa_api_exports::page"],[768,"massa_api_exports::rolls"],[792,"massa_api_exports::slot"],[812,"core::result"],[813,"serde::de"],[814,"alloc::string"],[815,"core::option"],[816,"core::fmt"],[817,"tonic::request"],[818,"serde::ser"],[819,"core::any"],[820,"massa_hash::error"],[821,"massa_versioning::versioning_factory"],[822,"massa_time::error"],[823,"massa_wallet::error"],[824,"massa_models::error"],[825,"core::error"],[826,"core::clone"],[827,"alloc::vec"]],"i":[0,16,14,14,0,14,0,14,0,14,16,0,0,3,14,16,7,3,14,16,7,3,3,3,3,0,0,3,7,0,0,3,0,0,0,3,14,16,3,14,16,7,3,3,14,16,7,3,14,16,7,0,0,0,0,7,0,3,7,0,3,3,14,16,3,14,16,7,3,14,16,7,3,14,16,7,3,14,16,7,0,0,0,22,20,22,21,20,22,21,20,22,21,20,22,20,20,22,20,21,20,21,20,21,20,20,20,20,20,20,20,22,21,20,22,20,20,22,20,20,22,22,21,21,20,22,21,20,21,20,22,21,20,22,21,21,20,20,20,22,21,20,22,20,21,20,22,21,20,22,21,20,22,21,20,22,21,20,22,21,0,0,0,24,23,24,25,23,24,25,23,24,25,23,24,25,23,24,25,23,25,23,24,25,23,23,24,25,25,23,24,25,23,24,25,23,25,23,24,25,23,24,25,24,24,24,25,24,25,25,25,23,24,25,25,23,24,25,23,25,23,24,25,23,24,25,23,24,25,23,24,25,0,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,0,0,27,27,28,27,28,28,27,28,27,28,27,28,27,28,28,27,28,28,27,28,27,28,27,28,27,28,27,27,28,27,28,28,27,28,27,28,27,28,27,28,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,41,0,0,0,0,37,0,37,41,0,0,0,0,0,39,42,44,42,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,39,45,45,46,40,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,40,42,37,38,39,40,41,42,43,44,45,46,42,38,39,40,42,37,38,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,42,37,38,39,40,41,42,43,44,45,46,38,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,39,40,43,44,39,38,40,43,44,38,37,38,39,40,41,42,43,44,45,46,46,38,42,40,40,43,44,42,37,38,39,40,41,42,43,44,45,46,38,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,0,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,0,50,49,50,49,49,49,49,50,50,49,50,49,49,50,49,49,49,49,49,50,49,50,49,49,49,49,50,49,50,50,49,49,49,50,49,50,49,50,49,50,49,0,0,0,51,51,54,53,51,54,53,51,53,51,53,51,53,53,54,53,51,54,53,53,51,53,51,54,53,51,54,53,54,51,54,51,51,54,53,51,53,53,51,54,53,51,54,53,51,54,53,51,54,53,0,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,0,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59],"f":"`````````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0``{c{{j{f}}}l}{c{{j{n}}}l}{{A`{b{Ab}}}Ad}{{{Af{A`}}{b{Ab}}{b{Ab}}{b{Ab}}}Ad}````{{{b{f}}{b{dAh}}}Aj}{{{b{Al}}{b{dAh}}}{{j{hAn}}}}{{{b{B`}}{b{dAh}}}{{j{hAn}}}}{cc{}}000{{{b{c}}}c{}}{ce{}{}}000{c{{Bb{e}}}{}{}}000``````{{{b{f}}c}jBd}{{{b{n}}c}jBd}``{{{b{c}}}e{}{}}{{{b{c}}}Ad{}}0{c{{j{e}}}{}{}}0000000{{{b{c}}}Bf{}}0007777```````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00`````{{{b{Bh}}}Bh}{{{b{Bj}}}Bj}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{Bh}}}Bl}`````{c{{j{Bh}}}l}{c{{j{Bl}}}l}{c{{j{Bj}}}l}`````{{{b{Bh}}{b{dAh}}}Aj}0{{{b{Bl}}{b{dAh}}}Aj}0{{{b{Bj}}{b{dAh}}}Aj}0{cc{}}00{{{b{c}}}c{}}0{ce{}{}}00{c{{Bb{e}}}{}{}}00```{{{b{Bh}}c}jBd}{{{b{Bl}}c}jBd}{{{b{Bj}}c}jBd}``{{{b{c}}}e{}{}}0{{{b{c}}}Ad{}}00{c{{j{e}}}{}{}}00000{{{b{c}}}Bf{}}00888````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Bn}}}Bn}{{{b{C`}}}C`}{{{b{Cb}}}Cb}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}00``{c{{j{Bn}}}l}{c{{j{C`}}}l}{c{{j{Cb}}}l}{{{b{Bn}}{b{dAh}}}Aj}0{{{b{C`}}{b{dAh}}}Aj}{{{b{Cb}}{b{dAh}}}Aj}0{cc{}}00{{{b{c}}}c{}}00``{ce{}{}}00{c{{Bb{e}}}{}{}}00````````{{{b{Bn}}c}jBd}{{{b{C`}}c}jBd}{{{b{Cb}}c}jBd}`{{{b{c}}}e{}{}}00{{{b{c}}}Ad{}}0{c{{j{e}}}{}{}}00000{{{b{c}}}Bf{}}00888`````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{Cd}}}Cd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}``{c{{j{Cd}}}l}```{{{b{Cd}}{b{dAh}}}Aj}{cc{}}{{{b{c}}}c{}}`{ce{}{}}{c{{Bb{e}}}{}{}}``````````````````````><<;1```::99`{{{b{Cf}}}Cf}{{{b{Ch}}}Ch}9988{c{{j{Cf}}}l}{c{{j{Ch}}}l}`{{{b{Cf}}{b{dAh}}}Aj}{{{b{Ch}}{b{dAh}}}Aj}099887766`{{{b{Cf}}c}jBd}{{{b{Ch}}c}jBd}{{{b{c}}}e{}{}}0{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}000{{{b{c}}}Bf{}}0==`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Cj}}}Cj}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{c{{j{Cj}}}l}`{{{b{Cj}}{b{dAh}}}Aj}0{cc{}}{{{b{c}}}c{}}```{ce{}{}}{c{{Bb{e}}}{}{}}`{{{b{Cj}}c}jBd}?>==<2``````````````````;:{{{b{Cl}}{b{dAh}}}Aj}0{CnCl}6{D`Cl}{DbCl}{DdCl}{DfCl}87{{{b{Cl}}}{{Af{{b{Dh}}}}}}{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}0{{{b{c}}}Bf{}}<``````````````````{{{b{c}}}{{b{e}}}{}{}}000000000{{{b{dc}}}{{b{de}}}{}{}}000000000`````{{{b{Dj}}}Dj}{{{b{Dl}}}Dl}{{{b{Dn}}}Dn}{{{b{E`}}}E`}{{{b{Eb}}}Eb}{{{b{Ed}}}Ed}{{{b{Ef}}}Ef}{{{b{Eh}}}Eh}{{{b{Ej}}}Ej}{{{b{El}}}El}{{{b{c}}{b{de}}}h{}{}}000000000{{{b{c}}}h{}}000000000``{c{{j{Dj}}}l}{c{{j{Dl}}}l}{c{{j{Dn}}}l}{c{{j{E`}}}l}{c{{j{Eb}}}l}{c{{j{Ed}}}l}{c{{j{Ef}}}l}{c{{j{Eh}}}l}{c{{j{Ej}}}l}{c{{j{El}}}l}`````{{{b{Dj}}{b{dAh}}}Aj}{{{b{Dl}}{b{dAh}}}Aj}0{{{b{Dn}}{b{dAh}}}Aj}{{{b{E`}}{b{dAh}}}Aj}{{{b{Eb}}{b{dAh}}}Aj}{{{b{Ed}}{b{dAh}}}Aj}{{{b{Ef}}{b{dAh}}}Aj}{{{b{Eh}}{b{dAh}}}Aj}{{{b{Ej}}{b{dAh}}}Aj}{{{b{El}}{b{dAh}}}Aj}{cc{}}000000000`{{{b{c}}}c{}}000000000`{ce{}{}}000000000{c{{Bb{e}}}{}{}}000000000``````````{{{b{Dj}}c}jBd}{{{b{Dl}}c}jBd}{{{b{Dn}}c}jBd}{{{b{E`}}c}jBd}{{{b{Eb}}c}jBd}{{{b{Ed}}c}jBd}{{{b{Ef}}c}jBd}{{{b{Eh}}c}jBd}{{{b{Ej}}c}jBd}{{{b{El}}c}jBd}````````{{{b{c}}}e{}{}}000000000{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}0000000000000000000{{{b{c}}}Bf{}}000000000??????????`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{En}}}En}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{c{{j{En}}}l}`{{{b{En}}{b{dAh}}}Aj}0{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{Bb{e}}}{}{}}`{{{b{En}}c}jBd}?>==<2`;:`{{{b{F`}}}F`}98``````{c{{j{F`}}}l}`{{{b{F`}}{b{dAh}}}Aj}07654````````{{{b{F`}}c}jBd}{{{b{c}}}e{}{}}{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}0{{{b{c}}}Bf{}}`:``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Fb}}}Fb}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}`{c{{j{Fd}}}l}{c{{j{Fb}}}l}{{{b{Fd}}{b{dAh}}}Aj}{{{b{Fb}}{b{dAh}}}Aj}0{cc{}}0{{{b{c}}}c{}}```{ce{}{}}0{c{{Bb{e}}}{}{}}0```{{{b{Fd}}c}jBd}{{{b{Fb}}c}jBd}```{{{b{c}}}e{}{}}{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}000{{{b{c}}}Bf{}}077````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{{Ff{c}}}}}{{Ff{c}}}Fh}{{{b{{Fj{c}}}}}{{Fj{c}}}Fh}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0`{c{{j{Fl}}}l}{c{{j{{Fj{e}}}}}lFn}{cc{}}0{{{Ff{c}}}{{Fj{c}}}{}}1{{{b{c}}}c{}}0{ce{}{}}00{c{{Bb{e}}}{}{}}00`{{{G`{c}}{Af{Fl}}}{{Ff{c}}}Gb}``{{{b{{Ff{c}}}}e}jGbBd}{{{b{Fl}}c}jBd}{{{b{{Fj{c}}}}e}jGbBd}{{{b{c}}}e{}{}}0`{c{{j{e}}}{}{}}00000{{{b{c}}}Bf{}}00888``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{Gd}}}Gd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{c{{j{Gd}}}l}`{{{b{Gd}}{b{dAh}}}Aj}0{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{Bb{e}}}{}{}}{{{b{Gd}}c}jBd}>{{{b{c}}}Ad{}}>>=3``<;{{{b{Gf}}}Gf}:9{c{{j{Gf}}}l}{{{b{Gf}}{b{dAh}}}Aj}8765{{{b{Gf}}c}jBd}`{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}0{{{b{c}}}Bf{}}:","D":"BFh","p":[[1,"reference"],[0,"mut"],[5,"TimeInterval",0],[1,"unit"],[6,"Result",812],[10,"Deserializer",813],[5,"ApiRequest",0],[1,"bool"],[1,"str"],[5,"String",814],[6,"Option",815],[5,"Formatter",816],[8,"Result",816],[6,"ScrudOperation",0],[5,"Error",816],[6,"ListType",0],[5,"Request",817],[10,"Serializer",818],[5,"TypeId",819],[5,"AddressInfo",80],[5,"AddressFilter",80],[5,"CompactAddressInfo",80],[5,"BlockInfo",160],[5,"BlockInfoContent",160],[5,"BlockSummary",160],[5,"APIConfig",232],[5,"DatastoreEntryInput",286],[5,"DatastoreEntryOutput",286],[5,"EndorsementInfo",328],[6,"ApiError",353],[6,"MassaHashError",820],[6,"FactoryError",821],[6,"TimeError",822],[6,"WalletError",823],[6,"ModelsError",824],[10,"Error",825],[6,"ReadOnlyResult",389],[5,"ExecuteReadOnlyResponse",389],[5,"ReadOnlyBytecodeExecution",389],[5,"ReadOnlyCall",389],[6,"TransferContext",389],[5,"Transfer",389],[5,"DeferredCallsQuoteRequest",389],[5,"DeferredCallsQuoteResponse",389],[5,"DeferredCallResponse",389],[5,"DeferredCallsSlotResponse",389],[5,"LedgerInfo",611],[5,"NodeStatus",635],[5,"OperationInfo",672],[5,"OperationInput",672],[5,"PagedVec",715],[10,"Clone",826],[5,"PagedVecV2",715],[5,"PageRequest",715],[10,"Deserialize",813],[5,"Vec",827],[10,"Serialize",818],[5,"RollsInfo",768],[5,"SlotAmount",792]],"r":[],"b":[[118,"impl-Display-for-AddressInfo"],[119,"impl-Debug-for-AddressInfo"],[120,"impl-Display-for-CompactAddressInfo"],[121,"impl-Debug-for-CompactAddressInfo"],[122,"impl-Display-for-AddressFilter"],[123,"impl-Debug-for-AddressFilter"],[184,"impl-Debug-for-BlockInfo"],[185,"impl-Display-for-BlockInfo"],[187,"impl-Display-for-BlockSummary"],[188,"impl-Debug-for-BlockSummary"],[304,"impl-Display-for-DatastoreEntryOutput"],[305,"impl-Debug-for-DatastoreEntryOutput"],[336,"impl-Debug-for-EndorsementInfo"],[337,"impl-Display-for-EndorsementInfo"],[373,"impl-Display-for-ApiError"],[374,"impl-Debug-for-ApiError"],[375,"impl-From%3CMassaHashError%3E-for-ApiError"],[377,"impl-From%3CFactoryError%3E-for-ApiError"],[378,"impl-From%3CTimeError%3E-for-ApiError"],[379,"impl-From%3CWalletError%3E-for-ApiError"],[380,"impl-From%3CModelsError%3E-for-ApiError"],[480,"impl-Display-for-ExecuteReadOnlyResponse"],[481,"impl-Debug-for-ExecuteReadOnlyResponse"],[621,"impl-Display-for-LedgerInfo"],[622,"impl-Debug-for-LedgerInfo"],[650,"impl-Display-for-NodeStatus"],[651,"impl-Debug-for-NodeStatus"],[685,"impl-Display-for-OperationInfo"],[686,"impl-Debug-for-OperationInfo"],[779,"impl-Debug-for-RollsInfo"],[780,"impl-Display-for-RollsInfo"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAPgBVAAOAAsAHAABACQAAgArAAAAMAADADoAAQA+ABIAWAAFAGMABQBvAAIAdwAFAIAAAQCFAAIAiwACAJAAEAClAA4AtgAHAMEAAgDJAAIA1AACANgAEADyAAEA9QACAPoAAAD+AAAAAAEAAAMBAAAaAQQAIgEDACcBBwAwAQIANQEBADkBAQA8AQwASgEFAFEBAQBUAQAAWQEAAFsBBgB0AQQAegEDAH8BBgCYARMAsQEdANEBCQDgAQoA9gEJAAsCCQAfAgkAMQIyAGUCAQBoAgQAbgIBAHECAABzAgAAdQIGAH0CAQCAAgIAiQIAAIsCAQCOAgAAkAIAAJkCBQCgAgAAowIGAKsCBACyAgAAuAIBAL0CAQDCAgkAzwIPAOECAADjAgEA6AICAO4CEgADAwEABgMEAAwDAQAPAwAAEQMHABsDBgAjAwAAJQMBACgDBAA="}],\ -["massa_async_pool",{"t":"FFIFFFFFFFFFFFFFFOOOOOOOOOOOOOOOOQCOOQCOOOOOOQOOOOQOOQOOQOOOOOQOOOQOOOOOCOOOOOOQOOCOOQOOOOCOOQOOOOOOOOOOOQOOOOOOOOOQOOOQFFFNONNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNOONNNNNNNNNNONNNFNNNNNNNNNNOOOOONNNNNFFIFFFFFFFFFFOOOOOOOOOOONNNOOOONNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNONNNNNNNOOOOOOOOONNNNNNNNNNNNNNNNNNNNOONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNOOONNNNNNNOOOOOONNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOONNNNNNNNNNNNFFFSSSSSSSSSSSSSNOOOONNNNNNNNNOONNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNOONNNN","n":["AsyncMessage","AsyncMessageDeserializer","AsyncMessageId","AsyncMessageIdDeserializer","AsyncMessageIdSerializer","AsyncMessageInfo","AsyncMessageSerializer","AsyncMessageTrigger","AsyncMessageTriggerSerializer","AsyncMessageUpdate","AsyncPool","AsyncPoolChanges","AsyncPoolChangesDeserializer","AsyncPoolChangesSerializer","AsyncPoolConfig","AsyncPoolDeserializer","AsyncPoolSerializer","address","address_deserializer","address_serializer","address_serializer","amount_deserializer","amount_serializer","async_message_deserializer_db","async_message_id_deserializer","async_message_id_serializer","async_message_serializer","async_pool_changes_length","bool_deserializer","bool_serializer","can_be_executed","can_be_executed","can_be_executed","can_be_executed_key","changes","coins","coins","coins_key","config","config","datastore_key","db","denominator_deserializer","destination","destination","destination_key","emission_index","emission_index","emission_index_deserializer","emission_index_deserializer","emission_index_key","emission_slot","emission_slot","emission_slot_key","fee","fee","fee_key","for_db","for_db","function","function","function_deserializer","function_key","function_params","function_params","function_params_deserializer","function_params_key","function_params_serializer","function_serializer","id_deserializer","id_serializer","key_serializer","mapping_grpc","max_function_length","max_function_params_length","max_gas","max_gas","max_gas","max_gas_deserializer","max_gas_key","max_key_length","max_length","message","message_deserializer_db","message_id_deserializer","message_id_prefix","message_id_serializer","message_info_cache","message_serializer","numerator_deserializer","pool","sender","sender","sender_key","set_update_or_delete_message_deserializer","set_update_or_delete_message_serializer","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","thread_count","trigger","trigger","trigger","trigger_deserializer","trigger_key","trigger_serializer","u64_deserializer","u64_serializer","u64_serializer","u64_serializer","u64_serializer","validity_end","validity_end","validity_end","validity_end_key","validity_start","validity_start","validity_start","validity_start_key","AsyncPoolChanges","AsyncPoolChangesDeserializer","AsyncPoolChangesSerializer","apply","async_pool_changes_length","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from_ref","id_deserializer","id_serializer","into","into","into","into_request","into_request","into_request","new","new","push_activate","push_add","push_delete","serialize","serialize","set_update_or_delete_message_deserializer","set_update_or_delete_message_serializer","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_serializer","vzip","vzip","vzip","AsyncPoolConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","from","from_ref","into","into_request","max_function_length","max_function_params_length","max_key_length","max_length","thread_count","to_owned","try_from","try_into","type_id","vzip","AsyncMessage","AsyncMessageDeserializer","AsyncMessageId","AsyncMessageIdDeserializer","AsyncMessageIdSerializer","AsyncMessageInfo","AsyncMessageSerializer","AsyncMessageTrigger","AsyncMessageTriggerDeserializer","AsyncMessageTriggerSerializer","AsyncMessageUpdate","AsyncMessageUpdateDeserializer","AsyncMessageUpdateSerializer","address","address_deserializer","address_deserializer","address_deserializer","address_serializer","address_serializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","amount_serializer","apply","apply","apply","bool_deserializer","bool_deserializer","bool_serializer","bool_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","can_be_executed","can_be_executed","can_be_executed","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","coins","compute_id","datastore_key","default","default","default","default","default","default","denominator_deserializer","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","destination","destination","emission_index","emission_index","emission_index_deserializer","emission_index_deserializer","emission_index_deserializer","emission_slot","emission_slot","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fee","fee","fmt","fmt","fmt","fmt","for_db","for_db","for_db","for_db","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","function","function","function_deserializer","function_deserializer","function_params","function_params","function_params_deserializer","function_params_deserializer","function_params_serializer","function_params_serializer","function_serializer","function_serializer","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","key_serializer","key_serializer","max_gas","max_gas","max_gas","max_gas_deserializer","max_gas_deserializer","new","new","new","new","new","new","new","new","new","numerator_deserializer","sender","sender","serialize","serialize","serialize","serialize","serialize","serialize","serialize","slot_deserializer","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","slot_serializer","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","trigger","trigger","trigger","trigger_deserializer","trigger_deserializer","trigger_serializer","trigger_serializer","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u64_serializer","u64_serializer","u64_serializer","validity_end","validity_end","validity_end","validity_start","validity_start","validity_start","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AsyncPool","AsyncPoolDeserializer","AsyncPoolSerializer","CAN_BE_EXECUTED_IDENT","COINS_IDENT","DESTINATION_IDENT","EMISSION_INDEX_IDENT","EMISSION_SLOT_IDENT","FEE_IDENT","FUNCTION_IDENT","FUNCTION_PARAMS_IDENT","MAX_GAS_IDENT","SENDER_IDENT","TRIGGER_IDENT","VALIDITY_END_IDENT","VALIDITY_START_IDENT","apply_changes_to_batch","async_message_deserializer_db","async_message_id_deserializer","async_message_id_serializer","async_message_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","config","db","default","delete_entry","deserialize","fetch_message","fetch_messages","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","is_key_value_valid","message_deserializer_db","message_id_deserializer","message_id_serializer","message_info_cache","message_serializer","new","new","new","put_entry","recompute_message_info_cache","reset","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_deserializer","u64_serializer","update_entry","vzip","vzip","vzip"],"q":[[0,"massa_async_pool"],[120,"massa_async_pool::changes"],[179,"massa_async_pool::config"],[200,"massa_async_pool::message"],[510,"massa_async_pool::pool"],[586,"nom::internal"],[587,"nom::error"],[588,"core::result"],[589,"serde::de"],[590,"core::fmt"],[591,"tonic::request"],[592,"alloc::vec"],[593,"massa_serialization"],[594,"serde::ser"],[595,"core::any"],[596,"massa_models::slot"],[597,"massa_models::address"],[598,"alloc::string"],[599,"massa_models::amount"],[600,"core::option"],[601,"massa_db_exports::db_batch"],[602,"alloc::collections::btree::map"],[603,"massa_db_exports::controller"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,36,33,35,36,35,47,47,46,46,6,36,35,22,29,28,0,0,22,28,0,0,44,32,44,31,22,28,0,22,28,31,36,0,22,28,0,22,28,0,35,36,22,28,36,0,22,28,36,0,35,35,6,5,33,0,27,27,22,29,28,36,0,27,27,0,44,44,0,44,44,44,31,0,22,28,0,6,5,31,36,30,35,27,22,29,28,36,0,35,47,5,46,30,35,22,29,28,0,22,29,28,0,0,0,0,2,6,5,6,2,5,6,2,2,2,2,5,2,6,2,2,2,2,2,2,2,5,6,2,2,6,5,5,6,2,5,6,2,5,6,2,2,2,5,2,6,5,2,5,6,2,5,6,2,5,6,2,5,5,6,2,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,0,0,0,0,0,0,0,0,0,0,0,32,38,34,36,37,33,35,38,36,37,35,22,29,28,38,36,37,35,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,22,29,28,30,31,32,33,34,22,35,36,29,28,30,31,32,33,34,22,35,36,29,28,30,31,32,33,34,22,35,36,29,28,22,28,22,32,37,30,33,22,35,28,31,38,31,32,34,22,36,28,22,28,22,28,38,31,36,22,28,32,22,29,28,32,32,32,32,22,22,22,22,29,29,29,29,28,28,28,28,22,28,32,22,29,28,37,38,35,36,37,38,30,31,32,33,34,22,35,36,29,29,28,30,31,32,33,34,22,35,36,29,28,22,28,38,36,22,28,38,36,37,35,37,35,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,33,34,22,29,28,38,36,37,38,30,31,33,34,22,35,36,31,22,28,37,30,32,33,22,35,28,38,31,36,37,30,35,30,31,32,33,34,22,35,36,29,28,22,29,28,38,36,37,35,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,37,30,35,22,29,28,22,29,28,37,38,30,31,32,33,34,22,35,36,29,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,47,47,46,46,46,47,44,46,47,44,44,44,44,44,44,46,44,47,44,44,46,47,44,44,46,47,44,46,47,44,44,44,44,44,44,44,46,47,44,44,44,44,46,44,46,47,44,46,47,44,46,47,44,47,46,44,46,47,44],"f":"```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{f{bd}}d}h}`{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{d}}}d}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}{{}j}{{}d}{{{f{l}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}dc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{d}}}Aj}{{{f{d}}{f{d}}}Al}{{{f{c}}{f{e}}}Al{}{}}000{{{f{d}}{f{bAn}}}B`}{cc{}}00{{{f{c}}}c{}}``{ce{}{}}00{c{{Bb{e}}}{}{}}00:{{nBdBfBdBh}l}{{{f{bd}}Bj}h}{{{f{bd}}BjBl}h}1{{{f{j}}{f{d}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{d}}c}AhCb}``{{{f{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{f{c}}}Cd{}}00`999`{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Cf}}}Cf}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}{{{f{Cf}}{f{bAn}}}B`}{cc{}}{{{f{c}}}c{}}{ce{}{}}{c{{Bb{e}}}{}{}}`````<;;:1````````````````````````{{{f{bBl}}Ch}h}{{{f{bCj}}Ch}h}{{{f{bCh}}Ch}h}````<<<<<<<<<<<<;;;;;;;;;;;;```{{{f{Cl}}}Cl}{{{f{Cn}}}Cn}{{{f{D`}}}D`}{{{f{Db}}}Db}{{{f{Dd}}}Dd}{{{f{Bl}}}Bl}{{{f{Df}}}Df}{{{f{Dh}}}Dh}{{{f{Cj}}}Cj}{{{f{Ch}}}Ch}{{{f{c}}{f{be}}}h{}{}}000000000{{{f{c}}}h{}}000000000``{{{f{Bl}}}Bj}`{{}Dj}{{}Cl}{{}Db}{{}Bl}{{}Df}{{}Ch}`{{{f{Dl}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}Chc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{{{f{Cn}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}Bjc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{D`}}}Aj}{{{f{Dd}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}D`c}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{Bl}}}Aj}{{{f{Dh}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}Blc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{Ch}}}Aj}`````````{{{f{D`}}{f{D`}}}Al}{{{f{Bl}}{f{Bl}}}Al}{{{f{Cj}}{f{Cj}}}Al}{{{f{Ch}}{f{Ch}}}Al}{{{f{c}}{f{e}}}Al{}{}}000000000000000``{{{f{D`}}{f{bAn}}}B`}{{{f{Bl}}{f{bAn}}}B`}{{{f{Cj}}{f{bAn}}}B`}{{{f{Ch}}{f{bAn}}}B`}````{cc{}}000000000{BlCj}11{{{f{c}}}c{}}000000000````````````{ce{}{}}00000000000{c{{Bb{e}}}{}{}}00000000000```````{AlDj}{{nBfBdBhAl}Dl}{{}Cl}{nCn}{{}Db}{BhDd}{{DnBdE`E`EbBdEdEdDnDn{Bn{n}}{Ef{D`}}{Ef{Al}}}Bl}{AlDf}{{nBfBdBhAl}Dh}```{{{f{Dj}}{f{Ch}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{Cl}}{f{Bj}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{D`}}c}AhCb}{{{f{Db}}{f{D`}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{Bl}}c}AhCb}{{{f{Df}}{f{Bl}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{Ch}}c}AhCb}``````{{{f{c}}}e{}{}}000000000```````{c{{Ah{e}}}{}{}}00000000000000000000000{{{f{c}}}Cd{}}00000000000`````````{ce{}{}}00000000000````````````````{{{f{bEh}}{f{d}}{f{bEj}}}h}````{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{Eh}}}Eh}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}``{{}El}{{{f{Eh}}{f{Bj}}{f{bEj}}}h}{{{f{En}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}{F`{BjBl}}c}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{{{f{Eh}}{f{Bj}}}{{Ef{Bl}}}}{{{f{Eh}}{Bn{{f{Bj}}}}}{{Bn{{Fb{{f{Bj}}{Ef{Bl}}}}}}}}{cc{}}00{{{f{c}}}c{}}==={c{{Bb{e}}}{}{}}00{{{f{Eh}}{f{{A`{n}}}}{f{{A`{n}}}}}Al}`````8{{nBdBfBdBh}En}{{CfFd}Eh}{{{f{Eh}}{f{Bj}}Bl{f{bEj}}}h}{{{f{bEh}}}h}0{{{f{El}}{f{{F`{BjBl}}}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{f{c}}}Cd{}}00``{{{f{Eh}}{f{Bj}}Ch{f{bEj}}}h}{ce{}{}}00","D":"AFb","p":[[0,"mut"],[5,"AsyncPoolChanges",120],[1,"reference"],[1,"unit"],[5,"AsyncPoolChangesSerializer",120],[5,"AsyncPoolChangesDeserializer",120],[1,"u8"],[1,"slice"],[8,"IResult",586],[10,"ParseError",587],[10,"ContextError",587],[6,"Result",588],[10,"Deserializer",589],[1,"bool"],[5,"Formatter",590],[8,"Result",590],[5,"Request",591],[1,"u64"],[1,"u16"],[1,"u32"],[8,"AsyncMessageId",200],[5,"AsyncMessage",200],[5,"Vec",592],[6,"SerializeError",593],[10,"Serializer",594],[5,"TypeId",595],[5,"AsyncPoolConfig",179],[5,"AsyncMessageUpdate",200],[5,"AsyncMessageInfo",200],[5,"AsyncMessageIdSerializer",200],[5,"AsyncMessageIdDeserializer",200],[5,"AsyncMessageTrigger",200],[5,"AsyncMessageTriggerSerializer",200],[5,"AsyncMessageTriggerDeserializer",200],[5,"AsyncMessageSerializer",200],[5,"AsyncMessageDeserializer",200],[5,"AsyncMessageUpdateSerializer",200],[5,"AsyncMessageUpdateDeserializer",200],[5,"Slot",596],[6,"Address",597],[5,"String",598],[5,"Amount",599],[6,"Option",600],[5,"AsyncPool",510],[8,"DBBatch",601],[5,"AsyncPoolSerializer",510],[5,"AsyncPoolDeserializer",510],[5,"BTreeMap",602],[1,"tuple"],[8,"ShareableMassaDBController",603]],"r":[[0,200],[1,200],[2,200],[3,200],[4,200],[5,200],[6,200],[7,200],[8,200],[9,200],[10,510],[11,120],[12,120],[13,120],[14,179],[15,510],[16,510]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJkBRAACAAAABAADAA0AAAATAAsAIAAAACoAAQAxAAEAOgABAD4AAABCAAAARAAFAE0AAABPAAAAVAABAFcAAwBfAAUAZwAAAGkAAABrAAUAcgAAAHYAAAB6AAAAfQATAJQAAgCaAAQAogARALUABQC8AAAAvgAAAMQABADKAAAAzAADANcACQDkABsAAQEAAAMBHQAlAQcALgECADIBAAA3AQIAPAETAFIBBwBkAQAAZwEJAHMBAQB3AQUAiQENAJgBAACaAQEAngEDAKMBAgCoAQAAqgECAK4BEADAAQAAwgEqAO4BAADxAQAA8wELAAICDAAQAgwAHgIBACECAAAnAgAAKwICAC8CBAA6AgwASAICAA=="}],\ -["massa_bootstrap",{"t":"PPPGFFFGPPPFPPGFFFPFPPPFPPPFPPPPPPGPPPPPPPPPPPPPPPPPCOOOOOOOOOOOOONNOOOCOOOONNNNOOCOONHOONNNOONOOOCOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOCOONOOOOOOOOOOONOOOOOOCOCOOOOHOOOOOOOOCNNNOOONNNOOOOOONCOOOOOOOOOOOOOOOOOOOOKKCNCMMNFSFNNNNONNNNNNNNNONNNNNNNNNNNNNONNNNONNONNNONNNNNNNNNNNNONNNNFFSNNNNNNNNNNNNNNONNNNNNNNNNNNNOOOONNNNOONNONNNNNONNNNNNNNNNNNOONNNNOKFHNNMNHNNNNHNNHHNNNNNHHNNNNNNNHPGPPPPPPPPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFSPGSPNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNPPPPGFFPPPPPPPGFFPPPPPPGGPPPNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNOOOOOOOONNNNNNNNNNOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNOOOOOOOOOOOOOOOOOFFONNNNONNNNNNNNONONNNNNNNNNOONNOOHONNNOHNHHNHNNNNNNNNNNNNOOONNOOFFFFPPPGNNNNOOOOONNNNNNNNNNOOOONNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOHHFFNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOON","n":["AskBootstrapPart","AskBootstrapPeers","BlackListed","BootstrapClientMessage","BootstrapClientMessageDeserializer","BootstrapClientMessageSerializer","BootstrapConfig","BootstrapError","BootstrapError","BootstrapError","BootstrapFinished","BootstrapManager","BootstrapPart","BootstrapPeers","BootstrapServerMessage","BootstrapServerMessageDeserializer","BootstrapServerMessageDeserializerArgs","BootstrapServerMessageSerializer","BootstrapSuccess","BootstrapTcpListener","BootstrapTime","Both","ClockError","DefaultConnector","DeserializeError","FinalStateError","GeneralError","GlobalBootstrapState","IPv4","IPv6","IncompatibleVersionError","InitListError","Interrupted","IoError","IpType","MassaConsensusError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","PoSError","ProtocolError","ReceivedError","SerializationError","SerializeError","SlotTooOld","TimeError","TimedOut","UnexpectedClientMessage","UnexpectedConnectionDrop","UnexpectedServerMessage","WhiteListed","bindings","block_id_set_deserializer","block_id_set_serializer","block_ids_step_deserializer","block_ids_step_serializer","bool_deserializer","bool_serializer","bootstrap_blacklist_path","bootstrap_list","bootstrap_protocol","bootstrap_timeout","bootstrap_whitelist_path","bootstrapable_graph_deserializer","bootstrapable_graph_serializer","borrow","borrow_mut","cache_duration","chain_id","chain_id","client","connect_timeout","consensus_bootstrap_part_size","datastore_key_deserializer","datastore_val_deserializer","deref","deref_mut","deserialize","drop","endorsement_count","endorsement_count","error","events","final_state","from","get_state","graph","id_deserializer","init","into","into_request","ip_list_max_size","keep_ledger","layout_raw","length_bootstrap_error","length_error_deserializer","listen_addr","listener","listener_stopper","main_handle","max_advertise_length","max_advertise_length","max_bootstrap_blocks_length","max_bootstrap_blocks_length","max_bootstrap_error_length","max_bootstrap_error_length","max_changes_slot_count","max_changes_slot_count","max_clock_delta","max_consensus_block_ids","max_credits_length","max_credits_length","max_datastore_entry_count","max_datastore_entry_count","max_datastore_key_length","max_datastore_key_length","max_datastore_value_length","max_datastore_value_length","max_denunciation_changes_length","max_denunciation_changes_length","max_denunciations_per_block_header","max_denunciations_per_block_header","max_executed_ops_length","max_executed_ops_length","max_final_state_elements_size","max_final_state_elements_size","max_function_name_length","max_ledger_changes_count","max_ledger_changes_count","max_listeners_per_peer","max_listeners_per_peer","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations_per_block","max_operations_per_block","max_ops_changes_length","max_ops_changes_length","max_parameters_size","max_ping","max_production_stats_length","max_production_stats_length","max_rolls_length","max_rolls_length","max_simultaneous_bootstraps","max_versioning_elements_size","max_versioning_elements_size","message_id_deserializer","messages","mip_store_stats_block_considered","mip_store_stats_block_considered","new","opt_last_slot_before_downtime_deserializer","opt_last_slot_before_downtime_serializer","opt_last_start_period_deserializer","opt_last_start_period_serializer","opt_vec_u8_deserializer","opt_vec_u8_serializer","peers","peers_deserializer","peers_serializer","per_ip_min_interval","periods_per_cycle","pointer_metadata","poll","randomness_size_bytes","rate_limit","read_error_timeout","read_timeout","retry_delay","server","server","settings","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","start_bootstrap_server","state_new_elements_length_deserializer","state_step_deserializer","state_step_serializer","stream_batch_updates_length_deserializer","thread_count","thread_count","time_deserializer","time_serializer","tools","try_from","try_into","type_id","u32_serializer","u32_serializer","u64_serializer","upcast_any_box","upcast_any_mut","upcast_any_ref","update_handle","update_stopper_tx","vec_u8_serializer","version_deserializer","version_serializer","versioning_part_new_elements_length_deserializer","vzip","white_black_list","white_black_list","write_error_timeout","write_timeout","error","last_consensus_step","last_slot","last_state_step","last_versioning_step","send_last_start_period","consensus_outdated_ids","consensus_part","error","last_slot_before_downtime","last_start_period","peers","server_time","slot","state_part","version","versioning_part","BindingReadExact","BindingWriteExact","client","read_exact_timeout","server","set_read_timeout","set_write_timeout","write_all_timeout","BootstrapClientBinder","KNOWN_PREFIX_LEN","ServerMessageLeader","borrow","borrow","borrow_mut","borrow_mut","cfg","decode_msg_leader","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","duplex","flush","flush","from","from","handshake","init","init","into","into","into_request","into_request","layout_raw","layout_raw","msg_len","new","next_timeout","pointer_metadata","pointer_metadata","prev_message","read","read_exact","remote_pubkey","send_timeout","set_read_timeout","set_write_timeout","sig","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","version_serializer","vzip","vzip","write","write_all","BootstrapServerBinder","ClientMessageLeader","KNOWN_PREFIX_LEN","borrow","borrow","borrow_mut","borrow_mut","close_and_send_error","decode_message_leader","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","duplex","flush","flush","from","from","handshake_timeout","init","init","into","into","into_request","into_request","layout_raw","layout_raw","local_keypair","max_consensus_block_ids","max_datastore_key_length","msg_len","new","next_timeout","pointer_metadata","pointer_metadata","prev_message","randomness_size_bytes","read","read_exact","received_prev_hash","send_error_timeout","send_msg","send_timeout","set_read_timeout","set_write_timeout","thread_count","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","version_deserializer","version_serializer","vzip","vzip","write","write_all","write_error_timeout","BSConnector","DefaultConnector","bootstrap_from_server","borrow","borrow_mut","connect_timeout","connect_timeout","connect_to_server","deref","deref_mut","deserialize","drop","filter_bootstrap_list","fmt","from","get_bootstrap_list_iter","get_state","init","into","into_request","layout_raw","pointer_metadata","send_client_message","stream_final_state_and_consensus","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","warn_user_about_versioning_updates","BlackListed","BootstrapError","ClockError","DeserializeError","FinalStateError","GeneralError","IncompatibleVersionError","InitListError","Interrupted","IoError","MassaConsensusError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","PoSError","ProtocolError","ReceivedError","SerializationError","SerializeError","TimeError","TimedOut","UnexpectedClientMessage","UnexpectedConnectionDrop","UnexpectedServerMessage","WhiteListed","as_error","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","init","into","into_request","layout_raw","pointer_metadata","source","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","BootstrapListenerStopHandle","BootstrapTcpListener","NEW_CONNECTION","NewConnections","PollEvent","STOP_LISTENER","Stop","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","create","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","events","from","from","from","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","poll","poll","server","stop","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","AskBootstrapPart","AskBootstrapPeers","AskBootstrapPeers","AskFinalStatePart","BootstrapClientMessage","BootstrapClientMessageDeserializer","BootstrapClientMessageSerializer","BootstrapError","BootstrapError","BootstrapError","BootstrapError","BootstrapFinished","BootstrapPart","BootstrapPeers","BootstrapServerMessage","BootstrapServerMessageDeserializer","BootstrapServerMessageSerializer","BootstrapSuccess","BootstrapSuccess","BootstrapTime","BootstrapTime","FinalStateFinished","FinalStatePart","MessageClientTypeId","MessageServerTypeId","Peers","SlotTooOld","SlotTooOld","__clone_box","__clone_box","block_id_set_deserializer","block_id_set_serializer","block_ids_step_deserializer","block_ids_step_serializer","bool_deserializer","bool_serializer","bootstrapable_graph_deserializer","bootstrapable_graph_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","datastore_key_deserializer","datastore_val_deserializer","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","id_deserializer","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_bootstrap_error","length_error_deserializer","message_id_deserializer","new","new","new","new","opt_last_slot_before_downtime_deserializer","opt_last_slot_before_downtime_serializer","opt_last_start_period_deserializer","opt_last_start_period_serializer","opt_vec_u8_deserializer","opt_vec_u8_serializer","peers_deserializer","peers_serializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialize","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","state_new_elements_length_deserializer","state_step_deserializer","state_step_serializer","stream_batch_updates_length_deserializer","time_deserializer","time_serializer","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_serializer","u32_serializer","u64_serializer","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vec_u8_serializer","version_deserializer","version_serializer","versioning_part_new_elements_length_deserializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","error","last_consensus_step","last_slot","last_state_step","last_versioning_step","send_last_start_period","consensus_outdated_ids","consensus_part","error","last_slot_before_downtime","last_start_period","peers","server_time","slot","state_part","version","versioning_part","BootstrapManager","BootstrapServer","bootstrap_config","borrow","borrow","borrow_mut","borrow_mut","consensus_controller","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","ev_poller","event_loop","final_state","from","from","greedy_client_check","init","init","into","into","into_request","into_request","ip_hist_map","keypair","layout_raw","layout_raw","listener_stopper","main_handle","manage_bootstrap","massa_metrics","new","pointer_metadata","pointer_metadata","protocol_controller","run_bootstrap_session","run_updater","start_bootstrap_server","step_timeout_duration","stop","stream_bootstrap_information","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_handle","update_stopper_tx","version","vzip","vzip","white_black_list","white_black_list","BootstrapClientConfig","BootstrapConfig","BootstrapServerMessageDeserializerArgs","BootstrapSrvBindCfg","Both","IPv4","IPv6","IpType","__clone_box","__clone_box","__clone_box","__clone_box","bootstrap_blacklist_path","bootstrap_list","bootstrap_protocol","bootstrap_timeout","bootstrap_whitelist_path","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cache_duration","chain_id","chain_id","chain_id","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","connect_timeout","consensus_bootstrap_part_size","consensus_bootstrap_part_size","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","endorsement_count","endorsement_count","endorsement_count","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","ip_list_max_size","keep_ledger","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","listen_addr","max_advertise_length","max_advertise_length","max_advertise_length","max_bootstrap_blocks_length","max_bootstrap_blocks_length","max_bootstrap_blocks_length","max_bootstrap_error_length","max_bootstrap_error_length","max_bootstrap_error_length","max_changes_slot_count","max_changes_slot_count","max_changes_slot_count","max_clock_delta","max_consensus_block_ids","max_credits_length","max_credits_length","max_credits_length","max_datastore_entry_count","max_datastore_entry_count","max_datastore_entry_count","max_datastore_key_length","max_datastore_key_length","max_datastore_key_length","max_datastore_key_length","max_datastore_value_length","max_datastore_value_length","max_datastore_value_length","max_denunciation_changes_length","max_denunciation_changes_length","max_denunciation_changes_length","max_denunciations_per_block_header","max_denunciations_per_block_header","max_denunciations_per_block_header","max_executed_ops_length","max_executed_ops_length","max_executed_ops_length","max_final_state_elements_size","max_final_state_elements_size","max_final_state_elements_size","max_function_name_length","max_ledger_changes_count","max_ledger_changes_count","max_ledger_changes_count","max_listeners_per_peer","max_listeners_per_peer","max_listeners_per_peer","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations_per_block","max_operations_per_block","max_operations_per_block","max_ops_changes_length","max_ops_changes_length","max_ops_changes_length","max_parameters_size","max_ping","max_production_stats_length","max_production_stats_length","max_production_stats_length","max_rolls_length","max_rolls_length","max_rolls_length","max_simultaneous_bootstraps","max_versioning_elements_size","max_versioning_elements_size","max_versioning_elements_size","mip_store_stats_block_considered","mip_store_stats_block_considered","mip_store_stats_block_considered","per_ip_min_interval","periods_per_cycle","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","randomness_size_bytes","randomness_size_bytes","randomness_size_bytes","rate_limit","rate_limit","rate_limit","read_error_timeout","read_timeout","retry_delay","thread_count","thread_count","thread_count","thread_count","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","write_error_timeout","write_error_timeout","write_timeout","mio_stream_to_std","to_canonical","SharedWhiteBlackList","WhiteBlackListInner","__clone_box","add_ips_to_blacklist","add_ips_to_whitelist","black_list","black_path","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fmt","fmt","from","from","from_ref","get_black_list","get_white_list","init","init","init_list","inner","into","into","into_request","into_request","is_ip_allowed","layout_raw","layout_raw","load_list","new","pointer_metadata","pointer_metadata","remove_ips_from_blacklist","remove_ips_from_whitelist","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update","update_list","vzip","vzip","white_list","white_path","write_to_file"],"q":[[0,"massa_bootstrap"],[208,"massa_bootstrap::BootstrapClientMessage"],[214,"massa_bootstrap::BootstrapServerMessage"],[225,"massa_bootstrap::bindings"],[233,"massa_bootstrap::bindings::client"],[294,"massa_bootstrap::bindings::server"],[363,"massa_bootstrap::client"],[395,"massa_bootstrap::error"],[455,"massa_bootstrap::listener"],[525,"massa_bootstrap::messages"],[789,"massa_bootstrap::messages::BootstrapClientMessage"],[795,"massa_bootstrap::messages::BootstrapServerMessage"],[806,"massa_bootstrap::server"],[871,"massa_bootstrap::settings"],[1116,"massa_bootstrap::tools"],[1118,"massa_bootstrap::white_black_list"],[1185,"rkyv::with"],[1186,"core::result"],[1187,"massa_final_state::controller_trait"],[1188,"parking_lot::rwlock"],[1189,"alloc::sync"],[1190,"massa_models::version"],[1191,"massa_time"],[1192,"core::option"],[1193,"std::sync::mutex"],[1194,"std::sync::condvar"],[1195,"massa_metrics"],[1196,"tonic::request"],[1197,"core::alloc::layout"],[1198,"massa_consensus_exports::controller_trait"],[1199,"alloc::boxed"],[1200,"massa_protocol_exports::controller_trait"],[1201,"massa_signature::signature_impl"],[1202,"core::any"],[1203,"std::time"],[1204,"std::io::error"],[1205,"core::time"],[1206,"std::net::tcp"],[1207,"alloc::string"],[1208,"core::net::socket_addr"],[1209,"core::ops::function"],[1210,"core::marker"],[1211,"massa_models::node"],[1212,"alloc::vec"],[1213,"core::fmt"],[1214,"massa_versioning::versioning"],[1215,"alloc::collections::btree::map"],[1216,"core::error"],[1217,"massa_models::error"],[1218,"massa_protocol_exports::error"],[1219,"massa_signature::error"],[1220,"massa_time::error"],[1221,"massa_hash::error"],[1222,"massa_consensus_exports::error"],[1223,"massa_final_state::error"],[1224,"massa_pos_exports::error"],[1225,"massa_serialization"],[1226,"dyn_clone::sealed"],[1227,"nom::internal"],[1228,"nom::error"],[1229,"num_enum"],[1230,"core::net::ip_addr"],[1231,"std::collections::hash::map"],[1232,"std::thread"],[1233,"crossbeam_channel::channel"],[1234,"massa_models::slot"],[1235,"massa_models::streaming_step"],[1236,"massa_models::block_id"],[1237,"massa_models::prehash"],[1238,"serde::de"],[1239,"mio::net::tcp::stream"],[1240,"std::collections::hash::set"],[1241,"std::path"]],"i":[49,49,21,0,0,0,0,0,48,49,48,0,48,48,0,0,0,0,49,0,48,61,21,0,21,21,21,0,61,61,21,21,21,21,0,21,21,21,21,21,21,21,21,21,21,48,21,21,21,21,21,21,0,82,80,86,81,86,81,7,7,7,7,7,82,80,20,20,7,7,89,0,7,7,82,82,20,20,20,20,7,89,0,26,20,20,0,20,86,20,20,20,7,7,20,82,86,7,0,32,32,7,89,7,89,7,89,7,89,7,7,7,89,7,89,7,89,7,89,7,89,7,89,7,89,7,89,7,7,89,7,89,7,7,7,7,89,7,89,7,7,7,89,7,89,7,7,89,82,0,7,89,20,82,80,82,80,82,80,20,82,80,7,7,20,26,7,7,7,7,7,0,26,0,82,86,80,81,0,82,86,81,82,7,89,82,80,0,20,20,20,80,81,80,20,20,20,32,32,80,82,80,82,20,0,32,7,7,109,110,110,110,110,110,111,111,112,111,111,113,114,111,111,114,111,0,0,0,35,0,35,41,41,0,0,0,42,44,42,44,42,42,42,44,42,44,42,44,42,44,42,42,42,42,44,42,42,44,42,44,42,44,42,44,44,42,42,42,44,42,42,42,42,42,42,42,44,42,44,42,44,42,44,42,44,42,44,42,44,42,42,44,42,42,0,0,0,55,50,55,50,50,50,55,50,55,50,55,50,55,50,50,50,50,55,50,50,55,50,55,50,55,50,55,50,50,50,50,55,50,50,55,50,50,50,50,50,55,50,50,50,50,50,50,55,50,55,50,55,50,55,50,55,50,55,50,50,50,55,50,50,50,50,0,0,0,58,58,22,58,0,58,58,58,58,0,58,58,0,0,58,58,58,58,58,0,0,58,58,58,58,58,58,58,0,21,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,0,78,0,0,78,26,27,78,26,27,78,26,26,27,78,26,27,78,26,27,78,26,27,78,26,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,26,26,27,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,49,49,88,88,0,0,0,48,87,49,88,48,48,48,0,0,0,49,88,48,87,87,87,0,0,87,48,87,48,49,82,80,86,81,86,81,82,80,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,48,49,48,49,48,49,82,82,80,81,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,82,81,86,86,48,87,49,88,80,82,81,86,48,87,49,88,87,88,87,87,87,87,87,87,88,88,88,88,88,88,48,87,49,88,80,82,81,86,48,87,49,88,48,49,86,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,82,86,82,80,82,81,86,82,80,82,80,82,80,82,80,80,82,81,86,48,87,49,88,80,81,82,86,80,81,82,86,81,82,82,80,48,49,48,80,82,81,86,48,87,87,49,88,88,87,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,81,80,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,80,82,80,82,81,86,48,87,49,88,109,110,110,110,110,110,111,111,112,111,111,113,114,111,111,114,111,0,0,92,32,92,32,92,92,32,92,32,92,32,92,32,92,92,92,92,32,92,92,32,92,32,92,32,92,92,92,32,92,32,32,0,92,32,32,92,92,0,92,0,0,32,0,32,92,32,92,32,92,32,92,32,92,32,92,32,32,92,32,92,32,92,0,0,0,0,61,61,61,0,61,7,57,47,7,7,7,7,7,61,7,57,47,89,61,7,57,47,89,7,7,47,89,61,7,57,47,61,7,57,47,61,61,7,57,47,7,7,57,61,7,57,47,89,61,7,57,47,89,61,61,7,7,57,57,47,47,89,61,7,57,47,89,7,47,89,61,7,57,47,61,7,57,57,47,47,89,89,61,7,57,47,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,7,7,61,7,57,47,89,7,7,47,89,7,47,89,7,47,89,7,47,89,7,7,7,47,89,7,47,89,7,57,47,89,7,47,89,7,47,89,7,47,89,7,47,89,7,47,89,7,7,47,89,7,47,89,7,7,7,7,47,89,7,47,89,7,7,7,47,89,7,47,89,7,7,47,89,7,47,89,7,7,61,7,57,47,89,7,57,47,7,57,47,7,7,7,7,57,47,89,61,7,57,47,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,7,57,7,0,0,0,0,97,97,97,105,97,97,105,97,105,97,97,97,105,97,105,97,105,97,105,97,105,97,105,97,105,97,97,97,97,105,105,97,97,105,97,105,97,97,105,105,97,97,105,97,97,97,97,105,97,105,97,105,97,105,97,105,97,105,97,105,97,105,105,97,97],"f":"``````````````````````````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}````````{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}`````{cc{}}{{{b{n}}{Ad{{Ab{A`}}}}cAfAh{Aj{Ah}}{Aj{Al}}{Ad{{Bd{{B`{An}}Bb}}}}Bf}{{j{BhBj}}}Bl}``{{}f}{ce{}{}}{c{{Bn{e}}}{}{}}``{{}{{j{C`Cb}}}}`````````````````````````````````````````````````````````{{{Ad{{Ab{A`}}}}}Bh}```````````{b}`````````````{{CdCf{Cj{Ch}}{Cj{Cl}}{Ad{{Ab{A`}}}}nCnAfBf}{{j{D`Bj}}}}`````````{c{{j{e}}}{}{}}0{{{b{c}}}Db{}}```{{{Cj{c}}}{{Cj{Dd}}}{}}{{{b{dc}}}{{b{dDd}}}{}}{{{b{c}}}{{b{Dd}}}{}}``````:````````````````````````{{{b{dDf}}{b{d{Dj{Dh}}}}{Aj{Dl}}}{{j{l{Bd{Dnf}}}}}}`{{{b{dDf}}{Aj{E`}}}{{j{lDn}}}}{{{b{dEb}}{Aj{E`}}}{{j{lDn}}}}{{{b{dEb}}{b{{Dj{Dh}}}}{Aj{Dl}}}{{j{l{Bd{Dnf}}}}}}```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0`{{{b{Ed}}{b{{Ef{Dh}}}}}{{j{EhBj}}}}{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0`{{{b{dEd}}}{{j{lDn}}}}{{{b{dc}}}{{j{l}}}{}}{cc{}}0{{{b{dEd}}Af}{{j{lBj}}}}{{}f}0{ce{}{}}0{c{{Bn{e}}}{}{}}0{{}{{j{C`Cb}}}}0`{{EjElEn{Aj{Al}}}Ed}{{{b{dEd}}{Aj{E`}}}{{j{F`Bj}}}}{b}0`{{{b{dEd}}{b{d{Dj{Dh}}}}}{{j{fDn}}}}{{{b{dc}}{b{d{Dj{Dh}}}}}{{j{l}}}{}}`{{{b{dEd}}{b{Fb}}{Aj{E`}}}{{j{lBj}}}}{{{b{dEd}}{Aj{E`}}}{{j{lDn}}}}0`{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0`>>{{{b{dEd}}{b{{Dj{Dh}}}}}{{j{fDn}}}}{{{b{dc}}{b{{Dj{Dh}}}}}{{j{l}}}{}}```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{FdFfFhc}l{FjFl}}{{{b{Fd}}{b{{Dj{Dh}}}}}{{j{FnBj}}}}{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0`{{{b{dFd}}}{{G`{l}}}}{{{b{dc}}}{{j{l}}}{}}{cc{}}0{{{b{dFd}}Af{Aj{E`}}}{{j{lBj}}}}{{}f}0{ce{}{}}0{c{{Bn{e}}}{}{}}0{{}{{j{C`Cb}}}}0````{{EjCnGb{Aj{Al}}}Fd}{{{b{dFd}}{Aj{E`}}}{{j{FbBj}}}}{b}0``{{{b{dFd}}{b{d{Dj{Dh}}}}}{{G`{f}}}}{{{b{dc}}{b{d{Dj{Dh}}}}}{{j{l}}}{}}`{{{b{dFd}}Ff}{{j{lBj}}}}{{{b{dFd}}E`F`}{{j{lBj}}}}{{{b{dFd}}F`{Aj{E`}}}{{j{lBj}}}}{{{b{dFd}}{Aj{E`}}}{{j{lDn}}}}0`{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0``{ce{}{}}0{{{b{dFd}}{b{{Dj{Dh}}}}}{{G`{f}}}}{{{b{dc}}{b{{Dj{Dh}}}}}{{j{l}}}{}}```{{{b{n}}{b{dEd}}{b{dFb}}{b{dBh}}Af}{{j{lBj}}}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bl}}Fh{Aj{Ah}}}{{G`{Ej}}}}{{{b{Gd}}Fh{Aj{Ah}}}{{G`{Ej}}}}{{{b{dc}}{b{n}}{b{Fh}}{b{El}}{Aj{Al}}}{{j{EdBj}}}Bl}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{{{Gh{{Bd{FhGf}}}}Gj}{{Gh{{Bd{FhGf}}}}}}{{{b{Gd}}{b{dGl}}}Gn}{cc{}}{{{b{n}}}{{j{{Gh{{Bd{FhGf}}}}Bj}}}}{{{b{n}}{Ad{{Ab{A`}}}}cAfAh{Aj{Ah}}{Aj{Al}}{Ad{{Bd{{B`{An}}Bb}}}}Bf}{{j{BhBj}}}Bl}{{}f}{ce{}{}}{c{{Bn{e}}}{}{}}{{}{{j{C`Cb}}}}{b}{{{b{Fb}}{b{dEd}}E`E`{b{H`}}}{{j{F`Bj}}}}{{{b{n}}{b{dEd}}{b{dFb}}{b{dBh}}}{{j{lBj}}}}{c{{j{e}}}{}{}}0{{{b{c}}}Db{}}{{{Cj{c}}}{{Cj{Dd}}}{}}{{{b{dc}}}{{b{dDd}}}{}}{{{b{c}}}{{b{Dd}}}{}}:{{{Gh{Hb}}{Hf{HbHd}}}l}``````````````````````````{{{b{c}}}{{b{Hh}}}{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{{{b{Bj}}{b{dGl}}}Gn}0{HjBj}{HlBj}{cc{}}{DnBj}{HnBj}{I`Bj}{IbBj}{IdBj}{IfBj}{IhBj}{IjBj}{{}f}{ce{}{}}{c{{Bn{e}}}{}{}}{{}{{j{C`Cb}}}}{b}{{{b{Bj}}}{{Aj{{b{Hh}}}}}}{{{b{c}}}Ff{}}{c{{j{e}}}{}{}}0{{{b{c}}}Db{}}{{{Cj{c}}}{{Cj{Dd}}}{}}{{{b{dc}}}{{b{dDd}}}{}}{{{b{c}}}{{b{Dd}}}{}}:```````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Fh}}}{{j{{Bd{CfCd}}Bj}}}}{f{{b{c}}}{}}00{f{{b{dc}}}{}}00{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}00{fl}00`{cc{}}00{{}f}00{ce{}{}}00{c{{Bn{e}}}{}{}}00{{}{{j{C`Cb}}}}00{b}00{{{b{dCd}}}{{j{IlBj}}}}``{{{b{Cf}}}{{j{lBj}}}}{c{{j{e}}}{}{}}00000{{{b{c}}}Db{}}00{{{Cj{c}}}{{Cj{Dd}}}{}}00{{{b{dc}}}{{b{dDd}}}{}}00{{{b{c}}}{{b{Dd}}}{}}00:::````````````````````````````{{{b{c}}In}l{}}0````````{{{b{c}}}{{b{e}}}{}{}}0000000{{{b{dc}}}{{b{de}}}{}{}}0000000{{{b{F`}}}F`}{{{b{Fb}}}Fb}{{{b{c}}{b{de}}}l{}{}}0{{{b{c}}}l{}}0``{{}J`}{{}Jb}{f{{b{c}}}{}}0000000{f{{b{dc}}}{}}0000000{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{{{b{Jd}}{b{{Dj{Dh}}}}}{{Jf{{b{{Dj{Dh}}}}F`c}}}{{Jh{{b{{Dj{Dh}}}}}}{Jj{{b{{Dj{Dh}}}}}}}}11{{{b{Jl}}{b{{Dj{Dh}}}}}{{Jf{{b{{Dj{Dh}}}}Fbc}}}{{Jh{{b{{Dj{Dh}}}}}}{Jj{{b{{Dj{Dh}}}}}}}}22222{fl}0000000{{{b{Jn}}{b{Jn}}}An}{{{b{K`}}{b{K`}}}An}{{{b{c}}{b{e}}}An{}{}}00000000000{{{b{F`}}{b{dGl}}}Gn}{{{b{Jn}}{b{dGl}}}Gn}{{{b{Fb}}{b{dGl}}}Gn}{{{b{K`}}{b{dGl}}}Gn}{cc{}}0000000{{{b{c}}}c{}}0`{{}f}0000000{ce{}{}}0000000{c{{Bn{e}}}{}{}}0000000{{}{{j{C`Cb}}}}0000000```{{}J`}{KbJd}{{}Jb}{{DhDhAl}Jl}````````{b}0000000{{{b{J`}}{b{F`}}{b{d{Gh{Dh}}}}}{{j{lIj}}}}{{{b{Jb}}{b{Fb}}{b{d{Gh{Dh}}}}}{{j{lIj}}}}``````````{{{b{c}}}e{}{}}0{{{b{F`}}}Ff}{c{{j{e}}}{}{}}0000{Kd{{j{Jn{Kf{Jn}}}}}}11{Kd{{j{K`{Kf{K`}}}}}}2{c{{j{Jn{Kf{Jn}}}}}{}}{c{{j{K`{Kf{K`}}}}}{}}44444444{{{b{c}}}Db{}}0000000```{{{Cj{c}}}{{Cj{Dd}}}{}}0000000{{{b{dc}}}{{b{dDd}}}{}}0000000{{{b{c}}}{{b{Dd}}}{}}0000000````{ce{}{}}0000000````````````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0`{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0`{{Khf}{{j{lBj}}}}`{cc{}}0{{{b{d{Kl{KjDl}}}}FhDlE`}{{j{lE`}}}}{{}f}0::{c{{Bn{e}}}{}{}}0``{{}{{j{C`Cb}}}}0``{{{b{n}}{b{dFd}}{Ad{{Ab{A`}}}}Af{Cj{Ch}}{Cj{Cl}}Dl}{{j{lBj}}}}`{{{Kn{{j{lBj}}}}{Kn{{j{lBj}}}}{L`{l}}CfLb}D`}{b}0`{{Fd{Ad{l}}nFh{Ad{{Ab{A`}}}}Af{Cj{Ch}}{Cj{Cl}}Bf}l}{{LbE`{Ld{l}}}{{j{lBj}}}}{{CdCf{Cj{Ch}}{Cj{Cl}}{Ad{{Ab{A`}}}}nCnAfBf}{{j{D`Bj}}}}{{{b{Dl}}{b{E`}}}{{Aj{E`}}}}{D`{{j{lBj}}}}{{{b{dFd}}{Ad{{Ab{A`}}}}{Cj{Ch}}{Aj{Lf}}{Lh{{Gh{Dh}}}}{Lh{{Gh{Dh}}}}{Lh{{Ll{Lj}}}}An{b{Dl}}E`}{{j{lBj}}}}{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0```{ce{}{}}0``````````{{{b{c}}In}l{}}000`````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000````{{{b{Gj}}}Gj}{{{b{n}}}n}{{{b{Gb}}}Gb}{{{b{En}}}En}{{{b{c}}{b{de}}}l{}{}}000{{{b{c}}}l{}}0000```{f{{b{c}}}{}}0000{f{{b{dc}}}{}}0000{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{c{{j{Gj}}}Ln}1{c{{j{n}}}Ln}2{c{{j{Gb}}}Ln}3{c{{j{En}}}Ln}4{fl}0000```{{{b{Gj}}{b{dGl}}}Gn}{{{b{n}}{b{dGl}}}Gn}{{{b{Gb}}{b{dGl}}}Gn}{{{b{En}}{b{dGl}}}Gn}{cc{}}0{{{b{n}}}Gb}1{{{b{n}}}En}22{{{b{En}}}Kb}{{{b{c}}}c{}}000{{}f}0000{ce{}{}}0000{c{{Bn{e}}}{}{}}0000``{{}{{j{C`Cb}}}}0000`````````````````````````````````````````````````````````````````````````{b}0000`````````````{{{b{c}}}e{}{}}000{c{{j{e}}}{}{}}000000000{{{b{c}}}Db{}}0000{{{Cj{c}}}{{Cj{Dd}}}{}}0000{{{b{dc}}}{{b{dDd}}}{}}0000{{{b{c}}}{{b{Dd}}}{}}000099999```{M`Ej}{KjKj}``{{{b{c}}In}l{}}{{{b{Lb}}{Gh{Kj}}}{{j{lBj}}}}0``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Lb}}}Lb}{{{b{c}}{b{de}}}l{}{}}{{{b{c}}}l{}}{{}Mb}{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0{{{b{Lb}}{b{dGl}}}Gn}{{{b{Mb}}{b{dGl}}}Gn}{cc{}}0{{{b{c}}}c{}}{{{b{Lb}}}{{Aj{{Md{Kj}}}}}}0{{}f}0{{{b{Mf}}{b{Mf}}}{{j{{Bd{{Aj{{Md{Kj}}}}{Aj{{Md{Kj}}}}}}Bj}}}}`{ce{}{}}0{c{{Bn{e}}}{}{}}0{{{b{Lb}}{b{Fh}}}{{j{lBj}}}}{{}{{j{C`Cb}}}}0{{{b{Mf}}An}{{j{{Aj{{Md{Kj}}}}Bj}}}}{{MhMh}{{j{LbBj}}}}{b}0{{{b{Lb}}{Gh{Kj}}}{{j{lBj}}}}0{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0{{{b{dLb}}}{{j{lBj}}}}?>>``{{{b{Lb}}{b{Mf}}{b{{Md{Kj}}}}}{{j{lBj}}}}","D":"BLj","p":[[1,"reference"],[0,"mut"],[1,"usize"],[5,"With",1185],[6,"Result",1186],[1,"unit"],[5,"BootstrapConfig",871],[10,"FinalStateController",1187],[8,"RwLock",1188],[5,"Arc",1189],[5,"Version",1190],[5,"MassaTime",1191],[6,"Option",1192],[1,"u64"],[1,"bool"],[5,"Mutex",1193],[5,"Condvar",1194],[1,"tuple"],[5,"MassaMetrics",1195],[5,"GlobalBootstrapState",0],[6,"BootstrapError",395],[10,"BSConnector",363],[5,"Request",1196],[5,"Layout",1197],[5,"LayoutError",1197],[5,"BootstrapTcpListener",455],[5,"BootstrapListenerStopHandle",455],[10,"ConsensusController",1198],[5,"Box",1199],[10,"ProtocolController",1200],[6,"KeyPair",1201],[5,"BootstrapManager",806],[5,"TypeId",1202],[10,"Any",1202],[10,"BindingReadExact",225],[1,"u8"],[1,"slice"],[5,"Instant",1203],[5,"Error",1204],[5,"Duration",1205],[10,"BindingWriteExact",225],[5,"BootstrapClientBinder",233],[1,"array"],[5,"ServerMessageLeader",233],[5,"TcpStream",1206],[6,"PublicKey",1201],[5,"BootstrapClientConfig",871],[6,"BootstrapServerMessage",525],[6,"BootstrapClientMessage",525],[5,"BootstrapServerBinder",294],[5,"String",1207],[6,"SocketAddr",1208],[10,"FnOnce",1209],[10,"Send",1210],[5,"ClientMessageLeader",294],[8,"Result",1204],[5,"BootstrapSrvBindCfg",871],[5,"DefaultConnector",363],[5,"NodeId",1211],[5,"Vec",1212],[6,"IpType",871],[5,"Formatter",1213],[8,"Result",1213],[1,"str"],[5,"MipInfo",1214],[5,"MipState",1214],[5,"BTreeMap",1215],[10,"Error",1216],[6,"ModelsError",1217],[6,"ProtocolError",1218],[6,"MassaSignatureError",1219],[6,"TimeError",1220],[6,"MassaHashError",1221],[6,"ConsensusError",1222],[6,"FinalStateError",1223],[6,"PosError",1224],[6,"SerializeError",1225],[6,"PollEvent",455],[5,"Private",1226],[5,"BootstrapServerMessageSerializer",525],[5,"BootstrapClientMessageSerializer",525],[5,"BootstrapServerMessageDeserializer",525],[8,"IResult",1227],[10,"ParseError",1228],[10,"ContextError",1228],[5,"BootstrapClientMessageDeserializer",525],[6,"MessageServerTypeId",525],[6,"MessageClientTypeId",525],[5,"BootstrapServerMessageDeserializerArgs",871],[1,"u32"],[5,"TryFromPrimitiveError",1229],[5,"BootstrapServer",806],[6,"IpAddr",1230],[5,"HashMap",1231],[5,"JoinHandle",1232],[5,"Sender",1233],[5,"SharedWhiteBlackList",1118],[5,"Receiver",1233],[5,"Slot",1234],[6,"StreamingStep",1235],[6,"BlockId",1236],[8,"PreHashSet",1237],[10,"Deserializer",1238],[5,"TcpStream",1239],[5,"WhiteBlackListInner",1118],[5,"HashSet",1240],[5,"Path",1241],[5,"PathBuf",1241],[15,"BootstrapError",789],[15,"AskBootstrapPart",789],[15,"BootstrapPart",795],[15,"BootstrapError",795],[15,"BootstrapPeers",795],[15,"BootstrapTime",795]],"r":[[3,525],[4,525],[5,525],[6,871],[7,395],[11,806],[14,525],[15,525],[16,871],[17,525],[19,455],[23,363],[34,871],[86,363],[178,806]],"b":[[428,"impl-Display-for-BootstrapError"],[429,"impl-Debug-for-BootstrapError"],[430,"impl-From%3CModelsError%3E-for-BootstrapError"],[431,"impl-From%3CProtocolError%3E-for-BootstrapError"],[433,"impl-From%3CError%3E-for-BootstrapError"],[434,"impl-From%3CMassaSignatureError%3E-for-BootstrapError"],[435,"impl-From%3CTimeError%3E-for-BootstrapError"],[436,"impl-From%3CMassaHashError%3E-for-BootstrapError"],[437,"impl-From%3CConsensusError%3E-for-BootstrapError"],[438,"impl-From%3CFinalStateError%3E-for-BootstrapError"],[439,"impl-From%3CPosError%3E-for-BootstrapError"],[440,"impl-From%3CSerializeError%3E-for-BootstrapError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADwDgAA1AAYAQQADAEcAAQBLAAUAUgACAFkAAQBcAAAAXwACAGMAAgBnAAAAaQAAAGsAAABtAAAAcQAAAHMAAAB1AAAAdwAAAHkAAAB7AAAAfQAAAH8AAACCAAAAhAAAAIkAAACLAAAAjwAAAJEAAACUAAIAmAAHAKEAAQClAAEArQAFALQAAwC5ABMA4gACAOYAAADpAAAA6wAAAO0ABADzAAoAAQEBAAUBBAAMAQUAEwETACkBBAAwAQoAPgEBAEIBBwBMAQgAVgEVAG8BAQBzAQYAewEAAH0BAAB/AQMAhAEHAKYBCgCyAQgAvAEMAMoBCgDWAQwA5gECAOwBCAD2AQEA+QEUABACAQAWAgAAGAIAACACAAAiAgUAKQI1AGACAQBjAh4AigIKAJ0CEgC0Ag8AxgJPACgDEQA9AwEAQQMJAEwDAgBQAwAAUgMAAFQDEQBnAwAAcAMDAHkDCQCFAw4AlgMYALADBQC4AwAAugMAAL0DCQDMAwQA0wMEANoDAQDdAwEA4AMBAOMDAQDoAwEA6wMBAO4DAgDyAwEA9QMBAPgDAQD7AwEA/gMBAAIEAQAFBAEACwQBAA4EAQATBAEAFgQBABoEAQAdBAEAIQQEACcEAQAqBAEAMAQpAFsEAABeBAAAYAQBAGQEEwB6BAAAfQQDAIMECACOBAwAnAQEAA=="}],\ -["massa_channel",{"t":"FNNNNNNNNNNNNCCNNNNFONNNNNNNNNNNNNNOOONNNONNNNNNNFONNNNNNNNNNNNNONNNONNNNN","n":["MassaChannel","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","drop","from","init","into","new","receiver","sender","to_owned","try_from","try_into","type_id","MassaReceiver","actual_len","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref","deref_mut","deref_mut","drop","drop","from","init","into","name","received","receiver","recv","recv_deadline","recv_timeout","ref_counter","to_owned","try_from","try_into","try_recv","type_id","unregister_metrics","update_metrics","MassaSender","actual_len","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref","deref_mut","drop","fmt","from","init","into","name","send","send_deadline","send_timeout","sender","to_owned","try_from","try_into","try_send","type_id"],"q":[[0,"massa_channel"],[19,"massa_channel::receiver"],[49,"massa_channel::sender"],[74,"alloc::string"],[75,"core::option"],[76,"core::result"],[77,"core::any"],[78,"core::clone"],[79,"crossbeam_channel::err"],[80,"std::time"],[81,"core::time"],[82,"core::fmt"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,3,3,3,3,0,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{j{{b{c}}}{}}{j{{b{dc}}}{}}{jh}{cc{}}{{}j}{ce{}{}}{{l{n{j}}}{{Ad{{A`{c}}{Ab{c}}}}}{}}``{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{c}}}Ah{}}``>={{{b{{Ab{c}}}}}{{Ab{c}}}Aj}<;{{{b{{Ab{c}}}}}{{b{e}}}{}{}};{{{b{d{Ab{c}}}}}{{b{de}}}{}{}};{{{b{d{Ab{c}}}}}h{}};:98```{{{b{{Ab{c}}}}}{{Af{cAl}}}{}}{{{b{{Ab{c}}}}An}{{Af{cB`}}}{}}{{{b{{Ab{c}}}}Bb}{{Af{cB`}}}{}}`988{{{b{{Ab{c}}}}}{{Af{cBd}}}{}}8{{{b{{Ab{c}}}}}h{}}0``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{{A`{c}}}}}{{A`{c}}}Aj}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{j{{b{c}}}{}}{{{b{{A`{c}}}}}{{b{e}}}{}{}}{j{{b{dc}}}{}}{jh}{{{b{{A`{c}}}}{b{dBf}}}BhBj}{cc{}}{{}j}{ce{}{}}`{{{b{{A`{c}}}}c}{{Af{h{Bl{c}}}}}{}}{{{b{{A`{c}}}}cAn}{{Af{h{Bn{c}}}}}{}}{{{b{{A`{c}}}}cBb}{{Af{h{Bn{c}}}}}{}}`{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{{A`{c}}}}c}{{Af{h{C`{c}}}}}{}}{{{b{c}}}Ah{}}","D":"An","p":[[1,"reference"],[0,"mut"],[5,"MassaChannel",0],[1,"unit"],[1,"usize"],[5,"String",74],[6,"Option",75],[5,"MassaSender",49],[5,"MassaReceiver",19],[1,"tuple"],[6,"Result",76],[5,"TypeId",77],[10,"Clone",78],[5,"RecvError",79],[5,"Instant",80],[6,"RecvTimeoutError",79],[5,"Duration",81],[6,"TryRecvError",79],[5,"Formatter",82],[8,"Result",82],[10,"Debug",82],[5,"SendError",79],[6,"SendTimeoutError",79],[6,"TrySendError",79]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADsADgABAAgACwAAAA0ABwAWAAoAIgAAACQAAAAmAAMAKwACAC8AAAAyAAAANAAJAD8AAABBAAAAQwAHAA=="}],\ -["massa_cipher",{"t":"FGPPIPCCHCHOCOOCSSSHFNNHONNOONNNNGPPPNNNNNNNNNNNNN","n":["CipherData","CipherError","DecryptionError","EncryptionError","Salt","Utf8Error","constants","decrypt","decrypt","encrypt","encrypt","encrypted_bytes","error","nonce","salt","tests","HASH_PARAMS","NONCE_SIZE","SALT_SIZE","decrypt","CipherData","borrow","borrow_mut","encrypt","encrypted_bytes","from","into","nonce","salt","try_from","try_into","type_id","vzip","CipherError","DecryptionError","EncryptionError","Utf8Error","borrow","borrow_mut","fmt","fmt","from","from","into","source","to_string","try_from","try_into","type_id","vzip"],"q":[[0,"massa_cipher"],[16,"massa_cipher::constants"],[19,"massa_cipher::decrypt"],[20,"massa_cipher::encrypt"],[33,"massa_cipher::error"],[50,"alloc::vec"],[51,"core::result"],[52,"core::any"],[53,"core::fmt"],[54,"core::str::error"],[55,"core::error"],[56,"core::option"],[57,"alloc::string"]],"i":[0,0,6,6,0,6,0,0,0,0,0,3,0,3,3,0,0,0,0,0,0,3,3,0,3,3,3,3,3,3,3,3,3,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"````````{{{d{b}}f}{{n{{j{h}}l}}}}`{{{d{b}}{d{{A`{h}}}}}{{n{fl}}}}````````1`{{{d{c}}}{{d{e}}}{}{}}{{{d{Abc}}}{{d{Abe}}}{}{}}2`{cc{}}{ce{}{}}``{c{{n{e}}}{}{}}0{{{d{c}}}Ad{}}2````54{{{d{l}}{d{AbAf}}}Ah}0{Ajl}54{{{d{l}}}{{An{{d{Al}}}}}}{{{d{c}}}B`{}}5546","D":"C`","p":[[1,"str"],[1,"reference"],[5,"CipherData",20],[1,"u8"],[5,"Vec",50],[6,"CipherError",33],[6,"Result",51],[1,"slice"],[0,"mut"],[5,"TypeId",52],[5,"Formatter",53],[8,"Result",53],[5,"Utf8Error",54],[10,"Error",55],[6,"Option",56],[5,"String",57]],"r":[[0,20],[1,33],[8,19],[10,20]],"b":[[39,"impl-Display-for-CipherError"],[40,"impl-Debug-for-CipherError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABoACQABAAAABQAAAAwAAAAOAAIAFQACABkAAAAcAAUAJgAEAC0ABQA="}],\ -["massa_client",{"t":"FFHNNNNNNOQCNONCNONNNNNQOONNNNOOHQOOOOCQHNCNNNNNNNNNNOPPGFFFGFPOOONNNNNNNNNNNNPPNNNNNNNNNNNNNNNNPPNNNNNNNNNNNNNNNNNNNNNNNPPPNNPHPNPNPNHNPOONNNNNNNNNNNNNNNNNONNOONNNNNPPPPPPPPPPPNNHHNPPNPHPNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPPPKPPPPPGPPPNNNNNMNNNNNNFFNNNNNNOONNHNNNNNHNNNNNNNNNONNFFFFFONNNNNNNNNNOOONNNNNNNNNNNNONNNNNONNNNNNNNNNNNNOOOOOOONNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNN","n":["Args","JsonError","ask_password","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","chain_id","client_warning","cmds","command","command","command_for_update","display","erased_serialize","error","from","from","from_arg_matches","from_arg_matches_mut","group_id","grpc_error","grpc_private_port","grpc_public_port","into","into","into_request","into_request","ip","json","main","massa_fancy_ascii_art_logo","parameters","password","private_port","public_port","repl","rpc_error","run","serialize","settings","try_from","try_from","try_into","try_into","type_id","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","wallet","Add","AllowAll","Command","CommandIter","ExtendedWallet","ExtendedWalletEntry","ListOperation","ListOperationIter","Remove","address_info","back_idx","back_idx","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buy_rolls","call_smart_contract","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","eq","equivalent","equivalent","equivalent","equivalent","erased_serialize","erased_serialize","execute_smart_contract","exit","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_str","from_str","get","get","get_addresses","get_blocks","get_datastore_entry","get_detailed_message","get_documentation","get_endorsements","get_file_as_byte_vec","get_filtered_sc_output_event","get_message","get_operations","get_serializations","get_status","get_str","help","help","help","idx","idx","into","into","into","into","into","into","into_iter","into_iter","into_request","into_request","into_request","into_request","into_request","into_request","is_pwd_needed","iter","iter","keypair","len","len","marker","marker","new","next","next","next_back","next_back","node_ban_by_id","node_ban_by_ip","node_bootstrap_blacklist","node_bootstrap_whitelist","node_get_staking_addresses","node_peers_whitelist","node_start_staking","node_stop","node_stop_staking","node_unban_by_id","node_unban_by_ip","nth","nth","parse_key_value","parse_vec","pretty_print","read_only_call","read_only_execute_smart_contract","run","sell_rolls","send_operation","send_transaction","serialize","serialize","show_keys","size_hint","size_hint","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","wallet_add_secret_keys","wallet_generate_secret_key","wallet_get_public_key","wallet_get_secret_key","wallet_info","wallet_remove_addresses","wallet_sign","when_moon","Bad","Block","Coins","Finished","Good","Id","Output","Pending","Protocol","Secret","Separator","Signature","Style","Time","Unknown","Wallet","borrow","borrow_mut","from","into","into_request","pretty_print","stdout_json","style","try_from","try_into","type_id","vzip","MassaCompleter","MyHelper","borrow","borrow","borrow_mut","borrow_mut","complete","complete","completer","file_completer","from","from","group_parameters","into","into","into_request","into_request","new","run","try_from","try_from","try_into","try_into","type_id","type_id","update","validate","validate_while_typing","validator","vzip","vzip","ClientSettings","DefaultNode","HttpSettings","SETTINGS","Settings","__private_field","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","certificate_store","chain_id","client","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default_node","deref","deserialize","deserialize","deserialize","deserialize","enabled","fmt","fmt","fmt","fmt","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","grpc_private_port","grpc_public_port","headers","history","history_file_path","http","id_kind","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","ip","max_concurrent_requests","max_log_length","max_request_body_size","private_port","public_port","request_timeout","timeout","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_client"],[54,"massa_client::cmds"],[234,"massa_client::display"],[262,"massa_client::repl"],[293,"massa_client::settings"],[393,"std::path"],[394,"alloc::string"],[395,"clap_builder::builder::command"],[396,"erased_serde::ser"],[397,"erased_serde::error"],[398,"core::result"],[399,"clap_builder::parser::matches::arg_matches"],[400,"clap_builder"],[401,"clap_builder::util::id"],[402,"core::option"],[403,"tonic::request"],[404,"anyhow"],[405,"serde::ser"],[406,"core::any"],[407,"core::fmt"],[408,"alloc::vec"],[409,"massa_wallet"],[410,"massa_api_exports::address"],[411,"std::collections::hash::map"],[412,"core::str::traits"],[413,"massa_sdk"],[414,"alloc::boxed"],[415,"massa_models::operation"],[416,"massa_models::amount"],[417,"massa_models::address"],[418,"console::utils"],[419,"rustyline"],[420,"rustyline::line_buffer"],[421,"rustyline::undo"],[422,"rustyline::validate"],[423,"serde::de"]],"i":[0,0,0,11,11,11,18,11,18,11,0,0,11,11,11,0,18,18,11,18,11,11,11,0,11,11,11,18,11,18,11,11,0,0,11,11,11,11,0,0,0,18,0,11,18,11,18,11,18,11,11,11,18,11,28,28,0,0,0,0,0,0,28,29,22,23,21,22,23,28,29,30,21,22,23,28,29,30,21,21,21,22,23,21,22,23,21,22,23,21,21,21,21,21,29,30,21,21,21,21,22,23,28,28,29,29,30,30,21,22,23,28,29,30,21,22,23,21,28,22,23,21,21,21,21,21,21,0,21,21,21,21,21,21,0,21,21,22,23,21,22,23,28,29,30,22,23,21,22,23,28,29,30,21,21,28,29,22,23,22,23,30,22,23,22,23,21,21,21,21,21,21,21,21,21,21,21,22,23,0,0,30,21,21,21,21,0,21,29,30,29,22,23,21,22,23,21,28,29,30,21,21,22,23,28,28,29,30,21,22,23,28,29,30,21,22,23,28,29,30,21,22,23,28,29,30,21,21,21,21,21,21,21,21,48,48,48,48,48,48,0,48,48,48,48,48,0,48,48,48,48,48,48,48,48,42,42,48,48,48,48,48,0,0,51,54,51,54,51,54,54,51,51,54,0,51,54,51,54,51,0,51,54,51,54,51,54,54,54,54,54,51,54,0,0,0,0,0,63,63,59,60,61,62,63,59,60,61,62,61,60,59,59,60,61,62,59,60,61,62,59,60,61,62,59,63,59,60,61,62,62,59,60,61,62,63,59,60,61,62,59,60,61,62,60,60,61,59,59,61,61,63,59,60,61,62,63,59,60,61,62,60,61,61,61,60,60,61,59,59,60,61,62,63,59,60,61,62,63,59,60,61,62,63,59,60,61,62,63,59,60,61,62],"f":"``{{{d{b}}}f}{hh}0{{{d{c}}}{{d{e}}}{}{}}0{{{d{jc}}}{{d{je}}}{}{}}0```{{}h}`0`{{{d{c}}{d{jl}}}{{Ab{nA`}}}{}}`{cc{}}0{{{d{Ad}}}{{Ab{AfAh}}}}{{{d{jAd}}}{{Ab{AfAh}}}}{{}{{Al{Aj}}}}```{ce{}{}}0{c{{An{e}}}{}{}}0``{{}{{Bb{B`}}}}```````{Af{{Bb{B`}}}}{{{d{Bd}}c}AbBf}`{c{{Ab{e}}}{}{}}000{{{d{c}}}Bh{}}0{{{d{jAf}}{d{Ad}}}{{Ab{B`Ah}}}}{{{d{jAf}}{d{jAd}}}{{Ab{B`Ah}}}}88`````````````{{{d{c}}}{{d{e}}}{}{}}00000{{{d{jc}}}{{d{je}}}{}{}}00000``{{{d{Bj}}}Bj}{{{d{Bl}}}Bl}{{{d{Bn}}}Bn}{{{d{c}}{d{je}}}B`{}{}}00{{{d{c}}}B`{}}00{{{d{Bj}}{d{Bj}}}C`}{{{d{c}}{d{e}}}C`{}{}}000{{{d{c}}{d{jl}}}{{Ab{nA`}}}{}}0``{{{d{Bj}}{d{jCb}}}{{Ab{B`Cd}}}}{{{d{Bj}}{d{jCb}}}Cf}{{{d{Bl}}{d{jCb}}}Cf}{{{d{Bn}}{d{jCb}}}Cf}{{{d{Ch}}{d{jCb}}}Cf}{{{d{Ch}}{d{jCb}}}{{Ab{B`Cd}}}}{{{d{Cj}}{d{jCb}}}Cf}0{{{d{Cl}}{d{jCb}}}Cf}0{cc{}}00000{{{d{c}}}c{}}00{{{d{Cn}}}{{Ab{Bjc}}}{}}{{{d{Cn}}}{{Ab{Chc}}}{}}{{{d{Bl}}D`}{{Al{Bj}}}}{{{d{Bn}}D`}{{Al{Ch}}}}```{{{d{Bj}}}{{Al{{d{Cn}}}}}}0`{{{d{b}}}{{Bb{{Dd{Db}}}}}}`1`{{{d{Bj}}}{{d{{Df{{d{Cn}}}}}}}}`{{{d{Bj}}{d{Cn}}}{{Al{{d{Cn}}}}}}{{}B`}{{{d{Bj}}}B`}```{ce{}{}}0000000{c{{An{e}}}{}{}}00000{{{d{Bj}}}C`}{{}Bl}{{}Bn}`{{{d{Bl}}}D`}{{{d{Bn}}}D`}``{{{d{Dh}}{d{{Df{Dj}}}}C`}{{Bb{Cl}}}}{{{d{jBl}}}{{Al{c}}}{}}{{{d{jBn}}}{{Al{c}}}{}}10```````````{{{d{jBl}}D`}{{Al{c}}}{}}{{{d{jBn}}D`}{{Al{c}}}{}}{{{d{{Dl{{d{Cn}}{d{Cn}}}}}}{d{Cn}}}{{Bb{{Al{c}}Dn}}}E`}{{{d{{Df{f}}}}}{{Bb{{Dd{c}}Dn}}}E`}{{{d{Cl}}}B`}``{{{d{Bj}}{d{jEb}}{d{j{Al{Dh}}}}{d{{Df{f}}}}C`}{{Bb{{Ef{Ed}}}}}}`{{{d{Eb}}{d{Dh}}EhEjElC`}{{Bb{{Ef{Ed}}}}}}`{{{d{Cj}}c}AbBf}{{{d{Cl}}c}AbBf}`{{{d{Bl}}}{{En{D`{Al{D`}}}}}}{{{d{Bn}}}{{En{D`{Al{D`}}}}}}{{{d{c}}}e{}{}}00{{{d{c}}}f{}}000{c{{Ab{e}}}{}{}}{{{d{Cn}}}{{Ab{Bjc}}}{}}111{{{d{Cn}}}{{Ab{Chc}}}{}}22222222{{{d{c}}}Bh{}}00000{ce{}{}}00000````````````````````````{{{d{c}}}{{d{e}}}{}{}}{{{d{jc}}}{{d{je}}}{}{}}{cc{}}3{c{{An{e}}}{}{}}{{{d{Ed}}}B`}{{{d{Ed}}}{{Bb{B`}}}}{{{d{F`}}c}{{Fb{f}}}Fd};;87``6655{{{d{Ff}}{d{Cn}}D`{d{Fh}}}{{Fj{{En{D`{Dd{c}}}}}}}{}}{{{d{Fl}}{d{Cn}}D`{d{Fh}}}{{Fj{{En{D`{Dd{c}}}}}}}{}}``66{{{Dd{f}}}{{Dd{f}}}}::66{{}Ff}{{{d{jEb}}{d{b}}{Al{f}}}{{Bb{B`}}}}{c{{Ab{e}}}{}{}}000>>{{{d{Fl}}{d{jFn}}D`{d{Cn}}{d{jG`}}}B`}{{{d{Fl}}{d{jGb}}}{{Fj{Gd}}}}{{{d{Fl}}}C`}`{ce{}{}}0``````{{{d{c}}}{{d{e}}}{}{}}0000{{{d{jc}}}{{d{je}}}{}{}}0000```{{{d{Gf}}}Gf}{{{d{Gh}}}Gh}{{{d{Gj}}}Gj}{{{d{Gl}}}Gl}{{{d{c}}{d{je}}}B`{}{}}000{{{d{c}}}B`{}}000`{{{d{Gn}}}{{d{Gf}}}}{c{{Ab{Gf}}}H`}{c{{Ab{Gh}}}H`}{c{{Ab{Gj}}}H`}{c{{Ab{Gl}}}H`}`{{{d{Gf}}{d{jCb}}}Cf}{{{d{Gh}}{d{jCb}}}Cf}{{{d{Gj}}{d{jCb}}}Cf}{{{d{Gl}}{d{jCb}}}Cf}{cc{}}0000{{{d{c}}}c{}}000```````{ce{}{}}0000{c{{An{e}}}{}{}}0000````````{{{d{c}}}e{}{}}000{c{{Ab{e}}}{}{}}000000000{{{d{c}}}Bh{}}000044444","D":"Jd","p":[[5,"Path",393],[1,"reference"],[5,"String",394],[5,"Command",395],[0,"mut"],[10,"Serializer",396],[5,"Ok",396],[5,"Error",397],[6,"Result",398],[5,"ArgMatches",399],[5,"Args",0],[8,"Error",400],[5,"Id",401],[6,"Option",402],[5,"Request",403],[1,"unit"],[8,"Result",404],[5,"JsonError",0],[10,"Serializer",405],[5,"TypeId",406],[6,"Command",54],[5,"CommandIter",54],[5,"ListOperationIter",54],[1,"bool"],[5,"Formatter",407],[5,"Error",407],[8,"Result",407],[6,"ListOperation",54],[5,"ExtendedWalletEntry",54],[5,"ExtendedWallet",54],[1,"str"],[1,"usize"],[1,"u8"],[5,"Vec",408],[1,"slice"],[5,"Wallet",409],[5,"AddressInfo",410],[5,"HashMap",411],[5,"Error",404],[10,"FromStr",412],[5,"Client",413],[10,"Output",234],[5,"Box",414],[6,"OperationType",415],[5,"Amount",416],[6,"Address",417],[1,"tuple"],[6,"Style",234],[5,"StyledObject",418],[10,"ToString",394],[5,"MassaCompleter",262],[5,"Context",419],[8,"Result",419],[5,"MyHelper",262],[5,"LineBuffer",420],[5,"Changeset",421],[5,"ValidationContext",422],[6,"ValidationResult",422],[5,"Settings",293],[5,"DefaultNode",293],[5,"ClientSettings",293],[5,"HttpSettings",293],[5,"SETTINGS",293],[10,"Deserializer",423]],"r":[],"b":[[98,"impl-Display-for-Command"],[99,"impl-Debug-for-Command"],[102,"impl-Debug-for-ListOperation"],[103,"impl-Display-for-ListOperation"],[104,"impl-Display-for-ExtendedWalletEntry"],[105,"impl-Debug-for-ExtendedWalletEntry"],[106,"impl-Debug-for-ExtendedWallet"],[107,"impl-Display-for-ExtendedWallet"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADcBIwABAAEABAAFAAwAAQAPAAMAFQACAB0AAQAhAAAAJwAAACkAAQAsAAkANwABAD0AAAA/AAAAQQArAHMADACBAAUAiQACAJIABwCbAAEAngADAKMAEQC2AAIAugAAALwAAgDAACoA8QAAAPcAAAD7AAEA/wARABMBAAAWAQ8AJwEAACkBJgBVAQoAZQEkAA=="}],\ -["massa_consensus_exports",{"t":"FFFKKOCOOCOCOOOOOOOCMOCOOOCCOCOOOOOMMMMMMMMOMOOOOOOOOMMOCOMOOFNOONNNNNNNNONNNNOONNNONONNNNNNNNNPPPPPPGGGPPPGFPPPPGPPPPPGPGPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOFFFNOONNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNOONNNNONNNNNNONNNNNNNNOONNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNKKMMMMMMMMMMMMMPGPPPPPPGPPGPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNNFFFNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNOOONNNOONNONNNNNNNNNNNNNNNNNNNNNNNFNOONNOOOOOONNNONNNNNOONOONNOONNNONOOOOOONNOOONNNNNNNN","n":["ConsensusBroadcasts","ConsensusChannels","ConsensusConfig","ConsensusController","ConsensusManager","block_db_prune_interval","block_graph_export","block_header_sender","block_sender","block_status","bootstrap_part_size","bootstrapable_graph","broadcast_blocks_channel_capacity","broadcast_blocks_headers_channel_capacity","broadcast_enabled","broadcast_filled_blocks_channel_capacity","broadcasts","chain_id","channel_size","channels","clone_box","controller_event_tx","controller_trait","delta_f0","end_timestamp","endorsement_count","error","events","execution_controller","export_active_block","filled_block_sender","force_keep_final_periods","force_keep_final_periods_without_ops","genesis_key","genesis_timestamp","get_best_parents","get_block_graph_status","get_block_statuses","get_blockclique_block_at_slot","get_bootstrap_part","get_cliques","get_latest_blockclique_block_at_slot","get_stats","last_start_period","mark_invalid_block","max_dependency_blocks","max_discarded_blocks","max_future_processing_blocks","max_gas_per_block","operation_validity_periods","periods_per_cycle","pool_controller","protocol_controller","register_block","register_block_header","selector_controller","settings","stats_timespan","stop","t0","thread_count","BlockGraphExport","__clone_box","active_blocks","best_parents","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","discarded_blocks","drop","fmt","from","from_ref","genesis_blocks","gi_head","init","into","into_request","latest_final_blocks_periods","layout_raw","max_cliques","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Active","Active","Active","Active","Block","Block","BlockStatus","BlockStatusId","DiscardReason","Discarded","Discarded","Discarded","ExportBlockStatus","ExportCompiledBlock","Final","Final","Final","Header","HeaderOrBlock","Incoming","Incoming","Incoming","Invalid","Stale","Status","Storage","StorageOrBlock","WaitingForDependencies","WaitingForDependencies","WaitingForDependencies","WaitingForSlot","WaitingForSlot","WaitingForSlot","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","children","clone","clone","clone","clone","clone","clone","clone","clone","clone_block","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_slot","header","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_final","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialize","serialize","serialize","strip_to_block","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","a_block","creator","header_or_block","parents","reason","sequence_number","sequence_number","slot","storage_or_block","unsatisfied_dependencies","id","slot","storage","BootstrapableGraph","BootstrapableGraphDeserializer","BootstrapableGraphSerializer","__clone_box","block_count_deserializer","block_count_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","export_active_block_deserializer","export_active_block_serializer","final_blocks","fmt","from","from","from","from_ref","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","new","new","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusBroadcasts","ConsensusChannels","__clone_box","__clone_box","block_header_sender","block_sender","borrow","borrow","borrow_mut","borrow_mut","broadcasts","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","controller_event_tx","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","execution_controller","filled_block_sender","from","from","from_ref","from_ref","init","init","into","into","into_request","into_request","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pool_controller","protocol_controller","selector_controller","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","ConsensusController","ConsensusManager","clone_box","get_best_parents","get_block_graph_status","get_block_statuses","get_blockclique_block_at_slot","get_bootstrap_part","get_cliques","get_latest_blockclique_block_at_slot","get_stats","mark_invalid_block","register_block","register_block_header","stop","AmountOverflowError","ConsensusError","ContainerInconsistency","ExecutionError","FitnessOverflow","GenesisCreationError","IOError","IOError","InternalError","InvalidLedgerChange","InvalidTransition","LedgerError","LedgerError","LedgerInconsistency","MassaTimeError","MissingBlock","MissingOperation","ModelsError","ModelsError","PosCycleUnavailable","ProtocolError","SerdeError","SerdeError","SerializationError","TransactionError","TransactionError","TryFromSliceError","as_error","as_error","as_error","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","source","source","to_string","to_string","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusEvent","NeedSync","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ExportActiveBlock","ExportActiveBlockDeserializer","ExportActiveBlockSerializer","__clone_box","block","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","fmt","from","from","from","from_active_block","from_ref","init","init","init","into","into","into","into_request","into_request","into_request","is_final","layout_raw","layout_raw","layout_raw","new","new","parents","period_deserializer","period_serializer","pointer_metadata","pointer_metadata","pointer_metadata","sec_share_block_deserializer","sec_share_serializer","serialize","serialize","thread_count","to_active_block","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusConfig","__clone_box","block_db_prune_interval","bootstrap_part_size","borrow","borrow_mut","broadcast_blocks_channel_capacity","broadcast_blocks_headers_channel_capacity","broadcast_enabled","broadcast_filled_blocks_channel_capacity","chain_id","channel_size","clone","clone_into","clone_to_uninit","delta_f0","deref","deref_mut","deserialize","deserialize","drop","end_timestamp","endorsement_count","fmt","force_keep_final_periods","force_keep_final_periods_without_ops","from","from_ref","genesis_key","genesis_timestamp","init","into","into_request","last_start_period","layout_raw","max_dependency_blocks","max_discarded_blocks","max_future_processing_blocks","max_gas_per_block","operation_validity_periods","periods_per_cycle","pointer_metadata","serialize","stats_timespan","t0","thread_count","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip"],"q":[[0,"massa_consensus_exports"],[61,"massa_consensus_exports::block_graph_export"],[95,"massa_consensus_exports::block_status"],[372,"massa_consensus_exports::block_status::BlockStatus"],[382,"massa_consensus_exports::block_status::HeaderOrBlock"],[385,"massa_consensus_exports::bootstrapable_graph"],[464,"massa_consensus_exports::channels"],[525,"massa_consensus_exports::controller_trait"],[540,"massa_consensus_exports::error"],[649,"massa_consensus_exports::events"],[678,"massa_consensus_exports::export_active_block"],[764,"massa_consensus_exports::settings"],[818,"alloc::boxed"],[819,"massa_models::block_id"],[820,"alloc::vec"],[821,"massa_models::slot"],[822,"core::option"],[823,"core::result"],[824,"massa_models::block"],[825,"massa_models::prehash"],[826,"massa_models::streaming_step"],[827,"massa_models::clique"],[828,"massa_models::stats"],[829,"massa_models::block_header"],[830,"massa_models::secure_share"],[831,"massa_storage"],[832,"dyn_clone::sealed"],[833,"rkyv::with"],[834,"core::fmt"],[835,"tonic::request"],[836,"core::alloc::layout"],[837,"core::any"],[838,"serde::de"],[839,"serde::ser"],[840,"nom::internal"],[841,"nom::error"],[842,"massa_serialization"],[843,"core::error"],[844,"serde_json::error"],[845,"massa_protocol_exports::error"],[846,"massa_time::error"],[847,"massa_models::error"],[848,"std::io::error"],[849,"massa_execution_exports::error"],[850,"core::array"],[851,"alloc::string"],[852,"massa_models::active_block"]],"i":[0,0,0,0,0,75,0,58,58,0,75,0,75,75,75,75,57,75,75,0,1,57,0,75,75,75,0,0,57,0,58,75,75,75,75,1,1,1,1,1,1,1,1,75,1,75,75,75,75,75,75,57,57,1,1,57,0,75,26,75,75,0,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,39,41,42,44,37,40,0,0,0,39,41,42,0,0,38,42,44,37,0,39,41,42,38,38,0,40,0,39,41,42,39,41,42,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,43,37,38,39,40,41,42,43,44,40,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,38,39,40,41,42,42,43,43,44,44,37,38,39,40,41,42,43,44,38,39,44,38,38,38,38,38,38,39,39,39,39,39,39,44,44,44,44,44,44,37,38,39,40,41,42,43,44,37,38,39,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,43,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,43,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,38,42,43,44,40,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,76,77,78,77,77,78,77,77,76,78,79,79,79,0,0,0,17,49,48,49,17,48,49,17,48,17,17,17,48,49,17,48,49,17,48,49,49,17,17,48,49,17,48,49,48,17,17,49,17,48,17,49,17,48,49,17,48,49,17,48,49,17,48,49,48,49,17,48,17,48,17,49,17,48,49,17,48,49,17,48,49,17,48,49,17,48,49,17,48,49,17,48,0,0,57,58,58,58,57,58,57,58,57,57,58,57,58,57,58,57,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,57,57,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,0,0,1,1,1,1,1,1,1,1,1,1,1,1,26,61,0,11,11,11,11,11,61,0,11,11,0,11,61,11,11,11,11,61,11,11,11,61,11,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,11,60,60,61,61,11,11,11,11,11,11,11,11,60,61,61,61,61,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,0,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,0,0,0,71,71,73,72,73,71,72,73,71,72,71,71,71,72,73,71,72,73,71,72,73,73,71,71,72,73,71,72,71,73,71,72,71,71,73,71,72,73,71,72,73,71,72,71,73,71,72,73,72,71,73,72,73,71,72,73,72,71,72,73,71,71,73,71,72,73,71,72,73,71,72,73,71,72,73,71,72,73,71,72,73,71,72,0,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75],"f":"````````````````````{{{d{b}}}{{f{b}}}}``````````````{{{d{b}}}{{n{{l{hj}}}}}}{{{d{b}}{Ab{A`}}{Ab{A`}}}{{Ah{AdAf}}}}{{{d{b}}{d{{Aj{h}}}}}{{n{Al}}}}{{{d{b}}A`}{{Ab{h}}}}{{{d{b}}{B`{{An{h}}}}{B`{A`}}}{{Ah{{l{Bb{An{h}}{B`{{An{h}}}}}}Af}}}}{{{d{b}}}{{n{Bd}}}}{{{d{b}}A`}h}{{{d{b}}}{{Ah{BfAf}}}}`{{{d{b}}h{Bj{Bhh}}}Bl}````````{{{d{b}}hA`BnC`}Bl}1```{{{d{CbCd}}}Bl}```{{{d{c}}Cf}Bl{}}``{{{d{c}}}{{d{e}}}{}{}}{{{d{Cbc}}}{{d{Cbe}}}{}{}}{{{d{Ad}}}Ad}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{Ch{{d{c}}}{}}{Ch{{d{Cbc}}}{}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}`{ChBl}{{{d{Ad}}{d{CbCl}}}Cn}{cc{}}{{{d{c}}}c{}}``{{}Ch}{ce{}{}}{c{{D`{e}}}{}{}}`{{}{{Ah{DbDd}}}}`{d}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}0{{{d{c}}}Df{}}{{{f{c}}}{{f{Dh}}}{}}{{{d{Cbc}}}{{d{CbDh}}}{}}{{{d{c}}}{{d{Dh}}}{}}9`````````````````````````````````{{{d{c}}Cf}Bl{}}0000000{{{d{c}}}{{d{e}}}{}{}}0000000{{{d{Cbc}}}{{d{Cbe}}}{}{}}0000000`{{{d{Dj}}}Dj}{{{d{Dl}}}Dl}{{{d{Dn}}}Dn}{{{d{E`}}}E`}{{{d{Eb}}}Eb}{{{d{Ed}}}Ed}{{{d{Ef}}}Ef}{{{d{Eh}}}Eh}{{{d{E`}}{d{h}}}Ej}{{{d{c}}{d{Cbe}}}Bl{}{}}0000000{{{d{c}}}Bl{}}0000000{Ch{{d{c}}}{}}0000000{Ch{{d{Cbc}}}{}}0000000{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{c{{Ah{Dl}}}El}1111{c{{Ah{Ed}}}El}2{c{{Ah{Ef}}}El}33{c{{Ah{Eh}}}El}{ChBl}0000000{{{d{Dl}}{d{Dl}}}C`}{{{d{Dn}}{d{Dn}}}C`}{{{d{Eh}}{d{Eh}}}C`}{{{d{c}}{d{e}}}C`{}{}}00000000000000000{{{d{Dj}}{d{CbCl}}}Cn}{{{d{Dl}}{d{CbCl}}}Cn}{{{d{Dn}}{d{CbCl}}}Cn}{{{d{E`}}{d{CbCl}}}Cn}{{{d{Eb}}{d{CbCl}}}Cn}{{{d{Ed}}{d{CbCl}}}Cn}{{{d{Ef}}{d{CbCl}}}Cn}{{{d{Eh}}{d{CbCl}}}Cn}{cc{}}00{{{d{Eb}}}Dn}11111{{{d{c}}}c{}}0000000{{{d{Dj}}}A`}`{{}Ch}0000000{ce{}{}}0000000{c{{D`{e}}}{}{}}0000000`{{}{{Ah{DbDd}}}}0000000{d}0000000{{{d{Dl}}c}AhEn}{{{d{Ed}}c}AhEn}{{{d{Ef}}c}AhEn}{{{d{Eh}}c}AhEn}{{{d{CbE`}}{d{h}}}Bl}{{{d{c}}}e{}{}}0000000{c{{Ah{e}}}{}{}}000000000000000{{{d{c}}}Df{}}0000000{{{f{c}}}{{f{Dh}}}{}}0000000{{{d{Cbc}}}{{d{CbDh}}}{}}0000000{{{d{c}}}{{d{Dh}}}{}}0000000>>>>>>>>````````````````{{{d{c}}Cf}Bl{}}``{{{d{c}}}{{d{e}}}{}{}}00{{{d{Cbc}}}{{d{Cbe}}}{}{}}00{{{d{Bb}}}Bb}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{{}F`}{Ch{{d{c}}}{}}00{Ch{{d{Cbc}}}{}}00{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{{{d{Fb}}{d{{Aj{Fd}}}}}{{Ff{{d{{Aj{Fd}}}}Bbc}}}{{Fh{{d{{Aj{Fd}}}}}}{Fj{{d{{Aj{Fd}}}}}}}}1{c{{Ah{Bb}}}El}2{ChBl}00```{{{d{Bb}}{d{CbCl}}}Cn}{cc{}}00{{{d{c}}}c{}}{{}Ch}00{ce{}{}}00{c{{D`{e}}}{}{}}00{{}{{Ah{DbDd}}}}00{{FlFn}Fb}>{d}00{{{d{Bb}}c}AhEn}{{{d{F`}}{d{Bb}}{d{Cb{n{Fd}}}}}{{Ah{BlG`}}}}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{d{c}}}Df{}}00{{{f{c}}}{{f{Dh}}}{}}00{{{d{Cbc}}}{{d{CbDh}}}{}}00{{{d{c}}}{{d{Dh}}}{}}00<<<``{{{d{c}}Cf}Bl{}}0``{{{d{c}}}{{d{e}}}{}{}}0{{{d{Cbc}}}{{d{Cbe}}}{}{}}0`{{{d{Gb}}}Gb}{{{d{Gd}}}Gd}{{{d{c}}{d{Cbe}}}Bl{}{}}0{{{d{c}}}Bl{}}0`{Ch{{d{c}}}{}}0{Ch{{d{Cbc}}}{}}0{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}0{ChBl}0``{cc{}}0{{{d{c}}}c{}}0{{}Ch}0{ce{}{}}0{c{{D`{e}}}{}{}}0{{}{{Ah{DbDd}}}}0{d}0```{{{d{c}}}e{}{}}0{c{{Ah{e}}}{}{}}000{{{d{c}}}Df{}}0{{{f{c}}}{{f{Dh}}}{}}0{{{d{Cbc}}}{{d{CbDh}}}{}}0{{{d{c}}}{{d{Dh}}}{}}099``{{{d{b}}}{{f{b}}}}{{{d{b}}}{{n{{l{hj}}}}}}{{{d{b}}{Ab{A`}}{Ab{A`}}}{{Ah{AdAf}}}}{{{d{b}}{d{{Aj{h}}}}}{{n{Al}}}}{{{d{b}}A`}{{Ab{h}}}}{{{d{b}}{B`{{An{h}}}}{B`{A`}}}{{Ah{{l{Bb{An{h}}{B`{{An{h}}}}}}Af}}}}{{{d{b}}}{{n{Bd}}}}{{{d{b}}A`}h}{{{d{b}}}{{Ah{BfAf}}}}{{{d{b}}h{Bj{Bhh}}}Bl}{{{d{b}}hA`BnC`}Bl}1{{{d{CbCd}}}Bl}```````````````````````````{{{d{c}}}{{d{Gf}}}{}}00{{{d{c}}}{{d{e}}}{}{}}00{{{d{Cbc}}}{{d{Cbe}}}{}{}}00{Ch{{d{c}}}{}}00{Ch{{d{Cbc}}}{}}00{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}00{ChBl}00{{{d{Af}}{d{CbCl}}}Cn}0{{{d{Gh}}{d{CbCl}}}Cn}0{{{d{Gj}}{d{CbCl}}}Cn}0{GlAf}{GnAf}{H`Af}{HbAf}{cc{}}{GjAf}{HdAf}{HfAf}33{GlGj}{HdGj}{HbGj}{HhGj}{{}Ch}00{ce{}{}}00{c{{D`{e}}}{}{}}00{{}{{Ah{DbDd}}}}00{d}00{{{d{Af}}}{{Ab{{d{Gf}}}}}}{{{d{Gj}}}{{Ab{{d{Gf}}}}}}{{{d{c}}}Hj{}}00{c{{Ah{e}}}{}{}}00000{{{d{c}}}Df{}}00{{{f{c}}}{{f{Dh}}}{}}00{{{d{Cbc}}}{{d{CbDh}}}{}}00{{{d{c}}}{{d{Dh}}}{}}00;;;```{{{d{c}}Cf}Bl{}}{{{d{c}}}{{d{e}}}{}{}}{{{d{Cbc}}}{{d{Cbe}}}{}{}}{{{d{Hl}}}Hl}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{Ch{{d{c}}}{}}{Ch{{d{Cbc}}}{}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{ChBl}{{{d{Hl}}{d{CbCl}}}Cn}{cc{}}{{{d{c}}}c{}}{{}Ch}{ce{}{}}{c{{D`{e}}}{}{}}{{}{{Ah{DbDd}}}}{d}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}0{{{d{c}}}Df{}}{{{f{c}}}{{f{Dh}}}{}}{{{d{Cbc}}}{{d{CbDh}}}{}}{{{d{c}}}{{d{Dh}}}{}}9```{{{d{c}}Cf}Bl{}}```{{{d{c}}}{{d{e}}}{}{}}00{{{d{Cbc}}}{{d{Cbe}}}{}{}}00{{{d{Hn}}}Hn}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{{}I`}{Ch{{d{c}}}{}}00{Ch{{d{Cbc}}}{}}00{{{d{Ib}}{d{{Aj{Fd}}}}}{{Ff{{d{{Aj{Fd}}}}Hnc}}}{{Fh{{d{{Aj{Fd}}}}}}{Fj{{d{{Aj{Fd}}}}}}}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{c{{Ah{Hn}}}El}11{ChBl}00{{{d{Hn}}{d{CbCl}}}Cn}{cc{}}00{{{d{Id}}{d{E`}}}Hn}{{{d{c}}}c{}}{{}Ch}00{ce{}{}}00{c{{D`{e}}}{}{}}00`{{}{{Ah{DbDd}}}}00{FlIb}?```{d}00``{{{d{Hn}}c}AhEn}{{{d{I`}}{d{Hn}}{d{Cb{n{Fd}}}}}{{Ah{BlG`}}}}`{{HnFd}{{Ah{{l{IdE`}}Af}}}}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{d{c}}}Df{}}00{{{f{c}}}{{f{Dh}}}{}}00{{{d{Cbc}}}{{d{CbDh}}}{}}00{{{d{c}}}{{d{Dh}}}{}}00===`{{{d{c}}Cf}Bl{}}``{{{d{c}}}{{d{e}}}{}{}}{{{d{Cbc}}}{{d{Cbe}}}{}{}}``````{{{d{If}}}If}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}`{Ch{{d{c}}}{}}{Ch{{d{Cbc}}}{}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{c{{Ah{If}}}El}{ChBl}``{{{d{If}}{d{CbCl}}}Cn}``{cc{}}{{{d{c}}}c{}}``{{}Ch}{ce{}{}}{c{{D`{e}}}{}{}}`{{}{{Ah{DbDd}}}}``````{d}{{{d{If}}c}AhEn}```{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}0{{{d{c}}}Df{}}{{{f{c}}}{{f{Dh}}}{}}{{{d{Cbc}}}{{d{CbDh}}}{}}{{{d{c}}}{{d{Dh}}}{}}:","D":"ANd","p":[[10,"ConsensusController",525],[1,"reference"],[5,"Box",818],[6,"BlockId",819],[1,"u64"],[1,"tuple"],[5,"Vec",820],[5,"Slot",821],[6,"Option",822],[5,"BlockGraphExport",61],[6,"ConsensusError",540],[6,"Result",823],[1,"slice"],[6,"BlockGraphStatus",824],[8,"PreHashSet",825],[6,"StreamingStep",826],[5,"BootstrapableGraph",385],[5,"Clique",827],[5,"ConsensusStats",828],[5,"BlockHeader",829],[5,"SecureShare",830],[1,"unit"],[5,"Storage",831],[1,"bool"],[0,"mut"],[10,"ConsensusManager",525],[5,"Private",832],[1,"usize"],[5,"With",833],[5,"Formatter",834],[8,"Result",834],[5,"Request",835],[5,"Layout",836],[5,"LayoutError",836],[5,"TypeId",837],[10,"Any",837],[6,"HeaderOrBlock",95],[6,"DiscardReason",95],[6,"BlockStatusId",95],[6,"StorageOrBlock",95],[6,"BlockStatus",95],[6,"ExportBlockStatus",95],[5,"ExportCompiledBlock",95],[6,"Status",95],[8,"SecureShareBlock",824],[10,"Deserializer",838],[10,"Serializer",839],[5,"BootstrapableGraphSerializer",385],[5,"BootstrapableGraphDeserializer",385],[1,"u8"],[8,"IResult",840],[10,"ParseError",841],[10,"ContextError",841],[5,"BlockDeserializerArgs",824],[1,"u32"],[6,"SerializeError",842],[5,"ConsensusChannels",464],[5,"ConsensusBroadcasts",464],[10,"Error",843],[6,"InternalError",540],[6,"LedgerError",540],[5,"Error",844],[6,"ProtocolError",845],[6,"TimeError",846],[6,"ModelsError",847],[5,"Error",848],[6,"ExecutionError",849],[5,"TryFromSliceError",850],[5,"String",851],[6,"ConsensusEvent",649],[5,"ExportActiveBlock",678],[5,"ExportActiveBlockSerializer",678],[5,"ExportActiveBlockDeserializer",678],[5,"ActiveBlock",852],[5,"ConsensusConfig",764],[15,"Active",372],[15,"Discarded",372],[15,"WaitingForDependencies",372],[15,"Block",382]],"r":[[0,464],[1,464],[2,764],[3,525],[4,525]],"b":[[588,"impl-Debug-for-ConsensusError"],[589,"impl-Display-for-ConsensusError"],[590,"impl-Debug-for-InternalError"],[591,"impl-Display-for-InternalError"],[592,"impl-Display-for-LedgerError"],[593,"impl-Debug-for-LedgerError"],[594,"impl-From%3CError%3E-for-ConsensusError"],[595,"impl-From%3CProtocolError%3E-for-ConsensusError"],[596,"impl-From%3CTimeError%3E-for-ConsensusError"],[597,"impl-From%3CModelsError%3E-for-ConsensusError"],[599,"impl-From%3CLedgerError%3E-for-ConsensusError"],[600,"impl-From%3CError%3E-for-ConsensusError"],[601,"impl-From%3CExecutionError%3E-for-ConsensusError"],[604,"impl-From%3CError%3E-for-LedgerError"],[605,"impl-From%3CError%3E-for-LedgerError"],[606,"impl-From%3CModelsError%3E-for-LedgerError"],[607,"impl-From%3CTryFromSliceError%3E-for-LedgerError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEACSQADAAAABwAAAAoAAAAMAAAAFAAAABcAAAAbAAEAHgAAADkAAAA/AAAAQgAHAEsAAQBOAAAAUQAAAFMAAABVAAAAVwAJAGQAAABnAAAAaQAAAHEAAgB7AAAAfgAAAIEAFwCaAAcAowBQAPcAAAD9AAcABwEHABcBBwAgARMANQFAAH0BAAB/AQIAhQETAJoBBwCjAQAApwEDAK4BBQC2AQMAuwEVANMBAQDXAQMA3AEFAOMBBwDvAQMA9QEFAP4BDwA4Ah4AWAICAF0CBgBnAiIAjQIKAJkCAQCcAgoAqgIAAKwCEQC/AgcAywIDANICAgDWAgIA3AIJAOcCFwABAwEACQMCAA0DBAAUAwAAGAMAABsDAAAdAwAAHwMAACYDAQArAwcA"}],\ +["massa_api",{"t":"FKFKFFKFMCOOOCNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNMMOOONNNNNMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNONNNNNNNNMMMMMMMMOMMMMMMMONNNNNOOCOOOCMOMHMMNNNONOMONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNHHKMMMNMMMMHHHHH","n":["API","ApiServer","ApiV2","MassaRpcServer","Private","Public","RpcServer","StopHandle","add_staking_secret_keys","api","api_settings","api_settings","api_settings","api_trait","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","consensus_broadcasts","consensus_controller","consensus_controller","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","execute_read_only_bytecode","execute_read_only_call","execution_controller","execution_controller","execution_controller","from","from","from","from","from","get_addresses","get_addresses_bytecode","get_blockclique_block_by_slot","get_blocks","get_cliques","get_datastore_entries","get_deferred_call_ids_by_slot","get_deferred_call_info","get_deferred_call_quote","get_endorsements","get_filtered_sc_output_event","get_graph_interval","get_openrpc_spec","get_operations","get_slots_transfers","get_stakers","get_staking_addresses","get_status","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_rpc","keypair_factory","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","new","new","new","node_add_to_bootstrap_blacklist","node_add_to_bootstrap_whitelist","node_add_to_peers_whitelist","node_ban_by_id","node_ban_by_ip","node_bootstrap_blacklist","node_bootstrap_whitelist","node_bootstrap_whitelist_allow_all","node_id","node_peers_whitelist","node_remove_from_bootstrap_blacklist","node_remove_from_bootstrap_whitelist","node_remove_from_peers_whitelist","node_sign_message","node_unban_by_id","node_unban_by_ip","node_wallet","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pool_broadcasts","pool_command_sender","private","protocol_config","protocol_controller","protocol_controller","public","remove_staking_addresses","selector_controller","send_operations","serve","serve","serve","serve","serve","serve","server_handler","stop","stop_cv","stop_node","storage","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","version","version","vzip","vzip","vzip","vzip","vzip","wrong_api","broadcast_via_ws","MassaApiServer","get_largest_stakers","get_next_block_best_parents","get_version","into_rpc","subscribe_new_blocks","subscribe_new_blocks_headers","subscribe_new_filled_blocks","subscribe_new_operations","get_file_len","read_ips_from_jsonfile","run_scrud_operation","write_ips_to_jsonfile","check_input_operation"],"q":[[0,"massa_api"],[181,"massa_api::api"],[182,"massa_api::api_trait"],[191,"massa_api::private"],[195,"massa_api::public"],[196,"alloc::string"],[197,"alloc::vec"],[198,"core::future::future"],[199,"alloc::boxed"],[200,"core::pin"],[201,"rkyv::with"],[202,"core::result"],[203,"massa_api_exports::execution"],[204,"massa_models::address"],[205,"massa_api_exports::address"],[206,"massa_models::slot"],[207,"massa_models::block_id"],[208,"massa_api_exports::datastore"],[209,"massa_models::endorsement"],[210,"massa_models::execution"],[211,"massa_api_exports"],[212,"massa_models::operation"],[213,"massa_api_exports::page"],[214,"core::option"],[215,"tonic::request"],[216,"jsonrpsee_core::server::rpc_module"],[217,"core::alloc::layout"],[218,"massa_consensus_exports::controller_trait"],[219,"massa_execution_exports::controller_traits"],[220,"massa_api_exports::config"],[221,"massa_pos_exports::controller_traits"],[222,"massa_pool_exports::controller_traits"],[223,"massa_protocol_exports::controller_trait"],[224,"massa_protocol_exports::settings"],[225,"massa_models::version"],[226,"massa_models::node"],[227,"massa_storage"],[228,"massa_versioning::versioning"],[229,"massa_consensus_exports::channels"],[230,"massa_pool_exports::channels"],[231,"std::sync::mutex"],[232,"std::sync::condvar"],[233,"alloc::sync"],[234,"massa_wallet"],[235,"parking_lot::rwlock"],[236,"core::net::ip_addr"],[237,"massa_api_exports::operation"],[238,"core::net::socket_addr"],[239,"jsonrpsee_core::client::error"],[240,"jsonrpsee_core"],[241,"core::any"],[242,"tokio::sync::broadcast"],[243,"jsonrpsee_core::server::subscription"],[244,"serde::ser"],[245,"core::marker"],[246,"core::clone"],[247,"std::path"],[248,"alloc::collections::btree::set"]],"i":[0,0,0,0,0,0,0,0,1,0,42,54,46,0,42,54,46,43,59,42,54,46,43,59,46,42,46,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,1,1,42,54,46,42,54,46,43,59,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,1,42,42,54,46,43,59,43,43,43,1,1,1,1,1,1,1,1,42,1,1,1,1,1,1,1,54,42,54,46,43,59,46,42,0,42,42,54,0,1,42,1,0,61,62,43,43,43,59,59,54,1,42,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,54,46,43,59,42,46,42,54,46,43,59,0,0,0,72,72,72,72,72,72,72,72,0,0,0,0,0],"f":"````````{{{d{b}}{h{f}}}{{n{{l{j}}}}}}`````{{{d{c}}}{{d{e}}}{}{}}0000{{{d{A`c}}}{{d{A`e}}}{}{}}0000```{Ab{{d{c}}}{}}0000{Ab{{d{A`c}}}{}}0000{{{d{c}}{d{A`e}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0000{AbAh}0000{{{d{b}}{h{Aj}}}{{n{{l{j}}}}}}{{{d{b}}{h{Al}}}{{n{{l{j}}}}}}```{cc{}}0000{{{d{b}}{h{An}}}{{n{{l{j}}}}}}{{{d{b}}{h{B`}}}{{n{{l{j}}}}}}{{{d{b}}Bb}{{n{{l{j}}}}}}{{{d{b}}{h{Bd}}}{{n{{l{j}}}}}}{{{d{b}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bf}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bb}}}{{n{{l{j}}}}}}{{{d{b}}{h{f}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bh}}}{{n{{l{j}}}}}}{{{d{b}}{h{Bj}}}{{n{{l{j}}}}}}{{{d{b}}Bl}{{n{{l{j}}}}}}{{{d{b}}Bn}{{n{{l{j}}}}}}7{{{d{b}}{h{C`}}}{{n{{l{j}}}}}}6{{{d{b}}{Cd{Cb}}}{{n{{l{j}}}}}}99{{}Ab}0000{ce{}{}}0000{c{{Cf{e}}}{}{}}0000{b{{Ch{b}}}}`{{}{{Af{CjCl}}}}0000{{{l{Cn}}{l{D`}}Db{l{Dd}}{l{Df}}{l{Dh}}DjDlDnE`Eb}{{Ef{Ed}}}}{{{l{Cn}}Eh{l{D`}}EjDbDl}{{Ef{El}}}}{{{l{Dh}}{l{D`}}Db{Ff{{Fd{{F`{En}}Fb}}}}{Ff{{Fj{Fh}}}}}{{Ef{Fl}}}}{{{d{b}}{h{Fn}}}{{n{{l{j}}}}}}00{{{d{b}}{h{Dn}}}{{n{{l{j}}}}}}1{{{d{b}}}{{n{{l{j}}}}}}00`0222{{{d{b}}{h{G`}}}{{n{{l{j}}}}}}23`{d}0000```````{{{d{b}}{h{An}}}{{n{{l{j}}}}}}`{{{d{b}}{h{Gb}}}{{n{{l{j}}}}}}{{{Ch{c}}{d{Gd}}{d{Db}}}{{Af{GfGh}}}{}}{{Gj{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{Gl{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{{Ef{Fl}}{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{{Ef{El}}{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}{{{Ef{Ed}}{d{Gd}}{d{Db}}}{{n{{l{j}}}}}}`{GfAh}`{{{d{b}}}{{Gn{Ah}}}}`{c{{Af{e}}}{}{}}000000000{{{d{c}}}H`{}}0000{{{l{c}}}{{l{Hb}}}{}}0000{{{d{A`c}}}{{d{A`Hb}}}{}}0000{{{d{c}}}{{d{Hb}}}{}}0000``{ce{}{}}0000{{}{{Gn{c}}}{}}{{{Hd{c}}Hf}Hh{HjHlHn}}`{{{d{I`}}{Cd{Ib}}}{{n{{l{j}}}}}}{{{d{I`}}}{{n{{l{j}}}}}}0{I`{{Ch{I`}}}}{{{d{I`}}Hf}{{n{{l{j}}}}}}000{{Id{d{If}}En}{{Gn{Ih}}}}{{Id{d{If}}}{{Gn{{h{Fn}}}}}}{{Id{h{Fn}}IfIj}{{Gn{Ah}}}}{{Id{Il{Fn}}{d{If}}}{{Gn{Ah}}}}{{Gb{d{Db}}{Cd{Bb}}}{{Gn{In}}}}","D":"Mb","p":[[10,"MassaRpcServer",0],[1,"reference"],[5,"String",196],[5,"Vec",197],[10,"Future",198],[5,"Box",199],[5,"Pin",200],[0,"mut"],[1,"usize"],[5,"With",201],[6,"Result",202],[1,"unit"],[5,"ReadOnlyBytecodeExecution",203],[5,"ReadOnlyCall",203],[6,"Address",204],[5,"AddressFilter",205],[5,"Slot",206],[6,"BlockId",207],[5,"DatastoreEntryInput",208],[5,"DeferredCallsQuoteRequest",203],[6,"EndorsementId",209],[5,"EventFilter",210],[5,"TimeInterval",211],[6,"OperationId",212],[5,"PageRequest",213],[6,"Option",214],[5,"Request",215],[5,"RpcModule",216],[5,"Layout",217],[5,"LayoutError",217],[10,"ConsensusController",218],[10,"ExecutionController",219],[5,"APIConfig",220],[10,"SelectorController",221],[10,"PoolController",222],[10,"ProtocolController",223],[5,"ProtocolConfig",224],[5,"Version",225],[5,"NodeId",226],[5,"Storage",227],[5,"MipStore",228],[5,"Public",0],[5,"API",0],[5,"ConsensusBroadcasts",229],[5,"PoolBroadcasts",230],[5,"ApiV2",0],[1,"bool"],[5,"Mutex",231],[5,"Condvar",232],[1,"tuple"],[5,"Arc",233],[5,"Wallet",234],[8,"RwLock",235],[5,"Private",0],[6,"IpAddr",236],[1,"u8"],[5,"OperationInput",237],[6,"SocketAddr",238],[5,"StopHandle",0],[6,"Error",239],[10,"RpcServer",0],[10,"ApiServer",0],[8,"RpcResult",240],[5,"TypeId",241],[10,"Any",241],[5,"Sender",242],[5,"PendingSubscriptionSink",243],[8,"SubscriptionResult",240],[10,"Serialize",244],[10,"Send",245],[10,"Clone",246],[10,"MassaApiServer",182],[5,"ApiRequest",211],[5,"PathBuf",247],[6,"ListType",211],[1,"u64"],[6,"ScrudOperation",211],[5,"BTreeSet",248],[8,"SecureShareOperation",212]],"r":[],"b":[[97,"impl-API%3CPublic%3E"],[98,"impl-API%3CApiV2%3E"],[99,"impl-API%3CPrivate%3E"],[135,"impl-RpcServer-for-API%3CPrivate%3E"],[136,"impl-ApiServer-for-API%3CApiV2%3E"],[137,"impl-RpcServer-for-API%3CPublic%3E"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFsACgAPAAkAHAATAEwABABWAAQAXQAEAHYABACFAAAAiAADAJAAHQCwAAYA"}],\ +["massa_api_exports",{"t":"FPPPGPGPFPPCCNNNNNNNNNNNNCCNNHHOCCCNNNNNNNNNNNNNNNNCCCCOCNNCONNNNNNNNNNNNNNNNNNNFFFOOOONNNNNNOOOOONNNNNNNOOOOONNNOOOOONNNNNNNNNNNNNNNNNOOONNNOONNNNNNNNNNNNNNNNNFFFONNNNNNNNNNNNNNNOONNNNNNNNNNNNNNOONNNNNNOOOOOOOONNNONNNNNNNNNNNNNNNNNFOOOOOOOONNONNNOONOOONNNONNOOOOOOOOOOOOOOOOOOOOOONNNNNFFONNNNONNNNNNNNONNNNNNNNNNNONNNNNNNNNNNNNFNNNNNNONNNNOOONNONNNNNNNGPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNPFFFFPFPPFFGFGOOOONNNNNNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNONNNNNNNNNNNNNNNNNNNNOOOOOOOOOONNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNONNNNNONNNNNNONNNNNNNFNNONNNOOOOOONONNNNNNOOOOOOOONNNNNNONFFNNNNNNNONNNNNNNNOOONNNNOOONNOOONNNNNNNNNNFFFONNNNNNNNNNNNONNNNNNNNNNNNNNONOONNNNNONNNNNNNNNNNNFONNONNNNNONNNNNNNNNNNNNFONNNNNNNNNNNNONNNNN","n":["ApiRequest","Blacklist","Create","Delete","ListType","Read","ScrudOperation","Search","TimeInterval","Update","Whitelist","address","block","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","config","datastore","deserialize","deserialize","display_if_true","display_option_bool","end","endorsement","error","execution","fmt","fmt","fmt","from","from","from","from","from_ref","into","into","into","into","into_request","into_request","into_request","into_request","ledger","node","operation","page","page_request","rolls","serialize","serialize","slot","start","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","AddressFilter","AddressInfo","CompactAddressInfo","active_rolls","address","address","address","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","candidate_balance","candidate_balance","candidate_datastore_keys","candidate_roll_count","candidate_rolls","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","compact","created_blocks","created_endorsements","created_operations","cycle_infos","deferred_credits","deserialize","deserialize","deserialize","final_balance","final_balance","final_datastore_keys","final_roll_count","final_rolls","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from_ref","from_ref","into","into","into","into_request","into_request","into_request","is_final","next_block_draws","next_endorsement_draws","serialize","serialize","serialize","thread","thread","to_owned","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","BlockInfo","BlockInfoContent","BlockSummary","block","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","content","creator","deserialize","deserialize","deserialize","fmt","fmt","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","id","id","into","into","into","into_request","into_request","into_request","is_candidate","is_discarded","is_final","is_final","is_in_blockclique","is_in_blockclique","is_stale","parents","serialize","serialize","serialize","slot","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","APIConfig","allow_hosts","base_operation_gas_cost","batch_request_limit","bind_api","bind_private","bind_public","bootstrap_blacklist_path","bootstrap_whitelist_path","borrow","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","deferred_calls_config","deferred_credits_delta","deserialize","draw_lookahead_period_count","enable_http","enable_ws","fmt","from","from_ref","genesis_timestamp","into","into_request","keypair","last_start_period","max_arguments","max_connections","max_datastore_value_length","max_function_name_length","max_gas_per_block","max_log_length","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_parameter_size","max_request_body_size","max_response_body_size","max_subscriptions_per_connection","minimal_fees","openrpc_spec_path","periods_per_cycle","ping_interval","sp_compilation_cost","t0","thread_count","to_owned","try_from","try_into","type_id","vzip","DatastoreEntryInput","DatastoreEntryOutput","address","borrow","borrow","borrow_mut","borrow_mut","candidate_value","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","deserialize","deserialize","final_value","fmt","fmt","fmt","from","from","from_ref","from_ref","into","into","into_request","into_request","key","serialize","serialize","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","EndorsementInfo","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deserialize","endorsement","fmt","fmt","from","from_ref","id","in_blocks","in_pool","into","into_request","is_final","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","ApiError","BadRequest","ConsensusError","ExecutionError","FactoryError","InconsistencyError","InternalServerError","MassaHashError","MissingCommandSender","MissingConfig","ModelsError","NotFound","ProtocolError","ReceiveChannelError","SendChannelError","TimeError","WalletError","WrongAPI","borrow","borrow_mut","fmt","fmt","from","from","from","from","from","from","into","into_request","source","to_string","try_from","try_into","type_id","vzip","ASC","DeferredCallResponse","DeferredCallsQuoteRequest","DeferredCallsQuoteResponse","DeferredCallsSlotResponse","Error","ExecuteReadOnlyResponse","Ok","Operation","ReadOnlyBytecodeExecution","ReadOnlyCall","ReadOnlyResult","Transfer","TransferContext","address","amount","available","block_id","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytecode","call","call_id","call_ids","caller_address","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","context","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","effective_amount_received","executed_at","fee","fee","fee","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","gas_cost","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","max_gas","max_gas","max_gas_request","max_gas_request","operation_datastore","output_events","parameter","params_size","price","result","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","slot","state_changes","succeed","target_address","target_function","target_slot","target_slot","to","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","LedgerInfo","borrow","borrow_mut","candidate_ledger_info","clone","clone_into","clone_to_uninit","clone_to_uninit","deserialize","final_ledger_info","fmt","fmt","from","from_ref","into","into_request","locked_balance","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","NodeStatus","borrow","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","config","connected_nodes","consensus_stats","current_cycle","current_cycle_time","current_time","deserialize","execution_stats","fmt","fmt","from","from_ref","into","into_request","last_slot","minimal_fees","network_stats","next_cycle_time","next_slot","node_id","node_ip","pool_stats","serialize","to_owned","to_string","try_from","try_into","type_id","version","vzip","OperationInfo","OperationInput","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","creator_public_key","deserialize","deserialize","fmt","fmt","fmt","from","from","from_ref","id","in_blocks","in_pool","into","into","into_request","into_request","is_operation_final","op_exec_status","operation","serialize","serialize","serialized_content","signature","thread","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","PageRequest","PagedVec","PagedVecV2","_total_count","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","content","deserialize","deserialize","from","from","from","from","from_ref","from_ref","into","into","into","into_request","into_request","into_request","limit","new","offset","res","serialize","serialize","serialize","to_owned","to_owned","total_count","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","RollsInfo","active_rolls","borrow","borrow_mut","candidate_rolls","clone","clone_into","clone_to_uninit","clone_to_uninit","deserialize","final_rolls","fmt","fmt","from","from_ref","into","into_request","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","SlotAmount","amount","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deserialize","fmt","from","from_ref","into","into_request","serialize","slot","to_owned","try_from","try_into","type_id","vzip"],"q":[[0,"massa_api_exports"],[80,"massa_api_exports::address"],[160,"massa_api_exports::block"],[232,"massa_api_exports::config"],[286,"massa_api_exports::datastore"],[328,"massa_api_exports::endorsement"],[353,"massa_api_exports::error"],[389,"massa_api_exports::execution"],[611,"massa_api_exports::ledger"],[635,"massa_api_exports::node"],[672,"massa_api_exports::operation"],[715,"massa_api_exports::page"],[768,"massa_api_exports::rolls"],[792,"massa_api_exports::slot"],[812,"core::result"],[813,"serde::de"],[814,"alloc::string"],[815,"core::option"],[816,"core::fmt"],[817,"tonic::request"],[818,"serde::ser"],[819,"core::any"],[820,"massa_models::error"],[821,"massa_versioning::versioning_factory"],[822,"massa_hash::error"],[823,"massa_time::error"],[824,"massa_wallet::error"],[825,"core::error"],[826,"core::clone"],[827,"alloc::vec"]],"i":[0,16,14,14,0,14,0,14,0,14,16,0,0,3,14,16,7,3,14,16,7,3,3,3,3,0,0,3,7,0,0,3,0,0,0,3,14,16,3,14,16,7,3,3,14,16,7,3,14,16,7,0,0,0,0,7,0,3,7,0,3,3,14,16,3,14,16,7,3,14,16,7,3,14,16,7,3,14,16,7,0,0,0,22,20,22,21,20,22,21,20,22,21,20,22,20,20,22,20,21,20,21,20,21,20,20,20,20,20,20,20,22,21,20,22,20,20,22,20,20,22,22,21,21,20,22,21,20,21,20,22,21,20,22,21,21,20,20,20,22,21,20,22,20,21,20,22,21,20,22,21,20,22,21,20,22,21,20,22,21,0,0,0,24,23,24,25,23,24,25,23,24,25,23,24,25,23,24,25,23,25,23,24,25,23,23,24,25,25,23,24,25,23,24,25,23,25,23,24,25,23,24,25,24,24,24,25,24,25,25,25,23,24,25,25,23,24,25,23,25,23,24,25,23,24,25,23,24,25,23,24,25,0,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,0,0,27,27,28,27,28,28,27,28,27,28,27,28,27,28,28,27,28,28,27,28,27,28,27,28,27,28,27,27,28,27,28,28,27,28,27,28,27,28,27,28,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,41,0,0,0,0,37,0,37,41,0,0,0,0,0,39,42,44,42,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,39,45,45,46,40,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,40,42,37,38,39,40,41,42,43,44,45,46,42,38,39,40,42,37,38,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,42,37,38,39,40,41,42,43,44,45,46,38,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,39,40,43,44,39,38,40,43,44,38,37,38,39,40,41,42,43,44,45,46,46,38,42,40,40,43,44,42,37,38,39,40,41,42,43,44,45,46,38,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,37,38,39,40,41,42,43,44,45,46,0,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,0,50,49,50,49,49,49,49,50,50,49,50,49,49,50,49,49,49,49,49,50,49,50,49,49,49,49,50,49,50,50,49,49,49,50,49,50,49,50,49,50,49,0,0,0,51,51,54,53,51,54,53,51,53,51,53,51,53,53,54,53,51,54,53,53,51,53,51,54,53,51,54,53,54,51,54,51,51,54,53,51,53,53,51,54,53,51,54,53,51,54,53,51,54,53,0,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,0,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59],"f":"`````````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0``{c{{j{f}}}l}{c{{j{n}}}l}{{A`{b{Ab}}}Ad}{{{Af{A`}}{b{Ab}}{b{Ab}}{b{Ab}}}Ad}````{{{b{f}}{b{dAh}}}Aj}{{{b{Al}}{b{dAh}}}{{j{hAn}}}}{{{b{B`}}{b{dAh}}}{{j{hAn}}}}{cc{}}000{{{b{c}}}c{}}{ce{}{}}000{c{{Bb{e}}}{}{}}000``````{{{b{f}}c}jBd}{{{b{n}}c}jBd}``{{{b{c}}}e{}{}}{{{b{c}}}Ad{}}0{c{{j{e}}}{}{}}0000000{{{b{c}}}Bf{}}0007777```````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00`````{{{b{Bh}}}Bh}{{{b{Bj}}}Bj}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{Bh}}}Bl}`````{c{{j{Bh}}}l}{c{{j{Bl}}}l}{c{{j{Bj}}}l}`````{{{b{Bh}}{b{dAh}}}Aj}0{{{b{Bl}}{b{dAh}}}Aj}0{{{b{Bj}}{b{dAh}}}Aj}0{cc{}}00{{{b{c}}}c{}}0{ce{}{}}00{c{{Bb{e}}}{}{}}00```{{{b{Bh}}c}jBd}{{{b{Bl}}c}jBd}{{{b{Bj}}c}jBd}``{{{b{c}}}e{}{}}0{{{b{c}}}Ad{}}00{c{{j{e}}}{}{}}00000{{{b{c}}}Bf{}}00888````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Bn}}}Bn}{{{b{C`}}}C`}{{{b{Cb}}}Cb}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}00``{c{{j{Bn}}}l}{c{{j{C`}}}l}{c{{j{Cb}}}l}{{{b{Bn}}{b{dAh}}}Aj}0{{{b{C`}}{b{dAh}}}Aj}{{{b{Cb}}{b{dAh}}}Aj}0{cc{}}00{{{b{c}}}c{}}00``{ce{}{}}00{c{{Bb{e}}}{}{}}00````````{{{b{Bn}}c}jBd}{{{b{C`}}c}jBd}{{{b{Cb}}c}jBd}`{{{b{c}}}e{}{}}00{{{b{c}}}Ad{}}0{c{{j{e}}}{}{}}00000{{{b{c}}}Bf{}}00888`````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{Cd}}}Cd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}``{c{{j{Cd}}}l}```{{{b{Cd}}{b{dAh}}}Aj}{cc{}}{{{b{c}}}c{}}`{ce{}{}}{c{{Bb{e}}}{}{}}``````````````````````><<;1```::99`{{{b{Cf}}}Cf}{{{b{Ch}}}Ch}9988{c{{j{Cf}}}l}{c{{j{Ch}}}l}`{{{b{Cf}}{b{dAh}}}Aj}{{{b{Ch}}{b{dAh}}}Aj}099887766`{{{b{Cf}}c}jBd}{{{b{Ch}}c}jBd}{{{b{c}}}e{}{}}0{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}000{{{b{c}}}Bf{}}0==`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Cj}}}Cj}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{c{{j{Cj}}}l}`{{{b{Cj}}{b{dAh}}}Aj}0{cc{}}{{{b{c}}}c{}}```{ce{}{}}{c{{Bb{e}}}{}{}}`{{{b{Cj}}c}jBd}?>==<2``````````````````;:{{{b{Cl}}{b{dAh}}}Aj}0{CnCl}{D`Cl}{DbCl}8{DdCl}{DfCl}87{{{b{Cl}}}{{Af{{b{Dh}}}}}}{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}0{{{b{c}}}Bf{}}<``````````````````{{{b{c}}}{{b{e}}}{}{}}000000000{{{b{dc}}}{{b{de}}}{}{}}000000000`````{{{b{Dj}}}Dj}{{{b{Dl}}}Dl}{{{b{Dn}}}Dn}{{{b{E`}}}E`}{{{b{Eb}}}Eb}{{{b{Ed}}}Ed}{{{b{Ef}}}Ef}{{{b{Eh}}}Eh}{{{b{Ej}}}Ej}{{{b{El}}}El}{{{b{c}}{b{de}}}h{}{}}000000000{{{b{c}}}h{}}000000000``{c{{j{Dj}}}l}{c{{j{Dl}}}l}{c{{j{Dn}}}l}{c{{j{E`}}}l}{c{{j{Eb}}}l}{c{{j{Ed}}}l}{c{{j{Ef}}}l}{c{{j{Eh}}}l}{c{{j{Ej}}}l}{c{{j{El}}}l}`````{{{b{Dj}}{b{dAh}}}Aj}{{{b{Dl}}{b{dAh}}}Aj}0{{{b{Dn}}{b{dAh}}}Aj}{{{b{E`}}{b{dAh}}}Aj}{{{b{Eb}}{b{dAh}}}Aj}{{{b{Ed}}{b{dAh}}}Aj}{{{b{Ef}}{b{dAh}}}Aj}{{{b{Eh}}{b{dAh}}}Aj}{{{b{Ej}}{b{dAh}}}Aj}{{{b{El}}{b{dAh}}}Aj}{cc{}}000000000`{{{b{c}}}c{}}000000000`{ce{}{}}000000000{c{{Bb{e}}}{}{}}000000000``````````{{{b{Dj}}c}jBd}{{{b{Dl}}c}jBd}{{{b{Dn}}c}jBd}{{{b{E`}}c}jBd}{{{b{Eb}}c}jBd}{{{b{Ed}}c}jBd}{{{b{Ef}}c}jBd}{{{b{Eh}}c}jBd}{{{b{Ej}}c}jBd}{{{b{El}}c}jBd}````````{{{b{c}}}e{}{}}000000000{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}0000000000000000000{{{b{c}}}Bf{}}000000000??????????`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{En}}}En}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{c{{j{En}}}l}`{{{b{En}}{b{dAh}}}Aj}0{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{Bb{e}}}{}{}}`{{{b{En}}c}jBd}?>==<2`;:`{{{b{F`}}}F`}98``````{c{{j{F`}}}l}`{{{b{F`}}{b{dAh}}}Aj}07654````````{{{b{F`}}c}jBd}{{{b{c}}}e{}{}}{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}0{{{b{c}}}Bf{}}`:``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Fb}}}Fb}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}`{c{{j{Fd}}}l}{c{{j{Fb}}}l}{{{b{Fd}}{b{dAh}}}Aj}{{{b{Fb}}{b{dAh}}}Aj}0{cc{}}0{{{b{c}}}c{}}```{ce{}{}}0{c{{Bb{e}}}{}{}}0```{{{b{Fd}}c}jBd}{{{b{Fb}}c}jBd}```{{{b{c}}}e{}{}}{{{b{c}}}Ad{}}{c{{j{e}}}{}{}}000{{{b{c}}}Bf{}}077````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{{Ff{c}}}}}{{Ff{c}}}Fh}{{{b{{Fj{c}}}}}{{Fj{c}}}Fh}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0`{c{{j{Fl}}}l}{c{{j{{Fj{e}}}}}lFn}{cc{}}0{{{Ff{c}}}{{Fj{c}}}{}}1{{{b{c}}}c{}}0{ce{}{}}00{c{{Bb{e}}}{}{}}00`{{{G`{c}}{Af{Fl}}}{{Ff{c}}}Gb}``{{{b{{Ff{c}}}}e}jGbBd}{{{b{Fl}}c}jBd}{{{b{{Fj{c}}}}e}jGbBd}{{{b{c}}}e{}{}}0`{c{{j{e}}}{}{}}00000{{{b{c}}}Bf{}}00888``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{Gd}}}Gd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{c{{j{Gd}}}l}`{{{b{Gd}}{b{dAh}}}Aj}0{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{Bb{e}}}{}{}}{{{b{Gd}}c}jBd}>{{{b{c}}}Ad{}}>>=3``<;{{{b{Gf}}}Gf}:9{c{{j{Gf}}}l}{{{b{Gf}}{b{dAh}}}Aj}8765{{{b{Gf}}c}jBd}`{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}0{{{b{c}}}Bf{}}:","D":"BFh","p":[[1,"reference"],[0,"mut"],[5,"TimeInterval",0],[1,"unit"],[6,"Result",812],[10,"Deserializer",813],[5,"ApiRequest",0],[1,"bool"],[1,"str"],[5,"String",814],[6,"Option",815],[5,"Formatter",816],[8,"Result",816],[6,"ScrudOperation",0],[5,"Error",816],[6,"ListType",0],[5,"Request",817],[10,"Serializer",818],[5,"TypeId",819],[5,"AddressInfo",80],[5,"AddressFilter",80],[5,"CompactAddressInfo",80],[5,"BlockInfo",160],[5,"BlockInfoContent",160],[5,"BlockSummary",160],[5,"APIConfig",232],[5,"DatastoreEntryInput",286],[5,"DatastoreEntryOutput",286],[5,"EndorsementInfo",328],[6,"ApiError",353],[6,"ModelsError",820],[6,"FactoryError",821],[6,"MassaHashError",822],[6,"TimeError",823],[6,"WalletError",824],[10,"Error",825],[6,"ReadOnlyResult",389],[5,"ExecuteReadOnlyResponse",389],[5,"ReadOnlyBytecodeExecution",389],[5,"ReadOnlyCall",389],[6,"TransferContext",389],[5,"Transfer",389],[5,"DeferredCallsQuoteRequest",389],[5,"DeferredCallsQuoteResponse",389],[5,"DeferredCallResponse",389],[5,"DeferredCallsSlotResponse",389],[5,"LedgerInfo",611],[5,"NodeStatus",635],[5,"OperationInfo",672],[5,"OperationInput",672],[5,"PagedVec",715],[10,"Clone",826],[5,"PagedVecV2",715],[5,"PageRequest",715],[10,"Deserialize",813],[5,"Vec",827],[10,"Serialize",818],[5,"RollsInfo",768],[5,"SlotAmount",792]],"r":[],"b":[[118,"impl-Debug-for-AddressInfo"],[119,"impl-Display-for-AddressInfo"],[120,"impl-Debug-for-CompactAddressInfo"],[121,"impl-Display-for-CompactAddressInfo"],[122,"impl-Debug-for-AddressFilter"],[123,"impl-Display-for-AddressFilter"],[184,"impl-Display-for-BlockInfo"],[185,"impl-Debug-for-BlockInfo"],[187,"impl-Display-for-BlockSummary"],[188,"impl-Debug-for-BlockSummary"],[304,"impl-Debug-for-DatastoreEntryOutput"],[305,"impl-Display-for-DatastoreEntryOutput"],[336,"impl-Debug-for-EndorsementInfo"],[337,"impl-Display-for-EndorsementInfo"],[373,"impl-Display-for-ApiError"],[374,"impl-Debug-for-ApiError"],[375,"impl-From%3CModelsError%3E-for-ApiError"],[376,"impl-From%3CFactoryError%3E-for-ApiError"],[377,"impl-From%3CMassaHashError%3E-for-ApiError"],[379,"impl-From%3CTimeError%3E-for-ApiError"],[380,"impl-From%3CWalletError%3E-for-ApiError"],[480,"impl-Debug-for-ExecuteReadOnlyResponse"],[481,"impl-Display-for-ExecuteReadOnlyResponse"],[621,"impl-Display-for-LedgerInfo"],[622,"impl-Debug-for-LedgerInfo"],[650,"impl-Debug-for-NodeStatus"],[651,"impl-Display-for-NodeStatus"],[685,"impl-Debug-for-OperationInfo"],[686,"impl-Display-for-OperationInfo"],[779,"impl-Debug-for-RollsInfo"],[780,"impl-Display-for-RollsInfo"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAPgBVAAOAAsAHAABACQAAgArAAAAMAADADoAAQA+ABIAWAAFAGMABQBvAAIAdwAFAIAAAQCFAAIAiwACAJAAEAClAA4AtgAHAMEAAgDJAAIA1AACANgAEADyAAEA9QACAPoAAAD+AAAAAAEAAAMBAAAaAQQAIgEDACcBBwAwAQIANQEBADkBAQA8AQwASgEFAFEBAQBUAQAAWQEAAFsBBgB0AQYAfAEBAH8BBgCYARMAsQEdANEBCQDgAQoA9gEJAAsCCQAfAgkAMQIyAGUCAQBoAgQAbgIBAHECAABzAgAAdQIGAH0CAQCAAgIAiQIAAIsCAQCOAgAAkAIAAJkCBQCgAgAAowIGAKsCBACyAgAAuAIBAL0CAQDCAgkAzwIPAOECAADjAgEA6AICAO4CEgADAwEABgMEAAwDAQAPAwAAEQMHABsDBgAjAwAAJQMBACgDBAA="}],\ +["massa_async_pool",{"t":"FFIFFFFFFFFFFFFFFOOOOOOOOOOOOOOOOQCOOQCOOOOOOQOOOOQOOQOOQOOOOOQOOOQOOOOOCOOOOOOQOOCOOQOOOOCOOQOOOOOOOOOOOQOOOOOOOOOQOOOQFFFNONNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNOONNNNNNNNNNONNNFNNNNNNNNNNOOOOONNNNNFFIFFFFFFFFFFOOOOOOOOOOONNNOOOONNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONONNNNNNONNNNNNNOOOOOOOOONNNNNNNNNNNNNNNNNNNNOONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNOOONNNNNNNOOOOOONNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOONNNNNNNNNNNNFFFSSSSSSSSSSSSSNOOOONNNNNNNNNOONNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNOONNNN","n":["AsyncMessage","AsyncMessageDeserializer","AsyncMessageId","AsyncMessageIdDeserializer","AsyncMessageIdSerializer","AsyncMessageInfo","AsyncMessageSerializer","AsyncMessageTrigger","AsyncMessageTriggerSerializer","AsyncMessageUpdate","AsyncPool","AsyncPoolChanges","AsyncPoolChangesDeserializer","AsyncPoolChangesSerializer","AsyncPoolConfig","AsyncPoolDeserializer","AsyncPoolSerializer","address","address_deserializer","address_serializer","address_serializer","amount_deserializer","amount_serializer","async_message_deserializer_db","async_message_id_deserializer","async_message_id_serializer","async_message_serializer","async_pool_changes_length","bool_deserializer","bool_serializer","can_be_executed","can_be_executed","can_be_executed","can_be_executed_key","changes","coins","coins","coins_key","config","config","datastore_key","db","denominator_deserializer","destination","destination","destination_key","emission_index","emission_index","emission_index_deserializer","emission_index_deserializer","emission_index_key","emission_slot","emission_slot","emission_slot_key","fee","fee","fee_key","for_db","for_db","function","function","function_deserializer","function_key","function_params","function_params","function_params_deserializer","function_params_key","function_params_serializer","function_serializer","id_deserializer","id_serializer","key_serializer","mapping_grpc","max_function_length","max_function_params_length","max_gas","max_gas","max_gas","max_gas_deserializer","max_gas_key","max_key_length","max_length","message","message_deserializer_db","message_id_deserializer","message_id_prefix","message_id_serializer","message_info_cache","message_serializer","numerator_deserializer","pool","sender","sender","sender_key","set_update_or_delete_message_deserializer","set_update_or_delete_message_serializer","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","thread_count","trigger","trigger","trigger","trigger_deserializer","trigger_key","trigger_serializer","u64_deserializer","u64_serializer","u64_serializer","u64_serializer","u64_serializer","validity_end","validity_end","validity_end","validity_end_key","validity_start","validity_start","validity_start","validity_start_key","AsyncPoolChanges","AsyncPoolChangesDeserializer","AsyncPoolChangesSerializer","apply","async_pool_changes_length","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from_ref","id_deserializer","id_serializer","into","into","into","into_request","into_request","into_request","new","new","push_activate","push_add","push_delete","serialize","serialize","set_update_or_delete_message_deserializer","set_update_or_delete_message_serializer","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_serializer","vzip","vzip","vzip","AsyncPoolConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","from","from_ref","into","into_request","max_function_length","max_function_params_length","max_key_length","max_length","thread_count","to_owned","try_from","try_into","type_id","vzip","AsyncMessage","AsyncMessageDeserializer","AsyncMessageId","AsyncMessageIdDeserializer","AsyncMessageIdSerializer","AsyncMessageInfo","AsyncMessageSerializer","AsyncMessageTrigger","AsyncMessageTriggerDeserializer","AsyncMessageTriggerSerializer","AsyncMessageUpdate","AsyncMessageUpdateDeserializer","AsyncMessageUpdateSerializer","address","address_deserializer","address_deserializer","address_deserializer","address_serializer","address_serializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","amount_serializer","apply","apply","apply","bool_deserializer","bool_deserializer","bool_serializer","bool_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","can_be_executed","can_be_executed","can_be_executed","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","coins","compute_id","datastore_key","default","default","default","default","default","default","denominator_deserializer","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","destination","destination","emission_index","emission_index","emission_index_deserializer","emission_index_deserializer","emission_index_deserializer","emission_slot","emission_slot","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fee","fee","fmt","fmt","fmt","fmt","for_db","for_db","for_db","for_db","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","function","function","function_deserializer","function_deserializer","function_params","function_params","function_params_deserializer","function_params_deserializer","function_params_serializer","function_params_serializer","function_serializer","function_serializer","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","key_serializer","key_serializer","max_gas","max_gas","max_gas","max_gas_deserializer","max_gas_deserializer","new","new","new","new","new","new","new","new","new","numerator_deserializer","sender","sender","serialize","serialize","serialize","serialize","serialize","serialize","serialize","slot_deserializer","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","slot_serializer","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","trigger","trigger","trigger","trigger_deserializer","trigger_deserializer","trigger_serializer","trigger_serializer","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u64_serializer","u64_serializer","u64_serializer","validity_end","validity_end","validity_end","validity_start","validity_start","validity_start","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AsyncPool","AsyncPoolDeserializer","AsyncPoolSerializer","CAN_BE_EXECUTED_IDENT","COINS_IDENT","DESTINATION_IDENT","EMISSION_INDEX_IDENT","EMISSION_SLOT_IDENT","FEE_IDENT","FUNCTION_IDENT","FUNCTION_PARAMS_IDENT","MAX_GAS_IDENT","SENDER_IDENT","TRIGGER_IDENT","VALIDITY_END_IDENT","VALIDITY_START_IDENT","apply_changes_to_batch","async_message_deserializer_db","async_message_id_deserializer","async_message_id_serializer","async_message_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","config","db","default","delete_entry","deserialize","fetch_message","fetch_messages","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","is_key_value_valid","message_deserializer_db","message_id_deserializer","message_id_serializer","message_info_cache","message_serializer","new","new","new","put_entry","recompute_message_info_cache","reset","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_deserializer","u64_serializer","update_entry","vzip","vzip","vzip"],"q":[[0,"massa_async_pool"],[120,"massa_async_pool::changes"],[179,"massa_async_pool::config"],[200,"massa_async_pool::message"],[510,"massa_async_pool::pool"],[586,"nom::internal"],[587,"nom::error"],[588,"core::result"],[589,"serde::de"],[590,"core::fmt"],[591,"tonic::request"],[592,"alloc::vec"],[593,"massa_serialization"],[594,"serde::ser"],[595,"core::any"],[596,"massa_models::slot"],[597,"massa_models::address"],[598,"alloc::string"],[599,"massa_models::amount"],[600,"core::option"],[601,"massa_db_exports::db_batch"],[602,"alloc::collections::btree::map"],[603,"massa_db_exports::controller"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,36,33,35,36,35,47,47,46,46,6,36,35,22,29,28,0,0,22,28,0,0,44,32,44,31,22,28,0,22,28,31,36,0,22,28,0,22,28,0,35,36,22,28,36,0,22,28,36,0,35,35,6,5,33,0,27,27,22,29,28,36,0,27,27,0,44,44,0,44,44,44,31,0,22,28,0,6,5,31,36,30,35,27,22,29,28,36,0,35,47,5,46,30,35,22,29,28,0,22,29,28,0,0,0,0,2,6,5,6,2,5,6,2,2,2,2,5,2,6,2,2,2,2,2,2,2,5,6,2,2,6,5,5,6,2,5,6,2,5,6,2,2,2,5,2,6,5,2,5,6,2,5,6,2,5,6,2,5,5,6,2,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,0,0,0,0,0,0,0,0,0,0,0,32,38,34,36,37,33,35,38,36,37,35,22,29,28,38,36,37,35,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,22,29,28,30,31,32,33,34,22,35,36,29,28,30,31,32,33,34,22,35,36,29,28,30,31,32,33,34,22,35,36,29,28,22,28,22,32,37,30,33,22,35,28,31,38,31,32,34,22,36,28,22,28,22,28,38,31,36,22,28,32,22,29,28,32,32,32,32,22,22,22,22,29,29,29,29,28,28,28,28,22,28,32,22,29,28,37,38,35,36,37,38,30,31,32,33,34,22,35,36,29,29,28,30,31,32,33,34,22,35,36,29,28,22,28,38,36,22,28,38,36,37,35,37,35,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,33,34,22,29,28,38,36,37,38,30,31,33,34,22,35,36,31,22,28,37,30,32,33,22,35,28,38,31,36,37,30,35,30,31,32,33,34,22,35,36,29,28,22,29,28,38,36,37,35,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,37,38,30,31,32,33,34,22,35,36,29,28,37,30,35,22,29,28,22,29,28,37,38,30,31,32,33,34,22,35,36,29,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,47,47,46,46,46,47,44,46,47,44,44,44,44,44,44,46,44,47,44,44,46,47,44,44,46,47,44,46,47,44,44,44,44,44,44,44,46,47,44,44,44,44,46,44,46,47,44,46,47,44,46,47,44,47,46,44,46,47,44],"f":"```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{f{bd}}d}h}`{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{d}}}d}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}{{}j}{{}d}{{{f{l}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}dc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{d}}}Aj}{{{f{d}}{f{d}}}Al}{{{f{c}}{f{e}}}Al{}{}}000{{{f{d}}{f{bAn}}}B`}{cc{}}00{{{f{c}}}c{}}``{ce{}{}}00{c{{Bb{e}}}{}{}}00:{{nBdBfBdBh}l}{{{f{bd}}Bj}h}{{{f{bd}}BjBl}h}1{{{f{j}}{f{d}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{d}}c}AhCb}``{{{f{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{f{c}}}Cd{}}00`999`{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Cf}}}Cf}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}{{{f{Cf}}{f{bAn}}}B`}{cc{}}{{{f{c}}}c{}}{ce{}{}}{c{{Bb{e}}}{}{}}`````<;;:1````````````````````````{{{f{bBl}}Ch}h}{{{f{bCj}}Ch}h}{{{f{bCh}}Ch}h}````<<<<<<<<<<<<;;;;;;;;;;;;```{{{f{Cl}}}Cl}{{{f{Cn}}}Cn}{{{f{D`}}}D`}{{{f{Db}}}Db}{{{f{Dd}}}Dd}{{{f{Bl}}}Bl}{{{f{Df}}}Df}{{{f{Dh}}}Dh}{{{f{Cj}}}Cj}{{{f{Ch}}}Ch}{{{f{c}}{f{be}}}h{}{}}000000000{{{f{c}}}h{}}000000000``{{{f{Bl}}}Bj}`{{}Dj}{{}Cl}{{}Db}{{}Bl}{{}Df}{{}Ch}`{{{f{Dl}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}Chc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{{{f{Cn}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}Bjc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{D`}}}Aj}{{{f{Dd}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}D`c}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{Bl}}}Aj}{{{f{Dh}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}Blc}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{c{{Ah{Ch}}}Aj}`````````{{{f{D`}}{f{D`}}}Al}{{{f{Bl}}{f{Bl}}}Al}{{{f{Cj}}{f{Cj}}}Al}{{{f{Ch}}{f{Ch}}}Al}{{{f{c}}{f{e}}}Al{}{}}000000000000000``{{{f{D`}}{f{bAn}}}B`}{{{f{Bl}}{f{bAn}}}B`}{{{f{Cj}}{f{bAn}}}B`}{{{f{Ch}}{f{bAn}}}B`}````{cc{}}0000000000{BlCj}1{{{f{c}}}c{}}000000000````````````{ce{}{}}00000000000{c{{Bb{e}}}{}{}}00000000000```````{AlDj}{{nBfBdBhAl}Dl}{{}Cl}{nCn}{{}Db}{BhDd}{{DnBdE`E`EbBdEdEdDnDn{Bn{n}}{Ef{D`}}{Ef{Al}}}Bl}{AlDf}{{nBfBdBhAl}Dh}```{{{f{Dj}}{f{Ch}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{Cl}}{f{Bj}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{D`}}c}AhCb}{{{f{Db}}{f{D`}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{Bl}}c}AhCb}{{{f{Df}}{f{Bl}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{Ch}}c}AhCb}``````{{{f{c}}}e{}{}}000000000```````{c{{Ah{e}}}{}{}}00000000000000000000000{{{f{c}}}Cd{}}00000000000`````````{ce{}{}}00000000000````````````````{{{f{bEh}}{f{d}}{f{bEj}}}h}````{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{Eh}}}Eh}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}``{{}El}{{{f{Eh}}{f{Bj}}{f{bEj}}}h}{{{f{En}}{f{{A`{n}}}}}{{Ab{{f{{A`{n}}}}{F`{BjBl}}c}}}{{Ad{{f{{A`{n}}}}}}{Af{{f{{A`{n}}}}}}}}{{{f{Eh}}{f{Bj}}}{{Ef{Bl}}}}{{{f{Eh}}{Bn{{f{Bj}}}}}{{Bn{{Fb{{f{Bj}}{Ef{Bl}}}}}}}}{cc{}}00{{{f{c}}}c{}}==={c{{Bb{e}}}{}{}}00{{{f{Eh}}{f{{A`{n}}}}{f{{A`{n}}}}}Al}`````8{{nBdBfBdBh}En}{{CfFd}Eh}{{{f{Eh}}{f{Bj}}Bl{f{bEj}}}h}{{{f{bEh}}}h}0{{{f{El}}{f{{F`{BjBl}}}}{f{b{Bn{n}}}}}{{Ah{hC`}}}}{{{f{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{f{c}}}Cd{}}00``{{{f{Eh}}{f{Bj}}Ch{f{bEj}}}h}{ce{}{}}00","D":"AFb","p":[[0,"mut"],[5,"AsyncPoolChanges",120],[1,"reference"],[1,"unit"],[5,"AsyncPoolChangesSerializer",120],[5,"AsyncPoolChangesDeserializer",120],[1,"u8"],[1,"slice"],[8,"IResult",586],[10,"ParseError",587],[10,"ContextError",587],[6,"Result",588],[10,"Deserializer",589],[1,"bool"],[5,"Formatter",590],[8,"Result",590],[5,"Request",591],[1,"u64"],[1,"u16"],[1,"u32"],[8,"AsyncMessageId",200],[5,"AsyncMessage",200],[5,"Vec",592],[6,"SerializeError",593],[10,"Serializer",594],[5,"TypeId",595],[5,"AsyncPoolConfig",179],[5,"AsyncMessageUpdate",200],[5,"AsyncMessageInfo",200],[5,"AsyncMessageIdSerializer",200],[5,"AsyncMessageIdDeserializer",200],[5,"AsyncMessageTrigger",200],[5,"AsyncMessageTriggerSerializer",200],[5,"AsyncMessageTriggerDeserializer",200],[5,"AsyncMessageSerializer",200],[5,"AsyncMessageDeserializer",200],[5,"AsyncMessageUpdateSerializer",200],[5,"AsyncMessageUpdateDeserializer",200],[5,"Slot",596],[6,"Address",597],[5,"String",598],[5,"Amount",599],[6,"Option",600],[5,"AsyncPool",510],[8,"DBBatch",601],[5,"AsyncPoolSerializer",510],[5,"AsyncPoolDeserializer",510],[5,"BTreeMap",602],[1,"tuple"],[8,"ShareableMassaDBController",603]],"r":[[0,200],[1,200],[2,200],[3,200],[4,200],[5,200],[6,200],[7,200],[8,200],[9,200],[10,510],[11,120],[12,120],[13,120],[14,179],[15,510],[16,510]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJkBRAACAAAABAADAA0AAAATAAsAIAAAACoAAQAxAAEAOgABAD4AAABCAAAARAAFAE0AAABPAAAAVAABAFcAAwBfAAUAZwAAAGkAAABrAAUAcgAAAHYAAAB6AAAAfQATAJQAAgCaAAQAogARALUABQC8AAAAvgAAAMQABADKAAAAzAADANcACQDkABsAAQEAAAMBHQAlAQcALgECADIBAAA3AQIAPAETAFIBBwBlAQAAZwEJAHMBAQB3AQUAiQENAJgBAACaAQEAngEDAKMBAgCoAQAAqgECAK4BEADAAQAAwgEqAO4BAADxAQAA8wELAAICDAAQAgwAHgIBACECAAAnAgAAKwICAC8CBAA6AgwASAICAA=="}],\ +["massa_bootstrap",{"t":"PPPGFFFGPPPFPPGFFFPFPPPFPPPFPPPPPPGPPPPPPPPPPPPPPPPPCOOOOOOOOOOOOONNOOOCOOOONNNNOOCOONHOONNNOONOOOCOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOCOONOOOOOOOOOOONOOOOOOCOCOOOOHOOOOOOOOCNNNOOONNNOOOOOONCOOOOOOOOOOOOOOOOOOOOKKCNCMMNFSFNNNNONNNNNNNNNONNNNNNNNNNNNNONNNNONNONNNONNNNNNNNNNNNONNNNFFSNNNNNNNNNNNNNNONNNNNNNNNNNNNOOOONNNNOONNONNNNNONNNNNNNNNNNNOONNNNOKFHNNMNHNNNNHNNHHNNNNNHHNNNNNNNHPGPPPPPPPPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFSPGSPNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNPPPPGFFPPPPPPPGFFPPPPPPGGPPPNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNOOOOOOOONNNNNNNNNNOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNOOOOOOOOOOOOOOOOOFFONNNNONNNNNNNNONONNNNNNNNNOONNOOHONNNOHNHHNHNNNNNNNNNNNNOOONNOOFFFFPPPGNNNNOOOOONNNNNNNNNNOOOONNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOHHFFNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOON","n":["AskBootstrapPart","AskBootstrapPeers","BlackListed","BootstrapClientMessage","BootstrapClientMessageDeserializer","BootstrapClientMessageSerializer","BootstrapConfig","BootstrapError","BootstrapError","BootstrapError","BootstrapFinished","BootstrapManager","BootstrapPart","BootstrapPeers","BootstrapServerMessage","BootstrapServerMessageDeserializer","BootstrapServerMessageDeserializerArgs","BootstrapServerMessageSerializer","BootstrapSuccess","BootstrapTcpListener","BootstrapTime","Both","ClockError","DefaultConnector","DeserializeError","FinalStateError","GeneralError","GlobalBootstrapState","IPv4","IPv6","IncompatibleVersionError","InitListError","Interrupted","IoError","IpType","MassaConsensusError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","PoSError","ProtocolError","ReceivedError","SerializationError","SerializeError","SlotTooOld","TimeError","TimedOut","UnexpectedClientMessage","UnexpectedConnectionDrop","UnexpectedServerMessage","WhiteListed","bindings","block_id_set_deserializer","block_id_set_serializer","block_ids_step_deserializer","block_ids_step_serializer","bool_deserializer","bool_serializer","bootstrap_blacklist_path","bootstrap_list","bootstrap_protocol","bootstrap_timeout","bootstrap_whitelist_path","bootstrapable_graph_deserializer","bootstrapable_graph_serializer","borrow","borrow_mut","cache_duration","chain_id","chain_id","client","connect_timeout","consensus_bootstrap_part_size","datastore_key_deserializer","datastore_val_deserializer","deref","deref_mut","deserialize","drop","endorsement_count","endorsement_count","error","events","final_state","from","get_state","graph","id_deserializer","init","into","into_request","ip_list_max_size","keep_ledger","layout_raw","length_bootstrap_error","length_error_deserializer","listen_addr","listener","listener_stopper","main_handle","max_advertise_length","max_advertise_length","max_bootstrap_blocks_length","max_bootstrap_blocks_length","max_bootstrap_error_length","max_bootstrap_error_length","max_changes_slot_count","max_changes_slot_count","max_clock_delta","max_consensus_block_ids","max_credits_length","max_credits_length","max_datastore_entry_count","max_datastore_entry_count","max_datastore_key_length","max_datastore_key_length","max_datastore_value_length","max_datastore_value_length","max_denunciation_changes_length","max_denunciation_changes_length","max_denunciations_per_block_header","max_denunciations_per_block_header","max_executed_ops_length","max_executed_ops_length","max_final_state_elements_size","max_final_state_elements_size","max_function_name_length","max_ledger_changes_count","max_ledger_changes_count","max_listeners_per_peer","max_listeners_per_peer","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations_per_block","max_operations_per_block","max_ops_changes_length","max_ops_changes_length","max_parameters_size","max_ping","max_production_stats_length","max_production_stats_length","max_rolls_length","max_rolls_length","max_simultaneous_bootstraps","max_versioning_elements_size","max_versioning_elements_size","message_id_deserializer","messages","mip_store_stats_block_considered","mip_store_stats_block_considered","new","opt_last_slot_before_downtime_deserializer","opt_last_slot_before_downtime_serializer","opt_last_start_period_deserializer","opt_last_start_period_serializer","opt_vec_u8_deserializer","opt_vec_u8_serializer","peers","peers_deserializer","peers_serializer","per_ip_min_interval","periods_per_cycle","pointer_metadata","poll","randomness_size_bytes","rate_limit","read_error_timeout","read_timeout","retry_delay","server","server","settings","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","start_bootstrap_server","state_new_elements_length_deserializer","state_step_deserializer","state_step_serializer","stream_batch_updates_length_deserializer","thread_count","thread_count","time_deserializer","time_serializer","tools","try_from","try_into","type_id","u32_serializer","u32_serializer","u64_serializer","upcast_any_box","upcast_any_mut","upcast_any_ref","update_handle","update_stopper_tx","vec_u8_serializer","version_deserializer","version_serializer","versioning_part_new_elements_length_deserializer","vzip","white_black_list","white_black_list","write_error_timeout","write_timeout","error","last_consensus_step","last_slot","last_state_step","last_versioning_step","send_last_start_period","consensus_outdated_ids","consensus_part","error","last_slot_before_downtime","last_start_period","peers","server_time","slot","state_part","version","versioning_part","BindingReadExact","BindingWriteExact","client","read_exact_timeout","server","set_read_timeout","set_write_timeout","write_all_timeout","BootstrapClientBinder","KNOWN_PREFIX_LEN","ServerMessageLeader","borrow","borrow","borrow_mut","borrow_mut","cfg","decode_msg_leader","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","duplex","flush","flush","from","from","handshake","init","init","into","into","into_request","into_request","layout_raw","layout_raw","msg_len","new","next_timeout","pointer_metadata","pointer_metadata","prev_message","read","read_exact","remote_pubkey","send_timeout","set_read_timeout","set_write_timeout","sig","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","version_serializer","vzip","vzip","write","write_all","BootstrapServerBinder","ClientMessageLeader","KNOWN_PREFIX_LEN","borrow","borrow","borrow_mut","borrow_mut","close_and_send_error","decode_message_leader","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","duplex","flush","flush","from","from","handshake_timeout","init","init","into","into","into_request","into_request","layout_raw","layout_raw","local_keypair","max_consensus_block_ids","max_datastore_key_length","msg_len","new","next_timeout","pointer_metadata","pointer_metadata","prev_message","randomness_size_bytes","read","read_exact","received_prev_hash","send_error_timeout","send_msg","send_timeout","set_read_timeout","set_write_timeout","thread_count","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","version_deserializer","version_serializer","vzip","vzip","write","write_all","write_error_timeout","BSConnector","DefaultConnector","bootstrap_from_server","borrow","borrow_mut","connect_timeout","connect_timeout","connect_to_server","deref","deref_mut","deserialize","drop","filter_bootstrap_list","fmt","from","get_bootstrap_list_iter","get_state","init","into","into_request","layout_raw","pointer_metadata","send_client_message","stream_final_state_and_consensus","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","warn_user_about_versioning_updates","BlackListed","BootstrapError","ClockError","DeserializeError","FinalStateError","GeneralError","IncompatibleVersionError","InitListError","Interrupted","IoError","MassaConsensusError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","PoSError","ProtocolError","ReceivedError","SerializationError","SerializeError","TimeError","TimedOut","UnexpectedClientMessage","UnexpectedConnectionDrop","UnexpectedServerMessage","WhiteListed","as_error","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","init","into","into_request","layout_raw","pointer_metadata","source","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","BootstrapListenerStopHandle","BootstrapTcpListener","NEW_CONNECTION","NewConnections","PollEvent","STOP_LISTENER","Stop","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","create","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","events","from","from","from","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","poll","poll","server","stop","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","AskBootstrapPart","AskBootstrapPeers","AskBootstrapPeers","AskFinalStatePart","BootstrapClientMessage","BootstrapClientMessageDeserializer","BootstrapClientMessageSerializer","BootstrapError","BootstrapError","BootstrapError","BootstrapError","BootstrapFinished","BootstrapPart","BootstrapPeers","BootstrapServerMessage","BootstrapServerMessageDeserializer","BootstrapServerMessageSerializer","BootstrapSuccess","BootstrapSuccess","BootstrapTime","BootstrapTime","FinalStateFinished","FinalStatePart","MessageClientTypeId","MessageServerTypeId","Peers","SlotTooOld","SlotTooOld","__clone_box","__clone_box","block_id_set_deserializer","block_id_set_serializer","block_ids_step_deserializer","block_ids_step_serializer","bool_deserializer","bool_serializer","bootstrapable_graph_deserializer","bootstrapable_graph_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","datastore_key_deserializer","datastore_val_deserializer","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","id_deserializer","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_bootstrap_error","length_error_deserializer","message_id_deserializer","new","new","new","new","opt_last_slot_before_downtime_deserializer","opt_last_slot_before_downtime_serializer","opt_last_start_period_deserializer","opt_last_start_period_serializer","opt_vec_u8_deserializer","opt_vec_u8_serializer","peers_deserializer","peers_serializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialize","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","state_new_elements_length_deserializer","state_step_deserializer","state_step_serializer","stream_batch_updates_length_deserializer","time_deserializer","time_serializer","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_serializer","u32_serializer","u64_serializer","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vec_u8_serializer","version_deserializer","version_serializer","versioning_part_new_elements_length_deserializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","error","last_consensus_step","last_slot","last_state_step","last_versioning_step","send_last_start_period","consensus_outdated_ids","consensus_part","error","last_slot_before_downtime","last_start_period","peers","server_time","slot","state_part","version","versioning_part","BootstrapManager","BootstrapServer","bootstrap_config","borrow","borrow","borrow_mut","borrow_mut","consensus_controller","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","ev_poller","event_loop","final_state","from","from","greedy_client_check","init","init","into","into","into_request","into_request","ip_hist_map","keypair","layout_raw","layout_raw","listener_stopper","main_handle","manage_bootstrap","massa_metrics","new","pointer_metadata","pointer_metadata","protocol_controller","run_bootstrap_session","run_updater","start_bootstrap_server","step_timeout_duration","stop","stream_bootstrap_information","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_handle","update_stopper_tx","version","vzip","vzip","white_black_list","white_black_list","BootstrapClientConfig","BootstrapConfig","BootstrapServerMessageDeserializerArgs","BootstrapSrvBindCfg","Both","IPv4","IPv6","IpType","__clone_box","__clone_box","__clone_box","__clone_box","bootstrap_blacklist_path","bootstrap_list","bootstrap_protocol","bootstrap_timeout","bootstrap_whitelist_path","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cache_duration","chain_id","chain_id","chain_id","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","connect_timeout","consensus_bootstrap_part_size","consensus_bootstrap_part_size","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","endorsement_count","endorsement_count","endorsement_count","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","ip_list_max_size","keep_ledger","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","listen_addr","max_advertise_length","max_advertise_length","max_advertise_length","max_bootstrap_blocks_length","max_bootstrap_blocks_length","max_bootstrap_blocks_length","max_bootstrap_error_length","max_bootstrap_error_length","max_bootstrap_error_length","max_changes_slot_count","max_changes_slot_count","max_changes_slot_count","max_clock_delta","max_consensus_block_ids","max_credits_length","max_credits_length","max_credits_length","max_datastore_entry_count","max_datastore_entry_count","max_datastore_entry_count","max_datastore_key_length","max_datastore_key_length","max_datastore_key_length","max_datastore_key_length","max_datastore_value_length","max_datastore_value_length","max_datastore_value_length","max_denunciation_changes_length","max_denunciation_changes_length","max_denunciation_changes_length","max_denunciations_per_block_header","max_denunciations_per_block_header","max_denunciations_per_block_header","max_executed_ops_length","max_executed_ops_length","max_executed_ops_length","max_final_state_elements_size","max_final_state_elements_size","max_final_state_elements_size","max_function_name_length","max_ledger_changes_count","max_ledger_changes_count","max_ledger_changes_count","max_listeners_per_peer","max_listeners_per_peer","max_listeners_per_peer","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations_per_block","max_operations_per_block","max_operations_per_block","max_ops_changes_length","max_ops_changes_length","max_ops_changes_length","max_parameters_size","max_ping","max_production_stats_length","max_production_stats_length","max_production_stats_length","max_rolls_length","max_rolls_length","max_rolls_length","max_simultaneous_bootstraps","max_versioning_elements_size","max_versioning_elements_size","max_versioning_elements_size","mip_store_stats_block_considered","mip_store_stats_block_considered","mip_store_stats_block_considered","per_ip_min_interval","periods_per_cycle","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","randomness_size_bytes","randomness_size_bytes","randomness_size_bytes","rate_limit","rate_limit","rate_limit","read_error_timeout","read_timeout","retry_delay","thread_count","thread_count","thread_count","thread_count","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","write_error_timeout","write_error_timeout","write_timeout","mio_stream_to_std","to_canonical","SharedWhiteBlackList","WhiteBlackListInner","__clone_box","add_ips_to_blacklist","add_ips_to_whitelist","black_list","black_path","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fmt","fmt","from","from","from_ref","get_black_list","get_white_list","init","init","init_list","inner","into","into","into_request","into_request","is_ip_allowed","layout_raw","layout_raw","load_list","new","pointer_metadata","pointer_metadata","remove_ips_from_blacklist","remove_ips_from_whitelist","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update","update_list","vzip","vzip","white_list","white_path","write_to_file"],"q":[[0,"massa_bootstrap"],[208,"massa_bootstrap::BootstrapClientMessage"],[214,"massa_bootstrap::BootstrapServerMessage"],[225,"massa_bootstrap::bindings"],[233,"massa_bootstrap::bindings::client"],[294,"massa_bootstrap::bindings::server"],[363,"massa_bootstrap::client"],[395,"massa_bootstrap::error"],[455,"massa_bootstrap::listener"],[525,"massa_bootstrap::messages"],[789,"massa_bootstrap::messages::BootstrapClientMessage"],[795,"massa_bootstrap::messages::BootstrapServerMessage"],[806,"massa_bootstrap::server"],[871,"massa_bootstrap::settings"],[1116,"massa_bootstrap::tools"],[1118,"massa_bootstrap::white_black_list"],[1185,"rkyv::with"],[1186,"core::result"],[1187,"massa_final_state::controller_trait"],[1188,"parking_lot::rwlock"],[1189,"alloc::sync"],[1190,"massa_models::version"],[1191,"massa_time"],[1192,"core::option"],[1193,"std::sync::mutex"],[1194,"std::sync::condvar"],[1195,"massa_metrics"],[1196,"tonic::request"],[1197,"core::alloc::layout"],[1198,"massa_consensus_exports::controller_trait"],[1199,"alloc::boxed"],[1200,"massa_protocol_exports::controller_trait"],[1201,"massa_signature::signature_impl"],[1202,"core::any"],[1203,"std::time"],[1204,"std::io::error"],[1205,"core::time"],[1206,"std::net::tcp"],[1207,"alloc::string"],[1208,"core::net::socket_addr"],[1209,"core::ops::function"],[1210,"core::marker"],[1211,"massa_models::node"],[1212,"alloc::vec"],[1213,"core::fmt"],[1214,"massa_versioning::versioning"],[1215,"alloc::collections::btree::map"],[1216,"core::error"],[1217,"massa_signature::error"],[1218,"massa_consensus_exports::error"],[1219,"massa_hash::error"],[1220,"massa_pos_exports::error"],[1221,"massa_models::error"],[1222,"massa_protocol_exports::error"],[1223,"massa_final_state::error"],[1224,"massa_time::error"],[1225,"massa_serialization"],[1226,"dyn_clone::sealed"],[1227,"nom::internal"],[1228,"nom::error"],[1229,"num_enum"],[1230,"core::net::ip_addr"],[1231,"std::collections::hash::map"],[1232,"std::thread"],[1233,"crossbeam_channel::channel"],[1234,"massa_models::slot"],[1235,"massa_models::streaming_step"],[1236,"massa_models::block_id"],[1237,"massa_models::prehash"],[1238,"serde::de"],[1239,"mio::net::tcp::stream"],[1240,"std::collections::hash::set"],[1241,"std::path"]],"i":[49,49,21,0,0,0,0,0,48,49,48,0,48,48,0,0,0,0,49,0,48,61,21,0,21,21,21,0,61,61,21,21,21,21,0,21,21,21,21,21,21,21,21,21,21,48,21,21,21,21,21,21,0,82,80,86,81,86,81,7,7,7,7,7,82,80,20,20,7,7,89,0,7,7,82,82,20,20,20,20,7,89,0,26,20,20,0,20,86,20,20,20,7,7,20,82,86,7,0,32,32,7,89,7,89,7,89,7,89,7,7,7,89,7,89,7,89,7,89,7,89,7,89,7,89,7,89,7,7,89,7,89,7,7,7,7,89,7,89,7,7,7,89,7,89,7,7,89,82,0,7,89,20,82,80,82,80,82,80,20,82,80,7,7,20,26,7,7,7,7,7,0,26,0,82,86,80,81,0,82,86,81,82,7,89,82,80,0,20,20,20,80,81,80,20,20,20,32,32,80,82,80,82,20,0,32,7,7,109,110,110,110,110,110,111,111,112,111,111,113,114,111,111,114,111,0,0,0,35,0,35,41,41,0,0,0,42,44,42,44,42,42,42,44,42,44,42,44,42,44,42,42,42,42,44,42,42,44,42,44,42,44,42,44,44,42,42,42,44,42,42,42,42,42,42,42,44,42,44,42,44,42,44,42,44,42,44,42,44,42,42,44,42,42,0,0,0,55,50,55,50,50,50,55,50,55,50,55,50,55,50,50,50,50,55,50,50,55,50,55,50,55,50,55,50,50,50,50,55,50,50,55,50,50,50,50,50,55,50,50,50,50,50,50,55,50,55,50,55,50,55,50,55,50,55,50,50,50,55,50,50,50,50,0,0,0,58,58,22,58,0,58,58,58,58,0,58,58,0,0,58,58,58,58,58,0,0,58,58,58,58,58,58,58,0,21,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,0,78,0,0,78,26,27,78,26,27,78,26,26,27,78,26,27,78,26,27,78,26,27,78,26,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,26,26,27,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,26,27,78,49,49,88,88,0,0,0,48,87,49,88,48,48,48,0,0,0,49,88,48,87,87,87,0,0,87,48,87,48,49,82,80,86,81,86,81,82,80,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,48,49,48,49,48,49,82,82,80,81,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,82,81,86,86,48,87,49,88,80,82,81,86,48,87,49,88,87,88,87,87,87,87,87,87,88,88,88,88,88,88,48,87,49,88,80,82,81,86,48,87,49,88,48,49,86,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,82,86,82,80,82,81,86,82,80,82,80,82,80,82,80,80,82,81,86,48,87,49,88,80,81,82,86,80,81,82,86,81,82,82,80,48,49,48,80,82,81,86,48,87,87,49,88,88,87,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,81,80,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,81,86,48,87,49,88,80,82,80,82,80,82,81,86,48,87,49,88,109,110,110,110,110,110,111,111,112,111,111,113,114,111,111,114,111,0,0,92,32,92,32,92,92,32,92,32,92,32,92,32,92,92,92,92,32,92,92,32,92,32,92,32,92,92,92,32,92,32,32,0,92,32,32,92,92,0,92,0,0,32,0,32,92,32,92,32,92,32,92,32,92,32,92,32,32,92,32,92,32,92,0,0,0,0,61,61,61,0,61,7,57,47,7,7,7,7,7,61,7,57,47,89,61,7,57,47,89,7,7,47,89,61,7,57,47,61,7,57,47,61,61,7,57,47,7,7,57,61,7,57,47,89,61,7,57,47,89,61,61,7,7,57,57,47,47,89,61,7,57,47,89,7,47,89,61,7,57,47,61,7,57,57,47,47,89,89,61,7,57,47,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,7,7,61,7,57,47,89,7,7,47,89,7,47,89,7,47,89,7,47,89,7,7,7,47,89,7,47,89,7,57,47,89,7,47,89,7,47,89,7,47,89,7,47,89,7,47,89,7,7,47,89,7,47,89,7,7,7,7,47,89,7,47,89,7,7,7,47,89,7,47,89,7,7,47,89,7,47,89,7,7,61,7,57,47,89,7,57,47,7,57,47,7,7,7,7,57,47,89,61,7,57,47,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,61,7,57,47,89,7,57,7,0,0,0,0,97,97,97,105,97,97,105,97,105,97,97,97,105,97,105,97,105,97,105,97,105,97,105,97,105,97,97,97,97,105,105,97,97,105,97,105,97,97,105,105,97,97,105,97,97,97,97,105,97,105,97,105,97,105,97,105,97,105,97,105,97,105,105,97,97],"f":"``````````````````````````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}````````{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}`````{cc{}}{{{b{n}}{Ad{{Ab{A`}}}}cAfAh{Aj{Ah}}{Aj{Al}}{Ad{{Bd{{B`{An}}Bb}}}}Bf}{{j{BhBj}}}Bl}``{{}f}{ce{}{}}{c{{Bn{e}}}{}{}}``{{}{{j{C`Cb}}}}`````````````````````````````````````````````````````````{{{Ad{{Ab{A`}}}}}Bh}```````````{b}`````````````{{CdCf{Cj{Ch}}{Cj{Cl}}{Ad{{Ab{A`}}}}nCnAfBf}{{j{D`Bj}}}}`````````{c{{j{e}}}{}{}}0{{{b{c}}}Db{}}```{{{Cj{c}}}{{Cj{Dd}}}{}}{{{b{dc}}}{{b{dDd}}}{}}{{{b{c}}}{{b{Dd}}}{}}``````:````````````````````````{{{b{dDf}}{b{d{Dj{Dh}}}}{Aj{Dl}}}{{j{l{Bd{Dnf}}}}}}`{{{b{dDf}}{Aj{E`}}}{{j{lDn}}}}{{{b{dEb}}{Aj{E`}}}{{j{lDn}}}}{{{b{dEb}}{b{{Dj{Dh}}}}{Aj{Dl}}}{{j{l{Bd{Dnf}}}}}}```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0`{{{b{Ed}}{b{{Ef{Dh}}}}}{{j{EhBj}}}}{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0`{{{b{dEd}}}{{j{lDn}}}}{{{b{dc}}}{{j{l}}}{}}{cc{}}0{{{b{dEd}}Af}{{j{lBj}}}}{{}f}0{ce{}{}}0{c{{Bn{e}}}{}{}}0{{}{{j{C`Cb}}}}0`{{EjElEn{Aj{Al}}}Ed}{{{b{dEd}}{Aj{E`}}}{{j{F`Bj}}}}{b}0`{{{b{dEd}}{b{d{Dj{Dh}}}}}{{j{fDn}}}}{{{b{dc}}{b{d{Dj{Dh}}}}}{{j{l}}}{}}`{{{b{dEd}}{b{Fb}}{Aj{E`}}}{{j{lBj}}}}{{{b{dEd}}{Aj{E`}}}{{j{lDn}}}}0`{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0`>>{{{b{dEd}}{b{{Dj{Dh}}}}}{{j{fDn}}}}{{{b{dc}}{b{{Dj{Dh}}}}}{{j{l}}}{}}```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{FdFfFhc}l{FjFl}}{{{b{Fd}}{b{{Dj{Dh}}}}}{{j{FnBj}}}}{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0`{{{b{dFd}}}{{G`{l}}}}{{{b{dc}}}{{j{l}}}{}}{cc{}}0{{{b{dFd}}Af{Aj{E`}}}{{j{lBj}}}}{{}f}0{ce{}{}}0{c{{Bn{e}}}{}{}}0{{}{{j{C`Cb}}}}0````{{EjCnGb{Aj{Al}}}Fd}{{{b{dFd}}{Aj{E`}}}{{j{FbBj}}}}{b}0``{{{b{dFd}}{b{d{Dj{Dh}}}}}{{G`{f}}}}{{{b{dc}}{b{d{Dj{Dh}}}}}{{j{l}}}{}}`{{{b{dFd}}Ff}{{j{lBj}}}}{{{b{dFd}}E`F`}{{j{lBj}}}}{{{b{dFd}}F`{Aj{E`}}}{{j{lBj}}}}{{{b{dFd}}{Aj{E`}}}{{j{lDn}}}}0`{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0``{ce{}{}}0{{{b{dFd}}{b{{Dj{Dh}}}}}{{G`{f}}}}{{{b{dc}}{b{{Dj{Dh}}}}}{{j{l}}}{}}```{{{b{n}}{b{dEd}}{b{dFb}}{b{dBh}}Af}{{j{lBj}}}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bl}}Fh{Aj{Ah}}}{{G`{Ej}}}}{{{b{Gd}}Fh{Aj{Ah}}}{{G`{Ej}}}}{{{b{dc}}{b{n}}{b{Fh}}{b{El}}{Aj{Al}}}{{j{EdBj}}}Bl}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{{{Gh{{Bd{FhGf}}}}Gj}{{Gh{{Bd{FhGf}}}}}}{{{b{Gd}}{b{dGl}}}Gn}{cc{}}{{{b{n}}}{{j{{Gh{{Bd{FhGf}}}}Bj}}}}{{{b{n}}{Ad{{Ab{A`}}}}cAfAh{Aj{Ah}}{Aj{Al}}{Ad{{Bd{{B`{An}}Bb}}}}Bf}{{j{BhBj}}}Bl}{{}f}{ce{}{}}{c{{Bn{e}}}{}{}}{{}{{j{C`Cb}}}}{b}{{{b{Fb}}{b{dEd}}E`E`{b{H`}}}{{j{F`Bj}}}}{{{b{n}}{b{dEd}}{b{dFb}}{b{dBh}}}{{j{lBj}}}}{c{{j{e}}}{}{}}0{{{b{c}}}Db{}}{{{Cj{c}}}{{Cj{Dd}}}{}}{{{b{dc}}}{{b{dDd}}}{}}{{{b{c}}}{{b{Dd}}}{}}:{{{Gh{Hb}}{Hf{HbHd}}}l}``````````````````````````{{{b{c}}}{{b{Hh}}}{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{{{b{Bj}}{b{dGl}}}Gn}0{HjBj}{HlBj}{DnBj}{HnBj}{I`Bj}{IbBj}{IdBj}{cc{}}{IfBj}{IhBj}{IjBj}{{}f}{ce{}{}}{c{{Bn{e}}}{}{}}{{}{{j{C`Cb}}}}{b}{{{b{Bj}}}{{Aj{{b{Hh}}}}}}{{{b{c}}}Ff{}}{c{{j{e}}}{}{}}0{{{b{c}}}Db{}}{{{Cj{c}}}{{Cj{Dd}}}{}}{{{b{dc}}}{{b{dDd}}}{}}{{{b{c}}}{{b{Dd}}}{}}:```````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Fh}}}{{j{{Bd{CfCd}}Bj}}}}{f{{b{c}}}{}}00{f{{b{dc}}}{}}00{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}00{fl}00`{cc{}}00{{}f}00{ce{}{}}00{c{{Bn{e}}}{}{}}00{{}{{j{C`Cb}}}}00{b}00{{{b{dCd}}}{{j{IlBj}}}}``{{{b{Cf}}}{{j{lBj}}}}{c{{j{e}}}{}{}}00000{{{b{c}}}Db{}}00{{{Cj{c}}}{{Cj{Dd}}}{}}00{{{b{dc}}}{{b{dDd}}}{}}00{{{b{c}}}{{b{Dd}}}{}}00:::````````````````````````````{{{b{c}}In}l{}}0````````{{{b{c}}}{{b{e}}}{}{}}0000000{{{b{dc}}}{{b{de}}}{}{}}0000000{{{b{F`}}}F`}{{{b{Fb}}}Fb}{{{b{c}}{b{de}}}l{}{}}0{{{b{c}}}l{}}0``{{}J`}{{}Jb}{f{{b{c}}}{}}0000000{f{{b{dc}}}{}}0000000{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{{{b{Jd}}{b{{Dj{Dh}}}}}{{Jf{{b{{Dj{Dh}}}}F`c}}}{{Jh{{b{{Dj{Dh}}}}}}{Jj{{b{{Dj{Dh}}}}}}}}11{{{b{Jl}}{b{{Dj{Dh}}}}}{{Jf{{b{{Dj{Dh}}}}Fbc}}}{{Jh{{b{{Dj{Dh}}}}}}{Jj{{b{{Dj{Dh}}}}}}}}22222{fl}0000000{{{b{Jn}}{b{Jn}}}An}{{{b{K`}}{b{K`}}}An}{{{b{c}}{b{e}}}An{}{}}00000000000{{{b{F`}}{b{dGl}}}Gn}{{{b{Jn}}{b{dGl}}}Gn}{{{b{Fb}}{b{dGl}}}Gn}{{{b{K`}}{b{dGl}}}Gn}{cc{}}0000000{{{b{c}}}c{}}0`{{}f}0000000{ce{}{}}0000000{c{{Bn{e}}}{}{}}0000000{{}{{j{C`Cb}}}}0000000```{{}J`}{KbJd}{{}Jb}{{DhDhAl}Jl}````````{b}0000000{{{b{J`}}{b{F`}}{b{d{Gh{Dh}}}}}{{j{lIj}}}}{{{b{Jb}}{b{Fb}}{b{d{Gh{Dh}}}}}{{j{lIj}}}}``````````{{{b{c}}}e{}{}}0{{{b{F`}}}Ff}{c{{j{e}}}{}{}}0000{Kd{{j{Jn{Kf{Jn}}}}}}11{Kd{{j{K`{Kf{K`}}}}}}2{c{{j{Jn{Kf{Jn}}}}}{}}{c{{j{K`{Kf{K`}}}}}{}}44444444{{{b{c}}}Db{}}0000000```{{{Cj{c}}}{{Cj{Dd}}}{}}0000000{{{b{dc}}}{{b{dDd}}}{}}0000000{{{b{c}}}{{b{Dd}}}{}}0000000````{ce{}{}}0000000````````````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0`{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0`{{Khf}{{j{lBj}}}}`{cc{}}0{{{b{d{Kl{KjDl}}}}FhDlE`}{{j{lE`}}}}{{}f}0::{c{{Bn{e}}}{}{}}0``{{}{{j{C`Cb}}}}0``{{{b{n}}{b{dFd}}{Ad{{Ab{A`}}}}Af{Cj{Ch}}{Cj{Cl}}Dl}{{j{lBj}}}}`{{{Kn{{j{lBj}}}}{Kn{{j{lBj}}}}{L`{l}}CfLb}D`}{b}0`{{Fd{Ad{l}}nFh{Ad{{Ab{A`}}}}Af{Cj{Ch}}{Cj{Cl}}Bf}l}{{LbE`{Ld{l}}}{{j{lBj}}}}{{CdCf{Cj{Ch}}{Cj{Cl}}{Ad{{Ab{A`}}}}nCnAfBf}{{j{D`Bj}}}}{{{b{Dl}}{b{E`}}}{{Aj{E`}}}}{D`{{j{lBj}}}}{{{b{dFd}}{Ad{{Ab{A`}}}}{Cj{Ch}}{Aj{Lf}}{Lh{{Gh{Dh}}}}{Lh{{Gh{Dh}}}}{Lh{{Ll{Lj}}}}An{b{Dl}}E`}{{j{lBj}}}}{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0```{ce{}{}}0``````````{{{b{c}}In}l{}}000`````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000````{{{b{Gj}}}Gj}{{{b{n}}}n}{{{b{Gb}}}Gb}{{{b{En}}}En}{{{b{c}}{b{de}}}l{}{}}000{{{b{c}}}l{}}0000```{f{{b{c}}}{}}0000{f{{b{dc}}}{}}0000{c{{j{Gj}}}Ln}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{c{{j{n}}}Ln}{c{{j{Gb}}}Ln}2{c{{j{En}}}Ln}33{fl}0000```{{{b{Gj}}{b{dGl}}}Gn}{{{b{n}}{b{dGl}}}Gn}{{{b{Gb}}{b{dGl}}}Gn}{{{b{En}}{b{dGl}}}Gn}{cc{}}0{{{b{n}}}Gb}11{{{b{n}}}En}2{{{b{En}}}Kb}{{{b{c}}}c{}}000{{}f}0000{ce{}{}}0000{c{{Bn{e}}}{}{}}0000``{{}{{j{C`Cb}}}}0000`````````````````````````````````````````````````````````````````````````{b}0000`````````````{{{b{c}}}e{}{}}000{c{{j{e}}}{}{}}000000000{{{b{c}}}Db{}}0000{{{Cj{c}}}{{Cj{Dd}}}{}}0000{{{b{dc}}}{{b{dDd}}}{}}0000{{{b{c}}}{{b{Dd}}}{}}000099999```{M`Ej}{KjKj}``{{{b{c}}In}l{}}{{{b{Lb}}{Gh{Kj}}}{{j{lBj}}}}0``{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Lb}}}Lb}{{{b{c}}{b{de}}}l{}{}}{{{b{c}}}l{}}{{}Mb}{f{{b{c}}}{}}0{f{{b{dc}}}{}}0{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{fl}0{{{b{Lb}}{b{dGl}}}Gn}{{{b{Mb}}{b{dGl}}}Gn}{cc{}}0{{{b{c}}}c{}}{{{b{Lb}}}{{Aj{{Md{Kj}}}}}}0{{}f}0{{{b{Mf}}{b{Mf}}}{{j{{Bd{{Aj{{Md{Kj}}}}{Aj{{Md{Kj}}}}}}Bj}}}}`{ce{}{}}0{c{{Bn{e}}}{}{}}0{{{b{Lb}}{b{Fh}}}{{j{lBj}}}}{{}{{j{C`Cb}}}}0{{{b{Mf}}An}{{j{{Aj{{Md{Kj}}}}Bj}}}}{{MhMh}{{j{LbBj}}}}{b}0{{{b{Lb}}{Gh{Kj}}}{{j{lBj}}}}0{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}000{{{b{c}}}Db{}}0{{{Cj{c}}}{{Cj{Dd}}}{}}0{{{b{dc}}}{{b{dDd}}}{}}0{{{b{c}}}{{b{Dd}}}{}}0{{{b{dLb}}}{{j{lBj}}}}?>>``{{{b{Lb}}{b{Mf}}{b{{Md{Kj}}}}}{{j{lBj}}}}","D":"BLj","p":[[1,"reference"],[0,"mut"],[1,"usize"],[5,"With",1185],[6,"Result",1186],[1,"unit"],[5,"BootstrapConfig",871],[10,"FinalStateController",1187],[8,"RwLock",1188],[5,"Arc",1189],[5,"Version",1190],[5,"MassaTime",1191],[6,"Option",1192],[1,"u64"],[1,"bool"],[5,"Mutex",1193],[5,"Condvar",1194],[1,"tuple"],[5,"MassaMetrics",1195],[5,"GlobalBootstrapState",0],[6,"BootstrapError",395],[10,"BSConnector",363],[5,"Request",1196],[5,"Layout",1197],[5,"LayoutError",1197],[5,"BootstrapTcpListener",455],[5,"BootstrapListenerStopHandle",455],[10,"ConsensusController",1198],[5,"Box",1199],[10,"ProtocolController",1200],[6,"KeyPair",1201],[5,"BootstrapManager",806],[5,"TypeId",1202],[10,"Any",1202],[10,"BindingReadExact",225],[1,"u8"],[1,"slice"],[5,"Instant",1203],[5,"Error",1204],[5,"Duration",1205],[10,"BindingWriteExact",225],[5,"BootstrapClientBinder",233],[1,"array"],[5,"ServerMessageLeader",233],[5,"TcpStream",1206],[6,"PublicKey",1201],[5,"BootstrapClientConfig",871],[6,"BootstrapServerMessage",525],[6,"BootstrapClientMessage",525],[5,"BootstrapServerBinder",294],[5,"String",1207],[6,"SocketAddr",1208],[10,"FnOnce",1209],[10,"Send",1210],[5,"ClientMessageLeader",294],[8,"Result",1204],[5,"BootstrapSrvBindCfg",871],[5,"DefaultConnector",363],[5,"NodeId",1211],[5,"Vec",1212],[6,"IpType",871],[5,"Formatter",1213],[8,"Result",1213],[1,"str"],[5,"MipInfo",1214],[5,"MipState",1214],[5,"BTreeMap",1215],[10,"Error",1216],[6,"MassaSignatureError",1217],[6,"ConsensusError",1218],[6,"MassaHashError",1219],[6,"PosError",1220],[6,"ModelsError",1221],[6,"ProtocolError",1222],[6,"FinalStateError",1223],[6,"TimeError",1224],[6,"SerializeError",1225],[6,"PollEvent",455],[5,"Private",1226],[5,"BootstrapServerMessageSerializer",525],[5,"BootstrapClientMessageSerializer",525],[5,"BootstrapServerMessageDeserializer",525],[8,"IResult",1227],[10,"ParseError",1228],[10,"ContextError",1228],[5,"BootstrapClientMessageDeserializer",525],[6,"MessageServerTypeId",525],[6,"MessageClientTypeId",525],[5,"BootstrapServerMessageDeserializerArgs",871],[1,"u32"],[5,"TryFromPrimitiveError",1229],[5,"BootstrapServer",806],[6,"IpAddr",1230],[5,"HashMap",1231],[5,"JoinHandle",1232],[5,"Sender",1233],[5,"SharedWhiteBlackList",1118],[5,"Receiver",1233],[5,"Slot",1234],[6,"StreamingStep",1235],[6,"BlockId",1236],[8,"PreHashSet",1237],[10,"Deserializer",1238],[5,"TcpStream",1239],[5,"WhiteBlackListInner",1118],[5,"HashSet",1240],[5,"Path",1241],[5,"PathBuf",1241],[15,"BootstrapError",789],[15,"AskBootstrapPart",789],[15,"BootstrapPart",795],[15,"BootstrapError",795],[15,"BootstrapPeers",795],[15,"BootstrapTime",795]],"r":[[3,525],[4,525],[5,525],[6,871],[7,395],[11,806],[14,525],[15,525],[16,871],[17,525],[19,455],[23,363],[34,871],[86,363],[178,806]],"b":[[428,"impl-Display-for-BootstrapError"],[429,"impl-Debug-for-BootstrapError"],[430,"impl-From%3CMassaSignatureError%3E-for-BootstrapError"],[431,"impl-From%3CConsensusError%3E-for-BootstrapError"],[432,"impl-From%3CError%3E-for-BootstrapError"],[433,"impl-From%3CMassaHashError%3E-for-BootstrapError"],[434,"impl-From%3CPosError%3E-for-BootstrapError"],[435,"impl-From%3CModelsError%3E-for-BootstrapError"],[436,"impl-From%3CProtocolError%3E-for-BootstrapError"],[438,"impl-From%3CFinalStateError%3E-for-BootstrapError"],[439,"impl-From%3CTimeError%3E-for-BootstrapError"],[440,"impl-From%3CSerializeError%3E-for-BootstrapError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADwDgAA1AAYAQQADAEcAAQBLAAUAUgACAFkAAQBcAAAAXwACAGMAAgBnAAAAaQAAAGsAAABtAAAAcQAAAHMAAAB1AAAAdwAAAHkAAAB7AAAAfQAAAH8AAACCAAAAhAAAAIkAAACLAAAAjwAAAJEAAACUAAIAmAAHAKEAAQClAAEArQAFALQAAwC5ABMA4gACAOYAAADpAAAA6wAAAO0ABADzAAoAAQEBAAUBBAAMAQUAEwETACkBBAAwAQoAPgEBAEIBBwBMAQgAVgEVAG8BAQBzAQYAewEAAH0BAAB/AQMAhAEHAKYBDwC3AQMAvAEMAMoBCgDWAQwA5gECAOwBCAD2AQEA+QEUABACAQAWAgAAGAIAACACAAAiAgUAKQI1AGACAQBjAh4AigIKAJ0CEgC0Ag8AxgJPACgDEQA9AwEAQQMJAEwDAgBQAwAAUgMAAFQDEQBnAwAAcAMDAHkDCQCFAw4AlgMYALADBQC4AwAAuwMAAL0DCQDMAwQA0wMEANoDAQDdAwEA4AMBAOMDAQDoAwEA6wMBAO4DAgDyAwEA9QMBAPgDAQD7AwEA/gMBAAIEAQAFBAEACwQBAA4EAQATBAEAFgQBABoEAQAdBAEAIQQEACcEAQAqBAEAMAQpAFsEAABeBAAAYAQBAGQEEwB6BAAAfQQDAIMECACOBAwAnAQEAA=="}],\ +["massa_channel",{"t":"FNNNNNNNNNNNNCCNNNNFONNNNNNNNNNNNNNOOONNNONNNNNNNFONNNNNNNNNNNNNONNNONNNNN","n":["MassaChannel","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","drop","from","init","into","new","receiver","sender","to_owned","try_from","try_into","type_id","MassaReceiver","actual_len","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref","deref_mut","deref_mut","drop","drop","from","init","into","name","received","receiver","recv","recv_deadline","recv_timeout","ref_counter","to_owned","try_from","try_into","try_recv","type_id","unregister_metrics","update_metrics","MassaSender","actual_len","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref","deref_mut","drop","fmt","from","init","into","name","send","send_deadline","send_timeout","sender","to_owned","try_from","try_into","try_send","type_id"],"q":[[0,"massa_channel"],[19,"massa_channel::receiver"],[49,"massa_channel::sender"],[74,"alloc::string"],[75,"core::option"],[76,"core::result"],[77,"core::any"],[78,"core::clone"],[79,"crossbeam_channel::err"],[80,"std::time"],[81,"core::time"],[82,"core::fmt"]],"i":[0,3,3,3,3,3,3,3,3,3,3,3,3,0,0,3,3,3,3,0,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8],"f":"`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{j{{b{c}}}{}}{j{{b{dc}}}{}}{jh}{cc{}}{{}j}{ce{}{}}{{l{n{j}}}{{Ad{{A`{c}}{Ab{c}}}}}{}}``{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{c}}}Ah{}}``>={{{b{{Ab{c}}}}}{{Ab{c}}}Aj}<;{{{b{{Ab{c}}}}}{{b{e}}}{}{}};{{{b{d{Ab{c}}}}}{{b{de}}}{}{}};{{{b{d{Ab{c}}}}}h{}};:98```{{{b{{Ab{c}}}}}{{Af{cAl}}}{}}{{{b{{Ab{c}}}}An}{{Af{cB`}}}{}}{{{b{{Ab{c}}}}Bb}{{Af{cB`}}}{}}`988{{{b{{Ab{c}}}}}{{Af{cBd}}}{}}8{{{b{{Ab{c}}}}}h{}}0``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{{A`{c}}}}}{{A`{c}}}Aj}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{{A`{c}}}}}{{b{e}}}{}{}}{j{{b{c}}}{}}{j{{b{dc}}}{}}{jh}{{{b{{A`{c}}}}{b{dBf}}}BhBj}{cc{}}{{}j}{ce{}{}}`{{{b{{A`{c}}}}c}{{Af{h{Bl{c}}}}}{}}{{{b{{A`{c}}}}cAn}{{Af{h{Bn{c}}}}}{}}{{{b{{A`{c}}}}cBb}{{Af{h{Bn{c}}}}}{}}`{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{{A`{c}}}}c}{{Af{h{C`{c}}}}}{}}{{{b{c}}}Ah{}}","D":"An","p":[[1,"reference"],[0,"mut"],[5,"MassaChannel",0],[1,"unit"],[1,"usize"],[5,"String",74],[6,"Option",75],[5,"MassaSender",49],[5,"MassaReceiver",19],[1,"tuple"],[6,"Result",76],[5,"TypeId",77],[10,"Clone",78],[5,"RecvError",79],[5,"Instant",80],[6,"RecvTimeoutError",79],[5,"Duration",81],[6,"TryRecvError",79],[5,"Formatter",82],[8,"Result",82],[10,"Debug",82],[5,"SendError",79],[6,"SendTimeoutError",79],[6,"TrySendError",79]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADsADgABAAgACwAAAA0ABwAWAAoAIgAAACQAAAAmAAMAKwACAC8AAAAyAAAANAAJAD8AAABBAAAAQwAHAA=="}],\ +["massa_cipher",{"t":"FGPPIPCCHCHOCOOCSSSHFNNHONNOONNNNGPPPNNNNNNNNNNNNN","n":["CipherData","CipherError","DecryptionError","EncryptionError","Salt","Utf8Error","constants","decrypt","decrypt","encrypt","encrypt","encrypted_bytes","error","nonce","salt","tests","HASH_PARAMS","NONCE_SIZE","SALT_SIZE","decrypt","CipherData","borrow","borrow_mut","encrypt","encrypted_bytes","from","into","nonce","salt","try_from","try_into","type_id","vzip","CipherError","DecryptionError","EncryptionError","Utf8Error","borrow","borrow_mut","fmt","fmt","from","from","into","source","to_string","try_from","try_into","type_id","vzip"],"q":[[0,"massa_cipher"],[16,"massa_cipher::constants"],[19,"massa_cipher::decrypt"],[20,"massa_cipher::encrypt"],[33,"massa_cipher::error"],[50,"alloc::vec"],[51,"core::result"],[52,"core::any"],[53,"core::fmt"],[54,"core::str::error"],[55,"core::error"],[56,"core::option"],[57,"alloc::string"]],"i":[0,0,6,6,0,6,0,0,0,0,0,3,0,3,3,0,0,0,0,0,0,3,3,0,3,3,3,3,3,3,3,3,3,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6],"f":"````````{{{d{b}}f}{{n{{j{h}}l}}}}`{{{d{b}}{d{{A`{h}}}}}{{n{fl}}}}````````1`{{{d{c}}}{{d{e}}}{}{}}{{{d{Abc}}}{{d{Abe}}}{}{}}2`{cc{}}{ce{}{}}``{c{{n{e}}}{}{}}0{{{d{c}}}Ad{}}2````54{{{d{l}}{d{AbAf}}}Ah}0{Ajl}54{{{d{l}}}{{An{{d{Al}}}}}}{{{d{c}}}B`{}}5546","D":"C`","p":[[1,"str"],[1,"reference"],[5,"CipherData",20],[1,"u8"],[5,"Vec",50],[6,"CipherError",33],[6,"Result",51],[1,"slice"],[0,"mut"],[5,"TypeId",52],[5,"Formatter",53],[8,"Result",53],[5,"Utf8Error",54],[10,"Error",55],[6,"Option",56],[5,"String",57]],"r":[[0,20],[1,33],[8,19],[10,20]],"b":[[39,"impl-Debug-for-CipherError"],[40,"impl-Display-for-CipherError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABoACQABAAAABQAAAAwAAAAOAAIAFQACABkAAAAcAAUAJgAEAC0ABQA="}],\ +["massa_client",{"t":"FFHNNNNNNOQCNONCNONNNNNQOONNNNOOHQOOOOCQHNCNNNNNNNNNNOPPGFFFGFPOOONNNNNNNNNNNNPPNNNNNNNNNNNNNNNNPPNNNNNNNNNNNNNNNNNNNNNNNPPPNNPHPNPNPNHNPOONNNNNNNNNNNNNNNNNONNOONNNNNPPPPPPPPPPPNNHHNPPNPHPNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPPPKPPPPPGPPPNNNNNMNNNNNNFFNNNNNNOONNHNNNNNHNNNNNNNNNONNFFFFFONNNNNNNNNNOOONNNNNNNNNNNNONNNNNONNNNNNNNNNNNNOOOOOOONNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNN","n":["Args","JsonError","ask_password","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","chain_id","client_warning","cmds","command","command","command_for_update","display","erased_serialize","error","from","from","from_arg_matches","from_arg_matches_mut","group_id","grpc_error","grpc_private_port","grpc_public_port","into","into","into_request","into_request","ip","json","main","massa_fancy_ascii_art_logo","parameters","password","private_port","public_port","repl","rpc_error","run","serialize","settings","try_from","try_from","try_into","try_into","type_id","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","wallet","Add","AllowAll","Command","CommandIter","ExtendedWallet","ExtendedWalletEntry","ListOperation","ListOperationIter","Remove","address_info","back_idx","back_idx","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buy_rolls","call_smart_contract","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","eq","equivalent","equivalent","equivalent","equivalent","erased_serialize","erased_serialize","execute_smart_contract","exit","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_str","from_str","get","get","get_addresses","get_blocks","get_datastore_entry","get_detailed_message","get_documentation","get_endorsements","get_file_as_byte_vec","get_filtered_sc_output_event","get_message","get_operations","get_serializations","get_status","get_str","help","help","help","idx","idx","into","into","into","into","into","into","into_iter","into_iter","into_request","into_request","into_request","into_request","into_request","into_request","is_pwd_needed","iter","iter","keypair","len","len","marker","marker","new","next","next","next_back","next_back","node_ban_by_id","node_ban_by_ip","node_bootstrap_blacklist","node_bootstrap_whitelist","node_get_staking_addresses","node_peers_whitelist","node_start_staking","node_stop","node_stop_staking","node_unban_by_id","node_unban_by_ip","nth","nth","parse_key_value","parse_vec","pretty_print","read_only_call","read_only_execute_smart_contract","run","sell_rolls","send_operation","send_transaction","serialize","serialize","show_keys","size_hint","size_hint","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","wallet_add_secret_keys","wallet_generate_secret_key","wallet_get_public_key","wallet_get_secret_key","wallet_info","wallet_remove_addresses","wallet_sign","when_moon","Bad","Block","Coins","Finished","Good","Id","Output","Pending","Protocol","Secret","Separator","Signature","Style","Time","Unknown","Wallet","borrow","borrow_mut","from","into","into_request","pretty_print","stdout_json","style","try_from","try_into","type_id","vzip","MassaCompleter","MyHelper","borrow","borrow","borrow_mut","borrow_mut","complete","complete","completer","file_completer","from","from","group_parameters","into","into","into_request","into_request","new","run","try_from","try_from","try_into","try_into","type_id","type_id","update","validate","validate_while_typing","validator","vzip","vzip","ClientSettings","DefaultNode","HttpSettings","SETTINGS","Settings","__private_field","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","certificate_store","chain_id","client","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default_node","deref","deserialize","deserialize","deserialize","deserialize","enabled","fmt","fmt","fmt","fmt","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","grpc_private_port","grpc_public_port","headers","history","history_file_path","http","id_kind","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","ip","max_concurrent_requests","max_log_length","max_request_body_size","private_port","public_port","request_timeout","timeout","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_client"],[54,"massa_client::cmds"],[234,"massa_client::display"],[262,"massa_client::repl"],[293,"massa_client::settings"],[393,"std::path"],[394,"alloc::string"],[395,"clap_builder::builder::command"],[396,"erased_serde::ser"],[397,"erased_serde::error"],[398,"core::result"],[399,"clap_builder::parser::matches::arg_matches"],[400,"clap_builder"],[401,"clap_builder::util::id"],[402,"core::option"],[403,"tonic::request"],[404,"anyhow"],[405,"serde::ser"],[406,"core::any"],[407,"core::fmt"],[408,"alloc::vec"],[409,"massa_wallet"],[410,"massa_api_exports::address"],[411,"std::collections::hash::map"],[412,"core::str::traits"],[413,"massa_sdk"],[414,"alloc::boxed"],[415,"massa_models::operation"],[416,"massa_models::amount"],[417,"massa_models::address"],[418,"console::utils"],[419,"rustyline"],[420,"rustyline::line_buffer"],[421,"rustyline::undo"],[422,"rustyline::validate"],[423,"serde::de"]],"i":[0,0,0,11,11,11,18,11,18,11,0,0,11,11,11,0,18,18,11,18,11,11,11,0,11,11,11,18,11,18,11,11,0,0,11,11,11,11,0,0,0,18,0,11,18,11,18,11,18,11,11,11,18,11,28,28,0,0,0,0,0,0,28,29,22,23,21,22,23,28,29,30,21,22,23,28,29,30,21,21,21,22,23,21,22,23,21,22,23,21,21,21,21,21,29,30,21,21,21,21,22,23,28,28,29,29,30,30,21,22,23,28,29,30,21,22,23,21,28,22,23,21,21,21,21,21,21,0,21,21,21,21,21,21,0,21,21,22,23,21,22,23,28,29,30,22,23,21,22,23,28,29,30,21,21,28,29,22,23,22,23,30,22,23,22,23,21,21,21,21,21,21,21,21,21,21,21,22,23,0,0,30,21,21,21,21,0,21,29,30,29,22,23,21,22,23,21,28,29,30,21,21,22,23,28,28,29,30,21,22,23,28,29,30,21,22,23,28,29,30,21,22,23,28,29,30,21,21,21,21,21,21,21,21,48,48,48,48,48,48,0,48,48,48,48,48,0,48,48,48,48,48,48,48,48,42,42,48,48,48,48,48,0,0,51,54,51,54,51,54,54,51,51,54,0,51,54,51,54,51,0,51,54,51,54,51,54,54,54,54,54,51,54,0,0,0,0,0,63,63,59,60,61,62,63,59,60,61,62,61,60,59,59,60,61,62,59,60,61,62,59,60,61,62,59,63,59,60,61,62,62,59,60,61,62,63,59,60,61,62,59,60,61,62,60,60,61,59,59,61,61,63,59,60,61,62,63,59,60,61,62,60,61,61,61,60,60,61,59,59,60,61,62,63,59,60,61,62,63,59,60,61,62,63,59,60,61,62,63,59,60,61,62],"f":"``{{{d{b}}}f}{hh}0{{{d{c}}}{{d{e}}}{}{}}0{{{d{jc}}}{{d{je}}}{}{}}0```{{}h}`0`{{{d{c}}{d{jl}}}{{Ab{nA`}}}{}}`{cc{}}0{{{d{Ad}}}{{Ab{AfAh}}}}{{{d{jAd}}}{{Ab{AfAh}}}}{{}{{Al{Aj}}}}```{ce{}{}}0{c{{An{e}}}{}{}}0``{{}{{Bb{B`}}}}```````{Af{{Bb{B`}}}}{{{d{Bd}}c}AbBf}`{c{{Ab{e}}}{}{}}000{{{d{c}}}Bh{}}0{{{d{jAf}}{d{Ad}}}{{Ab{B`Ah}}}}{{{d{jAf}}{d{jAd}}}{{Ab{B`Ah}}}}88`````````````{{{d{c}}}{{d{e}}}{}{}}00000{{{d{jc}}}{{d{je}}}{}{}}00000``{{{d{Bj}}}Bj}{{{d{Bl}}}Bl}{{{d{Bn}}}Bn}{{{d{c}}{d{je}}}B`{}{}}00{{{d{c}}}B`{}}00{{{d{Bj}}{d{Bj}}}C`}{{{d{c}}{d{e}}}C`{}{}}000{{{d{c}}{d{jl}}}{{Ab{nA`}}}{}}0``{{{d{Bj}}{d{jCb}}}Cd}{{{d{Bj}}{d{jCb}}}{{Ab{B`Cf}}}}{{{d{Bl}}{d{jCb}}}Cd}{{{d{Bn}}{d{jCb}}}Cd}{{{d{Ch}}{d{jCb}}}{{Ab{B`Cf}}}}{{{d{Ch}}{d{jCb}}}Cd}{{{d{Cj}}{d{jCb}}}Cd}0{{{d{Cl}}{d{jCb}}}Cd}0{cc{}}00000{{{d{c}}}c{}}00{{{d{Cn}}}{{Ab{Bjc}}}{}}{{{d{Cn}}}{{Ab{Chc}}}{}}{{{d{Bl}}D`}{{Al{Bj}}}}{{{d{Bn}}D`}{{Al{Ch}}}}```{{{d{Bj}}}{{Al{{d{Cn}}}}}}0`{{{d{b}}}{{Bb{{Dd{Db}}}}}}`1`{{{d{Bj}}}{{d{{Df{{d{Cn}}}}}}}}`{{{d{Bj}}{d{Cn}}}{{Al{{d{Cn}}}}}}{{}B`}{{{d{Bj}}}B`}```{ce{}{}}0000000{c{{An{e}}}{}{}}00000{{{d{Bj}}}C`}{{}Bl}{{}Bn}`{{{d{Bl}}}D`}{{{d{Bn}}}D`}``{{{d{Dh}}{d{{Df{Dj}}}}C`}{{Bb{Cl}}}}{{{d{jBl}}}{{Al{c}}}{}}{{{d{jBn}}}{{Al{c}}}{}}10```````````{{{d{jBl}}D`}{{Al{c}}}{}}{{{d{jBn}}D`}{{Al{c}}}{}}{{{d{{Dl{{d{Cn}}{d{Cn}}}}}}{d{Cn}}}{{Bb{{Al{c}}Dn}}}E`}{{{d{{Df{f}}}}}{{Bb{{Dd{c}}Dn}}}E`}{{{d{Cl}}}B`}``{{{d{Bj}}{d{jEb}}{d{j{Al{Dh}}}}{d{{Df{f}}}}C`}{{Bb{{Ef{Ed}}}}}}`{{{d{Eb}}{d{Dh}}EhEjElC`}{{Bb{{Ef{Ed}}}}}}`{{{d{Cj}}c}AbBf}{{{d{Cl}}c}AbBf}`{{{d{Bl}}}{{En{D`{Al{D`}}}}}}{{{d{Bn}}}{{En{D`{Al{D`}}}}}}{{{d{c}}}e{}{}}00{{{d{c}}}f{}}000{{{d{Cn}}}{{Ab{Bjc}}}{}}{c{{Ab{e}}}{}{}}000{{{d{Cn}}}{{Ab{Chc}}}{}}11111111{{{d{c}}}Bh{}}00000{ce{}{}}00000````````````````````````{{{d{c}}}{{d{e}}}{}{}}{{{d{jc}}}{{d{je}}}{}{}}{cc{}}3{c{{An{e}}}{}{}}{{{d{Ed}}}B`}{{{d{Ed}}}{{Bb{B`}}}}{{{d{F`}}c}{{Fb{f}}}Fd}::87``6655{{{d{Ff}}{d{Cn}}D`{d{Fh}}}{{Fj{{En{D`{Dd{c}}}}}}}{}}{{{d{Fl}}{d{Cn}}D`{d{Fh}}}{{Fj{{En{D`{Dd{c}}}}}}}{}}``66{{{Dd{f}}}{{Dd{f}}}}::66{{}Ff}{{{d{jEb}}{d{b}}{Al{f}}}{{Bb{B`}}}}????=={{{d{Fl}}{d{jFn}}D`{d{Cn}}{d{jG`}}}B`}{{{d{Fl}}{d{jGb}}}{{Fj{Gd}}}}{{{d{Fl}}}C`}`??``````>>>>>=====```{{{d{Gf}}}Gf}{{{d{Gh}}}Gh}{{{d{Gj}}}Gj}{{{d{Gl}}}Gl}{{{d{c}}{d{je}}}B`{}{}}000{{{d{c}}}B`{}}000`{{{d{Gn}}}{{d{Gf}}}}{c{{Ab{Gf}}}H`}{c{{Ab{Gh}}}H`}{c{{Ab{Gj}}}H`}{c{{Ab{Gl}}}H`}`{{{d{Gf}}{d{jCb}}}Cd}{{{d{Gh}}{d{jCb}}}Cd}{{{d{Gj}}{d{jCb}}}Cd}{{{d{Gl}}{d{jCb}}}Cd}{cc{}}0000{{{d{c}}}c{}}000```````{ce{}{}}0000{c{{An{e}}}{}{}}0000````````{{{d{c}}}e{}{}}000{c{{Ab{e}}}{}{}}000000000{{{d{c}}}Bh{}}000044444","D":"Jd","p":[[5,"Path",393],[1,"reference"],[5,"String",394],[5,"Command",395],[0,"mut"],[10,"Serializer",396],[5,"Ok",396],[5,"Error",397],[6,"Result",398],[5,"ArgMatches",399],[5,"Args",0],[8,"Error",400],[5,"Id",401],[6,"Option",402],[5,"Request",403],[1,"unit"],[8,"Result",404],[5,"JsonError",0],[10,"Serializer",405],[5,"TypeId",406],[6,"Command",54],[5,"CommandIter",54],[5,"ListOperationIter",54],[1,"bool"],[5,"Formatter",407],[8,"Result",407],[5,"Error",407],[6,"ListOperation",54],[5,"ExtendedWalletEntry",54],[5,"ExtendedWallet",54],[1,"str"],[1,"usize"],[1,"u8"],[5,"Vec",408],[1,"slice"],[5,"Wallet",409],[5,"AddressInfo",410],[5,"HashMap",411],[5,"Error",404],[10,"FromStr",412],[5,"Client",413],[10,"Output",234],[5,"Box",414],[6,"OperationType",415],[5,"Amount",416],[6,"Address",417],[1,"tuple"],[6,"Style",234],[5,"StyledObject",418],[10,"ToString",394],[5,"MassaCompleter",262],[5,"Context",419],[8,"Result",419],[5,"MyHelper",262],[5,"LineBuffer",420],[5,"Changeset",421],[5,"ValidationContext",422],[6,"ValidationResult",422],[5,"Settings",293],[5,"DefaultNode",293],[5,"ClientSettings",293],[5,"HttpSettings",293],[5,"SETTINGS",293],[10,"Deserializer",423]],"r":[],"b":[[98,"impl-Debug-for-Command"],[99,"impl-Display-for-Command"],[102,"impl-Display-for-ListOperation"],[103,"impl-Debug-for-ListOperation"],[104,"impl-Debug-for-ExtendedWalletEntry"],[105,"impl-Display-for-ExtendedWalletEntry"],[106,"impl-Display-for-ExtendedWallet"],[107,"impl-Debug-for-ExtendedWallet"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADcBIwABAAEABAAFAAwAAQAPAAMAFQACAB0AAQAhAAAAJwAAACkAAQAsAAkANwABAD0AAAA/AAAAQQArAHMADACBAAUAiQACAJIABwCbAAEAngADAKMAEQC2AAIAugAAALwAAgDAACoA8QAAAPcAAAD7AAEA/wARABMBAAAWAQ8AJwEAACkBJgBVAQoAZQEkAA=="}],\ +["massa_consensus_exports",{"t":"FFFKKOCOOCOCOOOOOOOCMOCOOOCCOCOOOOOMMMMMMMMOMOOOOOOOOMMOCOMOOFNOONNNNNNNNONNNNOONNNONONNNNNNNNNPPPPPPGGGPPPGFPPPPGPPPPPGPGPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOFFFNOONNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNOONNNNONNNNNNONNNNNNNNOONNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNKKMMMMMMMMMMMMMPGPPPPPPGPPGPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNNFFFNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNOOONNNOONNONNNNNNNNNNNNNNNNNNNNNNNFNOONNOOOOOONNNONNNNNOONOONNOONNNONOOOOOONNOOONNNNNNNN","n":["ConsensusBroadcasts","ConsensusChannels","ConsensusConfig","ConsensusController","ConsensusManager","block_db_prune_interval","block_graph_export","block_header_sender","block_sender","block_status","bootstrap_part_size","bootstrapable_graph","broadcast_blocks_channel_capacity","broadcast_blocks_headers_channel_capacity","broadcast_enabled","broadcast_filled_blocks_channel_capacity","broadcasts","chain_id","channel_size","channels","clone_box","controller_event_tx","controller_trait","delta_f0","end_timestamp","endorsement_count","error","events","execution_controller","export_active_block","filled_block_sender","force_keep_final_periods","force_keep_final_periods_without_ops","genesis_key","genesis_timestamp","get_best_parents","get_block_graph_status","get_block_statuses","get_blockclique_block_at_slot","get_bootstrap_part","get_cliques","get_latest_blockclique_block_at_slot","get_stats","last_start_period","mark_invalid_block","max_dependency_blocks","max_discarded_blocks","max_future_processing_blocks","max_gas_per_block","operation_validity_periods","periods_per_cycle","pool_controller","protocol_controller","register_block","register_block_header","selector_controller","settings","stats_timespan","stop","t0","thread_count","BlockGraphExport","__clone_box","active_blocks","best_parents","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","discarded_blocks","drop","fmt","from","from_ref","genesis_blocks","gi_head","init","into","into_request","latest_final_blocks_periods","layout_raw","max_cliques","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Active","Active","Active","Active","Block","Block","BlockStatus","BlockStatusId","DiscardReason","Discarded","Discarded","Discarded","ExportBlockStatus","ExportCompiledBlock","Final","Final","Final","Header","HeaderOrBlock","Incoming","Incoming","Incoming","Invalid","Stale","Status","Storage","StorageOrBlock","WaitingForDependencies","WaitingForDependencies","WaitingForDependencies","WaitingForSlot","WaitingForSlot","WaitingForSlot","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","children","clone","clone","clone","clone","clone","clone","clone","clone","clone_block","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_slot","header","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_final","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialize","serialize","serialize","strip_to_block","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","a_block","creator","header_or_block","parents","reason","sequence_number","sequence_number","slot","storage_or_block","unsatisfied_dependencies","id","slot","storage","BootstrapableGraph","BootstrapableGraphDeserializer","BootstrapableGraphSerializer","__clone_box","block_count_deserializer","block_count_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","export_active_block_deserializer","export_active_block_serializer","final_blocks","fmt","from","from","from","from_ref","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","new","new","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusBroadcasts","ConsensusChannels","__clone_box","__clone_box","block_header_sender","block_sender","borrow","borrow","borrow_mut","borrow_mut","broadcasts","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","controller_event_tx","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","execution_controller","filled_block_sender","from","from","from_ref","from_ref","init","init","into","into","into_request","into_request","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pool_controller","protocol_controller","selector_controller","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","ConsensusController","ConsensusManager","clone_box","get_best_parents","get_block_graph_status","get_block_statuses","get_blockclique_block_at_slot","get_bootstrap_part","get_cliques","get_latest_blockclique_block_at_slot","get_stats","mark_invalid_block","register_block","register_block_header","stop","AmountOverflowError","ConsensusError","ContainerInconsistency","ExecutionError","FitnessOverflow","GenesisCreationError","IOError","IOError","InternalError","InvalidLedgerChange","InvalidTransition","LedgerError","LedgerError","LedgerInconsistency","MassaTimeError","MissingBlock","MissingOperation","ModelsError","ModelsError","PosCycleUnavailable","ProtocolError","SerdeError","SerdeError","SerializationError","TransactionError","TransactionError","TryFromSliceError","as_error","as_error","as_error","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","source","source","to_string","to_string","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusEvent","NeedSync","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ExportActiveBlock","ExportActiveBlockDeserializer","ExportActiveBlockSerializer","__clone_box","block","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","fmt","from","from","from","from_active_block","from_ref","init","init","init","into","into","into","into_request","into_request","into_request","is_final","layout_raw","layout_raw","layout_raw","new","new","parents","period_deserializer","period_serializer","pointer_metadata","pointer_metadata","pointer_metadata","sec_share_block_deserializer","sec_share_serializer","serialize","serialize","thread_count","to_active_block","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusConfig","__clone_box","block_db_prune_interval","bootstrap_part_size","borrow","borrow_mut","broadcast_blocks_channel_capacity","broadcast_blocks_headers_channel_capacity","broadcast_enabled","broadcast_filled_blocks_channel_capacity","chain_id","channel_size","clone","clone_into","clone_to_uninit","delta_f0","deref","deref_mut","deserialize","deserialize","drop","end_timestamp","endorsement_count","fmt","force_keep_final_periods","force_keep_final_periods_without_ops","from","from_ref","genesis_key","genesis_timestamp","init","into","into_request","last_start_period","layout_raw","max_dependency_blocks","max_discarded_blocks","max_future_processing_blocks","max_gas_per_block","operation_validity_periods","periods_per_cycle","pointer_metadata","serialize","stats_timespan","t0","thread_count","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip"],"q":[[0,"massa_consensus_exports"],[61,"massa_consensus_exports::block_graph_export"],[95,"massa_consensus_exports::block_status"],[372,"massa_consensus_exports::block_status::BlockStatus"],[382,"massa_consensus_exports::block_status::HeaderOrBlock"],[385,"massa_consensus_exports::bootstrapable_graph"],[464,"massa_consensus_exports::channels"],[525,"massa_consensus_exports::controller_trait"],[540,"massa_consensus_exports::error"],[649,"massa_consensus_exports::events"],[678,"massa_consensus_exports::export_active_block"],[764,"massa_consensus_exports::settings"],[818,"alloc::boxed"],[819,"massa_models::block_id"],[820,"alloc::vec"],[821,"massa_models::slot"],[822,"core::option"],[823,"core::result"],[824,"massa_models::block"],[825,"massa_models::prehash"],[826,"massa_models::streaming_step"],[827,"massa_models::clique"],[828,"massa_models::stats"],[829,"massa_models::block_header"],[830,"massa_models::secure_share"],[831,"massa_storage"],[832,"dyn_clone::sealed"],[833,"rkyv::with"],[834,"core::fmt"],[835,"tonic::request"],[836,"core::alloc::layout"],[837,"core::any"],[838,"serde::de"],[839,"serde::ser"],[840,"nom::internal"],[841,"nom::error"],[842,"massa_serialization"],[843,"core::error"],[844,"massa_models::error"],[845,"massa_protocol_exports::error"],[846,"serde_json::error"],[847,"massa_time::error"],[848,"massa_execution_exports::error"],[849,"std::io::error"],[850,"core::array"],[851,"alloc::string"],[852,"massa_models::active_block"]],"i":[0,0,0,0,0,75,0,58,58,0,75,0,75,75,75,75,57,75,75,0,1,57,0,75,75,75,0,0,57,0,58,75,75,75,75,1,1,1,1,1,1,1,1,75,1,75,75,75,75,75,75,57,57,1,1,57,0,75,26,75,75,0,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,39,41,42,44,37,40,0,0,0,39,41,42,0,0,38,42,44,37,0,39,41,42,38,38,0,40,0,39,41,42,39,41,42,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,43,37,38,39,40,41,42,43,44,40,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,38,39,40,41,42,42,43,43,44,44,37,38,39,40,41,42,43,44,38,39,44,38,38,38,38,38,38,39,39,39,39,39,39,44,44,44,44,44,44,37,38,39,40,41,42,43,44,37,38,39,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,43,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,43,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,38,42,43,44,40,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,37,38,39,40,41,42,43,44,76,77,78,77,77,78,77,77,76,78,79,79,79,0,0,0,17,49,48,49,17,48,49,17,48,17,17,17,48,49,17,48,49,17,48,49,49,17,17,48,49,17,48,49,48,17,17,49,17,48,17,49,17,48,49,17,48,49,17,48,49,17,48,49,48,49,17,48,17,48,17,49,17,48,49,17,48,49,17,48,49,17,48,49,17,48,49,17,48,49,17,48,0,0,57,58,58,58,57,58,57,58,57,57,58,57,58,57,58,57,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,57,57,57,58,57,58,57,58,57,58,57,58,57,58,57,58,57,58,0,0,1,1,1,1,1,1,1,1,1,1,1,1,26,61,0,11,11,11,11,11,61,0,11,11,0,11,61,11,11,11,11,61,11,11,11,61,11,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,11,60,60,61,61,11,11,11,11,11,11,11,11,60,61,61,61,61,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,11,60,61,0,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,0,0,0,71,71,73,72,73,71,72,73,71,72,71,71,71,72,73,71,72,73,71,72,73,73,71,71,72,73,71,72,71,73,71,72,71,71,73,71,72,73,71,72,73,71,72,71,73,71,72,73,72,71,73,72,73,71,72,73,72,71,72,73,71,71,73,71,72,73,71,72,73,71,72,73,71,72,73,71,72,73,71,72,73,71,72,0,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75],"f":"````````````````````{{{d{b}}}{{f{b}}}}``````````````{{{d{b}}}{{n{{l{hj}}}}}}{{{d{b}}{Ab{A`}}{Ab{A`}}}{{Ah{AdAf}}}}{{{d{b}}{d{{Aj{h}}}}}{{n{Al}}}}{{{d{b}}A`}{{Ab{h}}}}{{{d{b}}{B`{{An{h}}}}{B`{A`}}}{{Ah{{l{Bb{An{h}}{B`{{An{h}}}}}}Af}}}}{{{d{b}}}{{n{Bd}}}}{{{d{b}}A`}h}{{{d{b}}}{{Ah{BfAf}}}}`{{{d{b}}h{Bj{Bhh}}}Bl}````````{{{d{b}}hA`BnC`}Bl}1```{{{d{CbCd}}}Bl}```{{{d{c}}Cf}Bl{}}``{{{d{c}}}{{d{e}}}{}{}}{{{d{Cbc}}}{{d{Cbe}}}{}{}}{{{d{Ad}}}Ad}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{Ch{{d{c}}}{}}{Ch{{d{Cbc}}}{}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}`{ChBl}{{{d{Ad}}{d{CbCl}}}Cn}{cc{}}{{{d{c}}}c{}}``{{}Ch}{ce{}{}}{c{{D`{e}}}{}{}}`{{}{{Ah{DbDd}}}}`{d}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}0{{{d{c}}}Df{}}{{{f{c}}}{{f{Dh}}}{}}{{{d{Cbc}}}{{d{CbDh}}}{}}{{{d{c}}}{{d{Dh}}}{}}9`````````````````````````````````{{{d{c}}Cf}Bl{}}0000000{{{d{c}}}{{d{e}}}{}{}}0000000{{{d{Cbc}}}{{d{Cbe}}}{}{}}0000000`{{{d{Dj}}}Dj}{{{d{Dl}}}Dl}{{{d{Dn}}}Dn}{{{d{E`}}}E`}{{{d{Eb}}}Eb}{{{d{Ed}}}Ed}{{{d{Ef}}}Ef}{{{d{Eh}}}Eh}{{{d{E`}}{d{h}}}Ej}{{{d{c}}{d{Cbe}}}Bl{}{}}0000000{{{d{c}}}Bl{}}0000000{Ch{{d{c}}}{}}0000000{Ch{{d{Cbc}}}{}}0000000{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{c{{Ah{Dl}}}El}11111{c{{Ah{Ed}}}El}{c{{Ah{Ef}}}El}33{c{{Ah{Eh}}}El}{ChBl}0000000{{{d{Dl}}{d{Dl}}}C`}{{{d{Dn}}{d{Dn}}}C`}{{{d{Eh}}{d{Eh}}}C`}{{{d{c}}{d{e}}}C`{}{}}00000000000000000{{{d{Dj}}{d{CbCl}}}Cn}{{{d{Dl}}{d{CbCl}}}Cn}{{{d{Dn}}{d{CbCl}}}Cn}{{{d{E`}}{d{CbCl}}}Cn}{{{d{Eb}}{d{CbCl}}}Cn}{{{d{Ed}}{d{CbCl}}}Cn}{{{d{Ef}}{d{CbCl}}}Cn}{{{d{Eh}}{d{CbCl}}}Cn}{cc{}}00{{{d{Eb}}}Dn}11111{{{d{c}}}c{}}0000000{{{d{Dj}}}A`}`{{}Ch}0000000{ce{}{}}0000000{c{{D`{e}}}{}{}}0000000`{{}{{Ah{DbDd}}}}0000000{d}0000000{{{d{Dl}}c}AhEn}{{{d{Ed}}c}AhEn}{{{d{Ef}}c}AhEn}{{{d{Eh}}c}AhEn}{{{d{CbE`}}{d{h}}}Bl}{{{d{c}}}e{}{}}0000000{c{{Ah{e}}}{}{}}000000000000000{{{d{c}}}Df{}}0000000{{{f{c}}}{{f{Dh}}}{}}0000000{{{d{Cbc}}}{{d{CbDh}}}{}}0000000{{{d{c}}}{{d{Dh}}}{}}0000000>>>>>>>>````````````````{{{d{c}}Cf}Bl{}}``{{{d{c}}}{{d{e}}}{}{}}00{{{d{Cbc}}}{{d{Cbe}}}{}{}}00{{{d{Bb}}}Bb}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{{}F`}{Ch{{d{c}}}{}}00{Ch{{d{Cbc}}}{}}00{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{{{d{Fb}}{d{{Aj{Fd}}}}}{{Ff{{d{{Aj{Fd}}}}Bbc}}}{{Fh{{d{{Aj{Fd}}}}}}{Fj{{d{{Aj{Fd}}}}}}}}{c{{Ah{Bb}}}El}22{ChBl}00```{{{d{Bb}}{d{CbCl}}}Cn}{cc{}}00{{{d{c}}}c{}}{{}Ch}00{ce{}{}}00{c{{D`{e}}}{}{}}00{{}{{Ah{DbDd}}}}00{{FlFn}Fb}>{d}00{{{d{Bb}}c}AhEn}{{{d{F`}}{d{Bb}}{d{Cb{n{Fd}}}}}{{Ah{BlG`}}}}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{d{c}}}Df{}}00{{{f{c}}}{{f{Dh}}}{}}00{{{d{Cbc}}}{{d{CbDh}}}{}}00{{{d{c}}}{{d{Dh}}}{}}00<<<``{{{d{c}}Cf}Bl{}}0``{{{d{c}}}{{d{e}}}{}{}}0{{{d{Cbc}}}{{d{Cbe}}}{}{}}0`{{{d{Gb}}}Gb}{{{d{Gd}}}Gd}{{{d{c}}{d{Cbe}}}Bl{}{}}0{{{d{c}}}Bl{}}0`{Ch{{d{c}}}{}}0{Ch{{d{Cbc}}}{}}0{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}0{ChBl}0``{cc{}}0{{{d{c}}}c{}}0{{}Ch}0{ce{}{}}0{c{{D`{e}}}{}{}}0{{}{{Ah{DbDd}}}}0{d}0```{{{d{c}}}e{}{}}0{c{{Ah{e}}}{}{}}000{{{d{c}}}Df{}}0{{{f{c}}}{{f{Dh}}}{}}0{{{d{Cbc}}}{{d{CbDh}}}{}}0{{{d{c}}}{{d{Dh}}}{}}099``{{{d{b}}}{{f{b}}}}{{{d{b}}}{{n{{l{hj}}}}}}{{{d{b}}{Ab{A`}}{Ab{A`}}}{{Ah{AdAf}}}}{{{d{b}}{d{{Aj{h}}}}}{{n{Al}}}}{{{d{b}}A`}{{Ab{h}}}}{{{d{b}}{B`{{An{h}}}}{B`{A`}}}{{Ah{{l{Bb{An{h}}{B`{{An{h}}}}}}Af}}}}{{{d{b}}}{{n{Bd}}}}{{{d{b}}A`}h}{{{d{b}}}{{Ah{BfAf}}}}{{{d{b}}h{Bj{Bhh}}}Bl}{{{d{b}}hA`BnC`}Bl}1{{{d{CbCd}}}Bl}```````````````````````````{{{d{c}}}{{d{Gf}}}{}}00{{{d{c}}}{{d{e}}}{}{}}00{{{d{Cbc}}}{{d{Cbe}}}{}{}}00{Ch{{d{c}}}{}}00{Ch{{d{Cbc}}}{}}00{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}00{ChBl}00{{{d{Af}}{d{CbCl}}}Cn}0{{{d{Gh}}{d{CbCl}}}Cn}0{{{d{Gj}}{d{CbCl}}}Cn}0{cc{}}{GlAf}{GnAf}{H`Af}{GjAf}{HbAf}{HdAf}{HfAf}7{GlGj}{HhGj}{HfGj}{H`Gj};{{}Ch}00{ce{}{}}00{c{{D`{e}}}{}{}}00{{}{{Ah{DbDd}}}}00{d}00{{{d{Af}}}{{Ab{{d{Gf}}}}}}{{{d{Gj}}}{{Ab{{d{Gf}}}}}}{{{d{c}}}Hj{}}00{c{{Ah{e}}}{}{}}00000{{{d{c}}}Df{}}00{{{f{c}}}{{f{Dh}}}{}}00{{{d{Cbc}}}{{d{CbDh}}}{}}00{{{d{c}}}{{d{Dh}}}{}}00;;;```{{{d{c}}Cf}Bl{}}{{{d{c}}}{{d{e}}}{}{}}{{{d{Cbc}}}{{d{Cbe}}}{}{}}{{{d{Hl}}}Hl}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{Ch{{d{c}}}{}}{Ch{{d{Cbc}}}{}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{ChBl}{{{d{Hl}}{d{CbCl}}}Cn}{cc{}}{{{d{c}}}c{}}{{}Ch}{ce{}{}}{c{{D`{e}}}{}{}}{{}{{Ah{DbDd}}}}{d}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}0{{{d{c}}}Df{}}{{{f{c}}}{{f{Dh}}}{}}{{{d{Cbc}}}{{d{CbDh}}}{}}{{{d{c}}}{{d{Dh}}}{}}9```{{{d{c}}Cf}Bl{}}```{{{d{c}}}{{d{e}}}{}{}}00{{{d{Cbc}}}{{d{Cbe}}}{}{}}00{{{d{Hn}}}Hn}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}{{}I`}{Ch{{d{c}}}{}}00{Ch{{d{Cbc}}}{}}00{{{d{Ib}}{d{{Aj{Fd}}}}}{{Ff{{d{{Aj{Fd}}}}Hnc}}}{{Fh{{d{{Aj{Fd}}}}}}{Fj{{d{{Aj{Fd}}}}}}}}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}0{c{{Ah{Hn}}}El}1{ChBl}00{{{d{Hn}}{d{CbCl}}}Cn}{cc{}}00{{{d{Id}}{d{E`}}}Hn}{{{d{c}}}c{}}{{}Ch}00{ce{}{}}00{c{{D`{e}}}{}{}}00`{{}{{Ah{DbDd}}}}00{FlIb}?```{d}00``{{{d{Hn}}c}AhEn}{{{d{I`}}{d{Hn}}{d{Cb{n{Fd}}}}}{{Ah{BlG`}}}}`{{HnFd}{{Ah{{l{IdE`}}Af}}}}{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}00000{{{d{c}}}Df{}}00{{{f{c}}}{{f{Dh}}}{}}00{{{d{Cbc}}}{{d{CbDh}}}{}}00{{{d{c}}}{{d{Dh}}}{}}00===`{{{d{c}}Cf}Bl{}}``{{{d{c}}}{{d{e}}}{}{}}{{{d{Cbc}}}{{d{Cbe}}}{}{}}``````{{{d{If}}}If}{{{d{c}}{d{Cbe}}}Bl{}{}}{{{d{c}}}Bl{}}`{Ch{{d{c}}}{}}{Ch{{d{Cbc}}}{}}{c{{Ah{If}}}El}{{{d{c}}{d{Cbe}}}{{Ah{{Cj{gi}}}}}{}{}{}{}}{ChBl}``{{{d{If}}{d{CbCl}}}Cn}``{cc{}}{{{d{c}}}c{}}``{{}Ch}{ce{}{}}{c{{D`{e}}}{}{}}`{{}{{Ah{DbDd}}}}``````{d}{{{d{If}}c}AhEn}```{{{d{c}}}e{}{}}{c{{Ah{e}}}{}{}}0{{{d{c}}}Df{}}{{{f{c}}}{{f{Dh}}}{}}{{{d{Cbc}}}{{d{CbDh}}}{}}{{{d{c}}}{{d{Dh}}}{}}:","D":"ANd","p":[[10,"ConsensusController",525],[1,"reference"],[5,"Box",818],[6,"BlockId",819],[1,"u64"],[1,"tuple"],[5,"Vec",820],[5,"Slot",821],[6,"Option",822],[5,"BlockGraphExport",61],[6,"ConsensusError",540],[6,"Result",823],[1,"slice"],[6,"BlockGraphStatus",824],[8,"PreHashSet",825],[6,"StreamingStep",826],[5,"BootstrapableGraph",385],[5,"Clique",827],[5,"ConsensusStats",828],[5,"BlockHeader",829],[5,"SecureShare",830],[1,"unit"],[5,"Storage",831],[1,"bool"],[0,"mut"],[10,"ConsensusManager",525],[5,"Private",832],[1,"usize"],[5,"With",833],[5,"Formatter",834],[8,"Result",834],[5,"Request",835],[5,"Layout",836],[5,"LayoutError",836],[5,"TypeId",837],[10,"Any",837],[6,"HeaderOrBlock",95],[6,"DiscardReason",95],[6,"BlockStatusId",95],[6,"StorageOrBlock",95],[6,"BlockStatus",95],[6,"ExportBlockStatus",95],[5,"ExportCompiledBlock",95],[6,"Status",95],[8,"SecureShareBlock",824],[10,"Deserializer",838],[10,"Serializer",839],[5,"BootstrapableGraphSerializer",385],[5,"BootstrapableGraphDeserializer",385],[1,"u8"],[8,"IResult",840],[10,"ParseError",841],[10,"ContextError",841],[5,"BlockDeserializerArgs",824],[1,"u32"],[6,"SerializeError",842],[5,"ConsensusChannels",464],[5,"ConsensusBroadcasts",464],[10,"Error",843],[6,"InternalError",540],[6,"LedgerError",540],[6,"ModelsError",844],[6,"ProtocolError",845],[5,"Error",846],[6,"TimeError",847],[6,"ExecutionError",848],[5,"Error",849],[5,"TryFromSliceError",850],[5,"String",851],[6,"ConsensusEvent",649],[5,"ExportActiveBlock",678],[5,"ExportActiveBlockSerializer",678],[5,"ExportActiveBlockDeserializer",678],[5,"ActiveBlock",852],[5,"ConsensusConfig",764],[15,"Active",372],[15,"Discarded",372],[15,"WaitingForDependencies",372],[15,"Block",382]],"r":[[0,464],[1,464],[2,764],[3,525],[4,525]],"b":[[588,"impl-Debug-for-ConsensusError"],[589,"impl-Display-for-ConsensusError"],[590,"impl-Debug-for-InternalError"],[591,"impl-Display-for-InternalError"],[592,"impl-Display-for-LedgerError"],[593,"impl-Debug-for-LedgerError"],[595,"impl-From%3CModelsError%3E-for-ConsensusError"],[596,"impl-From%3CProtocolError%3E-for-ConsensusError"],[597,"impl-From%3CError%3E-for-ConsensusError"],[598,"impl-From%3CLedgerError%3E-for-ConsensusError"],[599,"impl-From%3CTimeError%3E-for-ConsensusError"],[600,"impl-From%3CExecutionError%3E-for-ConsensusError"],[601,"impl-From%3CError%3E-for-ConsensusError"],[603,"impl-From%3CModelsError%3E-for-LedgerError"],[604,"impl-From%3CTryFromSliceError%3E-for-LedgerError"],[605,"impl-From%3CError%3E-for-LedgerError"],[606,"impl-From%3CError%3E-for-LedgerError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEACSgADAAAABwAAAAoAAAAMAAAAFAAAABcAAAAbAAEAHgAAADkAAAA/AAAAQgAHAEsAAQBOAAAAUQAAAFMAAABVAAAAVwAJAGQAAABnAAAAaQAAAHEAAgB7AAAAfgAAAIEAFwCaAAcAowBQAPcAAAD9AAcABwEHABcBBwAgARMANQFAAH0BAAB/AQIAhQETAJoBBwCjAQAApwEDAK4BBQC2AQMAuwEVANMBAQDXAQMA3AEFAOMBBwDvAQMA9QEFAP4BDwA4AhoAVAIGAFwCAwBhAgIAZwIiAI0CCgCZAgEAnAIKAKoCAACsAhEAvwIHAMsCAwDSAgIA1gICANwCCQDnAhcAAQMBAAkDAgANAwQAFAMAABgDAAAbAwAAHQMAAB8DAAAmAwEAKwMHAA=="}],\ ["massa_consensus_worker",{"t":"CCCHCCGPPPNNNNNNNNNNNNNNNNNNNNNNNNNFNONNOONNNNONNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNFNNONNNNNNNNNNNNNNNNNNFNONNOONCONNONNNCNNNNONNNNNNNNONNONNNNNNNNNNOCNNNNOONNNNNNNNOONOOONNOCNCOCNNNNNNNNNNNONOCOONOCNONNNNNNNCNOFNNOONNNNNNNNNONNNNNNNONNNNNNNNNNONNNNNNNNNNNONOHFNNONNNNONOONNNNONOONNNNNNNGPPPPGGPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOFNNNOONNNNNNCNNNNCNNOONONOHNNNNNNNNHPPPGNNNNNNNNNNNNNNNNNNN","n":["commands","controller","manager","start_consensus_worker","state","worker","ConsensusCommand","MarkInvalidBlock","RegisterBlock","RegisterBlockHeader","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ConsensusControllerImpl","__clone_box","bootstrap_part_size","borrow","borrow_mut","broadcast_enabled","broadcasts","clone","clone_box","clone_into","clone_to_uninit","command_sender","deref","deref_mut","deserialize","drop","from","from_ref","get_best_parents","get_block_graph_status","get_block_statuses","get_blockclique_block_at_slot","get_bootstrap_part","get_cliques","get_latest_blockclique_block_at_slot","get_stats","init","into","into_request","layout_raw","mark_invalid_block","new","pointer_metadata","register_block","register_block_header","shared_state","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ConsensusManagerImpl","borrow","borrow_mut","consensus_thread","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","pointer_metadata","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ConsensusState","__clone_box","active_index_without_ops","add_active_blocks_after","add_block_to_graph","attack_attempts","best_parents","block_db_changed","blocks_state","blocks_state","borrow","borrow_mut","channels","check_desync","check_endorsements","check_header","clique_computation","clone","clone_into","clone_to_uninit","compute_fitness_find_blockclique","config","convert_block_header","convert_to_discard_block_header","deref","deref_mut","deserialize","detect_multistake","drop","extract_block_graph_part","final_block_stats","from","from_ref","genesis_hashes","get_active_block_and_descendants","get_all_final_blocks","get_block_status","get_block_wishlist","get_blockclique","get_blockclique_block_at_slot","get_clique_count","get_full_active_block","get_latest_blockclique_block_at_slot","get_stats","gi_head","graph","init","insert_parents_descendants","into","into_request","latest_final_blocks_periods","launch_time","layout_raw","list_earliest_blocks_of","list_final_blocks","list_latest_final_blocks_at","list_required_active_blocks","list_stale_blocks","mark_final_blocks","mark_invalid_block","massa_metrics","max_cliques","maybe_note_attack_attempt","new_final_blocks","new_stale_blocks","nonfinal_active_blocks_per_slot","notify_execution","pointer_metadata","prev_blockclique","process","process","process_commands","protocol_blocks","prune","prune","prune_active","prune_discarded","prune_nonfinal_blocks_per_slot","prune_slot_waiting","prune_stats","prune_waiting_for_dependencies","rec_process","register_block","register_block_header","remove_block","save_final_periods","slot_tick","stale_block_stats","stats","stats_desync_detection_timespan","stats_history_timespan","stats_tick","storage","tick","to_owned","to_propagate","try_from","try_get_full_active_block","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","verifications","vzip","wishlist","BlocksState","__clone_box","active_blocks","active_index","block_statuses","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","discarded_blocks","discarded_index","drop","fmt","from","from_ref","get","get_mut","incoming_blocks","incoming_index","init","into","into_request","iter","layout_raw","len","new","pointer_metadata","promote_dep_tree","sequence_counter","sequence_counter","to_owned","transition_map","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_indexes","vzip","waiting_for_dependencies_blocks","waiting_for_dependencies_index","waiting_for_slot_blocks","waiting_for_slot_index","compute_max_cliques","BlockInfos","borrow","borrow_mut","creator","deref","deref_mut","deserialize","drop","fitness","from","incompatibilities","inherited_incompatibilities_count","init","into","into_request","layout_raw","parents_hash_period","pointer_metadata","slot","storage","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","BlockCheckOutcome","BlockInfos","BlockStatus","Discard","Discard","EndorsementsCheckOutcome","HeaderCheckOutcome","Proceed","Proceed","WaitForDependencies","WaitForSlot","WaitForSlot","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","fmt","fmt","from","from","from","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","fitness","incompatibilities","inherited_incompatibilities_count","parents_hash_period","ConsensusWorker","borrow","borrow_mut","claim_parent_refs","command_receiver","config","deref","deref_mut","deserialize","drop","from","get_next_slot","init","init","into","into_request","layout_raw","main_loop","manage_command","new","next_instant","next_slot","pointer_metadata","previous_slot","run","shared_state","start_consensus_worker","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","wait_slot_or_command","create_genesis_block","Disconnected","Ended","Interrupted","WaitingStatus","borrow","borrow_mut","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip"],"q":[[0,"massa_consensus_worker"],[6,"massa_consensus_worker::commands"],[35,"massa_consensus_worker::controller"],[79,"massa_consensus_worker::manager"],[101,"massa_consensus_worker::state"],[207,"massa_consensus_worker::state::blocks_state"],[255,"massa_consensus_worker::state::clique_computation"],[256,"massa_consensus_worker::state::process"],[283,"massa_consensus_worker::state::verifications"],[354,"massa_consensus_worker::state::verifications::HeaderCheckOutcome"],[358,"massa_consensus_worker::worker"],[393,"massa_consensus_worker::worker::init"],[394,"massa_consensus_worker::worker::main_loop"],[417,"massa_consensus_exports::settings"],[418,"massa_consensus_exports::channels"],[419,"massa_consensus_exports::bootstrapable_graph"],[420,"core::option"],[421,"massa_storage"],[422,"massa_metrics"],[423,"massa_consensus_exports::controller_trait"],[424,"alloc::boxed"],[425,"dyn_clone::sealed"],[426,"rkyv::with"],[427,"core::result"],[428,"tonic::request"],[429,"core::alloc::layout"],[430,"core::any"],[431,"massa_models::block_id"],[432,"alloc::vec"],[433,"massa_models::slot"],[434,"massa_consensus_exports::block_graph_export"],[435,"massa_consensus_exports::error"],[436,"massa_models::block"],[437,"massa_models::prehash"],[438,"massa_models::streaming_step"],[439,"massa_models::clique"],[440,"massa_models::stats"],[441,"massa_models::block_header"],[442,"massa_models::secure_share"],[443,"massa_channel::sender"],[444,"parking_lot::rwlock"],[445,"alloc::sync"],[446,"massa_consensus_exports::block_status"],[447,"massa_execution_exports::types"],[448,"std::collections::hash::map"],[449,"massa_models::active_block"],[450,"alloc::collections::btree::set"],[451,"core::fmt"],[452,"core::iter::traits::iterator"],[453,"core::ops::function"],[454,"std::time"],[455,"massa_channel::receiver"]],"i":[0,0,0,0,0,0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,41,41,41,41,41,41,41,0,41,41,41,41,41,41,41,0,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,0,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,0,41,0,41,0,41,41,41,41,41,41,41,41,41,41,41,41,41,41,0,41,41,41,41,0,41,41,41,41,41,41,41,41,41,0,41,41,0,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,0,0,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,0,72,72,48,47,0,0,48,47,48,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,72,48,47,73,73,73,73,0,65,65,65,65,65,65,65,65,65,65,65,0,65,65,65,65,0,65,65,65,65,65,65,65,65,0,65,65,65,65,65,65,65,65,0,68,68,68,0,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68],"f":"```{{bd{h{f}}jl}{{Ad{{A`{n}}{A`{Ab}}}}}}``````{{{Af{c}}Ah}Aj{}}{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}{{{Af{An}}}An}{{{Af{c}}{Af{Ale}}}Aj{}{}}{{{Af{c}}}Aj{}}{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{B`Aj}{cc{}}{{{Af{c}}}c{}}{{}B`}{ce{}{}}{c{{Bf{e}}}{}{}}{{}{{Bd{BhBj}}}}{Af}{{{Af{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}9`{{{Af{c}}Ah}Aj{}}`{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}``{{{Af{C`}}}C`}{{{Af{C`}}}{{A`{n}}}}{{{Af{c}}{Af{Ale}}}Aj{}{}}{{{Af{c}}}Aj{}}`{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{B`Aj}{cc{}}{{{Af{c}}}c{}}{{{Af{C`}}}{{Cf{{Ad{CbCd}}}}}}{{{Af{C`}}{h{Ch}}{h{Ch}}}{{Bd{CjCl}}}}{{{Af{C`}}{Af{{Cn{Cb}}}}}{{Cf{D`}}}}{{{Af{C`}}Ch}{{h{Cb}}}}{{{Af{C`}}{Dd{{Db{Cb}}}}{Dd{Ch}}}{{Bd{{Ad{f{Db{Cb}}{Dd{{Db{Cb}}}}}}Cl}}}}{{{Af{C`}}}{{Cf{Df}}}}{{{Af{C`}}Ch}Cb}{{{Af{C`}}}{{Bd{DhCl}}}}{{}B`}{ce{}{}}{c{{Bf{e}}}{}{}}{{}{{Bd{BhBj}}}}{{{Af{C`}}Cb{Dl{DjCb}}}Aj}{{{Dn{An}}E`{Ef{{Ed{Eb}}}}CdEh}C`}{Af}{{{Af{C`}}CbChjEh}Aj}3`{{{Af{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}<`{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}`{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{B`Aj}{cc{}}{{}B`}{ce{}{}}{c{{Bf{e}}}{}{}}{{}{{Bd{BhBj}}}}{Af}{{{Af{AlEj}}}Aj}{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}9`{{{Af{c}}Ah}Aj{}}`{{{Af{Eb}}{Af{Al{Db{Cb}}}}{Af{{Cn{{Ad{CbCd}}}}}}{h{Ch}}}Aj}{{{Af{AlEb}}Cb{Cf{{Ad{CbCd}}}}Ch{Db{Cb}}B`}{{Bd{AjCl}}}}``{{{Af{AlEb}}}{{Bd{AjCl}}}}``{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}`2{{{Af{Eb}}{Af{El}}}En}{{{Af{Eb}}{Af{Cb}}{Af{El}}{h{Ch}}}F`}`{{{Af{Eb}}}Eb}{{{Af{c}}{Af{Ale}}}Aj{}{}}{{{Af{c}}}Aj{}}{{{Af{AlEb}}{Af{Cb}}}{{Bd{B`Cl}}}}`{{{Af{AlEb}}CbEl{h{Ch}}}{{h{Fb}}}}{{{Af{AlEb}}FdCbEl}Fb}{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{{{Af{AlEb}}{Af{El}}}Eh}{B`Aj}{{{Af{Eb}}{h{Ch}}{h{Ch}}}{{Bd{CjCl}}}}`{cc{}}{{{Af{c}}}c{}}`{{{Af{Eb}}{Af{Cb}}}{{Db{Cb}}}}{{{Af{Eb}}}{{Fh{Cb{Ad{ChFf}}}}}}{{{Af{Eb}}{Af{Cb}}}D`}{{{Af{Eb}}}{{Bd{{Fj{Cb{h{El}}}}Cl}}}}{{{Af{Eb}}}{{Db{Cb}}}}{{{Af{Eb}}{Af{Ch}}}{{h{Cb}}}}{{{Af{Eb}}}B`}{{{Af{Eb}}{Af{Cb}}}{{h{{Ad{{Af{Fl}}{Af{Fn}}}}}}}}{{{Af{Eb}}{Af{Ch}}}Cb}{{{Af{Eb}}}{{Bd{DhCl}}}}``{{}B`}{{{Af{AlEb}}CbCh{Cf{Cb}}}Aj}{ce{}{}}{c{{Bf{e}}}{}{}}``{{}{{Bd{BhBj}}}}{{{Af{Eb}}{Af{{Db{Cb}}}}{h{Ch}}}{{Bd{{Cf{{Ad{CbCd}}}}Cl}}}}{{{Af{Eb}}}{{Bd{{Db{Cb}}Cl}}}}{{{Af{Eb}}Ch}{{Bd{{Cf{{Ad{CbCd}}}}Cl}}}}{{{Af{Eb}}{h{Ch}}}{{Bd{{Db{Cb}}Cl}}}}{{{Af{Eb}}Cd}{{Db{Cb}}}}{{{Af{AlEb}}{Af{Cb}}{Db{Cb}}}{{Bd{AjCl}}}}{{{Af{AlEb}}{Af{Cb}}El}Aj}``{{{Af{AlEb}}{Af{Fd}}{Af{Cb}}}Aj}```{{{Af{AlEb}}{Fh{ChCb}}}Aj}{Af}``{{{Af{AlEb}}Cb{h{Ch}}}{{Bd{{G`{{Ad{ChCb}}}}Cl}}}}```{{{Af{AlEb}}}{{Bd{AjCl}}}}{{{Af{AlEb}}}{{Bd{{Fj{CbFl}}Cl}}}}1{{{Af{AlEb}}}Aj}022{{{Af{AlEb}}{G`{{Ad{ChCb}}}}{h{Ch}}}{{Bd{AjCl}}}}{{{Af{AlEb}}CbCh{h{Ch}}jEh}{{Bd{AjCl}}}}{{{Af{AlEb}}CbEl{h{Ch}}}{{Bd{AjCl}}}}{{{Af{AlEb}}{Af{Cb}}{Af{Cb}}}Aj}`{{{Af{AlEb}}Ch}{{Bd{AjCl}}}}````7``{{{Af{c}}}e{}{}}`{c{{Bd{e}}}{}{}}{{{Af{Eb}}{Af{Cb}}}{{Bd{{Ad{{Af{Fl}}{Af{Fn}}}}Cl}}}}1{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}`{ce{}{}}``{{{Af{c}}Ah}Aj{}}{{{Af{Gb}}}{{Af{{Db{Cb}}}}}}``{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}{{{Af{Gb}}}Gb}{{{Af{c}}{Af{Ale}}}Aj{}{}}{{{Af{c}}}Aj{}}{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}8`{B`Aj}{{{Af{Gb}}{Af{AlGd}}}Gf}{cc{}}{{{Af{c}}}c{}}{{{Af{Gb}}{Af{Cb}}}{{h{{Af{Fb}}}}}}{{{Af{AlGb}}{Af{Cb}}}{{h{{Af{AlFb}}}}}}>`{{}B`}{ce{}{}}{c{{Bf{e}}}{}{}}{{{Af{Gb}}}{{`{{Gj{}{{Gh{{Ad{{Af{Cb}}{Af{Fb}}}}}}}}}}}}{{}{{Bd{BhBj}}}}{{{Af{Gb}}}B`}{{}Gb}{Af}{{{Af{AlGb}}Cb}Aj}{{{Af{Gb}}}Cd}`{{{Af{c}}}e{}{}}{{{Af{AlGb}}{Af{Cb}}c}Aj{{Gn{{h{Fb}}{Af{Al{Fj{CbFb}}}}}{{Gl{{h{Fb}}}}}}}}{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}{{{Af{AlGb}}{Af{Cb}}{h{{Af{H`}}}}{h{{Af{H`}}}}}Aj}{ce{}{}}{{{Af{Gb}}}{{Af{{Db{Cb}}}}}}`0`{{{Af{{Fj{Cb{Db{Cb}}}}}}}{{Cf{{Db{Cb}}}}}}`{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}`{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{B`Aj}`{cc{}}``{{}B`}:{c{{Bf{e}}}{}{}}{{}{{Bd{BhBj}}}}`{Af}``{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}{ce{}{}}````````````{{{Af{c}}}{{Af{e}}}{}{}}00{{{Af{Alc}}}{{Af{Ale}}}{}{}}00{B`{{Af{c}}}{}}00{B`{{Af{Alc}}}{}}00{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}00{B`Aj}00{{{Af{F`}}{Af{AlGd}}}Gf}{{{Af{En}}{Af{AlGd}}}Gf}{cc{}}00{{}B`}00:::{c{{Bf{e}}}{}{}}00{{}{{Bd{BhBj}}}}00{Af}00{c{{Bd{e}}}{}{}}00000{{{Af{c}}}Bl{}}00{{{A`{c}}}{{A`{Bn}}}{}}00{{{Af{Alc}}}{{Af{AlBn}}}{}}00{{{Af{c}}}{{Af{Bn}}}{}}00{ce{}{}}00`````{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}{{{Af{AlHb}}}{{Bd{AjCl}}}}``{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{B`Aj}{cc{}}{{{Af{Hb}}{h{Ch}}}{{Ad{ChHd}}}}`{{}B`}:{c{{Bf{e}}}{}{}}{{}{{Bd{BhBj}}}}`{{{Af{AlHb}}An}{{Bd{AjCl}}}}{{b{Hf{An}}{Ef{{Ed{Eb}}}}{h{f}}j}{{Bd{HbCl}}}}``{Af}`{{{Af{AlHb}}}Aj}`{{bd{h{f}}jl}{{Ad{{A`{n}}{A`{Ab}}}}}}{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}{ce{}{}}{{{Af{AlHb}}Hd}Hh}{{{Af{b}}Hj}{{Bd{HlCl}}}}````{{{Af{c}}}{{Af{e}}}{}{}}{{{Af{Alc}}}{{Af{Ale}}}{}{}}{B`{{Af{c}}}{}}{B`{{Af{Alc}}}{}}{{{Af{c}}{Af{Ale}}}{{Bd{{Bb{gi}}}}}{}{}{}{}}{B`Aj}{cc{}}{{}B`}:{c{{Bf{e}}}{}{}}{{}{{Bd{BhBj}}}}{Af}{c{{Bd{e}}}{}{}}0{{{Af{c}}}Bl{}}{{{A`{c}}}{{A`{Bn}}}{}}{{{Af{Alc}}}{{Af{AlBn}}}{}}{{{Af{c}}}{{Af{Bn}}}{}}{ce{}{}}","D":"ABj","p":[[5,"ConsensusConfig",417],[5,"ConsensusChannels",418],[5,"BootstrapableGraph",419],[6,"Option",420],[5,"Storage",421],[5,"MassaMetrics",422],[10,"ConsensusController",423],[5,"Box",424],[10,"ConsensusManager",423],[1,"tuple"],[1,"reference"],[5,"Private",425],[1,"unit"],[0,"mut"],[6,"ConsensusCommand",6],[1,"usize"],[5,"With",426],[6,"Result",427],[5,"Request",428],[5,"Layout",429],[5,"LayoutError",429],[5,"TypeId",430],[10,"Any",430],[5,"ConsensusControllerImpl",35],[6,"BlockId",431],[1,"u64"],[5,"Vec",432],[5,"Slot",433],[5,"BlockGraphExport",434],[6,"ConsensusError",435],[1,"slice"],[6,"BlockGraphStatus",436],[8,"PreHashSet",437],[6,"StreamingStep",438],[5,"Clique",439],[5,"ConsensusStats",440],[5,"BlockHeader",441],[5,"SecureShare",442],[5,"MassaSender",443],[5,"ConsensusBroadcasts",418],[5,"ConsensusState",101],[8,"RwLock",444],[5,"Arc",445],[1,"bool"],[5,"ConsensusManagerImpl",79],[8,"SecuredHeader",441],[6,"EndorsementsCheckOutcome",283],[6,"HeaderCheckOutcome",283],[6,"BlockStatus",446],[6,"DiscardReason",446],[5,"ExecutionBlockMetadata",447],[5,"HashMap",448],[8,"PreHashMap",437],[5,"ActiveBlock",449],[6,"StorageOrBlock",446],[5,"BTreeSet",450],[5,"BlocksState",207],[5,"Formatter",451],[8,"Result",451],[17,"Item"],[10,"Iterator",452],[17,"Output"],[10,"FnOnce",453],[6,"BlockStatusId",446],[5,"ConsensusWorker",358],[5,"Instant",454],[5,"MassaReceiver",455],[6,"WaitingStatus",394],[1,"u8"],[8,"SecureShareBlock",436],[5,"BlockInfos",256],[6,"BlockCheckOutcome",283],[15,"Proceed",354]],"r":[[3,358]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAAwBPgABAAIABQAPABYAAQAZAAoAJQAOADUAAAA+AAAAQAAXAFkAAABbAAwAbgAAAHAAAQB3AAMAfgAFAIYAAACKAAAAjgAAAJMAAgCXAAAAmgAAAJwAAACfAAEAqQAAAKsAAACtAAAArwAAALIAAAC0AAAAtgAAALoAAAC+AAAAwwABAMYAAADIAAYA0AABANUABwDfAAEA4gAAAOcAAADpAAAA6wAAAO4AAADyAAAA9AAHAAIBAQAFAQMADQEAAA8BAQASAQAAFQEJACgBEwA/AQIARQEdAGgBAQBtAQMAcwEBAHYBAgB9AQAAggEGAIsBCQCWAQAAmAEJAA=="}],\ -["massa_db_exports",{"t":"SSSSSSSSSPISSSSSSSSSSSSSPPPPPSSSISSSSSSSSFKGGGSPPSSSSSPIPFPSIMOCCCMMCMMMMMMMOOOOMOOMMMMCOOMMSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSPPPKGGPIPMNNNNMMMNNMMMMMNNNNMMMMMMNNNNNNNNMMIIFINNONNNNNNNNNONNNNONPPPGPPPNNNNNNNNNNNNFNNNNNNNNNNOOOOOONNNNN","n":["ASYNC_POOL_PREFIX","CF_ERROR","CHANGE_ID_DESER_ERROR","CHANGE_ID_KEY","CHANGE_ID_SER_ERROR","CRUD_ERROR","CYCLE_HISTORY_DESER_ERROR","CYCLE_HISTORY_PREFIX","CYCLE_HISTORY_SER_ERROR","CacheMissError","DBBatch","DEFERRED_CALLS_PREFIX","DEFERRED_CALL_DESER_ERROR","DEFERRED_CALL_SER_ERROR","DEFERRED_CREDITS_DESER_ERROR","DEFERRED_CREDITS_PREFIX","DEFERRED_CREDITS_SER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_DESER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_SER_ERROR","EXECUTED_DENUNCIATIONS_PREFIX","EXECUTED_OPS_ID_DESER_ERROR","EXECUTED_OPS_ID_SER_ERROR","EXECUTED_OPS_PREFIX","EXECUTION_TRAIL_HASH_PREFIX","End","Forward","From","HashError","InvalidChangeID","KEY_DESER_ERROR","KEY_LEN_SER_ERROR","KEY_SER_ERROR","Key","LEDGER_PREFIX","MESSAGE_DESER_ERROR","MESSAGE_ID_DESER_ERROR","MESSAGE_ID_SER_ERROR","MESSAGE_SER_ERROR","METADATA_CF","MIP_STORE_PREFIX","MIP_STORE_STATS_PREFIX","MassaDBConfig","MassaDBController","MassaDBError","MassaDirection","MassaIteratorMode","OPEN_ERROR","Reverse","RocksDBError","STATE_CF","STATE_HASH_BYTES_LEN","STATE_HASH_ERROR","STATE_HASH_INITIAL_BYTES","STATE_HASH_KEY","SerializeError","ShareableMassaDBController","Start","StreamBatch","TimeError","VERSIONING_CF","Value","backup_db","change_id","constants","controller","db_batch","delete_key","delete_prefix","error","flush","get_batch_to_stream","get_cf","get_change_id","get_versioning_batch_to_stream","get_xof_db_hash","iterator_cf","max_final_state_elements_size","max_history_length","max_ledger_backups","max_versioning_elements_size","multi_get_cf","new_elements","path","prefix_iterator_cf","put_or_update_entry_value","reset","set_initial_change_id","settings","thread_count","updates_on_previous_elements","write_batch","write_batch_bootstrap_client","ASYNC_POOL_PREFIX","CF_ERROR","CHANGE_ID_DESER_ERROR","CHANGE_ID_KEY","CHANGE_ID_SER_ERROR","CRUD_ERROR","CYCLE_HISTORY_DESER_ERROR","CYCLE_HISTORY_PREFIX","CYCLE_HISTORY_SER_ERROR","DEFERRED_CALLS_PREFIX","DEFERRED_CALL_DESER_ERROR","DEFERRED_CALL_SER_ERROR","DEFERRED_CREDITS_DESER_ERROR","DEFERRED_CREDITS_PREFIX","DEFERRED_CREDITS_SER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_DESER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_SER_ERROR","EXECUTED_DENUNCIATIONS_PREFIX","EXECUTED_OPS_ID_DESER_ERROR","EXECUTED_OPS_ID_SER_ERROR","EXECUTED_OPS_PREFIX","EXECUTION_TRAIL_HASH_PREFIX","KEY_DESER_ERROR","KEY_LEN_SER_ERROR","KEY_SER_ERROR","LEDGER_PREFIX","MESSAGE_DESER_ERROR","MESSAGE_ID_DESER_ERROR","MESSAGE_ID_SER_ERROR","MESSAGE_SER_ERROR","METADATA_CF","MIP_STORE_PREFIX","MIP_STORE_STATS_PREFIX","OPEN_ERROR","STATE_CF","STATE_HASH_BYTES_LEN","STATE_HASH_ERROR","STATE_HASH_INITIAL_BYTES","STATE_HASH_KEY","VERSIONING_CF","End","Forward","From","MassaDBController","MassaDirection","MassaIteratorMode","Reverse","ShareableMassaDBController","Start","backup_db","borrow","borrow","borrow_mut","borrow_mut","delete_key","delete_prefix","flush","from","from","get_batch_to_stream","get_cf","get_change_id","get_versioning_batch_to_stream","get_xof_db_hash","into","into","into_request","into_request","iterator_cf","multi_get_cf","prefix_iterator_cf","put_or_update_entry_value","reset","set_initial_change_id","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write_batch","write_batch_bootstrap_client","DBBatch","Key","StreamBatch","Value","borrow","borrow_mut","change_id","clone","clone_into","clone_to_uninit","fmt","from","from_ref","into","into_request","is_empty","new_elements","to_owned","try_from","try_into","type_id","updates_on_previous_elements","vzip","CacheMissError","HashError","InvalidChangeID","MassaDBError","RocksDBError","SerializeError","TimeError","borrow","borrow_mut","fmt","fmt","from","into","into_request","to_string","try_from","try_into","type_id","vzip","MassaDBConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","from","from_ref","into","into_request","max_final_state_elements_size","max_history_length","max_ledger_backups","max_versioning_elements_size","path","thread_count","to_owned","try_from","try_into","type_id","vzip"],"q":[[0,"massa_db_exports"],[92,"massa_db_exports::constants"],[132,"massa_db_exports::controller"],[176,"massa_db_exports::db_batch"],[199,"massa_db_exports::error"],[218,"massa_db_exports::settings"],[240,"massa_models::slot"],[241,"std::path"],[242,"alloc::vec"],[243,"core::option"],[244,"core::result"],[245,"massa_models::streaming_step"],[246,"massa_models::error"],[247,"massa_hash::hash_xof"],[248,"core::iter::traits::iterator"],[249,"alloc::boxed"],[250,"tonic::request"],[251,"core::any"],[252,"core::clone"],[253,"core::cmp"],[254,"core::fmt"],[255,"alloc::string"]],"i":[0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,38,20,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,12,0,0,0,0,0,12,0,20,0,12,0,0,1,15,0,0,0,1,1,0,1,1,1,1,1,1,1,37,37,37,37,1,15,37,1,1,1,1,0,37,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,38,20,0,0,0,38,0,20,1,20,38,20,38,1,1,1,20,38,1,1,1,1,1,20,38,20,38,1,1,1,1,1,1,20,38,20,38,20,38,20,38,1,1,0,0,0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,12,12,12,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37],"f":"`````````````````````````````````````````````````````````````{{{d{b}}f}h}````{{{d{b}}{d{jl}}{A`{n}}}Ab}{{{d{jb}}{d{Ad}}{d{Ad}}{Af{f}}}Ab}`{{{d{b}}}{{Aj{AbAh}}}}{{{d{b}}{d{{Al{{A`{n}}}}}}{Af{f}}}{{Aj{{An{f}}Ah}}}}{{{d{b}}{d{Ad}}B`}{{Aj{{Af{Bb}}Ah}}}}{{{d{b}}}{{Aj{fBd}}}}2{{{d{b}}}Bf}{{{d{b}}{d{Ad}}Bh}{{Bl{Bj}}}}````{{{d{b}}{A`{{Bn{{d{Ad}}B`}}}}}{{A`{{Aj{{Af{Bb}}Ah}}}}}}``{{{d{b}}{d{Ad}}{d{{C`{n}}}}}{{Bl{Bj}}}}{{{d{b}}{d{jl}}{A`{n}}{d{{C`{n}}}}}Ab}{{{d{jb}}f}Ab}{{{d{b}}f}Ab}```{{{d{jb}}ll{Af{f}}}Ab}{{{d{jb}}{An{f}}{An{f}}}{{Aj{{Bn{{Al{B`}}{Al{B`}}}}Ah}}}}`````````````````````````````````````````````````?{{{d{c}}}{{d{e}}}{}{}}0{{{d{jc}}}{{d{je}}}{}{}}0{{{d{b}}{d{jl}}{A`{n}}}Ab}{{{d{jb}}{d{Ad}}{d{Ad}}{Af{f}}}Ab}{{{d{b}}}{{Aj{AbAh}}}}{cc{}}0{{{d{b}}{d{{Al{{A`{n}}}}}}{Af{f}}}{{Aj{{An{f}}Ah}}}}{{{d{b}}{d{Ad}}B`}{{Aj{{Af{Bb}}Ah}}}}{{{d{b}}}{{Aj{fBd}}}}2{{{d{b}}}Bf}{ce{}{}}0{c{{Cb{e}}}{}{}}0{{{d{b}}{d{Ad}}Bh}{{Bl{Bj}}}}{{{d{b}}{A`{{Bn{{d{Ad}}B`}}}}}{{A`{{Aj{{Af{Bb}}Ah}}}}}}{{{d{b}}{d{Ad}}{d{{C`{n}}}}}{{Bl{Bj}}}}{{{d{b}}{d{jl}}{A`{n}}{d{{C`{n}}}}}Ab}{{{d{jb}}f}Ab}{{{d{b}}f}Ab}{c{{Aj{e}}}{}{}}000{{{d{c}}}Cd{}}099{{{d{jb}}ll{Af{f}}}Ab}{{{d{jb}}{An{f}}{An{f}}}{{Aj{{Bn{{Al{B`}}{Al{B`}}}}Ah}}}}````{{{d{c}}}{{d{e}}}{}{}}{{{d{jc}}}{{d{je}}}{}{}}`{{{d{{An{c}}}}}{{An{c}}}{CfChCjClCnCfD`}}{{{d{c}}{d{je}}}Ab{}{}}{{{d{c}}}Ab{}}{{{d{{An{c}}}}{d{jDb}}}Dd{D`ChCjClCnCfD`}}{cc{}}{{{d{c}}}c{}}{ce{}{}}{c{{Cb{e}}}{}{}}{{{d{{An{c}}}}}Df{ChCjClCnCfD`}}`{{{d{c}}}e{}{}}??>`3```````;:{{{d{Ah}}{d{jDb}}}Dd}0643{{{d{c}}}Dh{}}{c{{Aj{e}}}{}{}}0{{{d{c}}}Cd{}}7`?>{{{d{Dj}}}Dj}=<{{{d{Dj}}{d{jDb}}}Dd};:98``````63329","D":"Kd","p":[[10,"MassaDBController",132],[1,"reference"],[5,"Slot",240],[5,"PathBuf",241],[0,"mut"],[8,"DBBatch",176],[1,"u8"],[5,"Vec",242],[1,"unit"],[1,"str"],[6,"Option",243],[6,"MassaDBError",199],[6,"Result",244],[6,"StreamingStep",245],[5,"StreamBatch",176],[8,"Key",176],[8,"Value",176],[6,"ModelsError",246],[5,"HashXof",247],[6,"MassaIteratorMode",132],[10,"Iterator",248],[5,"Box",249],[1,"tuple"],[1,"slice"],[5,"Request",250],[5,"TypeId",251],[10,"Clone",252],[10,"PartialOrd",253],[10,"Ord",253],[10,"PartialEq",253],[10,"Eq",253],[10,"Debug",254],[5,"Formatter",254],[8,"Result",254],[1,"bool"],[5,"String",255],[5,"MassaDBConfig",218],[6,"MassaDirection",132]],"r":[[0,92],[1,92],[2,92],[3,92],[4,92],[5,92],[6,92],[7,92],[8,92],[10,176],[11,92],[12,92],[13,92],[14,92],[15,92],[16,92],[17,92],[18,92],[19,92],[20,92],[21,92],[22,92],[23,92],[29,92],[30,92],[31,92],[32,176],[33,92],[34,92],[35,92],[36,92],[37,92],[38,92],[39,92],[40,92],[41,218],[42,132],[43,199],[44,132],[45,132],[46,92],[49,92],[50,92],[51,92],[52,92],[53,92],[55,132],[57,176],[59,92],[60,176]],"b":[[208,"impl-Debug-for-MassaDBError"],[209,"impl-Display-for-MassaDBError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJYAGwAAAAkADAAPAB4ACwAvAAEAMgAEADgAAQA8AAEAQAACAFgAAABdACoAiwACAI8AAwCfAAEApwAHALIAAAC0AAIAuAADAL0AAAC/AAAAwgADAMcAAADPAAMA1QAFANwABQDjAAAA5QAAAOwABAA="}],\ -["massa_db_worker",{"t":"IFOOOOOOOOOOOOOOCIFNNNOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MassaDB","RawMassaDB","change_history","change_history","change_history_versioning","change_history_versioning","change_id_deserializer","change_id_deserializer","change_id_serializer","change_id_serializer","config","config","current_batch","current_batch","db","db","massa_db","MassaDB","RawMassaDB","backup_db","borrow","borrow_mut","change_history","change_history","change_history_versioning","change_history_versioning","change_id_deserializer","change_id_deserializer","change_id_serializer","change_id_serializer","config","config","current_batch","current_batch","db","db","default_db_opts","delete_key","delete_prefix","flush","fmt","from","get_batch_to_stream","get_batch_to_stream","get_cf","get_change_id","get_change_id","get_versioning_batch_to_stream","get_versioning_batch_to_stream","get_xof_db_hash","get_xof_db_hash","get_xof_db_hash_opt","into","into_request","iterator_cf","multi_get_cf","new","new_with_options","prefix_iterator_cf","put_or_update_entry_value","reset","set_change_id_to_batch","set_initial_change_id","set_initial_change_id","try_from","try_into","type_id","vzip","write_batch","write_batch_bootstrap_client","write_batch_bootstrap_client","write_changes"],"q":[[0,"massa_db_worker"],[17,"massa_db_worker::massa_db"],[72,"massa_models::slot"],[73,"std::path"],[74,"rocksdb::db_options"],[75,"massa_db_exports::db_batch"],[76,"alloc::vec"],[77,"core::option"],[78,"massa_db_exports::error"],[79,"core::result"],[80,"core::fmt"],[81,"core::cmp"],[82,"core::clone"],[83,"massa_serialization"],[84,"massa_models::streaming_step"],[85,"massa_models::error"],[86,"massa_hash::hash_xof"],[87,"tonic::request"],[88,"massa_db_exports::controller"],[89,"core::iter::traits::iterator"],[90,"alloc::boxed"],[91,"massa_db_exports::settings"],[92,"rocksdb"],[93,"core::any"],[94,"alloc::collections::btree::map"]],"i":[0,0,44,4,44,4,44,4,44,4,44,4,44,4,44,4,0,0,0,4,4,4,44,4,44,4,44,4,44,4,44,4,44,4,44,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4],"f":"```````````````````{{{j{{h{bdf}}}}b}l}{{{j{c}}}{{j{e}}}{}{}}{{{j{nc}}}{{j{ne}}}{}{}}``````````````{{}A`}{{{j{{h{bdf}}}}{j{nAb}}{Af{Ad}}}Ah}{{{j{n{h{bdf}}}}{j{Aj}}{j{Aj}}{Al{b}}}Ah}{{{j{{h{bdf}}}}}{{B`{AhAn}}}}{{{j{{h{ceg}}}}{j{nBb}}}Bd{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{cc{}}{{{j{{h{ceg}}}}{j{{Cf{{Af{Ad}}}}}}{Al{c}}}{{B`{{Ch{c}}An}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{{h{bdf}}}}{j{{Cf{{Af{Ad}}}}}}{Al{b}}}{{B`{{Ch{b}}An}}}}{{{j{{h{bdf}}}}{j{Aj}}Cj}{{B`{{Al{Cl}}An}}}}{{{j{{h{ceg}}}}}{{B`{cCn}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{{h{bdf}}}}}{{B`{bCn}}}}34{{{j{{h{bdf}}}}}D`}{{{j{{h{ceg}}}}}D`{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{{h{ceg}}}}}{{Al{D`}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{ce{}{}}{c{{Db{e}}}{}{}}{{{j{{h{bdf}}}}{j{Aj}}Dd}{{Dh{Df}}}}{{{j{{h{bdf}}}}{Af{{Dj{{j{Aj}}Cj}}}}}{{Af{{B`{{Al{Cl}}An}}}}}}{Dl{{h{bdf}}}}{{DlA`}{{B`{{h{bdf}}Dn}}}}{{{j{{h{bdf}}}}{j{Aj}}{j{{E`{Ad}}}}}{{Dh{Df}}}}{{{j{{h{bdf}}}}{j{nAb}}{Af{Ad}}{j{{E`{Ad}}}}}Ah}{{{j{n{h{bdf}}}}b}Ah}{{{j{{h{ceg}}}}c}Ah{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}0{{{j{{h{bdf}}}}b}Ah}{c{{B`{e}}}{}{}}0{{{j{c}}}Eb{}}<{{{j{n{h{bdf}}}}AbAb{Al{b}}}Ah}{{{j{n{h{ceg}}}}{Ch{c}}{Ch{c}}}{{B`{{Dj{{Cf{Cj}}{Cf{Cj}}}}An}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{n{h{bdf}}}}{Ch{b}}{Ch{b}}}{{B`{{Dj{{Cf{Cj}}{Cf{Cj}}}}An}}}}{{{j{n{h{ceg}}}}{Ed{Cj{Al{Cl}}}}{Ed{Cj{Al{Cl}}}}{Al{c}}Ef}{{B`{AhAn}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}","D":"Gl","p":[[5,"Slot",72],[5,"SlotSerializer",72],[5,"SlotDeserializer",72],[5,"RawMassaDB",17],[1,"reference"],[5,"PathBuf",73],[0,"mut"],[5,"Options",74],[8,"DBBatch",75],[1,"u8"],[5,"Vec",76],[1,"unit"],[1,"str"],[6,"Option",77],[6,"MassaDBError",78],[6,"Result",79],[5,"Formatter",80],[8,"Result",80],[10,"PartialOrd",81],[10,"Ord",81],[10,"PartialEq",81],[10,"Eq",81],[10,"Clone",82],[10,"Debug",80],[10,"Serializer",83],[10,"Deserializer",83],[6,"StreamingStep",84],[5,"StreamBatch",75],[8,"Key",75],[8,"Value",75],[6,"ModelsError",85],[5,"HashXof",86],[5,"Request",87],[6,"MassaIteratorMode",88],[10,"Iterator",89],[5,"Box",90],[1,"tuple"],[5,"MassaDBConfig",91],[5,"Error",92],[1,"slice"],[5,"TypeId",93],[5,"BTreeMap",94],[1,"bool"],[8,"MassaDB",17]],"r":[[0,17],[1,17]],"b":[[42,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[43,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[45,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[46,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[47,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[48,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[49,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[50,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[62,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[63,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[69,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[70,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"]],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAABEAFQAWACUAKQAtADYAQQBCAEMARAA="}],\ +["massa_db_exports",{"t":"SSSSSSSSSPISSSSSSSSSSSSSPPPPPSSSISSSSSSSSFKGGGSPPSSSSSPIPFPSIMOCCCMMCMMMMMMMOOOOMOOMMMMCOOMMSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSPPPKGGPIPMNNNNMMMNNMMMMMNNNNMMMMMMNNNNNNNNMMIIFINNONNNNNNNNNONNNNONPPPGPPPNNNNNNNNNNNNFNNNNNNNNNNOOOOOONNNNN","n":["ASYNC_POOL_PREFIX","CF_ERROR","CHANGE_ID_DESER_ERROR","CHANGE_ID_KEY","CHANGE_ID_SER_ERROR","CRUD_ERROR","CYCLE_HISTORY_DESER_ERROR","CYCLE_HISTORY_PREFIX","CYCLE_HISTORY_SER_ERROR","CacheMissError","DBBatch","DEFERRED_CALLS_PREFIX","DEFERRED_CALL_DESER_ERROR","DEFERRED_CALL_SER_ERROR","DEFERRED_CREDITS_DESER_ERROR","DEFERRED_CREDITS_PREFIX","DEFERRED_CREDITS_SER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_DESER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_SER_ERROR","EXECUTED_DENUNCIATIONS_PREFIX","EXECUTED_OPS_ID_DESER_ERROR","EXECUTED_OPS_ID_SER_ERROR","EXECUTED_OPS_PREFIX","EXECUTION_TRAIL_HASH_PREFIX","End","Forward","From","HashError","InvalidChangeID","KEY_DESER_ERROR","KEY_LEN_SER_ERROR","KEY_SER_ERROR","Key","LEDGER_PREFIX","MESSAGE_DESER_ERROR","MESSAGE_ID_DESER_ERROR","MESSAGE_ID_SER_ERROR","MESSAGE_SER_ERROR","METADATA_CF","MIP_STORE_PREFIX","MIP_STORE_STATS_PREFIX","MassaDBConfig","MassaDBController","MassaDBError","MassaDirection","MassaIteratorMode","OPEN_ERROR","Reverse","RocksDBError","STATE_CF","STATE_HASH_BYTES_LEN","STATE_HASH_ERROR","STATE_HASH_INITIAL_BYTES","STATE_HASH_KEY","SerializeError","ShareableMassaDBController","Start","StreamBatch","TimeError","VERSIONING_CF","Value","backup_db","change_id","constants","controller","db_batch","delete_key","delete_prefix","error","flush","get_batch_to_stream","get_cf","get_change_id","get_versioning_batch_to_stream","get_xof_db_hash","iterator_cf","max_final_state_elements_size","max_history_length","max_ledger_backups","max_versioning_elements_size","multi_get_cf","new_elements","path","prefix_iterator_cf","put_or_update_entry_value","reset","set_initial_change_id","settings","thread_count","updates_on_previous_elements","write_batch","write_batch_bootstrap_client","ASYNC_POOL_PREFIX","CF_ERROR","CHANGE_ID_DESER_ERROR","CHANGE_ID_KEY","CHANGE_ID_SER_ERROR","CRUD_ERROR","CYCLE_HISTORY_DESER_ERROR","CYCLE_HISTORY_PREFIX","CYCLE_HISTORY_SER_ERROR","DEFERRED_CALLS_PREFIX","DEFERRED_CALL_DESER_ERROR","DEFERRED_CALL_SER_ERROR","DEFERRED_CREDITS_DESER_ERROR","DEFERRED_CREDITS_PREFIX","DEFERRED_CREDITS_SER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_DESER_ERROR","EXECUTED_DENUNCIATIONS_INDEX_SER_ERROR","EXECUTED_DENUNCIATIONS_PREFIX","EXECUTED_OPS_ID_DESER_ERROR","EXECUTED_OPS_ID_SER_ERROR","EXECUTED_OPS_PREFIX","EXECUTION_TRAIL_HASH_PREFIX","KEY_DESER_ERROR","KEY_LEN_SER_ERROR","KEY_SER_ERROR","LEDGER_PREFIX","MESSAGE_DESER_ERROR","MESSAGE_ID_DESER_ERROR","MESSAGE_ID_SER_ERROR","MESSAGE_SER_ERROR","METADATA_CF","MIP_STORE_PREFIX","MIP_STORE_STATS_PREFIX","OPEN_ERROR","STATE_CF","STATE_HASH_BYTES_LEN","STATE_HASH_ERROR","STATE_HASH_INITIAL_BYTES","STATE_HASH_KEY","VERSIONING_CF","End","Forward","From","MassaDBController","MassaDirection","MassaIteratorMode","Reverse","ShareableMassaDBController","Start","backup_db","borrow","borrow","borrow_mut","borrow_mut","delete_key","delete_prefix","flush","from","from","get_batch_to_stream","get_cf","get_change_id","get_versioning_batch_to_stream","get_xof_db_hash","into","into","into_request","into_request","iterator_cf","multi_get_cf","prefix_iterator_cf","put_or_update_entry_value","reset","set_initial_change_id","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","write_batch","write_batch_bootstrap_client","DBBatch","Key","StreamBatch","Value","borrow","borrow_mut","change_id","clone","clone_into","clone_to_uninit","fmt","from","from_ref","into","into_request","is_empty","new_elements","to_owned","try_from","try_into","type_id","updates_on_previous_elements","vzip","CacheMissError","HashError","InvalidChangeID","MassaDBError","RocksDBError","SerializeError","TimeError","borrow","borrow_mut","fmt","fmt","from","into","into_request","to_string","try_from","try_into","type_id","vzip","MassaDBConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","from","from_ref","into","into_request","max_final_state_elements_size","max_history_length","max_ledger_backups","max_versioning_elements_size","path","thread_count","to_owned","try_from","try_into","type_id","vzip"],"q":[[0,"massa_db_exports"],[92,"massa_db_exports::constants"],[132,"massa_db_exports::controller"],[176,"massa_db_exports::db_batch"],[199,"massa_db_exports::error"],[218,"massa_db_exports::settings"],[240,"massa_models::slot"],[241,"std::path"],[242,"alloc::vec"],[243,"core::option"],[244,"core::result"],[245,"massa_models::streaming_step"],[246,"massa_models::error"],[247,"massa_hash::hash_xof"],[248,"core::iter::traits::iterator"],[249,"alloc::boxed"],[250,"tonic::request"],[251,"core::any"],[252,"core::clone"],[253,"core::cmp"],[254,"core::fmt"],[255,"alloc::string"]],"i":[0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,38,20,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,12,0,0,0,0,0,12,0,20,0,12,0,0,1,15,0,0,0,1,1,0,1,1,1,1,1,1,1,37,37,37,37,1,15,37,1,1,1,1,0,37,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,38,20,0,0,0,38,0,20,1,20,38,20,38,1,1,1,20,38,1,1,1,1,1,20,38,20,38,1,1,1,1,1,1,20,38,20,38,20,38,20,38,1,1,0,0,0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,12,12,12,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37],"f":"`````````````````````````````````````````````````````````````{{{d{b}}f}h}````{{{d{b}}{d{jl}}{A`{n}}}Ab}{{{d{jb}}{d{Ad}}{d{Ad}}{Af{f}}}Ab}`{{{d{b}}}{{Aj{AbAh}}}}{{{d{b}}{d{{Al{{A`{n}}}}}}{Af{f}}}{{Aj{{An{f}}Ah}}}}{{{d{b}}{d{Ad}}B`}{{Aj{{Af{Bb}}Ah}}}}{{{d{b}}}{{Aj{fBd}}}}2{{{d{b}}}Bf}{{{d{b}}{d{Ad}}Bh}{{Bl{Bj}}}}````{{{d{b}}{A`{{Bn{{d{Ad}}B`}}}}}{{A`{{Aj{{Af{Bb}}Ah}}}}}}``{{{d{b}}{d{Ad}}{d{{C`{n}}}}}{{Bl{Bj}}}}{{{d{b}}{d{jl}}{A`{n}}{d{{C`{n}}}}}Ab}{{{d{jb}}f}Ab}{{{d{b}}f}Ab}```{{{d{jb}}ll{Af{f}}}Ab}{{{d{jb}}{An{f}}{An{f}}}{{Aj{{Bn{{Al{B`}}{Al{B`}}}}Ah}}}}`````````````````````````````````````````````````?{{{d{c}}}{{d{e}}}{}{}}0{{{d{jc}}}{{d{je}}}{}{}}0{{{d{b}}{d{jl}}{A`{n}}}Ab}{{{d{jb}}{d{Ad}}{d{Ad}}{Af{f}}}Ab}{{{d{b}}}{{Aj{AbAh}}}}{cc{}}0{{{d{b}}{d{{Al{{A`{n}}}}}}{Af{f}}}{{Aj{{An{f}}Ah}}}}{{{d{b}}{d{Ad}}B`}{{Aj{{Af{Bb}}Ah}}}}{{{d{b}}}{{Aj{fBd}}}}2{{{d{b}}}Bf}{ce{}{}}0{c{{Cb{e}}}{}{}}0{{{d{b}}{d{Ad}}Bh}{{Bl{Bj}}}}{{{d{b}}{A`{{Bn{{d{Ad}}B`}}}}}{{A`{{Aj{{Af{Bb}}Ah}}}}}}{{{d{b}}{d{Ad}}{d{{C`{n}}}}}{{Bl{Bj}}}}{{{d{b}}{d{jl}}{A`{n}}{d{{C`{n}}}}}Ab}{{{d{jb}}f}Ab}{{{d{b}}f}Ab}{c{{Aj{e}}}{}{}}000{{{d{c}}}Cd{}}099{{{d{jb}}ll{Af{f}}}Ab}{{{d{jb}}{An{f}}{An{f}}}{{Aj{{Bn{{Al{B`}}{Al{B`}}}}Ah}}}}````{{{d{c}}}{{d{e}}}{}{}}{{{d{jc}}}{{d{je}}}{}{}}`{{{d{{An{c}}}}}{{An{c}}}{CfChCjClCnCfD`}}{{{d{c}}{d{je}}}Ab{}{}}{{{d{c}}}Ab{}}{{{d{{An{c}}}}{d{jDb}}}Dd{D`ChCjClCnCfD`}}{cc{}}{{{d{c}}}c{}}{ce{}{}}{c{{Cb{e}}}{}{}}{{{d{{An{c}}}}}Df{ChCjClCnCfD`}}`{{{d{c}}}e{}{}}??>`3```````;:{{{d{Ah}}{d{jDb}}}Dd}0643{{{d{c}}}Dh{}}{c{{Aj{e}}}{}{}}0{{{d{c}}}Cd{}}7`?>{{{d{Dj}}}Dj}=<{{{d{Dj}}{d{jDb}}}Dd};:98``````63329","D":"Kd","p":[[10,"MassaDBController",132],[1,"reference"],[5,"Slot",240],[5,"PathBuf",241],[0,"mut"],[8,"DBBatch",176],[1,"u8"],[5,"Vec",242],[1,"unit"],[1,"str"],[6,"Option",243],[6,"MassaDBError",199],[6,"Result",244],[6,"StreamingStep",245],[5,"StreamBatch",176],[8,"Key",176],[8,"Value",176],[6,"ModelsError",246],[5,"HashXof",247],[6,"MassaIteratorMode",132],[10,"Iterator",248],[5,"Box",249],[1,"tuple"],[1,"slice"],[5,"Request",250],[5,"TypeId",251],[10,"Clone",252],[10,"PartialOrd",253],[10,"Ord",253],[10,"PartialEq",253],[10,"Eq",253],[10,"Debug",254],[5,"Formatter",254],[8,"Result",254],[1,"bool"],[5,"String",255],[5,"MassaDBConfig",218],[6,"MassaDirection",132]],"r":[[0,92],[1,92],[2,92],[3,92],[4,92],[5,92],[6,92],[7,92],[8,92],[10,176],[11,92],[12,92],[13,92],[14,92],[15,92],[16,92],[17,92],[18,92],[19,92],[20,92],[21,92],[22,92],[23,92],[29,92],[30,92],[31,92],[32,176],[33,92],[34,92],[35,92],[36,92],[37,92],[38,92],[39,92],[40,92],[41,218],[42,132],[43,199],[44,132],[45,132],[46,92],[49,92],[50,92],[51,92],[52,92],[53,92],[55,132],[57,176],[59,92],[60,176]],"b":[[208,"impl-Display-for-MassaDBError"],[209,"impl-Debug-for-MassaDBError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJYAGwAAAAkADAAPAB4ACwAvAAEAMgAEADgAAQA8AAEAQAACAFgAAABdACoAiwACAI8AAwCfAAEApwAHALIAAAC0AAIAuAADAL0AAAC/AAAAwgADAMcAAADPAAMA1QAFANwABQDjAAAA5QAAAOwABAA="}],\ +["massa_db_worker",{"t":"IFOOOOOOOOOOOOOOCIFNNNOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MassaDB","RawMassaDB","change_history","change_history","change_history_versioning","change_history_versioning","change_id_deserializer","change_id_deserializer","change_id_serializer","change_id_serializer","config","config","current_batch","current_batch","db","db","massa_db","MassaDB","RawMassaDB","backup_db","borrow","borrow_mut","change_history","change_history","change_history_versioning","change_history_versioning","change_id_deserializer","change_id_deserializer","change_id_serializer","change_id_serializer","config","config","current_batch","current_batch","db","db","default_db_opts","delete_key","delete_prefix","flush","fmt","from","get_batch_to_stream","get_batch_to_stream","get_cf","get_change_id","get_change_id","get_versioning_batch_to_stream","get_versioning_batch_to_stream","get_xof_db_hash","get_xof_db_hash","get_xof_db_hash_opt","into","into_request","iterator_cf","multi_get_cf","new","new_with_options","prefix_iterator_cf","put_or_update_entry_value","reset","set_change_id_to_batch","set_initial_change_id","set_initial_change_id","try_from","try_into","type_id","vzip","write_batch","write_batch_bootstrap_client","write_batch_bootstrap_client","write_changes"],"q":[[0,"massa_db_worker"],[17,"massa_db_worker::massa_db"],[72,"massa_models::slot"],[73,"std::path"],[74,"rocksdb::db_options"],[75,"massa_db_exports::db_batch"],[76,"alloc::vec"],[77,"core::option"],[78,"massa_db_exports::error"],[79,"core::result"],[80,"core::fmt"],[81,"core::cmp"],[82,"core::clone"],[83,"massa_serialization"],[84,"massa_models::streaming_step"],[85,"massa_models::error"],[86,"massa_hash::hash_xof"],[87,"tonic::request"],[88,"massa_db_exports::controller"],[89,"core::iter::traits::iterator"],[90,"alloc::boxed"],[91,"massa_db_exports::settings"],[92,"rocksdb"],[93,"core::any"],[94,"alloc::collections::btree::map"]],"i":[0,0,44,4,44,4,44,4,44,4,44,4,44,4,44,4,0,0,0,4,4,4,44,4,44,4,44,4,44,4,44,4,44,4,44,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4],"f":"```````````````````{{{j{{h{bdf}}}}b}l}{{{j{c}}}{{j{e}}}{}{}}{{{j{nc}}}{{j{ne}}}{}{}}``````````````{{}A`}{{{j{{h{bdf}}}}{j{nAb}}{Af{Ad}}}Ah}{{{j{n{h{bdf}}}}{j{Aj}}{j{Aj}}{Al{b}}}Ah}{{{j{{h{bdf}}}}}{{B`{AhAn}}}}{{{j{{h{ceg}}}}{j{nBb}}}Bd{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{cc{}}{{{j{{h{ceg}}}}{j{{Cf{{Af{Ad}}}}}}{Al{c}}}{{B`{{Ch{c}}An}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{{h{bdf}}}}{j{{Cf{{Af{Ad}}}}}}{Al{b}}}{{B`{{Ch{b}}An}}}}{{{j{{h{bdf}}}}{j{Aj}}Cj}{{B`{{Al{Cl}}An}}}}{{{j{{h{bdf}}}}}{{B`{bCn}}}}{{{j{{h{ceg}}}}}{{B`{cCn}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}43{{{j{{h{ceg}}}}}D`{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{{h{bdf}}}}}D`}{{{j{{h{ceg}}}}}{{Al{D`}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{ce{}{}}{c{{Db{e}}}{}{}}{{{j{{h{bdf}}}}{j{Aj}}Dd}{{Dh{Df}}}}{{{j{{h{bdf}}}}{Af{{Dj{{j{Aj}}Cj}}}}}{{Af{{B`{{Al{Cl}}An}}}}}}{Dl{{h{bdf}}}}{{DlA`}{{B`{{h{bdf}}Dn}}}}{{{j{{h{bdf}}}}{j{Aj}}{j{{E`{Ad}}}}}{{Dh{Df}}}}{{{j{{h{bdf}}}}{j{nAb}}{Af{Ad}}{j{{E`{Ad}}}}}Ah}{{{j{n{h{bdf}}}}b}Ah}{{{j{{h{ceg}}}}c}Ah{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}0{{{j{{h{bdf}}}}b}Ah}{c{{B`{e}}}{}{}}0{{{j{c}}}Eb{}}<{{{j{n{h{bdf}}}}AbAb{Al{b}}}Ah}{{{j{n{h{ceg}}}}{Ch{c}}{Ch{c}}}{{B`{{Dj{{Cf{Cj}}{Cf{Cj}}}}An}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}{{{j{n{h{bdf}}}}{Ch{b}}{Ch{b}}}{{B`{{Dj{{Cf{Cj}}{Cf{Cj}}}}An}}}}{{{j{n{h{ceg}}}}{Ed{Cj{Al{Cl}}}}{Ed{Cj{Al{Cl}}}}{Al{c}}Ef}{{B`{AhAn}}}{BfBhBjBlBnC`}{{Cb{c}}}{{Cd{c}}}}","D":"Gl","p":[[5,"Slot",72],[5,"SlotSerializer",72],[5,"SlotDeserializer",72],[5,"RawMassaDB",17],[1,"reference"],[5,"PathBuf",73],[0,"mut"],[5,"Options",74],[8,"DBBatch",75],[1,"u8"],[5,"Vec",76],[1,"unit"],[1,"str"],[6,"Option",77],[6,"MassaDBError",78],[6,"Result",79],[5,"Formatter",80],[8,"Result",80],[10,"PartialOrd",81],[10,"Ord",81],[10,"PartialEq",81],[10,"Eq",81],[10,"Clone",82],[10,"Debug",80],[10,"Serializer",83],[10,"Deserializer",83],[6,"StreamingStep",84],[5,"StreamBatch",75],[8,"Key",75],[8,"Value",75],[6,"ModelsError",85],[5,"HashXof",86],[5,"Request",87],[6,"MassaIteratorMode",88],[10,"Iterator",89],[5,"Box",90],[1,"tuple"],[5,"MassaDBConfig",91],[5,"Error",92],[1,"slice"],[5,"TypeId",93],[5,"BTreeMap",94],[1,"bool"],[8,"MassaDB",17]],"r":[[0,17],[1,17]],"b":[[42,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[43,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[45,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[46,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[47,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[48,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[49,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[50,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[62,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[63,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"],[69,"impl-RawMassaDB%3CChangeID,+ChangeIDSerializer,+ChangeIDDeserializer%3E"],[70,"impl-MassaDBController-for-RawMassaDB%3CSlot,+SlotSerializer,+SlotDeserializer%3E"]],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAoAEAAAABEAFQAWACUAKQAtADYAQQBCAEMARAA="}],\ ["massa_deferred_calls",{"t":"FFIIIFPPPPPPNNNNNNCOOOOOQNNNOQCOQQQQQNOOOQNNNNNNNNNNNNNNCOQNNOQNCOOOQOOOCOQOQOQNNNNNNNNNFFFOOOOOONNNNNNONNNNNNNNNONNNNNNNONNNNNNNNNNNNNNNONNNOONNOOOOOOONNNNNNNNNNNNOOOONNNFONNONNNNNNNNNONNOOOOOOOOOONNNNNSSSSSSSSSSSSSSFFFNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNOOOOONOOONNNNNNNNNOONNNFFFOOONNNNNNOOONOONNNNNOONNNONNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["DeferredCall","DeferredCallRegistry","DeferredRegistryBaseFeeChange","DeferredRegistryCallChange","DeferredRegistryGasChange","DeferredSlotCalls","Delete","Keep","Keep","Set","Set","Set","apply_changes","apply_changes_to_batch","borrow","borrow","borrow_mut","borrow_mut","call","call_deserializer","call_id_deserializer","call_id_serializer","call_serializer","cancelled","cancelled_key","clone","clone_into","clone_to_uninit","coins","coins_key","config","db","deferred_call_field_key","deferred_call_prefix_key","deferred_call_slot_base_fee_key","deferred_call_slot_total_gas_key","deferred_slot_call_prefix_key","delete_entry","effective_slot_gas","effective_total_gas","fee","fee_key","fmt","from","from","from_ref","get_call","get_nb_call_registered","get_slot_base_fee","get_slot_calls","get_slot_gas","get_total_gas","into","into","into_request","into_request","macros","max_gas","max_gas_key","new","new","parameters","parameters_key","put_entry","registry_changes","registry_changes_deserializer","registry_changes_serializer","sender_address","sender_address_key","slot","slot_base_fee","slot_calls","slot_changes","target_address","target_address_key","target_function","target_function_key","target_slot","target_slot_key","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","DeferredCall","DeferredCallDeserializer","DeferredCallSerializer","address_deserializer","address_serializer","amount_deserializer","amount_serializer","bool_deserializer","bool_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","cancelled","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fee","fmt","from","from","from","from_ref","from_ref","from_ref","get_effective_gas","get_storage_cost","into","into","into","into_request","into_request","into_request","max_gas","new","new","new","parameters","sender_address","serialize","serialize","slot_deserializer","slot_serializer","string_deserializer","string_serializer","target_address","target_function","target_slot","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_var_int_deserializer","u64_var_int_serializer","vec_u8_deserializer","vec_u8_serializer","vzip","vzip","vzip","DeferredCallsConfig","base_fee_max_max_change_denominator","borrow","borrow_mut","call_cst_gas_cost","clone","clone_into","clone_to_uninit","clone_to_uninit","default","deserialize","fmt","from","from_ref","global_overbooking_penalty","into","into_request","ledger_cost_per_byte","max_function_name_length","max_future_slots","max_gas","max_parameter_size","max_pool_changes","min_gas_cost","min_gas_increment","slot_overbooking_penalty","thread_count","to_owned","try_from","try_into","type_id","vzip","CALLS_TAG","CALL_FIELD_CANCELED","CALL_FIELD_COINS","CALL_FIELD_FEE","CALL_FIELD_MAX_GAS","CALL_FIELD_PARAMETERS","CALL_FIELD_SENDER_ADDRESS","CALL_FIELD_TARGET_ADDRESS","CALL_FIELD_TARGET_FUNCTION","CALL_FIELD_TARGET_SLOT","DEFERRED_CALL_TOTAL_GAS","DEFERRED_CALL_TOTAL_REGISTERED","SLOT_BASE_FEE","SLOT_TOTAL_GAS","DeferredCallRegistryChanges","DeferredRegistryChangesDeserializer","DeferredRegistryChangesSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","delete_call","deserialize","deserialize","effective_total_gas","effective_total_gas_deserializer","effective_total_gas_serializer","fmt","from","from","from","from_ref","get_call","get_effective_slot_gas","get_effective_total_gas","get_slot_base_fee","get_total_calls_registered","into","into","into","into_request","into_request","into_request","new","new","serialize","serialize","set_call","set_effective_slot_gas","set_effective_total_gas","set_slot_base_fee","set_total_calls_registered","slot_changes_deserializer","slot_changes_serializer","slot_deserializer","slot_serializer","slots_change","to_owned","total_calls_registered","total_calls_registered_deserializer","total_calls_registered_serializer","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_deserializer","u64_serializer","vzip","vzip","vzip","DeferredRegistrySlotChanges","DeferredRegistrySlotChangesDeserializer","DeferredRegistrySlotChangesSerializer","base_fee","base_fee_deserializer","base_fee_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","call_id_deserializer","call_id_serializer","calls","calls_len","calls_set_or_delete_deserializer","calls_set_or_delete_serializer","clone","clone_into","clone_to_uninit","default","default","deferred_registry_slot_changes_length","deferred_registry_slot_changes_length","delete_call","deserialize","deserialize","effective_slot_gas","fmt","from","from","from","from_ref","gas_deserializer","gas_serializer","get_base_fee","get_call","get_effective_slot_gas","into","into","into","into_request","into_request","into_request","new","new","serialize","serialize","set_base_fee","set_call","set_effective_slot_gas","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_deferred_calls"],[88,"massa_deferred_calls::call"],[171,"massa_deferred_calls::config"],[203,"massa_deferred_calls::macros"],[217,"massa_deferred_calls::registry_changes"],[285,"massa_deferred_calls::slot_changes"],[350,"massa_db_exports::db_batch"],[351,"massa_models::deferred_calls"],[352,"massa_models::slot"],[353,"core::fmt"],[354,"core::option"],[355,"massa_models::amount"],[356,"tonic::request"],[357,"massa_db_exports::controller"],[358,"core::result"],[359,"core::any"],[360,"serde::de"],[361,"nom::internal"],[362,"nom::error"],[363,"massa_models::address"],[364,"alloc::string"],[365,"alloc::vec"],[366,"serde::ser"],[367,"massa_serialization"]],"i":[0,0,0,0,0,0,43,44,45,43,44,45,2,6,6,2,6,2,0,6,6,6,6,12,0,2,2,2,12,0,0,6,0,0,0,0,0,6,2,2,12,0,2,6,2,2,6,6,6,6,6,6,6,2,6,2,0,12,0,6,2,12,0,6,0,6,6,12,0,2,2,2,0,12,0,12,0,12,0,2,6,2,6,2,6,2,6,2,0,0,0,23,22,23,22,23,22,12,22,23,12,22,23,12,12,22,23,12,22,23,12,22,23,12,12,23,12,12,12,12,12,12,12,12,22,23,12,22,23,12,12,12,22,23,12,22,23,12,12,22,23,12,12,12,22,23,22,23,22,12,12,12,12,22,23,12,22,23,12,22,23,12,22,23,23,22,23,22,12,22,23,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,38,4,37,38,4,4,4,4,37,4,4,38,4,4,38,37,4,37,38,4,4,4,4,4,4,4,37,38,4,37,38,4,37,38,37,4,4,4,4,4,4,38,37,38,37,4,4,4,38,37,37,38,4,37,38,4,37,38,4,38,37,37,38,4,0,0,0,39,42,41,41,42,39,41,42,39,42,41,39,39,42,41,39,39,39,41,39,41,42,39,42,39,39,39,41,42,39,39,42,41,39,39,39,41,42,39,41,42,39,41,42,41,39,39,39,39,39,41,42,39,41,42,39,41,42,39,41,42,39],"f":"````````````{{{f{bd}}{f{h}}}j}{{{f{l}}h{f{bn}}}j}{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0```````{{{f{d}}}d}{{{f{c}}{f{be}}}j{}{}}{{{f{c}}}j{}}`````````{{{f{l}}{f{A`}}{f{Ab}}{f{bn}}}j}````{{{f{d}}{f{bAd}}}Af}{cc{}}0{{{f{c}}}c{}}{{{f{l}}{f{Ab}}{f{A`}}}{{Aj{Ah}}}}{{{f{l}}}Al}{{{f{l}}{f{Ab}}}An}{{{f{l}}Ab}d}{{{f{l}}{f{Ab}}}Al}{{{f{l}}}B`}{ce{}{}}0{c{{Bb{e}}}{}{}}0```{{BdBf}l}{Abd}``{{{f{l}}{f{Ab}}{f{A`}}{f{Ah}}{f{bn}}}j}```````````````{{{f{c}}}e{}{}}{c{{Bh{e}}}{}{}}000{{{f{c}}}Bj{}}077`````````{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00`{{{f{Ah}}}Ah}{{{f{Bl}}}Bl}{{{f{Bn}}}Bn}{{{f{c}}{f{be}}}j{}{}}00{{{f{c}}}j{}}00`{c{{Bh{Ah}}}C`}{{{f{Bn}}{f{{Cd{Cb}}}}}{{Cf{{f{{Cd{Cb}}}}Ahc}}}{{Ch{{f{{Cd{Cb}}}}}}{Cj{{f{{Cd{Cb}}}}}}}}{{{f{Ah}}{f{Ah}}}Cl}{{{f{c}}{f{e}}}Cl{}{}}000`{{{f{Ah}}{f{bAd}}}Af}{cc{}}00{{{f{c}}}c{}}00{{{f{Ah}}Al}Al}{{AnAlCn}An}{ce{}{}}00{c{{Bb{e}}}{}{}}00`{{D`AbD`Db{Dd{Cb}}AnAlAnCl}Ah}{{}Bl}{BfBn}``{{{f{Ah}}c}BhDf}{{{f{Bl}}{f{Ah}}{f{b{Dd{Cb}}}}}{{Bh{jDh}}}}```````{{{f{c}}}e{}{}}00{c{{Bh{e}}}{}{}}00000{{{f{c}}}Bj{}}00````999``{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}`{{{f{Bf}}}Bf}{{{f{c}}{f{be}}}j{}{}}{{{f{c}}}j{}}0{{}Bf}{c{{Bh{Bf}}}C`}{{{f{Bf}}{f{bAd}}}Af}{cc{}}{{{f{c}}}c{}}`{ce{}{}}{c{{Bb{e}}}{}{}}``````````>==<1`````````````````;;;:::{{{f{h}}}h}98{{}Dj}{{}h}{{{f{bh}}Ab{f{A`}}}j}{{{f{Dl}}{f{{Cd{Cb}}}}}{{Cf{{f{{Cd{Cb}}}}hc}}}{{Ch{{f{{Cd{Cb}}}}}}{Cj{{f{{Cd{Cb}}}}}}}}{c{{Bh{h}}}C`}```{{{f{h}}{f{bAd}}}Af}:::9{{{f{h}}{f{Ab}}{f{A`}}}{{Aj{{f{Ah}}}}}}{{{f{h}}{f{Ab}}}{{Aj{Al}}}}{{{f{h}}}{{Aj{B`}}}}{{{f{h}}{f{Ab}}}{{Aj{An}}}}{{{f{h}}}{{Aj{Al}}}}===<<<:{BfDl}{{{f{Dj}}{f{h}}{f{b{Dd{Cb}}}}}{{Bh{jDh}}}}{{{f{h}}c}BhDf}{{{f{bh}}A`Ah}j}{{{f{bh}}AbAl}j}{{{f{bh}}B`}j}{{{f{bh}}AbAn}j}{{{f{bh}}Al}j}`````{{{f{c}}}e{}{}}```{c{{Bh{e}}}{}{}}00000{{{f{c}}}Bj{}}00``{ce{}{}}00``````{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00```{{{f{Dn}}}E`}``{{{f{Dn}}}Dn}{{{f{c}}{f{be}}}j{}{}}{{{f{c}}}j{}}{{}Eb}{{}Dn}``{{{f{bDn}}{f{A`}}}j}{{{f{Ed}}{f{{Cd{Cb}}}}}{{Cf{{f{{Cd{Cb}}}}Dnc}}}{{Ch{{f{{Cd{Cb}}}}}}{Cj{{f{{Cd{Cb}}}}}}}}{c{{Bh{Dn}}}C`}`{{{f{Dn}}{f{bAd}}}Af}{cc{}}00{{{f{c}}}c{}}``{{{f{Dn}}}{{Aj{An}}}}{{{f{Dn}}{f{A`}}}{{Aj{{f{Ah}}}}}}{{{f{Dn}}}{{Aj{Al}}}}{ce{}{}}00{c{{Bb{e}}}{}{}}00<{BfEd}{{{f{Eb}}{f{Dn}}{f{b{Dd{Cb}}}}}{{Bh{jDh}}}}{{{f{Dn}}c}BhDf}{{{f{bDn}}An}j}{{{f{bDn}}A`Ah}j}{{{f{bDn}}Al}j}{{{f{c}}}e{}{}}{c{{Bh{e}}}{}{}}00000{{{f{c}}}Bj{}}00:::","D":"Hd","p":[[0,"mut"],[5,"DeferredSlotCalls",0],[1,"reference"],[5,"DeferredCallRegistryChanges",217],[1,"unit"],[5,"DeferredCallRegistry",0],[8,"DBBatch",350],[6,"DeferredCallId",351],[5,"Slot",352],[5,"Formatter",353],[8,"Result",353],[5,"DeferredCall",88],[6,"Option",354],[1,"u64"],[5,"Amount",355],[1,"u128"],[5,"Request",356],[8,"ShareableMassaDBController",357],[5,"DeferredCallsConfig",171],[6,"Result",358],[5,"TypeId",359],[5,"DeferredCallSerializer",88],[5,"DeferredCallDeserializer",88],[10,"Deserializer",360],[1,"u8"],[1,"slice"],[8,"IResult",361],[10,"ParseError",362],[10,"ContextError",362],[1,"bool"],[1,"u16"],[6,"Address",363],[5,"String",364],[5,"Vec",365],[10,"Serializer",366],[6,"SerializeError",367],[5,"DeferredRegistryChangesSerializer",217],[5,"DeferredRegistryChangesDeserializer",217],[5,"DeferredRegistrySlotChanges",285],[1,"usize"],[5,"DeferredRegistrySlotChangesSerializer",285],[5,"DeferredRegistrySlotChangesDeserializer",285],[8,"DeferredRegistryCallChange",0],[8,"DeferredRegistryGasChange",0],[8,"DeferredRegistryBaseFeeChange",0]],"r":[[0,88]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABwBIQAAAAAAAgADAA0ABQAUAAQAGgADAB8AAQAiAAcAKwAAAC4AAAAwAAAANwADADwAAgBAAAQARgAEAEwAAABOAAAAUAAIAFwAHwB/AAIAhwAEAI4AHgCuAAEAsQAGALkAAAC8AAEAwAAAAMIAAADHACcA8gAFAPsAOwA4AQMAPwEFAEgBFgA="}],\ +["massa_event_cache",{"t":"CCCCCCFNNONNNOOOOOOOONNNNKFFNNNNONNNNONNNNMNONNNNNMNONNNNNNNNNPPSSSPPSFSPPPPFGPPPGGGPSSPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNOONNNNNOONNONNNNNNNNHNNNNNNNNNNNNNNNNNNONOOOOONNONNNNOONNNNNNNNNNNNNNNNNNNNNNNNNHFFFOOOOOONNNNNNOONNNNNOONNNNNNOONNOONOOONNNNNNNNNNNNKFFNNNNONNOONNNNNNHMNONNNNNNNNN","n":["config","controller","event_cache","rocksdb_operator","ser_deser","worker","EventCacheConfig","borrow","borrow_mut","event_cache_path","from","into","into_request","max_call_stack_length","max_event_cache_length","max_event_data_length","max_events_per_operation","max_events_per_query","max_operations_per_block","snip_amount","thread_count","try_from","try_into","type_id","vzip","EventCacheController","EventCacheControllerImpl","EventCacheWriterInputData","borrow","borrow","borrow_mut","borrow_mut","cache","clone","clone_into","clone_to_uninit","default","events","fmt","from","from","from_ref","get_filtered_sc_output_events","get_filtered_sc_output_events","input_data","into","into","into_request","into_request","new","save_events","save_events","stop","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Address","Bool","COUNTER_ERROR","COUNTER_KEY_CREATION_ERROR","CRUD_ERROR","Counter","Counter","DESTROY_ERROR","DbKeyBuilder","EVENT_DESER_ERROR","EmitterAddress","EmitterAddress","Event","Event","EventCache","FilterItem","IsError","IsError","IsFinal","KeyBuilderType","KeyIndent","KeyKind","None","OPEN_ERROR","OPERATION_ID_DESER_ERROR","OperationId","OriginalCallerAddress","OriginalCallerAddress","OriginalOperationId","OriginalOperationId","Prefix","Regular","Slot","SlotEnd","SlotStart","SlotStartEnd","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","cmp","compare","counter_key_from_filter_item","db","entry_count","eq","equivalent","equivalent","equivalent","equivalent","event_deser","event_ser","filter_for","filter_item_estimate_count","first_slot","fmt","fmt","from","from","from","from","from","from","from_event_filter","from_ref","get_filtered_sc_output_events","insert","insert_into_batch","insert_multi_it","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","key","key_builder","key_from_event","last_slot","max_entry_count","max_events_per_operation","max_events_per_query","max_operations_per_block","new","new","op_id_ser","partial_cmp","prefix_key_from_filter_item","prefix_key_from_indent","snip","snip_amount","thread_count","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","counter_merge","SCOutputEventDeserializer","SCOutputEventDeserializerArgs","SCOutputEventSerializer","addr_deser","addr_len_deser","addr_len_ser","addr_ser","block_id_deser","block_id_ser","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","data_deser","data_ser","default","deserialize","from","from","from","index_in_slot_deser","index_in_slot_ser","into","into","into","into_request","into_request","into_request","max_call_stack_length","max_event_data_length","new","new","op_id_deser","op_id_ser","serialize","slot_deser","slot_ser","thread_count","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","EventCacheManager","EventCacheWriterManagerImpl","EventCacheWriterThread","borrow","borrow","borrow_mut","borrow_mut","cache","from","from","input_data","input_data","into","into","into_request","into_request","main_loop","new","start_event_cache_writer_worker","stop","stop","thread_handle","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","wait_loop_event"],"q":[[0,"massa_event_cache"],[6,"massa_event_cache::config"],[25,"massa_event_cache::controller"],[62,"massa_event_cache::event_cache"],[197,"massa_event_cache::rocksdb_operator"],[198,"massa_event_cache::ser_deser"],[250,"massa_event_cache::worker"],[281,"tonic::request"],[282,"core::result"],[283,"core::any"],[284,"core::fmt"],[285,"massa_models::execution"],[286,"massa_models::output_event"],[287,"alloc::vec"],[288,"alloc::collections::vec_deque"],[289,"core::cmp"],[290,"alloc::collections::btree::set"],[291,"core::option"],[292,"massa_models::error"],[293,"rocksdb::write_batch"],[294,"core::iter::traits::exact_size"],[295,"core::clone"],[296,"std::path"],[297,"rocksdb::merge_operator"],[298,"nom::internal"],[299,"nom::error"],[300,"massa_serialization"],[301,"parking_lot::condvar"],[302,"parking_lot::mutex"],[303,"alloc::sync"],[304,"parking_lot::rwlock"],[305,"alloc::boxed"]],"i":[0,0,0,0,0,0,0,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,0,0,0,8,6,8,6,6,6,6,6,8,8,8,8,6,6,11,6,6,8,6,8,6,8,11,6,8,6,8,6,8,6,8,6,8,6,32,32,0,0,0,33,16,0,0,0,16,19,32,16,0,0,16,19,16,0,0,0,32,0,0,32,16,19,16,19,33,33,32,19,19,19,32,33,18,22,16,19,32,33,18,22,16,19,16,16,16,16,16,16,18,22,22,16,16,16,16,16,22,22,22,22,22,16,19,32,33,18,22,16,19,0,16,22,22,22,22,32,33,18,22,16,19,32,33,18,22,16,19,18,22,18,22,22,22,22,22,18,22,18,16,18,18,22,22,22,16,32,33,18,22,16,19,32,33,18,22,16,19,32,33,18,22,16,19,32,33,18,22,16,19,0,0,0,0,40,40,39,39,40,39,39,40,44,39,40,44,40,39,39,40,39,40,44,40,39,39,40,44,39,40,44,44,44,39,40,40,39,39,40,39,44,39,40,44,39,40,44,39,40,44,39,40,44,0,0,0,46,54,46,54,46,46,54,46,54,46,54,46,54,46,46,0,52,54,54,46,54,46,54,46,54,46,54,46],"f":"```````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{cc{}}{ce{}{}}{c{{f{e}}}{}{}}````````{c{{h{e}}}{}{}}0{{{b{c}}}j{}}3```6655`{{{b{l}}}l}{{{b{c}}{b{de}}}n{}{}}{{{b{c}}}n{}}{{}A`}`{{{b{A`}}{b{dAb}}}Ad}99{{{b{c}}}c{}}{{{b{Af}}{b{Ah}}}{{Al{Aj}}}}{{{b{l}}{b{Ah}}}{{Al{Aj}}}}`;;::4{{{b{Af}}{An{Aj}}}n}{{{b{l}}{An{Aj}}}n}`{{{b{c}}}e{}{}}<<<<;;>>````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{b{B`}}}B`}<;;{{{b{B`}}{b{B`}}}Bb}{{{b{c}}{b{e}}}Bb{}{}}{{{b{Bd}}{b{Bf}}{b{B`}}}{{Al{Bh}}}}``{{{b{B`}}{b{B`}}}Bj}{{{b{c}}{b{e}}}Bj{}{}}000``{{{b{Bl}}{b{B`}}{b{Bf}}{b{d{Bn{{Al{Bh}}}}}}{C`{{b{{Bn{{Al{Bh}}}}}}}}}Cb}{{{b{Bl}}{b{B`}}{b{Bf}}}{{h{CbCd}}}}`{{{b{B`}}{b{dAb}}}Ad}{{{b{Bf}}{b{dAb}}}Ad}{cc{}}00000{{{b{Ah}}}{{Al{{Cf{B`Bf}}}}}}{{{b{c}}}c{}}{{{b{Bl}}{b{Ah}}}{{Cf{{Al{Cb}}{Al{Aj}}}}}}{{{b{dBl}}Aj}n}{{{b{dBl}}Aj{b{dCh}}}n}{{{b{dBl}}c}n{{Cl{}{{Cj{Aj}}}}Cn}}{ce{}{}}00000{c{{f{e}}}{}{}}00000{{{b{Bd}}{b{B`}}D`{b{Db}}}{{Al{Bh}}}}`{{{b{Bd}}{b{Aj}}{b{B`}}{b{Db}}}{{C`{{Al{Bh}}}}}}`````{{}Bd}{{{b{Dd}}DfDfBhDhCbCbCbDf}Bl}`{{{b{B`}}{b{B`}}}{{C`{Bb}}}}{{{b{Bd}}{b{Bf}}{b{B`}}}{{Al{Bh}}}}{{{b{Bd}}{b{B`}}}{{Al{Bh}}}}{{{b{dBl}}{C`{Df}}}n}``{{{b{c}}}e{}{}}{c{{h{e}}}{}{}}00000000000{{{b{c}}}j{}}00000<<<<<<{{{b{{Dj{Bh}}}}{C`{{b{{Dj{Bh}}}}}}{b{Dl}}}{{C`{{Al{Bh}}}}}}`````````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00``{{}Dn}{{{b{E`}}{b{{Dj{Bh}}}}}{{Eb{{b{{Dj{Bh}}}}Ajc}}}{{Ed{{b{{Dj{Bh}}}}}}{Ef{{b{{Dj{Bh}}}}}}}}{cc{}}00``{ce{}{}}00{c{{f{e}}}{}{}}00``4{EhE`}``{{{b{Dn}}{b{Aj}}{b{d{Al{Bh}}}}}{{h{nEj}}}}```;;;;;;:::333```8877`44``3322{{{b{dEl}}}n}{{{Fb{{Cf{En{F`{A`}}}}}}{Fb{{Fd{Bl}}}}}El}{Ff{{Cf{{Fj{Fh}}{Fj{Af}}}}}}{{{b{dFh}}}n}{{{b{dFl}}}n}`{c{{h{e}}}{}{}}000{{{b{c}}}j{}}0::{{{b{dEl}}}{{Cf{A`Bj}}}}","D":"Jn","p":[[1,"reference"],[0,"mut"],[5,"Request",281],[6,"Result",282],[5,"TypeId",283],[5,"EventCacheControllerImpl",25],[1,"unit"],[5,"EventCacheWriterInputData",25],[5,"Formatter",284],[8,"Result",284],[10,"EventCacheController",25],[5,"EventFilter",285],[5,"SCOutputEvent",286],[5,"Vec",287],[5,"VecDeque",288],[6,"KeyIndent",62],[6,"Ordering",289],[5,"DbKeyBuilder",62],[6,"FilterItem",62],[1,"u8"],[1,"bool"],[5,"EventCache",62],[5,"BTreeSet",290],[6,"Option",291],[1,"u64"],[6,"ModelsError",292],[1,"tuple"],[8,"WriteBatch",293],[17,"Item"],[10,"ExactSizeIterator",294],[10,"Clone",295],[6,"KeyBuilderType",62],[6,"KeyKind",62],[5,"Path",296],[1,"usize"],[1,"u16"],[1,"slice"],[5,"MergeOperands",297],[5,"SCOutputEventSerializer",198],[5,"SCOutputEventDeserializer",198],[8,"IResult",298],[10,"ParseError",299],[10,"ContextError",299],[5,"SCOutputEventDeserializerArgs",198],[6,"SerializeError",300],[5,"EventCacheWriterThread",250],[5,"Condvar",301],[8,"Mutex",302],[5,"Arc",303],[8,"RwLock",304],[5,"EventCacheConfig",6],[10,"EventCacheManager",250],[5,"Box",305],[5,"EventCacheWriterManagerImpl",250]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAMIAGgAAAAkADQAAABYAAwAdAAMAIgAFACoAAgAwAAQANgAWAE8AAgBUACAAeAAEAH8AAACCAAEAiwAAAJYABQCkAAAApwAAAK0AGQDKAA8A3QABAOIAGAD+AAMABQEAAAkBAQAMAQEAEQEHAA=="}],\ ["massa_executed_ops",{"t":"FIFFFFIFFFOOCOOOOOOOOQQOCOCCOOOOOQQOOOOCOOOOOOOOOOOOFFNNNNNNNNNNOONNNNNNNNNNOOOONNNNNNNNNNIFFNNNNOONNNNNNNNNNNNNNNNNOONNFNNNNNNONONOONNNNNNNNNNONNNNNFNOONNNNNONONNNNNNNNOOONNNNOOONNNNNIFFNNNNNNNNNNNNNNOOOONOONNNNNNOONN","n":["ExecutedDenunciations","ExecutedDenunciationsChanges","ExecutedDenunciationsChangesDeserializer","ExecutedDenunciationsChangesSerializer","ExecutedDenunciationsConfig","ExecutedOps","ExecutedOpsChanges","ExecutedOpsChangesDeserializer","ExecutedOpsChangesSerializer","ExecutedOpsConfig","bool_deserializer","bool_serializer","config","config","config","db","db","de_idx_deserializer","de_idx_serializer","denunciation_expire_periods","denunciation_index_deserializer","denunciation_index_key","denunciation_index_key","denunciation_index_serializer","denunciations_changes","endorsement_count","executed_denunciations","executed_ops","keep_executed_history_extra_periods","keep_executed_history_extra_periods","op_exec_status","op_execution","op_execution_deserializer","op_id_key","op_id_key","operation_id_deserializer","operation_id_deserializer","operation_id_serializer","operation_id_serializer","ops_changes","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","sorted_denunciations","sorted_ops","thread_count","thread_count","u64_deserializer","u64_deserializer","u64_serializer","u64_serializer","ExecutedDenunciationsConfig","ExecutedOpsConfig","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","denunciation_expire_periods","endorsement_count","fmt","fmt","from","from","from_ref","from_ref","into","into","into_request","into_request","keep_executed_history_extra_periods","keep_executed_history_extra_periods","thread_count","thread_count","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","ExecutedDenunciationsChanges","ExecutedDenunciationsChangesDeserializer","ExecutedDenunciationsChangesSerializer","borrow","borrow","borrow_mut","borrow_mut","de_idx_deserializer","de_idx_serializer","default","deserialize","from","from","into","into","into_request","into_request","new","new","serialize","try_from","try_from","try_into","try_into","type_id","type_id","u64_deserializer","u64_serializer","vzip","vzip","ExecutedDenunciations","apply_changes_to_batch","borrow","borrow_mut","clone","clone_into","clone_to_uninit","config","contains","db","delete_entry","denunciation_index_deserializer","denunciation_index_serializer","from","from_ref","into","into_request","is_key_value_valid","new","prune_to_batch","put_entry","recompute_sorted_denunciations","reset","sorted_denunciations","to_owned","try_from","try_into","type_id","vzip","ExecutedOps","apply_changes_to_batch","bool_deserializer","bool_serializer","borrow","borrow_mut","clone","clone_into","clone_to_uninit","config","contains","db","delete_entry","from","from_ref","get_ops_exec_status","into","into_request","is_key_value_valid","new","op_exec_status","operation_id_deserializer","operation_id_serializer","prune_to_batch","put_entry","recompute_sorted_ops_and_op_exec_status","reset","slot_deserializer","slot_serializer","sorted_ops","to_owned","try_from","try_into","type_id","vzip","ExecutedOpsChanges","ExecutedOpsChangesDeserializer","ExecutedOpsChangesSerializer","borrow","borrow","borrow_mut","borrow_mut","default","deserialize","from","from","into","into","into_request","into_request","new","new","op_execution","op_execution_deserializer","operation_id_deserializer","operation_id_serializer","serialize","slot_deserializer","slot_serializer","try_from","try_from","try_into","try_into","type_id","type_id","u64_deserializer","u64_serializer","vzip","vzip"],"q":[[0,"massa_executed_ops"],[52,"massa_executed_ops::config"],[90,"massa_executed_ops::denunciations_changes"],[120,"massa_executed_ops::executed_denunciations"],[149,"massa_executed_ops::executed_ops"],[184,"massa_executed_ops::ops_changes"],[218,"core::fmt"],[219,"tonic::request"],[220,"core::result"],[221,"core::any"],[222,"nom::internal"],[223,"nom::error"],[224,"alloc::vec"],[225,"massa_serialization"],[226,"massa_models::slot"],[227,"massa_db_exports::db_batch"],[228,"massa_models::denunciation"],[229,"massa_db_exports::controller"],[230,"massa_models::operation"],[231,"core::option"]],"i":[0,0,0,0,0,0,0,0,0,0,29,29,0,23,29,23,29,12,11,4,23,0,0,23,0,4,0,0,3,4,29,34,35,0,0,35,29,34,29,0,35,29,34,29,23,29,3,4,12,35,11,34,0,0,3,4,3,4,3,4,3,4,3,4,4,4,3,4,3,4,3,4,3,4,3,4,3,4,3,4,3,4,3,4,3,4,3,4,3,4,0,0,0,11,12,11,12,12,11,11,12,11,12,11,12,11,12,11,12,11,11,12,11,12,11,12,12,11,11,12,0,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,0,0,34,35,34,35,34,35,34,35,34,35,34,35,34,35,34,35,35,34,34,35,34,34,35,34,35,34,35,35,34,34,35],"f":"``````````````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{f}}}f}{{{b{h}}}h}{{{b{c}}{b{de}}}j{}{}}0{{{b{c}}}j{}}0``{{{b{f}}{b{dl}}}n}{{{b{h}}{b{dl}}}n}{cc{}}0{{{b{c}}}c{}}0{ce{}{}}0{c{{A`{e}}}{}{}}0````{{{b{c}}}e{}{}}0{c{{Ab{e}}}{}{}}000{{{b{c}}}Ad{}}044```>>==``{{}Af}{{{b{Ah}}{b{{Al{Aj}}}}}{{B`{{b{{Al{Aj}}}}Anc}}}{{Bb{{b{{Al{Aj}}}}}}{Bd{{b{{Al{Aj}}}}}}}}8866551{{AjBfBh}Ah}{{{b{Af}}{b{An}}{b{d{Bj{Aj}}}}}{{Ab{jBl}}}}555544``88`{{{b{dBn}}AnC`{b{dCb}}}j}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bn}}}Bn}{{{b{c}}{b{de}}}j{}{}}{{{b{c}}}j{}}`{{{b{Bn}}{b{Cd}}}Cf}`{{{b{Bn}}{b{Cd}}{b{dCb}}}j}``{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{A`{e}}}{}{}}{{{b{Bn}}{b{{Al{Aj}}}}{b{{Al{Aj}}}}}Cf}{{hCh}Bn}{{{b{dBn}}C`{b{dCb}}}j}7{{{b{dBn}}}j}0`{{{b{c}}}e{}{}}{c{{Ab{e}}}{}{}}0{{{b{c}}}Ad{}}8`{{{b{dCj}}ClC`{b{dCb}}}j}``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Cj}}}Cj}{{{b{c}}{b{de}}}j{}{}}{{{b{c}}}j{}}`{{{b{Cj}}{b{Cn}}}Cf}`{{{b{Cj}}{b{Cn}}{b{dCb}}}j}{cc{}}{{{b{c}}}c{}}{{{b{Cj}}{b{{Al{Cn}}}}}{{Bj{{D`{Cf}}}}}}{ce{}{}}{c{{A`{e}}}{}{}}{{{b{Cj}}{b{{Al{Aj}}}}{b{{Al{Aj}}}}}Cf}{{fCh}Cj}```{{{b{dCj}}C`{b{dCb}}}j}{{{b{Cj}}{b{Cn}}{b{{Db{CfC`}}}}{b{dCb}}}j}{{{b{dCj}}}j}0```{{{b{c}}}e{}{}}{c{{Ab{e}}}{}{}}0{{{b{c}}}Ad{}}9```{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{}Dd}{{{b{Df}}{b{{Al{Aj}}}}}{{B`{{b{{Al{Aj}}}}Clc}}}{{Bb{{b{{Al{Aj}}}}}}{Bd{{b{{Al{Aj}}}}}}}}{cc{}}0>>==2{{AjBh}Df}````{{{b{Dd}}{b{Cl}}{b{d{Bj{Aj}}}}}{{Ab{jBl}}}}``888877``{ce{}{}}0","D":"Kn","p":[[1,"reference"],[0,"mut"],[5,"ExecutedOpsConfig",52],[5,"ExecutedDenunciationsConfig",52],[1,"unit"],[5,"Formatter",218],[8,"Result",218],[5,"Request",219],[6,"Result",220],[5,"TypeId",221],[5,"ExecutedDenunciationsChangesSerializer",90],[5,"ExecutedDenunciationsChangesDeserializer",90],[1,"u8"],[1,"slice"],[8,"ExecutedDenunciationsChanges",90],[8,"IResult",222],[10,"ParseError",223],[10,"ContextError",223],[1,"u32"],[1,"u64"],[5,"Vec",224],[6,"SerializeError",225],[5,"ExecutedDenunciations",120],[5,"Slot",226],[8,"DBBatch",227],[6,"DenunciationIndex",228],[1,"bool"],[8,"ShareableMassaDBController",229],[5,"ExecutedOps",149],[8,"ExecutedOpsChanges",184],[6,"OperationId",230],[6,"Option",231],[1,"tuple"],[5,"ExecutedOpsChangesSerializer",184],[5,"ExecutedOpsChangesDeserializer",184]],"r":[[0,120],[1,90],[2,90],[3,90],[4,52],[5,149],[6,184],[7,184],[8,184],[9,52]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAHsAGwAFAAAACgACABIAAQAgAAEAJAADACkAAwAxAA8AQwABAEcAAQBLAAEAUQAJAF4ABwBqAAEAbgAKAHsABACHAAAAiQAAAJEABACYAAYApAAAAKcAAACrAAEAsQABALQABAC8AAUAxgABAMoAEAA="}],\ -["massa_execution_exports",{"t":"PPPPPPPPPPPPPPPPPPPPPPPFPPPPPPPPPPPPPFPPPFPFFFFKGKFFGGFGFGFFPPPPFPPPPPPPPPPFFFGPPPPPGFPPPNNOOOOOOOOOOONNNNOOOOOOOOOOOOOCONNMNNNNOOOCOOOONNOOONNNNNNNNOCCOMOOOOOONNNNNNOOOONMMMMMMMMOONNNNNNOOOONNOOOOCOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONOOOOOOONNOMOOOOOOCOOOOOOOMOOOOOOONNNNNNNNCCNNNNNNMNNOOOOOOOOOOOOOOOOOOFNNNNNNNNNNNNNNNNNONNNNNNNNKKMMMMMMMMMMMMMPPPPGGPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHHHHHFFNNOOOONNNNOOOOONNNNNNNOOOONNNNNNNNONNNNNNOOOONNNNNNONNOOOOOOOOOOOOOOOOOOOONNOOOOOOOONNNNNNNNNNNNNNNNPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPFPFFFFGFGFGFFPPPPPPFFFGPGNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNOOOONNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOO","n":["AddressBalanceCandidate","AddressBalanceFinal","AddressBytecodeCandidate","AddressBytecodeFinal","AddressDatastoreKeysCandidate","AddressDatastoreKeysFinal","AddressDatastoreValueCandidate","AddressDatastoreValueFinal","AddressDeferredCreditsCandidate","AddressDeferredCreditsFinal","AddressExistsCandidate","AddressExistsFinal","AddressRollsCandidate","AddressRollsFinal","AlreadyExecutedWithFailure","AlreadyExecutedWithSuccess","Amount","BlockGasError","Boolean","Bytecode","BytecodeExecution","CacheError","ChannelError","CondomLimits","CycleInfos","CycleInfos","DatastoreValue","DeferredCallInfo","DeferredCallInfo","DeferredCallQuote","DeferredCallQuote","DeferredCallsBySlot","DeferredCallsBySlot","DeferredCallsError","DeferredCredits","DenunciationExecutionStatusCandidate","DenunciationExecutionStatusFinal","EventStore","Events","Events","ExecutableOrExpired","ExecutedBlockInfo","ExecutedSlot","ExecutionAddressInfo","ExecutionBlockMetadata","ExecutionChannels","ExecutionConfig","ExecutionController","ExecutionError","ExecutionManager","ExecutionOutput","ExecutionQueryCycleInfos","ExecutionQueryError","ExecutionQueryExecutionStatus","ExecutionQueryRequest","ExecutionQueryRequestItem","ExecutionQueryResponse","ExecutionQueryResponseItem","ExecutionQueryStakerInfo","ExecutionStackElement","ExecutionStatus","FactoryError","FinalizedSlot","FunctionCall","GasCosts","IncludeDenunciationError","IncludeOperationError","InvalidSlotRange","KeyList","MassaHashError","ModelsError","NotEnoughGas","NotFound","OpExecutionStatusCandidate","OpExecutionStatusFinal","ReadOnlyCallRequest","ReadOnlyExecutionOutput","ReadOnlyExecutionRequest","ReadOnlyExecutionTarget","RollBuyError","RollCount","RollSellError","RuntimeError","SlashError","SlotExecutionOutput","StorageCostsConstants","TooMuchGas","TransactionError","VMError","__clone_box","__clone_box","abi_costs","active_rolls","address","announced_version","async_msg_cst_gas_cost","auto_sell_execution","base_operation_gas_cost","block_dump_folder_path","block_id","block_info","block_reward","borrow","borrow","borrow_mut","borrow_mut","broadcast_enabled","broadcast_slot_execution_output_channel_capacity","broadcast_slot_execution_traces_channel_capacity","broadcast_traces_enabled","call_result","call_stack","call_stack","cancel_async_message_execution","candidate_balance","candidate_cursor","candidate_datastore_keys","candidate_roll_count","chain_id","channels","cl_compilation_cost","clone","clone","clone_box","clone_into","clone_into","clone_to_uninit","clone_to_uninit","coins","coins","condom_limits","controller_traits","current_version","cursor_delay","cycle","cycle_infos","default","default","deferred_calls_config","deferred_credits_execution","denunciation_expire_periods","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_count","error","event_store","events","execute_readonly_request","fee","final_balance","final_cursor","final_datastore_keys","final_roll_count","final_state_fingerprint","fmt","fmt","from","from","from_ref","from_ref","future_deferred_credits","gas_cost","gas_costs","genesis_timestamp","get_abi_costs","get_addresses_infos","get_cycle_active_rolls","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_data_entry","get_final_and_candidate_balance","get_ops_exec_status","get_stats","hd_cache_path","hd_cache_size","init","init","into","into","into_request","into_request","is_final","is_final","last_start_period","launch_cost","layout_raw","layout_raw","ledger_cost_per_byte","ledger_entry_base_cost","ledger_entry_datastore_base_cost","lru_cache_size","mapping_grpc","max_async_gas","max_bytecode_size","max_custom_sections_data_len","max_custom_sections_len","max_datastore_key_length","max_datastore_value_size","max_event_per_operation","max_event_size","max_execution_traces_slot_limit","max_exports","max_final_events","max_function_length","max_function_names_len","max_functions","max_gas","max_gas","max_gas_per_block","max_global_initializers_len","max_globals_len","max_imports_len","max_instance_cost","max_memories_len","max_miss_ratio","max_name_len","max_parameter_length","max_passive_data_len","max_passive_elements_len","max_read_only_gas","max_recursive_calls_depth","max_signature_len","max_table_initializers_len","max_tables_count","new","operation_datastore","operation_validity_period","operator_cost","out","owned_addresses","parameter","periods_per_cycle","pointer_metadata","pointer_metadata","production_stats","query_state","readonly_queue_length","requests","responses","roll_count_to_slash_on_denunciation","roll_price","same_thread_parent_creator","settings","slot","slot_execution_output_sender","snip_amount","sp_compilation_cost","staker_infos","state_changes","stats_time_window_duration","stop","storage","storage_costs_constants","t0","target","target_addr","target_func","thread_count","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","types","types_trace_info","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_blockclique_status","vzip","vzip","context","error","addr","addr","addr","addr","cycle","key","key","max_gas_request","params_size","prefix","prefix","restrict_to_addresses","target_slot","parameter","target_addr","target_func","ExecutionChannels","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","slot_execution_output_sender","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ExecutionController","ExecutionManager","clone_box","execute_readonly_request","get_addresses_infos","get_cycle_active_rolls","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_data_entry","get_final_and_candidate_balance","get_ops_exec_status","get_stats","query_state","stop","update_blockclique_status","BlockGasError","CacheError","ChannelError","DeferredCallsError","ExecutionError","ExecutionQueryError","FactoryError","IncludeDenunciationError","IncludeOperationError","InvalidSlotRange","MassaHashError","ModelsError","NotEnoughGas","NotFound","RollBuyError","RollSellError","RuntimeError","SlashError","TooMuchGas","TransactionError","VMError","__clone_box","__clone_box","as_error","as_error","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","init","init","into","into","into_request","into_request","layout_raw","layout_raw","pointer_metadata","pointer_metadata","source","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","context","error","EventStore","__clone_box","borrow","borrow_mut","clear","clone","clone_into","clone_to_uninit","default","deref","deref_mut","deserialize","drop","extend","finalize","fmt","from","from_ref","get_filtered_sc_output_events","get_filtered_sc_output_events_iter","init","into","into_request","layout_raw","pointer_metadata","prune","push","serialize","take","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","to_cycle_info","to_event_filter","to_execution_query_response","to_execution_query_result","to_execution_query_staker_info","to_querystate_filter","ExecutionConfig","StorageCostsConstants","__clone_box","__clone_box","async_msg_cst_gas_cost","base_operation_gas_cost","block_dump_folder_path","block_reward","borrow","borrow","borrow_mut","borrow_mut","broadcast_enabled","broadcast_slot_execution_output_channel_capacity","broadcast_slot_execution_traces_channel_capacity","broadcast_traces_enabled","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","condom_limits","cursor_delay","deferred_calls_config","denunciation_expire_periods","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_count","fmt","fmt","from","from","from_ref","from_ref","gas_costs","genesis_timestamp","hd_cache_path","hd_cache_size","init","init","into","into","into_request","into_request","last_start_period","layout_raw","layout_raw","ledger_cost_per_byte","ledger_entry_base_cost","ledger_entry_datastore_base_cost","lru_cache_size","max_async_gas","max_bytecode_size","max_datastore_key_length","max_datastore_value_size","max_event_per_operation","max_event_size","max_execution_traces_slot_limit","max_final_events","max_function_length","max_gas_per_block","max_miss_ratio","max_parameter_length","max_read_only_gas","max_recursive_calls_depth","operation_validity_period","periods_per_cycle","pointer_metadata","pointer_metadata","readonly_queue_length","roll_count_to_slash_on_denunciation","roll_price","snip_amount","stats_time_window_duration","storage_costs_constants","t0","thread_count","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","AddressBalanceCandidate","AddressBalanceFinal","AddressBytecodeCandidate","AddressBytecodeFinal","AddressDatastoreKeysCandidate","AddressDatastoreKeysFinal","AddressDatastoreValueCandidate","AddressDatastoreValueFinal","AddressDeferredCreditsCandidate","AddressDeferredCreditsFinal","AddressExistsCandidate","AddressExistsFinal","AddressRollsCandidate","AddressRollsFinal","AlreadyExecutedWithFailure","AlreadyExecutedWithSuccess","Amount","Boolean","Bytecode","BytecodeExecution","CycleInfos","CycleInfos","DatastoreValue","DeferredCallInfo","DeferredCallInfo","DeferredCallQuote","DeferredCallQuote","DeferredCallsBySlot","DeferredCallsBySlot","DeferredCredits","DenunciationExecutionStatusCandidate","DenunciationExecutionStatusFinal","Events","Events","ExecutableOrExpired","ExecutedBlockInfo","ExecutedSlot","ExecutionAddressInfo","ExecutionBlockMetadata","ExecutionOutput","ExecutionQueryCycleInfos","ExecutionQueryExecutionStatus","ExecutionQueryRequest","ExecutionQueryRequestItem","ExecutionQueryResponse","ExecutionQueryResponseItem","ExecutionQueryStakerInfo","ExecutionStackElement","ExecutionStatus","FinalizedSlot","FunctionCall","KeyList","OpExecutionStatusCandidate","OpExecutionStatusFinal","ReadOnlyCallRequest","ReadOnlyExecutionOutput","ReadOnlyExecutionRequest","ReadOnlyExecutionTarget","RollCount","SlotExecutionOutput","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","active_rolls","address","announced_version","auto_sell_execution","block_id","block_info","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_result","call_stack","call_stack","cancel_async_message_execution","candidate_balance","candidate_cursor","candidate_datastore_keys","candidate_roll_count","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","coins","current_version","cycle","cycle_infos","deferred_credits_execution","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","events","fee","final_balance","final_cursor","final_datastore_keys","final_roll_count","final_state_fingerprint","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","future_deferred_credits","gas_cost","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_final","is_final","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","max_gas","max_gas","operation_datastore","out","owned_addresses","parameter","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","production_stats","requests","responses","same_thread_parent_creator","serialize","serialize","slot","staker_infos","state_changes","storage","target","target_addr","target_func","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","addr","addr","addr","addr","cycle","key","key","max_gas_request","params_size","prefix","prefix","restrict_to_addresses","target_slot","parameter","target_addr","target_func"],"q":[[0,"massa_execution_exports"],[283,"massa_execution_exports::ExecutionError"],[285,"massa_execution_exports::ExecutionQueryRequestItem"],[298,"massa_execution_exports::ReadOnlyExecutionTarget"],[301,"massa_execution_exports::channels"],[328,"massa_execution_exports::controller_traits"],[343,"massa_execution_exports::error"],[427,"massa_execution_exports::error::ExecutionError"],[429,"massa_execution_exports::event_store"],[466,"massa_execution_exports::mapping_grpc"],[472,"massa_execution_exports::settings"],[574,"massa_execution_exports::types"],[1077,"massa_execution_exports::types::ExecutionQueryRequestItem"],[1090,"massa_execution_exports::types::ReadOnlyExecutionTarget"],[1093,"dyn_clone::sealed"],[1094,"massa_sc_runtime::types"],[1095,"alloc::boxed"],[1096,"rkyv::with"],[1097,"core::result"],[1098,"core::fmt"],[1099,"alloc::string"],[1100,"std::collections::hash::map"],[1101,"massa_models::address"],[1102,"massa_models::slot"],[1103,"core::ops::range"],[1104,"alloc::vec"],[1105,"alloc::collections::btree::map"],[1106,"massa_models::denunciation"],[1107,"massa_models::execution"],[1108,"massa_models::output_event"],[1109,"core::option"],[1110,"massa_models::amount"],[1111,"massa_models::operation"],[1112,"massa_models::stats"],[1113,"tonic::request"],[1114,"core::alloc::layout"],[1115,"std::path"],[1116,"anyhow"],[1117,"core::any"],[1118,"massa_models::block_id"],[1119,"massa_models::prehash"],[1120,"core::error"],[1121,"massa_module_cache::error"],[1122,"massa_models::error"],[1123,"massa_versioning::versioning_factory"],[1124,"massa_hash::error"],[1125,"alloc::collections::vec_deque"],[1126,"core::iter::traits::iterator"],[1127,"serde::ser"],[1128,"massa_proto_rs::massa::api::v1"]],"i":[72,72,72,72,72,72,72,72,72,72,72,72,72,72,81,81,66,14,66,66,78,14,14,0,72,66,66,72,66,72,66,72,66,14,66,72,72,0,72,66,81,0,75,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,14,75,78,0,14,14,14,66,14,14,14,52,72,72,0,0,0,0,14,66,14,14,14,0,0,14,14,14,5,6,6,69,80,76,74,77,74,74,76,77,74,5,6,5,6,74,74,74,74,13,12,79,77,24,43,24,24,74,0,6,5,6,7,5,6,5,6,12,80,74,0,76,74,63,24,5,6,74,77,74,5,6,5,6,5,6,5,6,74,0,0,77,7,12,24,43,24,24,43,5,6,5,6,5,6,24,13,74,74,6,7,7,7,7,7,7,7,7,74,74,5,6,5,6,5,6,63,79,74,6,5,6,73,73,73,74,0,74,74,5,5,74,74,74,74,74,5,74,74,5,5,12,79,74,5,5,5,6,5,74,5,74,5,5,74,74,5,5,5,6,80,74,6,13,80,79,74,5,6,69,7,74,42,43,74,74,48,0,77,50,74,6,63,77,74,44,48,74,74,12,79,79,74,5,6,5,6,5,6,5,6,0,0,5,6,5,6,5,6,7,5,6,82,82,83,84,85,86,87,85,86,88,88,83,84,87,88,89,89,89,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,7,7,7,7,7,7,7,7,7,7,7,44,7,14,14,14,14,0,0,14,14,14,14,14,14,14,52,14,14,14,14,14,14,14,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,14,52,52,14,14,14,14,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,82,82,0,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,0,0,0,0,0,0,0,0,73,74,74,74,74,74,73,74,73,74,74,74,74,74,74,73,74,73,74,73,73,74,74,74,74,74,73,74,73,74,73,74,73,74,74,73,74,73,74,73,74,74,74,74,74,73,74,73,74,73,74,74,73,74,73,73,73,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,73,74,74,74,74,74,74,74,74,74,73,74,73,74,73,74,73,74,73,74,73,74,73,74,73,74,72,72,72,72,72,72,72,72,72,72,72,72,72,72,81,81,66,66,66,78,72,66,66,72,66,72,66,72,66,66,72,72,72,66,81,0,75,0,0,0,0,0,0,0,0,0,0,0,66,75,78,66,72,72,0,0,0,0,66,0,48,24,75,76,77,13,12,78,79,80,69,80,76,77,76,77,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,13,12,79,77,24,43,24,24,48,24,75,76,77,13,12,78,79,80,48,24,75,76,77,13,12,78,79,80,48,24,75,76,77,13,12,78,79,80,12,80,76,63,24,77,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,77,12,24,43,24,24,43,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,48,24,75,76,77,13,12,78,79,80,24,13,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,63,79,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,12,79,80,13,80,79,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,69,42,43,48,76,77,77,63,77,48,12,79,79,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,83,84,85,86,87,85,86,88,88,83,84,87,88,89,89,89],"f":"`````````````````````````````````````````````````````````````````````````````````````````{{{b{c}}d}f{}}0```````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{hc}}}{{b{he}}}{}{}}0```````````````{{{b{j}}}j}{{{b{l}}}l}{{{b{n}}}{{A`{n}}}}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}0````````{{}j}{{}l}```{Ab{{b{c}}}{}}0{Ab{{b{hc}}}{}}0{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0{Abf}0````{{{b{n}}Ah}{{Af{AjAl}}}}``````{{{b{j}}{b{hAn}}}{{Af{fB`}}}}{{{b{l}}{b{hAn}}}{{Af{fB`}}}}{cc{}}0{{{b{c}}}c{}}0````{{{b{l}}}{{b{{Bf{BbBd}}}}}}{{{b{n}}{b{{Bj{Bh}}}}{Bn{Bl}}}{{Cb{C`}}}}{{{b{n}}Bd}{{Cd{BhBd}}}}{{{b{n}}{b{Cf}}}{{Cj{ChCh}}}}{{{b{n}}Cl}{{Cb{Cn}}}}{{{b{n}}{Cb{{Cj{Bh{Cb{D`}}}}}}}{{Cb{{Cj{{Db{{Cb{D`}}}}{Db{{Cb{D`}}}}}}}}}}{{{b{n}}{b{{Bj{Bh}}}}}{{Cb{{Cj{{Db{Dd}}{Db{Dd}}}}}}}}{{{b{n}}{b{{Bj{Df}}}}}{{Cb{{Cj{{Db{Ch}}{Db{Ch}}}}}}}}{{{b{n}}}Dh}``{{}Ab}0{ce{}{}}0{c{{Dj{e}}}{}{}}0````{{}{{Af{DlDn}}}}0`````````````````````````````````````{E`{{Af{lEb}}}}```````{b}0`{{{b{n}}Ed}Ef}``````````````{{{b{hEh}}}f}```````{{{b{c}}}e{}{}}0{c{{Af{e}}}{}{}}000{{{b{c}}}Ej{}}0``{{{A`{c}}}{{A`{El}}}{}}0{{{b{hc}}}{{b{hEl}}}{}}0{{{b{c}}}{{b{El}}}{}}0{{{b{n}}{Bf{BlEn}}{Db{{Bf{BlEn}}}}{Fb{EnF`}}}f}==```````````````````{{{b{c}}d}f{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{Fd}}}Fd}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ab{{b{c}}}{}}{Ab{{b{hc}}}{}}{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}{Abf}{cc{}}{{{b{c}}}c{}}{{}Ab}{ce{}{}}{c{{Dj{e}}}{}{}}{{}{{Af{DlDn}}}}{b}`{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{c}}}Ej{}}{{{A`{c}}}{{A`{El}}}{}}{{{b{hc}}}{{b{hEl}}}{}}{{{b{c}}}{{b{El}}}{}}9``{{{b{n}}}{{A`{n}}}}{{{b{n}}Ah}{{Af{AjAl}}}}{{{b{n}}{b{{Bj{Bh}}}}{Bn{Bl}}}{{Cb{C`}}}}{{{b{n}}Bd}{{Cd{BhBd}}}}{{{b{n}}{b{Cf}}}{{Cj{ChCh}}}}{{{b{n}}Cl}{{Cb{Cn}}}}{{{b{n}}{Cb{{Cj{Bh{Cb{D`}}}}}}}{{Cb{{Cj{{Db{{Cb{D`}}}}{Db{{Cb{D`}}}}}}}}}}{{{b{n}}{b{{Bj{Bh}}}}}{{Cb{{Cj{{Db{Dd}}{Db{Dd}}}}}}}}{{{b{n}}{b{{Bj{Df}}}}}{{Cb{{Cj{{Db{Ch}}{Db{Ch}}}}}}}}{{{b{n}}}Dh}{{{b{n}}Ed}Ef}{{{b{hEh}}}f}{{{b{n}}{Bf{BlEn}}{Db{{Bf{BlEn}}}}{Fb{EnF`}}}f}`````````````````````{{{b{c}}d}f{}}0{{{b{c}}}{{b{Ff}}}{}}0{{{b{c}}}{{b{e}}}{}{}}0{{{b{hc}}}{{b{he}}}{}{}}0{{{b{Al}}}Al}{{{b{Fh}}}Fh}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}0{Ab{{b{c}}}{}}0{Ab{{b{hc}}}{}}0{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0{Abf}0{{{b{Al}}{b{hAn}}}Fj}0{{{b{Fh}}{b{hAn}}}Fj}0{FlAl}{FnAl}{G`Al}{cc{}}{GbAl}1{{{b{c}}}c{}}0{{}Ab}0{ce{}{}}0{c{{Dj{e}}}{}{}}0{{}{{Af{DlDn}}}}0{b}0{{{b{Al}}}{{Db{{b{Ff}}}}}}{{{b{c}}}e{}{}}0{{{b{c}}}Bb{}}0{c{{Af{e}}}{}{}}000{{{b{c}}}Ej{}}0{{{A`{c}}}{{A`{El}}}{}}0{{{b{hc}}}{{b{hEl}}}{}}0{{{b{c}}}{{b{El}}}{}}0;;```{{{b{c}}d}f{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{hGd}}}f}{{{b{Gd}}}Gd}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{{}Gd}{Ab{{b{c}}}{}}{Ab{{b{hc}}}{}}{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}{Abf}{{{b{hGd}}Gd}f}9{{{b{Gd}}{b{hAn}}}Fj}{cc{}}{{{b{c}}}c{}}{{{b{Gd}}{b{Cl}}}{{Gf{Cn}}}}{{{b{Gd}}{b{Cl}}}{{`{{Gj{}{{Gh{{b{Cn}}}}}}}}}}{{}Ab}{ce{}{}}{c{{Dj{e}}}{}{}}{{}{{Af{DlDn}}}}{b}{{{b{hGd}}Ab}f}{{{b{hGd}}Cn}f}{{{b{Gd}}c}AfGl}{{{b{hGd}}}{{Gf{Cn}}}}{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{c}}}Ej{}}{{{A`{c}}}{{A`{El}}}{}}{{{b{hc}}}{{b{hEl}}}{}}{{{b{c}}}{{b{El}}}{}}={GnH`}{{{Cb{Hb}}}{{Af{ClFn}}}}{{{Af{HdFh}}}Hf}{HdHh}{{BhHj}Hl}{Hn{{Af{I`Fn}}}}``{{{b{c}}d}f{}}0````{{{b{c}}}{{b{e}}}{}{}}0{{{b{hc}}}{{b{he}}}{}{}}0`````{{{b{Ib}}}Ib}{{{b{Id}}}Id}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}00````{Ab{{b{c}}}{}}0{Ab{{b{hc}}}{}}0{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0{Abf}0`{{{b{Ib}}{b{hAn}}}Fj}{{{b{Id}}{b{hAn}}}Fj}{cc{}}0{{{b{c}}}c{}}0````{{}Ab}0{ce{}{}}0{c{{Dj{e}}}{}{}}0`{{}{{Af{DlDn}}}}0````````````````````{b}0````````{{{b{c}}}e{}{}}0{c{{Af{e}}}{}{}}000{{{b{c}}}Ej{}}0{{{A`{c}}}{{A`{El}}}{}}0{{{b{hc}}}{{b{hEl}}}{}}0{{{b{c}}}{{b{El}}}{}}099````````````````````````````````````````````````````````````{{{b{c}}d}f{}}000000000``````{{{b{c}}}{{b{e}}}{}{}}0000000000000000{{{b{hc}}}{{b{he}}}{}{}}0000000000000000````````{{{b{F`}}}F`}{{{b{C`}}}C`}{{{b{If}}}If}{{{b{Ih}}}Ih}{{{b{Ij}}}Ij}{{{b{Aj}}}Aj}{{{b{Ah}}}Ah}{{{b{Il}}}Il}{{{b{In}}}In}{{{b{J`}}}J`}{{{b{c}}{b{he}}}f{}{}}000000000{{{b{c}}}f{}}000000000``````{Ab{{b{c}}}{}}0000000000000000{Ab{{b{hc}}}{}}0000000000000000{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0000000000000000{Abf}0000000000000000```````{{{b{F`}}{b{hAn}}}Fj}{{{b{C`}}{b{hAn}}}Fj}{{{b{If}}{b{hAn}}}Fj}{{{b{Ih}}{b{hAn}}}Fj}{{{b{Ij}}{b{hAn}}}Fj}{{{b{Aj}}{b{hAn}}}Fj}{{{b{Ah}}{b{hAn}}}Fj}{{{b{Il}}{b{hAn}}}Fj}{{{b{In}}{b{hAn}}}Fj}{{{b{J`}}{b{hAn}}}Fj}{cc{}}0000000000000000{{{b{c}}}c{}}000000000``{{}Ab}0000000000000000{ce{}{}}0000000000000000{c{{Dj{e}}}{}{}}0000000000000000``{{}{{Af{DlDn}}}}0000000000000000``````{b}0000000000000000````{{{b{Ih}}c}AfGl}{{{b{Ij}}c}AfGl}```````{{{b{c}}}e{}{}}000000000{c{{Af{e}}}{}{}}000000000000000000000000000000000{{{b{c}}}Ej{}}0000000000000000{{{A`{c}}}{{A`{El}}}{}}0000000000000000{{{b{hc}}}{{b{hEl}}}{}}0000000000000000{{{b{c}}}{{b{El}}}{}}0000000000000000;;;;;;;;;;;;;;;;;````````````````","D":"CNb","p":[[1,"reference"],[5,"Private",1093],[1,"unit"],[0,"mut"],[5,"CondomLimits",0,1094],[5,"GasCosts",0,1094],[10,"ExecutionController",328],[5,"Box",1095],[1,"usize"],[5,"With",1096],[6,"Result",1097],[5,"ReadOnlyExecutionRequest",574],[5,"ReadOnlyExecutionOutput",574],[6,"ExecutionError",343],[5,"Formatter",1098],[5,"Error",1098],[5,"String",1099],[1,"u64"],[5,"HashMap",1100],[6,"Address",1101],[1,"slice"],[5,"Slot",1102],[6,"Bound",1103],[5,"ExecutionAddressInfo",574],[5,"Vec",1104],[5,"BTreeMap",1105],[6,"DenunciationIndex",1106],[1,"bool"],[1,"tuple"],[5,"EventFilter",1107],[5,"SCOutputEvent",1108],[1,"u8"],[6,"Option",1109],[5,"Amount",1110],[6,"OperationId",1111],[5,"ExecutionStats",1112],[5,"Request",1113],[5,"Layout",1114],[5,"LayoutError",1114],[5,"PathBuf",1115],[5,"Error",1116],[5,"ExecutionQueryRequest",574],[5,"ExecutionQueryResponse",574],[10,"ExecutionManager",328],[5,"TypeId",1117],[10,"Any",1117],[6,"BlockId",1118],[5,"ExecutionBlockMetadata",574],[8,"PreHashMap",1119],[5,"ExecutionChannels",301],[10,"Error",1120],[6,"ExecutionQueryError",343],[8,"Result",1098],[6,"CacheError",1121],[6,"ModelsError",1122],[6,"FactoryError",1123],[6,"MassaHashError",1124],[5,"EventStore",429],[5,"VecDeque",1125],[17,"Item"],[10,"Iterator",1126],[10,"Serializer",1127],[5,"ExecutionQueryCycleInfos",574],[5,"ExecutionQueryCycleInfos",1128],[5,"ScExecutionEventsFilter",1128],[6,"ExecutionQueryResponseItem",574],[5,"ExecutionQueryResponse",1128],[5,"ExecutionQueryResponseItem",1128],[5,"ExecutionQueryStakerInfo",574],[5,"ExecutionQueryStakerInfoEntry",1128],[5,"ExecutionQueryRequestItem",1128],[6,"ExecutionQueryRequestItem",574],[5,"StorageCostsConstants",472],[5,"ExecutionConfig",472],[6,"SlotExecutionOutput",574],[5,"ExecutedBlockInfo",574],[5,"ExecutionOutput",574],[6,"ReadOnlyExecutionTarget",574],[5,"ReadOnlyCallRequest",574],[5,"ExecutionStackElement",574],[6,"ExecutionQueryExecutionStatus",574],[15,"VMError",427],[15,"AddressDatastoreKeysCandidate",1077],[15,"AddressDatastoreKeysFinal",1077],[15,"AddressDatastoreValueCandidate",1077],[15,"AddressDatastoreValueFinal",1077],[15,"CycleInfos",1077],[15,"DeferredCallQuote",1077],[15,"FunctionCall",1090]],"r":[[23,1094],[37,429],[41,574],[43,574],[44,574],[45,301],[46,472],[47,328],[48,343],[49,328],[50,574],[51,574],[52,343],[53,574],[54,574],[55,574],[56,574],[57,574],[58,574],[59,574],[64,1094],[75,574],[76,574],[77,574],[78,574],[84,574],[85,472]],"b":[[386,"impl-Display-for-ExecutionError"],[387,"impl-Debug-for-ExecutionError"],[388,"impl-Debug-for-ExecutionQueryError"],[389,"impl-Display-for-ExecutionQueryError"],[390,"impl-From%3CCacheError%3E-for-ExecutionError"],[391,"impl-From%3CModelsError%3E-for-ExecutionError"],[392,"impl-From%3CFactoryError%3E-for-ExecutionError"],[394,"impl-From%3CMassaHashError%3E-for-ExecutionError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFQCQwAYAAAAQQAAAFoAAgBnAAMAeAADAH0AAwCJAAEAjgAHAKEAAQClAAEAqwAAALYAAQC6AAEAvwACAMkAAQDQAAAA0wABANgABADeAAAA4AABAOQAAwDqAAAA7wABAP0AAAAJAQcAEwEFABoBAQAvAQkAOgEBAD0BAgBBAQcAbQEcAIsBAACNAQMAkwEYAK8BAgCzAQcAvQEAAL8BAADCAQAAxAECAMkBAADLAQgA1gEBANsBAQDhAQMA6gEGAPUBBwD+AQEAAgIBAAgCAQAMAgEADwIBACUCAQAvAg8AewIJAIsCIQC1Ah0A2QJDACQDCQA/AwkASwMQAG0DEACAAxAAlwMQAKwDAQC1A4AA"}],\ -["massa_execution_worker",{"t":"CCCCCCCCCCCCCCHCCCPFPPGPPPPGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNONONNNNNNONOOOOOOOONNNNNONNNNNNNNNNONNONOOONNOOHNNNNNNNNNNNNNNNNNHNNNNNNNNNNOOONOONNONONOONNNNOOOOOOOOONNNNNNNNNNOONNNNNNNNNFFFNONNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNOONNNNNNNNNNONNNNONONONNNNNNNNNNNNNNNNNNNNNNNNIIFOONNNNOOQNNNNNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNNNNNOOONNNOONNNNNNNNOFFFFFGPPOOOONNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNONNNNNNOONNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNHHNNNNNNNNNNNNNNNNNNNNNNNNOOQNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNOOONNNNNNNNNNNNNNFFNNNNNNNNNOOONNNNNNNNONNNNNNNNNNNNNNNNNOOOONNNNNNONONNNNNNNNNNNNNNNNFONNNNNNNONNNNNNNHNONNONNNNNNNNNNNNFSONNNNNOONNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNFONNNNNNOONNNNNNNNNNNNNNNNNNNFONNNNNNOONNNNNNNNNNNNNNNNNNNFOONNNNNNNNNNONNNNNNNNNNNNOOONNNNNONNNNNNNNNFONONNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNOOONNNNNNNNNNNNONNNNNNNFFKNNNNONNNNNNNNONNNNNNNNNNOONNNNMNNOONNNNNNNNNNNNNNMNNFNNNNNNNONNONNNNNNOOOHNNNNNNNNN","n":["active_history","context","controller","execution","execution_info","interface_impl","request_queue","slot_sequencer","speculative_async_pool","speculative_deferred_calls","speculative_executed_denunciations","speculative_executed_ops","speculative_ledger","speculative_roll_state","start_execution_worker","stats","storage_backend","worker","Absent","ActiveHistory","Found","Future","HistorySearchResult","NoHistory","NoInfo","Past","Present","SlotIndexPosition","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","fetch_active_history_data_entry","fetch_balance","fetch_bytecode","fetch_executed_denunciation","fetch_executed_op","fetch_message","fetch_roll_count","find_cycle_indices","fmt","from","from","from","get_address_deferred_credit_for","get_all_deferred_credits_until","get_execution_trail_hash","get_ops_exec_status","get_slot_index","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","truncate_from","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ExecutionContext","ExecutionContextSnapshot","active_slot","add_rolls","address_factory","append_data_entry","async_pool_changes","borrow","borrow","borrow_mut","borrow_mut","cancel_async_message","check_target_sc_address","config","create_new_sc_address","created_addr_index","created_addr_index","created_event_index","created_event_index","created_message_index","created_message_index","creator_address","creator_min_balance","deferred_call_cancel","deferred_call_exists","deferred_call_fail_exec","deferred_call_register","deferred_calls_advance_slot","deferred_calls_changes","deferred_calls_compute_call_fee","delete_data_entry","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","event_count","event_create","event_emit","events","execute_deferred_credits","executed_denunciations","executed_ops","execution_trail_hash","from","from","gas_remaining_before_subexecution","gas_remaining_before_subexecution","generate_execution_trail_hash","get_address_cycle_infos","get_address_future_deferred_credits","get_balance","get_bytecode","get_call_stack","get_current_address","get_current_call_coins","get_current_owned_addresses","get_data_entry","get_deferred_call","get_deferred_calls_by_slot","get_keys","get_snapshot","has_data_entry","has_write_rights_on","init","init","init_prng","insert_executed_denunciation","insert_executed_op","into","into","into_request","into_request","is_denunciation_executed","is_op_executed","layout_raw","layout_raw","ledger_changes","message_infos","module_cache","new","opt_block_id","origin_operation_id","pointer_metadata","pointer_metadata","pos_changes","push_new_message","read_only","readonly","recursion_counter","recursion_counter","reset_to_snapshot","set_bytecode","set_data_entry","settle_slot","slot","speculative_async_pool","speculative_deferred_calls","speculative_executed_denunciations","speculative_executed_ops","speculative_ledger","speculative_roll_state","stack","stack","take_async_batch","transfer_coins","try_from","try_from","try_into","try_into","try_sell_rolls","try_slash_rolls","type_id","type_id","unsafe_rng","unsafe_rng","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_production_stats","vzip","vzip","ExecutionControllerImpl","ExecutionInputData","ExecutionManagerImpl","__clone_box","block_metadata","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_box","clone_into","clone_to_uninit","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","execute_readonly_request","execution_state","finalized_blocks","fmt","from","from","from","from_ref","get_addresses_infos","get_cycle_active_rolls","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_data_entry","get_final_and_candidate_balance","get_ops_exec_status","get_stats","init","init","init","input_data","input_data","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","new","new_blockclique","pointer_metadata","pointer_metadata","pointer_metadata","query_state","readonly_requests","stop","stop","take","thread_handle","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","update_blockclique_status","vzip","vzip","vzip","ExecutionResult","ExecutionResultInner","ExecutionState","active_cursor","active_history","apply_active_execution_output","apply_final_execution_output","borrow","borrow_mut","channels","config","context_guard","deferred_call_info","deferred_call_quote","deref","deref_mut","deserialize","drop","execute_async_message","execute_callsc_op","execute_candidate_slot","execute_deferred_call","execute_denunciation","execute_executesc_op","execute_final_slot","execute_operation","execute_readonly_request","execute_roll_buy_op","execute_roll_sell_op","execute_slot","execute_transaction_op","execution_context","execution_interface","final_cursor","final_events","final_state","from","get_address_cycle_infos","get_address_deferred_credits","get_address_future_deferred_credits","get_cycle_active_rolls","get_cycle_infos","get_deferred_calls_by_slot","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_bytecode","get_final_and_active_data_entry","get_final_and_candidate_balance","get_final_and_candidate_datastore_keys","get_final_and_candidate_rolls","get_final_state_fingerprint","get_ops_exec_status","get_stats","init","into","into_request","layout_raw","massa_metrics","mip_store","module_cache","new","pointer_metadata","prepare_operation_for_execution","selector","stats_counter","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_versioning_stats","vzip","wallet","AsyncMessageExecutionResult","DeferredCallExecutionResult","DenunciationResult","ExecutionInfo","ExecutionInfoForSlot","OperationInfo","RollBuy","RollSell","address_denounced","async_messages","auto_sell_execution","block_producer_reward","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cancel_async_message_execution","coins","coins","deferred_calls_messages","deferred_credits_execution","denunciations","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","destination","drop","drop","drop","drop","drop","drop","endorsement_creator_rewards","endorsement_target_reward","fmt","from","from","from","from","from","from","info_per_slot","init","init","init","init","init","init","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","new","new","new","new","operations","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","save_for_slot","sender","sender","slashed","slot","success","success","target_address","target_function","traces","traces","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","InterfaceImpl","__clone_box","add_native_amount_wasmv1","address_from_public_key","amount_from_native_amount","amount_to_native_amount","append_ds_value_wasmv1","base58_check_to_bytes_wasmv1","borrow","borrow_mut","bytes_to_base58_check_wasmv1","caller_has_write_access","chain_id","check_address_wasmv1","check_native_amount_wasmv1","check_pubkey_wasmv1","check_signature_wasmv1","checked_add_native_time_wasmv1","checked_div_native_time_wasmv1","checked_mul_native_time_wasmv1","checked_scalar_div_native_time_wasmv1","checked_sub_native_time_wasmv1","clone","clone_box","clone_into","clone_to_uninit","compare_address_wasmv1","compare_native_amount_wasmv1","compare_native_time_wasmv1","compare_pub_key_wasmv1","config","context","context_guard","create_module","decrement_recursion_counter","deferred_call_cancel","deferred_call_exists","deferred_call_register","delete_ds_entry_wasmv1","deref","deref_mut","deserialize","div_rem_native_amount_wasmv1","drop","ds_entry_exists_wasmv1","evm_get_address_from_pubkey","evm_get_pubkey_from_signature","evm_signature_verify","finish_call","from","from_ref","generate_event","generate_event_wasmv1","get_address_category_wasmv1","get_address_from_opt_or_context","get_address_version_wasmv1","get_balance","get_balance_for","get_balance_wasmv1","get_bytecode_wasmv1","get_call_coins","get_call_coins_wasmv1","get_call_stack","get_current_period","get_current_slot","get_current_thread","get_deferred_call_quote","get_ds_keys_wasmv1","get_ds_value_wasmv1","get_interface_version","get_keys","get_keys_for","get_module","get_op_data","get_op_keys","get_op_keys_wasmv1","get_origin_operation_id","get_owned_addresses","get_pubkey_version_wasmv1","get_signature_version_wasmv1","get_time","get_tmp_module","has_data","has_data_for","hash","hash_blake3","hash_keccak256","hash_sha256","increment_recursion_counter","init","init_call","init_call_wasmv1","into","into_request","is_address_eoa","layout_raw","massa_time_from_native_time","massa_time_to_native_time","native_amount_from_str_wasmv1","native_amount_to_string_wasmv1","new","op_entry_exists","pointer_metadata","print","raw_append_data","raw_append_data_for","raw_delete_data","raw_delete_data_for","raw_get_bytecode","raw_get_bytecode_for","raw_get_data","raw_get_data_for","raw_set_bytecode","raw_set_bytecode_for","raw_set_data","raw_set_data_for","save_gas_remaining_before_subexecution","scalar_div_rem_native_amount_wasmv1","scalar_mul_native_amount_wasmv1","send_message","set_bytecode_wasmv1","set_ds_value_wasmv1","signature_verify","sub_native_amount_wasmv1","to_owned","transfer_coins","transfer_coins_for","transfer_coins_wasmv1","try_from","try_into","type_id","unsafe_random","unsafe_random_f64","unsafe_random_wasmv1","upcast_any_box","upcast_any_mut","upcast_any_ref","validate_address","vzip","RequestQueue","RequestWithResponseSender","borrow","borrow","borrow_mut","borrow_mut","cancel","cancel","capacity","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","extend","fmt","fmt","from","from","init","init","into","into","into_request","into_request","into_request_sender_pair","is_empty","is_full","layout_raw","layout_raw","max_items","new","new","pointer_metadata","pointer_metadata","pop","push","queue","request","response_tx","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","SlotInfo","SlotSequencer","__clone_box","borrow","borrow","borrow_mut","borrow_mut","cleanup_sequence","clone","clone_into","clone_to_uninit","config","consensus_final","content","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","execution_final","fmt","from","from","from_ref","get_block_id","get_next_slot_deadline","get_slot","get_slot_index","get_time_cursor","init","init","init","into","into","into_request","into_request","is_task_available","latest_consensus_final_slots","latest_executed_candidate_slot","latest_executed_final_slot","latest_execution_final_slot","layout_raw","layout_raw","new","pointer_metadata","pointer_metadata","run_task_with","sequence","sequence_build_step","slot","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update","vzip","vzip","SpeculativeAsyncPool","active_history","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fetch_msgs","final_state","from","get_snapshot","init","into","into_request","is_message_expired","is_message_ready_to_execute","is_triggered","layout_raw","message_infos","new","pointer_metadata","pool_changes","push_new_message","reset_to_snapshot","settle_slot","take","take_batch_to_execute","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeDeferredCallRegistry","TARGET_BOOKING","active_history","advance_slot","borrow","borrow_mut","cancel_call","compute_call_fee","config","deferred_calls_changes","delete_call","deref","deref_mut","deserialize","drop","final_state","from","get_call","get_calls_by_slot","get_effective_slot_gas","get_effective_total_gas","get_slot_base_fee","get_snapshot","get_total_calls_registered","init","into","into_request","layout_raw","new","overbooking_fee","pointer_metadata","push_new_call","register_call","reset_to_snapshot","set_total_calls_registered","take","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeExecutedDenunciations","active_history","borrow","borrow_mut","deref","deref_mut","deserialize","drop","executed_denunciations","final_state","from","get_snapshot","init","insert_executed_denunciation","into","into_request","is_denunciation_executed","layout_raw","new","pointer_metadata","reset_to_snapshot","take","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeExecutedOps","active_history","borrow","borrow_mut","deref","deref_mut","deserialize","drop","executed_ops","final_state","from","get_snapshot","init","insert_executed_op","into","into_request","is_op_executed","layout_raw","new","pointer_metadata","reset_to_snapshot","take","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeLedger","active_history","added_changes","borrow","borrow_mut","charge_datastore_entry_change_storage","create_new_sc_address","delete_data_entry","deref","deref_mut","deserialize","drop","entry_exists","final_state","from","get_balance","get_bytecode","get_data_entry","get_keys","get_snapshot","get_storage_cost_datastore_entry","has_data_entry","init","into","into_request","layout_raw","max_bytecode_size","max_datastore_key_length","max_datastore_value_size","new","pointer_metadata","reset_to_snapshot","set_bytecode","set_data_entry","storage_costs_constants","take","transfer_coins","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeRollState","active_history","add_rolls","added_changes","borrow","borrow_mut","deref","deref_mut","deserialize","drop","final_state","from","get_address_cycle_infos","get_address_deferred_credit_for_slot","get_address_deferred_credits","get_production_stats_at_cycle","get_rolls","get_snapshot","init","into","into_request","layout_raw","new","pointer_metadata","reset_to_snapshot","settle_production_stats","take","take_unexecuted_deferred_credits","try_from","try_into","try_sell_rolls","try_slash_deferred_credits","try_slash_rolls","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_production_stats","vzip","ExecutionStatsCounter","borrow","borrow_mut","deref","deref_mut","deserialize","drop","final_blocks","final_executed_denunciations","final_executed_ops","from","get_stats","init","into","into_request","layout_raw","new","pointer_metadata","refresh","register_final_blocks","register_final_executed_denunciations","register_final_executed_operations","time_window_duration","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","FileStorageBackend","RocksDBStorageBackend","StorageBackend","borrow","borrow","borrow_mut","borrow_mut","db","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","folder","from","from","init","init","into","into","into_request","into_request","layout_raw","layout_raw","max_blocks","max_blocks","new","new","pointer_metadata","pointer_metadata","read","read","read","slots_saved","slots_saved","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","write","write","write","ExecutionThread","borrow","borrow_mut","deref","deref_mut","deserialize","drop","execute_one_readonly_request","execution_state","from","init","input_data","into","into_request","layout_raw","main_loop","new","pointer_metadata","readonly_requests","selector","slot_sequencer","start_execution_worker","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_readonly_requests","vzip","wait_loop_event"],"q":[[0,"massa_execution_worker"],[18,"massa_execution_worker::active_history"],[101,"massa_execution_worker::context"],[229,"massa_execution_worker::controller"],[321,"massa_execution_worker::execution"],[395,"massa_execution_worker::execution_info"],[548,"massa_execution_worker::interface_impl"],[687,"massa_execution_worker::request_queue"],[744,"massa_execution_worker::slot_sequencer"],[813,"massa_execution_worker::speculative_async_pool"],[848,"massa_execution_worker::speculative_deferred_calls"],[891,"massa_execution_worker::speculative_executed_denunciations"],[920,"massa_execution_worker::speculative_executed_ops"],[949,"massa_execution_worker::speculative_ledger"],[993,"massa_execution_worker::speculative_roll_state"],[1032,"massa_execution_worker::stats"],[1062,"massa_execution_worker::storage_backend"],[1117,"massa_execution_worker::worker"],[1148,"massa_execution_exports::settings"],[1149,"massa_final_state::controller_trait"],[1150,"parking_lot::rwlock"],[1151,"alloc::sync"],[1152,"massa_pos_exports::controller_traits"],[1153,"alloc::boxed"],[1154,"massa_versioning::versioning"],[1155,"massa_execution_exports::channels"],[1156,"massa_wallet"],[1157,"massa_metrics"],[1158,"massa_execution_exports::controller_traits"],[1159,"rkyv::with"],[1160,"core::result"],[1161,"massa_models::address"],[1162,"alloc::vec"],[1163,"massa_models::amount"],[1164,"massa_models::bytecode"],[1165,"massa_models::denunciation"],[1166,"massa_models::operation"],[1167,"massa_async_pool::message"],[1168,"massa_models::types"],[1169,"core::option"],[1170,"core::ops::range"],[1171,"core::fmt"],[1172,"massa_models::slot"],[1173,"massa_pos_exports::deferred_credits"],[1174,"massa_hash::hash"],[1175,"tonic::request"],[1176,"core::alloc::layout"],[1177,"core::any"],[1178,"massa_models::block_id"],[1179,"massa_module_cache::controller"],[1180,"massa_execution_exports::error"],[1181,"alloc::string"],[1182,"massa_models::deferred_calls"],[1183,"massa_deferred_calls::call"],[1184,"massa_deferred_calls"],[1185,"massa_models::output_event"],[1186,"alloc::collections::btree::map"],[1187,"alloc::collections::btree::set"],[1188,"rand_xoshiro::xoshiro256plusplus"],[1189,"massa_execution_exports::types"],[1190,"dyn_clone::sealed"],[1191,"massa_models::execution"],[1192,"massa_models::stats"],[1193,"std::collections::hash::map"],[1194,"massa_models::prehash"],[1195,"massa_proto_rs::massa::model::v1"],[1196,"anyhow"],[1197,"massa_sc_runtime::types"],[1198,"massa_sc_runtime::execution"],[1199,"massa_time"],[1200,"parking_lot::mutex"],[1201,"massa_channel::sender"],[1202,"core::ops::function"],[1203,"massa_async_pool::changes"],[1204,"massa_ledger_exports::ledger_changes"],[1205,"massa_deferred_calls::registry_changes"],[1206,"massa_deferred_calls::config"],[1207,"massa_executed_ops::denunciations_changes"],[1208,"massa_executed_ops::ops_changes"],[1209,"core::clone"],[1210,"massa_pos_exports::cycle_info"],[1211,"massa_pos_exports::pos_changes"],[1212,"num_rational"],[1213,"std::path"],[1214,"parking_lot::condvar"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,38,38,0,38,25,38,25,0,25,16,38,25,16,38,16,25,16,38,25,16,38,25,16,38,25,16,38,16,16,16,16,16,16,16,16,38,25,16,38,16,16,16,16,16,25,16,38,25,16,38,25,16,38,25,16,38,25,16,38,16,25,16,38,25,16,38,25,16,38,25,16,38,25,16,38,25,16,38,25,16,38,0,0,51,51,51,51,62,62,51,62,51,51,51,51,51,62,51,62,51,62,51,51,51,51,51,51,51,51,62,51,51,62,51,62,51,62,51,62,51,62,51,51,51,51,62,62,51,62,51,62,51,0,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,62,51,0,51,51,62,51,62,51,51,51,62,51,62,62,51,51,51,51,62,51,62,51,51,51,62,51,51,51,51,51,51,51,51,51,51,51,51,62,51,51,51,62,51,62,51,51,51,62,51,62,51,62,51,62,51,62,51,51,62,51,0,0,0,68,71,71,77,68,71,77,68,68,68,68,68,71,77,68,71,77,68,71,77,68,71,77,68,68,68,71,71,71,77,68,68,68,68,68,68,68,68,68,68,71,77,68,77,68,71,77,68,71,77,68,71,77,68,71,71,71,77,68,68,71,77,71,71,77,68,71,71,77,68,71,77,68,71,77,68,71,77,68,71,77,68,71,77,68,68,71,77,68,0,0,0,81,81,81,81,81,81,81,81,0,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,81,0,0,0,0,0,0,144,144,86,92,92,92,91,144,92,82,84,86,91,144,92,82,84,86,92,82,84,92,92,92,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,82,91,144,92,82,84,86,92,92,86,91,144,92,82,84,86,91,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,91,92,82,84,92,91,144,92,82,84,86,91,82,84,86,86,82,84,84,84,82,84,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,91,144,92,82,84,86,0,93,93,93,0,0,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,0,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,0,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,0,0,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,0,0,108,109,108,109,108,109,109,108,109,108,109,108,109,108,109,109,108,109,108,109,108,109,108,109,108,109,108,109,109,108,109,109,108,109,108,109,109,109,109,108,108,108,109,108,109,108,109,108,109,108,109,108,109,108,109,0,0,113,112,113,112,113,112,113,113,113,112,113,113,112,113,112,113,112,113,112,113,113,113,112,113,113,113,112,112,112,112,112,112,113,112,113,112,113,112,112,112,112,112,112,113,112,112,113,112,112,112,113,113,112,113,112,113,112,113,112,113,112,113,112,113,112,112,113,0,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,0,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,0,0,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,0,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,0,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,0,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,0,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,0,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,0,0,0,139,140,139,140,140,139,140,139,140,139,140,139,140,139,139,140,139,140,139,140,139,140,139,140,139,140,139,140,139,140,141,139,140,139,140,139,140,139,140,139,140,139,140,139,140,139,140,139,140,141,139,140,0,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,0,142,142,142,142,142,142,142,142,142],"f":"``````````````{{b{h{{f{d}}}}{l{j}}nA`{h{{f{Ab}}}}Ad}{{Aj{{l{Af}}{l{Ah}}}}}}`````````````{{{Al{c}}}{{Al{e}}}{}{}}00{{{Al{Anc}}}{{Al{Ane}}}{}{}}00{{}B`}{Bb{{Al{c}}}{}}00{Bb{{Al{Anc}}}{}}00{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}00{BbBh}00{{{Al{B`}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Cb{{C`{Bl}}}}}}{{{Al{B`}}{Al{Bj}}}{{Cb{Cd}}}}{{{Al{B`}}{Al{Bj}}}{{Cb{Cf}}}}{{{Al{B`}}{Al{Ch}}}{{Cb{Bh}}}}{{{Al{B`}}{Al{Cj}}}{{Cb{Bh}}}}{{{Al{B`}}{Al{Cl}}Cn}{{Cb{{Db{D`Cn}}}}}}{{{Al{B`}}{Al{Bj}}}{{Df{Dd}}}}{{{Al{B`}}DdDdBl}{{Aj{{Dh{Bb}}DjDj}}}}{{{Al{Dl}}{Al{AnDn}}}E`}{cc{}}00{{{Al{B`}}{Al{Bj}}{Al{Eb}}}{{Df{Cd}}}}{{{Al{B`}}{Al{Eb}}}Ed}{{{Al{B`}}}{{Cb{Ef}}}}{{{Al{B`}}{Al{{Bn{Cj}}}}}{{C`{{Df{Dj}}}}}}{{{Al{B`}}{Al{Eb}}Bl}Dl}{{}Bb}00{ce{}{}}00{c{{Eh{e}}}{}{}}00{{}{{Bf{EjEl}}}}00{Al}00{{{Al{AnB`}}{Al{Eb}}Bl}Bh}{c{{Bf{e}}}{}{}}00000{{{Al{c}}}En{}}00{{{l{c}}}{{l{F`}}}{}}00{{{Al{Anc}}}{{Al{AnF`}}}{}}00{{{Al{c}}}{{Al{F`}}}{}}00999``{{bEb{Df{Fb}}{h{{f{d}}}}{h{{f{B`}}}}{h{{f{Fd}}}}n}Ff}{{{Al{AnFf}}{Al{Bj}}Dd}Bh}`{{{Al{AnFf}}{Al{Bj}}{C`{Bl}}{C`{Bl}}}{{Bf{BhFh}}}}`{{{Al{c}}}{{Al{e}}}{}{}}0{{{Al{Anc}}}{{Al{Ane}}}{}{}}0{{{Al{AnFf}}{Al{D`}}}{{Df{{Aj{Bj{Bf{CdFj}}}}}}}}{{{Al{Ff}}Bj}{{Bf{BhFh}}}}`{{{Al{AnFf}}Cf}{{Bf{BjFh}}}}````````{{{Al{AnFf}}{Al{Fl}}Bj}{{Bf{BhFh}}}}{{{Al{Ff}}{Al{Fl}}}Dj}{{{Al{AnFf}}{Al{Fl}}{Al{Fn}}}{{Df{{Aj{Bj{Bf{CdFj}}}}}}}}{{{Al{AnFf}}Fn}{{Bf{FlFh}}}}{{{Al{AnFf}}Eb}G`}`{{{Al{Ff}}EbDdEbDd}{{Bf{CdFh}}}}{{{Al{AnFf}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Bf{BhFh}}}}{Bb{{Al{c}}}{}}0{Bb{{Al{Anc}}}{}}0{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}0{BbBh}0`{{{Al{Ff}}FjDj}Gb}{{{Al{AnFf}}Gb}Bh}`{{{Al{AnFf}}{Al{Eb}}}{{C`{{Aj{Bj{Bf{CdFj}}}}}}}}```{cc{}}0``{{{Al{Ef}}{Al{Eb}}{Df{{Al{Fb}}}}Dj}Ef}{{{Al{Ff}}{Al{Bj}}Dd}{{C`{Gd}}}}{{{Al{Ff}}{Al{Bj}}Bl{Gf{Eb}}}{{Gh{EbCd}}}}{{{Al{Ff}}{Al{Bj}}}{{Df{Cd}}}}{{{Al{Ff}}{Al{Bj}}}{{Df{Cf}}}}{{{Al{Ff}}}{{C`{Bj}}}}{{{Al{Ff}}}{{Bf{BjFh}}}}{{{Al{Ff}}}{{Bf{CdFh}}}}{{{Al{Ff}}}{{Bf{{C`{Bj}}Fh}}}}{{{Al{Ff}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Df{{C`{Bl}}}}}}{{{Al{Ff}}{Al{Fl}}}{{Df{Fn}}}}{{{Al{Ff}}Eb}{{Gh{FlFn}}}}{{{Al{Ff}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Df{{Gj{{C`{Bl}}}}}}}}{{{Al{Ff}}}Gl}{{{Al{Ff}}{Al{Bj}}{Al{{Bn{Bl}}}}}Dj}{{{Al{Ff}}{Al{Bj}}}Dj}{{}Bb}0{{{Al{Ef}}}Gn}{{{Al{AnFf}}{Al{Ch}}}Bh}{{{Al{AnFf}}CjDjEb}Bh}{ce{}{}}0{c{{Eh{e}}}{}{}}0{{{Al{Ff}}{Al{Ch}}}Dj}{{{Al{Ff}}{Al{Cj}}}Dj}{{}{{Bf{EjEl}}}}0```{{b{h{{f{d}}}}{h{{f{B`}}}}{h{{f{Fd}}}}nEf}Ff}``{Al}0`{{{Al{AnFf}}D`}Bh}`{{bEb{C`{H`}}{h{{f{d}}}}{h{{f{B`}}}}{h{{f{Fd}}}}n}Ff}``{{{Al{AnFf}}GlFh}Bh}{{{Al{AnFf}}{Al{Bj}}Cf}{{Bf{BhFh}}}}{{{Al{AnFf}}{Al{Bj}}{C`{Bl}}{C`{Bl}}}{{Bf{BhFh}}}}{{{Al{AnFf}}{Df{Hb}}}Hd}`````````{{{Al{AnFf}}DdDd}{{C`{{Aj{ClD`}}}}}}{{{Al{AnFf}}{Df{Bj}}{Df{Bj}}CdDj}{{Bf{BhFh}}}}{c{{Bf{e}}}{}{}}000{{{Al{AnFf}}{Al{Bj}}Dd}{{Bf{BhFh}}}}{{{Al{AnFf}}{Al{Bj}}Dd}{{Bf{CdFh}}}}{{{Al{c}}}En{}}0``{{{l{c}}}{{l{F`}}}{}}0{{{Al{Anc}}}{{Al{AnF`}}}{}}0{{{Al{c}}}{{Al{F`}}}{}}0{{{Al{AnFf}}{Al{Bj}}Eb{Df{Fb}}}Bh}{ce{}{}}0```{{{Al{c}}Hf}Bh{}}`{{{Al{c}}}{{Al{e}}}{}{}}00{{{Al{Anc}}}{{Al{Ane}}}{}{}}00{{{Al{Hh}}}Hh}{{{Al{Hh}}}{{l{Ah}}}}{{{Al{c}}{Al{Ane}}}Bh{}{}}{{{Al{c}}}Bh{}}{Bb{{Al{c}}}{}}00{Bb{{Al{Anc}}}{}}00{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}00{BbBh}00{{{Al{Hh}}Hj}{{Bf{HlFh}}}}``{{{Al{Hn}}{Al{AnDn}}}E`}{cc{}}00{{{Al{c}}}c{}}{{{Al{Hh}}{Al{{Bn{Bj}}}}{Gf{Eb}}}{{C`{I`}}}}{{{Al{Hh}}Dd}{{Gh{BjDd}}}}{{{Al{Hh}}{Al{Ch}}}{{Aj{DjDj}}}}{{{Al{Hh}}Ib}{{C`{Gb}}}}{{{Al{Hh}}{C`{{Aj{Bj{C`{Bl}}}}}}}{{C`{{Aj{{Df{{C`{Bl}}}}{Df{{C`{Bl}}}}}}}}}}{{{Al{Hh}}{Al{{Bn{Bj}}}}}{{C`{{Aj{{Df{Cd}}{Df{Cd}}}}}}}}{{{Al{Hh}}{Al{{Bn{Cj}}}}}{{C`{{Aj{{Df{Dj}}{Df{Dj}}}}}}}}{{{Al{Hh}}}Id}{{}Bb}00``{ce{}{}}00{c{{Eh{e}}}{}{}}00{{}{{Bf{EjEl}}}}00{bHn}`{Al}00{{{Al{Hh}}If}Ih}`{{{Al{AnIj}}}Bh}`{{{Al{AnHn}}}Hn}`{{{Al{c}}}e{}{}}{{{Al{c}}}Fj{}}{c{{Bf{e}}}{}{}}00000{{{Al{c}}}En{}}00{{{l{c}}}{{l{F`}}}{}}00{{{Al{Anc}}}{{Al{AnF`}}}{}}00{{{Al{c}}}{{Al{F`}}}{}}00{{{Al{Hh}}{Il{EbFb}}{Df{{Il{EbFb}}}}{J`{FbIn}}}Bh}???`````{{{Al{AnJb}}Hd}Bh}0{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}```{{{Al{Jb}}{Al{Fl}}}{{Df{Fn}}}}{{{Al{Jb}}EbDdDd}{{Aj{EbDdDjCd}}}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}{{{Al{Jb}}D`{Df{Cf}}}{{Bf{JdFh}}}}{{{Al{Jb}}{Al{Jf}}Bj}{{Bf{BhFh}}}}{{{Al{AnJb}}{Al{Eb}}{Df{{Al{{Aj{FbIn}}}}}}{l{j}}}Bh}{{{Al{Jb}}{Al{Fl}}Fn}{{Bf{JhFh}}}}{{{Al{Jb}}{Al{Jj}}{Al{Eb}}{Al{AnCd}}}{{Bf{JlFh}}}}32{{{Al{Jb}}{Al{Jn}}Eb{Al{AnDd}}{Al{AnCd}}}{{Bf{BhFh}}}}{{{Al{Jb}}Hj}{{Bf{HlFh}}}}55{{{Al{Jb}}{Al{Eb}}{Df{{Al{{Aj{FbIn}}}}}}{l{j}}}Hd}6`````{cc{}}{{{Al{Jb}}{Al{Bj}}}{{C`{Gd}}}}{{{Al{Jb}}{Al{Bj}}}{{Aj{{Gh{EbCd}}{Gh{EbCd}}}}}}{{{Al{Jb}}{Al{Bj}}{Gf{Eb}}}{{Gh{EbCd}}}}{{{Al{Jb}}Dd}{{Gh{BjDd}}}}{{{Al{Jb}}Dd{Df{{Al{{K`{Bj}}}}}}}{{Df{Kb}}}}{{{Al{Jb}}Eb}{{C`{Fl}}}}{{{Al{Jb}}{Al{Ch}}}{{Aj{DjDj}}}}{{{Al{Jb}}Ib}{{C`{Gb}}}}{{{Al{Jb}}{Al{Bj}}}{{Aj{{Df{Cf}}{Df{Cf}}}}}}{{{Al{Jb}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Aj{{Df{{C`{Bl}}}}{Df{{C`{Bl}}}}}}}}{{{Al{Jb}}{Al{Bj}}}{{Aj{{Df{Cd}}{Df{Cd}}}}}}{{{Al{Jb}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Aj{{Df{{Gj{{C`{Bl}}}}}}{Df{{Gj{{C`{Bl}}}}}}}}}}{{{Al{Jb}}{Al{Bj}}}{{Aj{DdDd}}}}{{{Al{Jb}}}Ef}{{{Al{Jb}}{Al{{Bn{Cj}}}}}{{C`{{Aj{{Df{Dj}}{Df{Dj}}}}}}}}{{{Al{Jb}}}Id}{{}Bb}{ce{}{}}{c{{Eh{e}}}{}{}}{{}{{Bf{EjEl}}}}```{{b{h{{f{d}}}}n{l{j}}A`{h{{f{Ab}}}}Ad}Jb}{Al}{{{Al{Jb}}{Al{Jn}}Bj}{{Bf{GlFh}}}}``{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}{{{Al{AnJb}}{Al{{Df{Hb}}}}{Al{Eb}}}Bh};`````````````{{{Al{c}}}{{Al{e}}}{}{}}00000{{{Al{Anc}}}{{Al{Ane}}}{}{}}00000``````{Bb{{Al{c}}}{}}00000{Bb{{Al{Anc}}}{}}00000{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}00000`{BbBh}00000``{{{Al{Jl}}{Al{AnDn}}}E`}{cc{}}00000`{{}Bb}00000{ce{}{}}00000{c{{Eh{e}}}{}{}}00000{{}{{Bf{EjEl}}}}00000{KdKf}{{}Kh}{{}Jd}{{{Al{Fn}}}Jh}`{Al}00000{{{Al{AnKf}}EbKh}Bh}``````````{c{{Bf{e}}}{}{}}00000000000{{{Al{c}}}En{}}00000{{{l{c}}}{{l{F`}}}{}}00000{{{Al{Anc}}}{{Al{AnF`}}}{}}00000{{{Al{c}}}{{Al{F`}}}{}}00000======`{{{Al{c}}Hf}Bh{}}{{{Al{Kj}}{Al{Kl}}{Al{Kl}}}{{Kn{Kl}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{Fj}}}}{{{Al{Kl}}}{{Kn{Cd}}}}{{{Al{Cd}}}Kl}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{{C`{Bl}}}}}}{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}Fj}{{{Al{Kj}}}{{Kn{Dj}}}}{{{Al{Kj}}}{{Kn{Dd}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{Dj}}}}{{{Al{Kj}}{Al{Kl}}}{{Kn{Dj}}}}11{{{Al{Kj}}{Al{Lb}}{Al{Lb}}}{{Kn{Lb}}}}{{{Al{Kj}}{Al{Lb}}{Al{Lb}}}{{Kn{{Aj{DdLb}}}}}}{{{Al{Kj}}{Al{Lb}}Dd}{{Kn{Lb}}}}{{{Al{Kj}}{Al{Lb}}Dd}{{Kn{{Aj{LbLb}}}}}}3{{{Al{Kj}}}Kj}{{{Al{Kj}}}{{l{Ld}}}}{{{Al{c}}{Al{Ane}}}Bh{}{}}{{{Al{c}}}Bh{}}{{{Al{Kj}}{Al{L`}}{Al{L`}}}{{Kn{Lf}}}}{{{Al{Kj}}{Al{Kl}}{Al{Kl}}}{{Kn{Lf}}}}{{{Al{Kj}}{Al{Lb}}{Al{Lb}}}{{Kn{Lf}}}}2```{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{Fj}}}}{{{Al{Kj}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{Bh}}}}?{{{Al{Kj}}{Al{L`}}{Al{L`}}{Aj{DdBl}}Dd{Al{{Bn{Bl}}}}Dd}{{Kn{Fj}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{Bh}}}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{{{Al{Kj}}{Al{Kl}}{Al{Kl}}}{{Kn{{Aj{DdKl}}}}}}{BbBh}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{Dj}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}{{Kn{Dj}}}}<{cc{}}{{{Al{c}}}c{}}{{{Al{Kj}}Fj}{{Kn{Bh}}}}{{{Al{Kj}}{C`{Bl}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{Lh}}}}{{{Al{Ff}}{Df{Fj}}}{{Kn{Bj}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{Dd}}}}{{{Al{Kj}}}{{Kn{Dd}}}}1{{{Al{Kj}}{Df{Fj}}}{{Kn{Kl}}}}{{{Al{Kj}}{Df{Fj}}}{{Kn{{C`{Bl}}}}}}2{{{Al{Kj}}}{{Kn{Kl}}}}{{{Al{Kj}}}{{Kn{{C`{Fj}}}}}}4{{{Al{Kj}}}{{Kn{Lj}}}}{{{Al{Kj}}}{{Kn{Bl}}}}{{{Al{Kj}}{Aj{DdBl}}DdDd}{{Kn{{Aj{DjDd}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{{Gj{{C`{Bl}}}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}}{{Kn{Kd}}}}{{{Al{Kj}}{Df{{Al{{Bn{Bl}}}}}}}{{Kn{{Gj{{C`{Bl}}}}}}}}{{{Al{Kj}}{Al{L`}}{Df{{Al{{Bn{Bl}}}}}}}{{Kn{{Gj{{C`{Bl}}}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}Dd}{{Kn{Ll}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Df{{Al{{Bn{Bl}}}}}}}{{Kn{{C`{{C`{Bl}}}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{{C`{{C`{Bl}}}}}}}}{{{Al{Kj}}}{{Kn{{Df{Fj}}}}}}={{{Al{Kj}}{Al{L`}}}{{Kn{Dd}}}}0{{{Al{Kj}}}{{Kn{Dd}}}}6{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{Dj}}}}{{{Al{Kj}}{Al{L`}}{Al{{Bn{Bl}}}}}{{Kn{Dj}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{{Ln{Bl}}}}}}000{{{Al{Kj}}}{{Kn{Bh}}}}{{}Bb}{{{Al{Kj}}{Al{L`}}Dd}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Al{L`}}Kl}{{Kn{{C`{Bl}}}}}}{ce{}{}}{c{{Eh{e}}}{}{}}{{{Al{Kj}}{Al{L`}}}{{Kn{Dj}}}}{{}{{Bf{EjEl}}}}{{{Al{Lb}}}{{Kn{M`}}}}{{{Al{M`}}}Lb}{{{Al{Kj}}{Al{L`}}}{{Kn{Kl}}}}{{{Al{Kj}}{Al{Kl}}}{{Kn{Fj}}}}{{b{h{{Mb{Ff}}}}}Kj}?{Al}{{{Al{Kj}}{Al{L`}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{L`}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{L`}}{Al{{Bn{Bl}}}}}{{Kn{Bh}}}}{{{Al{Kj}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Al{L`}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}}{{Kn{{C`{Bl}}}}}}{{{Al{Kj}}{Al{L`}}{Al{{Bn{Bl}}}}}{{Kn{{C`{Bl}}}}}}5476{{{Al{Kj}}Dd}Bh}{{{Al{Kj}}{Al{Kl}}Dd}{{Kn{{Aj{KlKl}}}}}}{{{Al{Kj}}{Al{Kl}}Dd}{{Kn{Kl}}}}{{{Al{Kj}}{Al{L`}}{Al{L`}}{Aj{DdBl}}{Aj{DdBl}}DdDdDd{Al{{Bn{Bl}}}}{Df{{Aj{{Al{L`}}{Df{{Al{{Bn{Bl}}}}}}}}}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}{Df{Fj}}}{{Kn{Bh}}}}{{{Al{Kj}}{Al{{Bn{Bl}}}}{Al{L`}}{Al{L`}}}{{Kn{Dj}}}}{{{Al{Kj}}{Al{Kl}}{Al{Kl}}}{{Kn{Kl}}}}{{{Al{c}}}e{}{}}{{{Al{Kj}}{Al{L`}}Dd}{{Kn{Bh}}}}{{{Al{Kj}}{Al{L`}}{Al{L`}}Dd}{{Kn{Bh}}}}{{{Al{Kj}}FjKl{Df{Fj}}}{{Kn{Bh}}}}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{Al{Kj}}}{{Kn{Md}}}}{{{Al{Kj}}}{{Kn{Mf}}}}{{{Al{Kj}}Dd}{{Kn{{C`{Bl}}}}}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}{{{Al{Kj}}{Al{L`}}}{{Kn{Dj}}}}{ce{}{}}``{{{Al{c}}}{{Al{e}}}{}{}}0{{{Al{Anc}}}{{Al{Ane}}}{}{}}0{{{Mh{ce}}Fh}Bh{}{}}{{{Al{An{Mj{ce}}}}Fh}Bh{}{}}{{{Al{{Mj{ce}}}}}Bb{}{}}{Bb{{Al{c}}}{}}0{Bb{{Al{Anc}}}{}}0{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}0{BbBh}0{{{Al{An{Mj{ce}}}}{Mj{ce}}}Bh{}{}}{{{Al{{Mh{ce}}}}{Al{AnDn}}}E`MlMl}{{{Al{{Mj{ce}}}}{Al{AnDn}}}E`MlMl}{cc{}}0{{}Bb}0>>{c{{Eh{e}}}{}{}}0{{{Mh{ce}}}{{Aj{c{Mn{{Bf{eFh}}}}}}}{}{}}{{{Al{{Mj{ce}}}}}Dj{}{}}0{{}{{Bf{EjEl}}}}0`{{c{Mn{{Bf{eFh}}}}}{{Mh{ce}}}{}{}}{Bb{{Mj{ce}}}{}{}}{Al}0{{{Al{An{Mj{ce}}}}}{{Df{{Mh{ce}}}}}{}{}}{{{Al{An{Mj{ce}}}}{Mh{ce}}}Bh{}{}}```{c{{Bf{e}}}{}{}}000{{{Al{c}}}En{}}0{{{l{c}}}{{l{F`}}}{}}0{{{Al{Anc}}}{{Al{AnF`}}}{}}0{{{Al{c}}}{{Al{F`}}}{}}0{ce{}{}}0``{{{Al{c}}Hf}Bh{}}{{{Al{c}}}{{Al{e}}}{}{}}0{{{Al{Anc}}}{{Al{Ane}}}{}{}}0{{{Al{AnN`}}}Bh}{{{Al{Nb}}}Nb}{{{Al{c}}{Al{Ane}}}Bh{}{}}{{{Al{c}}}Bh{}}```{Bb{{Al{c}}}{}}0{Bb{{Al{Anc}}}{}}0{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}0{BbBh}0`{{{Al{Nb}}{Al{AnDn}}}E`}{cc{}}0{{{Al{c}}}c{}}{{{Al{Nb}}}{{Df{{Al{Fb}}}}}}{{{Al{N`}}}M`}{{{Al{N`}}{Al{Eb}}}{{Df{{Al{Nb}}}}}}{{{Al{N`}}{Al{Eb}}}{{Df{Bb}}}}{{{Al{N`}}}Eb}{{}Bb}{{{Al{AnN`}}{Il{EbFb}}{Il{EbFb}}{J`{FbIn}}}Bh}1{ce{}{}}0{c{{Eh{e}}}{}{}}0{{{Al{N`}}}Dj}````{{}{{Bf{EjEl}}}}0{{bEb}N`}{Al}0{{{Al{AnN`}}e}{{Df{c}}}{}{{Nf{Dj{Al{Eb}}{Df{{Al{{Aj{FbIn}}}}}}}{{Nd{c}}}}}}`{{Eb{Df{Nb}}Dj{Df{Fb}}Dj{Df{Fb}}{Al{An{J`{FbIn}}}}Dj}{{Aj{NbDj}}}}`{{{Al{c}}}e{}{}}{c{{Bf{e}}}{}{}}000{{{Al{c}}}En{}}0{{{l{c}}}{{l{F`}}}{}}0{{{Al{Anc}}}{{Al{AnF`}}}{}}0{{{Al{c}}}{{Al{F`}}}{}}0{{{Al{AnN`}}{Il{EbFb}}{Df{{Il{EbFb}}}}{J`{FbIn}}}Bh}>>``{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}{{{Al{AnNh}}{C`{{Al{Cl}}}}Dj}{{C`{{Aj{ClD`}}}}}}`{cc{}}{{{Al{Nh}}}{{Aj{Nj{Gh{ClNl}}}}}}{{}Bb}{ce{}{}}{c{{Eh{e}}}{}{}}{{{Al{Eb}}{Al{Eb}}}Dj}{{{Al{Eb}}{Al{Eb}}{Al{Eb}}}Dj}{{{Al{Nn}}{Al{O`}}}Dj}{{}{{Bf{EjEl}}}}`{{{h{{f{d}}}}{h{{f{B`}}}}}Nh}{Al}`{{{Al{AnNh}}D`}Bh}{{{Al{AnNh}}{Aj{Nj{Gh{ClNl}}}}}Bh}{{{Al{AnNh}}{Al{Eb}}{Al{O`}}}{{C`{{Aj{ClD`}}}}}}{{{Al{AnNh}}}Nj}{{{Al{AnNh}}EbDdDd}{{C`{{Aj{ClD`}}}}}}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}{ce{}{}}```{{{Al{AnOb}}Eb}G`}{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{{{Al{AnOb}}{Al{Fl}}}{{Bf{{Aj{BjCd}}Fh}}}}{{{Al{Ob}}EbDdEbDd}{{Bf{CdFh}}}}``{{{Al{AnOb}}{Al{Fl}}Eb}Bh}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}`{cc{}}{{{Al{Ob}}{Al{Fl}}}{{Df{Fn}}}}{{{Al{Ob}}Eb}G`}{{{Al{Ob}}{Al{Eb}}}Dd}{{{Al{Ob}}}Od}{{{Al{Ob}}{Al{Eb}}}Cd}{{{Al{Ob}}}Of}{{{Al{Ob}}}Dd}{{}Bb}{ce{}{}}{c{{Eh{e}}}{}{}}{{}{{Bf{EjEl}}}}{{{h{{f{d}}}}{h{{f{B`}}}}Oh}Ob}{{OdOdOdOdCd}{{Bf{CdFh}}}}{Al}{{{Al{AnOb}}FlFn}Bh}{{{Al{AnOb}}FnEf}{{Bf{FlFh}}}}{{{Al{AnOb}}Of}Bh}{{{Al{AnOb}}Dd}Bh}{{{Al{AnOb}}}Of}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}?``{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}``{cc{}}{{{Al{Oj}}}Ol}{{}Bb}{{{Al{AnOj}}Ch}Bh}{ce{}{}}{c{{Eh{e}}}{}{}}{{{Al{Oj}}{Al{Ch}}}Dj}{{}{{Bf{EjEl}}}}{{{h{{f{d}}}}{h{{f{B`}}}}}Oj}{Al}{{{Al{AnOj}}Ol}Bh}{{{Al{AnOj}}}Ol}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}<``{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}``{cc{}}{{{Al{On}}}A@`}{{}Bb}{{{Al{AnOn}}CjDjEb}Bh}{ce{}{}}{c{{Eh{e}}}{}{}}{{{Al{On}}{Al{Cj}}}Dj}{{}{{Bf{EjEl}}}}{{{h{{f{d}}}}{h{{f{B`}}}}}On}{Al}{{{Al{AnOn}}A@`}Bh}{{{Al{AnOn}}}A@`}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}<```{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{{{Al{AnA@b}}{Al{Bj}}{Df{{Aj{{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}}}}{Df{{Aj{{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}}}}}{{Bf{BhFh}}}}{{{Al{AnA@b}}BjBjCf}{{Bf{BhFh}}}}{{{Al{AnA@b}}{Al{Bj}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Bf{BhFh}}}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}{{{Al{A@b}}{Al{Bj}}}Dj}`{cc{}}{{{Al{A@b}}{Al{Bj}}}{{Df{Cd}}}}{{{Al{A@b}}{Al{Bj}}}{{Df{Cf}}}}{{{Al{A@b}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Df{{C`{Bl}}}}}}{{{Al{A@b}}{Al{Bj}}{Al{{Bn{Bl}}}}}{{Df{{Gj{{C`{Bl}}}}}}}}{{{Al{A@b}}}O`}{{{Al{A@b}}{Al{{Bn{Bl}}}}{Al{{Bn{Bl}}}}}{{Bf{CdFh}}}}{{{Al{A@b}}{Al{Bj}}{Al{{Bn{Bl}}}}}Dj}{{}Bb}{ce{}{}}{c{{Eh{e}}}{}{}}{{}{{Bf{EjEl}}}}```{{{h{{f{d}}}}{h{{f{B`}}}}BlDdDdA@d}A@b}{Al}{{{Al{AnA@b}}O`}Bh}{{{Al{AnA@b}}{Al{Bj}}{Al{Bj}}Cf}{{Bf{BhFh}}}}{{{Al{AnA@b}}{Al{Bj}}{Al{Bj}}{C`{Bl}}{C`{Bl}}}{{Bf{BhFh}}}}`{{{Al{AnA@b}}}O`}{{{Al{AnA@b}}{Df{Bj}}{Df{Bj}}Cd}{{Bf{BhFh}}}}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}>``{{{Al{AnA@f}}{Al{Bj}}Dd}Bh}`{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}`{cc{}}{{{Al{A@f}}{Al{Bj}}DdEb}{{C`{Gd}}}}{{{Al{A@f}}{Al{Bj}}{Al{Eb}}}{{Df{Cd}}}}{{{Al{A@f}}{Al{Bj}}c}{{Gh{EbCd}}}{{A@h{Eb}}A@j}}{{{Al{A@f}}DdDdBl{Al{Eb}}}{{Aj{{J`{BjA@l}}Dj}}}}{{{Al{A@f}}{Al{Bj}}}Dd}{{{Al{A@f}}}A@n}{{}Bb}{ce{}{}}{c{{Eh{e}}}{}{}}{{}{{Bf{EjEl}}}}{{{h{{f{d}}}}{h{{f{B`}}}}}A@f}{Al}{{{Al{AnA@f}}A@n}Bh}{{{Al{AnA@f}}{Al{Eb}}DdBlCd{AA`{Dd}}}{{C`{{Aj{BjCd}}}}}}{{{Al{AnA@f}}}A@n}{{{Al{AnA@f}}{Al{Eb}}}Ed}{c{{Bf{e}}}{}{}}0{{{Al{AnA@f}}{Al{Bj}}EbDdDdBlCd}{{Bf{BhFh}}}}{{{Al{AnA@f}}{Al{Eb}}{Al{Bj}}{Al{Cd}}}Cd}{{{Al{AnA@f}}{Al{Bj}}Dd}{{Bf{DdFh}}}}{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}{{{Al{AnA@f}}{Al{Bj}}Eb{Df{Fb}}}Bh}{ce{}{}}`{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}```{cc{}}{{{Al{AAb}}EbEb}Id}{{}Bb}9{c{{Eh{e}}}{}{}}{{}{{Bf{EjEl}}}}{M`AAb}{Al}{{{Al{AnAAb}}M`}Bh}{{{Al{AnAAb}}Bb}Bh}00`{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}{ce{}{}}```{{{Al{c}}}{{Al{e}}}{}{}}0{{{Al{Anc}}}{{Al{Ane}}}{}{}}0`{Bb{{Al{c}}}{}}0{Bb{{Al{Anc}}}{}}0{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}0{BbBh}0`{cc{}}0{{}Bb}088{c{{Eh{e}}}{}{}}0{{}{{Bf{EjEl}}}}0``{{AAdDd}AAf}{{AAdDd}AAh}{Al}0{{{Al{AAj}}{Al{Eb}}}{{Df{{C`{Bl}}}}}}{{{Al{AAf}}{Al{Eb}}}{{Df{{C`{Bl}}}}}}{{{Al{AAh}}{Al{Eb}}}{{Df{{C`{Bl}}}}}}``{c{{Bf{e}}}{}{}}000{{{Al{c}}}En{}}0{{{l{c}}}{{l{F`}}}{}}0{{{Al{Anc}}}{{Al{AnF`}}}{}}0{{{Al{c}}}{{Al{F`}}}{}}0{ce{}{}}0{{{Al{AnAAj}}{Al{Eb}}{Al{{Bn{Bl}}}}}Bh}{{{Al{AnAAf}}{Al{Eb}}{Al{{Bn{Bl}}}}}Bh}{{{Al{AnAAh}}{Al{Eb}}{Al{{Bn{Bl}}}}}Bh}`{{{Al{c}}}{{Al{e}}}{}{}}{{{Al{Anc}}}{{Al{Ane}}}{}{}}{Bb{{Al{c}}}{}}{Bb{{Al{Anc}}}{}}{{{Al{c}}{Al{Ane}}}{{Bf{{Bd{gi}}}}}{}{}{}{}}{BbBh}{{{Al{AnAAl}}}Dj}`{cc{}}{{}Bb}`<{c{{Eh{e}}}{}{}}{{}{{Bf{EjEl}}}}{{{Al{AnAAl}}}Bh}{{b{h{{Aj{AAn{Mb{Hn}}}}}}{h{{f{Jb}}}}{l{j}}}AAl}{Al}```{{b{h{{f{d}}}}{l{j}}nA`{h{{f{Ab}}}}Ad}{{Aj{{l{Af}}{l{Ah}}}}}}{c{{Bf{e}}}{}{}}0{{{Al{c}}}En{}}{{{l{c}}}{{l{F`}}}{}}{{{Al{Anc}}}{{Al{AnF`}}}{}}{{{Al{c}}}{{Al{F`}}}{}}{{{Al{AnAAl}}{Mj{HjHl}}}Bh}{ce{}{}}{{{Al{AnAAl}}}{{Aj{HnDj}}}}","D":"CMn","p":[[5,"ExecutionConfig",1148],[10,"FinalStateController",1149],[8,"RwLock",1150],[5,"Arc",1151],[10,"SelectorController",1152],[5,"Box",1153],[5,"MipStore",1154],[5,"ExecutionChannels",1155],[5,"Wallet",1156],[5,"MassaMetrics",1157],[10,"ExecutionManager",1158],[10,"ExecutionController",1158],[1,"tuple"],[1,"reference"],[0,"mut"],[5,"ActiveHistory",18],[1,"usize"],[5,"With",1159],[6,"Result",1160],[1,"unit"],[6,"Address",1161],[1,"u8"],[1,"slice"],[5,"Vec",1162],[6,"HistorySearchResult",18],[5,"Amount",1163],[5,"Bytecode",1164],[6,"DenunciationIndex",1165],[6,"OperationId",1166],[8,"AsyncMessageId",1167],[5,"AsyncMessageUpdate",1167],[5,"AsyncMessage",1167],[6,"SetUpdateOrDelete",1168],[1,"u64"],[6,"Option",1169],[5,"Range",1170],[1,"bool"],[6,"SlotIndexPosition",18],[5,"Formatter",1171],[8,"Result",1171],[5,"Slot",1172],[5,"DeferredCredits",1173],[5,"Hash",1174],[5,"Request",1175],[5,"Layout",1176],[5,"LayoutError",1176],[5,"TypeId",1177],[10,"Any",1177],[6,"BlockId",1178],[5,"ModuleCache",1179],[5,"ExecutionContext",101],[6,"ExecutionError",1180],[5,"String",1181],[6,"DeferredCallId",1182],[5,"DeferredCall",1183],[5,"DeferredSlotCalls",1184],[5,"SCOutputEvent",1185],[5,"ExecutionAddressCycleInfo",1161],[6,"Bound",1170],[5,"BTreeMap",1186],[5,"BTreeSet",1187],[5,"ExecutionContextSnapshot",101],[5,"Xoshiro256PlusPlus",1188],[5,"ExecutionStackElement",1189],[5,"ExecutedBlockInfo",1189],[5,"ExecutionOutput",1189],[5,"Private",1190],[5,"ExecutionControllerImpl",229],[5,"ReadOnlyExecutionRequest",1189],[5,"ReadOnlyExecutionOutput",1189],[5,"ExecutionInputData",229],[5,"ExecutionAddressInfo",1189],[5,"EventFilter",1191],[5,"ExecutionStats",1192],[5,"ExecutionQueryRequest",1189],[5,"ExecutionQueryResponse",1189],[5,"ExecutionManagerImpl",229],[5,"HashMap",1193],[5,"ExecutionBlockMetadata",1189],[8,"PreHashMap",1194],[5,"ExecutionState",321],[5,"AsyncMessageExecutionResult",395],[6,"OperationType",1166],[5,"DeferredCallExecutionResult",395],[6,"Denunciation",1165],[5,"DenunciationResult",395],[8,"SecureShareOperation",1166],[8,"PreHashSet",1194],[5,"ExecutionQueryCycleInfos",1189],[1,"u32"],[5,"ExecutionInfo",395],[5,"ExecutionInfoForSlot",395],[5,"InterfaceImpl",548],[5,"NativeAmount",1195],[8,"Result",1196],[1,"str"],[5,"NativeTime",1195],[10,"Interface",1197],[6,"ComparisonResult",1195],[6,"AddressCategory",1195],[5,"Slot",1195],[6,"RuntimeModule",1198],[1,"array"],[5,"MassaTime",1199],[8,"Mutex",1200],[1,"i64"],[1,"f64"],[5,"RequestWithResponseSender",687],[5,"RequestQueue",687],[10,"Debug",1171],[5,"MassaSender",1201],[5,"SlotSequencer",744],[5,"SlotInfo",744],[17,"Output"],[10,"Fn",1202],[5,"SpeculativeAsyncPool",813],[5,"AsyncPoolChanges",1203],[5,"AsyncMessageInfo",1167],[5,"AsyncMessageTrigger",1167],[5,"LedgerChanges",1204],[5,"SpeculativeDeferredCallRegistry",848],[1,"u128"],[5,"DeferredCallRegistryChanges",1205],[5,"DeferredCallsConfig",1206],[5,"SpeculativeExecutedDenunciations",891],[8,"ExecutedDenunciationsChanges",1207],[5,"SpeculativeExecutedOps",920],[8,"ExecutedOpsChanges",1208],[5,"SpeculativeLedger",949],[5,"StorageCostsConstants",1148],[5,"SpeculativeRollState",993],[10,"RangeBounds",1170],[10,"Clone",1209],[5,"ProductionStats",1210],[5,"PoSChanges",1211],[5,"Ratio",1212],[5,"ExecutionStatsCounter",1032],[5,"PathBuf",1213],[5,"FileStorageBackend",1062],[5,"RocksDBStorageBackend",1062],[10,"StorageBackend",1062],[5,"ExecutionThread",1117],[5,"Condvar",1214],[6,"OperationInfo",395]],"r":[[14,1117]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAI0CmAABAAAABQAAAA4AAAATAAAAGQAAABsAAAAdABIAOAAAAEEAAgBHAAgAUQAUAG0AAwCAAAEAhQAHAKkAAQCwAAEAtAABALwAAQDTAAMA2QABAN0ABQDkAAEA6QAAAOsABgDzAA0ABAEAAAgBAAARAQIAGQEFACEBAgAqARMAPwEDAEUBAQBJAQMATgEFAFcBAABhAQQAZwEAAGwBAAB3AQAAeQEBAHwBAQB/AQAAgQEHAIoBAwCPAQQAlQEAAJcBDAClAQIAqQEcAMwBBgDZARYA8QEBAPUBLwAmAgAALAIDADECAQA0AgcAPQIFAEcCAABMAgIAUAIAAFcCAABaAgAAXAIAAHECAABzAgEAfQIBAIACAACCAgIAiwIAAJ4CAAChAgAApQICAKsCBACyAgMAuQIHAMICAQDGAgEAygIBAM8CAQDUAgEA2wINAOsCBADxAgIA9wIHAAADAAADAwAACQMAAAsDAAAOAwEAFQMBABgDAQAeAwwALAMLADoDAAA8AwAAQAMBAEMDAQBKAwkAVQMBAFkDBwBiAwQAaAMBAGsDAQBuAwEAcwMAAHUDBgB+AwUAiAMAAIsDAACNAwAAjwMAAJIDBgCbAwUApQMAAKgDAACqAwAArAMAAK8DBgC5AwEAvgMDAMwDAADOAwEA1AMAANsDBgDmAwUA9AMAAPYDAQD5AwAA/gMBAAMEAwAIBAAACgQFABUEAAAXBAEAGgQAACAEBgAqBA0AOgQBAD4EBQBGBAEASQQRAFwEAQBfBAUAZgQAAGgEAQBrBAEAbwQAAHIEAAB0BAUAewQAAA=="}],\ +["massa_execution_exports",{"t":"PPPPPPPPPPPPPPPPPPPPPPPFPPPPPPPPPPPPPFPPPFPFFFFKGKFFGGFGFGFFPPPPFPPPPPPPPPPFFFGPPPPPGFPPPNNOOOOOOOOOOONNNNOOOOOOOOOOOOOCONNMNNNNOOOCOOOONNOOONNNNNNNNOCOOOCOMOOOOOONNNNNNOOOONMMMMMMMMOONNNNNNOOOONNOOOOCOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONOOOOOOONNOMOOOOOOCOOOOOOOMOOOOOOONNNNNNNNCCNNNNNNMNNOOOOOOOOOOOOOOOOOOFNNNNNNNNNNNNNNNNNONNNNNNNNKKMMMMMMMMMMMMMPPPPGGPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHHHHHFFNNOOOONNNNOOOOONNNNNNNOOOONNNNNNNNOOOONNNNNNOOOONNNNNNONNOOOOOOOOOOOOOOOOOOOONNOOOOOOOONNNNNNNNNNNNNNNNPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPFPFFFFGFGFGFFPPPPPPFFFGPGNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNOOOONNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOO","n":["AddressBalanceCandidate","AddressBalanceFinal","AddressBytecodeCandidate","AddressBytecodeFinal","AddressDatastoreKeysCandidate","AddressDatastoreKeysFinal","AddressDatastoreValueCandidate","AddressDatastoreValueFinal","AddressDeferredCreditsCandidate","AddressDeferredCreditsFinal","AddressExistsCandidate","AddressExistsFinal","AddressRollsCandidate","AddressRollsFinal","AlreadyExecutedWithFailure","AlreadyExecutedWithSuccess","Amount","BlockGasError","Boolean","Bytecode","BytecodeExecution","CacheError","ChannelError","CondomLimits","CycleInfos","CycleInfos","DatastoreValue","DeferredCallInfo","DeferredCallInfo","DeferredCallQuote","DeferredCallQuote","DeferredCallsBySlot","DeferredCallsBySlot","DeferredCallsError","DeferredCredits","DenunciationExecutionStatusCandidate","DenunciationExecutionStatusFinal","EventStore","Events","Events","ExecutableOrExpired","ExecutedBlockInfo","ExecutedSlot","ExecutionAddressInfo","ExecutionBlockMetadata","ExecutionChannels","ExecutionConfig","ExecutionController","ExecutionError","ExecutionManager","ExecutionOutput","ExecutionQueryCycleInfos","ExecutionQueryError","ExecutionQueryExecutionStatus","ExecutionQueryRequest","ExecutionQueryRequestItem","ExecutionQueryResponse","ExecutionQueryResponseItem","ExecutionQueryStakerInfo","ExecutionStackElement","ExecutionStatus","FactoryError","FinalizedSlot","FunctionCall","GasCosts","IncludeDenunciationError","IncludeOperationError","InvalidSlotRange","KeyList","MassaHashError","ModelsError","NotEnoughGas","NotFound","OpExecutionStatusCandidate","OpExecutionStatusFinal","ReadOnlyCallRequest","ReadOnlyExecutionOutput","ReadOnlyExecutionRequest","ReadOnlyExecutionTarget","RollBuyError","RollCount","RollSellError","RuntimeError","SlashError","SlotExecutionOutput","StorageCostsConstants","TooMuchGas","TransactionError","VMError","__clone_box","__clone_box","abi_costs","active_rolls","address","announced_version","async_msg_cst_gas_cost","auto_sell_execution","base_operation_gas_cost","block_dump_folder_path","block_id","block_info","block_reward","borrow","borrow","borrow_mut","borrow_mut","broadcast_enabled","broadcast_slot_execution_output_channel_capacity","broadcast_slot_execution_traces_channel_capacity","broadcast_traces_enabled","call_result","call_stack","call_stack","cancel_async_message_execution","candidate_balance","candidate_cursor","candidate_datastore_keys","candidate_roll_count","chain_id","channels","cl_compilation_cost","clone","clone","clone_box","clone_into","clone_into","clone_to_uninit","clone_to_uninit","coins","coins","condom_limits","controller_traits","current_version","cursor_delay","cycle","cycle_infos","default","default","deferred_calls_config","deferred_credits_execution","denunciation_expire_periods","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_count","error","event_cache_path","event_cache_size","event_snip_amount","event_store","events","execute_readonly_request","fee","final_balance","final_cursor","final_datastore_keys","final_roll_count","final_state_fingerprint","fmt","fmt","from","from","from_ref","from_ref","future_deferred_credits","gas_cost","gas_costs","genesis_timestamp","get_abi_costs","get_addresses_infos","get_cycle_active_rolls","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_data_entry","get_final_and_candidate_balance","get_ops_exec_status","get_stats","hd_cache_path","hd_cache_size","init","init","into","into","into_request","into_request","is_final","is_final","last_start_period","launch_cost","layout_raw","layout_raw","ledger_cost_per_byte","ledger_entry_base_cost","ledger_entry_datastore_base_cost","lru_cache_size","mapping_grpc","max_async_gas","max_bytecode_size","max_custom_sections_data_len","max_custom_sections_len","max_datastore_key_length","max_datastore_value_size","max_event_per_operation","max_event_size","max_execution_traces_slot_limit","max_exports","max_final_events","max_function_length","max_function_names_len","max_functions","max_gas","max_gas","max_gas_per_block","max_global_initializers_len","max_globals_len","max_imports_len","max_instance_cost","max_memories_len","max_miss_ratio","max_name_len","max_parameter_length","max_passive_data_len","max_passive_elements_len","max_read_only_gas","max_recursive_calls_depth","max_signature_len","max_table_initializers_len","max_tables_count","new","operation_datastore","operation_validity_period","operator_cost","out","owned_addresses","parameter","periods_per_cycle","pointer_metadata","pointer_metadata","production_stats","query_state","readonly_queue_length","requests","responses","roll_count_to_slash_on_denunciation","roll_price","same_thread_parent_creator","settings","slot","slot_execution_output_sender","snip_amount","sp_compilation_cost","staker_infos","state_changes","stats_time_window_duration","stop","storage","storage_costs_constants","t0","target","target_addr","target_func","thread_count","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","types","types_trace_info","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_blockclique_status","vzip","vzip","context","error","addr","addr","addr","addr","cycle","key","key","max_gas_request","params_size","prefix","prefix","restrict_to_addresses","target_slot","parameter","target_addr","target_func","ExecutionChannels","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","slot_execution_output_sender","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ExecutionController","ExecutionManager","clone_box","execute_readonly_request","get_addresses_infos","get_cycle_active_rolls","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_data_entry","get_final_and_candidate_balance","get_ops_exec_status","get_stats","query_state","stop","update_blockclique_status","BlockGasError","CacheError","ChannelError","DeferredCallsError","ExecutionError","ExecutionQueryError","FactoryError","IncludeDenunciationError","IncludeOperationError","InvalidSlotRange","MassaHashError","ModelsError","NotEnoughGas","NotFound","RollBuyError","RollSellError","RuntimeError","SlashError","TooMuchGas","TransactionError","VMError","__clone_box","__clone_box","as_error","as_error","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","init","init","into","into","into_request","into_request","layout_raw","layout_raw","pointer_metadata","pointer_metadata","source","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","context","error","EventStore","__clone_box","borrow","borrow_mut","clear","clone","clone_into","clone_to_uninit","default","deref","deref_mut","deserialize","drop","extend","finalize","fmt","from","from_ref","get_filtered_sc_output_events","get_filtered_sc_output_events_iter","init","into","into_request","layout_raw","pointer_metadata","prune","push","serialize","take","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","to_cycle_info","to_event_filter","to_execution_query_response","to_execution_query_result","to_execution_query_staker_info","to_querystate_filter","ExecutionConfig","StorageCostsConstants","__clone_box","__clone_box","async_msg_cst_gas_cost","base_operation_gas_cost","block_dump_folder_path","block_reward","borrow","borrow","borrow_mut","borrow_mut","broadcast_enabled","broadcast_slot_execution_output_channel_capacity","broadcast_slot_execution_traces_channel_capacity","broadcast_traces_enabled","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","condom_limits","cursor_delay","deferred_calls_config","denunciation_expire_periods","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_count","event_cache_path","event_cache_size","event_snip_amount","fmt","fmt","from","from","from_ref","from_ref","gas_costs","genesis_timestamp","hd_cache_path","hd_cache_size","init","init","into","into","into_request","into_request","last_start_period","layout_raw","layout_raw","ledger_cost_per_byte","ledger_entry_base_cost","ledger_entry_datastore_base_cost","lru_cache_size","max_async_gas","max_bytecode_size","max_datastore_key_length","max_datastore_value_size","max_event_per_operation","max_event_size","max_execution_traces_slot_limit","max_final_events","max_function_length","max_gas_per_block","max_miss_ratio","max_parameter_length","max_read_only_gas","max_recursive_calls_depth","operation_validity_period","periods_per_cycle","pointer_metadata","pointer_metadata","readonly_queue_length","roll_count_to_slash_on_denunciation","roll_price","snip_amount","stats_time_window_duration","storage_costs_constants","t0","thread_count","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","AddressBalanceCandidate","AddressBalanceFinal","AddressBytecodeCandidate","AddressBytecodeFinal","AddressDatastoreKeysCandidate","AddressDatastoreKeysFinal","AddressDatastoreValueCandidate","AddressDatastoreValueFinal","AddressDeferredCreditsCandidate","AddressDeferredCreditsFinal","AddressExistsCandidate","AddressExistsFinal","AddressRollsCandidate","AddressRollsFinal","AlreadyExecutedWithFailure","AlreadyExecutedWithSuccess","Amount","Boolean","Bytecode","BytecodeExecution","CycleInfos","CycleInfos","DatastoreValue","DeferredCallInfo","DeferredCallInfo","DeferredCallQuote","DeferredCallQuote","DeferredCallsBySlot","DeferredCallsBySlot","DeferredCredits","DenunciationExecutionStatusCandidate","DenunciationExecutionStatusFinal","Events","Events","ExecutableOrExpired","ExecutedBlockInfo","ExecutedSlot","ExecutionAddressInfo","ExecutionBlockMetadata","ExecutionOutput","ExecutionQueryCycleInfos","ExecutionQueryExecutionStatus","ExecutionQueryRequest","ExecutionQueryRequestItem","ExecutionQueryResponse","ExecutionQueryResponseItem","ExecutionQueryStakerInfo","ExecutionStackElement","ExecutionStatus","FinalizedSlot","FunctionCall","KeyList","OpExecutionStatusCandidate","OpExecutionStatusFinal","ReadOnlyCallRequest","ReadOnlyExecutionOutput","ReadOnlyExecutionRequest","ReadOnlyExecutionTarget","RollCount","SlotExecutionOutput","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","active_rolls","address","announced_version","auto_sell_execution","block_id","block_info","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_result","call_stack","call_stack","cancel_async_message_execution","candidate_balance","candidate_cursor","candidate_datastore_keys","candidate_roll_count","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","coins","coins","current_version","cycle","cycle_infos","deferred_credits_execution","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","events","fee","final_balance","final_cursor","final_datastore_keys","final_roll_count","final_state_fingerprint","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","future_deferred_credits","gas_cost","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_final","is_final","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","max_gas","max_gas","operation_datastore","out","owned_addresses","parameter","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","production_stats","requests","responses","same_thread_parent_creator","serialize","serialize","slot","staker_infos","state_changes","storage","target","target_addr","target_func","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","addr","addr","addr","addr","cycle","key","key","max_gas_request","params_size","prefix","prefix","restrict_to_addresses","target_slot","parameter","target_addr","target_func"],"q":[[0,"massa_execution_exports"],[286,"massa_execution_exports::ExecutionError"],[288,"massa_execution_exports::ExecutionQueryRequestItem"],[301,"massa_execution_exports::ReadOnlyExecutionTarget"],[304,"massa_execution_exports::channels"],[331,"massa_execution_exports::controller_traits"],[346,"massa_execution_exports::error"],[430,"massa_execution_exports::error::ExecutionError"],[432,"massa_execution_exports::event_store"],[469,"massa_execution_exports::mapping_grpc"],[475,"massa_execution_exports::settings"],[580,"massa_execution_exports::types"],[1083,"massa_execution_exports::types::ExecutionQueryRequestItem"],[1096,"massa_execution_exports::types::ReadOnlyExecutionTarget"],[1099,"dyn_clone::sealed"],[1100,"massa_sc_runtime::types"],[1101,"alloc::boxed"],[1102,"rkyv::with"],[1103,"core::result"],[1104,"core::fmt"],[1105,"alloc::string"],[1106,"std::collections::hash::map"],[1107,"massa_models::address"],[1108,"massa_models::slot"],[1109,"core::ops::range"],[1110,"alloc::vec"],[1111,"alloc::collections::btree::map"],[1112,"massa_models::denunciation"],[1113,"massa_models::execution"],[1114,"massa_models::output_event"],[1115,"core::option"],[1116,"massa_models::amount"],[1117,"massa_models::operation"],[1118,"massa_models::stats"],[1119,"tonic::request"],[1120,"core::alloc::layout"],[1121,"std::path"],[1122,"anyhow"],[1123,"core::any"],[1124,"massa_models::block_id"],[1125,"massa_models::prehash"],[1126,"core::error"],[1127,"massa_module_cache::error"],[1128,"massa_hash::error"],[1129,"massa_versioning::versioning_factory"],[1130,"massa_models::error"],[1131,"alloc::collections::vec_deque"],[1132,"core::iter::traits::iterator"],[1133,"serde::ser"],[1134,"massa_proto_rs::massa::api::v1"]],"i":[72,72,72,72,72,72,72,72,72,72,72,72,72,72,81,81,66,14,66,66,78,14,14,0,72,66,66,72,66,72,66,72,66,14,66,72,72,0,72,66,81,0,75,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,14,75,78,0,14,14,14,66,14,14,14,52,72,72,0,0,0,0,14,66,14,14,14,0,0,14,14,14,5,6,6,69,80,76,74,77,74,74,76,77,74,5,6,5,6,74,74,74,74,13,12,79,77,24,43,24,24,74,0,6,5,6,7,5,6,5,6,12,80,74,0,76,74,63,24,5,6,74,77,74,5,6,5,6,5,6,5,6,74,0,74,74,74,0,77,7,12,24,43,24,24,43,5,6,5,6,5,6,24,13,74,74,6,7,7,7,7,7,7,7,7,74,74,5,6,5,6,5,6,63,79,74,6,5,6,73,73,73,74,0,74,74,5,5,74,74,74,74,74,5,74,74,5,5,12,79,74,5,5,5,6,5,74,5,74,5,5,74,74,5,5,5,6,80,74,6,13,80,79,74,5,6,69,7,74,42,43,74,74,48,0,77,50,74,6,63,77,74,44,48,74,74,12,79,79,74,5,6,5,6,5,6,5,6,0,0,5,6,5,6,5,6,7,5,6,82,82,83,84,85,86,87,85,86,88,88,83,84,87,88,89,89,89,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,7,7,7,7,7,7,7,7,7,7,7,44,7,14,14,14,14,0,0,14,14,14,14,14,14,14,52,14,14,14,14,14,14,14,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,14,52,52,14,14,14,14,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,14,52,82,82,0,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,0,0,0,0,0,0,0,0,73,74,74,74,74,74,73,74,73,74,74,74,74,74,74,73,74,73,74,73,73,74,74,74,74,74,73,74,73,74,73,74,73,74,74,74,74,74,73,74,73,74,73,74,74,74,74,74,73,74,73,74,73,74,74,73,74,73,73,73,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,73,74,74,74,74,74,74,74,74,74,73,74,73,74,73,74,73,74,73,74,73,74,73,74,73,74,72,72,72,72,72,72,72,72,72,72,72,72,72,72,81,81,66,66,66,78,72,66,66,72,66,72,66,72,66,66,72,72,72,66,81,0,75,0,0,0,0,0,0,0,0,0,0,0,66,75,78,66,72,72,0,0,0,0,66,0,48,24,75,76,77,13,12,78,79,80,69,80,76,77,76,77,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,13,12,79,77,24,43,24,24,48,24,75,76,77,13,12,78,79,80,48,24,75,76,77,13,12,78,79,80,48,24,75,76,77,13,12,78,79,80,12,80,76,63,24,77,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,77,12,24,43,24,24,43,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,48,24,75,76,77,13,12,78,79,80,24,13,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,63,79,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,12,79,80,13,80,79,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,69,42,43,48,76,77,77,63,77,48,12,79,79,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,42,43,72,66,81,63,69,48,24,75,76,77,13,12,78,79,80,83,84,85,86,87,85,86,88,88,83,84,87,88,89,89,89],"f":"`````````````````````````````````````````````````````````````````````````````````````````{{{b{c}}d}f{}}0```````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{hc}}}{{b{he}}}{}{}}0```````````````{{{b{j}}}j}{{{b{l}}}l}{{{b{n}}}{{A`{n}}}}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}0````````{{}j}{{}l}```{Ab{{b{c}}}{}}0{Ab{{b{hc}}}{}}0{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0{Abf}0```````{{{b{n}}Ah}{{Af{AjAl}}}}``````{{{b{j}}{b{hAn}}}{{Af{fB`}}}}{{{b{l}}{b{hAn}}}{{Af{fB`}}}}{cc{}}0{{{b{c}}}c{}}0````{{{b{l}}}{{b{{Bf{BbBd}}}}}}{{{b{n}}{b{{Bj{Bh}}}}{Bn{Bl}}}{{Cb{C`}}}}{{{b{n}}Bd}{{Cd{BhBd}}}}{{{b{n}}{b{Cf}}}{{Cj{ChCh}}}}{{{b{n}}Cl}{{Cb{Cn}}}}{{{b{n}}{Cb{{Cj{Bh{Cb{D`}}}}}}}{{Cb{{Cj{{Db{{Cb{D`}}}}{Db{{Cb{D`}}}}}}}}}}{{{b{n}}{b{{Bj{Bh}}}}}{{Cb{{Cj{{Db{Dd}}{Db{Dd}}}}}}}}{{{b{n}}{b{{Bj{Df}}}}}{{Cb{{Cj{{Db{Ch}}{Db{Ch}}}}}}}}{{{b{n}}}Dh}``{{}Ab}0{ce{}{}}0{c{{Dj{e}}}{}{}}0````{{}{{Af{DlDn}}}}0`````````````````````````````````````{E`{{Af{lEb}}}}```````{b}0`{{{b{n}}Ed}Ef}``````````````{{{b{hEh}}}f}```````{{{b{c}}}e{}{}}0{c{{Af{e}}}{}{}}000{{{b{c}}}Ej{}}0``{{{A`{c}}}{{A`{El}}}{}}0{{{b{hc}}}{{b{hEl}}}{}}0{{{b{c}}}{{b{El}}}{}}0{{{b{n}}{Bf{BlEn}}{Db{{Bf{BlEn}}}}{Fb{EnF`}}}f}==```````````````````{{{b{c}}d}f{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{Fd}}}Fd}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ab{{b{c}}}{}}{Ab{{b{hc}}}{}}{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}{Abf}{cc{}}{{{b{c}}}c{}}{{}Ab}{ce{}{}}{c{{Dj{e}}}{}{}}{{}{{Af{DlDn}}}}{b}`{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{c}}}Ej{}}{{{A`{c}}}{{A`{El}}}{}}{{{b{hc}}}{{b{hEl}}}{}}{{{b{c}}}{{b{El}}}{}}9``{{{b{n}}}{{A`{n}}}}{{{b{n}}Ah}{{Af{AjAl}}}}{{{b{n}}{b{{Bj{Bh}}}}{Bn{Bl}}}{{Cb{C`}}}}{{{b{n}}Bd}{{Cd{BhBd}}}}{{{b{n}}{b{Cf}}}{{Cj{ChCh}}}}{{{b{n}}Cl}{{Cb{Cn}}}}{{{b{n}}{Cb{{Cj{Bh{Cb{D`}}}}}}}{{Cb{{Cj{{Db{{Cb{D`}}}}{Db{{Cb{D`}}}}}}}}}}{{{b{n}}{b{{Bj{Bh}}}}}{{Cb{{Cj{{Db{Dd}}{Db{Dd}}}}}}}}{{{b{n}}{b{{Bj{Df}}}}}{{Cb{{Cj{{Db{Ch}}{Db{Ch}}}}}}}}{{{b{n}}}Dh}{{{b{n}}Ed}Ef}{{{b{hEh}}}f}{{{b{n}}{Bf{BlEn}}{Db{{Bf{BlEn}}}}{Fb{EnF`}}}f}`````````````````````{{{b{c}}d}f{}}0{{{b{c}}}{{b{Ff}}}{}}0{{{b{c}}}{{b{e}}}{}{}}0{{{b{hc}}}{{b{he}}}{}{}}0{{{b{Al}}}Al}{{{b{Fh}}}Fh}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}0{Ab{{b{c}}}{}}0{Ab{{b{hc}}}{}}0{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0{Abf}0{{{b{Al}}{b{hAn}}}Fj}0{{{b{Fh}}{b{hAn}}}Fj}0{cc{}}{FlAl}{FnAl}{G`Al}{GbAl}4{{{b{c}}}c{}}0{{}Ab}0{ce{}{}}0{c{{Dj{e}}}{}{}}0{{}{{Af{DlDn}}}}0{b}0{{{b{Al}}}{{Db{{b{Ff}}}}}}{{{b{c}}}e{}{}}0{{{b{c}}}Bb{}}0{c{{Af{e}}}{}{}}000{{{b{c}}}Ej{}}0{{{A`{c}}}{{A`{El}}}{}}0{{{b{hc}}}{{b{hEl}}}{}}0{{{b{c}}}{{b{El}}}{}}0;;```{{{b{c}}d}f{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{hGd}}}f}{{{b{Gd}}}Gd}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{{}Gd}{Ab{{b{c}}}{}}{Ab{{b{hc}}}{}}{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}{Abf}{{{b{hGd}}Gd}f}9{{{b{Gd}}{b{hAn}}}Fj}{cc{}}{{{b{c}}}c{}}{{{b{Gd}}{b{Cl}}}{{Gf{Cn}}}}{{{b{Gd}}{b{Cl}}}{{`{{Gj{}{{Gh{{b{Cn}}}}}}}}}}{{}Ab}{ce{}{}}{c{{Dj{e}}}{}{}}{{}{{Af{DlDn}}}}{b}{{{b{hGd}}Ab}f}{{{b{hGd}}Cn}f}{{{b{Gd}}c}AfGl}{{{b{hGd}}}{{Gf{Cn}}}}{{{b{c}}}e{}{}}{c{{Af{e}}}{}{}}0{{{b{c}}}Ej{}}{{{A`{c}}}{{A`{El}}}{}}{{{b{hc}}}{{b{hEl}}}{}}{{{b{c}}}{{b{El}}}{}}={GnH`}{{{Cb{Hb}}}{{Af{ClGb}}}}{{{Af{HdFh}}}Hf}{HdHh}{{BhHj}Hl}{Hn{{Af{I`Gb}}}}``{{{b{c}}d}f{}}0````{{{b{c}}}{{b{e}}}{}{}}0{{{b{hc}}}{{b{he}}}{}{}}0`````{{{b{Ib}}}Ib}{{{b{Id}}}Id}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}00````{Ab{{b{c}}}{}}0{Ab{{b{hc}}}{}}0{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0{Abf}0````{{{b{Ib}}{b{hAn}}}Fj}{{{b{Id}}{b{hAn}}}Fj}{cc{}}0{{{b{c}}}c{}}0````{{}Ab}0{ce{}{}}0{c{{Dj{e}}}{}{}}0`{{}{{Af{DlDn}}}}0````````````````````{b}0````````{{{b{c}}}e{}{}}0{c{{Af{e}}}{}{}}000{{{b{c}}}Ej{}}0{{{A`{c}}}{{A`{El}}}{}}0{{{b{hc}}}{{b{hEl}}}{}}0{{{b{c}}}{{b{El}}}{}}099````````````````````````````````````````````````````````````{{{b{c}}d}f{}}000000000``````{{{b{c}}}{{b{e}}}{}{}}0000000000000000{{{b{hc}}}{{b{he}}}{}{}}0000000000000000````````{{{b{F`}}}F`}{{{b{C`}}}C`}{{{b{If}}}If}{{{b{Ih}}}Ih}{{{b{Ij}}}Ij}{{{b{Aj}}}Aj}{{{b{Ah}}}Ah}{{{b{Il}}}Il}{{{b{In}}}In}{{{b{J`}}}J`}{{{b{c}}{b{he}}}f{}{}}000000000{{{b{c}}}f{}}000000000``````{Ab{{b{c}}}{}}0000000000000000{Ab{{b{hc}}}{}}0000000000000000{{{b{c}}{b{he}}}{{Af{{Ad{gi}}}}}{}{}{}{}}0000000000000000{Abf}0000000000000000```````{{{b{F`}}{b{hAn}}}Fj}{{{b{C`}}{b{hAn}}}Fj}{{{b{If}}{b{hAn}}}Fj}{{{b{Ih}}{b{hAn}}}Fj}{{{b{Ij}}{b{hAn}}}Fj}{{{b{Aj}}{b{hAn}}}Fj}{{{b{Ah}}{b{hAn}}}Fj}{{{b{Il}}{b{hAn}}}Fj}{{{b{In}}{b{hAn}}}Fj}{{{b{J`}}{b{hAn}}}Fj}{cc{}}0000000000000000{{{b{c}}}c{}}000000000``{{}Ab}0000000000000000{ce{}{}}0000000000000000{c{{Dj{e}}}{}{}}0000000000000000``{{}{{Af{DlDn}}}}0000000000000000``````{b}0000000000000000````{{{b{Ih}}c}AfGl}{{{b{Ij}}c}AfGl}```````{{{b{c}}}e{}{}}000000000{c{{Af{e}}}{}{}}000000000000000000000000000000000{{{b{c}}}Ej{}}0000000000000000{{{A`{c}}}{{A`{El}}}{}}0000000000000000{{{b{hc}}}{{b{hEl}}}{}}0000000000000000{{{b{c}}}{{b{El}}}{}}0000000000000000;;;;;;;;;;;;;;;;;````````````````","D":"CNn","p":[[1,"reference"],[5,"Private",1099],[1,"unit"],[0,"mut"],[5,"CondomLimits",0,1100],[5,"GasCosts",0,1100],[10,"ExecutionController",331],[5,"Box",1101],[1,"usize"],[5,"With",1102],[6,"Result",1103],[5,"ReadOnlyExecutionRequest",580],[5,"ReadOnlyExecutionOutput",580],[6,"ExecutionError",346],[5,"Formatter",1104],[5,"Error",1104],[5,"String",1105],[1,"u64"],[5,"HashMap",1106],[6,"Address",1107],[1,"slice"],[5,"Slot",1108],[6,"Bound",1109],[5,"ExecutionAddressInfo",580],[5,"Vec",1110],[5,"BTreeMap",1111],[6,"DenunciationIndex",1112],[1,"bool"],[1,"tuple"],[5,"EventFilter",1113],[5,"SCOutputEvent",1114],[1,"u8"],[6,"Option",1115],[5,"Amount",1116],[6,"OperationId",1117],[5,"ExecutionStats",1118],[5,"Request",1119],[5,"Layout",1120],[5,"LayoutError",1120],[5,"PathBuf",1121],[5,"Error",1122],[5,"ExecutionQueryRequest",580],[5,"ExecutionQueryResponse",580],[10,"ExecutionManager",331],[5,"TypeId",1123],[10,"Any",1123],[6,"BlockId",1124],[5,"ExecutionBlockMetadata",580],[8,"PreHashMap",1125],[5,"ExecutionChannels",304],[10,"Error",1126],[6,"ExecutionQueryError",346],[8,"Result",1104],[6,"CacheError",1127],[6,"MassaHashError",1128],[6,"FactoryError",1129],[6,"ModelsError",1130],[5,"EventStore",432],[5,"VecDeque",1131],[17,"Item"],[10,"Iterator",1132],[10,"Serializer",1133],[5,"ExecutionQueryCycleInfos",580],[5,"ExecutionQueryCycleInfos",1134],[5,"ScExecutionEventsFilter",1134],[6,"ExecutionQueryResponseItem",580],[5,"ExecutionQueryResponse",1134],[5,"ExecutionQueryResponseItem",1134],[5,"ExecutionQueryStakerInfo",580],[5,"ExecutionQueryStakerInfoEntry",1134],[5,"ExecutionQueryRequestItem",1134],[6,"ExecutionQueryRequestItem",580],[5,"StorageCostsConstants",475],[5,"ExecutionConfig",475],[6,"SlotExecutionOutput",580],[5,"ExecutedBlockInfo",580],[5,"ExecutionOutput",580],[6,"ReadOnlyExecutionTarget",580],[5,"ReadOnlyCallRequest",580],[5,"ExecutionStackElement",580],[6,"ExecutionQueryExecutionStatus",580],[15,"VMError",430],[15,"AddressDatastoreKeysCandidate",1083],[15,"AddressDatastoreKeysFinal",1083],[15,"AddressDatastoreValueCandidate",1083],[15,"AddressDatastoreValueFinal",1083],[15,"CycleInfos",1083],[15,"DeferredCallQuote",1083],[15,"FunctionCall",1096]],"r":[[23,1100],[37,432],[41,580],[43,580],[44,580],[45,304],[46,475],[47,331],[48,346],[49,331],[50,580],[51,580],[52,346],[53,580],[54,580],[55,580],[56,580],[57,580],[58,580],[59,580],[64,1100],[75,580],[76,580],[77,580],[78,580],[84,580],[85,475]],"b":[[389,"impl-Display-for-ExecutionError"],[390,"impl-Debug-for-ExecutionError"],[391,"impl-Display-for-ExecutionQueryError"],[392,"impl-Debug-for-ExecutionQueryError"],[394,"impl-From%3CCacheError%3E-for-ExecutionError"],[395,"impl-From%3CMassaHashError%3E-for-ExecutionError"],[396,"impl-From%3CFactoryError%3E-for-ExecutionError"],[397,"impl-From%3CModelsError%3E-for-ExecutionError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFQCQwAYAAAAQQAAAFoAAgBnAAMAeAADAH0AAwCJAAEAjgAHAKQAAQCoAAEArgAAALkAAQC9AAEAwgACAMwAAQDTAAAA1gABANsABADhAAAA4wABAOcAAwDtAAAA8gABAAABAAAMAQcAFgEFAB0BAQAyAQkAPQEBAEABAgBEAQcAcAEZAIsBAwCQAQMAlgEYALIBAgC2AQcAwAEAAMIBAADFAQAAxwECAMwBAADOAQgA2QEBAN4BAQDkAQMA7QEGAPgBBwAEAgEACAIBAA4CAQASAgEAFQIBACsCAQA1Ag8AgQIJAJECIQC7Ah0A3wJDACoDCQBFAwkAUQMQAHMDEACGAxAAnQMQALIDAQC7A4AA"}],\ +["massa_execution_worker",{"t":"CCCCCCCCCCCCCCHCCCPFPPGPPPPGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNONONNNNNNONOOOOOOOONNNNNONNNNNNNNNNONNONOOONNOOHNNNNNNNNNNNNNNNNNHNNNNNNNNNNOOONOONNONONOONNNNOOOOOOOOONNNNNNNNNNOONNNNNNNNNFFFNONNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNOONNNNNNNNNNONNNNONONONNNNNNNNNNNNNNNNNNNNNNNNIIFOONNNNOOQNNNNNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNNNNNOOONNNOONNNNNNNNOFFFFFGPPOOOONNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNONNNNNNOONNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNHHNNNNNNNNNNNNNNNNNNNNNNNNOOQNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNOOONNNNNNNNNNNNNNFFNNNNNNNNNOOONNNNNNNNONNNNNNNNNNNNNNNNNOOOONNNNNNONONNNNNNNNNNNNNNNNFONNNNNNNONNNNNNNHNONNONNNNNNNNNNNNFSONNNNNOONNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNFONNNNNNOONNNNNNNNNNNNNNNNNNNFONNNNNNOONNNNNNNNNNNNNNNNNNNFOONNNNNNNNNNONNNNNNNNNNNNOOONNNNNONNNNNNNNNFONONNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNOOONNNNNNNNNNNNONNNNNNNFFKNNNNONNNNNNNNONNNNNNNNNNOONNNNMNNOONNNNNNNNNNNNNNMNNFNNNNNNNONNONNNNNNOOOHNNNNNNNNN","n":["active_history","context","controller","execution","execution_info","interface_impl","request_queue","slot_sequencer","speculative_async_pool","speculative_deferred_calls","speculative_executed_denunciations","speculative_executed_ops","speculative_ledger","speculative_roll_state","start_execution_worker","stats","storage_backend","worker","Absent","ActiveHistory","Found","Future","HistorySearchResult","NoHistory","NoInfo","Past","Present","SlotIndexPosition","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","fetch_active_history_data_entry","fetch_balance","fetch_bytecode","fetch_executed_denunciation","fetch_executed_op","fetch_message","fetch_roll_count","find_cycle_indices","fmt","from","from","from","get_address_deferred_credit_for","get_all_deferred_credits_until","get_execution_trail_hash","get_ops_exec_status","get_slot_index","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","truncate_from","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ExecutionContext","ExecutionContextSnapshot","active_slot","add_rolls","address_factory","append_data_entry","async_pool_changes","borrow","borrow","borrow_mut","borrow_mut","cancel_async_message","check_target_sc_address","config","create_new_sc_address","created_addr_index","created_addr_index","created_event_index","created_event_index","created_message_index","created_message_index","creator_address","creator_min_balance","deferred_call_cancel","deferred_call_exists","deferred_call_fail_exec","deferred_call_register","deferred_calls_advance_slot","deferred_calls_changes","deferred_calls_compute_call_fee","delete_data_entry","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","event_count","event_create","event_emit","events","execute_deferred_credits","executed_denunciations","executed_ops","execution_trail_hash","from","from","gas_remaining_before_subexecution","gas_remaining_before_subexecution","generate_execution_trail_hash","get_address_cycle_infos","get_address_future_deferred_credits","get_balance","get_bytecode","get_call_stack","get_current_address","get_current_call_coins","get_current_owned_addresses","get_data_entry","get_deferred_call","get_deferred_calls_by_slot","get_keys","get_snapshot","has_data_entry","has_write_rights_on","init","init","init_prng","insert_executed_denunciation","insert_executed_op","into","into","into_request","into_request","is_denunciation_executed","is_op_executed","layout_raw","layout_raw","ledger_changes","message_infos","module_cache","new","opt_block_id","origin_operation_id","pointer_metadata","pointer_metadata","pos_changes","push_new_message","read_only","readonly","recursion_counter","recursion_counter","reset_to_snapshot","set_bytecode","set_data_entry","settle_slot","slot","speculative_async_pool","speculative_deferred_calls","speculative_executed_denunciations","speculative_executed_ops","speculative_ledger","speculative_roll_state","stack","stack","take_async_batch","transfer_coins","try_from","try_from","try_into","try_into","try_sell_rolls","try_slash_rolls","type_id","type_id","unsafe_rng","unsafe_rng","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_production_stats","vzip","vzip","ExecutionControllerImpl","ExecutionInputData","ExecutionManagerImpl","__clone_box","block_metadata","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_box","clone_into","clone_to_uninit","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","execute_readonly_request","execution_state","finalized_blocks","fmt","from","from","from","from_ref","get_addresses_infos","get_cycle_active_rolls","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_data_entry","get_final_and_candidate_balance","get_ops_exec_status","get_stats","init","init","init","input_data","input_data","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","new","new_blockclique","pointer_metadata","pointer_metadata","pointer_metadata","query_state","readonly_requests","stop","stop","take","thread_handle","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","update_blockclique_status","vzip","vzip","vzip","ExecutionResult","ExecutionResultInner","ExecutionState","active_cursor","active_history","apply_active_execution_output","apply_final_execution_output","borrow","borrow_mut","channels","config","context_guard","deferred_call_info","deferred_call_quote","deref","deref_mut","deserialize","drop","execute_async_message","execute_callsc_op","execute_candidate_slot","execute_deferred_call","execute_denunciation","execute_executesc_op","execute_final_slot","execute_operation","execute_readonly_request","execute_roll_buy_op","execute_roll_sell_op","execute_slot","execute_transaction_op","execution_context","execution_interface","final_cursor","final_events_cache","final_state","from","get_address_cycle_infos","get_address_deferred_credits","get_address_future_deferred_credits","get_cycle_active_rolls","get_cycle_infos","get_deferred_calls_by_slot","get_denunciation_execution_status","get_filtered_sc_output_event","get_final_and_active_bytecode","get_final_and_active_data_entry","get_final_and_candidate_balance","get_final_and_candidate_datastore_keys","get_final_and_candidate_rolls","get_final_state_fingerprint","get_ops_exec_status","get_stats","init","into","into_request","layout_raw","massa_metrics","mip_store","module_cache","new","pointer_metadata","prepare_operation_for_execution","selector","stats_counter","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_versioning_stats","vzip","wallet","AsyncMessageExecutionResult","DeferredCallExecutionResult","DenunciationResult","ExecutionInfo","ExecutionInfoForSlot","OperationInfo","RollBuy","RollSell","address_denounced","async_messages","auto_sell_execution","block_producer_reward","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cancel_async_message_execution","coins","coins","deferred_calls_messages","deferred_credits_execution","denunciations","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","destination","drop","drop","drop","drop","drop","drop","endorsement_creator_rewards","endorsement_target_reward","fmt","from","from","from","from","from","from","info_per_slot","init","init","init","init","init","init","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","new","new","new","new","operations","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","save_for_slot","sender","sender","slashed","slot","success","success","target_address","target_function","traces","traces","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","InterfaceImpl","__clone_box","add_native_amount_wasmv1","address_from_public_key","amount_from_native_amount","amount_to_native_amount","append_ds_value_wasmv1","base58_check_to_bytes_wasmv1","borrow","borrow_mut","bytes_to_base58_check_wasmv1","caller_has_write_access","chain_id","check_address_wasmv1","check_native_amount_wasmv1","check_pubkey_wasmv1","check_signature_wasmv1","checked_add_native_time_wasmv1","checked_div_native_time_wasmv1","checked_mul_native_time_wasmv1","checked_scalar_div_native_time_wasmv1","checked_sub_native_time_wasmv1","clone","clone_box","clone_into","clone_to_uninit","compare_address_wasmv1","compare_native_amount_wasmv1","compare_native_time_wasmv1","compare_pub_key_wasmv1","config","context","context_guard","create_module","decrement_recursion_counter","deferred_call_cancel","deferred_call_exists","deferred_call_register","delete_ds_entry_wasmv1","deref","deref_mut","deserialize","div_rem_native_amount_wasmv1","drop","ds_entry_exists_wasmv1","evm_get_address_from_pubkey","evm_get_pubkey_from_signature","evm_signature_verify","finish_call","from","from_ref","generate_event","generate_event_wasmv1","get_address_category_wasmv1","get_address_from_opt_or_context","get_address_version_wasmv1","get_balance","get_balance_for","get_balance_wasmv1","get_bytecode_wasmv1","get_call_coins","get_call_coins_wasmv1","get_call_stack","get_current_period","get_current_slot","get_current_thread","get_deferred_call_quote","get_ds_keys_wasmv1","get_ds_value_wasmv1","get_interface_version","get_keys","get_keys_for","get_module","get_op_data","get_op_keys","get_op_keys_wasmv1","get_origin_operation_id","get_owned_addresses","get_pubkey_version_wasmv1","get_signature_version_wasmv1","get_time","get_tmp_module","has_data","has_data_for","hash","hash_blake3","hash_keccak256","hash_sha256","increment_recursion_counter","init","init_call","init_call_wasmv1","into","into_request","is_address_eoa","layout_raw","massa_time_from_native_time","massa_time_to_native_time","native_amount_from_str_wasmv1","native_amount_to_string_wasmv1","new","op_entry_exists","pointer_metadata","print","raw_append_data","raw_append_data_for","raw_delete_data","raw_delete_data_for","raw_get_bytecode","raw_get_bytecode_for","raw_get_data","raw_get_data_for","raw_set_bytecode","raw_set_bytecode_for","raw_set_data","raw_set_data_for","save_gas_remaining_before_subexecution","scalar_div_rem_native_amount_wasmv1","scalar_mul_native_amount_wasmv1","send_message","set_bytecode_wasmv1","set_ds_value_wasmv1","signature_verify","sub_native_amount_wasmv1","to_owned","transfer_coins","transfer_coins_for","transfer_coins_wasmv1","try_from","try_into","type_id","unsafe_random","unsafe_random_f64","unsafe_random_wasmv1","upcast_any_box","upcast_any_mut","upcast_any_ref","validate_address","vzip","RequestQueue","RequestWithResponseSender","borrow","borrow","borrow_mut","borrow_mut","cancel","cancel","capacity","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","extend","fmt","fmt","from","from","init","init","into","into","into_request","into_request","into_request_sender_pair","is_empty","is_full","layout_raw","layout_raw","max_items","new","new","pointer_metadata","pointer_metadata","pop","push","queue","request","response_tx","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","SlotInfo","SlotSequencer","__clone_box","borrow","borrow","borrow_mut","borrow_mut","cleanup_sequence","clone","clone_into","clone_to_uninit","config","consensus_final","content","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","execution_final","fmt","from","from","from_ref","get_block_id","get_next_slot_deadline","get_slot","get_slot_index","get_time_cursor","init","init","init","into","into","into_request","into_request","is_task_available","latest_consensus_final_slots","latest_executed_candidate_slot","latest_executed_final_slot","latest_execution_final_slot","layout_raw","layout_raw","new","pointer_metadata","pointer_metadata","run_task_with","sequence","sequence_build_step","slot","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update","vzip","vzip","SpeculativeAsyncPool","active_history","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fetch_msgs","final_state","from","get_snapshot","init","into","into_request","is_message_expired","is_message_ready_to_execute","is_triggered","layout_raw","message_infos","new","pointer_metadata","pool_changes","push_new_message","reset_to_snapshot","settle_slot","take","take_batch_to_execute","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeDeferredCallRegistry","TARGET_BOOKING","active_history","advance_slot","borrow","borrow_mut","cancel_call","compute_call_fee","config","deferred_calls_changes","delete_call","deref","deref_mut","deserialize","drop","final_state","from","get_call","get_calls_by_slot","get_effective_slot_gas","get_effective_total_gas","get_slot_base_fee","get_snapshot","get_total_calls_registered","init","into","into_request","layout_raw","new","overbooking_fee","pointer_metadata","push_new_call","register_call","reset_to_snapshot","set_total_calls_registered","take","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeExecutedDenunciations","active_history","borrow","borrow_mut","deref","deref_mut","deserialize","drop","executed_denunciations","final_state","from","get_snapshot","init","insert_executed_denunciation","into","into_request","is_denunciation_executed","layout_raw","new","pointer_metadata","reset_to_snapshot","take","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeExecutedOps","active_history","borrow","borrow_mut","deref","deref_mut","deserialize","drop","executed_ops","final_state","from","get_snapshot","init","insert_executed_op","into","into_request","is_op_executed","layout_raw","new","pointer_metadata","reset_to_snapshot","take","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeLedger","active_history","added_changes","borrow","borrow_mut","charge_datastore_entry_change_storage","create_new_sc_address","delete_data_entry","deref","deref_mut","deserialize","drop","entry_exists","final_state","from","get_balance","get_bytecode","get_data_entry","get_keys","get_snapshot","get_storage_cost_datastore_entry","has_data_entry","init","into","into_request","layout_raw","max_bytecode_size","max_datastore_key_length","max_datastore_value_size","new","pointer_metadata","reset_to_snapshot","set_bytecode","set_data_entry","storage_costs_constants","take","transfer_coins","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","SpeculativeRollState","active_history","add_rolls","added_changes","borrow","borrow_mut","deref","deref_mut","deserialize","drop","final_state","from","get_address_cycle_infos","get_address_deferred_credit_for_slot","get_address_deferred_credits","get_production_stats_at_cycle","get_rolls","get_snapshot","init","into","into_request","layout_raw","new","pointer_metadata","reset_to_snapshot","settle_production_stats","take","take_unexecuted_deferred_credits","try_from","try_into","try_sell_rolls","try_slash_deferred_credits","try_slash_rolls","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_production_stats","vzip","ExecutionStatsCounter","borrow","borrow_mut","deref","deref_mut","deserialize","drop","final_blocks","final_executed_denunciations","final_executed_ops","from","get_stats","init","into","into_request","layout_raw","new","pointer_metadata","refresh","register_final_blocks","register_final_executed_denunciations","register_final_executed_operations","time_window_duration","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","FileStorageBackend","RocksDBStorageBackend","StorageBackend","borrow","borrow","borrow_mut","borrow_mut","db","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","folder","from","from","init","init","into","into","into_request","into_request","layout_raw","layout_raw","max_blocks","max_blocks","new","new","pointer_metadata","pointer_metadata","read","read","read","slots_saved","slots_saved","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","write","write","write","ExecutionThread","borrow","borrow_mut","deref","deref_mut","deserialize","drop","execute_one_readonly_request","execution_state","from","init","input_data","into","into_request","layout_raw","main_loop","new","pointer_metadata","readonly_requests","selector","slot_sequencer","start_execution_worker","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_readonly_requests","vzip","wait_loop_event"],"q":[[0,"massa_execution_worker"],[18,"massa_execution_worker::active_history"],[101,"massa_execution_worker::context"],[229,"massa_execution_worker::controller"],[321,"massa_execution_worker::execution"],[395,"massa_execution_worker::execution_info"],[548,"massa_execution_worker::interface_impl"],[687,"massa_execution_worker::request_queue"],[744,"massa_execution_worker::slot_sequencer"],[813,"massa_execution_worker::speculative_async_pool"],[848,"massa_execution_worker::speculative_deferred_calls"],[891,"massa_execution_worker::speculative_executed_denunciations"],[920,"massa_execution_worker::speculative_executed_ops"],[949,"massa_execution_worker::speculative_ledger"],[993,"massa_execution_worker::speculative_roll_state"],[1032,"massa_execution_worker::stats"],[1062,"massa_execution_worker::storage_backend"],[1117,"massa_execution_worker::worker"],[1148,"massa_execution_exports::settings"],[1149,"massa_final_state::controller_trait"],[1150,"parking_lot::rwlock"],[1151,"alloc::sync"],[1152,"massa_pos_exports::controller_traits"],[1153,"alloc::boxed"],[1154,"massa_versioning::versioning"],[1155,"massa_execution_exports::channels"],[1156,"massa_wallet"],[1157,"massa_metrics"],[1158,"massa_event_cache::controller"],[1159,"massa_execution_exports::controller_traits"],[1160,"rkyv::with"],[1161,"core::result"],[1162,"massa_models::address"],[1163,"alloc::vec"],[1164,"massa_models::amount"],[1165,"massa_models::bytecode"],[1166,"massa_models::denunciation"],[1167,"massa_models::operation"],[1168,"massa_async_pool::message"],[1169,"massa_models::types"],[1170,"core::option"],[1171,"core::ops::range"],[1172,"core::fmt"],[1173,"massa_models::slot"],[1174,"massa_pos_exports::deferred_credits"],[1175,"massa_hash::hash"],[1176,"tonic::request"],[1177,"core::alloc::layout"],[1178,"core::any"],[1179,"massa_models::block_id"],[1180,"massa_module_cache::controller"],[1181,"massa_execution_exports::error"],[1182,"alloc::string"],[1183,"massa_models::deferred_calls"],[1184,"massa_deferred_calls::call"],[1185,"massa_deferred_calls"],[1186,"massa_models::output_event"],[1187,"alloc::collections::btree::map"],[1188,"alloc::collections::btree::set"],[1189,"rand_xoshiro::xoshiro256plusplus"],[1190,"massa_execution_exports::types"],[1191,"dyn_clone::sealed"],[1192,"massa_models::execution"],[1193,"massa_models::stats"],[1194,"std::collections::hash::map"],[1195,"massa_models::prehash"],[1196,"massa_proto_rs::massa::model::v1"],[1197,"anyhow"],[1198,"massa_sc_runtime::types"],[1199,"massa_sc_runtime::execution"],[1200,"massa_time"],[1201,"parking_lot::mutex"],[1202,"massa_channel::sender"],[1203,"core::ops::function"],[1204,"massa_async_pool::changes"],[1205,"massa_ledger_exports::ledger_changes"],[1206,"massa_deferred_calls::registry_changes"],[1207,"massa_deferred_calls::config"],[1208,"massa_executed_ops::denunciations_changes"],[1209,"massa_executed_ops::ops_changes"],[1210,"core::clone"],[1211,"massa_pos_exports::cycle_info"],[1212,"massa_pos_exports::pos_changes"],[1213,"num_rational"],[1214,"std::path"],[1215,"parking_lot::condvar"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,39,39,0,39,26,39,26,0,26,17,39,26,17,39,17,26,17,39,26,17,39,26,17,39,26,17,39,17,17,17,17,17,17,17,17,39,26,17,39,17,17,17,17,17,26,17,39,26,17,39,26,17,39,26,17,39,26,17,39,17,26,17,39,26,17,39,26,17,39,26,17,39,26,17,39,26,17,39,26,17,39,0,0,52,52,52,52,63,63,52,63,52,52,52,52,52,63,52,63,52,63,52,52,52,52,52,52,52,52,63,52,52,63,52,63,52,63,52,63,52,63,52,52,52,52,63,63,52,63,52,63,52,0,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,63,52,0,52,52,63,52,63,52,52,52,63,52,63,63,52,52,52,52,63,52,63,52,52,52,63,52,52,52,52,52,52,52,52,52,52,52,52,63,52,52,52,63,52,63,52,52,52,63,52,63,52,63,52,63,52,63,52,52,63,52,0,0,0,69,72,72,78,69,72,78,69,69,69,69,69,72,78,69,72,78,69,72,78,69,72,78,69,69,69,72,72,72,78,69,69,69,69,69,69,69,69,69,69,72,78,69,78,69,72,78,69,72,78,69,72,78,69,72,72,72,78,69,69,72,78,72,72,78,69,72,72,78,69,72,78,69,72,78,69,72,78,69,72,78,69,72,78,69,69,72,78,69,0,0,0,82,82,82,82,82,82,82,82,0,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,0,0,0,0,0,0,145,145,87,93,93,93,92,145,93,83,85,87,92,145,93,83,85,87,93,83,85,93,93,93,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,83,92,145,93,83,85,87,93,93,87,92,145,93,83,85,87,92,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,92,93,83,85,93,92,145,93,83,85,87,92,83,85,87,87,83,85,85,85,83,85,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,92,145,93,83,85,87,0,94,94,94,0,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,0,0,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,0,0,109,110,109,110,109,110,110,109,110,109,110,109,110,109,110,110,109,110,109,110,109,110,109,110,109,110,109,110,110,109,110,110,109,110,109,110,110,110,110,109,109,109,110,109,110,109,110,109,110,109,110,109,110,109,110,0,0,114,113,114,113,114,113,114,114,114,113,114,114,113,114,113,114,113,114,113,114,114,114,113,114,114,114,113,113,113,113,113,113,114,113,114,113,114,113,113,113,113,113,113,114,113,113,114,113,113,113,114,114,113,114,113,114,113,114,113,114,113,114,113,114,113,113,114,0,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,0,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,0,0,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,0,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,0,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,0,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,0,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,0,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,0,0,0,140,141,140,141,141,140,141,140,141,140,141,140,141,140,140,141,140,141,140,141,140,141,140,141,140,141,140,141,140,141,142,140,141,140,141,140,141,140,141,140,141,140,141,140,141,140,141,140,141,142,140,141,0,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,0,143,143,143,143,143,143,143,143,143],"f":"``````````````{{b{h{{f{d}}}}{l{j}}nA`{h{{f{Ab}}}}Ad{l{Af}}}{{Al{{l{Ah}}{l{Aj}}}}}}`````````````{{{An{c}}}{{An{e}}}{}{}}00{{{An{B`c}}}{{An{B`e}}}{}{}}00{{}Bb}{Bd{{An{c}}}{}}00{Bd{{An{B`c}}}{}}00{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}00{BdBj}00{{{An{Bb}}{An{Bl}}{An{{C`{Bn}}}}}{{Cd{{Cb{Bn}}}}}}{{{An{Bb}}{An{Bl}}}{{Cd{Cf}}}}{{{An{Bb}}{An{Bl}}}{{Cd{Ch}}}}{{{An{Bb}}{An{Cj}}}{{Cd{Bj}}}}{{{An{Bb}}{An{Cl}}}{{Cd{Bj}}}}{{{An{Bb}}{An{Cn}}D`}{{Cd{{Dd{DbD`}}}}}}{{{An{Bb}}{An{Bl}}}{{Dh{Df}}}}{{{An{Bb}}DfDfBn}{{Al{{Dj{Bd}}DlDl}}}}{{{An{Dn}}{An{B`E`}}}Eb}{cc{}}00{{{An{Bb}}{An{Bl}}{An{Ed}}}{{Dh{Cf}}}}{{{An{Bb}}{An{Ed}}}Ef}{{{An{Bb}}}{{Cd{Eh}}}}{{{An{Bb}}{An{{C`{Cl}}}}}{{Cb{{Dh{Dl}}}}}}{{{An{Bb}}{An{Ed}}Bn}Dn}{{}Bd}00{ce{}{}}00{c{{Ej{e}}}{}{}}00{{}{{Bh{ElEn}}}}00{An}00{{{An{B`Bb}}{An{Ed}}Bn}Bj}{c{{Bh{e}}}{}{}}00000{{{An{c}}}F`{}}00{{{l{c}}}{{l{Fb}}}{}}00{{{An{B`c}}}{{An{B`Fb}}}{}}00{{{An{c}}}{{An{Fb}}}{}}00999``{{bEd{Dh{Fd}}{h{{f{d}}}}{h{{f{Bb}}}}{h{{f{Ff}}}}n}Fh}{{{An{B`Fh}}{An{Bl}}Df}Bj}`{{{An{B`Fh}}{An{Bl}}{Cb{Bn}}{Cb{Bn}}}{{Bh{BjFj}}}}`{{{An{c}}}{{An{e}}}{}{}}0{{{An{B`c}}}{{An{B`e}}}{}{}}0{{{An{B`Fh}}{An{Db}}}{{Dh{{Al{Bl{Bh{CfFl}}}}}}}}{{{An{Fh}}Bl}{{Bh{BjFj}}}}`{{{An{B`Fh}}Ch}{{Bh{BlFj}}}}````````{{{An{B`Fh}}{An{Fn}}Bl}{{Bh{BjFj}}}}{{{An{Fh}}{An{Fn}}}Dl}{{{An{B`Fh}}{An{Fn}}{An{G`}}}{{Dh{{Al{Bl{Bh{CfFl}}}}}}}}{{{An{B`Fh}}G`}{{Bh{FnFj}}}}{{{An{B`Fh}}Ed}Gb}`{{{An{Fh}}EdDfEdDf}{{Bh{CfFj}}}}{{{An{B`Fh}}{An{Bl}}{An{{C`{Bn}}}}}{{Bh{BjFj}}}}{Bd{{An{c}}}{}}0{Bd{{An{B`c}}}{}}0{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}0{BdBj}0`{{{An{Fh}}FlDl}Gd}{{{An{B`Fh}}Gd}Bj}`{{{An{B`Fh}}{An{Ed}}}{{Cb{{Al{Bl{Bh{CfFl}}}}}}}}```{cc{}}0``{{{An{Eh}}{An{Ed}}{Dh{{An{Fd}}}}Dl}Eh}{{{An{Fh}}{An{Bl}}Df}{{Cb{Gf}}}}{{{An{Fh}}{An{Bl}}Bn{Gh{Ed}}}{{Gj{EdCf}}}}{{{An{Fh}}{An{Bl}}}{{Dh{Cf}}}}{{{An{Fh}}{An{Bl}}}{{Dh{Ch}}}}{{{An{Fh}}}{{Cb{Bl}}}}{{{An{Fh}}}{{Bh{BlFj}}}}{{{An{Fh}}}{{Bh{CfFj}}}}{{{An{Fh}}}{{Bh{{Cb{Bl}}Fj}}}}{{{An{Fh}}{An{Bl}}{An{{C`{Bn}}}}}{{Dh{{Cb{Bn}}}}}}{{{An{Fh}}{An{Fn}}}{{Dh{G`}}}}{{{An{Fh}}Ed}{{Gj{FnG`}}}}{{{An{Fh}}{An{Bl}}{An{{C`{Bn}}}}}{{Dh{{Gl{{Cb{Bn}}}}}}}}{{{An{Fh}}}Gn}{{{An{Fh}}{An{Bl}}{An{{C`{Bn}}}}}Dl}{{{An{Fh}}{An{Bl}}}Dl}{{}Bd}0{{{An{Eh}}}H`}{{{An{B`Fh}}{An{Cj}}}Bj}{{{An{B`Fh}}ClDlEd}Bj}{ce{}{}}0{c{{Ej{e}}}{}{}}0{{{An{Fh}}{An{Cj}}}Dl}{{{An{Fh}}{An{Cl}}}Dl}{{}{{Bh{ElEn}}}}0```{{b{h{{f{d}}}}{h{{f{Bb}}}}{h{{f{Ff}}}}nEh}Fh}``{An}0`{{{An{B`Fh}}Db}Bj}`{{bEd{Cb{Hb}}{h{{f{d}}}}{h{{f{Bb}}}}{h{{f{Ff}}}}n}Fh}``{{{An{B`Fh}}GnFj}Bj}{{{An{B`Fh}}{An{Bl}}Ch}{{Bh{BjFj}}}}{{{An{B`Fh}}{An{Bl}}{Cb{Bn}}{Cb{Bn}}}{{Bh{BjFj}}}}{{{An{B`Fh}}{Dh{Hd}}}Hf}`````````{{{An{B`Fh}}DfDf}{{Cb{{Al{CnDb}}}}}}{{{An{B`Fh}}{Dh{Bl}}{Dh{Bl}}CfDl}{{Bh{BjFj}}}}{c{{Bh{e}}}{}{}}000{{{An{B`Fh}}{An{Bl}}Df}{{Bh{BjFj}}}}{{{An{B`Fh}}{An{Bl}}Df}{{Bh{CfFj}}}}{{{An{c}}}F`{}}0``{{{l{c}}}{{l{Fb}}}{}}0{{{An{B`c}}}{{An{B`Fb}}}{}}0{{{An{c}}}{{An{Fb}}}{}}0{{{An{B`Fh}}{An{Bl}}Ed{Dh{Fd}}}Bj}{ce{}{}}0```{{{An{c}}Hh}Bj{}}`{{{An{c}}}{{An{e}}}{}{}}00{{{An{B`c}}}{{An{B`e}}}{}{}}00{{{An{Hj}}}Hj}{{{An{Hj}}}{{l{Aj}}}}{{{An{c}}{An{B`e}}}Bj{}{}}{{{An{c}}}Bj{}}{Bd{{An{c}}}{}}00{Bd{{An{B`c}}}{}}00{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}00{BdBj}00{{{An{Hj}}Hl}{{Bh{HnFj}}}}``{{{An{I`}}{An{B`E`}}}Eb}{cc{}}00{{{An{c}}}c{}}{{{An{Hj}}{An{{C`{Bl}}}}{Gh{Ed}}}{{Cb{Ib}}}}{{{An{Hj}}Df}{{Gj{BlDf}}}}{{{An{Hj}}{An{Cj}}}{{Al{DlDl}}}}{{{An{Hj}}Id}{{Cb{Gd}}}}{{{An{Hj}}{Cb{{Al{Bl{Cb{Bn}}}}}}}{{Cb{{Al{{Dh{{Cb{Bn}}}}{Dh{{Cb{Bn}}}}}}}}}}{{{An{Hj}}{An{{C`{Bl}}}}}{{Cb{{Al{{Dh{Cf}}{Dh{Cf}}}}}}}}{{{An{Hj}}{An{{C`{Cl}}}}}{{Cb{{Al{{Dh{Dl}}{Dh{Dl}}}}}}}}{{{An{Hj}}}If}{{}Bd}00``{ce{}{}}00{c{{Ej{e}}}{}{}}00{{}{{Bh{ElEn}}}}00{bI`}`{An}00{{{An{Hj}}Ih}Ij}`{{{An{B`Il}}}Bj}`{{{An{B`I`}}}I`}`{{{An{c}}}e{}{}}{{{An{c}}}Fl{}}{c{{Bh{e}}}{}{}}00000{{{An{c}}}F`{}}00{{{l{c}}}{{l{Fb}}}{}}00{{{An{B`c}}}{{An{B`Fb}}}{}}00{{{An{c}}}{{An{Fb}}}{}}00{{{An{Hj}}{In{EdFd}}{Dh{{In{EdFd}}}}{Jb{FdJ`}}}Bj}???`````{{{An{B`Jd}}Hf}Bj}0{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}```{{{An{Jd}}{An{Fn}}}{{Dh{G`}}}}{{{An{Jd}}EdDfDf}{{Al{EdDfDlCf}}}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}{{{An{Jd}}Db{Dh{Ch}}}{{Bh{JfFj}}}}{{{An{Jd}}{An{Jh}}Bl}{{Bh{BjFj}}}}{{{An{B`Jd}}{An{Ed}}{Dh{{An{{Al{FdJ`}}}}}}{l{j}}}Bj}{{{An{Jd}}{An{Fn}}G`}{{Bh{JjFj}}}}{{{An{Jd}}{An{Jl}}{An{Ed}}{An{B`Cf}}}{{Bh{JnFj}}}}32{{{An{Jd}}{An{K`}}Ed{An{B`Df}}{An{B`Cf}}}{{Bh{BjFj}}}}{{{An{Jd}}Hl}{{Bh{HnFj}}}}55{{{An{Jd}}{An{Ed}}{Dh{{An{{Al{FdJ`}}}}}}{l{j}}}Hf}6`````{cc{}}{{{An{Jd}}{An{Bl}}}{{Cb{Gf}}}}{{{An{Jd}}{An{Bl}}}{{Al{{Gj{EdCf}}{Gj{EdCf}}}}}}{{{An{Jd}}{An{Bl}}{Gh{Ed}}}{{Gj{EdCf}}}}{{{An{Jd}}Df}{{Gj{BlDf}}}}{{{An{Jd}}Df{Dh{{An{{Kb{Bl}}}}}}}{{Dh{Kd}}}}{{{An{Jd}}Ed}{{Cb{Fn}}}}{{{An{Jd}}{An{Cj}}}{{Al{DlDl}}}}{{{An{Jd}}Id}{{Cb{Gd}}}}{{{An{Jd}}{An{Bl}}}{{Al{{Dh{Ch}}{Dh{Ch}}}}}}{{{An{Jd}}{An{Bl}}{An{{C`{Bn}}}}}{{Al{{Dh{{Cb{Bn}}}}{Dh{{Cb{Bn}}}}}}}}{{{An{Jd}}{An{Bl}}}{{Al{{Dh{Cf}}{Dh{Cf}}}}}}{{{An{Jd}}{An{Bl}}{An{{C`{Bn}}}}}{{Al{{Dh{{Gl{{Cb{Bn}}}}}}{Dh{{Gl{{Cb{Bn}}}}}}}}}}{{{An{Jd}}{An{Bl}}}{{Al{DfDf}}}}{{{An{Jd}}}Eh}{{{An{Jd}}{An{{C`{Cl}}}}}{{Cb{{Al{{Dh{Dl}}{Dh{Dl}}}}}}}}{{{An{Jd}}}If}{{}Bd}{ce{}{}}{c{{Ej{e}}}{}{}}{{}{{Bh{ElEn}}}}```{{b{h{{f{d}}}}n{l{j}}A`{h{{f{Ab}}}}Ad{l{Af}}}Jd}{An}{{{An{Jd}}{An{K`}}Bl}{{Bh{GnFj}}}}``{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}{{{An{B`Jd}}{An{{Dh{Hd}}}}{An{Ed}}}Bj};`````````````{{{An{c}}}{{An{e}}}{}{}}00000{{{An{B`c}}}{{An{B`e}}}{}{}}00000``````{Bd{{An{c}}}{}}00000{Bd{{An{B`c}}}{}}00000{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}00000`{BdBj}00000``{{{An{Jn}}{An{B`E`}}}Eb}{cc{}}00000`{{}Bd}00000{ce{}{}}00000{c{{Ej{e}}}{}{}}00000{{}{{Bh{ElEn}}}}00000{KfKh}{{}Kj}{{}Jf}{{{An{G`}}}Jj}`{An}00000{{{An{B`Kh}}EdKj}Bj}``````````{c{{Bh{e}}}{}{}}00000000000{{{An{c}}}F`{}}00000{{{l{c}}}{{l{Fb}}}{}}00000{{{An{B`c}}}{{An{B`Fb}}}{}}00000{{{An{c}}}{{An{Fb}}}{}}00000======`{{{An{c}}Hh}Bj{}}{{{An{Kl}}{An{Kn}}{An{Kn}}}{{L`{Kn}}}}{{{An{Kl}}{An{Lb}}}{{L`{Fl}}}}{{{An{Kn}}}{{L`{Cf}}}}{{{An{Cf}}}Kn}{{{An{Kl}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{Bj}}}}{{{An{Kl}}{An{Lb}}}{{L`{{Cb{Bn}}}}}}{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{{{An{Kl}}{An{{C`{Bn}}}}}Fl}{{{An{Kl}}}{{L`{Dl}}}}{{{An{Kl}}}{{L`{Df}}}}{{{An{Kl}}{An{Lb}}}{{L`{Dl}}}}{{{An{Kl}}{An{Kn}}}{{L`{Dl}}}}11{{{An{Kl}}{An{Ld}}{An{Ld}}}{{L`{Ld}}}}{{{An{Kl}}{An{Ld}}{An{Ld}}}{{L`{{Al{DfLd}}}}}}{{{An{Kl}}{An{Ld}}Df}{{L`{Ld}}}}{{{An{Kl}}{An{Ld}}Df}{{L`{{Al{LdLd}}}}}}3{{{An{Kl}}}Kl}{{{An{Kl}}}{{l{Lf}}}}{{{An{c}}{An{B`e}}}Bj{}{}}{{{An{c}}}Bj{}}{{{An{Kl}}{An{Lb}}{An{Lb}}}{{L`{Lh}}}}{{{An{Kl}}{An{Kn}}{An{Kn}}}{{L`{Lh}}}}{{{An{Kl}}{An{Ld}}{An{Ld}}}{{L`{Lh}}}}2```{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{Fl}}}}{{{An{Kl}}}{{L`{Bj}}}}{{{An{Kl}}{An{Lb}}}{{L`{Bj}}}}?{{{An{Kl}}{An{Lb}}{An{Lb}}{Al{DfBn}}Df{An{{C`{Bn}}}}Df}{{L`{Fl}}}}{{{An{Kl}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{Bj}}}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{{{An{Kl}}{An{Kn}}{An{Kn}}}{{L`{{Al{DfKn}}}}}}{BdBj}{{{An{Kl}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{Dl}}}}{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}}{{L`{Dl}}}}<{cc{}}{{{An{c}}}c{}}{{{An{Kl}}Fl}{{L`{Bj}}}}{{{An{Kl}}{Cb{Bn}}}{{L`{Bj}}}}{{{An{Kl}}{An{Lb}}}{{L`{Lj}}}}{{{An{Fh}}{Dh{Fl}}}{{L`{Bl}}}}{{{An{Kl}}{An{Lb}}}{{L`{Df}}}}{{{An{Kl}}}{{L`{Df}}}}1{{{An{Kl}}{Dh{Fl}}}{{L`{Kn}}}}{{{An{Kl}}{Dh{Fl}}}{{L`{{Cb{Bn}}}}}}2{{{An{Kl}}}{{L`{Kn}}}}{{{An{Kl}}}{{L`{{Cb{Fl}}}}}}4{{{An{Kl}}}{{L`{Ll}}}}{{{An{Kl}}}{{L`{Bn}}}}{{{An{Kl}}{Al{DfBn}}DfDf}{{L`{{Al{DlDf}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{{Gl{{Cb{Bn}}}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}}{{L`{Kf}}}}{{{An{Kl}}{Dh{{An{{C`{Bn}}}}}}}{{L`{{Gl{{Cb{Bn}}}}}}}}{{{An{Kl}}{An{Lb}}{Dh{{An{{C`{Bn}}}}}}}{{L`{{Gl{{Cb{Bn}}}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}Df}{{L`{Ln}}}}{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{Dh{{An{{C`{Bn}}}}}}}{{L`{{Cb{{Cb{Bn}}}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{{Cb{{Cb{Bn}}}}}}}}{{{An{Kl}}}{{L`{{Dh{Fl}}}}}}={{{An{Kl}}{An{Lb}}}{{L`{Df}}}}0{{{An{Kl}}}{{L`{Df}}}}6{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{Dl}}}}{{{An{Kl}}{An{Lb}}{An{{C`{Bn}}}}}{{L`{Dl}}}}{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{{M`{Bn}}}}}}000{{{An{Kl}}}{{L`{Bj}}}}{{}Bd}{{{An{Kl}}{An{Lb}}Df}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{An{Lb}}Kn}{{L`{{Cb{Bn}}}}}}{ce{}{}}{c{{Ej{e}}}{}{}}{{{An{Kl}}{An{Lb}}}{{L`{Dl}}}}{{}{{Bh{ElEn}}}}{{{An{Ld}}}{{L`{Mb}}}}{{{An{Mb}}}Ld}{{{An{Kl}}{An{Lb}}}{{L`{Kn}}}}{{{An{Kl}}{An{Kn}}}{{L`{Fl}}}}{{b{h{{Md{Fh}}}}}Kl}?{An}{{{An{Kl}}{An{Lb}}}{{L`{Bj}}}}{{{An{Kl}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}}{{L`{Bj}}}}{{{An{Kl}}{An{Lb}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}}{{L`{Bj}}}}{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{Bj}}}}{{{An{Kl}}{An{Lb}}{An{{C`{Bn}}}}}{{L`{Bj}}}}{{{An{Kl}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{An{Lb}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{An{{C`{Bn}}}}}{{L`{{Cb{Bn}}}}}}{{{An{Kl}}{An{Lb}}{An{{C`{Bn}}}}}{{L`{{Cb{Bn}}}}}}5476{{{An{Kl}}Df}Bj}{{{An{Kl}}{An{Kn}}Df}{{L`{{Al{KnKn}}}}}}{{{An{Kl}}{An{Kn}}Df}{{L`{Kn}}}}{{{An{Kl}}{An{Lb}}{An{Lb}}{Al{DfBn}}{Al{DfBn}}DfDfDf{An{{C`{Bn}}}}{Dh{{Al{{An{Lb}}{Dh{{An{{C`{Bn}}}}}}}}}}}{{L`{Bj}}}}{{{An{Kl}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{Bj}}}}{{{An{Kl}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}{Dh{Fl}}}{{L`{Bj}}}}{{{An{Kl}}{An{{C`{Bn}}}}{An{Lb}}{An{Lb}}}{{L`{Dl}}}}{{{An{Kl}}{An{Kn}}{An{Kn}}}{{L`{Kn}}}}{{{An{c}}}e{}{}}{{{An{Kl}}{An{Lb}}Df}{{L`{Bj}}}}{{{An{Kl}}{An{Lb}}{An{Lb}}Df}{{L`{Bj}}}}{{{An{Kl}}FlKn{Dh{Fl}}}{{L`{Bj}}}}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{An{Kl}}}{{L`{Mf}}}}{{{An{Kl}}}{{L`{Mh}}}}{{{An{Kl}}Df}{{L`{{Cb{Bn}}}}}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}{{{An{Kl}}{An{Lb}}}{{L`{Dl}}}}{ce{}{}}``{{{An{c}}}{{An{e}}}{}{}}0{{{An{B`c}}}{{An{B`e}}}{}{}}0{{{Mj{ce}}Fj}Bj{}{}}{{{An{B`{Ml{ce}}}}Fj}Bj{}{}}{{{An{{Ml{ce}}}}}Bd{}{}}{Bd{{An{c}}}{}}0{Bd{{An{B`c}}}{}}0{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}0{BdBj}0{{{An{B`{Ml{ce}}}}{Ml{ce}}}Bj{}{}}{{{An{{Mj{ce}}}}{An{B`E`}}}EbMnMn}{{{An{{Ml{ce}}}}{An{B`E`}}}EbMnMn}{cc{}}0{{}Bd}0>>{c{{Ej{e}}}{}{}}0{{{Mj{ce}}}{{Al{c{N`{{Bh{eFj}}}}}}}{}{}}{{{An{{Ml{ce}}}}}Dl{}{}}0{{}{{Bh{ElEn}}}}0`{{c{N`{{Bh{eFj}}}}}{{Mj{ce}}}{}{}}{Bd{{Ml{ce}}}{}{}}{An}0{{{An{B`{Ml{ce}}}}}{{Dh{{Mj{ce}}}}}{}{}}{{{An{B`{Ml{ce}}}}{Mj{ce}}}Bj{}{}}```{c{{Bh{e}}}{}{}}000{{{An{c}}}F`{}}0{{{l{c}}}{{l{Fb}}}{}}0{{{An{B`c}}}{{An{B`Fb}}}{}}0{{{An{c}}}{{An{Fb}}}{}}0{ce{}{}}0``{{{An{c}}Hh}Bj{}}{{{An{c}}}{{An{e}}}{}{}}0{{{An{B`c}}}{{An{B`e}}}{}{}}0{{{An{B`Nb}}}Bj}{{{An{Nd}}}Nd}{{{An{c}}{An{B`e}}}Bj{}{}}{{{An{c}}}Bj{}}```{Bd{{An{c}}}{}}0{Bd{{An{B`c}}}{}}0{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}0{BdBj}0`{{{An{Nd}}{An{B`E`}}}Eb}{cc{}}0{{{An{c}}}c{}}{{{An{Nd}}}{{Dh{{An{Fd}}}}}}{{{An{Nb}}}Mb}{{{An{Nb}}{An{Ed}}}{{Dh{{An{Nd}}}}}}{{{An{Nb}}{An{Ed}}}{{Dh{Bd}}}}{{{An{Nb}}}Ed}{{}Bd}{{{An{B`Nb}}{In{EdFd}}{In{EdFd}}{Jb{FdJ`}}}Bj}1{ce{}{}}0{c{{Ej{e}}}{}{}}0{{{An{Nb}}}Dl}````{{}{{Bh{ElEn}}}}0{{bEd}Nb}{An}0{{{An{B`Nb}}e}{{Dh{c}}}{}{{Nh{Dl{An{Ed}}{Dh{{An{{Al{FdJ`}}}}}}}{{Nf{c}}}}}}`{{Ed{Dh{Nd}}Dl{Dh{Fd}}Dl{Dh{Fd}}{An{B`{Jb{FdJ`}}}}Dl}{{Al{NdDl}}}}`{{{An{c}}}e{}{}}{c{{Bh{e}}}{}{}}000{{{An{c}}}F`{}}0{{{l{c}}}{{l{Fb}}}{}}0{{{An{B`c}}}{{An{B`Fb}}}{}}0{{{An{c}}}{{An{Fb}}}{}}0{{{An{B`Nb}}{In{EdFd}}{Dh{{In{EdFd}}}}{Jb{FdJ`}}}Bj}>>``{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}{{{An{B`Nj}}{Cb{{An{Cn}}}}Dl}{{Cb{{Al{CnDb}}}}}}`{cc{}}{{{An{Nj}}}{{Al{Nl{Gj{CnNn}}}}}}{{}Bd}{ce{}{}}{c{{Ej{e}}}{}{}}{{{An{Ed}}{An{Ed}}}Dl}{{{An{Ed}}{An{Ed}}{An{Ed}}}Dl}{{{An{O`}}{An{Ob}}}Dl}{{}{{Bh{ElEn}}}}`{{{h{{f{d}}}}{h{{f{Bb}}}}}Nj}{An}`{{{An{B`Nj}}Db}Bj}{{{An{B`Nj}}{Al{Nl{Gj{CnNn}}}}}Bj}{{{An{B`Nj}}{An{Ed}}{An{Ob}}}{{Cb{{Al{CnDb}}}}}}{{{An{B`Nj}}}Nl}{{{An{B`Nj}}EdDfDf}{{Cb{{Al{CnDb}}}}}}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}{ce{}{}}```{{{An{B`Od}}Ed}Gb}{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{{{An{B`Od}}{An{Fn}}}{{Bh{{Al{BlCf}}Fj}}}}{{{An{Od}}EdDfEdDf}{{Bh{CfFj}}}}``{{{An{B`Od}}{An{Fn}}Ed}Bj}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}`{cc{}}{{{An{Od}}{An{Fn}}}{{Dh{G`}}}}{{{An{Od}}Ed}Gb}{{{An{Od}}{An{Ed}}}Df}{{{An{Od}}}Of}{{{An{Od}}{An{Ed}}}Cf}{{{An{Od}}}Oh}{{{An{Od}}}Df}{{}Bd}{ce{}{}}{c{{Ej{e}}}{}{}}{{}{{Bh{ElEn}}}}{{{h{{f{d}}}}{h{{f{Bb}}}}Oj}Od}{{OfOfOfOfCf}{{Bh{CfFj}}}}{An}{{{An{B`Od}}FnG`}Bj}{{{An{B`Od}}G`Eh}{{Bh{FnFj}}}}{{{An{B`Od}}Oh}Bj}{{{An{B`Od}}Df}Bj}{{{An{B`Od}}}Oh}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}?``{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}``{cc{}}{{{An{Ol}}}On}{{}Bd}{{{An{B`Ol}}Cj}Bj}{ce{}{}}{c{{Ej{e}}}{}{}}{{{An{Ol}}{An{Cj}}}Dl}{{}{{Bh{ElEn}}}}{{{h{{f{d}}}}{h{{f{Bb}}}}}Ol}{An}{{{An{B`Ol}}On}Bj}{{{An{B`Ol}}}On}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}<``{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}``{cc{}}{{{An{A@`}}}A@b}{{}Bd}{{{An{B`A@`}}ClDlEd}Bj}{ce{}{}}{c{{Ej{e}}}{}{}}{{{An{A@`}}{An{Cl}}}Dl}{{}{{Bh{ElEn}}}}{{{h{{f{d}}}}{h{{f{Bb}}}}}A@`}{An}{{{An{B`A@`}}A@b}Bj}{{{An{B`A@`}}}A@b}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}<```{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{{{An{B`A@d}}{An{Bl}}{Dh{{Al{{An{{C`{Bn}}}}{An{{C`{Bn}}}}}}}}{Dh{{Al{{An{{C`{Bn}}}}{An{{C`{Bn}}}}}}}}}{{Bh{BjFj}}}}{{{An{B`A@d}}BlBlCh}{{Bh{BjFj}}}}{{{An{B`A@d}}{An{Bl}}{An{Bl}}{An{{C`{Bn}}}}}{{Bh{BjFj}}}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}{{{An{A@d}}{An{Bl}}}Dl}`{cc{}}{{{An{A@d}}{An{Bl}}}{{Dh{Cf}}}}{{{An{A@d}}{An{Bl}}}{{Dh{Ch}}}}{{{An{A@d}}{An{Bl}}{An{{C`{Bn}}}}}{{Dh{{Cb{Bn}}}}}}{{{An{A@d}}{An{Bl}}{An{{C`{Bn}}}}}{{Dh{{Gl{{Cb{Bn}}}}}}}}{{{An{A@d}}}Ob}{{{An{A@d}}{An{{C`{Bn}}}}{An{{C`{Bn}}}}}{{Bh{CfFj}}}}{{{An{A@d}}{An{Bl}}{An{{C`{Bn}}}}}Dl}{{}Bd}{ce{}{}}{c{{Ej{e}}}{}{}}{{}{{Bh{ElEn}}}}```{{{h{{f{d}}}}{h{{f{Bb}}}}BnDfDfA@f}A@d}{An}{{{An{B`A@d}}Ob}Bj}{{{An{B`A@d}}{An{Bl}}{An{Bl}}Ch}{{Bh{BjFj}}}}{{{An{B`A@d}}{An{Bl}}{An{Bl}}{Cb{Bn}}{Cb{Bn}}}{{Bh{BjFj}}}}`{{{An{B`A@d}}}Ob}{{{An{B`A@d}}{Dh{Bl}}{Dh{Bl}}Cf}{{Bh{BjFj}}}}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}>``{{{An{B`A@h}}{An{Bl}}Df}Bj}`{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}`{cc{}}{{{An{A@h}}{An{Bl}}DfEd}{{Cb{Gf}}}}{{{An{A@h}}{An{Bl}}{An{Ed}}}{{Dh{Cf}}}}{{{An{A@h}}{An{Bl}}c}{{Gj{EdCf}}}{{A@j{Ed}}A@l}}{{{An{A@h}}DfDfBn{An{Ed}}}{{Al{{Jb{BlA@n}}Dl}}}}{{{An{A@h}}{An{Bl}}}Df}{{{An{A@h}}}AA`}{{}Bd}{ce{}{}}{c{{Ej{e}}}{}{}}{{}{{Bh{ElEn}}}}{{{h{{f{d}}}}{h{{f{Bb}}}}}A@h}{An}{{{An{B`A@h}}AA`}Bj}{{{An{B`A@h}}{An{Ed}}DfBnCf{AAb{Df}}}{{Cb{{Al{BlCf}}}}}}{{{An{B`A@h}}}AA`}{{{An{B`A@h}}{An{Ed}}}Ef}{c{{Bh{e}}}{}{}}0{{{An{B`A@h}}{An{Bl}}EdDfDfBnCf}{{Bh{BjFj}}}}{{{An{B`A@h}}{An{Ed}}{An{Bl}}{An{Cf}}}Cf}{{{An{B`A@h}}{An{Bl}}Df}{{Bh{DfFj}}}}{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}{{{An{B`A@h}}{An{Bl}}Ed{Dh{Fd}}}Bj}{ce{}{}}`{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}```{cc{}}{{{An{AAd}}EdEd}If}{{}Bd}9{c{{Ej{e}}}{}{}}{{}{{Bh{ElEn}}}}{MbAAd}{An}{{{An{B`AAd}}Mb}Bj}{{{An{B`AAd}}Bd}Bj}00`{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}{ce{}{}}```{{{An{c}}}{{An{e}}}{}{}}0{{{An{B`c}}}{{An{B`e}}}{}{}}0`{Bd{{An{c}}}{}}0{Bd{{An{B`c}}}{}}0{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}0{BdBj}0`{cc{}}0{{}Bd}088{c{{Ej{e}}}{}{}}0{{}{{Bh{ElEn}}}}0``{{AAfDf}AAh}{{AAfDf}AAj}{An}0{{{An{AAl}}{An{Ed}}}{{Dh{{Cb{Bn}}}}}}{{{An{AAh}}{An{Ed}}}{{Dh{{Cb{Bn}}}}}}{{{An{AAj}}{An{Ed}}}{{Dh{{Cb{Bn}}}}}}``{c{{Bh{e}}}{}{}}000{{{An{c}}}F`{}}0{{{l{c}}}{{l{Fb}}}{}}0{{{An{B`c}}}{{An{B`Fb}}}{}}0{{{An{c}}}{{An{Fb}}}{}}0{ce{}{}}0{{{An{B`AAl}}{An{Ed}}{An{{C`{Bn}}}}}Bj}{{{An{B`AAh}}{An{Ed}}{An{{C`{Bn}}}}}Bj}{{{An{B`AAj}}{An{Ed}}{An{{C`{Bn}}}}}Bj}`{{{An{c}}}{{An{e}}}{}{}}{{{An{B`c}}}{{An{B`e}}}{}{}}{Bd{{An{c}}}{}}{Bd{{An{B`c}}}{}}{{{An{c}}{An{B`e}}}{{Bh{{Bf{gi}}}}}{}{}{}{}}{BdBj}{{{An{B`AAn}}}Dl}`{cc{}}{{}Bd}`<{c{{Ej{e}}}{}{}}{{}{{Bh{ElEn}}}}{{{An{B`AAn}}}Bj}{{b{h{{Al{AB`{Md{I`}}}}}}{h{{f{Jd}}}}{l{j}}}AAn}{An}```{{b{h{{f{d}}}}{l{j}}nA`{h{{f{Ab}}}}Ad{l{Af}}}{{Al{{l{Ah}}{l{Aj}}}}}}{c{{Bh{e}}}{}{}}0{{{An{c}}}F`{}}{{{l{c}}}{{l{Fb}}}{}}{{{An{B`c}}}{{An{B`Fb}}}{}}{{{An{c}}}{{An{Fb}}}{}}{{{An{B`AAn}}{Ml{HlHn}}}Bj}{ce{}{}}{{{An{B`AAn}}}{{Al{I`Dl}}}}","D":"CMn","p":[[5,"ExecutionConfig",1148],[10,"FinalStateController",1149],[8,"RwLock",1150],[5,"Arc",1151],[10,"SelectorController",1152],[5,"Box",1153],[5,"MipStore",1154],[5,"ExecutionChannels",1155],[5,"Wallet",1156],[5,"MassaMetrics",1157],[10,"EventCacheController",1158],[10,"ExecutionManager",1159],[10,"ExecutionController",1159],[1,"tuple"],[1,"reference"],[0,"mut"],[5,"ActiveHistory",18],[1,"usize"],[5,"With",1160],[6,"Result",1161],[1,"unit"],[6,"Address",1162],[1,"u8"],[1,"slice"],[5,"Vec",1163],[6,"HistorySearchResult",18],[5,"Amount",1164],[5,"Bytecode",1165],[6,"DenunciationIndex",1166],[6,"OperationId",1167],[8,"AsyncMessageId",1168],[5,"AsyncMessageUpdate",1168],[5,"AsyncMessage",1168],[6,"SetUpdateOrDelete",1169],[1,"u64"],[6,"Option",1170],[5,"Range",1171],[1,"bool"],[6,"SlotIndexPosition",18],[5,"Formatter",1172],[8,"Result",1172],[5,"Slot",1173],[5,"DeferredCredits",1174],[5,"Hash",1175],[5,"Request",1176],[5,"Layout",1177],[5,"LayoutError",1177],[5,"TypeId",1178],[10,"Any",1178],[6,"BlockId",1179],[5,"ModuleCache",1180],[5,"ExecutionContext",101],[6,"ExecutionError",1181],[5,"String",1182],[6,"DeferredCallId",1183],[5,"DeferredCall",1184],[5,"DeferredSlotCalls",1185],[5,"SCOutputEvent",1186],[5,"ExecutionAddressCycleInfo",1162],[6,"Bound",1171],[5,"BTreeMap",1187],[5,"BTreeSet",1188],[5,"ExecutionContextSnapshot",101],[5,"Xoshiro256PlusPlus",1189],[5,"ExecutionStackElement",1190],[5,"ExecutedBlockInfo",1190],[5,"ExecutionOutput",1190],[5,"Private",1191],[5,"ExecutionControllerImpl",229],[5,"ReadOnlyExecutionRequest",1190],[5,"ReadOnlyExecutionOutput",1190],[5,"ExecutionInputData",229],[5,"ExecutionAddressInfo",1190],[5,"EventFilter",1192],[5,"ExecutionStats",1193],[5,"ExecutionQueryRequest",1190],[5,"ExecutionQueryResponse",1190],[5,"ExecutionManagerImpl",229],[5,"HashMap",1194],[5,"ExecutionBlockMetadata",1190],[8,"PreHashMap",1195],[5,"ExecutionState",321],[5,"AsyncMessageExecutionResult",395],[6,"OperationType",1167],[5,"DeferredCallExecutionResult",395],[6,"Denunciation",1166],[5,"DenunciationResult",395],[8,"SecureShareOperation",1167],[8,"PreHashSet",1195],[5,"ExecutionQueryCycleInfos",1190],[1,"u32"],[5,"ExecutionInfo",395],[5,"ExecutionInfoForSlot",395],[5,"InterfaceImpl",548],[5,"NativeAmount",1196],[8,"Result",1197],[1,"str"],[5,"NativeTime",1196],[10,"Interface",1198],[6,"ComparisonResult",1196],[6,"AddressCategory",1196],[5,"Slot",1196],[6,"RuntimeModule",1199],[1,"array"],[5,"MassaTime",1200],[8,"Mutex",1201],[1,"i64"],[1,"f64"],[5,"RequestWithResponseSender",687],[5,"RequestQueue",687],[10,"Debug",1172],[5,"MassaSender",1202],[5,"SlotSequencer",744],[5,"SlotInfo",744],[17,"Output"],[10,"Fn",1203],[5,"SpeculativeAsyncPool",813],[5,"AsyncPoolChanges",1204],[5,"AsyncMessageInfo",1168],[5,"AsyncMessageTrigger",1168],[5,"LedgerChanges",1205],[5,"SpeculativeDeferredCallRegistry",848],[1,"u128"],[5,"DeferredCallRegistryChanges",1206],[5,"DeferredCallsConfig",1207],[5,"SpeculativeExecutedDenunciations",891],[8,"ExecutedDenunciationsChanges",1208],[5,"SpeculativeExecutedOps",920],[8,"ExecutedOpsChanges",1209],[5,"SpeculativeLedger",949],[5,"StorageCostsConstants",1148],[5,"SpeculativeRollState",993],[10,"RangeBounds",1171],[10,"Clone",1210],[5,"ProductionStats",1211],[5,"PoSChanges",1212],[5,"Ratio",1213],[5,"ExecutionStatsCounter",1032],[5,"PathBuf",1214],[5,"FileStorageBackend",1062],[5,"RocksDBStorageBackend",1062],[10,"StorageBackend",1062],[5,"ExecutionThread",1117],[5,"Condvar",1215],[6,"OperationInfo",395]],"r":[[14,1117]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAI0CmAABAAAABQAAAA4AAAATAAAAGQAAABsAAAAdABIAOAAAAEEAAgBHAAgAUQAUAG0AAwCAAAEAhQAHAKkAAQCwAAEAtAABALwAAQDTAAMA2QABAN0ABQDkAAEA6QAAAOsABgDzAA0ABAEAAAgBAAARAQIAGQEFACEBAgAqARMAPwEDAEUBAQBJAQMATgEFAFcBAABhAQQAZwEAAGwBAAB3AQAAeQEBAHwBAQB/AQAAgQEHAIoBAwCPAQQAlQEAAJcBDAClAQIAqQEcAMwBBgDZARYA8QEBAPUBLwAmAgAALAIDADECAQA0AgcAPQIFAEcCAABMAgIAUAIAAFcCAABaAgAAXAIAAHECAABzAgEAfQIBAIACAACCAgIAiwIAAJ4CAAChAgAApQICAKsCBACyAgMAuQIHAMICAQDGAgEAygIBAM8CAQDUAgEA2wINAOsCBADxAgIA9wIHAAADAAADAwAACQMAAAsDAAAOAwEAFQMBABgDAQAeAwwALAMLADoDAAA8AwAAQAMBAEMDAQBKAwkAVQMBAFkDBwBiAwQAaAMBAGsDAQBuAwEAcwMAAHUDBgB+AwUAiAMAAIsDAACNAwAAjwMAAJIDBgCbAwUApQMAAKgDAACqAwAArAMAAK8DBgC5AwEAvgMDAMwDAADOAwEA1AMAANsDBgDmAwUA9AMAAPYDAQD5AwAA/gMBAAMEAwAIBAAACgQFABUEAAAXBAEAGgQAACAEBgAqBA0AOgQBAD4EBQBGBAEASQQRAFwEAQBfBAUAZgQAAGgEAQBrBAEAbwQAAHIEAAB0BAUAewQAAA=="}],\ ["massa_factory_exports",{"t":"PFFGKIPPIOCOCOCOOOOOOOOOOMOOOOCFNNNONNNONNNNNNNONONNONOOOONOOONNNNNNNNKMPGIPPNNNNNNNNNNNNNNNNNNNNNNNFINNNNNNONNNNNNNNNNNOOOONNNNNNNN","n":["Err","FactoryChannels","FactoryConfig","FactoryError","FactoryManager","FactoryResult","GenericError","Ok","ProductionHistory","chain_id","config","consensus","controller_traits","denunciation_expire_periods","error","genesis_timestamp","initial_delay","last_start_period","max_block_gas","max_block_size","max_operations_per_block","periods_per_cycle","pool","protocol","selector","stop","stop_production_when_zero_connections","storage","t0","thread_count","types","FactoryConfig","__clone_box","borrow","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","denunciation_expire_periods","deref","deref_mut","deserialize","drop","fmt","from","from_ref","genesis_timestamp","init","initial_delay","into","into_request","last_start_period","layout_raw","max_block_gas","max_block_size","max_operations_per_block","periods_per_cycle","pointer_metadata","stop_production_when_zero_connections","t0","thread_count","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","FactoryManager","stop","Err","FactoryError","FactoryResult","GenericError","Ok","as_error","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","fmt","from","init","into","into_request","layout_raw","pointer_metadata","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","FactoryChannels","ProductionHistory","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","consensus","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","pool","protocol","selector","storage","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip"],"q":[[0,"massa_factory_exports"],[31,"massa_factory_exports::config"],[70,"massa_factory_exports::controller_traits"],[72,"massa_factory_exports::error"],[100,"massa_factory_exports::types"],[132,"dyn_clone::sealed"],[133,"rkyv::with"],[134,"core::result"],[135,"core::fmt"],[136,"tonic::request"],[137,"core::alloc::layout"],[138,"core::any"],[139,"alloc::boxed"],[140,"core::error"],[141,"alloc::string"]],"i":[22,0,0,0,0,0,19,22,0,6,0,21,0,6,0,6,6,6,6,6,6,6,21,21,21,2,6,21,6,6,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,2,22,0,0,19,22,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,0,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21],"f":"`````````````````````````{{{f{bd}}}h}``````{{{f{c}}j}h{}}{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}`{{{f{l}}}l}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}`{n{{f{c}}}{}}{n{{f{bc}}}{}}{{{f{c}}{f{be}}}{{Ab{{A`{gi}}}}}{}{}{}{}}{nh}{{{f{l}}{f{bAd}}}Af}{cc{}}{{{f{c}}}c{}}`{{}n}`{ce{}{}}{c{{Ah{e}}}{}{}}`{{}{{Ab{AjAl}}}}````{f}```{{{f{c}}}e{}{}}{c{{Ab{e}}}{}{}}0{{{f{c}}}An{}}{{{B`{c}}}{{B`{Bb}}}{}}{{{f{bc}}}{{f{bBb}}}{}}{{{f{c}}}{{f{Bb}}}{}}9`{{{f{bd}}}h}`````{{{f{c}}}{{f{Bd}}}{}}{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{n{{f{c}}}{}}{n{{f{bc}}}{}}{{{f{c}}{f{be}}}{{Ab{{A`{gi}}}}}{}{}{}{}}{nh}{{{f{Bf}}{f{bAd}}}Af}0{cc{}}{{}n}{ce{}{}}{c{{Ah{e}}}{}{}}{{}{{Ab{AjAl}}}}{f}{{{f{c}}}Bh{}}{c{{Ab{e}}}{}{}}0{{{f{c}}}An{}}{{{B`{c}}}{{B`{Bb}}}{}}{{{f{bc}}}{{f{bBb}}}{}}{{{f{c}}}{{f{Bb}}}{}}9``{{{f{c}}j}h{}}{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Bj}}}Bj}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}`{n{{f{c}}}{}}{n{{f{bc}}}{}}{{{f{c}}{f{be}}}{{Ab{{A`{gi}}}}}{}{}{}{}}{nh}{cc{}}{{{f{c}}}c{}}{{}n}{ce{}{}}{c{{Ah{e}}}{}{}}{{}{{Ab{AjAl}}}}{f}````{{{f{c}}}e{}{}}{c{{Ab{e}}}{}{}}0{{{f{c}}}An{}}{{{B`{c}}}{{B`{Bb}}}{}}{{{f{bc}}}{{f{bBb}}}{}}{{{f{c}}}{{f{Bb}}}{}}9","D":"Gn","p":[[0,"mut"],[10,"FactoryManager",70],[1,"reference"],[1,"unit"],[5,"Private",132],[5,"FactoryConfig",31],[1,"usize"],[5,"With",133],[6,"Result",134],[5,"Formatter",135],[8,"Result",135],[5,"Request",136],[5,"Layout",137],[5,"LayoutError",137],[5,"TypeId",138],[5,"Box",139],[10,"Any",138],[10,"Error",140],[6,"FactoryError",72],[5,"String",141],[5,"FactoryChannels",100],[8,"FactoryResult",72]],"r":[[1,100],[2,31],[3,72],[4,70],[5,72],[8,100]],"b":[[84,"impl-Debug-for-FactoryError"],[85,"impl-Display-for-FactoryError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEUAEwAPAAAAHwAAACEAAgAlAAIAKQAEAC8AAAAxAAAANAAAADYAAAA7AAAAPwAHAE4ACABYAAAAWgAKAGcABQBuAAMAcwABAHYAAgB9AAcA"}],\ ["massa_factory_worker",{"t":"CCCCHFNNOONNNNONNNNNNNOONNNNNNNNNNNOFNNOONNNNOONNONNNNNNNNNNNNNNNNOFONNNNNNONNNNNNNNNNNNNNH","n":["block_factory","endorsement_factory","manager","run","start_factory","BlockFactoryWorker","borrow","borrow_mut","cfg","channels","deref","deref_mut","deserialize","drop","factory_receiver","from","get_next_slot","init","interruptible_wait_until","into","into_request","layout_raw","mip_store","op_id_serializer","pointer_metadata","process_slot","run","spawn","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","wallet","EndorsementFactoryWorker","borrow","borrow_mut","cfg","channels","deref","deref_mut","deserialize","drop","endorsement_serializer","factory_receiver","from","get_next_slot","half_t0","init","interruptible_wait_until","into","into_request","layout_raw","pointer_metadata","process_slot","run","spawn","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","wallet","FactoryManagerImpl","block_worker","borrow","borrow_mut","deref","deref_mut","deserialize","drop","endorsement_worker","from","init","into","into_request","layout_raw","pointer_metadata","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","start_factory"],"q":[[0,"massa_factory_worker"],[5,"massa_factory_worker::block_factory"],[36,"massa_factory_worker::endorsement_factory"],[67,"massa_factory_worker::manager"],[90,"massa_factory_worker::run"],[91,"massa_factory_exports::config"],[92,"massa_wallet"],[93,"parking_lot::rwlock"],[94,"alloc::sync"],[95,"massa_factory_exports::types"],[96,"massa_versioning::versioning"],[97,"massa_factory_exports::controller_traits"],[98,"alloc::boxed"],[99,"rkyv::with"],[100,"core::result"],[101,"massa_models::slot"],[102,"core::option"],[103,"std::time"],[104,"tonic::request"],[105,"core::alloc::layout"],[106,"massa_channel::receiver"],[107,"std::thread"],[108,"core::any"]],"i":[0,0,0,0,0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0],"f":"````{{b{h{{f{d}}}}jl}{{A`{n}}}}`{{{Ab{c}}}{{Ab{e}}}{}{}}{{{Ab{Adc}}}{{Ab{Ade}}}{}{}}``{Af{{Ab{c}}}{}}{Af{{Ab{Adc}}}{}}{{{Ab{c}}{Ab{Ade}}}{{Aj{{Ah{gi}}}}}{}{}{}{}}{AfAl}`{cc{}}{{{Ab{An}}{Bb{B`}}}{{Bf{B`Bd}}}}{{}Af}{{{Ab{An}}Bd}Bh}{ce{}{}}{c{{Bj{e}}}{}{}}{{}{{Aj{BlBn}}}}``{Ab}{{{Ab{AdAn}}B`}Al}{{{Ab{AdAn}}}Al}{{b{h{{f{d}}}}j{C`{Al}}l}{{Cb{Al}}}}{c{{Aj{e}}}{}{}}0{{{Ab{c}}}Cd{}}{{{A`{c}}}{{A`{Cf}}}{}}{{{Ab{Adc}}}{{Ab{AdCf}}}{}}{{{Ab{c}}}{{Ab{Cf}}}{}};``{{{Ab{c}}}{{Ab{e}}}{}{}}{{{Ab{Adc}}}{{Ab{Ade}}}{}{}}``{Af{{Ab{c}}}{}}{Af{{Ab{Adc}}}{}}{{{Ab{c}}{Ab{Ade}}}{{Aj{{Ah{gi}}}}}{}{}{}{}}{AfAl}``{cc{}}{{{Ab{Ch}}{Bb{B`}}}{{Bf{B`Bd}}}}`{{}Af}{{{Ab{Ch}}Bd}Bh}{ce{}{}}{c{{Bj{e}}}{}{}}{{}{{Aj{BlBn}}}}{Ab}{{{Ab{AdCh}}B`}Al}{{{Ab{AdCh}}}Al}{{b{h{{f{d}}}}j{C`{Al}}}{{Cb{Al}}}}{c{{Aj{e}}}{}{}}0{{{Ab{c}}}Cd{}}{{{A`{c}}}{{A`{Cf}}}{}}{{{Ab{Adc}}}{{Ab{AdCf}}}{}}{{{Ab{c}}}{{Ab{Cf}}}{}};```{{{Ab{c}}}{{Ab{e}}}{}{}}{{{Ab{Adc}}}{{Ab{Ade}}}{}{}}{Af{{Ab{c}}}{}}{Af{{Ab{Adc}}}{}}{{{Ab{c}}{Ab{Ade}}}{{Aj{{Ah{gi}}}}}{}{}{}{}}{AfAl}`{cc{}}{{}Af}{ce{}{}}{c{{Bj{e}}}{}{}}{{}{{Aj{BlBn}}}}{Ab}{{{Ab{AdCj}}}Al}{c{{Aj{e}}}{}{}}0{{{Ab{c}}}Cd{}}{{{A`{c}}}{{A`{Cf}}}{}}{{{Ab{Adc}}}{{Ab{AdCf}}}{}}{{{Ab{c}}}{{Ab{Cf}}}{}}9{{b{h{{f{d}}}}jl}{{A`{n}}}}","D":"Ch","p":[[5,"FactoryConfig",91],[5,"Wallet",92],[8,"RwLock",93],[5,"Arc",94],[5,"FactoryChannels",95],[5,"MipStore",96],[10,"FactoryManager",97],[5,"Box",98],[1,"reference"],[0,"mut"],[1,"usize"],[5,"With",99],[6,"Result",100],[1,"unit"],[5,"BlockFactoryWorker",5],[5,"Slot",101],[6,"Option",102],[5,"Instant",103],[1,"tuple"],[1,"bool"],[5,"Request",104],[5,"Layout",105],[5,"LayoutError",105],[5,"MassaReceiver",106],[5,"JoinHandle",107],[5,"TypeId",108],[10,"Any",108],[5,"EndorsementFactoryWorker",36],[5,"FactoryManagerImpl",67]],"r":[[4,90]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAD8ADQACAAAABwAIABIAAAAVAAQAHQAHACYACQAyAAEANgACADwABwBGAAUATgAAAFAAAgBUAAYA"}],\ -["massa_final_state",{"t":"PFFKGPPPPPFFFOOOOOMCOCOOOOOOOOOCOOOOOOMOOOOCMOMMMMMMMMMMMMMMMMMOOMOOOOOOOOCOOOOOOOOOOOMMMMCOOFONNNNNOOOOONNNOOONNOOOOOOOONNNNNKMMMMMMMMMMMMMMMMMMMMMMMMMPGPPPPPNNNNNNNNNNNNNNNFNNONNNOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNONNNNNNNNHFFFNOOONNNNNNNNNOONNOOONNOOOOONNNNNNNNNNNOOONNOOOOONNNNNNNNNNNNNNN","n":["ExtendFromDbError","FinalState","FinalStateConfig","FinalStateController","FinalStateError","InvalidSlot","LedgerError","NonConsistentWithShutdownPeriodError","PosError","SnapshotError","StateChanges","StateChangesDeserializer","StateChangesSerializer","async_pool","async_pool_changes","async_pool_changes_deserializer","async_pool_changes_serializer","async_pool_config","compute_initial_draws","config","config","controller_trait","db","de_changes_deserializer","de_changes_serializer","deferred_call_changes","deferred_call_changes_deserializer","deferred_call_changes_serializer","deferred_call_registry","deferred_calls_config","endorsement_count","error","executed_denunciations","executed_denunciations_changes","executed_denunciations_config","executed_ops","executed_ops_changes","executed_ops_config","executed_ops_contains","execution_trail_hash_change","execution_trail_hash_change_deserializer","execution_trail_hash_change_serializer","final_history_length","final_state","finalize","genesis_timestamp","get_async_pool","get_database","get_deferred_call_registry","get_executed_denunciations","get_execution_trail_hash","get_fingerprint","get_last_slot_before_downtime","get_last_start_period","get_ledger","get_ledger_mut","get_mip_store","get_mip_store_mut","get_ops_exec_status","get_pos_state","get_pos_state_mut","get_slot","init_execution_trail_hash_to_batch","initial_rolls_path","initial_seed_string","is_db_valid","last_slot_before_downtime","last_start_period","ledger","ledger_backup_periods_interval","ledger_changes","ledger_changes_deserializer","ledger_changes_serializer","ledger_config","mapping_grpc","max_denunciations_per_block_header","max_executed_denunciations_length","mip_store","ops_changes_deserializer","ops_changes_serializer","periods_per_cycle","pos_changes","pos_changes_deserializer","pos_changes_serializer","pos_config","pos_state","recompute_caches","reset","set_last_slot_before_downtime","set_last_start_period","state_changes","t0","thread_count","FinalStateConfig","async_pool_config","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deferred_calls_config","endorsement_count","executed_denunciations_config","executed_ops_config","final_history_length","fmt","from","from_ref","genesis_timestamp","initial_rolls_path","initial_seed_string","into","into_request","ledger_backup_periods_interval","ledger_config","max_denunciations_per_block_header","max_executed_denunciations_length","periods_per_cycle","pos_config","t0","thread_count","to_owned","try_from","try_into","type_id","vzip","FinalStateController","compute_initial_draws","executed_ops_contains","finalize","get_async_pool","get_database","get_deferred_call_registry","get_executed_denunciations","get_execution_trail_hash","get_fingerprint","get_last_slot_before_downtime","get_last_start_period","get_ledger","get_ledger_mut","get_mip_store","get_mip_store_mut","get_ops_exec_status","get_pos_state","get_pos_state_mut","get_slot","init_execution_trail_hash_to_batch","is_db_valid","recompute_caches","reset","set_last_slot_before_downtime","set_last_start_period","ExtendFromDbError","FinalStateError","InvalidSlot","LedgerError","NonConsistentWithShutdownPeriodError","PosError","SnapshotError","borrow","borrow_mut","fmt","fmt","from","from","from","into","into_request","source","to_string","try_from","try_into","type_id","vzip","FinalState","_finalize","_is_db_valid","async_pool","borrow","borrow_mut","compute_initial_draws","config","db","deferred_call_registry","executed_denunciations","executed_ops","executed_ops_contains","feed_cycle_hash_and_selector_for_interpolation","finalize","from","get_async_pool","get_database","get_deferred_call_registry","get_executed_denunciations","get_execution_trail_hash","get_fingerprint","get_last_slot_before_downtime","get_last_start_period","get_ledger","get_ledger_mut","get_mip_store","get_mip_store_mut","get_ops_exec_status","get_pos_state","get_pos_state_mut","get_slot","init_execution_trail_hash_to_batch","interpolate_downtime","interpolate_multiple_cycles","interpolate_single_cycle","into","into_request","is_db_valid","last_slot_before_downtime","last_start_period","ledger","mip_store","new","new_derived_from_snapshot","pos_state","recompute_caches","reset","set_last_slot_before_downtime","set_last_start_period","try_from","try_into","type_id","vzip","async_msg_id_to_string","StateChanges","StateChangesDeserializer","StateChangesSerializer","apply","async_pool_changes","async_pool_changes_deserializer","async_pool_changes_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","de_changes_deserializer","de_changes_serializer","default","default","deferred_call_changes","deferred_call_changes_deserializer","deferred_call_changes_serializer","deserialize","deserialize","executed_denunciations_changes","executed_ops_changes","execution_trail_hash_change","execution_trail_hash_change_deserializer","execution_trail_hash_change_serializer","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","ledger_changes","ledger_changes_deserializer","ledger_changes_serializer","new","new","ops_changes_deserializer","ops_changes_serializer","pos_changes","pos_changes_deserializer","pos_changes_serializer","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_final_state"],[93,"massa_final_state::config"],[126,"massa_final_state::controller_trait"],[152,"massa_final_state::error"],[174,"massa_final_state::final_state"],[228,"massa_final_state::mapping_grpc"],[229,"massa_final_state::state_changes"],[295,"core::result"],[296,"massa_models::operation"],[297,"massa_models::slot"],[298,"massa_async_pool::pool"],[299,"massa_db_exports::controller"],[300,"massa_deferred_calls"],[301,"massa_executed_ops::executed_denunciations"],[302,"massa_hash::hash"],[303,"core::option"],[304,"massa_ledger_exports::controller"],[305,"alloc::boxed"],[306,"massa_versioning::versioning"],[307,"alloc::vec"],[308,"massa_pos_exports::pos_final_state"],[309,"massa_db_exports::db_batch"],[310,"core::fmt"],[311,"tonic::request"],[312,"core::any"],[313,"core::error"],[314,"alloc::string"],[315,"anyhow"],[316,"massa_pos_exports::controller_traits"],[317,"massa_async_pool::message"],[318,"nom::internal"],[319,"nom::error"],[320,"serde::de"],[321,"massa_deferred_calls::config"],[322,"massa_serialization"],[323,"serde::ser"]],"i":[5,0,0,0,0,5,5,5,5,5,0,0,0,34,10,39,38,25,2,0,34,0,34,39,38,10,39,38,34,25,25,0,34,10,25,34,10,25,2,10,39,38,25,0,2,25,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,25,25,2,34,34,34,25,10,39,38,25,0,25,25,34,39,38,25,10,39,38,25,34,2,2,2,2,0,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,0,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,10,10,39,38,38,39,10,38,39,10,10,10,10,39,38,38,10,10,39,38,39,10,10,10,10,39,38,10,38,39,10,10,38,39,10,38,39,10,10,39,38,38,39,39,38,10,39,38,38,10,10,38,39,10,38,39,10,38,39,10,38,39,10],"f":"``````````````````{{{f{bd}}}{{l{hj}}}}```````````````````{{{f{d}}{f{n}}}A`}`````{{{f{bd}}AbAd}h}`{{{f{d}}}{{f{Af}}}}{{{f{d}}}{{f{Ah}}}}{{{f{d}}}{{f{Aj}}}}{{{f{d}}}{{f{Al}}}}{{{f{d}}}An}0{{{f{d}}}{{f{{B`{Ab}}}}}}{{{f{d}}}Bb}{{{f{d}}}{{f{{Bf{Bd}}}}}}{{{f{bd}}}{{f{b{Bf{Bd}}}}}}{{{f{d}}}{{f{Bh}}}}{{{f{bd}}}{{f{bBh}}}}{{{f{d}}{f{{Bj{n}}}}}{{Bl{{B`{A`}}}}}}{{{f{d}}}{{f{Bn}}}}{{{f{bd}}}{{f{bBn}}}}{{{f{d}}}Ab}{{{f{bd}}{f{bC`}}}h}``{{{f{d}}}A`}````````````````````{{{f{bd}}}h}0{{{f{bd}}{B`{Ab}}}h}{{{f{bd}}Bb}h}`````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Cb}}}Cb}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}`````{{{f{Cb}}{f{bCd}}}Cf}{cc{}}{{{f{c}}}c{}}```{ce{}{}}{c{{Ch{e}}}{}{}}````````{{{f{c}}}e{}{}}{c{{l{e}}}{}{}}0{{{f{c}}}Cj{}}4`{{{f{bd}}}{{l{hj}}}}{{{f{d}}{f{n}}}A`}{{{f{bd}}AbAd}h}{{{f{d}}}{{f{Af}}}}{{{f{d}}}{{f{Ah}}}}{{{f{d}}}{{f{Aj}}}}{{{f{d}}}{{f{Al}}}}{{{f{d}}}An}0{{{f{d}}}{{f{{B`{Ab}}}}}}{{{f{d}}}Bb}{{{f{d}}}{{f{{Bf{Bd}}}}}}{{{f{bd}}}{{f{b{Bf{Bd}}}}}}{{{f{d}}}{{f{Bh}}}}{{{f{bd}}}{{f{bBh}}}}{{{f{d}}{f{{Bj{n}}}}}{{Bl{{B`{A`}}}}}}{{{f{d}}}{{f{Bn}}}}{{{f{bd}}}{{f{bBn}}}}{{{f{d}}}Ab}{{{f{bd}}{f{bC`}}}h}{{{f{d}}}A`}{{{f{bd}}}h}0{{{f{bd}}{B`{Ab}}}h}{{{f{bd}}Bb}h}```````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{j}}{f{bCd}}}Cf}0{Clj}{cc{}}{Cnj}{ce{}{}}{c{{Ch{e}}}{}{}}{{{f{j}}}{{B`{{f{D`}}}}}}{{{f{c}}}Db{}}{c{{l{e}}}{}{}}0{{{f{c}}}Cj{}}5`{{{f{bDd}}AbAd}{{Df{h}}}}{{{f{Dd}}}{{Df{h}}}}`=<{{{f{bDd}}}{{l{hj}}}}`````{{{f{Dd}}{f{n}}}A`}{{{f{bDd}}Bb}{{l{hj}}}}{{{f{bDd}}AbAd}h}={{{f{Dd}}}{{f{Af}}}}{{{f{Dd}}}{{f{Ah}}}}{{{f{Dd}}}{{f{Aj}}}}{{{f{Dd}}}{{f{Al}}}}{{{f{Dd}}}An}0{{{f{Dd}}}{{f{{B`{Ab}}}}}}{{{f{Dd}}}Bb}{{{f{Dd}}}{{f{{Bf{Bd}}}}}}{{{f{bDd}}}{{f{b{Bf{Bd}}}}}}{{{f{Dd}}}{{f{Bh}}}}{{{f{bDd}}}{{f{bBh}}}}{{{f{Dd}}{f{{Bj{n}}}}}{{Bl{{B`{A`}}}}}}{{{f{Dd}}}{{f{Bn}}}}{{{f{bDd}}}{{f{bBn}}}}{{{f{Dd}}}Ab}{{{f{bDd}}{f{bC`}}}h}{{{f{bDd}}}{{l{hj}}}}{{{f{bDd}}AbAbBbBb}{{l{hj}}}}{{{f{bDd}}AbAb}{{l{hj}}}}{ce{}{}}{c{{Ch{e}}}{}{}}{{{f{Dd}}}A`}````{{AhCb{Bf{Bd}}{Bf{Dh}}BhA`}{{l{Ddj}}}}{{AhCb{Bf{Bd}}{Bf{Dh}}BhBb}{{l{Ddj}}}}`{{{f{bDd}}}h}0{{{f{bDd}}{B`{Ab}}}h}{{{f{bDd}}Bb}h}{c{{l{e}}}{}{}}0{{{f{c}}}Cj{}}9{DjDb}```{{{f{bAd}}Ad}h}```{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{Ad}}}Ad}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}``{{}Dl}{{}Ad}```{{{f{Dn}}{f{{Bj{E`}}}}}{{Eb{{f{{Bj{E`}}}}Adc}}}{{Ed{{f{{Bj{E`}}}}}}{Ef{{f{{Bj{E`}}}}}}}}{c{{l{Ad}}}Eh}`````{{{f{Ad}}{f{bCd}}}Cf}{cc{}}00{{{f{c}}}c{}}{ce{}{}}00{c{{Ch{e}}}{}{}}00```8{{E`BbEjBbBbE`BbBbBbBbBbBbElBbEn}Dn}`````{{{f{Dl}}{f{Ad}}{f{b{Bl{E`}}}}}{{l{hF`}}}}{{{f{Ad}}c}lFb}{{{f{c}}}e{}{}}{c{{l{e}}}{}{}}00000{{{f{c}}}Cj{}}00777","D":"AEj","p":[[0,"mut"],[10,"FinalStateController",126],[1,"reference"],[1,"unit"],[6,"FinalStateError",152],[6,"Result",295],[6,"OperationId",296],[1,"bool"],[5,"Slot",297],[5,"StateChanges",229],[5,"AsyncPool",298],[8,"ShareableMassaDBController",299],[5,"DeferredCallRegistry",300],[5,"ExecutedDenunciations",301],[5,"Hash",302],[6,"Option",303],[1,"u64"],[10,"LedgerController",304],[5,"Box",305],[5,"MipStore",306],[1,"slice"],[5,"Vec",307],[5,"PoSFinalState",308],[8,"DBBatch",309],[5,"FinalStateConfig",93],[5,"Formatter",310],[8,"Result",310],[5,"Request",311],[5,"TypeId",312],[6,"ExtendFromDbError",306],[6,"IsConsistentWithShutdownPeriodError",306],[10,"Error",313],[5,"String",314],[5,"FinalState",174],[8,"Result",315],[10,"SelectorController",316],[8,"AsyncMessageId",317],[5,"StateChangesSerializer",229],[5,"StateChangesDeserializer",229],[1,"u8"],[8,"IResult",318],[10,"ParseError",319],[10,"ContextError",319],[10,"Deserializer",320],[1,"u16"],[1,"u32"],[5,"DeferredCallsConfig",321],[6,"SerializeError",322],[10,"Serializer",323]],"r":[[1,174],[2,93],[3,126],[4,152],[10,229],[11,229],[12,229]],"b":[[161,"impl-Debug-for-FinalStateError"],[162,"impl-Display-for-FinalStateError"],[163,"impl-From%3CExtendFromDbError%3E-for-FinalStateError"],[165,"impl-From%3CIsConsistentWithShutdownPeriodError%3E-for-FinalStateError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAHoAIAAQAAEAFgAAABgAAQAbAAEAKQABAEgAAQBLAAAATwABAFMAAQBgAAQAagAAAGwAAABxAAAAegAEAKAABACmAAAAqAAGALAAAACzAAIAuwAAAL0AAAC/ABAA1AABAN0ACADrAA4A+wADAAIBAgAIAQAADAECABABAQAUAQEAFwEQAA=="}],\ -["massa_grpc",{"t":"FFFNNNONNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNCNNNONNNNNNNNNNNNNNNCOCCOOCNNNNNNNNNNNNNNNNNNNNNNNNFFPPGNNNOOONNNNNNOOOOONNNNNNNNNONNNNNNNNNNNNONNNOOOOOOONNNNNNNNNOOOOONNNOONNNNNNOONNNOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNPPPGPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHFFFNNNNNNNNNNNNNNNONNNNNNOOONNNNNNNNNNNNNOOONNNNNHNNNNNNNNNNNNNNNNNNOONNNNNNNNNONNNHONNNNNNNOOONNNOOOOOOONNNNNNNNONNNHNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNOONNNCCCCCCCCCCCFINOONNNNNNNNNNNNHNNNNHNHONNNNNNNNFIOONNNNNNONNHNNNNHNHNNNNNNNFINOONNNNNNNNNNNNHNNNNHNHONNNNNNNNFIONNNNNNNNHNNNNHOONHNNNNNNNIFNNNNNNNNNNNNNNNNHNONNNNNNNNFFFFFFINNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOHHNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNOHOOOOONNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIIHHIHHIHHSIH","n":["EndorsementDraw","SlotDraw","SlotRange","__clone_box","__clone_box","__clone_box","block_producer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","check","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","config","default","default","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","end_slot","endorsement_draws","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","get_hash","get_hash","get_hash","handler","hash","hash","hash","index","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","private","producer","public","server","slot","start_slot","stream","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","GrpcApiConfig","GrpcConfig","Private","Public","ServiceName","__clone_box","__clone_box","__clone_box","accept_compressed","accept_http1","bind","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","certificate_authority_root_path","chain_id","client_certificate_authority_root_path","client_certificate_path","client_private_key_path","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","concurrency_limit_per_connection","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","draw_lookahead_period_count","drop","drop","drop","enable_cors","enable_health","enable_mtls","enable_reflection","enable_tls","enabled","endorsement_count","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","generate_self_signed_certificates","genesis_timestamp","http2_adaptive_window","http2_keepalive_interval","http2_keepalive_timeout","init","init","init","initial_connection_window_size","initial_stream_window_size","into","into","into","into_request","into_request","into_request","keypair","last_start_period","layout_raw","layout_raw","layout_raw","max_addresses_per_request","max_arguments","max_block_ids_per_request","max_channel_size","max_concurrent_streams","max_datastore_entries_per_request","max_datastore_value_length","max_decoding_message_size","max_denunciations_per_block_header","max_encoding_message_size","max_endorsement_ids_per_request","max_endorsements_per_message","max_filters_per_request","max_frame_size","max_function_name_length","max_gas_per_block","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operation_ids_per_request","max_operations_per_block","max_operations_per_message","max_parameter_size","max_query_items_per_request","max_slot_ranges_per_request","minimal_fees","name","periods_per_cycle","pointer_metadata","pointer_metadata","pointer_metadata","private","public","send_compressed","server_certificate_path","server_private_key_path","subject_alt_names","t0","tcp_keepalive","tcp_nodelay","thread_count","timeout","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusError","ExecutionError","FactoryError","GrpcError","InternalServerError","InvalidArgument","MassaHashError","MassaSignatureError","ModelsError","ProtocolError","ReflectionError","TimeError","Unimplemented","WalletError","as_error","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","init","into","into_request","layout_raw","match_for_io_error","pointer_metadata","source","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","add_staking_secret_keys","add_to_bootstrap_blacklist","add_to_bootstrap_whitelist","add_to_peers_whitelist","allow_everyone_to_bootstrap","ban_nodes_by_ids","ban_nodes_by_ips","get_bootstrap_blacklist","get_bootstrap_whitelist","get_mip_status","get_node_status","get_peers_whitelist","remove_from_bootstrap_blacklist","remove_from_bootstrap_whitelist","remove_from_peers_whitelist","remove_staking_addresses","shutdown_gracefully","sign_messages","unban_nodes_by_ids","unban_nodes_by_ips","execute_read_only_call","get_blocks","get_datastore_entries","get_endorsements","get_next_block_best_parents","get_operations","get_sc_execution_events","get_selector_draws","get_stakers","get_status","get_transactions_throughput","query_state","search_blocks","search_endorsements","search_operations","MassaPrivateGrpc","MassaPublicGrpc","StopHandle","__clone_box","__clone_box","add_staking_secret_keys","add_to_bootstrap_blacklist","add_to_bootstrap_whitelist","add_to_peers_whitelist","allow_everyone_to_bootstrap","ban_nodes_by_ids","ban_nodes_by_ips","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bs_white_black_list","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","consensus_broadcasts","consensus_controller","consensus_controller","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","execute_read_only_call","execution_channels","execution_controller","execution_controller","from","from","from","from_ref","from_ref","generate_self_signed_certificates","get_blocks","get_bootstrap_blacklist","get_bootstrap_whitelist","get_datastore_entries","get_endorsements","get_mip_status","get_next_block_best_parents","get_node_status","get_operation_abi_call_stacks","get_operations","get_peers_whitelist","get_sc_execution_events","get_selector_draws","get_slot_abi_call_stacks","get_slot_transfers","get_stakers","get_status","get_transactions_throughput","grpc_config","grpc_config","init","init","init","into","into","into","into_request","into_request","into_request","keypair_factory","layout_raw","layout_raw","layout_raw","massa_service_status","mip_store","new_blocks","new_endorsements","new_filled_blocks","new_operations","new_slot_abi_call_stacks","new_slot_execution_outputs","new_slot_transfers","node_id","node_id","node_wallet","pointer_metadata","pointer_metadata","pointer_metadata","pool_broadcasts","pool_controller","pool_controller","protocol_config","protocol_config","protocol_controller","protocol_controller","query_state","remove_from_bootstrap_blacklist","remove_from_bootstrap_whitelist","remove_from_peers_whitelist","remove_staking_addresses","search_blocks","search_endorsements","search_operations","selector_controller","send_blocks","send_endorsements","send_operations","serve","serve","serve","shutdown_gracefully","sign_messages","stop","stop_cmd_sender","stop_cv","storage","to_owned","to_owned","transactions_throughput","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","unban_nodes_by_ids","unban_nodes_by_ips","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","version","version","vzip","vzip","vzip","new_blocks","new_endorsements","new_filled_blocks","new_operations","new_slot_abi_call_stacks","new_slot_execution_outputs","new_slot_transfers","send_blocks","send_endorsements","send_operations","tx_throughput","Filter","NewBlocksStreamType","__clone_box","addresses","block_ids","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","get_filter","init","into","into_request","layout_raw","new_blocks","pointer_metadata","should_send","slot_ranges","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Filter","NewEndorsementsStreamType","addresses","block_ids","borrow","borrow_mut","deref","deref_mut","deserialize","drop","endorsement_ids","fmt","from","get_filter","init","into","into_request","layout_raw","new_endorsements","pointer_metadata","should_send","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Filter","NewFilledBlocksStreamType","__clone_box","addresses","block_ids","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","get_filter","init","into","into_request","layout_raw","new_filled_blocks","pointer_metadata","should_send","slot_ranges","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Filter","NewOperationsStreamType","addresses","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","from","get_filter","init","into","into_request","layout_raw","new_operations","operation_ids","operation_types","pointer_metadata","should_send","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","NewSlotABICallStacksStreamType","SlotAbiCallStack","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","new_slot_abi_call_stacks","pointer_metadata","slot","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","AsyncPoolChangesFilter","ExecutedDenounciationFilter","ExecutedOpsChangesFilter","ExecutionEventFilter","Filter","LedgerChangesFilter","NewSlotExecutionOutputsStreamType","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","async_pool_changes_filter","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","default","default","default","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","executed_denounciation_filter","executed_ops_changes_filter","execution_event_filter","filter_map","filter_map_exec_output","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_filter","init","init","init","init","init","init","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","ledger_changes_filter","new_slot_execution_outputs","none","none","none","none","none","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","slot_ranges_filter","status_filter","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","NewSlotTransfersStreamType","SendBlocksStreamType","report_error","send_blocks","SendEndorsementsStreamType","report_error","send_endorsements","SendOperationsStreamType","report_error","send_operations","DEFAULT_THROUGHPUT_INTERVAL","TransactionsThroughputStreamType","transactions_throughput"],"q":[[0,"massa_grpc"],[126,"massa_grpc::config"],[277,"massa_grpc::error"],[326,"massa_grpc::private"],[346,"massa_grpc::public"],[361,"massa_grpc::server"],[515,"massa_grpc::stream"],[526,"massa_grpc::stream::new_blocks"],[560,"massa_grpc::stream::new_endorsements"],[588,"massa_grpc::stream::new_filled_blocks"],[622,"massa_grpc::stream::new_operations"],[650,"massa_grpc::stream::new_slot_abi_call_stacks"],[679,"massa_grpc::stream::new_slot_execution_outputs"],[864,"massa_grpc::stream::new_slot_transfers"],[865,"massa_grpc::stream::send_blocks"],[868,"massa_grpc::stream::send_endorsements"],[871,"massa_grpc::stream::send_operations"],[874,"massa_grpc::stream::tx_throughput"],[877,"dyn_clone::sealed"],[878,"core::result"],[879,"rkyv::with"],[880,"core::fmt"],[881,"core::hash"],[882,"core::marker"],[883,"tonic::request"],[884,"core::alloc::layout"],[885,"core::any"],[886,"alloc::boxed"],[887,"serde::de"],[888,"core::error"],[889,"tonic_reflection::server"],[890,"massa_time::error"],[891,"massa_hash::error"],[892,"massa_execution_exports::error"],[893,"massa_protocol_exports::error"],[894,"massa_versioning::versioning_factory"],[895,"massa_signature::error"],[896,"massa_wallet::error"],[897,"massa_models::error"],[898,"massa_consensus_exports::error"],[899,"tonic::status"],[900,"std::io::error"],[901,"core::option"],[902,"alloc::string"],[903,"massa_proto_rs::massa::api::v1"],[904,"core::future::future"],[905,"core::pin"],[906,"tonic_health::server"],[907,"tonic::codec::decode"],[908,"tonic::body"],[909,"http::request"],[910,"http::response"],[911,"core::convert"],[912,"tower_service"],[913,"tonic::server"],[914,"core::clone"],[915,"massa_models::block"],[916,"massa_models::endorsement"],[917,"massa_models::block_header"],[918,"massa_models::block_id"],[919,"massa_models::secure_share"],[920,"massa_models::operation"],[921,"massa_execution_exports::types"],[922,"tokio::sync::mpsc::bounded"]],"i":[0,0,0,5,8,9,8,5,8,9,5,8,9,5,5,8,9,5,8,9,5,8,9,0,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,5,8,9,5,5,5,5,5,5,8,8,8,8,8,8,9,9,9,9,9,9,0,5,8,9,5,8,9,5,8,9,5,8,9,0,5,8,9,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,0,9,0,0,8,5,0,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,0,0,28,28,0,26,27,28,26,26,26,26,27,28,26,27,28,26,26,26,26,26,26,27,28,26,27,28,26,27,28,26,26,27,28,26,27,28,26,26,27,27,28,28,26,26,27,28,26,26,26,26,26,26,26,26,27,28,26,27,28,26,27,28,26,26,26,26,26,26,27,28,26,26,26,27,28,26,27,28,26,26,26,27,28,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,28,27,27,26,26,26,26,26,26,26,26,26,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,6,6,6,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,86,45,45,45,45,45,45,45,134,45,86,134,45,86,45,45,86,45,86,45,86,86,45,86,134,45,86,134,45,86,134,45,86,134,45,86,86,86,45,86,134,45,86,45,86,0,86,45,45,86,86,45,86,45,86,86,45,86,86,86,86,86,86,86,45,86,134,45,86,134,45,86,134,45,86,86,134,45,86,0,45,86,86,86,86,86,86,86,45,86,45,134,45,86,86,45,86,45,86,45,86,86,45,45,45,45,86,86,86,86,86,86,86,0,45,86,45,45,134,134,45,86,45,86,86,134,45,86,134,45,86,134,45,86,45,45,134,45,86,134,45,86,134,45,86,45,86,134,45,86,0,0,0,0,0,0,0,0,0,0,0,0,0,146,146,146,146,146,146,146,146,146,146,146,146,146,146,146,0,146,146,146,146,0,146,0,146,146,146,146,146,146,146,146,146,0,0,149,149,149,149,149,149,149,149,149,149,149,0,149,149,149,149,0,149,0,149,149,149,149,149,149,149,0,0,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,0,152,152,152,152,0,152,0,152,152,152,152,152,152,152,152,152,0,0,157,157,157,157,157,157,157,157,157,0,157,157,157,157,0,157,157,157,0,157,157,157,157,157,157,157,0,0,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,0,160,160,160,160,160,160,160,160,160,160,0,0,0,0,0,0,0,162,163,164,165,166,167,162,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,162,162,0,0,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,0,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,0,163,164,165,166,167,162,163,164,165,166,167,162,162,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,0,0,0,0,0,0,0,0,0,0,0,0,0],"f":"```{{{b{c}}d}f{}}00`{{{b{c}}}{{b{e}}}{}{}}00{{{b{hc}}}{{b{he}}}{}{}}00{{{b{j}}}{{n{fl}}}}{{{b{j}}}j}{{{b{A`}}}A`}{{{b{Ab}}}Ab}{{{b{c}}{b{he}}}f{}{}}00{{{b{c}}}f{}}00`{{}j}{{}A`}{{}Ab}{Ad{{b{c}}}{}}00{Ad{{b{hc}}}{}}00{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}00{Adf}00``{{{b{j}}{b{j}}}Ah}{{{b{A`}}{b{A`}}}Ah}{{{b{Ab}}{b{Ab}}}Ah}{{{b{c}}{b{e}}}Ah{}{}}00000000000000000`{{{b{j}}{b{hAj}}}Al}{{{b{A`}}{b{hAj}}}Al}{{{b{Ab}}{b{hAj}}}Al}{cc{}}00{{{b{c}}}c{}}00{{{b{c}}{b{e}}}An{B`Bb}Bd}00`{{{b{j}}{b{hc}}}fBf}{{{b{A`}}{b{hc}}}fBf}{{{b{Ab}}{b{hc}}}fBf}`{{}Ad}00{ce{}{}}00{c{{Bh{e}}}{}{}}00{{}{{n{BjBl}}}}00{b}00```````{{{b{c}}}e{}{}}00{c{{n{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{C`{c}}}{{C`{Cb}}}{}}00{{{b{hc}}}{{b{hCb}}}{}}00{{{b{c}}}{{b{Cb}}}{}}00999`````{{{b{c}}d}f{}}00```{{{b{c}}}{{b{e}}}{}{}}00{{{b{hc}}}{{b{he}}}{}{}}00`````{{{b{Cd}}}Cd}{{{b{Cf}}}Cf}{{{b{Ch}}}Ch}{{{b{c}}{b{he}}}f{}{}}00{{{b{c}}}f{}}00`{Ad{{b{c}}}{}}00{Ad{{b{hc}}}{}}00{c{{n{Cd}}}Cj}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{c{{n{Cf}}}Cj}11{c{{n{Ch}}}Cj}`{Adf}00```````{{{b{Cd}}{b{hAj}}}Al}{{{b{Cf}}{b{hAj}}}Al}{{{b{Ch}}{b{hAj}}}Al}{cc{}}00{{{b{c}}}c{}}00`````{{}Ad}00``{ce{}{}}00{c{{Bh{e}}}{}{}}00``{{}{{n{BjBl}}}}00````````````````````````````{b}00```````````{{{b{c}}}e{}{}}00{c{{n{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{C`{c}}}{{C`{Cb}}}{}}00{{{b{hc}}}{{b{hCb}}}{}}00{{{b{c}}}{{b{Cb}}}{}}00999``````````````{{{b{c}}}{{b{Cl}}}{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{l}}{b{hAj}}}Al}0{Cnl}{D`l}{Dbl}{Ddl}{Dfl}{Dhl}{Djl}{Dll}{Dnl}{E`l}{cc{}}{{}Ad}{ce{}{}}{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Eb}}}{{Ef{{b{Ed}}}}}}{b}{{{b{l}}}{{Ef{{b{Cl}}}}}}{{{b{c}}}Eh{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}};{{{b{Ej}}{Bh{El}}}{{n{Enl}}}}{{{b{Ej}}{Bh{F`}}}{{n{Fbl}}}}{{{b{Ej}}{Bh{Fd}}}{{n{Ffl}}}}{{{b{Ej}}{Bh{Fh}}}{{n{Fjl}}}}{{{b{Ej}}{Bh{Fl}}}{{n{Fnl}}}}{{{b{Ej}}{Bh{G`}}}{{n{Gbl}}}}{{{b{Ej}}{Bh{Gd}}}{{n{Gfl}}}}{{{b{Ej}}{Bh{Gh}}}{{n{Gjl}}}}{{{b{Ej}}{Bh{Gl}}}{{n{Gnl}}}}{{{b{Ej}}{Bh{H`}}}{{n{Hbl}}}}{{{b{Ej}}{Bh{Hd}}}{{n{Hfl}}}}{{{b{Ej}}{Bh{Hh}}}{{n{Hjl}}}}{{{b{Ej}}{Bh{Hl}}}{{n{Hnl}}}}{{{b{Ej}}{Bh{I`}}}{{n{Ibl}}}}{{{b{Ej}}{Bh{Id}}}{{n{Ifl}}}}{{{b{Ej}}{Bh{Ih}}}{{n{Ijl}}}}{{{b{Ej}}{Bh{Il}}}{{n{Inl}}}}{{{b{Ej}}{Bh{J`}}}{{n{Jbl}}}}{{{b{Ej}}{Bh{Jd}}}{{n{Jfl}}}}{{{b{Ej}}{Bh{Jh}}}{{n{Jjl}}}}{{{b{Jl}}{Bh{Jn}}}{{n{K`l}}}}{{{b{Jl}}{Bh{Kb}}}{{n{Kdl}}}}{{{b{Jl}}{Bh{Kf}}}{{n{Khl}}}}{{{b{Jl}}{Bh{Kj}}}{{n{Kll}}}}{{{b{Jl}}{Bh{Kn}}}{{n{L`l}}}}{{{b{Jl}}{Bh{Lb}}}{{n{Ldl}}}}{{{b{Jl}}{Bh{Lf}}}{{n{Lhl}}}}{{{b{Jl}}{Bh{Lj}}}{{n{Lll}}}}{{{b{Jl}}{Bh{Ln}}}{{n{M`l}}}}{{{b{Jl}}{Bh{Mb}}}{{n{Mdl}}}}{{{b{Jl}}{Bh{Mf}}}{{n{Mhl}}}}{{{b{Jl}}{Bh{Mj}}}{{n{Mll}}}}{{{b{Jl}}{Bh{Mn}}}{{n{N`l}}}}{{{b{Jl}}{Bh{Nb}}}{{n{Ndl}}}}{{{b{Jl}}{Bh{Nf}}}{{n{Nhl}}}}```{{{b{c}}d}f{}}0{{{b{Ej}}{Bh{El}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{F`}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Fd}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Fh}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Fl}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{G`}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Gd}}}{{Nl{{C`{Nj}}}}}}{{{b{c}}}{{b{e}}}{}{}}00{{{b{hc}}}{{b{he}}}{}{}}00`{{{b{Ej}}}Ej}{{{b{Jl}}}Jl}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}0```{Ad{{b{c}}}{}}00{Ad{{b{hc}}}{}}00{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}00{Adf}00{{{b{Jl}}{Bh{Jn}}}{{Nl{{C`{Nj}}}}}}```{cc{}}00{{{b{c}}}c{}}0{{{b{Cd}}}f}{{{b{Jl}}{Bh{Kb}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Gh}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Gl}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Kf}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Kj}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{H`}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Kn}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Hd}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Nn}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Lb}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Hh}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Lf}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Lj}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{O`}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Ob}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Ln}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Mb}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Mf}}}{{Nl{{C`{Nj}}}}}}``{{}Ad}00{ce{}{}}00{c{{Bh{e}}}{}{}}00`{{}{{n{BjBl}}}}00{Odf}`{{{b{Jl}}{Bh{{Oh{Of}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{Oj}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{Ol}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{On}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@`}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@b}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@d}}}}}{{Nl{{C`{Nj}}}}}}```{b}00```````{{{b{Jl}}{Bh{Mj}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Hl}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{I`}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Id}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Ih}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Mn}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Nb}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Nf}}}{{Nl{{C`{Nj}}}}}}`{{{b{Jl}}{Bh{{Oh{A@f}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@h}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@j}}}}}{{Nl{{C`{Nj}}}}}}{{c{b{Cd}}}{{n{A@ll}}}{{AAj{{AA`{A@n}}}{{AAb{{AAd{A@n}}}}{AAf{AAh}}}}AAlAAnAB`}}{{Ej{b{Cd}}}{{n{A@ll}}}}{{Jl{b{Cd}}}{{n{A@ll}}}}{{{b{Ej}}{Bh{Il}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{J`}}}{{Nl{{C`{Nj}}}}}}{A@lf}```{{{b{c}}}e{}{}}0{{{b{Jl}}{Bh{{Oh{ABb}}}}}{{Nl{{C`{Nj}}}}}}{c{{n{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{Ej}}{Bh{Jd}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Jh}}}{{Nl{{C`{Nj}}}}}}{{{C`{c}}}{{C`{Cb}}}{}}00{{{b{hc}}}{{b{hCb}}}{}}00{{{b{c}}}{{b{Cb}}}{}}00``{ce{}{}}00`````````````{{{b{c}}d}f{}}``{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{ABd}}}ABd}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{ABd}}{b{hAj}}}Al}{cc{}}{{{b{c}}}c{}}{{Of{b{Cd}}}{{n{ABdl}}}}{{}Ad}?{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{Of}}}}}{{n{ABfl}}}}{b}{{{b{ABh}}{b{ABd}}{b{Cd}}}Ah}`{{{b{c}}}e{}{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}````{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}`{{{b{ABj}}{b{hAj}}}Al}{cc{}}{{Oj{b{Cd}}}{{n{ABjl}}}}{{}Ad}:{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{Oj}}}}}{{n{ABll}}}}{b}{{{b{ABn}}{b{ABj}}}Ah}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}``{{{b{c}}d}f{}}``{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{AC`}}}AC`}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{AC`}}{b{hAj}}}Al}{cc{}}{{{b{c}}}c{}}{{Ol{b{Cd}}}{{n{AC`l}}}}{{}Ad}?{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{Ol}}}}}{{n{ACbl}}}}{b}{{{b{{ACh{ACdACf}}}}{b{AC`}}{b{Cd}}}Ah}`{{{b{c}}}e{}{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}```{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{ACj}}{b{hAj}}}Al}{cc{}}{{On{b{Cd}}}{{n{ACjl}}}}{{}Ad}:{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{On}}}}}{{n{ACll}}}}``{b}{{{b{ACn}}{b{ACj}}}Ah}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}``{{{b{c}}d}f{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{AD`}}}AD`}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{cc{}}{{{b{c}}}c{}}{{}Ad}={c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{A@`}}}}}{{n{ADbl}}}}{b}`{{{b{c}}}e{}{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}```````{{{b{c}}d}f{}}00000`{{{b{c}}}{{b{e}}}{}{}}00000{{{b{hc}}}{{b{he}}}{}{}}00000{{{b{ADd}}}ADd}{{{b{ADf}}}ADf}{{{b{ADh}}}ADh}{{{b{ADj}}}ADj}{{{b{ADl}}}ADl}{{{b{ADn}}}ADn}{{{b{c}}{b{he}}}f{}{}}00000{{{b{c}}}f{}}00000{{}ADd}{{}ADf}{{}ADh}{{}ADj}{{}ADl}{{}ADn}{Ad{{b{c}}}{}}00000{Ad{{b{hc}}}{}}00000{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}00000{Adf}00000```{{AE`{b{ADd}}{b{Cd}}}{{Ef{AE`}}}}{{AEb{b{ADd}}{b{Cd}}}{{Ef{AEb}}}}{{{b{ADd}}{b{hAj}}}Al}{{{b{ADf}}{b{hAj}}}Al}{{{b{ADh}}{b{hAj}}}Al}{{{b{ADj}}{b{hAj}}}Al}{{{b{ADl}}{b{hAj}}}Al}{{{b{ADn}}{b{hAj}}}Al}{cc{}}00000{{{b{c}}}c{}}00000{{A@b{b{Cd}}}{{n{ADdl}}}}{{}Ad}00000{ce{}{}}00000{c{{Bh{e}}}{}{}}00000{{}{{n{BjBl}}}}00000`{{{b{Jl}}{Bh{{Oh{A@b}}}}}{{n{AEdl}}}}`````{b}00000``{{{b{c}}}e{}{}}00000{c{{n{e}}}{}{}}00000000000{{{b{c}}}Bn{}}00000{{{C`{c}}}{{C`{Cb}}}{}}00000{{{b{hc}}}{{b{hCb}}}{}}00000{{{b{c}}}{{b{Cb}}}{}}00000::::::``{{{AEh{{n{AEfEb}}}}AEjEh}f}{{{b{Jl}}{Bh{{Oh{A@f}}}}}{{n{AEll}}}}`{{{AEh{{n{AEnEb}}}}AEjEh}f}{{{b{Jl}}{Bh{{Oh{A@h}}}}}{{n{AF`l}}}}`{{{AEh{{n{AFbEb}}}}AEjEh}f}{{{b{Jl}}{Bh{{Oh{A@j}}}}}{{n{AFdl}}}}``{{{b{Jl}}{Bh{{Oh{ABb}}}}}{{n{AFfl}}}}","D":"BDb","p":[[1,"reference"],[5,"Private",877],[1,"unit"],[0,"mut"],[5,"SlotRange",0],[6,"GrpcError",277],[6,"Result",878],[5,"SlotDraw",0],[5,"EndorsementDraw",0],[1,"usize"],[5,"With",879],[1,"bool"],[5,"Formatter",880],[8,"Result",880],[1,"u64"],[10,"Hash",881],[10,"Sized",882],[10,"BuildHasher",881],[10,"Hasher",881],[5,"Request",883],[5,"Layout",884],[5,"LayoutError",884],[5,"TypeId",885],[5,"Box",886],[10,"Any",885],[5,"GrpcConfig",126],[5,"GrpcApiConfig",126],[6,"ServiceName",126],[10,"Deserializer",887],[10,"Error",888],[6,"Error",889],[6,"TimeError",890],[6,"MassaHashError",891],[6,"ExecutionError",892],[6,"ProtocolError",893],[6,"FactoryError",894],[6,"MassaSignatureError",895],[6,"WalletError",896],[6,"ModelsError",897],[6,"ConsensusError",898],[5,"Status",899],[5,"Error",900],[6,"Option",901],[5,"String",902],[5,"MassaPrivateGrpc",361],[5,"AddStakingSecretKeysRequest",903],[5,"AddStakingSecretKeysResponse",903],[5,"AddToBootstrapBlacklistRequest",903],[5,"AddToBootstrapBlacklistResponse",903],[5,"AddToBootstrapWhitelistRequest",903],[5,"AddToBootstrapWhitelistResponse",903],[5,"AddToPeersWhitelistRequest",903],[5,"AddToPeersWhitelistResponse",903],[5,"AllowEveryoneToBootstrapRequest",903],[5,"AllowEveryoneToBootstrapResponse",903],[5,"BanNodesByIdsRequest",903],[5,"BanNodesByIdsResponse",903],[5,"BanNodesByIpsRequest",903],[5,"BanNodesByIpsResponse",903],[5,"GetBootstrapBlacklistRequest",903],[5,"GetBootstrapBlacklistResponse",903],[5,"GetBootstrapWhitelistRequest",903],[5,"GetBootstrapWhitelistResponse",903],[5,"GetMipStatusRequest",903],[5,"GetMipStatusResponse",903],[5,"GetNodeStatusRequest",903],[5,"GetNodeStatusResponse",903],[5,"GetPeersWhitelistRequest",903],[5,"GetPeersWhitelistResponse",903],[5,"RemoveFromBootstrapBlacklistRequest",903],[5,"RemoveFromBootstrapBlacklistResponse",903],[5,"RemoveFromBootstrapWhitelistRequest",903],[5,"RemoveFromBootstrapWhitelistResponse",903],[5,"RemoveFromPeersWhitelistRequest",903],[5,"RemoveFromPeersWhitelistResponse",903],[5,"RemoveStakingAddressesRequest",903],[5,"RemoveStakingAddressesResponse",903],[5,"ShutdownGracefullyRequest",903],[5,"ShutdownGracefullyResponse",903],[5,"SignMessagesRequest",903],[5,"SignMessagesResponse",903],[5,"UnbanNodesByIdsRequest",903],[5,"UnbanNodesByIdsResponse",903],[5,"UnbanNodesByIpsRequest",903],[5,"UnbanNodesByIpsResponse",903],[5,"MassaPublicGrpc",361],[5,"ExecuteReadOnlyCallRequest",903],[5,"ExecuteReadOnlyCallResponse",903],[5,"GetBlocksRequest",903],[5,"GetBlocksResponse",903],[5,"GetDatastoreEntriesRequest",903],[5,"GetDatastoreEntriesResponse",903],[5,"GetEndorsementsRequest",903],[5,"GetEndorsementsResponse",903],[5,"GetNextBlockBestParentsRequest",903],[5,"GetNextBlockBestParentsResponse",903],[5,"GetOperationsRequest",903],[5,"GetOperationsResponse",903],[5,"GetScExecutionEventsRequest",903],[5,"GetScExecutionEventsResponse",903],[5,"GetSelectorDrawsRequest",903],[5,"GetSelectorDrawsResponse",903],[5,"GetStakersRequest",903],[5,"GetStakersResponse",903],[5,"GetStatusRequest",903],[5,"GetStatusResponse",903],[5,"GetTransactionsThroughputRequest",903],[5,"GetTransactionsThroughputResponse",903],[5,"QueryStateRequest",903],[5,"QueryStateResponse",903],[5,"SearchBlocksRequest",903],[5,"SearchBlocksResponse",903],[5,"SearchEndorsementsRequest",903],[5,"SearchEndorsementsResponse",903],[5,"SearchOperationsRequest",903],[5,"SearchOperationsResponse",903],[10,"Future",904],[5,"Pin",905],[5,"GetOperationAbiCallStacksRequest",903],[5,"GetSlotAbiCallStacksRequest",903],[5,"GetSlotTransfersRequest",903],[5,"HealthReporter",906],[5,"NewBlocksRequest",903],[5,"Streaming",907],[5,"NewEndorsementsRequest",903],[5,"NewFilledBlocksRequest",903],[5,"NewOperationsRequest",903],[5,"NewSlotAbiCallStacksRequest",903],[5,"NewSlotExecutionOutputsRequest",903],[5,"NewSlotTransfersRequest",903],[5,"SendBlocksRequest",903],[5,"SendEndorsementsRequest",903],[5,"SendOperationsRequest",903],[5,"StopHandle",361],[8,"BoxBody",908],[5,"Request",909],[17,"Response"],[5,"Response",910],[17,"Error"],[6,"Infallible",911],[10,"Service",912],[10,"NamedService",913],[10,"Clone",914],[10,"Send",882],[5,"TransactionsThroughputRequest",903],[5,"Filter",526],[8,"NewBlocksStreamType",526],[8,"SecureShareBlock",915],[5,"Filter",560],[8,"NewEndorsementsStreamType",560],[8,"SecureShareEndorsement",916],[5,"Filter",588],[8,"NewFilledBlocksStreamType",588],[5,"BlockHeader",917],[6,"BlockId",918],[5,"SecureShare",919],[5,"Filter",622],[8,"NewOperationsStreamType",622],[8,"SecureShareOperation",920],[5,"SlotAbiCallStack",650],[8,"NewSlotABICallStacksStreamType",650],[5,"Filter",679],[5,"AsyncPoolChangesFilter",679],[5,"ExecutedDenounciationFilter",679],[5,"ExecutionEventFilter",679],[5,"ExecutedOpsChangesFilter",679],[5,"LedgerChangesFilter",679],[6,"SlotExecutionOutput",921],[5,"ExecutionOutput",921],[8,"NewSlotExecutionOutputsStreamType",679],[5,"SendBlocksResponse",903],[5,"Sender",922],[6,"Code",899],[8,"SendBlocksStreamType",865],[5,"SendEndorsementsResponse",903],[8,"SendEndorsementsStreamType",868],[5,"SendOperationsResponse",903],[8,"SendOperationsStreamType",871],[8,"TransactionsThroughputStreamType",874]],"r":[],"b":[[298,"impl-Debug-for-GrpcError"],[299,"impl-Display-for-GrpcError"],[300,"impl-From%3CError%3E-for-GrpcError"],[301,"impl-From%3CTimeError%3E-for-GrpcError"],[302,"impl-From%3CMassaHashError%3E-for-GrpcError"],[303,"impl-From%3CExecutionError%3E-for-GrpcError"],[304,"impl-From%3CProtocolError%3E-for-GrpcError"],[305,"impl-From%3CFactoryError%3E-for-GrpcError"],[306,"impl-From%3CMassaSignatureError%3E-for-GrpcError"],[307,"impl-From%3CWalletError%3E-for-GrpcError"],[308,"impl-From%3CModelsError%3E-for-GrpcError"],[309,"impl-From%3CConsensusError%3E-for-GrpcError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEwCTgABAAEABAACAAgABQAPAAgAGQAPACoAFABAAAIARgAFAE0AAgBRAAIAVwAIAGUAAABnABcAhAACAIoABQCVAAgAnwALAKwAAgC2AAIAvAACAMQAAgDMAAIA0QACAPAAAgD+ABcAJAESADgBAAA6AQEAPQEJAFABAABiAQAAZAEAAG0BAQB2AQUAfQEFAIYBCwCZAQIApAEAAKkBAQCwAQIAtgECALoBAgDJAQIA3wEAAOUBAADoAQEA6wEIAPYBCAABAgIADwIAABECDAAfAgIAIwIBACYCCwAzAgkAPgIBAEECAQBEAgkATwIMAF0CAgBhAgEAZAILAHECBwB6AgEAfQIBAIACCgCMAgoAmAIBAJsCAQCeAgAAoAINAK8CRQD2AgYAAwMMABYDDAAkAzwAZgMAAGkDAAA="}],\ -["massa_hash",{"t":"SSFFFFFFGPPCCCCGPPNNNNNNNNNNNNNNFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSS","n":["HASH_SIZE_BYTES","HASH_XOF_SIZE_BYTES","Hash","HashDeserializer","HashSerializer","HashXof","HashXofDeserializer","HashXofSerializer","MassaHashError","ParsingError","WrongPrefix","error","hash","hash_xof","settings","MassaHashError","ParsingError","WrongPrefix","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","into","to_owned","to_string","try_from","try_into","type_id","Hash","HashDeserializer","HashSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compute_from","compute_from_tuple","default","default","deserialize","deserialize","eq","fmt","fmt","from","from","from","from_bs58_check","from_bytes","from_str","hash","into","into","into","into_bytes","new","new","partial_cmp","serialize","serialize","to_bs58_check","to_bytes","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","zero","HashXof","HashXofDeserializer","HashXofSerializer","bitxor","bitxor_assign","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","compute_from","compute_from_tuple","default","default","deserialize","eq","fmt","fmt","from","from","from","from_bytes","into","into","into","new","new","serialize","to_bs58_check","to_bytes","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","HASH_SIZE_BYTES","HASH_XOF_SIZE_BYTES"],"q":[[0,"massa_hash"],[15,"massa_hash::error"],[32,"massa_hash::hash"],[94,"massa_hash::hash_xof"],[148,"massa_hash::settings"],[150,"core::fmt"],[151,"alloc::string"],[152,"core::result"],[153,"core::any"],[154,"core::cmp"],[155,"serde::de"],[156,"nom::internal"],[157,"nom::error"],[158,"core::hash"],[159,"core::option"],[160,"serde::ser"],[161,"alloc::vec"],[162,"massa_serialization"]],"i":[0,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,10,11,12,10,11,12,10,11,12,10,11,12,10,10,11,12,10,10,10,11,12,10,12,10,10,10,10,11,12,10,10,10,10,10,11,12,10,11,12,10,10,11,10,10,10,11,12,10,10,10,11,12,10,11,12,10,11,12,10,0,0,0,28,28,28,29,30,28,29,30,28,29,30,28,29,30,28,28,29,30,28,28,29,30,30,28,28,28,28,29,30,28,28,29,30,29,30,29,28,28,28,29,30,28,28,29,30,28,29,30,28,29,30,0,0],"f":"``````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{f}}{b{dj}}}l}0{cc{}}{ce{}{}}{{{b{c}}}e{}{}}{{{b{c}}}n{}}{c{{A`{e}}}{}{}}0{{{b{c}}}Ab{}}```;;;:::{{{b{Ad}}}Ad}{{{b{Af}}}Af}{{{b{Ah}}}Ah};;;::::{{{b{Ad}}{b{Ad}}}Aj}{{{b{{An{Al}}}}}Ad}{{{b{{An{{b{{An{Al}}}}}}}}}Ad}{{}Af}{{}Ah}{c{{A`{Ad}}}B`}{{{b{Ah}}{b{{An{Al}}}}}{{Bb{{b{{An{Al}}}}Adc}}}{{Bd{{b{{An{Al}}}}}}{Bf{{b{{An{Al}}}}}}}}{{{b{Ad}}{b{Ad}}}Bh}{{{b{Ad}}{b{dj}}}l}0{cc{}}00{{{b{Bj}}}{{A`{Adf}}}}{{{b{{Bl{Al}}}}}Ad}{{{b{Bj}}}{{A`{Adc}}}{}}{{{b{Ad}}{b{dc}}}hBn}{ce{}{}}00{Ad{{Bl{Al}}}}<;{{{b{Ad}}{b{Ad}}}{{C`{Aj}}}}{{{b{Ad}}c}A`Cb}{{{b{Af}}{b{Ad}}{b{d{Cd{Al}}}}}{{A`{hCf}}}}{{{b{Ad}}}n}{{{b{Ad}}}{{b{{Bl{Al}}}}}}{{{b{c}}}e{}{}}00{{{b{c}}}n{}}{{{b{{An{Al}}}}}{{A`{Adc}}}{}}{c{{A`{e}}}{}{}}00000{{{b{c}}}Ab{}}00{{}Ad}```{{ChCh}Ch}{{{b{dCh}}Ch}h}{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Ch}}}Ch}{{{b{Cj}}}Cj}{{{b{Cl}}}Cl}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}000{{{b{{An{Al}}}}}Ch}{{{b{{An{{b{{An{Al}}}}}}}}}Ch}{{}Cj}{{}Cl}{{{b{Cl}}{b{{An{Al}}}}}{{Bb{{b{{An{Al}}}}Chc}}}{{Bd{{b{{An{Al}}}}}}{Bf{{b{{An{Al}}}}}}}}{{{b{Ch}}{b{Ch}}}Bh}{{{b{Ch}}{b{dj}}}l}0{cc{}}00{{{b{{Bl{Al}}}}}Ch}{ce{}{}}0076{{{b{Cj}}{b{Ch}}{b{d{Cd{Al}}}}}{{A`{hCf}}}}{{{b{Ch}}}n}{{{b{Ch}}}{{b{{Bl{Al}}}}}}{{{b{c}}}e{}{}}00{{{b{c}}}n{}}{c{{A`{e}}}{}{}}00000{{{b{c}}}Ab{}}00``","D":"Gf","p":[[1,"reference"],[0,"mut"],[6,"MassaHashError",15],[1,"unit"],[5,"Formatter",150],[8,"Result",150],[5,"String",151],[6,"Result",152],[5,"TypeId",153],[5,"Hash",32],[5,"HashSerializer",32],[5,"HashDeserializer",32],[6,"Ordering",154],[1,"u8"],[1,"slice"],[10,"Deserializer",155],[8,"IResult",156],[10,"ParseError",157],[10,"ContextError",157],[1,"bool"],[1,"str"],[1,"array"],[10,"Hasher",158],[6,"Option",159],[10,"Serializer",160],[5,"Vec",161],[6,"SerializeError",162],[5,"HashXof",94],[5,"HashXofSerializer",94],[5,"HashXofDeserializer",94]],"r":[[0,148],[1,148],[2,32],[3,32],[4,32],[5,94],[6,94],[7,94],[8,15]],"b":[[23,"impl-Display-for-MassaHashError"],[24,"impl-Debug-for-MassaHashError"],[59,"impl-Debug-for-Hash"],[60,"impl-Display-for-Hash"],[121,"impl-Debug-for-HashXof%3CSIZE%3E"],[122,"impl-Display-for-HashXof%3CSIZE%3E"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFsAEAAMAAMAEwAGABwABAAkABAANwABADsAAgBDAAEASwAAAE0AAABQAAMAVQAIAGIAEQB2AAEAeQACAIUAAACIAAwA"}],\ -["massa_ledger_exports",{"t":"PSPSPPSFFPFFFGFFFFKFFFFFFGPPSOOOOOOOOMOOOOOOOOOCCOOOOHOOOMOCMMMMOMCOOOOCCOOMCOOMOOOOOOOOFNNNNNNNNONNOOONNNNNKMMMMMMMMMPPGPNNNNNNNNNNNNPSPSPPPSPSFFFGFGFPSPOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNOOFFFFFFFFOOONNOONNNNNNNNNNNNNNNNOOONNNNNNNOOONNNNNNNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOONNNNNNNNFFFOONONNNNNNOOONNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["BALANCE","BALANCE_IDENT","BYTECODE","BYTECODE_IDENT","ContainerInconsistency","DATASTORE","DATASTORE_IDENT","DatastoreUpdateDeserializer","DatastoreUpdateSerializer","FileError","Key","KeyDeserializer","KeySerializer","KeyType","LedgerChanges","LedgerChangesDeserializer","LedgerChangesSerializer","LedgerConfig","LedgerController","LedgerEntry","LedgerEntryDeserializer","LedgerEntrySerializer","LedgerEntryUpdate","LedgerEntryUpdateDeserializer","LedgerEntryUpdateSerializer","LedgerError","MissingEntry","VERSION","VERSION_IDENT","address","address_deserializer","address_deserializer","address_serializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","apply_changes_to_batch","balance","balance","balance_serializer","bytecode","bytecode","bytecode_deserializer","bytecode_deserializer","bytecode_serializer","bytecode_serializer","config","controller","datastore","datastore","datastore_deserializer","datastore_deserializer","datastore_prefix_from_address","datastore_serializer","datastore_serializer","entry_deserializer","entry_exists","entry_serializer","error","get_balance","get_bytecode","get_data_entry","get_datastore_keys","initial_ledger_path","is_key_value_valid","key","key_deserializer","key_type","key_type_deserializer","key_type_serializer","ledger_changes","ledger_entry","length_deserializer","length_deserializer","load_initial_ledger","mapping_grpc","max_datastore_value_length","max_key_length","reset","thread_count","u64_serializer","u64_serializer","value_deserializer","value_serializer","vec_u8_serializer","version_byte_deserializer","version_byte_serializer","LedgerConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","from","from_ref","initial_ledger_path","into","into_request","max_datastore_value_length","max_key_length","thread_count","to_owned","try_from","try_into","type_id","vzip","LedgerController","apply_changes_to_batch","entry_exists","get_balance","get_bytecode","get_data_entry","get_datastore_keys","is_key_value_valid","load_initial_ledger","reset","ContainerInconsistency","FileError","LedgerError","MissingEntry","borrow","borrow_mut","fmt","fmt","from","into","into_request","to_string","try_from","try_into","type_id","vzip","BALANCE","BALANCE_IDENT","BYTECODE","BYTECODE_IDENT","Balance","Bytecode","DATASTORE","DATASTORE_IDENT","Datastore","KEY_VERSION","Key","KeyDeserializer","KeySerializer","KeyType","KeyTypeDeserializer","KeyTypeId","KeyTypeSerializer","VERSION","VERSION_IDENT","Version","address","address_deserializer","address_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","datastore_prefix_from_address","default","default","deserialize","deserialize","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","key_type","key_type_deserializer","key_type_serializer","new","new","new","new","new","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vec_u8_deserializer","vec_u8_serializer","version_byte_deserializer","version_byte_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_datastore_key_length","with_datastore_key_length","DatastoreUpdateDeserializer","DatastoreUpdateSerializer","LedgerChanges","LedgerChangesDeserializer","LedgerChangesSerializer","LedgerEntryUpdate","LedgerEntryUpdateDeserializer","LedgerEntryUpdateSerializer","address_deserializer","address_serializer","amount_deserializer","apply","apply","balance","balance_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytecode","bytecode_deserializer","bytecode_serializer","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","create_address","datastore","datastore_deserializer","datastore_serializer","default","default","default","default","default","delete_data_entry","deserialize","deserialize","deserialize","deserialize","deserialize","entry_deserializer","entry_exists_or_else","entry_serializer","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","get","get_balance_or_else","get_bytecode_or_else","get_bytecode_updates","get_data_entry_or_else","has_data_entry_or_else","has_writes","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","key_deserializer","length_deserializer","length_deserializer","new","new","new","new","new","new","serialize","serialize","serialize","serialize","serialize","set_balance","set_bytecode","set_data_entry","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u64_serializer","u64_serializer","value_deserializer","value_serializer","vec_u8_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","LedgerEntry","LedgerEntryDeserializer","LedgerEntrySerializer","amount_deserializer","amount_serializer","apply","balance","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bytecode","bytecode_deserializer","bytecode_serializer","clone","clone_into","clone_to_uninit","datastore","datastore_deserializer","datastore_serializer","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","new","new","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_ledger_exports"],[88,"massa_ledger_exports::config"],[108,"massa_ledger_exports::controller"],[118,"massa_ledger_exports::error"],[134,"massa_ledger_exports::key"],[296,"massa_ledger_exports::ledger_changes"],[455,"massa_ledger_exports::ledger_entry"],[514,"massa_db_exports::db_batch"],[515,"massa_models::address"],[516,"alloc::vec"],[517,"massa_models::amount"],[518,"core::option"],[519,"massa_models::bytecode"],[520,"alloc::collections::btree::set"],[521,"core::result"],[522,"core::fmt"],[523,"tonic::request"],[524,"core::any"],[525,"alloc::string"],[526,"nom::internal"],[527,"nom::error"],[528,"massa_serialization"],[529,"num_enum"],[530,"massa_models::types"],[531,"alloc::collections::btree::map"],[532,"serde::de"],[533,"core::ops::function"],[534,"serde::ser"]],"i":[25,0,25,0,16,25,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,25,0,28,44,30,39,29,43,53,52,2,36,48,38,36,48,43,53,38,52,0,0,36,48,43,53,0,38,52,44,2,39,0,2,2,2,2,18,2,0,40,28,30,29,0,0,40,44,2,0,18,18,2,18,37,39,40,37,37,30,29,0,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,0,2,2,2,2,2,2,2,2,2,16,16,0,16,16,16,16,16,16,16,16,16,16,16,16,16,25,0,25,0,24,24,25,0,24,0,0,0,0,0,0,0,0,25,0,24,28,30,29,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,0,26,29,27,30,24,25,28,24,24,24,24,25,25,25,25,28,28,28,28,24,25,28,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,28,30,29,26,27,28,29,30,26,29,24,25,26,27,28,29,30,24,24,25,26,27,28,29,30,24,24,25,26,27,28,29,30,24,25,26,27,28,29,30,27,26,30,29,24,25,26,27,28,29,30,26,27,0,0,0,0,0,0,0,0,44,39,43,36,4,36,38,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,36,43,38,36,4,36,4,36,4,4,36,43,38,37,38,39,36,4,4,40,43,44,36,4,44,4,39,36,4,36,36,36,36,4,4,4,4,36,4,37,40,38,43,39,44,36,4,36,4,4,4,4,4,4,4,4,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,40,40,44,37,40,38,43,39,44,37,38,39,36,4,4,4,4,36,4,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,37,39,40,37,37,37,40,38,43,39,44,36,4,0,0,0,53,52,48,48,52,53,48,52,53,48,48,53,52,48,48,48,48,53,52,52,48,53,48,48,48,48,48,48,48,52,53,48,48,52,53,48,52,53,48,52,53,52,48,48,52,53,48,52,53,48,52,53,48,52,53,48],"f":"`````````````````````````````````````{{{f{bd}}h{f{bj}}}l}```````````````{{{f{n}}{f{{Ab{A`}}}}}{{Ad{A`}}}}```{{{f{d}}{f{n}}}Af}``{{{f{d}}{f{n}}}{{Aj{Ah}}}}{{{f{d}}{f{n}}}{{Aj{Al}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{Ad{A`}}}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{An{{Ad{A`}}}}}}}}`{{{f{d}}{f{{Ab{A`}}}}{f{{Ab{A`}}}}}Af}`````````{{{f{bd}}}{{Bb{lB`}}}}```{{{f{bd}}}l}`````````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Bd}}}Bd}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}{{{f{Bd}}{f{bBf}}}Bh}{cc{}}{{{f{c}}}c{}}`{ce{}{}}{c{{Bj{e}}}{}{}}```{{{f{c}}}e{}{}}{c{{Bb{e}}}{}{}}0{{{f{c}}}Bl{}}4`{{{f{bd}}h{f{bj}}}l}{{{f{d}}{f{n}}}Af}{{{f{d}}{f{n}}}{{Aj{Ah}}}}{{{f{d}}{f{n}}}{{Aj{Al}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{Ad{A`}}}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{An{{Ad{A`}}}}}}}}{{{f{d}}{f{{Ab{A`}}}}{f{{Ab{A`}}}}}Af}{{{f{bd}}}{{Bb{lB`}}}}{{{f{bd}}}l}````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{B`}}{f{bBf}}}Bh}0{cc{}}{ce{}{}}{c{{Bj{e}}}{}{}}{{{f{c}}}Bn{}}{c{{Bb{e}}}{}{}}0{{{f{c}}}Bl{}}4```````````````````````88888887777777{{{f{C`}}}C`}{{{f{Cb}}}Cb}{{{f{Cd}}}Cd}{{{f{Cf}}}Cf}{{{f{Ch}}}Ch}{{{f{Cj}}}Cj}{{{f{Cl}}}Cl}{{{f{c}}{f{be}}}l{}{}}000000{{{f{c}}}l{}}000000{{{f{n}}{f{{Ab{A`}}}}}{{Ad{A`}}}}{{}Cd}{{}Cj}{{{f{Cf}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}Cbc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{Cl}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}Chc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{C`}}{f{C`}}}Af}{{{f{Cb}}{f{Cb}}}Af}{{{f{Ch}}{f{Ch}}}Af}{{{f{c}}{f{e}}}Af{}{}}00000000000{{{f{C`}}{f{bBf}}}Bh}{{{f{Cb}}{f{bBf}}}Bh}{{{f{Ch}}{f{bBf}}}Bh}{cc{}}000000{{{f{c}}}c{}}000000{ce{}{}}000000{c{{Bj{e}}}{}{}}000000```{AfCd}{{A`Af}Cf}{{{f{n}}Cb}Ch}{AfCj}{{A`Af}Cl}{{{f{Cd}}{f{Cb}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Cj}}{f{Ch}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{c}}}e{}{}}000000{c{{Bb{e}}}{}{}}{A`{{Bb{C`{Df{C`}}}}}}111111{c{{Bb{C`{Df{C`}}}}}{}}2222222{{{f{c}}}Bl{}}000000````=======`````````````{{{f{bDh}}Dh}l}{{{f{bh}}h}l}``{{{f{c}}}{{f{e}}}{}{}}0000000{{{f{bc}}}{{f{be}}}{}{}}0000000```{{{f{Dh}}}Dh}{{{f{h}}}h}{{{f{c}}{f{be}}}l{}{}}0{{{f{c}}}l{}}0{{{f{bh}}{f{n}}}l}```{{}Dj}{{}Dl}{{}Dn}{{}Dh}{{}h}{{{f{bh}}n{Ad{A`}}}l}{{{f{E`}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}{Ed{{Ad{A`}}{Eb{{Ad{A`}}}}}}c}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{Ef}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}Dhc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{Eh}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}hc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{c{{Bb{Dh}}}Ej}{c{{Bb{h}}}Ej}`{{{f{h}}{f{n}}c}Af{{En{}{{El{Af}}}}}}`{{{f{Dh}}{f{Dh}}}Af}{{{f{h}}{f{h}}}Af}{{{f{c}}{f{e}}}Af{}{}}0000000{{{f{Dh}}{f{bBf}}}Bh}{{{f{h}}{f{bBf}}}Bh}{cc{}}0000000{{{f{c}}}c{}}0{{{f{h}}{f{n}}}{{Aj{{f{{Fb{F`Dh}}}}}}}}{{{f{h}}{f{n}}c}{{Aj{Ah}}}{{En{}{{El{{Aj{Ah}}}}}}}}{{{f{h}}{f{n}}c}{{Aj{Al}}}{{En{}{{El{{Aj{Al}}}}}}}}{{{f{h}}}{{Ad{Al}}}}{{{f{h}}{f{n}}{f{{Ab{A`}}}}c}{{Aj{{Ad{A`}}}}}{{En{}{{El{{Aj{{Ad{A`}}}}}}}}}}{{{f{h}}{f{n}}{f{{Ab{A`}}}}c}Af{{En{}{{El{Af}}}}}}{{{f{h}}{f{n}}{Aj{{Ad{A`}}}}}Af}{ce{}{}}0000000{c{{Bj{e}}}{}{}}0000000```{{}Dj}{{A`FdFd}E`}{{}Dl}{{A`FdFd}Ef}{{}Dn}{{FdA`FdFd}Eh}{{{f{Dj}}{f{{Ed{{Ad{A`}}{Eb{{Ad{A`}}}}}}}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Dl}}{f{Dh}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Dn}}{f{h}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Dh}}c}BbFf}{{{f{h}}c}BbFf}{{{f{bh}}nAh}l}{{{f{bh}}nAl}l}{{{f{bh}}n{Ad{A`}}{Ad{A`}}}l}{{{f{c}}}e{}{}}0{c{{Bb{e}}}{}{}}000000000000000{{{f{c}}}Bl{}}0000000`````{ce{}{}}0000000`````{{{f{bF`}}Dh}l}`{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00```{{{f{F`}}}F`}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}```{{}Fh}{{}F`}{{{f{Fj}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}F`c}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{c{{Bb{F`}}}Ej}{{{f{F`}}{f{F`}}}Af}{{{f{c}}{f{e}}}Af{}{}}000{{{f{F`}}{f{bBf}}}Bh}{cc{}}00{{{f{c}}}c{}}???{c{{Bj{e}}}{}{}}009{{FdA`Fd}Fj}{{{f{Fh}}{f{F`}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{F`}}c}BbFf}{{{f{c}}}e{}{}}{c{{Bb{e}}}{}{}}00000{{{f{c}}}Bl{}}00{ce{}{}}00","D":"ACj","p":[[0,"mut"],[10,"LedgerController",108],[1,"reference"],[5,"LedgerChanges",296],[8,"DBBatch",514],[1,"unit"],[6,"Address",515],[1,"u8"],[1,"slice"],[5,"Vec",516],[1,"bool"],[5,"Amount",517],[6,"Option",518],[5,"Bytecode",519],[5,"BTreeSet",520],[6,"LedgerError",118],[6,"Result",521],[5,"LedgerConfig",88],[5,"Formatter",522],[8,"Result",522],[5,"Request",523],[5,"TypeId",524],[5,"String",525],[6,"KeyTypeId",134],[6,"KeyType",134],[5,"KeyTypeSerializer",134],[5,"KeyTypeDeserializer",134],[5,"Key",134],[5,"KeySerializer",134],[5,"KeyDeserializer",134],[8,"IResult",526],[10,"ParseError",527],[10,"ContextError",527],[6,"SerializeError",528],[5,"TryFromPrimitiveError",529],[5,"LedgerEntryUpdate",296],[5,"DatastoreUpdateSerializer",296],[5,"LedgerEntryUpdateSerializer",296],[5,"LedgerChangesSerializer",296],[5,"DatastoreUpdateDeserializer",296],[6,"SetOrDelete",530],[5,"BTreeMap",531],[5,"LedgerEntryUpdateDeserializer",296],[5,"LedgerChangesDeserializer",296],[10,"Deserializer",532],[17,"Output"],[10,"FnOnce",533],[5,"LedgerEntry",455],[6,"SetUpdateOrDelete",530],[1,"u64"],[10,"Serializer",534],[5,"LedgerEntrySerializer",455],[5,"LedgerEntryDeserializer",455]],"r":[[1,134],[3,134],[6,134],[7,296],[8,296],[10,134],[11,134],[12,134],[13,134],[14,296],[15,296],[16,296],[17,88],[18,108],[19,455],[20,455],[21,455],[22,296],[23,296],[24,296],[25,118],[28,134],[53,134]],"b":[[124,"impl-Display-for-LedgerError"],[125,"impl-Debug-for-LedgerError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAGUBLgABAAMABgABAA4AAAATAAAAHAAKACkAAAAsAAMAMQAAADQAAQA3AAIAOwAAAEMABABKAAEATQAAAFIABgBaAAUAYQAAAGQAAABoAAYAewADAIEADwCUACwAwgACAMYAEQDfAAYA7QAJAPkAAAD8ACwAMQECADcBEABJAQcAUwEGAF4BAgBiAQwAdwEBAIgBCgCcAQEAoQEmAMsBAgDPAQUA1gEEANwBAwDhAQYA6wEAAO8BAgD1AQ0A"}],\ +["massa_final_state",{"t":"PFFKGPPPPPFFFOOOOOMCOCOOOOOOOOOCOOOOOOMOOOOCMOMMMMMMMMMMMMMMMMMOOMOOOOOOOOCOOOOOOOOOOOMMMMCOOFONNNNNOOOOONNNOOONNOOOOOOOONNNNNKMMMMMMMMMMMMMMMMMMMMMMMMMPGPPPPPNNNNNNNNNNNNNNNFNNONNNOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNONNNNNNNNHFFFNOOONNNNNNNNNOONNOOONNOOOOONNNNNNNNNNNOOONNOOOOONNNNNNNNNNNNNNN","n":["ExtendFromDbError","FinalState","FinalStateConfig","FinalStateController","FinalStateError","InvalidSlot","LedgerError","NonConsistentWithShutdownPeriodError","PosError","SnapshotError","StateChanges","StateChangesDeserializer","StateChangesSerializer","async_pool","async_pool_changes","async_pool_changes_deserializer","async_pool_changes_serializer","async_pool_config","compute_initial_draws","config","config","controller_trait","db","de_changes_deserializer","de_changes_serializer","deferred_call_changes","deferred_call_changes_deserializer","deferred_call_changes_serializer","deferred_call_registry","deferred_calls_config","endorsement_count","error","executed_denunciations","executed_denunciations_changes","executed_denunciations_config","executed_ops","executed_ops_changes","executed_ops_config","executed_ops_contains","execution_trail_hash_change","execution_trail_hash_change_deserializer","execution_trail_hash_change_serializer","final_history_length","final_state","finalize","genesis_timestamp","get_async_pool","get_database","get_deferred_call_registry","get_executed_denunciations","get_execution_trail_hash","get_fingerprint","get_last_slot_before_downtime","get_last_start_period","get_ledger","get_ledger_mut","get_mip_store","get_mip_store_mut","get_ops_exec_status","get_pos_state","get_pos_state_mut","get_slot","init_execution_trail_hash_to_batch","initial_rolls_path","initial_seed_string","is_db_valid","last_slot_before_downtime","last_start_period","ledger","ledger_backup_periods_interval","ledger_changes","ledger_changes_deserializer","ledger_changes_serializer","ledger_config","mapping_grpc","max_denunciations_per_block_header","max_executed_denunciations_length","mip_store","ops_changes_deserializer","ops_changes_serializer","periods_per_cycle","pos_changes","pos_changes_deserializer","pos_changes_serializer","pos_config","pos_state","recompute_caches","reset","set_last_slot_before_downtime","set_last_start_period","state_changes","t0","thread_count","FinalStateConfig","async_pool_config","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deferred_calls_config","endorsement_count","executed_denunciations_config","executed_ops_config","final_history_length","fmt","from","from_ref","genesis_timestamp","initial_rolls_path","initial_seed_string","into","into_request","ledger_backup_periods_interval","ledger_config","max_denunciations_per_block_header","max_executed_denunciations_length","periods_per_cycle","pos_config","t0","thread_count","to_owned","try_from","try_into","type_id","vzip","FinalStateController","compute_initial_draws","executed_ops_contains","finalize","get_async_pool","get_database","get_deferred_call_registry","get_executed_denunciations","get_execution_trail_hash","get_fingerprint","get_last_slot_before_downtime","get_last_start_period","get_ledger","get_ledger_mut","get_mip_store","get_mip_store_mut","get_ops_exec_status","get_pos_state","get_pos_state_mut","get_slot","init_execution_trail_hash_to_batch","is_db_valid","recompute_caches","reset","set_last_slot_before_downtime","set_last_start_period","ExtendFromDbError","FinalStateError","InvalidSlot","LedgerError","NonConsistentWithShutdownPeriodError","PosError","SnapshotError","borrow","borrow_mut","fmt","fmt","from","from","from","into","into_request","source","to_string","try_from","try_into","type_id","vzip","FinalState","_finalize","_is_db_valid","async_pool","borrow","borrow_mut","compute_initial_draws","config","db","deferred_call_registry","executed_denunciations","executed_ops","executed_ops_contains","feed_cycle_hash_and_selector_for_interpolation","finalize","from","get_async_pool","get_database","get_deferred_call_registry","get_executed_denunciations","get_execution_trail_hash","get_fingerprint","get_last_slot_before_downtime","get_last_start_period","get_ledger","get_ledger_mut","get_mip_store","get_mip_store_mut","get_ops_exec_status","get_pos_state","get_pos_state_mut","get_slot","init_execution_trail_hash_to_batch","interpolate_downtime","interpolate_multiple_cycles","interpolate_single_cycle","into","into_request","is_db_valid","last_slot_before_downtime","last_start_period","ledger","mip_store","new","new_derived_from_snapshot","pos_state","recompute_caches","reset","set_last_slot_before_downtime","set_last_start_period","try_from","try_into","type_id","vzip","async_msg_id_to_string","StateChanges","StateChangesDeserializer","StateChangesSerializer","apply","async_pool_changes","async_pool_changes_deserializer","async_pool_changes_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","de_changes_deserializer","de_changes_serializer","default","default","deferred_call_changes","deferred_call_changes_deserializer","deferred_call_changes_serializer","deserialize","deserialize","executed_denunciations_changes","executed_ops_changes","execution_trail_hash_change","execution_trail_hash_change_deserializer","execution_trail_hash_change_serializer","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","ledger_changes","ledger_changes_deserializer","ledger_changes_serializer","new","new","ops_changes_deserializer","ops_changes_serializer","pos_changes","pos_changes_deserializer","pos_changes_serializer","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_final_state"],[93,"massa_final_state::config"],[126,"massa_final_state::controller_trait"],[152,"massa_final_state::error"],[174,"massa_final_state::final_state"],[228,"massa_final_state::mapping_grpc"],[229,"massa_final_state::state_changes"],[295,"core::result"],[296,"massa_models::operation"],[297,"massa_models::slot"],[298,"massa_async_pool::pool"],[299,"massa_db_exports::controller"],[300,"massa_deferred_calls"],[301,"massa_executed_ops::executed_denunciations"],[302,"massa_hash::hash"],[303,"core::option"],[304,"massa_ledger_exports::controller"],[305,"alloc::boxed"],[306,"massa_versioning::versioning"],[307,"alloc::vec"],[308,"massa_pos_exports::pos_final_state"],[309,"massa_db_exports::db_batch"],[310,"core::fmt"],[311,"tonic::request"],[312,"core::any"],[313,"core::error"],[314,"alloc::string"],[315,"anyhow"],[316,"massa_pos_exports::controller_traits"],[317,"massa_async_pool::message"],[318,"nom::internal"],[319,"nom::error"],[320,"serde::de"],[321,"massa_deferred_calls::config"],[322,"massa_serialization"],[323,"serde::ser"]],"i":[5,0,0,0,0,5,5,5,5,5,0,0,0,34,10,39,38,25,2,0,34,0,34,39,38,10,39,38,34,25,25,0,34,10,25,34,10,25,2,10,39,38,25,0,2,25,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,25,25,2,34,34,34,25,10,39,38,25,0,25,25,34,39,38,25,10,39,38,25,34,2,2,2,2,0,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,0,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,10,10,39,38,38,39,10,38,39,10,10,10,10,39,38,38,10,10,39,38,39,10,10,10,10,39,38,10,38,39,10,10,38,39,10,38,39,10,10,39,38,38,39,39,38,10,39,38,38,10,10,38,39,10,38,39,10,38,39,10,38,39,10],"f":"``````````````````{{{f{bd}}}{{l{hj}}}}```````````````````{{{f{d}}{f{n}}}A`}`````{{{f{bd}}AbAd}h}`{{{f{d}}}{{f{Af}}}}{{{f{d}}}{{f{Ah}}}}{{{f{d}}}{{f{Aj}}}}{{{f{d}}}{{f{Al}}}}{{{f{d}}}An}0{{{f{d}}}{{f{{B`{Ab}}}}}}{{{f{d}}}Bb}{{{f{d}}}{{f{{Bf{Bd}}}}}}{{{f{bd}}}{{f{b{Bf{Bd}}}}}}{{{f{d}}}{{f{Bh}}}}{{{f{bd}}}{{f{bBh}}}}{{{f{d}}{f{{Bj{n}}}}}{{Bl{{B`{A`}}}}}}{{{f{d}}}{{f{Bn}}}}{{{f{bd}}}{{f{bBn}}}}{{{f{d}}}Ab}{{{f{bd}}{f{bC`}}}h}``{{{f{d}}}A`}````````````````````{{{f{bd}}}h}0{{{f{bd}}{B`{Ab}}}h}{{{f{bd}}Bb}h}`````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Cb}}}Cb}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}`````{{{f{Cb}}{f{bCd}}}Cf}{cc{}}{{{f{c}}}c{}}```{ce{}{}}{c{{Ch{e}}}{}{}}````````{{{f{c}}}e{}{}}{c{{l{e}}}{}{}}0{{{f{c}}}Cj{}}4`{{{f{bd}}}{{l{hj}}}}{{{f{d}}{f{n}}}A`}{{{f{bd}}AbAd}h}{{{f{d}}}{{f{Af}}}}{{{f{d}}}{{f{Ah}}}}{{{f{d}}}{{f{Aj}}}}{{{f{d}}}{{f{Al}}}}{{{f{d}}}An}0{{{f{d}}}{{f{{B`{Ab}}}}}}{{{f{d}}}Bb}{{{f{d}}}{{f{{Bf{Bd}}}}}}{{{f{bd}}}{{f{b{Bf{Bd}}}}}}{{{f{d}}}{{f{Bh}}}}{{{f{bd}}}{{f{bBh}}}}{{{f{d}}{f{{Bj{n}}}}}{{Bl{{B`{A`}}}}}}{{{f{d}}}{{f{Bn}}}}{{{f{bd}}}{{f{bBn}}}}{{{f{d}}}Ab}{{{f{bd}}{f{bC`}}}h}{{{f{d}}}A`}{{{f{bd}}}h}0{{{f{bd}}{B`{Ab}}}h}{{{f{bd}}Bb}h}```````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{j}}{f{bCd}}}Cf}0{Clj}{cc{}}{Cnj}{ce{}{}}{c{{Ch{e}}}{}{}}{{{f{j}}}{{B`{{f{D`}}}}}}{{{f{c}}}Db{}}{c{{l{e}}}{}{}}0{{{f{c}}}Cj{}}5`{{{f{bDd}}AbAd}{{Df{h}}}}{{{f{Dd}}}{{Df{h}}}}`=<{{{f{bDd}}}{{l{hj}}}}`````{{{f{Dd}}{f{n}}}A`}{{{f{bDd}}Bb}{{l{hj}}}}{{{f{bDd}}AbAd}h}={{{f{Dd}}}{{f{Af}}}}{{{f{Dd}}}{{f{Ah}}}}{{{f{Dd}}}{{f{Aj}}}}{{{f{Dd}}}{{f{Al}}}}{{{f{Dd}}}An}0{{{f{Dd}}}{{f{{B`{Ab}}}}}}{{{f{Dd}}}Bb}{{{f{Dd}}}{{f{{Bf{Bd}}}}}}{{{f{bDd}}}{{f{b{Bf{Bd}}}}}}{{{f{Dd}}}{{f{Bh}}}}{{{f{bDd}}}{{f{bBh}}}}{{{f{Dd}}{f{{Bj{n}}}}}{{Bl{{B`{A`}}}}}}{{{f{Dd}}}{{f{Bn}}}}{{{f{bDd}}}{{f{bBn}}}}{{{f{Dd}}}Ab}{{{f{bDd}}{f{bC`}}}h}{{{f{bDd}}}{{l{hj}}}}{{{f{bDd}}AbAbBbBb}{{l{hj}}}}{{{f{bDd}}AbAb}{{l{hj}}}}{ce{}{}}{c{{Ch{e}}}{}{}}{{{f{Dd}}}A`}````{{AhCb{Bf{Bd}}{Bf{Dh}}BhA`}{{l{Ddj}}}}{{AhCb{Bf{Bd}}{Bf{Dh}}BhBb}{{l{Ddj}}}}`{{{f{bDd}}}h}0{{{f{bDd}}{B`{Ab}}}h}{{{f{bDd}}Bb}h}{c{{l{e}}}{}{}}0{{{f{c}}}Cj{}}9{DjDb}```{{{f{bAd}}Ad}h}```{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{Ad}}}Ad}{{{f{c}}{f{be}}}h{}{}}{{{f{c}}}h{}}``{{}Dl}{{}Ad}```{{{f{Dn}}{f{{Bj{E`}}}}}{{Eb{{f{{Bj{E`}}}}Adc}}}{{Ed{{f{{Bj{E`}}}}}}{Ef{{f{{Bj{E`}}}}}}}}{c{{l{Ad}}}Eh}`````{{{f{Ad}}{f{bCd}}}Cf}{cc{}}00{{{f{c}}}c{}}{ce{}{}}00{c{{Ch{e}}}{}{}}00```8{{E`BbEjBbBbE`BbBbBbBbBbBbElBbEn}Dn}`````{{{f{Dl}}{f{Ad}}{f{b{Bl{E`}}}}}{{l{hF`}}}}{{{f{Ad}}c}lFb}{{{f{c}}}e{}{}}{c{{l{e}}}{}{}}00000{{{f{c}}}Cj{}}00777","D":"AEj","p":[[0,"mut"],[10,"FinalStateController",126],[1,"reference"],[1,"unit"],[6,"FinalStateError",152],[6,"Result",295],[6,"OperationId",296],[1,"bool"],[5,"Slot",297],[5,"StateChanges",229],[5,"AsyncPool",298],[8,"ShareableMassaDBController",299],[5,"DeferredCallRegistry",300],[5,"ExecutedDenunciations",301],[5,"Hash",302],[6,"Option",303],[1,"u64"],[10,"LedgerController",304],[5,"Box",305],[5,"MipStore",306],[1,"slice"],[5,"Vec",307],[5,"PoSFinalState",308],[8,"DBBatch",309],[5,"FinalStateConfig",93],[5,"Formatter",310],[8,"Result",310],[5,"Request",311],[5,"TypeId",312],[6,"ExtendFromDbError",306],[6,"IsConsistentWithShutdownPeriodError",306],[10,"Error",313],[5,"String",314],[5,"FinalState",174],[8,"Result",315],[10,"SelectorController",316],[8,"AsyncMessageId",317],[5,"StateChangesSerializer",229],[5,"StateChangesDeserializer",229],[1,"u8"],[8,"IResult",318],[10,"ParseError",319],[10,"ContextError",319],[10,"Deserializer",320],[1,"u16"],[1,"u32"],[5,"DeferredCallsConfig",321],[6,"SerializeError",322],[10,"Serializer",323]],"r":[[1,174],[2,93],[3,126],[4,152],[10,229],[11,229],[12,229]],"b":[[161,"impl-Display-for-FinalStateError"],[162,"impl-Debug-for-FinalStateError"],[163,"impl-From%3CExtendFromDbError%3E-for-FinalStateError"],[165,"impl-From%3CIsConsistentWithShutdownPeriodError%3E-for-FinalStateError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAHoAIAAQAAEAFgAAABgAAQAbAAEAKQABAEgAAQBLAAAATwABAFMAAQBgAAQAagAAAGwAAABxAAAAegAEAKAABACmAAAAqAAGALAAAACzAAIAuwAAAL0AAAC/ABAA1AABAN0ACADrAA4A+wADAAIBAgAIAQAADAECABABAQAUAQEAFwEQAA=="}],\ +["massa_grpc",{"t":"FFFNNNONNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNCNNNONNNNNNNNNNNNNNNCOCCOOCNNNNNNNNNNNNNNNNNNNNNNNNFFPPGNNNOOONNNNNNOOOOONNNNNNNNNONNNNNNNNNNNNONNNOOOOOOONNNNNNNNNOOOOONNNOONNNNNNOONNNOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNPPPGPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHFFFNNNNNNNNNNNNNNNONNNNNNOOONNNNNNNNNNNNNOOONNNNNHNNNNNNNNNNNNNNNNNNOONNNNNNNNNONNNHONNNNNNNOOONNNOOOOOOONNNNNNNNONNNHNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNOONNNCCCCCCCCCCCFINOONNNNNNNNNNNNHNNNNHNHONNNNNNNNFIOONNNNNNONNHNNNNHNHNNNNNNNFINOONNNNNNNNNNNNHNNNNHNHONNNNNNNNFIONNNNNNNNHNNNNHOONHNNNNNNNIFNNNNNNNNNNNNNNNNHNONNNNNNNNFFFFFFINNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOHHNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNOHOOOOONNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNIIHHIHHIHHSIH","n":["EndorsementDraw","SlotDraw","SlotRange","__clone_box","__clone_box","__clone_box","block_producer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","check","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","config","default","default","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","end_slot","endorsement_draws","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","get_hash","get_hash","get_hash","handler","hash","hash","hash","index","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","pointer_metadata","pointer_metadata","pointer_metadata","private","producer","public","server","slot","start_slot","stream","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","GrpcApiConfig","GrpcConfig","Private","Public","ServiceName","__clone_box","__clone_box","__clone_box","accept_compressed","accept_http1","bind","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","certificate_authority_root_path","chain_id","client_certificate_authority_root_path","client_certificate_path","client_private_key_path","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","concurrency_limit_per_connection","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","draw_lookahead_period_count","drop","drop","drop","enable_cors","enable_health","enable_mtls","enable_reflection","enable_tls","enabled","endorsement_count","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","generate_self_signed_certificates","genesis_timestamp","http2_adaptive_window","http2_keepalive_interval","http2_keepalive_timeout","init","init","init","initial_connection_window_size","initial_stream_window_size","into","into","into","into_request","into_request","into_request","keypair","last_start_period","layout_raw","layout_raw","layout_raw","max_addresses_per_request","max_arguments","max_block_ids_per_request","max_channel_size","max_concurrent_streams","max_datastore_entries_per_request","max_datastore_value_length","max_decoding_message_size","max_denunciations_per_block_header","max_encoding_message_size","max_endorsement_ids_per_request","max_endorsements_per_message","max_filters_per_request","max_frame_size","max_function_name_length","max_gas_per_block","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operation_ids_per_request","max_operations_per_block","max_operations_per_message","max_parameter_size","max_query_items_per_request","max_slot_ranges_per_request","minimal_fees","name","periods_per_cycle","pointer_metadata","pointer_metadata","pointer_metadata","private","public","send_compressed","server_certificate_path","server_private_key_path","subject_alt_names","t0","tcp_keepalive","tcp_nodelay","thread_count","timeout","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","ConsensusError","ExecutionError","FactoryError","GrpcError","InternalServerError","InvalidArgument","MassaHashError","MassaSignatureError","ModelsError","ProtocolError","ReflectionError","TimeError","Unimplemented","WalletError","as_error","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","init","into","into_request","layout_raw","match_for_io_error","pointer_metadata","source","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","add_staking_secret_keys","add_to_bootstrap_blacklist","add_to_bootstrap_whitelist","add_to_peers_whitelist","allow_everyone_to_bootstrap","ban_nodes_by_ids","ban_nodes_by_ips","get_bootstrap_blacklist","get_bootstrap_whitelist","get_mip_status","get_node_status","get_peers_whitelist","remove_from_bootstrap_blacklist","remove_from_bootstrap_whitelist","remove_from_peers_whitelist","remove_staking_addresses","shutdown_gracefully","sign_messages","unban_nodes_by_ids","unban_nodes_by_ips","execute_read_only_call","get_blocks","get_datastore_entries","get_endorsements","get_next_block_best_parents","get_operations","get_sc_execution_events","get_selector_draws","get_stakers","get_status","get_transactions_throughput","query_state","search_blocks","search_endorsements","search_operations","MassaPrivateGrpc","MassaPublicGrpc","StopHandle","__clone_box","__clone_box","add_staking_secret_keys","add_to_bootstrap_blacklist","add_to_bootstrap_whitelist","add_to_peers_whitelist","allow_everyone_to_bootstrap","ban_nodes_by_ids","ban_nodes_by_ips","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bs_white_black_list","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","consensus_broadcasts","consensus_controller","consensus_controller","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","execute_read_only_call","execution_channels","execution_controller","execution_controller","from","from","from","from_ref","from_ref","generate_self_signed_certificates","get_blocks","get_bootstrap_blacklist","get_bootstrap_whitelist","get_datastore_entries","get_endorsements","get_mip_status","get_next_block_best_parents","get_node_status","get_operation_abi_call_stacks","get_operations","get_peers_whitelist","get_sc_execution_events","get_selector_draws","get_slot_abi_call_stacks","get_slot_transfers","get_stakers","get_status","get_transactions_throughput","grpc_config","grpc_config","init","init","init","into","into","into","into_request","into_request","into_request","keypair_factory","layout_raw","layout_raw","layout_raw","massa_service_status","mip_store","new_blocks","new_endorsements","new_filled_blocks","new_operations","new_slot_abi_call_stacks","new_slot_execution_outputs","new_slot_transfers","node_id","node_id","node_wallet","pointer_metadata","pointer_metadata","pointer_metadata","pool_broadcasts","pool_controller","pool_controller","protocol_config","protocol_config","protocol_controller","protocol_controller","query_state","remove_from_bootstrap_blacklist","remove_from_bootstrap_whitelist","remove_from_peers_whitelist","remove_staking_addresses","search_blocks","search_endorsements","search_operations","selector_controller","send_blocks","send_endorsements","send_operations","serve","serve","serve","shutdown_gracefully","sign_messages","stop","stop_cmd_sender","stop_cv","storage","to_owned","to_owned","transactions_throughput","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","unban_nodes_by_ids","unban_nodes_by_ips","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","version","version","vzip","vzip","vzip","new_blocks","new_endorsements","new_filled_blocks","new_operations","new_slot_abi_call_stacks","new_slot_execution_outputs","new_slot_transfers","send_blocks","send_endorsements","send_operations","tx_throughput","Filter","NewBlocksStreamType","__clone_box","addresses","block_ids","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","get_filter","init","into","into_request","layout_raw","new_blocks","pointer_metadata","should_send","slot_ranges","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Filter","NewEndorsementsStreamType","addresses","block_ids","borrow","borrow_mut","deref","deref_mut","deserialize","drop","endorsement_ids","fmt","from","get_filter","init","into","into_request","layout_raw","new_endorsements","pointer_metadata","should_send","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Filter","NewFilledBlocksStreamType","__clone_box","addresses","block_ids","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","get_filter","init","into","into_request","layout_raw","new_filled_blocks","pointer_metadata","should_send","slot_ranges","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Filter","NewOperationsStreamType","addresses","borrow","borrow_mut","deref","deref_mut","deserialize","drop","fmt","from","get_filter","init","into","into_request","layout_raw","new_operations","operation_ids","operation_types","pointer_metadata","should_send","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","NewSlotABICallStacksStreamType","SlotAbiCallStack","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","new_slot_abi_call_stacks","pointer_metadata","slot","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","AsyncPoolChangesFilter","ExecutedDenounciationFilter","ExecutedOpsChangesFilter","ExecutionEventFilter","Filter","LedgerChangesFilter","NewSlotExecutionOutputsStreamType","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","async_pool_changes_filter","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","default","default","default","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","executed_denounciation_filter","executed_ops_changes_filter","execution_event_filter","filter_map","filter_map_exec_output","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_filter","init","init","init","init","init","init","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","ledger_changes_filter","new_slot_execution_outputs","none","none","none","none","none","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","slot_ranges_filter","status_filter","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","NewSlotTransfersStreamType","SendBlocksStreamType","report_error","send_blocks","SendEndorsementsStreamType","report_error","send_endorsements","SendOperationsStreamType","report_error","send_operations","DEFAULT_THROUGHPUT_INTERVAL","TransactionsThroughputStreamType","transactions_throughput"],"q":[[0,"massa_grpc"],[126,"massa_grpc::config"],[277,"massa_grpc::error"],[326,"massa_grpc::private"],[346,"massa_grpc::public"],[361,"massa_grpc::server"],[515,"massa_grpc::stream"],[526,"massa_grpc::stream::new_blocks"],[560,"massa_grpc::stream::new_endorsements"],[588,"massa_grpc::stream::new_filled_blocks"],[622,"massa_grpc::stream::new_operations"],[650,"massa_grpc::stream::new_slot_abi_call_stacks"],[679,"massa_grpc::stream::new_slot_execution_outputs"],[864,"massa_grpc::stream::new_slot_transfers"],[865,"massa_grpc::stream::send_blocks"],[868,"massa_grpc::stream::send_endorsements"],[871,"massa_grpc::stream::send_operations"],[874,"massa_grpc::stream::tx_throughput"],[877,"dyn_clone::sealed"],[878,"core::result"],[879,"rkyv::with"],[880,"core::fmt"],[881,"core::hash"],[882,"core::marker"],[883,"tonic::request"],[884,"core::alloc::layout"],[885,"core::any"],[886,"alloc::boxed"],[887,"serde::de"],[888,"core::error"],[889,"massa_versioning::versioning_factory"],[890,"massa_wallet::error"],[891,"massa_models::error"],[892,"massa_hash::error"],[893,"massa_signature::error"],[894,"tonic_reflection::server"],[895,"massa_time::error"],[896,"massa_execution_exports::error"],[897,"massa_consensus_exports::error"],[898,"massa_protocol_exports::error"],[899,"tonic::status"],[900,"std::io::error"],[901,"core::option"],[902,"alloc::string"],[903,"massa_proto_rs::massa::api::v1"],[904,"core::future::future"],[905,"core::pin"],[906,"tonic_health::server"],[907,"tonic::codec::decode"],[908,"tonic::body"],[909,"http::request"],[910,"http::response"],[911,"core::convert"],[912,"tower_service"],[913,"tonic::server"],[914,"core::clone"],[915,"massa_models::block"],[916,"massa_models::endorsement"],[917,"massa_models::block_header"],[918,"massa_models::block_id"],[919,"massa_models::secure_share"],[920,"massa_models::operation"],[921,"massa_execution_exports::types"],[922,"tokio::sync::mpsc::bounded"]],"i":[0,0,0,5,8,9,8,5,8,9,5,8,9,5,5,8,9,5,8,9,5,8,9,0,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,5,8,9,5,5,5,5,5,5,8,8,8,8,8,8,9,9,9,9,9,9,0,5,8,9,5,8,9,5,8,9,5,8,9,0,5,8,9,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,0,9,0,0,8,5,0,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,5,8,9,0,0,28,28,0,26,27,28,26,26,26,26,27,28,26,27,28,26,26,26,26,26,26,27,28,26,27,28,26,27,28,26,26,27,28,26,27,28,26,26,27,27,28,28,26,26,27,28,26,26,26,26,26,26,26,26,27,28,26,27,28,26,27,28,26,26,26,26,26,26,27,28,26,26,26,27,28,26,27,28,26,26,26,27,28,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,28,27,27,26,26,26,26,26,26,26,26,26,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,26,27,28,6,6,6,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,86,45,45,45,45,45,45,45,134,45,86,134,45,86,45,45,86,45,86,45,86,86,45,86,134,45,86,134,45,86,134,45,86,134,45,86,86,86,45,86,134,45,86,45,86,0,86,45,45,86,86,45,86,45,86,86,45,86,86,86,86,86,86,86,45,86,134,45,86,134,45,86,134,45,86,86,134,45,86,0,45,86,86,86,86,86,86,86,45,86,45,134,45,86,86,45,86,45,86,45,86,86,45,45,45,45,86,86,86,86,86,86,86,0,45,86,45,45,134,134,45,86,45,86,86,134,45,86,134,45,86,134,45,86,45,45,134,45,86,134,45,86,134,45,86,45,86,134,45,86,0,0,0,0,0,0,0,0,0,0,0,0,0,146,146,146,146,146,146,146,146,146,146,146,146,146,146,146,0,146,146,146,146,0,146,0,146,146,146,146,146,146,146,146,146,0,0,149,149,149,149,149,149,149,149,149,149,149,0,149,149,149,149,0,149,0,149,149,149,149,149,149,149,0,0,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,0,152,152,152,152,0,152,0,152,152,152,152,152,152,152,152,152,0,0,157,157,157,157,157,157,157,157,157,0,157,157,157,157,0,157,157,157,0,157,157,157,157,157,157,157,0,0,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,0,160,160,160,160,160,160,160,160,160,160,0,0,0,0,0,0,0,162,163,164,165,166,167,162,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,162,162,0,0,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,0,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,0,163,164,165,166,167,162,163,164,165,166,167,162,162,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,162,163,164,165,166,167,0,0,0,0,0,0,0,0,0,0,0,0,0],"f":"```{{{b{c}}d}f{}}00`{{{b{c}}}{{b{e}}}{}{}}00{{{b{hc}}}{{b{he}}}{}{}}00{{{b{j}}}{{n{fl}}}}{{{b{j}}}j}{{{b{A`}}}A`}{{{b{Ab}}}Ab}{{{b{c}}{b{he}}}f{}{}}00{{{b{c}}}f{}}00`{{}j}{{}A`}{{}Ab}{Ad{{b{c}}}{}}00{Ad{{b{hc}}}{}}00{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}00{Adf}00``{{{b{j}}{b{j}}}Ah}{{{b{A`}}{b{A`}}}Ah}{{{b{Ab}}{b{Ab}}}Ah}{{{b{c}}{b{e}}}Ah{}{}}00000000000000000`{{{b{j}}{b{hAj}}}Al}{{{b{A`}}{b{hAj}}}Al}{{{b{Ab}}{b{hAj}}}Al}{cc{}}00{{{b{c}}}c{}}00{{{b{c}}{b{e}}}An{B`Bb}Bd}00`{{{b{j}}{b{hc}}}fBf}{{{b{A`}}{b{hc}}}fBf}{{{b{Ab}}{b{hc}}}fBf}`{{}Ad}00{ce{}{}}00{c{{Bh{e}}}{}{}}00{{}{{n{BjBl}}}}00{b}00```````{{{b{c}}}e{}{}}00{c{{n{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{C`{c}}}{{C`{Cb}}}{}}00{{{b{hc}}}{{b{hCb}}}{}}00{{{b{c}}}{{b{Cb}}}{}}00999`````{{{b{c}}d}f{}}00```{{{b{c}}}{{b{e}}}{}{}}00{{{b{hc}}}{{b{he}}}{}{}}00`````{{{b{Cd}}}Cd}{{{b{Cf}}}Cf}{{{b{Ch}}}Ch}{{{b{c}}{b{he}}}f{}{}}00{{{b{c}}}f{}}00`{Ad{{b{c}}}{}}00{Ad{{b{hc}}}{}}00{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{c{{n{Cd}}}Cj}1{c{{n{Cf}}}Cj}2{c{{n{Ch}}}Cj}`{Adf}00```````{{{b{Cd}}{b{hAj}}}Al}{{{b{Cf}}{b{hAj}}}Al}{{{b{Ch}}{b{hAj}}}Al}{cc{}}00{{{b{c}}}c{}}00`````{{}Ad}00``{ce{}{}}00{c{{Bh{e}}}{}{}}00``{{}{{n{BjBl}}}}00````````````````````````````{b}00```````````{{{b{c}}}e{}{}}00{c{{n{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{C`{c}}}{{C`{Cb}}}{}}00{{{b{hc}}}{{b{hCb}}}{}}00{{{b{c}}}{{b{Cb}}}{}}00999``````````````{{{b{c}}}{{b{Cl}}}{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{l}}{b{hAj}}}Al}0{Cnl}{D`l}{Dbl}{Ddl}{Dfl}{Dhl}{cc{}}{Djl}{Dll}{Dnl}{E`l}{{}Ad}{ce{}{}}{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Eb}}}{{Ef{{b{Ed}}}}}}{b}{{{b{l}}}{{Ef{{b{Cl}}}}}}{{{b{c}}}Eh{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}};{{{b{Ej}}{Bh{El}}}{{n{Enl}}}}{{{b{Ej}}{Bh{F`}}}{{n{Fbl}}}}{{{b{Ej}}{Bh{Fd}}}{{n{Ffl}}}}{{{b{Ej}}{Bh{Fh}}}{{n{Fjl}}}}{{{b{Ej}}{Bh{Fl}}}{{n{Fnl}}}}{{{b{Ej}}{Bh{G`}}}{{n{Gbl}}}}{{{b{Ej}}{Bh{Gd}}}{{n{Gfl}}}}{{{b{Ej}}{Bh{Gh}}}{{n{Gjl}}}}{{{b{Ej}}{Bh{Gl}}}{{n{Gnl}}}}{{{b{Ej}}{Bh{H`}}}{{n{Hbl}}}}{{{b{Ej}}{Bh{Hd}}}{{n{Hfl}}}}{{{b{Ej}}{Bh{Hh}}}{{n{Hjl}}}}{{{b{Ej}}{Bh{Hl}}}{{n{Hnl}}}}{{{b{Ej}}{Bh{I`}}}{{n{Ibl}}}}{{{b{Ej}}{Bh{Id}}}{{n{Ifl}}}}{{{b{Ej}}{Bh{Ih}}}{{n{Ijl}}}}{{{b{Ej}}{Bh{Il}}}{{n{Inl}}}}{{{b{Ej}}{Bh{J`}}}{{n{Jbl}}}}{{{b{Ej}}{Bh{Jd}}}{{n{Jfl}}}}{{{b{Ej}}{Bh{Jh}}}{{n{Jjl}}}}{{{b{Jl}}{Bh{Jn}}}{{n{K`l}}}}{{{b{Jl}}{Bh{Kb}}}{{n{Kdl}}}}{{{b{Jl}}{Bh{Kf}}}{{n{Khl}}}}{{{b{Jl}}{Bh{Kj}}}{{n{Kll}}}}{{{b{Jl}}{Bh{Kn}}}{{n{L`l}}}}{{{b{Jl}}{Bh{Lb}}}{{n{Ldl}}}}{{{b{Jl}}{Bh{Lf}}}{{n{Lhl}}}}{{{b{Jl}}{Bh{Lj}}}{{n{Lll}}}}{{{b{Jl}}{Bh{Ln}}}{{n{M`l}}}}{{{b{Jl}}{Bh{Mb}}}{{n{Mdl}}}}{{{b{Jl}}{Bh{Mf}}}{{n{Mhl}}}}{{{b{Jl}}{Bh{Mj}}}{{n{Mll}}}}{{{b{Jl}}{Bh{Mn}}}{{n{N`l}}}}{{{b{Jl}}{Bh{Nb}}}{{n{Ndl}}}}{{{b{Jl}}{Bh{Nf}}}{{n{Nhl}}}}```{{{b{c}}d}f{}}0{{{b{Ej}}{Bh{El}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{F`}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Fd}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Fh}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Fl}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{G`}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Gd}}}{{Nl{{C`{Nj}}}}}}{{{b{c}}}{{b{e}}}{}{}}00{{{b{hc}}}{{b{he}}}{}{}}00`{{{b{Ej}}}Ej}{{{b{Jl}}}Jl}{{{b{c}}{b{he}}}f{}{}}0{{{b{c}}}f{}}0```{Ad{{b{c}}}{}}00{Ad{{b{hc}}}{}}00{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}00{Adf}00{{{b{Jl}}{Bh{Jn}}}{{Nl{{C`{Nj}}}}}}```{cc{}}00{{{b{c}}}c{}}0{{{b{Cd}}}f}{{{b{Jl}}{Bh{Kb}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Gh}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Gl}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Kf}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Kj}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{H`}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Kn}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Hd}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Nn}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Lb}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Hh}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Lf}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Lj}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{O`}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Ob}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Ln}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Mb}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Mf}}}{{Nl{{C`{Nj}}}}}}``{{}Ad}00{ce{}{}}00{c{{Bh{e}}}{}{}}00`{{}{{n{BjBl}}}}00{Odf}`{{{b{Jl}}{Bh{{Oh{Of}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{Oj}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{Ol}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{On}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@`}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@b}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@d}}}}}{{Nl{{C`{Nj}}}}}}```{b}00```````{{{b{Jl}}{Bh{Mj}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Hl}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{I`}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Id}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Ih}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Mn}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Nb}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{Nf}}}{{Nl{{C`{Nj}}}}}}`{{{b{Jl}}{Bh{{Oh{A@f}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@h}}}}}{{Nl{{C`{Nj}}}}}}{{{b{Jl}}{Bh{{Oh{A@j}}}}}{{Nl{{C`{Nj}}}}}}{{c{b{Cd}}}{{n{A@ll}}}{{AAj{{AA`{A@n}}}{{AAb{{AAd{A@n}}}}{AAf{AAh}}}}AAlAAnAB`}}{{Ej{b{Cd}}}{{n{A@ll}}}}{{Jl{b{Cd}}}{{n{A@ll}}}}{{{b{Ej}}{Bh{Il}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{J`}}}{{Nl{{C`{Nj}}}}}}{A@lf}```{{{b{c}}}e{}{}}0{{{b{Jl}}{Bh{{Oh{ABb}}}}}{{Nl{{C`{Nj}}}}}}{c{{n{e}}}{}{}}00000{{{b{c}}}Bn{}}00{{{b{Ej}}{Bh{Jd}}}{{Nl{{C`{Nj}}}}}}{{{b{Ej}}{Bh{Jh}}}{{Nl{{C`{Nj}}}}}}{{{C`{c}}}{{C`{Cb}}}{}}00{{{b{hc}}}{{b{hCb}}}{}}00{{{b{c}}}{{b{Cb}}}{}}00``{ce{}{}}00`````````````{{{b{c}}d}f{}}``{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{ABd}}}ABd}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{ABd}}{b{hAj}}}Al}{cc{}}{{{b{c}}}c{}}{{Of{b{Cd}}}{{n{ABdl}}}}{{}Ad}?{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{Of}}}}}{{n{ABfl}}}}{b}{{{b{ABh}}{b{ABd}}{b{Cd}}}Ah}`{{{b{c}}}e{}{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}````{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}`{{{b{ABj}}{b{hAj}}}Al}{cc{}}{{Oj{b{Cd}}}{{n{ABjl}}}}{{}Ad}:{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{Oj}}}}}{{n{ABll}}}}{b}{{{b{ABn}}{b{ABj}}}Ah}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}``{{{b{c}}d}f{}}``{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{AC`}}}AC`}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{AC`}}{b{hAj}}}Al}{cc{}}{{{b{c}}}c{}}{{Ol{b{Cd}}}{{n{AC`l}}}}{{}Ad}?{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{Ol}}}}}{{n{ACbl}}}}{b}{{{b{{ACh{ACdACf}}}}{b{AC`}}{b{Cd}}}Ah}`{{{b{c}}}e{}{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}```{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{{{b{ACj}}{b{hAj}}}Al}{cc{}}{{On{b{Cd}}}{{n{ACjl}}}}{{}Ad}:{c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{On}}}}}{{n{ACll}}}}``{b}{{{b{ACn}}{b{ACj}}}Ah}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}``{{{b{c}}d}f{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{hc}}}{{b{he}}}{}{}}{{{b{AD`}}}AD`}{{{b{c}}{b{he}}}f{}{}}{{{b{c}}}f{}}{Ad{{b{c}}}{}}{Ad{{b{hc}}}{}}{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}{Adf}{cc{}}{{{b{c}}}c{}}{{}Ad}={c{{Bh{e}}}{}{}}{{}{{n{BjBl}}}}{{{b{Jl}}{Bh{{Oh{A@`}}}}}{{n{ADbl}}}}{b}`{{{b{c}}}e{}{}}{c{{n{e}}}{}{}}0{{{b{c}}}Bn{}}{{{C`{c}}}{{C`{Cb}}}{}}{{{b{hc}}}{{b{hCb}}}{}}{{{b{c}}}{{b{Cb}}}{}}{ce{}{}}```````{{{b{c}}d}f{}}00000`{{{b{c}}}{{b{e}}}{}{}}00000{{{b{hc}}}{{b{he}}}{}{}}00000{{{b{ADd}}}ADd}{{{b{ADf}}}ADf}{{{b{ADh}}}ADh}{{{b{ADj}}}ADj}{{{b{ADl}}}ADl}{{{b{ADn}}}ADn}{{{b{c}}{b{he}}}f{}{}}00000{{{b{c}}}f{}}00000{{}ADd}{{}ADf}{{}ADh}{{}ADj}{{}ADl}{{}ADn}{Ad{{b{c}}}{}}00000{Ad{{b{hc}}}{}}00000{{{b{c}}{b{he}}}{{n{{Af{gi}}}}}{}{}{}{}}00000{Adf}00000```{{AE`{b{ADd}}{b{Cd}}}{{Ef{AE`}}}}{{AEb{b{ADd}}{b{Cd}}}{{Ef{AEb}}}}{{{b{ADd}}{b{hAj}}}Al}{{{b{ADf}}{b{hAj}}}Al}{{{b{ADh}}{b{hAj}}}Al}{{{b{ADj}}{b{hAj}}}Al}{{{b{ADl}}{b{hAj}}}Al}{{{b{ADn}}{b{hAj}}}Al}{cc{}}00000{{{b{c}}}c{}}00000{{A@b{b{Cd}}}{{n{ADdl}}}}{{}Ad}00000{ce{}{}}00000{c{{Bh{e}}}{}{}}00000{{}{{n{BjBl}}}}00000`{{{b{Jl}}{Bh{{Oh{A@b}}}}}{{n{AEdl}}}}`````{b}00000``{{{b{c}}}e{}{}}00000{c{{n{e}}}{}{}}00000000000{{{b{c}}}Bn{}}00000{{{C`{c}}}{{C`{Cb}}}{}}00000{{{b{hc}}}{{b{hCb}}}{}}00000{{{b{c}}}{{b{Cb}}}{}}00000::::::``{{{AEh{{n{AEfEb}}}}AEjEh}f}{{{b{Jl}}{Bh{{Oh{A@f}}}}}{{n{AEll}}}}`{{{AEh{{n{AEnEb}}}}AEjEh}f}{{{b{Jl}}{Bh{{Oh{A@h}}}}}{{n{AF`l}}}}`{{{AEh{{n{AFbEb}}}}AEjEh}f}{{{b{Jl}}{Bh{{Oh{A@j}}}}}{{n{AFdl}}}}``{{{b{Jl}}{Bh{{Oh{ABb}}}}}{{n{AFfl}}}}","D":"BDb","p":[[1,"reference"],[5,"Private",877],[1,"unit"],[0,"mut"],[5,"SlotRange",0],[6,"GrpcError",277],[6,"Result",878],[5,"SlotDraw",0],[5,"EndorsementDraw",0],[1,"usize"],[5,"With",879],[1,"bool"],[5,"Formatter",880],[8,"Result",880],[1,"u64"],[10,"Hash",881],[10,"Sized",882],[10,"BuildHasher",881],[10,"Hasher",881],[5,"Request",883],[5,"Layout",884],[5,"LayoutError",884],[5,"TypeId",885],[5,"Box",886],[10,"Any",885],[5,"GrpcConfig",126],[5,"GrpcApiConfig",126],[6,"ServiceName",126],[10,"Deserializer",887],[10,"Error",888],[6,"FactoryError",889],[6,"WalletError",890],[6,"ModelsError",891],[6,"MassaHashError",892],[6,"MassaSignatureError",893],[6,"Error",894],[6,"TimeError",895],[6,"ExecutionError",896],[6,"ConsensusError",897],[6,"ProtocolError",898],[5,"Status",899],[5,"Error",900],[6,"Option",901],[5,"String",902],[5,"MassaPrivateGrpc",361],[5,"AddStakingSecretKeysRequest",903],[5,"AddStakingSecretKeysResponse",903],[5,"AddToBootstrapBlacklistRequest",903],[5,"AddToBootstrapBlacklistResponse",903],[5,"AddToBootstrapWhitelistRequest",903],[5,"AddToBootstrapWhitelistResponse",903],[5,"AddToPeersWhitelistRequest",903],[5,"AddToPeersWhitelistResponse",903],[5,"AllowEveryoneToBootstrapRequest",903],[5,"AllowEveryoneToBootstrapResponse",903],[5,"BanNodesByIdsRequest",903],[5,"BanNodesByIdsResponse",903],[5,"BanNodesByIpsRequest",903],[5,"BanNodesByIpsResponse",903],[5,"GetBootstrapBlacklistRequest",903],[5,"GetBootstrapBlacklistResponse",903],[5,"GetBootstrapWhitelistRequest",903],[5,"GetBootstrapWhitelistResponse",903],[5,"GetMipStatusRequest",903],[5,"GetMipStatusResponse",903],[5,"GetNodeStatusRequest",903],[5,"GetNodeStatusResponse",903],[5,"GetPeersWhitelistRequest",903],[5,"GetPeersWhitelistResponse",903],[5,"RemoveFromBootstrapBlacklistRequest",903],[5,"RemoveFromBootstrapBlacklistResponse",903],[5,"RemoveFromBootstrapWhitelistRequest",903],[5,"RemoveFromBootstrapWhitelistResponse",903],[5,"RemoveFromPeersWhitelistRequest",903],[5,"RemoveFromPeersWhitelistResponse",903],[5,"RemoveStakingAddressesRequest",903],[5,"RemoveStakingAddressesResponse",903],[5,"ShutdownGracefullyRequest",903],[5,"ShutdownGracefullyResponse",903],[5,"SignMessagesRequest",903],[5,"SignMessagesResponse",903],[5,"UnbanNodesByIdsRequest",903],[5,"UnbanNodesByIdsResponse",903],[5,"UnbanNodesByIpsRequest",903],[5,"UnbanNodesByIpsResponse",903],[5,"MassaPublicGrpc",361],[5,"ExecuteReadOnlyCallRequest",903],[5,"ExecuteReadOnlyCallResponse",903],[5,"GetBlocksRequest",903],[5,"GetBlocksResponse",903],[5,"GetDatastoreEntriesRequest",903],[5,"GetDatastoreEntriesResponse",903],[5,"GetEndorsementsRequest",903],[5,"GetEndorsementsResponse",903],[5,"GetNextBlockBestParentsRequest",903],[5,"GetNextBlockBestParentsResponse",903],[5,"GetOperationsRequest",903],[5,"GetOperationsResponse",903],[5,"GetScExecutionEventsRequest",903],[5,"GetScExecutionEventsResponse",903],[5,"GetSelectorDrawsRequest",903],[5,"GetSelectorDrawsResponse",903],[5,"GetStakersRequest",903],[5,"GetStakersResponse",903],[5,"GetStatusRequest",903],[5,"GetStatusResponse",903],[5,"GetTransactionsThroughputRequest",903],[5,"GetTransactionsThroughputResponse",903],[5,"QueryStateRequest",903],[5,"QueryStateResponse",903],[5,"SearchBlocksRequest",903],[5,"SearchBlocksResponse",903],[5,"SearchEndorsementsRequest",903],[5,"SearchEndorsementsResponse",903],[5,"SearchOperationsRequest",903],[5,"SearchOperationsResponse",903],[10,"Future",904],[5,"Pin",905],[5,"GetOperationAbiCallStacksRequest",903],[5,"GetSlotAbiCallStacksRequest",903],[5,"GetSlotTransfersRequest",903],[5,"HealthReporter",906],[5,"NewBlocksRequest",903],[5,"Streaming",907],[5,"NewEndorsementsRequest",903],[5,"NewFilledBlocksRequest",903],[5,"NewOperationsRequest",903],[5,"NewSlotAbiCallStacksRequest",903],[5,"NewSlotExecutionOutputsRequest",903],[5,"NewSlotTransfersRequest",903],[5,"SendBlocksRequest",903],[5,"SendEndorsementsRequest",903],[5,"SendOperationsRequest",903],[5,"StopHandle",361],[8,"BoxBody",908],[5,"Request",909],[17,"Response"],[5,"Response",910],[17,"Error"],[6,"Infallible",911],[10,"Service",912],[10,"NamedService",913],[10,"Clone",914],[10,"Send",882],[5,"TransactionsThroughputRequest",903],[5,"Filter",526],[8,"NewBlocksStreamType",526],[8,"SecureShareBlock",915],[5,"Filter",560],[8,"NewEndorsementsStreamType",560],[8,"SecureShareEndorsement",916],[5,"Filter",588],[8,"NewFilledBlocksStreamType",588],[5,"BlockHeader",917],[6,"BlockId",918],[5,"SecureShare",919],[5,"Filter",622],[8,"NewOperationsStreamType",622],[8,"SecureShareOperation",920],[5,"SlotAbiCallStack",650],[8,"NewSlotABICallStacksStreamType",650],[5,"Filter",679],[5,"AsyncPoolChangesFilter",679],[5,"ExecutedDenounciationFilter",679],[5,"ExecutionEventFilter",679],[5,"ExecutedOpsChangesFilter",679],[5,"LedgerChangesFilter",679],[6,"SlotExecutionOutput",921],[5,"ExecutionOutput",921],[8,"NewSlotExecutionOutputsStreamType",679],[5,"SendBlocksResponse",903],[5,"Sender",922],[6,"Code",899],[8,"SendBlocksStreamType",865],[5,"SendEndorsementsResponse",903],[8,"SendEndorsementsStreamType",868],[5,"SendOperationsResponse",903],[8,"SendOperationsStreamType",871],[8,"TransactionsThroughputStreamType",874]],"r":[],"b":[[298,"impl-Display-for-GrpcError"],[299,"impl-Debug-for-GrpcError"],[300,"impl-From%3CFactoryError%3E-for-GrpcError"],[301,"impl-From%3CWalletError%3E-for-GrpcError"],[302,"impl-From%3CModelsError%3E-for-GrpcError"],[303,"impl-From%3CMassaHashError%3E-for-GrpcError"],[304,"impl-From%3CMassaSignatureError%3E-for-GrpcError"],[305,"impl-From%3CError%3E-for-GrpcError"],[307,"impl-From%3CTimeError%3E-for-GrpcError"],[308,"impl-From%3CExecutionError%3E-for-GrpcError"],[309,"impl-From%3CConsensusError%3E-for-GrpcError"],[310,"impl-From%3CProtocolError%3E-for-GrpcError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEwCTgABAAEABAACAAgABQAPAAgAGQAPACoAFABAAAIARgAFAE0AAgBRAAIAVwAIAGUAAABnABcAhAACAIoABQCVAAgAnwALAKwAAgC2AAIAvAACAMQAAgDMAAIA0QACAPAAAgD+ABcAJAEOADQBBAA6AQEAPQEJAFABAABiAQAAZAEAAG0BAQB2AQUAfQEFAIYBCwCZAQIApAEAAKkBAQCwAQIAtgECALoBAgDJAQIA3wEAAOUBAADoAQEA6wEIAPYBCAABAgIADwIAABECDAAfAgIAIwIBACYCCwAzAgkAPgIBAEECAQBEAgkATwIMAF0CAgBhAgEAZAILAHECBwB6AgEAfQIBAIACCgCMAgoAmAIBAJsCAQCeAgAAoAINAK8CRQD2AgYAAwMMABYDDAAkAzwAZgMAAGkDAAA="}],\ +["massa_hash",{"t":"SSFFFFFFGPPCCCCGPPNNNNNNNNNNNNNNFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSS","n":["HASH_SIZE_BYTES","HASH_XOF_SIZE_BYTES","Hash","HashDeserializer","HashSerializer","HashXof","HashXofDeserializer","HashXofSerializer","MassaHashError","ParsingError","WrongPrefix","error","hash","hash_xof","settings","MassaHashError","ParsingError","WrongPrefix","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","into","to_owned","to_string","try_from","try_into","type_id","Hash","HashDeserializer","HashSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compute_from","compute_from_tuple","default","default","deserialize","deserialize","eq","fmt","fmt","from","from","from","from_bs58_check","from_bytes","from_str","hash","into","into","into","into_bytes","new","new","partial_cmp","serialize","serialize","to_bs58_check","to_bytes","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","zero","HashXof","HashXofDeserializer","HashXofSerializer","bitxor","bitxor_assign","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","compute_from","compute_from_tuple","default","default","deserialize","eq","fmt","fmt","from","from","from","from_bytes","into","into","into","new","new","serialize","to_bs58_check","to_bytes","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","HASH_SIZE_BYTES","HASH_XOF_SIZE_BYTES"],"q":[[0,"massa_hash"],[15,"massa_hash::error"],[32,"massa_hash::hash"],[94,"massa_hash::hash_xof"],[148,"massa_hash::settings"],[150,"core::fmt"],[151,"alloc::string"],[152,"core::result"],[153,"core::any"],[154,"core::cmp"],[155,"serde::de"],[156,"nom::internal"],[157,"nom::error"],[158,"core::hash"],[159,"core::option"],[160,"serde::ser"],[161,"alloc::vec"],[162,"massa_serialization"]],"i":[0,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,10,11,12,10,11,12,10,11,12,10,11,12,10,10,11,12,10,10,10,11,12,10,12,10,10,10,10,11,12,10,10,10,10,10,11,12,10,11,12,10,10,11,10,10,10,11,12,10,10,10,11,12,10,11,12,10,11,12,10,0,0,0,28,28,28,29,30,28,29,30,28,29,30,28,29,30,28,28,29,30,28,28,29,30,30,28,28,28,28,29,30,28,28,29,30,29,30,29,28,28,28,29,30,28,28,29,30,28,29,30,28,29,30,0,0],"f":"``````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{f}}{b{dj}}}l}0{cc{}}{ce{}{}}{{{b{c}}}e{}{}}{{{b{c}}}n{}}{c{{A`{e}}}{}{}}0{{{b{c}}}Ab{}}```;;;:::{{{b{Ad}}}Ad}{{{b{Af}}}Af}{{{b{Ah}}}Ah};;;::::{{{b{Ad}}{b{Ad}}}Aj}{{{b{{An{Al}}}}}Ad}{{{b{{An{{b{{An{Al}}}}}}}}}Ad}{{}Af}{{}Ah}{c{{A`{Ad}}}B`}{{{b{Ah}}{b{{An{Al}}}}}{{Bb{{b{{An{Al}}}}Adc}}}{{Bd{{b{{An{Al}}}}}}{Bf{{b{{An{Al}}}}}}}}{{{b{Ad}}{b{Ad}}}Bh}{{{b{Ad}}{b{dj}}}l}0{cc{}}00{{{b{Bj}}}{{A`{Adf}}}}{{{b{{Bl{Al}}}}}Ad}{{{b{Bj}}}{{A`{Adc}}}{}}{{{b{Ad}}{b{dc}}}hBn}{ce{}{}}00{Ad{{Bl{Al}}}}<;{{{b{Ad}}{b{Ad}}}{{C`{Aj}}}}{{{b{Ad}}c}A`Cb}{{{b{Af}}{b{Ad}}{b{d{Cd{Al}}}}}{{A`{hCf}}}}{{{b{Ad}}}n}{{{b{Ad}}}{{b{{Bl{Al}}}}}}{{{b{c}}}e{}{}}00{{{b{c}}}n{}}{c{{A`{e}}}{}{}}{{{b{{An{Al}}}}}{{A`{Adc}}}{}}11111{{{b{c}}}Ab{}}00{{}Ad}```{{ChCh}Ch}{{{b{dCh}}Ch}h}{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Ch}}}Ch}{{{b{Cj}}}Cj}{{{b{Cl}}}Cl}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}000{{{b{{An{Al}}}}}Ch}{{{b{{An{{b{{An{Al}}}}}}}}}Ch}{{}Cj}{{}Cl}{{{b{Cl}}{b{{An{Al}}}}}{{Bb{{b{{An{Al}}}}Chc}}}{{Bd{{b{{An{Al}}}}}}{Bf{{b{{An{Al}}}}}}}}{{{b{Ch}}{b{Ch}}}Bh}{{{b{Ch}}{b{dj}}}l}0{cc{}}00{{{b{{Bl{Al}}}}}Ch}{ce{}{}}0076{{{b{Cj}}{b{Ch}}{b{d{Cd{Al}}}}}{{A`{hCf}}}}{{{b{Ch}}}n}{{{b{Ch}}}{{b{{Bl{Al}}}}}}{{{b{c}}}e{}{}}00{{{b{c}}}n{}}{c{{A`{e}}}{}{}}00000{{{b{c}}}Ab{}}00``","D":"Gf","p":[[1,"reference"],[0,"mut"],[6,"MassaHashError",15],[1,"unit"],[5,"Formatter",150],[8,"Result",150],[5,"String",151],[6,"Result",152],[5,"TypeId",153],[5,"Hash",32],[5,"HashSerializer",32],[5,"HashDeserializer",32],[6,"Ordering",154],[1,"u8"],[1,"slice"],[10,"Deserializer",155],[8,"IResult",156],[10,"ParseError",157],[10,"ContextError",157],[1,"bool"],[1,"str"],[1,"array"],[10,"Hasher",158],[6,"Option",159],[10,"Serializer",160],[5,"Vec",161],[6,"SerializeError",162],[5,"HashXof",94],[5,"HashXofSerializer",94],[5,"HashXofDeserializer",94]],"r":[[0,148],[1,148],[2,32],[3,32],[4,32],[5,94],[6,94],[7,94],[8,15]],"b":[[23,"impl-Display-for-MassaHashError"],[24,"impl-Debug-for-MassaHashError"],[59,"impl-Debug-for-Hash"],[60,"impl-Display-for-Hash"],[121,"impl-Display-for-HashXof%3CSIZE%3E"],[122,"impl-Debug-for-HashXof%3CSIZE%3E"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFsAEAAMAAMAEwAGABwABAAkABAANwABADsAAgBDAAEASwAAAE0AAABQAAQAVgAHAGIAEQB2AAEAeQACAIUAAACIAAwA"}],\ +["massa_ledger_exports",{"t":"PSPSPPSFFPFFFGFFFFKFFFFFFGPPSOOOOOOOOMOOOOOOOOOCCOOOOHOOOMOCMMMMOMCOOOOCCOOMCOOMOOOOOOOOFNNNNNNNNONNOOONNNNNKMMMMMMMMMPPGPNNNNNNNNNNNNPSPSPPPSPSFFFGFGFPSPOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNOOFFFFFFFFOOONNOONNNNNNNNNNNNNNNNOOONNNNNNNOOONNNNNNNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOONNNNNNNNFFFOONONNNNNNOOONNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["BALANCE","BALANCE_IDENT","BYTECODE","BYTECODE_IDENT","ContainerInconsistency","DATASTORE","DATASTORE_IDENT","DatastoreUpdateDeserializer","DatastoreUpdateSerializer","FileError","Key","KeyDeserializer","KeySerializer","KeyType","LedgerChanges","LedgerChangesDeserializer","LedgerChangesSerializer","LedgerConfig","LedgerController","LedgerEntry","LedgerEntryDeserializer","LedgerEntrySerializer","LedgerEntryUpdate","LedgerEntryUpdateDeserializer","LedgerEntryUpdateSerializer","LedgerError","MissingEntry","VERSION","VERSION_IDENT","address","address_deserializer","address_deserializer","address_serializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","apply_changes_to_batch","balance","balance","balance_serializer","bytecode","bytecode","bytecode_deserializer","bytecode_deserializer","bytecode_serializer","bytecode_serializer","config","controller","datastore","datastore","datastore_deserializer","datastore_deserializer","datastore_prefix_from_address","datastore_serializer","datastore_serializer","entry_deserializer","entry_exists","entry_serializer","error","get_balance","get_bytecode","get_data_entry","get_datastore_keys","initial_ledger_path","is_key_value_valid","key","key_deserializer","key_type","key_type_deserializer","key_type_serializer","ledger_changes","ledger_entry","length_deserializer","length_deserializer","load_initial_ledger","mapping_grpc","max_datastore_value_length","max_key_length","reset","thread_count","u64_serializer","u64_serializer","value_deserializer","value_serializer","vec_u8_serializer","version_byte_deserializer","version_byte_serializer","LedgerConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","from","from_ref","initial_ledger_path","into","into_request","max_datastore_value_length","max_key_length","thread_count","to_owned","try_from","try_into","type_id","vzip","LedgerController","apply_changes_to_batch","entry_exists","get_balance","get_bytecode","get_data_entry","get_datastore_keys","is_key_value_valid","load_initial_ledger","reset","ContainerInconsistency","FileError","LedgerError","MissingEntry","borrow","borrow_mut","fmt","fmt","from","into","into_request","to_string","try_from","try_into","type_id","vzip","BALANCE","BALANCE_IDENT","BYTECODE","BYTECODE_IDENT","Balance","Bytecode","DATASTORE","DATASTORE_IDENT","Datastore","KEY_VERSION","Key","KeyDeserializer","KeySerializer","KeyType","KeyTypeDeserializer","KeyTypeId","KeyTypeSerializer","VERSION","VERSION_IDENT","Version","address","address_deserializer","address_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","datastore_prefix_from_address","default","default","deserialize","deserialize","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","key_type","key_type_deserializer","key_type_serializer","new","new","new","new","new","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vec_u8_deserializer","vec_u8_serializer","version_byte_deserializer","version_byte_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","with_datastore_key_length","with_datastore_key_length","DatastoreUpdateDeserializer","DatastoreUpdateSerializer","LedgerChanges","LedgerChangesDeserializer","LedgerChangesSerializer","LedgerEntryUpdate","LedgerEntryUpdateDeserializer","LedgerEntryUpdateSerializer","address_deserializer","address_serializer","amount_deserializer","apply","apply","balance","balance_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytecode","bytecode_deserializer","bytecode_serializer","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","create_address","datastore","datastore_deserializer","datastore_serializer","default","default","default","default","default","delete_data_entry","deserialize","deserialize","deserialize","deserialize","deserialize","entry_deserializer","entry_exists_or_else","entry_serializer","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","get","get_balance_or_else","get_bytecode_or_else","get_bytecode_updates","get_data_entry_or_else","has_data_entry_or_else","has_writes","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","key_deserializer","length_deserializer","length_deserializer","new","new","new","new","new","new","serialize","serialize","serialize","serialize","serialize","set_balance","set_bytecode","set_data_entry","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u64_serializer","u64_serializer","value_deserializer","value_serializer","vec_u8_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","LedgerEntry","LedgerEntryDeserializer","LedgerEntrySerializer","amount_deserializer","amount_serializer","apply","balance","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bytecode","bytecode_deserializer","bytecode_serializer","clone","clone_into","clone_to_uninit","datastore","datastore_deserializer","datastore_serializer","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","new","new","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_ledger_exports"],[88,"massa_ledger_exports::config"],[108,"massa_ledger_exports::controller"],[118,"massa_ledger_exports::error"],[134,"massa_ledger_exports::key"],[296,"massa_ledger_exports::ledger_changes"],[455,"massa_ledger_exports::ledger_entry"],[514,"massa_db_exports::db_batch"],[515,"massa_models::address"],[516,"alloc::vec"],[517,"massa_models::amount"],[518,"core::option"],[519,"massa_models::bytecode"],[520,"alloc::collections::btree::set"],[521,"core::result"],[522,"core::fmt"],[523,"tonic::request"],[524,"core::any"],[525,"alloc::string"],[526,"nom::internal"],[527,"nom::error"],[528,"massa_serialization"],[529,"num_enum"],[530,"massa_models::types"],[531,"alloc::collections::btree::map"],[532,"serde::de"],[533,"core::ops::function"],[534,"serde::ser"]],"i":[25,0,25,0,16,25,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,25,0,28,44,30,39,29,43,53,52,2,36,48,38,36,48,43,53,38,52,0,0,36,48,43,53,0,38,52,44,2,39,0,2,2,2,2,18,2,0,40,28,30,29,0,0,40,44,2,0,18,18,2,18,37,39,40,37,37,30,29,0,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,0,2,2,2,2,2,2,2,2,2,16,16,0,16,16,16,16,16,16,16,16,16,16,16,16,16,25,0,25,0,24,24,25,0,24,0,0,0,0,0,0,0,0,25,0,24,28,30,29,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,0,26,29,27,30,24,25,28,24,24,24,24,25,25,25,25,28,28,28,28,24,25,28,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,24,25,26,27,28,29,30,28,30,29,26,27,28,29,30,26,29,24,25,26,27,28,29,30,24,24,25,26,27,28,29,30,24,24,25,26,27,28,29,30,24,25,26,27,28,29,30,27,26,30,29,24,25,26,27,28,29,30,26,27,0,0,0,0,0,0,0,0,44,39,43,36,4,36,38,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,36,43,38,36,4,36,4,36,4,4,36,43,38,37,38,39,36,4,4,40,43,44,36,4,44,4,39,36,4,36,36,36,36,4,4,4,4,36,4,37,40,38,43,39,44,36,4,36,4,4,4,4,4,4,4,4,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,40,40,44,37,40,38,43,39,44,37,38,39,36,4,4,4,4,36,4,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,37,40,38,43,39,44,36,4,37,39,40,37,37,37,40,38,43,39,44,36,4,0,0,0,53,52,48,48,52,53,48,52,53,48,48,53,52,48,48,48,48,53,52,52,48,53,48,48,48,48,48,48,48,52,53,48,48,52,53,48,52,53,48,52,53,52,48,48,52,53,48,52,53,48,52,53,48,52,53,48],"f":"`````````````````````````````````````{{{f{bd}}h{f{bj}}}l}```````````````{{{f{n}}{f{{Ab{A`}}}}}{{Ad{A`}}}}```{{{f{d}}{f{n}}}Af}``{{{f{d}}{f{n}}}{{Aj{Ah}}}}{{{f{d}}{f{n}}}{{Aj{Al}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{Ad{A`}}}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{An{{Ad{A`}}}}}}}}`{{{f{d}}{f{{Ab{A`}}}}{f{{Ab{A`}}}}}Af}`````````{{{f{bd}}}{{Bb{lB`}}}}```{{{f{bd}}}l}`````````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{Bd}}}Bd}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}{{{f{Bd}}{f{bBf}}}Bh}{cc{}}{{{f{c}}}c{}}`{ce{}{}}{c{{Bj{e}}}{}{}}```{{{f{c}}}e{}{}}{c{{Bb{e}}}{}{}}0{{{f{c}}}Bl{}}4`{{{f{bd}}h{f{bj}}}l}{{{f{d}}{f{n}}}Af}{{{f{d}}{f{n}}}{{Aj{Ah}}}}{{{f{d}}{f{n}}}{{Aj{Al}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{Ad{A`}}}}}}{{{f{d}}{f{n}}{f{{Ab{A`}}}}}{{Aj{{An{{Ad{A`}}}}}}}}{{{f{d}}{f{{Ab{A`}}}}{f{{Ab{A`}}}}}Af}{{{f{bd}}}{{Bb{lB`}}}}{{{f{bd}}}l}````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{B`}}{f{bBf}}}Bh}0{cc{}}{ce{}{}}{c{{Bj{e}}}{}{}}{{{f{c}}}Bn{}}{c{{Bb{e}}}{}{}}0{{{f{c}}}Bl{}}4```````````````````````88888887777777{{{f{C`}}}C`}{{{f{Cb}}}Cb}{{{f{Cd}}}Cd}{{{f{Cf}}}Cf}{{{f{Ch}}}Ch}{{{f{Cj}}}Cj}{{{f{Cl}}}Cl}{{{f{c}}{f{be}}}l{}{}}000000{{{f{c}}}l{}}000000{{{f{n}}{f{{Ab{A`}}}}}{{Ad{A`}}}}{{}Cd}{{}Cj}{{{f{Cf}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}Cbc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{Cl}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}Chc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{C`}}{f{C`}}}Af}{{{f{Cb}}{f{Cb}}}Af}{{{f{Ch}}{f{Ch}}}Af}{{{f{c}}{f{e}}}Af{}{}}00000000000{{{f{C`}}{f{bBf}}}Bh}{{{f{Cb}}{f{bBf}}}Bh}{{{f{Ch}}{f{bBf}}}Bh}{cc{}}000000{{{f{c}}}c{}}000000{ce{}{}}000000{c{{Bj{e}}}{}{}}000000```{AfCd}{{A`Af}Cf}{{{f{n}}Cb}Ch}{AfCj}{{A`Af}Cl}{{{f{Cd}}{f{Cb}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Cj}}{f{Ch}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{c}}}e{}{}}000000{A`{{Bb{C`{Df{C`}}}}}}{c{{Bb{e}}}{}{}}000000{c{{Bb{C`{Df{C`}}}}}{}}1111111{{{f{c}}}Bl{}}000000````=======`````````````{{{f{bDh}}Dh}l}{{{f{bh}}h}l}``{{{f{c}}}{{f{e}}}{}{}}0000000{{{f{bc}}}{{f{be}}}{}{}}0000000```{{{f{Dh}}}Dh}{{{f{h}}}h}{{{f{c}}{f{be}}}l{}{}}0{{{f{c}}}l{}}0{{{f{bh}}{f{n}}}l}```{{}Dj}{{}Dl}{{}Dn}{{}Dh}{{}h}{{{f{bh}}n{Ad{A`}}}l}{{{f{E`}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}{Ed{{Ad{A`}}{Eb{{Ad{A`}}}}}}c}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{Ef}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}Dhc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{{{f{Eh}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}hc}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{c{{Bb{Dh}}}Ej}{c{{Bb{h}}}Ej}`{{{f{h}}{f{n}}c}Af{{En{}{{El{Af}}}}}}`{{{f{Dh}}{f{Dh}}}Af}{{{f{h}}{f{h}}}Af}{{{f{c}}{f{e}}}Af{}{}}0000000{{{f{Dh}}{f{bBf}}}Bh}{{{f{h}}{f{bBf}}}Bh}{cc{}}0000000{{{f{c}}}c{}}0{{{f{h}}{f{n}}}{{Aj{{f{{Fb{F`Dh}}}}}}}}{{{f{h}}{f{n}}c}{{Aj{Ah}}}{{En{}{{El{{Aj{Ah}}}}}}}}{{{f{h}}{f{n}}c}{{Aj{Al}}}{{En{}{{El{{Aj{Al}}}}}}}}{{{f{h}}}{{Ad{Al}}}}{{{f{h}}{f{n}}{f{{Ab{A`}}}}c}{{Aj{{Ad{A`}}}}}{{En{}{{El{{Aj{{Ad{A`}}}}}}}}}}{{{f{h}}{f{n}}{f{{Ab{A`}}}}c}Af{{En{}{{El{Af}}}}}}{{{f{h}}{f{n}}{Aj{{Ad{A`}}}}}Af}{ce{}{}}0000000{c{{Bj{e}}}{}{}}0000000```{{}Dj}{{A`FdFd}E`}{{}Dl}{{A`FdFd}Ef}{{}Dn}{{FdA`FdFd}Eh}{{{f{Dj}}{f{{Ed{{Ad{A`}}{Eb{{Ad{A`}}}}}}}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Dl}}{f{Dh}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Dn}}{f{h}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{Dh}}c}BbFf}{{{f{h}}c}BbFf}{{{f{bh}}nAh}l}{{{f{bh}}nAl}l}{{{f{bh}}n{Ad{A`}}{Ad{A`}}}l}{{{f{c}}}e{}{}}0{c{{Bb{e}}}{}{}}000000000000000{{{f{c}}}Bl{}}0000000`````{ce{}{}}0000000`````{{{f{bF`}}Dh}l}`{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00```{{{f{F`}}}F`}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}```{{}Fh}{{}F`}{{{f{Fj}}{f{{Ab{A`}}}}}{{Cn{{f{{Ab{A`}}}}F`c}}}{{D`{{f{{Ab{A`}}}}}}{Db{{f{{Ab{A`}}}}}}}}{c{{Bb{F`}}}Ej}{{{f{F`}}{f{F`}}}Af}{{{f{c}}{f{e}}}Af{}{}}000{{{f{F`}}{f{bBf}}}Bh}{cc{}}00{{{f{c}}}c{}}???{c{{Bj{e}}}{}{}}009{{FdA`Fd}Fj}{{{f{Fh}}{f{F`}}{f{b{Ad{A`}}}}}{{Bb{lDd}}}}{{{f{F`}}c}BbFf}{{{f{c}}}e{}{}}{c{{Bb{e}}}{}{}}00000{{{f{c}}}Bl{}}00{ce{}{}}00","D":"ACj","p":[[0,"mut"],[10,"LedgerController",108],[1,"reference"],[5,"LedgerChanges",296],[8,"DBBatch",514],[1,"unit"],[6,"Address",515],[1,"u8"],[1,"slice"],[5,"Vec",516],[1,"bool"],[5,"Amount",517],[6,"Option",518],[5,"Bytecode",519],[5,"BTreeSet",520],[6,"LedgerError",118],[6,"Result",521],[5,"LedgerConfig",88],[5,"Formatter",522],[8,"Result",522],[5,"Request",523],[5,"TypeId",524],[5,"String",525],[6,"KeyTypeId",134],[6,"KeyType",134],[5,"KeyTypeSerializer",134],[5,"KeyTypeDeserializer",134],[5,"Key",134],[5,"KeySerializer",134],[5,"KeyDeserializer",134],[8,"IResult",526],[10,"ParseError",527],[10,"ContextError",527],[6,"SerializeError",528],[5,"TryFromPrimitiveError",529],[5,"LedgerEntryUpdate",296],[5,"DatastoreUpdateSerializer",296],[5,"LedgerEntryUpdateSerializer",296],[5,"LedgerChangesSerializer",296],[5,"DatastoreUpdateDeserializer",296],[6,"SetOrDelete",530],[5,"BTreeMap",531],[5,"LedgerEntryUpdateDeserializer",296],[5,"LedgerChangesDeserializer",296],[10,"Deserializer",532],[17,"Output"],[10,"FnOnce",533],[5,"LedgerEntry",455],[6,"SetUpdateOrDelete",530],[1,"u64"],[10,"Serializer",534],[5,"LedgerEntrySerializer",455],[5,"LedgerEntryDeserializer",455]],"r":[[1,134],[3,134],[6,134],[7,296],[8,296],[10,134],[11,134],[12,134],[13,134],[14,296],[15,296],[16,296],[17,88],[18,108],[19,455],[20,455],[21,455],[22,296],[23,296],[24,296],[25,118],[28,134],[53,134]],"b":[[124,"impl-Debug-for-LedgerError"],[125,"impl-Display-for-LedgerError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAGUBLgABAAMABgABAA4AAAATAAAAHAAKACkAAAAsAAMAMQAAADQAAQA3AAIAOwAAAEMABABKAAEATQAAAFIABgBaAAUAYQAAAGQAAABoAAYAewADAIEADwCUACwAwgACAMYAEQDfAAYA7QAJAPkAAAD8ACwAMQECADcBEABJAQcAUwEGAF4BAgBiAQwAdwEBAIgBCgCcAQEAoQEmAMsBAgDPAQUA1gEEANwBAwDhAQYA6wEAAO8BAgD1AQ0A"}],\ ["massa_ledger_worker",{"t":"FOCCOFNNNONNNNNNNNNNNNNONNNNPPPFGPOONNNNNOOOHNNHNNNNNNNNNNOONOONNNONNNNNNNOONN","n":["FinalLedger","config","ledger","ledger_db","sorted_ledger","FinalLedger","apply_changes_to_batch","borrow","borrow_mut","config","entry_exists","fmt","from","get_balance","get_bytecode","get_data_entry","get_datastore_keys","into","into_request","is_key_value_valid","load_initial_ledger","new","reset","sorted_ledger","try_from","try_into","type_id","vzip","Balance","Bytecode","Datastore","LedgerDB","LedgerSubEntry","Version","amount_deserializer","amount_serializer","apply_changes_to_batch","borrow","borrow","borrow_mut","borrow_mut","bytecode_deserializer","bytecode_serializer","db","delete_datastore_entries","delete_entry","derive_key","end_prefix","fmt","from","from","get_datastore_keys","get_sub_entry","into","into","into_request","into_request","is_key_value_valid","key_deserializer_db","key_serializer_db","load_initial_ledger","max_datastore_key_length","max_datastore_value_length","new","put_entry","reset","thread_count","try_from","try_from","try_into","try_into","type_id","type_id","update_entry","version_deserializer","version_serializer","vzip","vzip"],"q":[[0,"massa_ledger_worker"],[5,"massa_ledger_worker::ledger"],[28,"massa_ledger_worker::ledger_db"],[78,"massa_ledger_exports::ledger_changes"],[79,"massa_db_exports::db_batch"],[80,"massa_models::address"],[81,"core::fmt"],[82,"massa_models::amount"],[83,"core::option"],[84,"massa_models::bytecode"],[85,"alloc::vec"],[86,"alloc::collections::btree::set"],[87,"tonic::request"],[88,"massa_ledger_exports::error"],[89,"core::result"],[90,"massa_ledger_exports::config"],[91,"massa_db_exports::controller"],[92,"core::any"],[93,"parking_lot::raw_rwlock"],[94,"alloc::boxed"],[95,"lock_api::rwlock"],[96,"alloc::collections::btree::map"],[97,"massa_ledger_exports::key"],[98,"massa_ledger_exports::ledger_entry"],[99,"std::collections::hash::map"]],"i":[0,2,0,0,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,30,30,30,0,0,30,24,24,24,30,24,30,24,24,24,24,0,24,30,0,24,30,24,24,24,30,24,30,24,24,24,24,24,24,24,24,24,24,24,30,24,30,24,30,24,24,24,24,30,24],"f":"``````{{{f{bd}}h{f{bj}}}l}{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}`{{{f{d}}{f{n}}}A`}{{{f{d}}{f{bAb}}}Ad}{cc{}}{{{f{d}}{f{n}}}{{Ah{Af}}}}{{{f{d}}{f{n}}}{{Ah{Aj}}}}{{{f{d}}{f{n}}{f{{An{Al}}}}}{{Ah{{B`{Al}}}}}}{{{f{d}}{f{n}}{f{{An{Al}}}}}{{Ah{{Bb{{B`{Al}}}}}}}}{ce{}{}}{c{{Bd{e}}}{}{}}{{{f{d}}{f{{An{Al}}}}{f{{An{Al}}}}}A`}{{{f{bd}}}{{Bh{lBf}}}}{{BjBl}d}{{{f{bd}}}l}`{c{{Bh{e}}}{}{}}0{{{f{c}}}Bn{}}7````````{{{f{C`}}h{f{bj}}}l}{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0```{{{f{n}}{f{{Ch{Cb{Cf{Cd}}}}}}{f{b{Cj{{B`{Al}}{Ah{{B`{Al}}}}}}}}}l}{{{f{C`}}{f{n}}{f{bj}}}l}{{{f{Cl}}{f{n}}}Cn}{{{f{{An{Al}}}}}{{Ah{{B`{Al}}}}}}{{{f{C`}}{f{bAb}}}Ad}{cc{}}0{{{f{C`}}{f{n}}{f{{An{Al}}}}}{{Ah{{Bb{{B`{Al}}}}}}}}{{{f{C`}}{f{n}}Cl}{{Ah{{B`{Al}}}}}}{ce{}{}}0{c{{Bd{e}}}{}{}}0{{{f{C`}}{f{{An{Al}}}}{f{{An{Al}}}}}A`}``{{{f{bC`}}{Db{nD`}}}l}``{{BlAlAlDd}C`}{{{f{C`}}{f{n}}D`{f{bj}}}l}{{{f{C`}}}l}`{c{{Bh{e}}}{}{}}000{{{f{c}}}Bn{}}0{{{f{C`}}{f{n}}Df{f{bj}}}l}``99","D":"Eb","p":[[0,"mut"],[5,"FinalLedger",5],[1,"reference"],[5,"LedgerChanges",78],[8,"DBBatch",79],[1,"unit"],[6,"Address",80],[1,"bool"],[5,"Formatter",81],[8,"Result",81],[5,"Amount",82],[6,"Option",83],[5,"Bytecode",84],[1,"u8"],[1,"slice"],[5,"Vec",85],[5,"BTreeSet",86],[5,"Request",87],[6,"LedgerError",88],[6,"Result",89],[5,"LedgerConfig",90],[8,"ShareableMassaDBController",91],[5,"TypeId",92],[5,"LedgerDB",28],[5,"RawRwLock",93],[10,"MassaDBController",91],[5,"Box",94],[5,"RwLockReadGuard",95],[5,"BTreeMap",96],[6,"LedgerSubEntry",28],[5,"Key",97],[5,"LedgerEntry",98],[5,"HashMap",99],[1,"u64"],[5,"LedgerEntryUpdate",78]],"r":[[0,5]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACUADQAIAAEADAAAABMAAAAZAAMAIwABACYABwAvAAAAMQAAADgAAQA7AAEAPgABAEIABwBLAAMA"}],\ ["massa_logging",{"t":"QEE","n":["massa_trace","serde_json","tracing"],"q":[[0,"massa_logging"]],"i":[0,0,0],"f":"```","D":"d","p":[],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAEAEAAAAAIAAwA="}],\ ["massa_metrics",{"t":"FFFFFFFOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNOOOOOOOOHNOOONNNNNOOOOOOOONNNNNNNHNNNNNNHNNNNNNNNNNNNNNONOOOOOOOOOOOOOOOCNNNNNNNNHNNNNHHNNHNNNNHNNNNNONOOONNNNNNNNNNNNNNNNNNNNNNNNHH","n":["BLOCKS_COUNTER","DEFERRED_CALLS_TOTAL_GAS","DEFERRED_CALL_REGISTERED","ENDORSEMENTS_COUNTER","MassaMetrics","MetricsStopper","OPERATIONS_COUNTER","__private_field","__private_field","__private_field","__private_field","__private_field","active_cursor_period","active_cursor_thread","active_history","active_in_connections","active_out_connections","async_message_pool_size","block_cache_blocks_known_by_peer","block_cache_checked_headers_size","block_slot_delay","bootstrap_counter","bootstrap_peers_failed","bootstrap_peers_success","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","consensus_state_active_index","consensus_state_active_index_without_ops","consensus_state_block_statuses","consensus_state_discarded_index","consensus_state_incoming_index","consensus_vec","current_time_period","current_time_thread","dec_deferred_calls_registered","default","deferred_calls_executed","deferred_calls_failed","denunciations_pool","deref","deref","deref","deref","deref","enabled","endorsement_cache_checked_endorsements","endorsement_cache_known_by_peer","endorsements_pool","executed_final_slot","executed_final_slot_with_block","final_cursor_period","final_cursor_thread","from","from","from","from","from","from","from","get_deferred_calls_registered","get_metrics_for_survey_thread","inc_bootstrap_counter","inc_bootstrap_peers_failed","inc_bootstrap_peers_success","inc_deferred_calls_executed","inc_deferred_calls_failed","inc_deferred_calls_registered","inc_executed_final_slot","inc_executed_final_slot_with_block","inc_operations_final_counter","inc_protocol_tester_failed","inc_protocol_tester_success","inc_sc_messages_final_by","into","into","into","into","into","into","into","is_enabled","network_versions_votes","new","operation_cache_checked_operations","operation_cache_checked_operations_prefix","operation_cache_ops_know_by_peer","operations_final_counter","operations_pool","peernet_total_bytes_received","peernet_total_bytes_sent","peers_bandwidth","process_available_processors","protocol_banned_peers","protocol_known_peers","protocol_tester_failed","protocol_tester_success","rolls","sc_messages_final","server","set_active_connections","set_active_cursor","set_active_history","set_async_message_pool_size","set_available_processors","set_banned_peers","set_block_cache_metrics","set_block_slot_delay","set_blocks_counter","set_consensus_period","set_consensus_state","set_current_time_period","set_current_time_thread","set_deferred_calls_registered","set_deferred_calls_total_gas","set_denunciations_pool","set_endorsements_cache_metrics","set_endorsements_counter","set_endorsements_pool","set_final_cursor","set_known_peers","set_operations_cache_metrics","set_operations_counter","set_operations_pool","set_peernet_total_bytes_received","set_peernet_total_bytes_sent","set_rolls","set_stakers","stakers","stop","stop_handle","stopper","tick_delay","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_network_version_vote","update_peers_tx_rx","bind_metrics","serve_req"],"q":[[0,"massa_metrics"],[171,"massa_metrics::server"],[173,"prometheus::gauge"],[174,"core::net::socket_addr"],[175,"core::time"],[176,"core::result"],[177,"core::any"],[178,"std::collections::hash::map"],[179,"alloc::string"],[180,"hyper::body::body"],[181,"http::request"],[182,"http::response"],[183,"hyper::error"]],"i":[0,0,0,0,0,0,0,6,8,9,10,11,3,3,3,3,3,3,3,3,3,3,3,3,6,8,9,10,11,5,3,6,8,9,10,11,5,3,3,3,3,3,3,3,3,3,3,3,3,0,5,3,3,3,6,8,9,10,11,3,3,3,3,3,3,3,3,6,8,9,10,11,5,3,0,3,3,3,3,3,3,0,3,3,3,3,3,3,6,8,9,10,11,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,0,3,3,3,3,0,0,3,3,0,3,3,3,3,0,3,3,3,3,3,3,5,5,5,3,3,6,8,9,10,11,5,3,6,8,9,10,11,5,3,6,8,9,10,11,5,3,3,3,0,0],"f":"````````````````````````{{{b{c}}}{{b{e}}}{}{}}000000{{{b{dc}}}{{b{de}}}{}{}}000000{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}````````{{}h}{{}j}```{{{b{l}}}{{b{n}}}}{{{b{A`}}}{{b{n}}}}{{{b{Ab}}}{{b{n}}}}{{{b{Ad}}}{{b{n}}}}{{{b{Af}}}{{b{n}}}}````````{cc{}}000000{{}Ah}{{{b{f}}}{{Al{AhAhAjAj}}}}{{{b{f}}}h}0000:00{{{b{f}}Aj}h}11{{{b{f}}An}h}{ce{}{}}000000{{{b{f}}}B`}`{{B`BbBdBf}{{Al{fj}}}}````````````````{{{b{f}}AnAn}h}{{{b{f}}AjBd}h}55551{{{b{f}}Bh}h}{Anh}{{{b{f}}AnAj}h}{{{b{f}}AnAnAnAnAn}h}:{{{b{f}}Bd}h}3{Bjh};74;6;{{{b{f}}AnAnAn}h}5<==<<`{{{b{dj}}}h}```{{{b{c}}}e{}{}}{c{{Bl{e}}}{}{}}0000000000000{{{b{c}}}Bn{}}000000{{{b{f}}{Cb{C`Aj}}}h}{{{b{f}}{Cb{Cd{Al{AjAj}}}}}h}{Bbj}{{{Ch{Cf}}}{{Bl{{Cj{Cf}}Cl}}}}","D":"E`","p":[[1,"reference"],[0,"mut"],[5,"MassaMetrics",0],[1,"unit"],[5,"MetricsStopper",0],[5,"OPERATIONS_COUNTER",0],[8,"IntGauge",173],[5,"BLOCKS_COUNTER",0],[5,"ENDORSEMENTS_COUNTER",0],[5,"DEFERRED_CALL_REGISTERED",0],[5,"DEFERRED_CALLS_TOTAL_GAS",0],[1,"i64"],[1,"u64"],[1,"tuple"],[1,"usize"],[1,"bool"],[6,"SocketAddr",174],[1,"u8"],[5,"Duration",175],[1,"f64"],[1,"u128"],[6,"Result",176],[5,"TypeId",177],[1,"u32"],[5,"HashMap",178],[5,"String",179],[5,"Body",180],[5,"Request",181],[5,"Response",182],[5,"Error",183]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAIUADQABAA0AEgACABkAFQAwAAUANwAEAD0AAQBCAAEASwANAGAABQBqAAAAcQAdAJAAGgCsAAEA"}],\ -["massa_models",{"t":"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCFONNONNNOONONNNNNOOONONNNNNSGFFFPGQFPQSSPGQFPQONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNONNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNOOONNNNNNNNSSFFFFTTNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNPPFFFGFPFPPPIPPNNNNNNNNNNNNNONNNNNNNOOONNNNNNONNNNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNOOONNNOOOONNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNFFFFIOOONNNNNNNNONNNNOOOONOOOONNOOOOOONNNNNNNNNOONNNNNNNNOONNNOOOONNOOOOOOONNNNNNNNNNNNNNNONNNNSGQFFFPQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNSFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNFFFOOOOONNNNNNNNNNNNNOOONNNNNNNNNNNONNNNNNNNNNNNNNNNNPPPPPFGGPFFPPNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNOOOONNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNFOHCCOOOCOOOOOOFONNNNNNNONONNNNONNOOOONOONNNNNNSSSSFSSSSSSSSSSSSSSFFFSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSFSSSSSSSSSFSSOOOOOONNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHIFFNNNNNNNNHNNNNOONNNNNNNNNOOONNSGQFFFPQNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPFFFFGFGGFFGGFGPPPPPFFFFPPPTOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNOOOSSSFFFFGQFFPQFFIOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNPPPPPPPPPPPPPPPPPGIPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNOONNNNNOOOONONNNNNFFFFFFFFFOOOOOONNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHSFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPSSFFGQFFFPQFFGQFFPQIFFFGFGFFFPPPPIPPOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNOOOOOONNNNONNONNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOONNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOFFONNNNONNNNNNOONNNNNNNNNNONNNNOOOONNONNNNNNNNNNNNIKFIIKNNNNNONNONNNNMNNNFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNKFKFFNNNNNNNONNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNMNNNNONNNNNNOMNNNONNNNONNNOONNNNNNNNNNNNNNNNNFFKFFFFKFFFFFFHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNOOOONNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHOOHHOOONNNNNNNNNNNNFSFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNOOONNNNONONNNNNNNNNNNNNNNNNNNONNNNFFFFOOONNNNNNNNONNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNONNNNNNNNOOONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNPPPGFFNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNOONNNHHHHHHKPPPPPPGFFGFFGFFPMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOONNNNN","n":["active_block","address","amount","block","block_header","block_id","bytecode","clique","composite","config","datastore","deferred_calls","denunciation","endorsement","error","execution","ledger","mapping_grpc","node","operation","output_event","prehash","rolls","secure_share","serialization","slot","stats","streaming_step","timeslots","types","version","ActiveBlock","block_id","borrow","borrow_mut","children","clone","clone_into","clone_to_uninit","creator_address","descendants","deserialize","fitness","fmt","from","from_ref","into","into_request","is_final","parents","same_thread_parent_creator","serialize","slot","to_owned","try_from","try_into","type_id","vzip","ADDRESS_PREFIX","Address","AddressDeserializer","AddressSerializer","ExecutionAddressCycleInfo","SC","SCAddress","SCAddress","SCAddressV0","SCAddressV0","SCAddressVariant","SC_PREFIX","USER_PREFIX","User","UserAddress","UserAddress","UserAddressV0","UserAddressV0","UserAddressVariant","active_rolls","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","cmp","cmp","compare","compare","compare","compare","compare","cycle","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_bytes","from_bytes","from_public_key","from_public_key","from_public_key","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_str","from_str_without_prefixed_type","from_str_without_prefixed_type","get_hash","get_hash","get_hash","get_hash","get_hash","get_thread","get_thread","get_thread","get_version","get_version","hash","hash","hash","hash","hash","hash_deserializer","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_final","new","new","nok_count","ok_count","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_prefixed_bytes","to_prefixed_bytes","to_prefixed_bytes","to_prefixed_bytes","to_prefixed_bytes","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_deserializer","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_serializer","version_deserializer","version_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AMOUNT_DECIMAL_FACTOR","AMOUNT_DECIMAL_SCALE","Amount","AmountDeserializer","AmountSerializer","AmountVisitor","MAX","MIN","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","checked_add","checked_div","checked_div_u64","checked_mul_u64","checked_rem","checked_rem_u64","checked_sub","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","const_init","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","expecting","fmt","fmt","fmt","from","from","from","from","from_decimal","from_mantissa_scale","from_raw","from_ref","from_ref","from_ref","from_str","into","into","into","into","into_request","into_request","into_request","into_request","is_zero","new","new","partial_cmp","saturating_add","saturating_mul_u64","saturating_sub","serialize","serialize","to_decimal","to_mantissa_scale","to_owned","to_owned","to_owned","to_raw","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u64_deserializer","u64_serializer","visit_str","vzip","vzip","vzip","vzip","zero","ActiveInAlternativeCliques","ActiveInBlockclique","Block","BlockDeserializer","BlockDeserializerArgs","BlockGraphStatus","BlockSerializer","Discarded","FilledBlock","Final","Incoming","NotFound","SecureShareBlock","WaitingForDependencies","WaitingForSlot","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytes_count","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","contains_operation","content","content_creator_address","content_creator_pub_key","default","deserialize","deserialize","deserialize","deserialize","deserialize","endorsement_count","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","get_fitness","header","header","header_deserializer","header_serializer","id","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","last_start_period","max_denunciations_per_block_header","max_operations_per_block","new","new","new_verifiable","op_ids_deserializer","op_ids_serializer","operations","operations","serialize","serialize","serialize","serialize","serialize","serialized_data","signature","thread_count","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","BlockHeader","BlockHeaderDenunciationData","BlockHeaderDeserializer","BlockHeaderSerializer","SecuredHeader","announced_version","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","compute_signed_hash","content","content_creator_address","content_creator_pub_key","current_version","default","denunciation_deserializer","denunciation_len_deserializer","denunciation_serializer","denunciations","deserialize","deserialize","endorsement_content_serializer","endorsement_count","endorsement_len_deserializer","endorsement_serializer","endorsement_serializer","endorsements","fmt","fmt","fmt","from","from","from","from","from_ref","get_fitness","hash_deserializer","id","into","into","into","into","into_request","into_request","into_request","into_request","last_start_period","network_versions_deserializer","new","new","new","operation_merkle_root","opt_deserializer","opt_serializer","parents","serialize","serialize","serialized_data","signature","slot","slot","slot_deserializer","slot_serializer","thread_count","to_bytes","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u32_serializer","vzip","vzip","vzip","vzip","BLOCKID_PREFIX","BlockId","BlockId","BlockIdDeserializer","BlockIdSerializer","BlockIdV0","BlockIdV0","BlockIdVariant","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","compare","compare","default","default","deserialize","deserialize","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_str","from_str","get_first_bit","get_first_bit","get_hash","get_hash","get_hash","get_hash","get_version","get_version","hash","hash","hash_deserializer","into","into","into","into","into_request","into_request","into_request","into_request","new","new","new","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","version_deserializer","version_serializer","vzip","vzip","vzip","vzip","BYTECODE_VERSION","Bytecode","BytecodeDeserializer","BytecodeSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","new","new","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vec_u8_deserializer","vec_u8_serializer","version_byte_deserializer","version_byte_serializer","vzip","vzip","vzip","Clique","CliqueDeserializer","CliqueSerializer","block_id_deserializer","block_id_serializer","block_ids","block_ids_length_deserializer","block_ids_length_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deserialize","deserialize","fitness","fitness_deserializer","fitness_serializer","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","is_blockclique","new","new","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","Active","Discarded","Discarded","InBlock","Incoming","OperationSearchResult","OperationSearchResultBlockStatus","OperationSearchResultStatus","Pending","PubkeySig","StakersCycleProductionStats","WaitingForDependencies","WaitingForSlot","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cycle","deserialize","deserialize","deserialize","deserialize","deserialize","extend","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","in_blocks","in_pool","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","is_final","ok_nok_counts","op","public_key","serialize","serialize","serialize","serialize","serialize","signature","status","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","CompactConfig","block_reward","build_massa_settings","compact_config","constants","delta_f0","end_timestamp","genesis_timestamp","massa_settings","max_block_size","operation_validity_periods","periods_per_cycle","roll_price","t0","thread_count","CompactConfig","block_reward","borrow","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","default","delta_f0","deserialize","end_timestamp","fmt","fmt","from","from_ref","genesis_timestamp","into","into_request","max_block_size","operation_validity_periods","periods_per_cycle","roll_price","serialize","t0","thread_count","to_owned","to_string","try_from","try_into","type_id","vzip","ASYNC_MSG_CST_GAS_COST","BASE_OPERATION_GAS_COST","BLOCK_REWARD","BOOTSTRAP_RANDOMNESS_SIZE_BYTES","CHAINID","CHANNEL_SIZE","CONSENSUS_BOOTSTRAP_PART_SIZE","DEFERRED_CALL_BASE_FEE_MAX_CHANGE_DENOMINATOR","DEFERRED_CALL_CST_GAS_COST","DEFERRED_CALL_GLOBAL_OVERBOOKING_PENALTY","DEFERRED_CALL_MAX_ASYNC_GAS","DEFERRED_CALL_MAX_FUTURE_SLOTS","DEFERRED_CALL_MAX_POOL_CHANGES","DEFERRED_CALL_MIN_GAS_COST","DEFERRED_CALL_MIN_GAS_INCREMENT","DEFERRED_CALL_SLOT_OVERBOOKING_PENALTY","DELTA_F0","DENUNCIATION_EXPIRE_PERIODS","ENDORSEMENT_COUNT","END_TIMESTAMP","GENESIS_KEY","GENESIS_TIMESTAMP","HANDSHAKE_RANDOMNESS_SIZE_BYTES","INITIAL_DRAW_SEED","IP_LIST_MAX_SIZE","KEEP_EXECUTED_HISTORY_EXTRA_PERIODS","LEDGER_COST_PER_BYTE","LEDGER_ENTRY_BASE_COST","LEDGER_ENTRY_DATASTORE_BASE_SIZE","MAX_ADVERTISE_LENGTH","MAX_ASYNC_GAS","MAX_ASYNC_POOL_LENGTH","MAX_BLOCK_SIZE","MAX_BOOTSTRAP_ASYNC_POOL_CHANGES","MAX_BOOTSTRAP_BLOCKS","MAX_BOOTSTRAP_CHILDREN","MAX_BOOTSTRAP_CLIQUES","MAX_BOOTSTRAP_DEPS","MAX_BOOTSTRAP_ERROR_LENGTH","MAX_BOOTSTRAP_FINAL_STATE_PARTS_SIZE","MAX_BOOTSTRAP_MESSAGE_SIZE","MAX_BOOTSTRAP_MESSAGE_SIZE_BYTES","MAX_BOOTSTRAP_POS_CYCLES","MAX_BOOTSTRAP_VERSIONING_ELEMENTS_SIZE","MAX_BYTECODE_LENGTH","MAX_CONSENSUS_BLOCKS_IDS","MAX_DATASTORE_ENTRY_COUNT","MAX_DATASTORE_KEY_LENGTH","MAX_DATASTORE_VALUE_LENGTH","MAX_DEFERRED_CREDITS_LENGTH","MAX_DENUNCIATIONS_PER_BLOCK_HEADER","MAX_DENUNCIATION_CHANGES_LENGTH","MAX_DUPLEX_BUFFER_SIZE","MAX_ENDORSEMENTS_PER_MESSAGE","MAX_EVENT_DATA_SIZE","MAX_EVENT_PER_OPERATION","MAX_EXECUTED_OPS_CHANGES_LENGTH","MAX_EXECUTED_OPS_LENGTH","MAX_FUNCTION_NAME_LENGTH","MAX_GAS_PER_BLOCK","MAX_LEDGER_CHANGES_COUNT","MAX_LEDGER_CHANGES_PER_SLOT","MAX_LISTENERS_PER_PEER","MAX_MESSAGE_SIZE","MAX_OPERATIONS_PER_BLOCK","MAX_OPERATIONS_PER_MESSAGE","MAX_OPERATION_DATASTORE_ENTRY_COUNT","MAX_OPERATION_DATASTORE_KEY_LENGTH","MAX_OPERATION_DATASTORE_VALUE_LENGTH","MAX_OPERATION_STORAGE_TIME","MAX_PARAMETERS_SIZE","MAX_PEERS_IN_ANNOUNCEMENT_LIST","MAX_PRODUCTION_EVENTS_PER_BLOCK","MAX_PRODUCTION_STATS_LENGTH","MAX_RECURSIVE_CALLS_DEPTH","MAX_RNG_SEED_LENGTH","MAX_ROLLS_COUNT_LENGTH","MAX_RUNTIME_MODULE_CUSTOM_SECTION_DATA_LEN","MAX_RUNTIME_MODULE_CUSTOM_SECTION_LEN","MAX_RUNTIME_MODULE_DEFINED_FUNCTIONS","MAX_RUNTIME_MODULE_EXPORTS","MAX_RUNTIME_MODULE_FUNCTIONS","MAX_RUNTIME_MODULE_FUNCTION_ARGS","MAX_RUNTIME_MODULE_FUNCTION_IMPORTS","MAX_RUNTIME_MODULE_FUNCTION_NAME_LEN","MAX_RUNTIME_MODULE_FUNCTION_RETURN_VALUES","MAX_RUNTIME_MODULE_GLOBAL_INITIALIZER","MAX_RUNTIME_MODULE_IMPORTS","MAX_RUNTIME_MODULE_MEMORIES","MAX_RUNTIME_MODULE_MEMORY_IMPORTS","MAX_RUNTIME_MODULE_NAME_LEN","MAX_RUNTIME_MODULE_PASSIVE_DATA","MAX_RUNTIME_MODULE_PASSIVE_ELEMENT","MAX_RUNTIME_MODULE_SIGNATURE_LEN","MAX_RUNTIME_MODULE_TABLE","MAX_RUNTIME_MODULE_TABLE_INITIALIZER","MAX_SIZE_CHANNEL_COMMANDS_CONNECTIVITY","MAX_SIZE_CHANNEL_COMMANDS_PEERS","MAX_SIZE_CHANNEL_COMMANDS_PEER_TESTERS","MAX_SIZE_CHANNEL_COMMANDS_PROPAGATION_BLOCKS","MAX_SIZE_CHANNEL_COMMANDS_PROPAGATION_ENDORSEMENTS","MAX_SIZE_CHANNEL_COMMANDS_PROPAGATION_OPERATIONS","MAX_SIZE_CHANNEL_COMMANDS_RETRIEVAL_BLOCKS","MAX_SIZE_CHANNEL_COMMANDS_RETRIEVAL_ENDORSEMENTS","MAX_SIZE_CHANNEL_COMMANDS_RETRIEVAL_OPERATIONS","MAX_SIZE_CHANNEL_NETWORK_TO_BLOCK_HANDLER","MAX_SIZE_CHANNEL_NETWORK_TO_ENDORSEMENT_HANDLER","MAX_SIZE_CHANNEL_NETWORK_TO_OPERATION_HANDLER","MAX_SIZE_CHANNEL_NETWORK_TO_PEER_HANDLER","MIP_STORE_STATS_BLOCK_CONSIDERED","NETWORK_CONTROLLER_CHANNEL_SIZE","NETWORK_EVENT_CHANNEL_SIZE","NETWORK_NODE_COMMAND_CHANNEL_SIZE","NETWORK_NODE_EVENT_CHANNEL_SIZE","NODE_SEND_CHANNEL_SIZE","OPERATION_VALIDITY_PERIODS","PERIODS_PER_CYCLE","POOL_CONTROLLER_DENUNCIATIONS_CHANNEL_SIZE","POOL_CONTROLLER_ENDORSEMENTS_CHANNEL_SIZE","POOL_CONTROLLER_OPERATIONS_CHANNEL_SIZE","POS_MISS_RATE_DEACTIVATION_THRESHOLD","POS_SAVED_CYCLES","PROTOCOL_CONTROLLER_CHANNEL_SIZE","PROTOCOL_EVENT_CHANNEL_SIZE","ROLL_COUNT_TO_SLASH_ON_DENUNCIATION","ROLL_PRICE","SELECTOR_DRAW_CACHE_SIZE","SIGNATURE_DESER_SIZE","T0","THREAD_COUNT","VERSION","VERSIONING_ACTIVATION_DELAY_MIN","VERSIONING_THRESHOLD_TRANSITION_ACCEPTED","__private_field","__private_field","__private_field","__private_field","__private_field","__private_field","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref","deref","deref","from","from","from","from","from","from","get_period_from_args","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","build_massa_settings","Datastore","DatastoreDeserializer","DatastoreSerializer","borrow","borrow","borrow_mut","borrow_mut","default","deserialize","from","from","get_prefix_bounds","into","into","into_request","into_request","key_deserializer","length_deserializer","new","new","serialize","try_from","try_from","try_into","try_into","type_id","type_id","u64_serializer","value_deserializer","vec_u8_serializer","vzip","vzip","DEFERRED_CALL_ID_PREFIX","DeferredCallId","DeferredCallId","DeferredCallIdDeserializer","DeferredCallIdSerializer","DeferredCallIdV0","DeferredCallIdV0","DeferredCallIdVariant","as_bytes","as_bytes","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytes_deserializer","bytes_serializer","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","compare","compare","default","default","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from_bytes","from_bytes","from_ref","from_ref","from_ref","from_ref","from_str","get_hash","get_hash","get_slot","hash","hash","into","into","into","into","into_request","into_request","into_request","into_request","new","new","new","partial_cmp","partial_cmp","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","BlockHeader","BlockHeader","BlockHeader","BlockHeader","BlockHeader","BlockHeaderDenunciation","BlockHeaderDenunciationDeserializer","BlockHeaderDenunciationPrecursor","BlockHeaderDenunciationSerializer","Denunciation","DenunciationDeserializer","DenunciationError","DenunciationIndex","DenunciationIndexDeserializer","DenunciationIndexSerializer","DenunciationIndexTypeId","DenunciationPrecursor","DenunciationSerializer","DenunciationTypeId","Endorsement","Endorsement","Endorsement","Endorsement","Endorsement","EndorsementDenunciation","EndorsementDenunciationDeserializer","EndorsementDenunciationPrecursor","EndorsementDenunciationSerializer","InvalidInput","Serialization","Signature","VARIANT_COUNT","blkh_de_deserializer","blkh_de_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","compute_hash_for_sig_verif","compute_hash_for_sig_verif","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","endo_de_deserializer","endo_de_serializer","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_hash","get_hash","get_hash_1","get_hash_1","get_hash_2","get_hash_2","get_index","get_index","get_index","get_public_key","get_public_key","get_public_key","get_public_key","get_signature_1","get_signature_1","get_signature_2","get_signature_2","get_slot","get_slot","get_slot","get_slot","get_slot","hash","hash","hash","hash_1","hash_1","hash_2","hash_2","hash_deserializer","hash_deserializer","hash_serializer","hash_serializer","id_deserializer","index","index","index_deserializer","index_deserializer","index_serializer","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_also_for_block_header","is_also_for_endorsement","is_expired","is_for_block_header","is_for_endorsement","is_valid","new","new","new","new","new","new","new","new","partial_cmp","pubkey_deserializer","pubkey_deserializer","public_key","public_key","public_key","public_key","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","signature","signature","signature_1","signature_1","signature_2","signature_2","signature_deserializer","signature_deserializer","slot","slot","slot","slot","slot_deserializer","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","slot_serializer","source","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id_deserializer","type_id_serializer","u32_serializer","u32_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","index","slot","slot","ENDORSEMENTID_PREFIX","ENDORSEMENTID_VERSION","ENDORSEMENT_ID_SIZE_BYTES","Endorsement","EndorsementDenunciationData","EndorsementDeserializer","EndorsementDeserializerLW","EndorsementId","EndorsementId","EndorsementIdDeserializer","EndorsementIdV0","EndorsementIdV0","EndorsementIdVariant","EndorsementSerializer","EndorsementSerializerLW","SecureShareEndorsement","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","compare","compare","compute_signed_hash","content","content_creator_address","content_creator_pub_key","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","endorsed_block","endorsed_block","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_str","from_str","get_hash","get_hash","get_hash","get_hash","hash","hash","hash_deserializer","id","index","index","index_deserializer","index_deserializer","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","new","new","new","new","new","new","new","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","serialize","serialized_data","signature","slot","slot","slot","slot_deserializer","slot_serializer","to_bytes","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_serializer","u32_serializer","version_deserializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AddressParseError","AmountOverflowError","AmountParseError","BlockIdParseError","BufferError","CheckedOperationError","DeferredCallIdParseError","DeserializeError","EndorsementIdParseError","Err","ErrorRaised","HashError","InvalidLedgerChange","InvalidRollUpdate","InvalidVersionError","MassaHashError","MassaSignatureError","ModelsError","ModelsResult","NodeIdParseError","Ok","OperationIdParseError","OperationPrefixJoinError","OutdatedBootstrapCursor","PeriodOverflowError","SerializationError","SerializeError","ThreadOverflowError","TimeError","TimeOverflowError","WrongPrefix","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","from","from","from","from","from","from","from_ref","into","into_request","source","to_owned","to_string","try_from","try_into","type_id","vzip","EventFilter","borrow","borrow_mut","clone","clone_into","clone_to_uninit","default","deserialize","emitter_address","end","fmt","from","from_ref","into","into_request","is_error","is_final","original_caller_address","original_operation_id","serialize","start","to_owned","try_from","try_into","type_id","vzip","LedgerChange","LedgerChangeDeserializer","LedgerChangeSerializer","LedgerChanges","LedgerChangesDeserializer","LedgerChangesSerializer","LedgerData","LedgerDataDeserializer","LedgerDataSerializer","address_deserializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","amount_serializer","apply","apply_change","balance","balance_delta","balance_increment","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain","chain","clone","clone","clone","clone_into","clone_into","clone_into","clone_subset","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","get_involved_addresses","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_nil","is_nil","ledger_change_deserializer","ledger_change_serializer","length_deserializer","length_serializer","new","new","new","new","new","new","new","serialize","serialize","serialize","serialize","serialize","serialize","sync_from","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","to_denunciation_index","NODEID_PREFIX","NodeId","borrow","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","cmp","compare","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from_ref","from_str","get_hash","get_public_key","hash","into","into_request","new","partial_cmp","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","CallSC","CallSC","ExecuteSC","ExecuteSC","OPERATIONID_PREFIX","OPERATION_ID_PREFIX_SIZE_BYTES","Operation","OperationDeserializer","OperationId","OperationId","OperationIdDeserializer","OperationIdSerializer","OperationIdV0","OperationIdV0","OperationIdVariant","OperationIdsDeserializer","OperationIdsSerializer","OperationPrefixId","OperationPrefixId","OperationPrefixIdDeserializer","OperationPrefixIdV0","OperationPrefixIdV0","OperationPrefixIdVariant","OperationPrefixIds","OperationPrefixIdsDeserializer","OperationPrefixIdsSerializer","OperationSerializer","OperationType","OperationTypeDeserializer","OperationTypeId","OperationTypeSerializer","OperationsDeserializer","OperationsSerializer","RollBuy","RollBuy","RollSell","RollSell","SecureShareOperation","Transaction","Transaction","address_deserializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","amount_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","cmp","compare","compare","compare","compare","compute_hash","compute_operations_hash","content","content_creator_address","content_creator_pub_key","data_deserializer","datastore_deserializer","datastore_serializer","default","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expire_period","expire_period_deserializer","fee","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_str","from_str","function_name_deserializer","function_name_serializer","get_gas_usage","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_ledger_involved_addresses","get_max_spending","get_roll_involved_addresses","get_validity_range","get_version","get_version","hash","hash","hash","hash","hash_deserializer","id","id_deserializer","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_prefix","into_prefix","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","length_deserializer","length_deserializer","length_deserializer","max_gas_deserializer","new","new","new","new","new","new","new","new","new","new","new","new","new","new","op","op_id_deserializer","op_id_serializer","op_type_deserializer","op_type_serializer","parameter_deserializer","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pref_deserializer","prefix","prefix","rolls_number_deserializer","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialized_data","signature","signed_op_deserializer","signed_op_serializer","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_serializer","u32_serializer","u32_serializer","u32_serializer","u64_serializer","u64_serializer","vec_u8_serializer","version_deserializer","version_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","amount","coins","data","datastore","max_coins","max_gas","max_gas","param","recipient_address","roll_count","roll_count","target_addr","target_func","EventExecutionContext","SCOutputEvent","block","borrow","borrow","borrow_mut","borrow_mut","call_stack","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","context","data","deserialize","deserialize","fmt","fmt","fmt","fmt","from","from","from_ref","from_ref","index_in_slot","into","into","into_request","into_request","is_error","is_final","origin_operation_id","read_only","serialize","serialize","slot","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","BuildHashMapper","CapacityAllocator","HashMapper","PreHashMap","PreHashSet","PreHashed","borrow","borrow_mut","default","finish","from","hash","into","into_request","source","try_from","try_into","type_id","vzip","with_capacity","with_capacity","with_capacity","write","RollCompensation","RollCounts","RollUpdate","RollUpdateDeserializer","RollUpdateSerializer","RollUpdates","apply","apply_updates","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain","chain","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_subset","clone_subset","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","compensate","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","get_involved_addresses","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","is_empty","is_nil","len","new","new","new","roll_purchases","roll_sales","serialize","serialize","serialize","serialize","serialize","sync_from","sync_from","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","u64_deserializer","u64_serializer","vzip","vzip","vzip","vzip","vzip","vzip","Id","SecureShare","SecureShareContent","SecureShareDeserializer","SecureShareSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bytes_count","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","compute_hash","compute_signed_hash","compute_signed_hash","contains_operation","content","content_creator_address","content_creator_pub_key","content_deserializer","default","deserialize","deserialize","deserialize","deserialize_with","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from_ref","from_ref","get_fitness","get_fitness","get_gas_usage","get_hash","get_ledger_involved_addresses","get_max_spending","get_roll_involved_addresses","get_validity_range","id","into","into","into","into_request","into_request","into_request","marker_t","new","new","new","new_verifiable","public_key_deserializer","serialize","serialize","serialize","serialize_with","serialized_data","serialized_size","sign","sign","signature","signature_deserializer","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","verify_signature","verify_signature","vzip","vzip","vzip","BitVecDeserializer","BitVecSerializer","DeserializeMinBEInt","IpAddrDeserializer","IpAddrSerializer","PreHashSetDeserializer","PreHashSetSerializer","SerializeMinBEInt","StringDeserializer","StringSerializer","VecDeserializer","VecSerializer","VecU8Deserializer","VecU8Serializer","array_from_slice","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","data_deserializer","data_deserializer","data_serializer","data_serializer","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","from","from","from","from","from","from","from","from","from","from","from","from","from_be_bytes_min","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","len_serializer","len_serializer","len_serializer","length_deserializer","length_serializer","marker_l","marker_l","new","new","new","new","new","new","new","new","new","new","new","new","phantom_t","phantom_t","phantom_t","phantom_t","serialize","serialize","serialize","serialize","serialize","serialize","to_be_bytes_min","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_be_bytes_min_length","u32_deserializer","u32_serializer","u64_be_bytes_min_length","u8_from_slice","varint_u64_deserializer","varint_u64_deserializer","varint_u64_deserializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","IndexedSlot","SLOT_KEY_SIZE","Slot","SlotDeserializer","SlotSerializer","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","default","deserialize","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from","from_bytes_key","from_ref","from_ref","from_ref","from_ref","from_str","get_cycle","get_first_bit","get_hash","get_hash","get_next_slot","get_prev_slot","hash","hash","index","into","into","into","into","into_request","into_request","into_request","into_request","is_first_of_cycle","is_last_of_cycle","max","min","new","new","new","new_first_of_cycle","new_last_of_cycle","partial_cmp","period","period_deserializer","range_thread","serialize","serialize","serialize","skip","slot","slots_since","thread","to_bytes_key","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u64_serializer","vzip","vzip","vzip","vzip","ConsensusStats","ExecutionStats","NetworkStats","PoolStats","active_cursor","active_node_count","banned_peer_count","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clique_count","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","deserialize","deserialize","deserialize","deserialize","end_timespan","endorsement_count","final_block_count","final_block_count","final_cursor","final_executed_operations_count","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_ref","from_ref","from_ref","in_connection_count","into","into","into","into","into_request","into_request","into_request","into_request","known_peer_count","operation_count","out_connection_count","serialize","serialize","serialize","serialize","stale_block_count","start_timespan","time_window_end","time_window_start","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","Finished","Ongoing","Started","StreamingStep","StreamingStepDeserializer","StreamingStepSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","data_deser","data_serializer","deserialize","eq","equivalent","equivalent","equivalent","equivalent","finished","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","new","new","opt_deser","option_serializer","phantom_t","phantom_t","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_deser","u64_serializer","vzip","vzip","vzip","get_block_slot_timestamp","get_closest_slot_to_timestamp","get_current_latest_block_slot","get_latest_block_slot_at_timestamp","slot_count_in_range","time_range_to_slot_range","Applicable","Delete","Delete","Keep","Set","Set","Set","SetOrDelete","SetOrDeleteDeserializer","SetOrDeleteSerializer","SetOrKeep","SetOrKeepDeserializer","SetOrKeepSerializer","SetUpdateOrDelete","SetUpdateOrDeleteDeserializer","SetUpdateOrDeleteSerializer","Update","apply","apply","apply","apply","apply_to","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","inner_deserializer","inner_deserializer","inner_deserializer_set","inner_deserializer_update","inner_serializer","inner_serializer","inner_serializer_set","inner_serializer_update","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","new","new","new","new","new","new","phantom_t","phantom_t","phantom_t","phantom_t","phantom_t","phantom_t","phantom_v","phantom_v","serialize","serialize","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","INSTANCE_LEN","Version","VersionDeserializer","VersionSerializer","VersionVisitor","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","expecting","fmt","fmt","fmt","from","from","from","from","from_ref","from_ref","from_ref","from_str","instance","into","into","into","into","into_request","into_request","into_request","into_request","is_compatible","major","minor","new","new","serialize","serialize","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u32_deserializer","u32_serializer","visit_str","vzip","vzip","vzip","vzip"],"q":[[0,"massa_models"],[31,"massa_models::active_block"],[58,"massa_models::address"],[306,"massa_models::amount"],[410,"massa_models::block"],[536,"massa_models::block_header"],[631,"massa_models::block_id"],[746,"massa_models::bytecode"],[800,"massa_models::clique"],[853,"massa_models::composite"],[963,"massa_models::config"],[978,"massa_models::config::compact_config"],[1010,"massa_models::config::constants"],[1210,"massa_models::config::massa_settings"],[1211,"massa_models::datastore"],[1243,"massa_models::deferred_calls"],[1348,"massa_models::denunciation"],[1742,"massa_models::denunciation::DenunciationIndex"],[1745,"massa_models::endorsement"],[1948,"massa_models::error"],[2003,"massa_models::execution"],[2029,"massa_models::ledger"],[2187,"massa_models::mapping_grpc"],[2188,"massa_models::node"],[2223,"massa_models::operation"],[2676,"massa_models::operation::OperationType"],[2689,"massa_models::output_event"],[2739,"massa_models::prehash"],[2762,"massa_models::rolls"],[2881,"massa_models::secure_share"],[2973,"massa_models::serialization"],[3210,"massa_models::slot"],[3328,"massa_models::stats"],[3421,"massa_models::streaming_step"],[3479,"massa_models::timeslots"],[3485,"massa_models::types"],[3656,"massa_models::version"],[3739,"core::result"],[3740,"serde::de"],[3741,"core::fmt"],[3742,"tonic::request"],[3743,"serde::ser"],[3744,"core::any"],[3745,"core::cmp"],[3746,"nom::internal"],[3747,"nom::error"],[3748,"massa_signature::signature_impl"],[3749,"core::hash"],[3750,"core::marker"],[3751,"core::option"],[3752,"alloc::vec"],[3753,"massa_serialization"],[3754,"alloc::string"],[3755,"rust_decimal::decimal"],[3756,"core::ops::range"],[3757,"massa_hash::hash"],[3758,"massa_time"],[3759,"num_rational"],[3760,"alloc::collections::btree::map"],[3761,"massa_signature::error"],[3762,"core::error"],[3763,"num_enum"],[3764,"massa_hash::error"],[3765,"massa_time::error"],[3766,"massa_proto_rs::massa::model::v1"],[3767,"core::clone"],[3768,"core::convert"],[3769,"nom::traits"],[3770,"core::net::ip_addr"],[3771,"bitvec::vec"],[3772,"core::default"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,12,0,0,0,13,0,0,0,12,0,0,0,15,0,19,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,12,12,13,13,14,14,15,15,16,16,17,18,19,12,13,14,15,16,12,13,14,15,16,19,17,18,12,18,18,18,18,18,19,12,13,14,15,16,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,12,12,13,14,15,16,19,12,13,14,15,16,17,18,19,14,16,12,15,16,12,13,14,15,16,17,18,19,12,13,15,12,13,14,15,16,12,15,16,14,16,12,13,14,15,16,18,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,19,17,18,19,19,12,13,14,15,16,12,13,14,15,16,17,17,17,17,17,19,12,13,14,15,16,17,18,19,12,13,14,15,16,12,13,14,15,16,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,18,12,13,14,15,16,17,18,19,17,18,17,12,13,14,15,16,17,18,19,0,0,0,0,0,0,40,40,44,40,41,42,44,40,41,42,40,40,40,40,40,40,40,40,41,42,40,41,42,40,40,41,42,40,40,40,40,41,40,42,40,40,40,40,40,44,44,40,40,44,40,41,42,40,40,40,40,41,42,40,44,40,41,42,44,40,41,42,40,41,42,40,40,40,40,40,41,40,40,40,41,42,40,40,44,40,41,42,44,40,41,42,44,40,41,42,42,41,44,44,40,41,42,40,62,62,0,0,0,0,0,62,0,62,62,62,0,62,62,54,63,55,51,52,62,54,63,55,51,52,62,50,63,51,52,51,52,51,52,50,50,50,50,54,55,51,51,52,62,63,62,62,62,62,62,51,51,52,62,54,63,55,51,52,62,51,52,50,51,52,55,54,50,54,63,55,51,52,62,54,63,55,51,52,62,63,63,63,54,55,51,55,54,51,52,54,51,51,52,62,50,50,63,51,52,51,54,63,55,51,52,62,54,63,55,51,52,62,54,63,55,51,52,62,54,63,55,51,52,62,0,0,0,0,0,66,69,68,68,69,66,70,68,69,66,70,69,66,66,66,66,71,71,71,66,68,69,69,68,66,69,66,68,69,69,68,69,66,66,66,70,68,69,66,70,66,71,69,71,68,69,66,70,68,69,66,70,69,69,68,69,70,66,69,68,66,68,66,71,71,66,70,69,68,69,70,66,66,68,69,66,70,68,69,66,70,68,69,66,70,68,68,69,66,70,0,0,0,0,0,0,73,0,73,74,75,76,73,74,75,76,73,74,75,76,73,74,75,76,73,73,74,74,75,76,73,74,73,74,75,76,73,74,76,76,73,74,73,73,73,73,74,74,74,74,73,73,74,73,74,75,76,73,74,75,76,73,74,73,74,73,73,74,74,73,74,73,74,76,73,74,75,76,73,74,75,76,73,75,76,73,74,73,74,75,75,73,74,75,76,73,74,73,74,75,76,73,74,75,76,73,74,75,76,76,75,73,74,75,76,0,0,0,0,79,77,78,79,77,78,77,77,77,77,78,79,77,77,77,77,77,77,77,79,77,78,77,79,77,78,79,77,78,79,78,77,78,77,79,77,78,79,77,78,79,77,78,79,78,79,78,79,77,78,0,0,0,82,81,80,82,81,82,80,81,82,80,81,80,80,80,80,81,82,80,80,82,81,80,82,80,81,80,82,80,81,82,80,81,80,82,81,80,81,80,82,80,81,82,80,81,82,80,81,82,80,81,83,83,84,84,83,0,0,0,84,0,0,83,83,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,86,83,84,85,86,87,85,83,84,85,86,87,87,83,84,85,86,87,83,84,85,86,87,85,85,83,84,85,86,87,83,84,85,86,87,86,86,85,87,83,84,85,86,87,87,85,83,84,85,86,87,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,0,89,0,0,0,89,89,89,0,89,89,89,89,89,89,0,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,0,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,0,0,0,0,100,99,100,99,99,100,100,99,0,100,99,100,99,100,100,100,99,99,100,99,100,99,100,99,99,100,99,100,99,0,0,0,0,0,0,102,0,102,103,102,103,104,105,102,103,104,105,105,104,102,103,104,105,102,103,104,105,102,103,104,105,102,103,102,103,104,105,102,105,102,103,102,102,102,102,103,103,103,103,102,102,103,102,103,104,105,102,103,102,103,104,105,102,102,103,102,102,103,102,103,104,105,102,103,104,105,102,104,105,102,103,102,104,102,103,104,105,102,102,103,104,105,102,103,104,105,102,103,104,105,102,103,104,105,108,122,109,121,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,108,122,109,121,114,0,0,0,0,123,123,123,122,120,117,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,106,107,108,109,110,111,112,113,114,106,107,108,109,110,111,112,113,114,106,107,108,109,109,110,111,112,113,114,109,109,106,107,115,116,117,110,118,119,120,106,107,108,109,111,120,117,106,107,108,109,121,112,113,114,109,109,109,109,121,121,121,121,106,107,108,122,123,123,109,121,112,113,114,115,118,116,119,117,120,106,107,108,122,122,123,123,123,109,109,109,121,121,110,111,112,113,114,114,114,106,107,108,109,110,111,112,113,114,109,109,106,107,106,107,106,108,109,106,107,108,114,106,107,106,107,106,107,108,109,114,109,112,113,106,107,106,107,118,119,115,116,111,106,112,118,111,110,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,108,108,108,108,108,108,115,118,116,119,117,120,110,111,109,118,119,106,107,112,113,115,116,117,106,107,108,109,110,112,113,106,107,106,107,118,119,106,107,112,113,118,119,111,115,116,110,123,106,107,108,109,110,111,112,113,114,123,115,118,116,119,117,120,106,107,108,108,108,108,122,122,123,109,121,121,110,111,112,113,114,122,121,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,120,117,115,110,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,244,245,244,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,134,131,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,128,129,130,131,128,129,130,131,128,128,129,129,130,131,128,129,128,129,130,125,125,125,132,131,133,133,134,135,128,129,130,135,130,128,129,130,128,128,128,128,129,129,129,129,130,130,130,130,128,128,129,130,130,136,133,134,132,135,128,129,130,131,136,128,129,130,131,128,129,128,128,129,129,128,129,133,125,130,136,134,135,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,133,134,132,135,128,131,136,128,129,132,128,129,130,131,125,125,135,130,136,134,131,136,128,129,130,131,128,129,130,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,132,131,133,133,134,132,135,128,129,130,131,136,27,27,27,27,27,27,27,27,27,144,27,27,27,27,27,27,27,0,0,27,144,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,0,0,0,0,0,0,0,0,0,152,149,147,148,150,151,142,145,145,143,143,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,143,142,145,143,142,145,143,142,142,145,145,143,142,147,148,149,145,150,143,151,142,147,148,152,145,143,142,145,143,142,147,148,149,152,145,150,143,151,142,145,143,142,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,145,143,152,149,152,149,147,148,149,152,145,150,151,149,145,150,143,151,142,142,145,143,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,0,0,0,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,175,162,175,162,0,0,0,0,0,0,0,0,0,155,0,0,0,0,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,175,162,175,162,0,175,162,170,166,169,170,165,166,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,155,156,157,158,159,160,161,162,163,164,155,156,157,158,159,160,161,162,163,164,155,155,156,156,157,157,158,158,159,160,161,162,163,164,155,156,157,158,155,156,157,158,161,0,53,53,53,170,170,166,165,166,167,159,160,168,163,164,169,170,171,172,174,155,156,157,158,160,160,161,162,168,155,156,157,158,175,162,155,155,155,155,156,156,156,156,157,157,157,157,158,158,158,158,175,175,175,175,161,169,161,155,155,156,156,157,157,158,158,175,161,161,162,162,165,169,166,170,167,171,172,174,155,156,157,157,158,159,160,175,161,162,168,163,164,155,156,157,158,159,160,161,162,163,164,155,156,170,166,53,155,155,156,156,157,158,53,53,53,53,155,156,155,156,157,158,160,53,170,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,155,156,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,171,172,174,170,165,169,166,170,167,171,172,174,155,159,160,168,163,164,161,171,167,169,165,170,155,156,157,158,172,155,156,170,165,166,167,155,156,157,158,159,159,161,162,163,164,53,53,174,164,155,156,157,158,159,160,161,162,163,164,155,156,157,158,161,162,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,175,161,162,168,163,164,175,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,166,167,163,164,165,166,166,160,159,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,246,247,248,248,248,248,247,247,246,249,250,247,247,0,0,180,179,180,179,180,180,179,180,179,180,179,180,179,179,179,180,179,179,180,180,179,180,179,180,180,179,180,179,180,180,180,180,180,179,180,180,179,180,179,180,179,180,179,180,179,180,179,180,0,0,0,0,0,0,181,181,181,181,181,181,181,181,181,181,181,181,181,184,185,146,181,0,0,0,0,0,0,186,189,190,191,188,187,186,189,190,191,188,187,186,189,187,186,188,187,186,189,188,187,186,189,186,189,188,188,187,186,189,187,190,191,186,189,191,188,187,186,189,188,187,186,189,190,191,188,187,186,189,188,187,186,189,186,190,191,188,187,186,189,190,191,188,187,186,189,189,187,189,190,191,189,187,187,190,188,187,186,189,186,189,188,187,186,189,190,191,188,187,186,189,190,191,188,187,186,189,190,191,188,187,186,189,191,190,190,191,188,187,186,189,0,0,0,0,0,196,59,195,196,59,195,59,196,59,195,59,195,59,195,193,193,59,59,59,59,59,196,195,193,196,59,196,59,59,59,59,59,59,59,196,59,195,59,195,59,59,59,61,59,59,59,59,59,196,59,195,196,59,195,196,61,196,195,193,196,193,59,195,195,59,59,193,59,59,196,59,195,59,196,59,195,196,59,195,196,59,195,193,59,196,59,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,205,207,204,206,200,201,202,212,213,201,203,205,207,210,213,200,201,202,203,204,205,206,207,208,210,212,213,217,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,202,204,206,210,208,208,210,200,201,202,203,204,205,206,207,208,210,212,213,204,205,206,207,200,202,204,206,208,212,218,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,0,213,212,0,0,203,205,207,200,201,202,203,204,205,206,207,208,210,212,213,0,0,0,0,0,72,219,220,221,72,219,220,221,72,219,220,221,72,219,220,221,72,72,219,220,221,72,72,219,72,220,221,72,221,72,72,72,72,221,221,221,221,72,72,221,221,72,72,219,220,221,72,72,219,220,221,72,72,72,72,221,72,72,72,221,221,72,219,220,221,72,219,220,221,72,72,72,72,72,219,220,72,72,72,72,220,220,72,219,221,72,221,72,72,72,72,219,220,221,72,221,72,219,220,221,72,219,220,221,72,219,220,221,219,72,219,220,221,0,0,0,0,223,224,224,223,224,225,226,223,224,225,226,225,223,224,225,223,224,225,223,224,225,223,224,225,226,225,226,223,225,223,223,223,223,224,224,225,225,226,226,223,224,225,226,223,224,225,224,223,224,225,226,223,224,225,226,224,226,224,223,224,225,226,225,225,223,223,223,224,225,223,224,225,226,223,224,225,226,223,224,225,226,223,224,225,226,223,224,225,226,227,227,227,0,0,0,229,228,227,229,228,227,227,227,227,227,228,229,228,227,227,227,227,227,227,227,229,228,227,227,229,228,227,229,228,227,229,228,228,229,229,228,229,227,229,228,227,229,228,227,229,228,227,228,229,229,228,227,0,0,0,0,0,0,0,231,233,234,231,233,234,0,0,0,0,0,0,0,0,0,231,230,231,233,234,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,231,233,234,231,233,234,231,233,234,234,235,236,237,231,233,234,231,233,234,231,231,231,231,233,233,233,233,234,234,234,234,231,233,234,235,238,236,239,237,240,231,233,234,231,233,234,236,237,235,235,239,240,238,238,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,235,238,236,239,237,240,235,238,238,239,240,231,233,234,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,0,0,0,0,0,243,97,241,242,243,97,241,242,97,241,242,97,241,242,97,97,241,242,241,242,97,242,97,97,97,97,97,243,243,97,97,243,97,241,242,97,241,242,97,97,243,97,241,242,243,97,241,242,97,97,97,241,242,97,241,97,241,242,97,243,97,241,242,243,97,241,242,243,97,241,242,242,241,243,243,97,241,242],"f":"`````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}``{c{{j{f}}}l}`{{{b{f}}{b{dn}}}A`}{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{Ab{e}}}{}{}}```{{{b{f}}c}jAd}`{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}5````````````````````>>>>>>>>========{{{b{Ah}}}Ah}{{{b{Aj}}}Aj}{{{b{Al}}}Al}{{{b{An}}}An}{{{b{B`}}}B`}{{{b{Bb}}}Bb}{{{b{Bd}}}Bd}{{{b{Bf}}}Bf}{{{b{c}}{b{de}}}h{}{}}0000000{{{b{c}}}h{}}000000000000{{{b{Ah}}{b{Ah}}}Bh}{{{b{Aj}}{b{Aj}}}Bh}{{{b{Al}}{b{Al}}}Bh}{{{b{An}}{b{An}}}Bh}{{{b{B`}}{b{B`}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0000`{{}Bb}{{}Bd}{c{{j{Ah}}}l}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ajc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ahc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Anc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Alc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}B`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Bf}}}l}{{{b{Ah}}{b{Ah}}}Cd}{{{b{Aj}}{b{Aj}}}Cd}{{{b{Al}}{b{Al}}}Cd}{{{b{An}}{b{An}}}Cd}{{{b{B`}}{b{B`}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000000000000000{{{b{Ah}}{b{dn}}}A`}0{{{b{Aj}}{b{dn}}}A`}{{{b{Al}}{b{dn}}}A`}{{{b{An}}{b{dn}}}A`}{{{b{B`}}{b{dn}}}A`}{{{b{Bf}}{b{dn}}}A`}{cc{}}0000000{{{b{{Bl{Bj}}}}}{{j{AlCf}}}}{{{b{{Bl{Bj}}}}}{{j{B`Cf}}}}{{{b{Ch}}}Ah}{{{b{Ch}}}An}{{{b{Cj}}}B`}{{{b{c}}}c{}}0000000{{{b{Cl}}}{{j{Ahc}}}{}}{{{b{Cl}}}{{j{AjCf}}}}{{{b{Cl}}}{{j{AnCf}}}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0000{{{b{Ah}}Bj}Bj}{{{b{An}}Bj}Bj}{{{b{B`}}Bj}Bj}{{{b{Al}}}Cn}{{{b{B`}}}Cn}{{{b{Ah}}{b{dc}}}hDf}{{{b{Aj}}{b{dc}}}hDf}{{{b{Al}}{b{dc}}}hDf}{{{b{An}}{b{dc}}}hDf}{{{b{B`}}{b{dc}}}hDf}`{ce{}{}}0000000{c{{Ab{e}}}{}{}}0000000`{{}Bb}{{}Bd}``{{{b{Ah}}{b{Ah}}}{{Dh{Bh}}}}{{{b{Aj}}{b{Aj}}}{{Dh{Bh}}}}{{{b{Al}}{b{Al}}}{{Dh{Bh}}}}{{{b{An}}{b{An}}}{{Dh{Bh}}}}{{{b{B`}}{b{B`}}}{{Dh{Bh}}}}{{{b{Ah}}c}jAd}{{{b{Aj}}c}jAd}{{{b{Al}}c}jAd}{{{b{An}}c}jAd}{{{b{B`}}c}jAd}{{{b{Bb}}{b{Al}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{Aj}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{B`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{An}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{Ah}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bf}}c}jAd}{{{b{c}}}e{}{}}0000000{Ah{{Dj{Bj}}}}{Aj{{Dj{Bj}}}}{Al{{Dj{Bj}}}}{An{{Dj{Bj}}}}{B`{{Dj{Bj}}}}{{{b{c}}}Dn{}}0000{c{{j{e}}}{}{}}000000000000000`{{{b{c}}}Af{}}0000000```{ce{}{}}0000000````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{E`E`}{{Dh{E`}}}}{{E`E`}{{Dh{Cn}}}}{{E`Cn}{{Dh{E`}}}}0{{{b{E`}}{b{E`}}}{{Dh{E`}}}}{{{b{E`}}Cn}{{Dh{E`}}}}4{{{b{E`}}}E`}{{{b{Eb}}}Eb}{{{b{Ed}}}Ed}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}000{{{b{E`}}{b{E`}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{{CnEf}E`}{{}E`}{{}Eb}{c{{j{E`}}}l}{{{b{Ed}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}E`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{E`}}{b{E`}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{Eh}}{b{dn}}}A`}{{{b{c}}{b{dn}}}{{j{hEj}}}{}}{{{b{E`}}{b{dn}}}A`}0{cc{}}000{El{{j{E`Cf}}}}{{CnEf}{{j{E`Cf}}}}{CnE`}{{{b{c}}}c{}}00{{{b{Cl}}}{{j{E`c}}}{}}{ce{}{}}000{c{{Ab{e}}}{}{}}000{{{b{E`}}}Cd}{{}Eb}{{{En{E`}}{En{E`}}}Ed}{{{b{E`}}{b{E`}}}{{Dh{Bh}}}}{{E`E`}E`}{{E`Cn}E`}1{{{b{E`}}c}jAd}{{{b{Eb}}{b{E`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{E`El}{{{b{E`}}}{{F`{CnEf}}}}{{{b{c}}}e{}{}}00{{{b{E`}}}Cn}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000``{{Eh{b{Cl}}}{{j{E`c}}}Fb}{ce{}{}}000{{}E`}```````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{b{Fd}}}Cn}`{{{b{Ff}}}Ff}{{{b{Fh}}}Fh}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{Fd}}Fj}Cd}```{{}Fl}{{{b{Fn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ffc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Ff}}}l}{{{Dh{{b{G`}}}}{b{Gb}}{b{Gd}}{b{c}}{b{{Bl{Bj}}}}Cn}{{Bn{{b{{Bl{Bj}}}}{Gf{Ffe}}g}}}{{Gh{Ff}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Fh}}}l}{c{{j{Gl}}}l}`{{{b{Gl}}{b{Gl}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{Ff}}{b{dn}}}A`}0{{{b{Fh}}{b{dn}}}A`}{{{b{Gl}}{b{dn}}}A`}{cc{}}00000{{{b{c}}}c{}}0{{{b{Fd}}}Cn}`````{ce{}{}}00000{c{{Ab{e}}}{}{}}00000```?{GnFn}{{Ffc{b{H`}}Cn}{{j{{Gf{Ffe}}Cf}}}{{G`{Ff}}}Gj}````{{{b{Fl}}{b{Ff}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Hb}}{b{Ch}}{b{{Bl{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Ff}}c}jAd}{{{b{Fh}}c}jAd}{{{b{Gl}}c}jAd}```{{{b{c}}}e{}{}}0{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}00000000000{{{b{c}}}Af{}}00000<<<<<<````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000`{{{b{Hd}}}Hd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{Hd}}{b{Ch}}{b{Hf}}}Hf}````{{}Hh}````{{{b{Hj}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Hdc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Hd}}}l}``````{{{b{Hd}}{b{dn}}}A`}0{{{b{Hl}}{b{dn}}}A`}{cc{}}000{{{b{c}}}c{}}{{{b{Hn}}}Cn}``{ce{}{}}000{c{{Ab{e}}}{}{}}000``9{{BjEfEf{Dh{Cn}}Cn}Hj}{I`Hl}````{{{b{Hh}}{b{Hd}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Hd}}c}jAd}```````{{{b{Hl}}}{{Dj{Bj}}}}{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000`::::````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{Ib}}}Ib}{{{b{Id}}}Id}{{{b{If}}}If}{{{b{Ih}}}Ih}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}00000{{{b{Ib}}{b{Ib}}}Bh}{{{b{Id}}{b{Id}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0{{}If}{{}Ih}{c{{j{Ib}}}l}{c{{j{Id}}}l}{{{b{Ih}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Idc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Ih}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ibc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Ib}}{b{Ib}}}Cd}{{{b{Id}}{b{Id}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{Ib}}{b{dn}}}A`}0{{{b{Id}}{b{dn}}}A`}{cc{}}000{{{b{c}}}c{}}000{{{b{Cl}}}{{j{Ibc}}}{}}{{{b{Cl}}}{{j{Idc}}}{}}{{{b{Ib}}}Cd}{{{b{Id}}}Cd}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{Ib}}}{{b{Hf}}}}1{{{b{Id}}}{{b{Hf}}}}{{{b{Ib}}}Cn}{{{b{Id}}}Cn}{{{b{Ib}}{b{dc}}}hDf}{{{b{Id}}{b{dc}}}hDf}`{ce{}{}}000{c{{Ab{e}}}{}{}}000{HfIb}{{}If}{{}Ih}{{{b{Ib}}{b{Ib}}}{{Dh{Bh}}}}{{{b{Id}}{b{Id}}}{{Dh{Bh}}}}{{{b{Ib}}c}jAd}{{{b{Id}}c}jAd}{{{b{If}}{b{Ib}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{If}}{b{Id}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}0{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000``>>>>````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Ij}}}Ij}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{}Ij}{{}Il}{{{b{In}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ijc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Ij}}}l}{{{b{Ij}}{b{Ij}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{Ij}}{b{dn}}}A`}{cc{}}00{{{b{c}}}c{}}{ce{}{}}00{c{{Ab{e}}}{}{}}00{CnIn}:{{{b{Ij}}c}jAd}{{{b{Il}}{b{Ij}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00````777````````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{J`}}}J`}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{}J`}{{}Jb}{{{b{Jd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}J`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{J`}}}l}```{{{b{J`}}{b{dn}}}A`}{cc{}}00{{{b{c}}}c{}}{ce{}{}}00{c{{Ab{e}}}{}{}}00`{EfJd}8{{{b{J`}}c}jAd}{{{b{Jb}}{b{J`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00777`````````````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{{b{Jf}}}Jf}{{{b{Jh}}}Jh}{{{b{Jj}}}Jj}{{{b{Jl}}}Jl}{{{b{Jn}}}Jn}{{{b{c}}{b{de}}}h{}{}}0000{{{b{c}}}h{}}0000`{c{{j{Jf}}}l}{c{{j{Jh}}}l}{c{{j{Jj}}}l}{c{{j{Jl}}}l}{c{{j{Jn}}}l}{{{b{dJj}}{b{Jj}}}h}{{{b{Jf}}{b{dn}}}A`}{{{b{Jh}}{b{dn}}}A`}{{{b{Jj}}{b{dn}}}A`}{{{b{Jl}}{b{dn}}}A`}{{{b{Jn}}{b{dn}}}A`}0{cc{}}0000{{{b{c}}}c{}}0000``{ce{}{}}0000{c{{Ab{e}}}{}{}}0000````{{{b{Jf}}c}jAd}{{{b{Jh}}c}jAd}{{{b{Jj}}c}jAd}{{{b{Jl}}c}jAd}{{{b{Jn}}c}jAd}``{{{b{c}}}e{}{}}0000{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}000000000{{{b{c}}}Af{}}0000:::::``{{{b{Cl}}{b{Cl}}}cK`}``````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Kb}}}Kb}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{{}Kb}`{c{{j{Kb}}}l}`{{{b{Kb}}{b{dn}}}A`}0{cc{}}{{{b{c}}}c{}}`{ce{}{}}{c{{Ab{e}}}{}{}}````{{{b{Kb}}c}jAd}``{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}6```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{b{Kd}}}{{b{Kf}}}}{{{b{Kh}}}{{b{{Dh{Kf}}}}}}{{{b{Kj}}}{{b{H`}}}}{{{b{Kl}}}{{b{{Kn{Cn}}}}}}{{{b{L`}}}{{b{Lb}}}}{{{b{Ld}}}{{b{Cn}}}}{cc{}}00000{{}Cn}{ce{}{}}00000{c{{Ab{e}}}{}{}}00000============<<<<<<111111{{{b{Cl}}{b{Cl}}}cK`}```<<;;{{}Lf}{{{b{Lh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Lj{{Dj{Bj}}{Dj{Bj}}}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}66{{{b{{Bl{Bj}}}}}{{F`{{En{{Dj{Bj}}}}{En{{Dj{Bj}}}}}}}}5544``{{CnBjCn}Lh}3{{{b{Lf}}{b{{Lj{{Dj{Bj}}{Dj{Bj}}}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{c{{j{e}}}{}{}}000{{{b{c}}}Af{}}0```99````````{{{b{Ll}}}{{b{{Bl{Bj}}}}}}{{{b{Ln}}}{{b{{Bl{Bj}}}}}}{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000``{{{b{Ll}}}Ll}{{{b{Ln}}}Ln}{{{b{M`}}}M`}{{{b{Mb}}}Mb}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}000{{{b{Ll}}{b{Ll}}}Bh}{{{b{Ln}}{b{Ln}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0{{}M`}{{}Mb}{c{{j{Ll}}}l}{{{b{Mb}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Llc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Ll}}{b{Ll}}}Cd}{{{b{Ln}}{b{Ln}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{Ll}}{b{dn}}}A`}0{{{b{Ln}}{b{dn}}}A`}{cc{}}000{{{b{{Bl{Bj}}}}}{{j{LlCf}}}}{{{b{{Bl{Bj}}}}}{{j{LnCf}}}}{{{b{c}}}c{}}000{{{b{Cl}}}{{j{Llc}}}{}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0{{{b{Ll}}}{{j{I`Cf}}}}{{{b{Ll}}{b{dc}}}hDf}{{{b{Ln}}{b{dc}}}hDf}{ce{}{}}000{c{{Ab{e}}}{}{}}000{{CnI`Cn{b{{Bl{Bj}}}}}{{j{LlCf}}}}{{}M`}{{}Mb}{{{b{Ll}}{b{Ll}}}{{Dh{Bh}}}}{{{b{Ln}}{b{Ln}}}{{Dh{Bh}}}}{{{b{Ll}}c}jAd}{{{b{M`}}{b{Ll}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000<<<<``````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}00000000000000000{{{b{dc}}}{{b{de}}}{}{}}00000000000000000{{{b{Md}}}Md}{{{b{Mf}}}Mf}{{{b{Mh}}}Mh}{{{b{Mj}}}Mj}{{{b{Ml}}}Ml}{{{b{Mn}}}Mn}{{{b{N`}}}N`}{{{b{Nb}}}Nb}{{{b{Nd}}}Nd}{{{b{c}}{b{de}}}h{}{}}00000000{{{b{c}}}h{}}000000000{{{b{Mj}}{b{Mj}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{{{b{Ch}}{b{I`}}{b{Ef}}{b{Hf}}}Hf}{{{b{Ch}}{b{I`}}{b{Hf}}}Hf}{{}Nf}{{}Nh}{{}Nj}{{}Ml}{{{b{Nl}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mdc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Nn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mfc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{O`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mhc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Md}}}l}{c{{j{Mf}}}l}{c{{j{Mh}}}l}{c{{j{Mj}}}l}{{{b{Mn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mjc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}``{{{b{Md}}{b{Md}}}Cd}{{{b{Mf}}{b{Mf}}}Cd}{{{b{Mh}}{b{Mh}}}Cd}{{{b{Mj}}{b{Mj}}}Cd}{{{b{Ob}}{b{Ob}}}Cd}{{{b{N`}}{b{N`}}}Cd}{{{b{Nb}}{b{Nb}}}Cd}{{{b{Nd}}{b{Nd}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{Md}}{b{dn}}}A`}{{{b{Mf}}{b{dn}}}A`}{{{b{Mh}}{b{dn}}}A`}{{{b{Od}}{b{dn}}}A`}{{{b{Of}}{b{dn}}}A`}0{{{b{Mj}}{b{dn}}}A`}{{{b{Ob}}{b{dn}}}A`}{{{b{N`}}{b{dn}}}A`}{{{b{Nb}}{b{dn}}}A`}{{{b{Nd}}{b{dn}}}A`}{cc{}}000000000{{{b{Mh}}}Od}{DlOf}{OhOf}3{{{b{Mh}}}Mj}{{{b{Nd}}}Mj}55{{{b{Mj}}}Ob}6666{{{b{Oj}}}Nd}7{{{b{Hn}}}Nd}{{{b{c}}}c{}}00000000{{{b{Mj}}}Hf}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{Md}}}{{b{Hf}}}}{{{b{Mf}}}{{b{Hf}}}}10{{{b{Md}}}{{b{Ef}}}}{{{b{Mh}}}{{Dh{{b{Ef}}}}}}{{{b{Mj}}}{{Dh{{b{Ef}}}}}}{{{b{Md}}}{{b{Ch}}}}{{{b{Mf}}}{{b{Ch}}}}{{{b{Mh}}}{{b{Ch}}}}{{{b{Nd}}}{{b{Ch}}}}{{{b{Md}}}{{b{Hb}}}}{{{b{Mf}}}{{b{Hb}}}}10{{{b{Md}}}{{b{I`}}}}{{{b{Mf}}}{{b{I`}}}}{{{b{Mh}}}{{b{I`}}}}{{{b{Mj}}}{{b{I`}}}}{{{b{Nd}}}{{b{I`}}}}{{{b{Mj}}{b{dc}}}hDf}````````````````{ce{}{}}00000000000000000{c{{Ab{e}}}{}{}}00000000000000000{{{b{Mh}}{b{Hn}}}{{j{CdOf}}}}{{{b{Mh}}{b{Oj}}}{{j{CdOf}}}}{{{b{Cn}}{b{Cn}}{b{Cn}}}Cd}{{{b{Mh}}}Cd}00{{}Nf}{{BjEf}Nl}{{}Nh}{BjNn}{{}Nj}{{BjEf}O`}{{}Ml}{{BjEf}Mn}{{{b{Mj}}{b{Mj}}}{{Dh{Bh}}}}``````{{{b{Nf}}{b{Md}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Nh}}{b{Mf}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Nj}}{b{Mh}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Md}}c}jAd}{{{b{Mf}}c}jAd}{{{b{Mh}}c}jAd}{{{b{Mj}}c}jAd}{{{b{Ml}}{b{Mj}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}``````````````````{{{b{Of}}}{{Dh{{b{Ol}}}}}}{{{b{c}}}e{}{}}00000000{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{F`{{b{Oj}}{b{Oj}}}}}{{j{Mhc}}}{}}{{{F`{{b{Nd}}{b{Nd}}}}}{{j{Mhc}}}{}}2{{{F`{{b{Hn}}{b{Hn}}}}}{{j{Mhc}}}{}}3{Ef{{j{Od{On{Od}}}}}}44{Ef{{j{Ob{On{Ob}}}}}}555555{c{{j{Od{On{Od}}}}}{}}{c{{j{Ob{On{Ob}}}}}{}}777777777777777777{{{b{c}}}Af{}}00000000000000000````{ce{}{}}00000000000000000`````````````````````{{{b{c}}}{{b{e}}}{}{}}00000000{{{b{dc}}}{{b{de}}}{}{}}00000000{{{b{A@`}}}A@`}{{{b{A@b}}}A@b}{{{b{A@d}}}A@d}{{{b{A@f}}}A@f}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}00000{{{b{A@`}}{b{A@`}}}Bh}{{{b{A@b}}{b{A@b}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0{{{b{A@d}}{b{Ch}}{b{Hf}}}Hf}```{{}A@h}{{}A@f}{{{b{A@j}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{A@j}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@bc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{A@l}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@dc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{A@n}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@dc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{A@`}}}l}{c{{j{A@b}}}l}{c{{j{A@d}}}l}``{{{b{A@`}}{b{A@`}}}Cd}{{{b{A@b}}{b{A@b}}}Cd}{{{b{A@d}}{b{A@d}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}00000000000{{{b{A@`}}{b{dn}}}A`}0{{{b{A@b}}{b{dn}}}A`}{{{b{A@d}}{b{dn}}}A`}0{{{b{AA`}}{b{dn}}}A`}{cc{}}00000000{{{b{c}}}c{}}000{{{b{Cl}}}{{j{A@`c}}}{}}{{{b{Cl}}}{{j{A@bc}}}{}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{A@`}}}{{b{Hf}}}}{{{b{A@b}}}{{b{Hf}}}}2{{{b{A@`}}{b{dc}}}hDf}{{{b{A@b}}{b{dc}}}hDf}``````{ce{}{}}00000000{c{{Ab{e}}}{}{}}00000000{{}A@j}{{BjEf}A@l}{{}A@h}{{EfI`Ib}A@n}{HfA@`}{{}A@f}{{I`Ef}AA`}{{{b{A@`}}{b{A@`}}}{{Dh{Bh}}}}{{{b{A@b}}{b{A@b}}}{{Dh{Bh}}}}{{{b{A@h}}{b{A@d}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{A@`}}c}jAd}{{{b{A@b}}c}jAd}{{{b{A@d}}c}jAd}{{{b{A@f}}{b{A@d}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}```````{{{b{AA`}}}{{Dj{Bj}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}00{c{{j{e}}}{}{}}00000000000000000{{{b{c}}}Af{}}00000000```{ce{}{}}00000000```````````````````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Cf}}}Cf}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{Cf}}{b{dn}}}A`}0{{{b{Cl}}}Cf}{cc{}}{{{AAd{{AAb{{b{{Bl{Bj}}}}}}}}}Cf}{AAfCf}{DlCf}{AAhCf}{OhCf}{{{b{c}}}c{}}>{c{{Ab{e}}}{}{}}{{{b{Cf}}}{{Dh{{b{Ol}}}}}}{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}{ce{}{}}`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{AAj}}}AAj}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{}AAj}{c{{j{AAj}}}l}``{{{b{AAj}}{b{dn}}}A`}{cc{}}{{{b{c}}}c{}}:{c{{Ab{e}}}{}{}}````{{{b{AAj}}c}jAd}`{{{b{c}}}e{}{}}??>=```````````````{{{b{dAAl}}{b{Ah}}{b{AAn}}}{{AB`{h}}}}{{{b{dABb}}{b{AAn}}}{{AB`{h}}}}```>>>>>>>>>========={{{b{dAAn}}{b{AAn}}}{{AB`{hCf}}}}{{{b{dAAl}}{b{AAl}}}{{AB`{h}}}}{{{b{ABb}}}ABb}{{{b{AAn}}}AAn}{{{b{AAl}}}AAl}{{{b{c}}{b{de}}}h{}{}}00{{{b{AAl}}{b{{ABd{Ah}}}}}AAl}{{{b{c}}}h{}}000{{}ABf}{{}ABh}{{}ABj}{{}ABb}{{}ABl}{{}AAn}{{}ABn}{{}AAl}{{{b{ABf}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ABbc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{ABh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AAnc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AC`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AAlc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{ABb}}}l}{c{{j{AAn}}}l}{c{{j{AAl}}}l}{{{b{ABb}}{b{dn}}}A`}{{{b{AAn}}{b{dn}}}A`}{{{b{AAl}}{b{dn}}}A`}{cc{}}00000000{{{b{c}}}c{}}00{{{b{AAl}}}{{ABd{Ah}}}}{ce{}{}}00000000{c{{Ab{e}}}{}{}}00000000{{{b{ABb}}}Cd}{{{b{AAn}}}Cd}````{{}ABf}{{}ABh}{{}ABj}{CnAC`}{E`ABb}{{}ABl}{{}ABn}{{{b{ABj}}{b{AAl}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{ABb}}c}jAd}{{{b{ABl}}{b{ABb}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{AAn}}c}jAd}{{{b{ABn}}{b{AAn}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{AAl}}c}jAd}{{{b{dAAl}}{b{{ABd{Ah}}}}AAl}h}{{{b{c}}}e{}{}}00{c{{j{e}}}{}{}}00000000000000000{{{b{c}}}Af{}}00000000{ce{}{}}00000000{ACb{{j{MjCf}}}}``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{ACd}}}ACd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{{{b{ACd}}{b{ACd}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{c{{j{ACd}}}l}{{{b{ACd}}{b{ACd}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{ACd}}{b{dn}}}A`}0{cc{}}{{{b{c}}}c{}}{{{b{Cl}}}{{j{ACdc}}}{}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{ACd}}}Ch}{{{b{ACd}}{b{dc}}}hDf}{ce{}{}}{c{{Ab{e}}}{}{}}{ChACd}{{{b{ACd}}{b{ACd}}}{{Dh{Bh}}}}{{{b{ACd}}c}jAd}{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}8``````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}0000000000000000000{{{b{dc}}}{{b{de}}}{}{}}0000000000000000000{{{b{ACf}}}ACf}{{{b{ACh}}}ACh}{{{b{ACj}}}ACj}{{{b{ACl}}}ACl}{{{b{ACn}}}ACn}{{{b{AD`}}}AD`}{{{b{ADb}}}ADb}{{{b{ADd}}}ADd}{{{b{ADf}}}ADf}{{{b{ADh}}}ADh}{{{b{c}}{b{de}}}h{}{}}000000000{{{b{c}}}h{}}0000000000000{{{b{ACf}}{b{ACf}}}Bh}{{{b{ACh}}{b{ACh}}}Bh}{{{b{ACj}}{b{ACj}}}Bh}{{{b{ACl}}{b{ACl}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}000{{{b{ADb}}{b{{Bl{Bj}}}}{b{Ch}}Cn}Hf}{{{b{{Bl{ACf}}}}{b{ACn}}}Hf}``````{{}ADj}{{}ADl}{{}ADn}{{}ACn}{{}AD`}{{}AE`}{{}ADf}{{}ADh}{{{b{AEb}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ADbc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ADdc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEf}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{ACf}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AEjc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEl}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{Fj}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{ACf}}}l}{c{{j{ACh}}}l}{c{{j{ACj}}}l}{c{{j{ACl}}}l}{{{b{AD`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ACfc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AD`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AChc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{ADb}}}l}{c{{j{ADd}}}l}{{{b{AE`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ACjc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{ACf}}{b{ACf}}}Cd}{{{b{ACh}}{b{ACh}}}Cd}{{{b{ACj}}{b{ACj}}}Cd}{{{b{ACl}}{b{ACl}}}Cd}{{{b{AEn}}{b{AEn}}}Cd}{{{b{ADd}}{b{ADd}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000000000000000```{{{b{ACf}}{b{dn}}}A`}0{{{b{ACh}}{b{dn}}}A`}0{{{b{ACj}}{b{dn}}}A`}0{{{b{ACl}}{b{dn}}}A`}0{{{b{AEn}}{b{dn}}}A`}{{{b{ADb}}{b{dn}}}A`}0{{{b{ADd}}{b{dn}}}A`}0{cc{}}000000000{{{b{{AF`{Bj}}}}}ACj}1111111111{{{b{c}}}c{}}000000000{{{b{Cl}}}{{j{ACfc}}}{}}{{{b{Cl}}}{{j{AChc}}}{}}``{{{b{Fj}}CnCn}Cn}{{{b{ACf}}}{{b{Hf}}}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{ACh}}}{{b{Hf}}}}111{{{b{Fj}}}{{ABd{Ah}}}}{{{b{Fj}}E`}E`}{{{b{Fj}}}{{j{{ABd{Ah}}Cf}}}}{{{b{Fj}}Cn}{{AFb{Cn}}}}{{{b{ACf}}}Cn}{{{b{ACh}}}Cn}{{{b{ACf}}{b{dc}}}hDf}{{{b{ACh}}{b{dc}}}hDf}{{{b{ACj}}{b{dc}}}hDf}{{{b{ACl}}{b{dc}}}hDf}```{ce{}{}}0000000000000000000{ACfACj}{AChACj}{c{{Ab{e}}}{}{}}0000000000000000000````{{}ADj}{{CnAFdEfCnBjCn}AEb}{{}ADl}{{CnAFdEfCnBjCn}AEd}{{}ADn}{EfAEf}{EfAEh}{{EfCnAFdEfCnBjCnCn}AEl}{HfACf}{{}ACn}{{}AD`}{{}AE`}{{}ADf}{{}ADh}``````{{{b{ACf}}{b{ACf}}}{{Dh{Bh}}}}{{{b{ACh}}{b{ACh}}}{{Dh{Bh}}}}{{{b{ACj}}{b{ACj}}}{{Dh{Bh}}}}{{{b{ACl}}{b{ACl}}}{{Dh{Bh}}}}`{{{b{ACf}}}ACj}{{{b{ACh}}}ACj}`{{{b{ADj}}{b{ADb}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADl}}{b{ADd}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADn}}{b{{Dj{ACf}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ACf}}c}jAd}{{{b{ACh}}c}jAd}{{{b{ACj}}c}jAd}{{{b{ACl}}c}jAd}{{{b{ACn}}{b{ACh}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ACn}}{b{ACf}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADb}}c}jAd}{{{b{ADd}}c}jAd}{{{b{ADf}}{b{AEj}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADh}}{b{{Dj{Fj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}````{{{b{c}}}e{}{}}000000000{{{b{c}}}Dn{}}00000{c{{j{e}}}{}{}}00000000000000{Ef{{j{AEn{On{AEn}}}}}}11111{c{{j{AEn{On{AEn}}}}}{}}22222222222222222222{{{b{c}}}Af{}}0000000000000000000`````````{ce{}{}}0000000000000000000````````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0`{{{b{AFf}}}AFf}{{{b{AFh}}}AFh}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0``{c{{j{AFf}}}l}{c{{j{AFh}}}l}{{{b{AFf}}{b{dn}}}A`}0{{{b{AFh}}{b{dn}}}A`}0{cc{}}0{{{b{c}}}c{}}0`<<{c{{Ab{e}}}{}{}}0````{{{b{AFf}}c}jAd}{{{b{AFh}}c}jAd}`{{{b{c}}}e{}{}}0{{{b{c}}}Dn{}}0{c{{j{e}}}{}{}}000{{{b{c}}}Af{}}0{ce{}{}}0``````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{}{{AFj{c}}}AFl}{{{b{{AFj{c}}}}}CnAFl}=`4;`6654{AFnAG`}{AFn{{AGb{ce}}}AFl{}}{AFn{{ABd{c}}}AFl}{{{b{d{AFj{c}}}}{b{{Bl{Bj}}}}}hAFl}``````{{{b{dAGd}}{b{Ah}}{b{AGf}}}{{AB`{AGh}}}}{{{b{dAGj}}{b{AGd}}}{{AB`{h}}}}999999888888{{{b{dAGf}}{b{AGf}}}{{AB`{AGh}}}}{{{b{dAGd}}{b{AGd}}}{{AB`{{AGb{AhAGh}}}}}}{{{b{AGh}}}AGh}{{{b{AGf}}}AGf}{{{b{AGd}}}AGd}{{{b{AGj}}}AGj}{{{b{c}}{b{de}}}h{}{}}000{{{b{AGd}}{b{{ABd{Ah}}}}}AGd}{{{b{AGj}}{b{{ABd{Ah}}}}}AGj}{{{b{c}}}h{}}0000{{{b{dAGf}}}AGh}{{}AGl}{{}AGn}{{}AGd}{{}AGj}{{{b{AGn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AGfc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{AGh}}}l}{c{{j{AGf}}}l}{c{{j{AGd}}}l}{c{{j{AGj}}}l}{{{b{AGh}}{b{dn}}}A`}{{{b{AGf}}{b{dn}}}A`}{{{b{AGd}}{b{dn}}}A`}{{{b{AGj}}{b{dn}}}A`}{cc{}}00000{{{b{c}}}c{}}000{{{b{AGd}}}{{ABd{Ah}}}}{ce{}{}}00000{c{{Ab{e}}}{}{}}00000{{{b{AGj}}}Cd}{{{b{AGf}}}Cd}{{{b{AGj}}}AFn}{{}AGl}{{}AGn}{{}AGj}``{{{b{AGl}}{b{AGf}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{AGh}}c}jAd}{{{b{AGf}}c}jAd}{{{b{AGd}}c}jAd}{{{b{AGj}}c}jAd}{{{b{dAGd}}{b{{ABd{Ah}}}}AGd}h}{{{b{dAGj}}{b{{ABd{Ah}}}}AGj}h}{{{b{c}}}e{}{}}000{c{{j{e}}}{}{}}00000000000{{{b{c}}}Af{}}00000``{ce{}{}}00000`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{{Gf{FfIb}}}}}Cn}`{{{b{{Gf{ce}}}}}{{Gf{ce}}}{AH`AHbAHd}{GjAHd}}{{{b{AHf}}}AHf}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{AHb}}{b{{Bl{Bj}}}}{b{Ch}}Cn}Hf}{{{b{AHb}}{b{Ch}}{b{Hf}}}Hf}{{{b{{Gf{ce}}}}}Hf{AH`AHb}Gj}{{{b{{Gf{FfIb}}}}Fj}Cd}````{{}AHf}{{{Dh{{b{G`}}}}{b{Gb}}{b{Gd}}{b{c}}{b{{Bl{Bj}}}}Cn}{{Bn{{b{{Bl{Bj}}}}{Gf{AHbe}}g}}}{{Gh{AHb}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AHh{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Gf{cg}}i}}}{AH`AHb}{{Gh{c}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{{Gf{eg}}}}}l{AH`AHbK`}{GjK`}}{{{b{{AHh{ce}}}}{b{g}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Gf{ci}}k}}}{AH`AHb}{{Gh{c}}}{{G`{c}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{Gf{ce}}}}{b{{Gf{ce}}}}}Cd{AH`AHbAHj}{GjAHj}}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{{Gf{ce}}}}{b{dn}}}A`{AH`AHbAHl}{GjAHl}}{{{b{{Gf{ce}}}}{b{dn}}}A`{AH`AHb}Gj}{cc{}}00{{{b{c}}}c{}}0{{{b{{Gf{FfIb}}}}}Cn}{{{b{{Gf{HdIb}}}}}Cn}{{{b{{Gf{ADbACf}}}}CnCn}Cn}{{{b{Gj}}}{{b{Hf}}}}{{{b{{Gf{ADbACf}}}}}{{ABd{Ah}}}}{{{b{{Gf{ADbACf}}}}E`}E`}{{{b{{Gf{ADbACf}}}}}{{j{{ABd{Ah}}Cf}}}}{{{b{{Gf{ADbACf}}}}Cn}{{AFb{Cn}}}}`{ce{}{}}00{c{{Ab{e}}}{}{}}00`{HfGj}{{eCn}{{AHh{ce}}}{AH`AHb}{{Gh{c}}}}{{}AHf}{{AHbc{b{H`}}Cn}{{j{{Gf{AHbe}}Cf}}}{{G`{AHb}}}Gj}`{{{b{Hb}}{b{Ch}}{b{{Bl{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{{Gf{ce}}}}g}j{AH`AHbAHn}{GjAHn}Ad}{{{b{AHf}}{b{{Gf{ce}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{AH`AHb}Gj}{{{b{AHf}}{b{e}}{b{{Gf{cg}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{AH`AHb}{{G`{c}}}Gj}`{{{b{{Gf{ce}}}}}AFn{AH`AHb}Gj}{{{b{AHb}}{b{H`}}{b{Hf}}}{{j{HbCf}}}}{{{b{H`}}{b{Hf}}{b{c}}}{{j{HbCf}}}{AH`AHb}}``{{{b{c}}}e{}{}}0{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00{{{b{AHb}}{b{Ch}}{b{Hf}}{b{Hb}}}{{j{hCf}}}}{{{b{{Gf{ce}}}}}{{j{hCf}}}{AH`AHb}Gj}{ce{}{}}00``````````````{{{b{{Bl{Bj}}}}}{{j{{AF`{Bj}}Cf}}}}{{{b{c}}}{{b{e}}}{}{}}00000000000{{{b{dc}}}{{b{de}}}{}{}}00000000000{{{b{AI`}}}AI`}{{{b{AIb}}}AIb}{{{b{AId}}}AId}{{{b{AIf}}}AIf}{{{b{{AIh{ce}}}}}{{AIh{ce}}}AHd{{G`{c}}AHd}}{{{b{{AIj{ce}}}}}{{AIj{ce}}}AHd{{Gh{c}}AHdAHd}}{{{b{{AIl{ce}}}}}{{AIl{ce}}}AHd{{G`{c}}AHd}}{{{b{{AIn{ce}}}}}{{AIn{ce}}}AHd{{Gh{c}}AHdAHd}}{{{b{{AJ`{ec}}}}}{{AJ`{ec}}}{{AJb{AFn}}AHd}{{G`{c}}AHd}}{{{b{{AJd{ec}}}}}{{AJd{ec}}}{{AJb{AFn}}AJfAHd}{{Gh{c}}AHd}}{{{b{AJh}}}AJh}{{{b{AJj}}}AJj}{{{b{c}}{b{de}}}h{}{}}00000000000{{{b{c}}}h{}}00000000000````{{}AI`}{{}AIb}{{}AId}{{}AJh}{{}AJj}{{{b{AIb}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AJlc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AIf}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{Bj}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AIj{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{c}}g}}}{}{{Gh{c}}AHd}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AIn{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{ABd{c}}g}}}{AFlAJnD`}{{Gh{c}}AHd}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AJd{ec}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Dng}}}{{AJb{AFn}}AJf}{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AJj}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{AK`{Bj}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{cc{}}00000000000{{{b{{Bl{Bj}}}}AKb}{{j{{F`{AKbAFn}}Cf}}}}{{{b{c}}}c{}}00000000000{ce{}{}}00000000000{c{{Ab{e}}}{}{}}00000000000```````?>={{{En{Cn}}{En{Cn}}}AIf}{e{{AIh{ce}}}{}{{G`{c}}}}{{e{En{Cn}}{En{Cn}}}{{AIj{ce}}}{}{{Gh{c}}AHd}}{e{{AIl{ce}}}{}{{G`{c}}}}{{e{En{Cn}}{En{Cn}}}{{AIn{ce}}}{}{{Gh{c}}AHd}}{e{{AJ`{ec}}}{{AJb{AFn}}}{{G`{c}}}}{e{{AJd{ec}}}{{AJb{AFn}}AJf}{{Gh{c}}}}{{}AJh}{{}AJj}````{{{b{AI`}}{b{AJl}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{AId}}{b{{Dj{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{{AIh{ce}}}}{b{{Dj{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{}{{G`{c}}}}{{{b{{AIl{ce}}}}{b{{ABd{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AFl{{G`{c}}}}{{{b{{AJ`{ec}}}}{b{Dn}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{{AJb{AFn}}}{{G`{c}}}}{{{b{AJh}}{b{{AK`{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{AKdAKd}{{j{{Dj{Bj}}Cf}}}}{{{b{c}}}e{}{}}00000000000{c{{j{e}}}{}{}}00000000000000000000000{{{b{c}}}Af{}}00000000000{EfAFn}``{CnAFn}{{{b{{Bl{Bj}}}}}{{j{BjCf}}}}```{ce{}{}}00000000000`````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{I`}}}I`}{{{b{AKf}}}AKf}{{{b{AKh}}}AKh}{{{b{AKj}}}AKj}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}0000{{{b{I`}}{b{I`}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{{}AKf}{c{{j{I`}}}l}{{{b{AKh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}I`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{AKj}}}l}{{{b{I`}}{b{I`}}}Cd}{{{b{AKj}}{b{AKj}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{I`}}{b{dn}}}A`}0{{{b{AKj}}{b{dn}}}A`}0{cc{}}{AKlI`}111{{{b{{AF`{Bj}}}}}I`}{{{b{c}}}c{}}000{{{b{Cl}}}{{j{I`c}}}{}}{{{b{I`}}Cn}Cn}{{{b{I`}}}Cd}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0{{{b{I`}}Bj}{{j{I`Cf}}}}0{{{b{I`}}{b{dc}}}hDf}{{{b{AKj}}{b{dc}}}hDf}`{ce{}{}}000{c{{Ab{e}}}{}{}}000{{{b{I`}}Cn}Cd}{{{b{I`}}CnBj}Cd}{BjI`}{{}I`}{{CnBj}I`}{{}AKf}{{{F`{{En{Cn}}{En{Cn}}}}{F`{{En{Bj}}{En{Bj}}}}}AKh}{{CnCn}{{j{I`Cf}}}}{{CnCnBj}{{j{I`Cf}}}}{{{b{I`}}{b{I`}}}{{Dh{Bh}}}}```{{{b{I`}}c}jAd}{{{b{AKf}}{b{I`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{AKj}}c}jAd}{{{b{I`}}CnBj}{{j{I`Cf}}}}`{{{b{I`}}{b{I`}}Bj}{{j{CnCf}}}}`{{{b{I`}}}{{AF`{Bj}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}0{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000`{ce{}{}}000```````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000`{{{b{AKn}}}AKn}{{{b{AL`}}}AL`}{{{b{ALb}}}ALb}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}00{c{{j{AKn}}}l}{c{{j{AL`}}}l}{c{{j{ALb}}}l}{c{{j{ALd}}}l}``````{{{b{AKn}}{b{dn}}}A`}0{{{b{AL`}}{b{dn}}}A`}0{{{b{ALb}}{b{dn}}}A`}0{{{b{ALd}}{b{dn}}}A`}0{cc{}}000{{{b{c}}}c{}}00`{ce{}{}}000{c{{Ab{e}}}{}{}}000```{{{b{AKn}}c}jAd}{{{b{AL`}}c}jAd}{{{b{ALb}}c}jAd}{{{b{ALd}}c}jAd}````{{{b{c}}}e{}{}}00{{{b{c}}}Dn{}}000{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}0009999``````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{{ALf{c}}}}}{{ALf{c}}}AHd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0``{{{b{{ALh{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{ALf{c}}g}}}AHd{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{ALf{c}}}}{b{{ALf{c}}}}}CdAHj}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{{ALf{c}}}}}Cd{}}{{{b{{ALf{c}}}}{b{dn}}}A`AHl}{cc{}}00{{{b{c}}}c{}}{ce{}{}}00{c{{Ab{e}}}{}{}}00{e{{ALj{ce}}}{}{{G`{c}}AHd}}{e{{ALh{ce}}}AHd{{Gh{c}}AHd}}````{{{b{{ALj{ce}}}}{b{{ALf{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AHl{{G`{c}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00``777{{BjKfKfI`}{{j{KfCf}}}}{{BjKfKfKf}I`}{{BjKfKf}{{j{{Dh{I`}}Cf}}}}{{BjKfKfKf}{{j{{Dh{I`}}Cf}}}}{{I`I`Bj}{{j{CnCf}}}}{{BjKfKf{Dh{Kf}}{Dh{Kf}}}{{j{{F`{{Dh{I`}}{Dh{I`}}}}Cf}}}}`````````````````{{{b{dALl}}c}h{}}{{{b{d{ALn{ec}}}}{ALn{ec}}}h{AHdALl}{AM`{ALl{c}}}}{{{b{d{AMb{c}}}}{AMb{c}}}hAHd}{{{b{d{AMd{c}}}}{AMd{c}}}hAHd}{{{AMd{c}}{b{dc}}}hAHd}{{{b{c}}}{{b{e}}}{}{}}00000000{{{b{dc}}}{{b{de}}}{}{}}00000000{{{b{{ALn{ec}}}}}{{ALn{ec}}}{AHdALlAHd}{AHdAM`{ALl{c}}}}{{{b{{AMb{c}}}}}{{AMb{c}}}{AHdAHd}}{{{b{{AMd{c}}}}}{{AMd{c}}}{AHdAHd}}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}00{{}{{AMd{c}}}AHd}{{{b{{AMf{ecgi}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{ALn{ec}}k}}}{ALlAHd}{AM`{ALl{c}}}{{Gh{e}}}{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AMh{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{AMb{c}}g}}}AHd{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AMj{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{AMd{c}}g}}}AHd{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{{ALn{ge}}}}}l{K`ALlAHd}{K`AM`{ALl{e}}}}{c{{j{{AMb{e}}}}}l{K`AHd}}{c{{j{{AMd{e}}}}}l{K`AHd}}{{{b{{ALn{ec}}}}{b{{ALn{ec}}}}}Cd{AHjALlAHd}{AHjAM`{ALl{c}}}}{{{b{{AMb{c}}}}{b{{AMb{c}}}}}Cd{AHjAHd}}{{{b{{AMd{c}}}}{b{{AMd{c}}}}}Cd{AHjAHd}}{{{b{c}}{b{e}}}Cd{}{}}00000000000{{{b{{ALn{ec}}}}{b{dn}}}A`{AHlALlAHd}{AHlAM`{ALl{c}}}}{{{b{{AMb{c}}}}{b{dn}}}A`{AHlAHd}}{{{b{{AMd{c}}}}{b{dn}}}A`{AHlAHd}}{cc{}}00000000{{{b{c}}}c{}}00````````{ce{}{}}00000000{c{{Ab{e}}}{}{}}00000000{{gi}{{AMf{ecgi}}}{ALlAHd}{AM`{ALl{c}}}{{Gh{e}}}{{Gh{c}}}}{{gi}{{AMl{ecgi}}}{ALlAHd}{AM`{ALl{c}}}{{G`{e}}}{{G`{c}}}}{e{{AMh{ce}}}AHd{{Gh{c}}}}{e{{AMn{ce}}}AHd{{G`{c}}}}{e{{AMj{ce}}}AHd{{Gh{c}}}}{e{{AN`{ce}}}AHd{{G`{c}}}}````````{{{b{{AMl{ecgi}}}}{b{{ALn{ec}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{ALlAHd}{AM`{ALl{c}}}{{G`{e}}}{{G`{c}}}}{{{b{{AMn{ce}}}}{b{{AMb{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AHd{{G`{c}}}}{{{b{{AN`{ce}}}}{b{{AMd{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AHd{{G`{c}}}}{{{b{{ALn{ec}}}}g}j{AHnALlAHd}{AHnAM`{ALl{c}}}Ad}{{{b{{AMb{c}}}}e}j{AHnAHd}Ad}{{{b{{AMd{c}}}}e}j{AHnAHd}Ad}{{{b{c}}}e{}{}}00{c{{j{e}}}{}{}}00000000000000000{{{b{c}}}Af{}}00000000{ce{}{}}00000000`````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{Lb}}}Lb}{{{b{ANb}}}ANb}{{{b{ANd}}}ANd}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}000{{}ANb}{{}ANd}{c{{j{Lb}}}l}{{{b{ANd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Lbc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Lb}}{b{Lb}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{ANf}}{b{dn}}}A`}{{{b{c}}{b{dn}}}{{j{hEj}}}{}}{{{b{Lb}}{b{dn}}}A`}0{cc{}}000{{{b{c}}}c{}}00{{{b{Cl}}}{{j{Lbc}}}{}}`{ce{}{}}000{c{{Ab{e}}}{}{}}0009``=<{{{b{Lb}}c}jAd}{{{b{ANb}}{b{Lb}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}00{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000``{{ANf{b{Cl}}}{{j{Lbc}}}Fb}8888","D":"IA`","p":[[1,"reference"],[0,"mut"],[5,"ActiveBlock",31],[1,"unit"],[6,"Result",3739],[10,"Deserializer",3740],[5,"Formatter",3741],[8,"Result",3741],[5,"Request",3742],[10,"Serializer",3743],[5,"TypeId",3744],[6,"Address",58],[6,"SCAddress",58],[5,"SCAddressV0",58],[6,"UserAddress",58],[5,"UserAddressV0",58],[5,"AddressSerializer",58],[5,"AddressDeserializer",58],[5,"ExecutionAddressCycleInfo",58],[6,"Ordering",3745],[1,"u8"],[1,"slice"],[8,"IResult",3746],[10,"ParseError",3747],[10,"ContextError",3747],[1,"bool"],[6,"ModelsError",1948],[6,"PublicKey",3748],[5,"PublicKeyV0",3748],[1,"str"],[1,"u64"],[10,"Hash",3749],[10,"Sized",3750],[10,"BuildHasher",3749],[10,"Hasher",3749],[6,"Option",3751],[5,"Vec",3752],[6,"SerializeError",3753],[5,"String",3754],[5,"Amount",306],[5,"AmountSerializer",306],[5,"AmountDeserializer",306],[1,"u32"],[5,"AmountVisitor",306],[5,"Error",3741],[5,"Decimal",3755],[6,"Bound",3756],[1,"tuple"],[10,"Error",3740],[8,"SecureShareBlock",410],[5,"Block",410],[5,"FilledBlock",410],[8,"SecureShareOperation",2223],[5,"BlockSerializer",410],[5,"BlockDeserializer",410],[10,"Serializer",3753],[5,"SignatureDeserializer",3748],[5,"PublicKeyDeserializer",3748],[5,"SecureShare",2881],[10,"Deserializer",3753],[10,"Id",2881],[6,"BlockGraphStatus",410],[5,"BlockDeserializerArgs",410],[6,"KeyPair",3748],[6,"Signature",3748],[5,"BlockHeader",536],[5,"Hash",3757],[5,"BlockHeaderSerializer",536],[5,"BlockHeaderDeserializer",536],[5,"BlockHeaderDenunciationData",536],[8,"SecuredHeader",536],[5,"Slot",3210],[6,"BlockId",631],[5,"BlockIdV0",631],[5,"BlockIdSerializer",631],[5,"BlockIdDeserializer",631],[5,"Bytecode",746],[5,"BytecodeSerializer",746],[5,"BytecodeDeserializer",746],[5,"Clique",800],[5,"CliqueSerializer",800],[5,"CliqueDeserializer",800],[6,"OperationSearchResultBlockStatus",853],[6,"OperationSearchResultStatus",853],[5,"OperationSearchResult",853],[5,"StakersCycleProductionStats",853],[5,"PubkeySig",853],[10,"Deserialize",3740],[5,"CompactConfig",978],[5,"GENESIS_TIMESTAMP",1010],[5,"MassaTime",3758],[5,"END_TIMESTAMP",1010],[5,"GENESIS_KEY",1010],[5,"POS_MISS_RATE_DEACTIVATION_THRESHOLD",1010],[5,"Ratio",3759],[5,"VERSION",1010],[5,"Version",3656],[5,"CHAINID",1010],[5,"DatastoreSerializer",1211],[5,"DatastoreDeserializer",1211],[5,"BTreeMap",3760],[6,"DeferredCallId",1243],[5,"DeferredCallIdV0",1243],[5,"DeferredCallIdSerializer",1243],[5,"DeferredCallIdDeserializer",1243],[5,"EndorsementDenunciation",1348],[5,"BlockHeaderDenunciation",1348],[6,"Denunciation",1348],[6,"DenunciationIndex",1348],[5,"DenunciationIndexSerializer",1348],[5,"DenunciationIndexDeserializer",1348],[5,"EndorsementDenunciationPrecursor",1348],[5,"BlockHeaderDenunciationPrecursor",1348],[6,"DenunciationPrecursor",1348],[5,"EndorsementDenunciationSerializer",1348],[5,"BlockHeaderDenunciationSerializer",1348],[5,"DenunciationSerializer",1348],[5,"EndorsementDenunciationDeserializer",1348],[5,"BlockHeaderDenunciationDeserializer",1348],[5,"DenunciationDeserializer",1348],[6,"DenunciationIndexTypeId",1348],[6,"DenunciationTypeId",1348],[6,"DenunciationError",1348],[6,"MassaSignatureError",3761],[8,"SecureShareEndorsement",1745],[10,"Error",3762],[5,"TryFromPrimitiveError",3763],[6,"EndorsementId",1745],[5,"EndorsementIdV0",1745],[5,"Endorsement",1745],[5,"EndorsementSerializer",1745],[5,"EndorsementSerializerLW",1745],[5,"EndorsementIdDeserializer",1745],[5,"EndorsementDeserializer",1745],[5,"EndorsementDeserializerLW",1745],[5,"EndorsementDenunciationData",1745],[5,"Error",3747],[6,"Err",3746],[6,"MassaHashError",3764],[6,"TimeError",3765],[5,"EventFilter",2003],[5,"LedgerChanges",2029],[5,"LedgerChange",2029],[8,"ModelsResult",1948],[5,"LedgerData",2029],[8,"PreHashSet",2739],[5,"LedgerDataDeserializer",2029],[5,"LedgerChangeDeserializer",2029],[5,"LedgerChangesSerializer",2029],[5,"LedgerDataSerializer",2029],[5,"LedgerChangeSerializer",2029],[5,"LedgerChangesDeserializer",2029],[5,"DenunciationIndex",3766],[5,"NodeId",2188],[6,"OperationId",2223],[5,"OperationIdV0",2223],[6,"OperationPrefixId",2223],[5,"OperationPrefixIdV0",2223],[5,"OperationIdSerializer",2223],[5,"OperationIdDeserializer",2223],[5,"Operation",2223],[6,"OperationType",2223],[5,"OperationPrefixIdsSerializer",2223],[5,"OperationsSerializer",2223],[5,"OperationSerializer",2223],[5,"OperationTypeSerializer",2223],[5,"OperationIdsSerializer",2223],[5,"OperationPrefixIdDeserializer",2223],[5,"OperationDeserializer",2223],[5,"OperationTypeDeserializer",2223],[5,"OperationIdsDeserializer",2223],[5,"OperationPrefixIdsDeserializer",2223],[8,"OperationPrefixIds",2223],[5,"OperationsDeserializer",2223],[6,"OperationTypeId",2223],[1,"array"],[5,"RangeInclusive",3756],[1,"u16"],[5,"SCOutputEvent",2689],[5,"EventExecutionContext",2689],[5,"HashMapper",2739],[10,"PreHashed",2739],[1,"usize"],[10,"CapacityAllocator",2739],[8,"PreHashMap",2739],[5,"RollUpdates",2762],[5,"RollUpdate",2762],[5,"RollCompensation",2762],[5,"RollCounts",2762],[5,"RollUpdateSerializer",2762],[5,"RollUpdateDeserializer",2762],[10,"Display",3741],[10,"SecureShareContent",2881],[10,"Clone",3767],[5,"SecureShareSerializer",2881],[5,"SecureShareDeserializer",2881],[10,"PartialEq",3745],[10,"Debug",3741],[10,"Serialize",3743],[5,"IpAddrSerializer",2973],[5,"IpAddrDeserializer",2973],[5,"VecU8Serializer",2973],[5,"VecU8Deserializer",2973],[5,"VecSerializer",2973],[5,"VecDeserializer",2973],[5,"PreHashSetSerializer",2973],[5,"PreHashSetDeserializer",2973],[5,"StringSerializer",2973],[10,"TryFrom",3768],[5,"StringDeserializer",2973],[10,"ToUsize",3769],[5,"BitVecSerializer",2973],[5,"BitVecDeserializer",2973],[6,"IpAddr",3770],[10,"Eq",3745],[5,"BitVec",3771],[10,"DeserializeMinBEInt",2973],[10,"SerializeMinBEInt",2973],[5,"SlotSerializer",3210],[5,"SlotDeserializer",3210],[5,"IndexedSlot",3210],[5,"Slot",3766],[5,"ExecutionStats",3328],[5,"NetworkStats",3328],[5,"ConsensusStats",3328],[5,"PoolStats",3328],[6,"StreamingStep",3421],[5,"StreamingStepDeserializer",3421],[5,"StreamingStepSerializer",3421],[10,"Applicable",3485],[6,"SetUpdateOrDelete",3485],[10,"Default",3772],[6,"SetOrDelete",3485],[6,"SetOrKeep",3485],[5,"SetUpdateOrDeleteDeserializer",3485],[5,"SetOrDeleteDeserializer",3485],[5,"SetOrKeepDeserializer",3485],[5,"SetUpdateOrDeleteSerializer",3485],[5,"SetOrDeleteSerializer",3485],[5,"SetOrKeepSerializer",3485],[5,"VersionSerializer",3656],[5,"VersionDeserializer",3656],[5,"VersionVisitor",3656],[15,"Endorsement",1742],[15,"BlockHeader",1742],[15,"Transaction",2676],[15,"CallSC",2676],[15,"ExecuteSC",2676],[15,"RollBuy",2676],[15,"RollSell",2676]],"r":[[963,978],[965,1210]],"b":[[137,"impl-Deserializer%3CSCAddress%3E-for-AddressDeserializer"],[138,"impl-Deserializer%3CAddress%3E-for-AddressDeserializer"],[139,"impl-Deserializer%3CUserAddress%3E-for-AddressDeserializer"],[140,"impl-Deserializer%3CSCAddressV0%3E-for-AddressDeserializer"],[141,"impl-Deserializer%3CUserAddressV0%3E-for-AddressDeserializer"],[168,"impl-Display-for-Address"],[169,"impl-Debug-for-Address"],[246,"impl-Serializer%3CSCAddressV0%3E-for-AddressSerializer"],[247,"impl-Serializer%3CSCAddress%3E-for-AddressSerializer"],[248,"impl-Serializer%3CUserAddressV0%3E-for-AddressSerializer"],[249,"impl-Serializer%3CUserAddress%3E-for-AddressSerializer"],[250,"impl-Serializer%3CAddress%3E-for-AddressSerializer"],[353,"impl-Display-for-Amount"],[354,"impl-Debug-for-Amount"],[451,"impl-Deserialize%3C\'de%3E-for-Block"],[452,"impl-SecureShareContent-for-Block"],[461,"impl-Display-for-Block"],[462,"impl-Debug-for-Block"],[502,"impl-SecureShareContent-for-Block"],[503,"impl-Serialize-for-Block"],[574,"impl-Display-for-BlockHeader"],[575,"impl-Debug-for-BlockHeader"],[669,"impl-Deserializer%3CBlockIdV0%3E-for-BlockIdDeserializer"],[670,"impl-Deserializer%3CBlockId%3E-for-BlockIdDeserializer"],[681,"impl-Display-for-BlockId"],[682,"impl-Debug-for-BlockId"],[720,"impl-Serializer%3CBlockId%3E-for-BlockIdSerializer"],[721,"impl-Serializer%3CBlockIdV0%3E-for-BlockIdSerializer"],[902,"impl-Display-for-PubkeySig"],[903,"impl-Debug-for-PubkeySig"],[990,"impl-Debug-for-CompactConfig"],[991,"impl-Display-for-CompactConfig"],[1293,"impl-Debug-for-DeferredCallId"],[1294,"impl-Display-for-DeferredCallId"],[1484,"impl-Display-for-DenunciationError"],[1485,"impl-Debug-for-DenunciationError"],[1502,"impl-From%3CSerializeError%3E-for-DenunciationError"],[1503,"impl-From%3CMassaSignatureError%3E-for-DenunciationError"],[1505,"impl-From%3C%26Denunciation%3E-for-DenunciationIndex"],[1506,"impl-From%3C%26DenunciationPrecursor%3E-for-DenunciationIndex"],[1514,"impl-From%3C%26SecureShare%3CEndorsement,+EndorsementId%3E%3E-for-DenunciationPrecursor"],[1516,"impl-From%3C%26SecureShare%3CBlockHeader,+BlockId%3E%3E-for-DenunciationPrecursor"],[1667,"impl-TryFrom%3C(%26SecureShare%3CEndorsement,+EndorsementId%3E,+%26SecureShare%3CEndorsement,+EndorsementId%3E)%3E-for-Denunciation"],[1668,"impl-TryFrom%3C(%26DenunciationPrecursor,+%26DenunciationPrecursor)%3E-for-Denunciation"],[1670,"impl-TryFrom%3C(%26SecureShare%3CBlockHeader,+BlockId%3E,+%26SecureShare%3CBlockHeader,+BlockId%3E)%3E-for-Denunciation"],[1805,"impl-Deserializer%3CEndorsementId%3E-for-EndorsementIdDeserializer"],[1806,"impl-Deserializer%3CEndorsementIdV0%3E-for-EndorsementIdDeserializer"],[1829,"impl-Display-for-EndorsementId"],[1830,"impl-Debug-for-EndorsementId"],[1832,"impl-Debug-for-Endorsement"],[1833,"impl-Display-for-Endorsement"],[1984,"impl-Display-for-ModelsError"],[1985,"impl-Debug-for-ModelsError"],[1986,"impl-From%3C%26str%3E-for-ModelsError"],[1988,"impl-From%3CErr%3CError%3C%26%5Bu8%5D%3E%3E%3E-for-ModelsError"],[1989,"impl-From%3CMassaHashError%3E-for-ModelsError"],[1990,"impl-From%3CSerializeError%3E-for-ModelsError"],[1991,"impl-From%3CTimeError%3E-for-ModelsError"],[1992,"impl-From%3CMassaSignatureError%3E-for-ModelsError"],[2204,"impl-Display-for-NodeId"],[2205,"impl-Debug-for-NodeId"],[2376,"impl-Deserializer%3COperationId%3E-for-OperationIdDeserializer"],[2377,"impl-Deserializer%3COperationIdV0%3E-for-OperationIdDeserializer"],[2410,"impl-Debug-for-OperationId"],[2411,"impl-Display-for-OperationId"],[2412,"impl-Display-for-OperationIdV0"],[2413,"impl-Debug-for-OperationIdV0"],[2414,"impl-Debug-for-OperationPrefixId"],[2415,"impl-Display-for-OperationPrefixId"],[2416,"impl-Debug-for-OperationPrefixIdV0"],[2417,"impl-Display-for-OperationPrefixIdV0"],[2419,"impl-Display-for-Operation"],[2420,"impl-Debug-for-Operation"],[2421,"impl-Debug-for-OperationType"],[2422,"impl-Display-for-OperationType"],[2559,"impl-Serializer%3COperationIdV0%3E-for-OperationIdSerializer"],[2560,"impl-Serializer%3COperationId%3E-for-OperationIdSerializer"],[2707,"impl-Display-for-SCOutputEvent"],[2708,"impl-Debug-for-SCOutputEvent"],[2709,"impl-Display-for-EventExecutionContext"],[2710,"impl-Debug-for-EventExecutionContext"],[2918,"impl-Debug-for-SecureShare%3CT,+ID%3E"],[2919,"impl-Display-for-SecureShare%3CT,+ID%3E"],[2925,"impl-SecureShare%3CBlock,+BlockId%3E"],[2926,"impl-SecureShare%3CBlockHeader,+BlockId%3E"],[3252,"impl-Debug-for-Slot"],[3253,"impl-Display-for-Slot"],[3254,"impl-Debug-for-IndexedSlot"],[3255,"impl-Display-for-IndexedSlot"],[3363,"impl-Display-for-ExecutionStats"],[3364,"impl-Debug-for-ExecutionStats"],[3365,"impl-Debug-for-NetworkStats"],[3366,"impl-Display-for-NetworkStats"],[3367,"impl-Debug-for-ConsensusStats"],[3368,"impl-Display-for-ConsensusStats"],[3369,"impl-Display-for-PoolStats"],[3370,"impl-Debug-for-PoolStats"],[3690,"impl-Display-for-Version"],[3691,"impl-Debug-for-Version"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABMKBwEiAAEAJQACACoAAAAsAAAALgAAADAAAAA0AAAANgAFAEAAAABCAAAARAAEAEoAAABMAAEATwA2AIcAKAC9AA8A0gAFAOAABwDtABcACgEoADgBAAA7AQcASgELAFcBAgBbAQgAawEDAHMBAwB6AQAAfgEAAIIBAgCGARMAqgELALgBBQDCAQAAxAEDAMkBCADYAQEA3QEBAOYBBQDxAQIA9wEDAP4BGgAfAg0AMgIDADgCBQA/AgIARgIAAEgCAABOAgUAWAIBAFwCAABgAgMAZQITAHoCAAB+Ai4AsQIDALYCAAC5AgMAvwICAMYCBADNAh0A7wISAAUDAAAJAwIADgMSACQDAQAnAwwANQMAADcDAgA9AwAAQQMCAEcDAABJAwwAYwMYAH0DBACDAwUAjgMEAJoDBACjAwQAqgMZAMcDAADVAwYA3QMAAN8DAQDiAwAA5QMAAOoDAADtAwUAeAQXAJ0EHQC/BAQAygQDANEEDQDhBAIA5gQqABcFBgAfBQEAJQUDACwFGgBIBQAAVAUAAFcFAgBbBQAAYQVHAKsFKADeBQIA4gUBAOYFAADrBQAA7QUJAPgFBQAABgEABAYFAA0GAAAQBgkAGwYCADAGEQBQBgQAVwYHAGEGBwBrBmMA0gYBANoGAQDdBgEA4gYlAAwHAwASBwMAFwcUADUHAwA6BwcARAcCAFAHCQBdBwAAYAcBAGMHAgBpBwAAawcCAG8HLQC8BwcAxQcFAMwHBwDVBwYA3gcAAOAHAADiBwAA5wcAAOkHBAD3BwUAAggRABYIBQAdCAsALAgFADsIAgBICAgAUwgDAF4IAQBhCAAAYwgAAGUIJgCNCAAAjwgPAKAIAACiCAAApAgAAKYIAACoCAgAsggAALQIAAC5CAAAvQgBAMIIAADFCAEAzQgAANEIAADTCAAA1ggAANgIWAA1CQoARQkHAE4JGQBpCQAAawkMAI0JCQCYCQIAnAkFAKcJBQCuCQAAxQkXAOUJAADsCQkA+AkAAPwJCAAICmwAhQoDAIoKBQCSCgUAmgoBAJ8KAQClCgEAqAoLALoKAgC/CgAAwQoFANMKCwDhCgcA6woEAPEKAwD2CgcABAsDAA8LBQAeCwMAJAsdAEcLBQBOCwYAXAsBAF8LAQBiCwYAbAsBAHoLAwCCCwAAhAsBAIwLDACbCwIArQtKAAUMCwAdDBIAPAwJAEcMLwB4DAEAfAwOAJAMKAC6DAAAvwwEAMYMAQDKDAEA0QwDAN4MAADgDAQA6gwWAAgNBwARDQwAJA0HADANAgA4DQMAPw0DAEcNFgBkDREAdw0AAHsNAAB/DQIAhA0TAKYNAQCpDQEArA0BALANAgC0DTMA8Q0KAAUORABNDh8AcQ4DAHoOAwB/DgEAgw4YAA=="}],\ -["massa_module_cache",{"t":"CCCCCQQCFNNONNNNNOOONNNNOONONNNNNNNFINNONNNNNNONNNNNNNONNNNNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSSSSFSSSSNNONNNNONNNNNNNOOONNNNNONNNNNNNFINNONNNNNNNNNNNNNNNNNNNNNNPPPPPPPGGFGFPPNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNN","n":["config","controller","error","hd_cache","lru_cache","metadata_key","module_key","types","ModuleCacheConfig","borrow","borrow_mut","condom_limits","deref","deref_mut","deserialize","drop","from","gas_costs","hd_cache_path","hd_cache_size","init","into","into_request","layout_raw","lru_cache_size","max_module_length","pointer_metadata","snip_amount","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ModuleCache","PreHashLruMap","borrow","borrow_mut","cfg","compile_cached","deref","deref_mut","deserialize","drop","from","hd_cache","init","into","into_request","layout_raw","load_module","load_module_info","load_tmp_module","lru_cache","new","pointer_metadata","save_module","set_init_cost","set_invalid","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","CacheError","LoadError","VMError","__clone_box","as_error","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","fmt","from","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","CRUD_ERROR","DATA_DESER_ERROR","DATA_IDENT","DATA_SER_ERROR","HDCache","MODULE_IDENT","MOD_DESER_ERROR","MOD_SER_ERROR","OPEN_ERROR","borrow","borrow_mut","db","deref","deref_mut","deserialize","drop","entry_count","from","get","init","insert","into","into_request","layout_raw","max_entry_count","meta_deser","meta_ser","new","pointer_metadata","set_init_cost","set_invalid","snip","snip_amount","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","LRUCache","PreHashLruMap","borrow","borrow_mut","cache","deref","deref_mut","deserialize","drop","from","get","init","insert","into","into_request","layout_raw","new","pointer_metadata","set_init_cost","set_invalid","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Delta","Delta","Invalid","Invalid","Invalid","Module","ModuleAndDelta","ModuleInfo","ModuleMetadata","ModuleMetadataDeserializer","ModuleMetadataId","ModuleMetadataSerializer","NotExecuted","NotExecuted","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","delta_deser","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","err_msg_deser","err_msg_ser","fmt","from","from","from","from","from","from_ref","id_deser","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","u64_ser","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_module_cache"],[8,"massa_module_cache::config"],[35,"massa_module_cache::controller"],[67,"massa_module_cache::error"],[100,"massa_module_cache::hd_cache"],[140,"massa_module_cache::lru_cache"],[167,"massa_module_cache::types"],[310,"rkyv::with"],[311,"core::result"],[312,"tonic::request"],[313,"core::alloc::layout"],[314,"core::any"],[315,"alloc::boxed"],[316,"massa_hash::hash"],[317,"massa_sc_runtime::execution"],[318,"alloc::string"],[319,"dyn_clone::sealed"],[320,"core::error"],[321,"core::fmt"],[322,"anyhow"],[323,"massa_sc_runtime::types"],[324,"core::option"],[325,"std::path"],[326,"nom::internal"],[327,"nom::error"],[328,"alloc::vec"],[329,"massa_serialization"],[330,"num_enum"]],"i":[0,0,0,0,0,0,0,0,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,37,42,17,37,42,17,17,0,0,0,0,0,37,42,17,35,36,17,37,42,35,36,17,37,42,17,17,17,35,36,36,35,36,17,37,42,35,36,17,37,42,35,36,36,17,37,42,35,36,17,37,42,37,42,37,37,37,37,37,37,42,42,42,42,42,42,36,35,42,35,36,17,37,42,17,36,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42,35,36,35,36,17,37,42,35,17,35,36,17,37,42,42,42,35,36,17,37,42,35,36,17,37,42,35,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42],"f":"`````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{cc{}}```{{}f}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}``{b}`{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}8``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{dAj}}{b{{An{Al}}}}B`}Bb}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{cc{}}`{{}f}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}{{{b{dAj}}{b{{An{Al}}}}Bd}{{j{BfBh}}}}{{{b{dAj}}{b{{An{Al}}}}}Bb}{{{b{Aj}}{b{{An{Al}}}}Bd}{{j{BfBh}}}}`{BjAj}{b}{{{b{dAj}}{b{{An{Al}}}}}l}{{{b{dAj}}{b{{An{Al}}}}Bd}l}{{{b{dAj}}{b{{An{Al}}}}Bl}l}{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}?```{{{b{c}}Bn}l{}}{{{b{c}}}{{b{C`}}}{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bh}}}Bh}{{{b{c}}{b{de}}}l{}{}}{{{b{c}}}l{}}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{{{b{Bh}}{b{dCb}}}Cd}0{cc{}}{CfBh}{{{b{c}}}c{}}{{}f}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}{b}{{{b{c}}}e{}{}}{{{b{c}}}Bl{}}{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}:`````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}`{cc{}}{{{b{Ch}}B`CjCl}{{Cn{Bb}}}}{{}f}{{{b{dCh}}B`Bb}l}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}```{{D`ff}Ch}{b}{{{b{Ch}}B`Bd}l}{{{b{Ch}}B`Bl}l}{{{b{dCh}}}l}`{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}<``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{cc{}}{{{b{dDb}}B`}{{Cn{Bb}}}}{{}f}{{{b{dDb}}B`Bb}l}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}{DdDb}{b}{{{b{dDb}}B`Bd}l}{{{b{dDb}}B`Bl}l}{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}};``````````````{{{b{c}}Bn}l{}}{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{{b{Bb}}}Bb}{{{b{c}}{b{de}}}l{}{}}{{{b{c}}}l{}}{{}Df}{{}Dh}`{f{{b{c}}}{}}0000{f{{b{dc}}}{}}0000{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}0{{{b{Dh}}{b{{An{Al}}}}}{{Dl{{b{{An{Al}}}}Djc}}}{{Dn{{b{{An{Al}}}}}}{E`{{b{{An{Al}}}}}}}}111{fl}0000{{{b{Dj}}{b{Dj}}}Eb}{{{b{Ed}}{b{Ed}}}Eb}{{{b{c}}{b{e}}}Eb{}{}}00000000000``{{{b{Ed}}{b{dCb}}}Cd}{cc{}}0000{{{b{c}}}c{}}`{{}f}0000{ce{}{}}0000{c{{n{e}}}{}{}}0000{{}{{j{A`Ab}}}}0000{{}Df}{{}Dh}{b}0000{{{b{Df}}{b{Dj}}{b{d{Ef{Al}}}}}{{j{lEh}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}000{Bd{{j{Ed{Ej{Ed}}}}}}1{c{{j{Ed{Ej{Ed}}}}}{}}22222{{{b{c}}}Ad{}}0000`{{{Af{c}}}{{Af{Ah}}}{}}0000{{{b{dc}}}{{b{dAh}}}{}}0000{{{b{c}}}{{b{Ah}}}{}}0000>>>>>","D":"Hl","p":[[1,"reference"],[0,"mut"],[1,"usize"],[5,"With",310],[6,"Result",311],[1,"unit"],[5,"Request",312],[5,"Layout",313],[5,"LayoutError",313],[5,"TypeId",314],[5,"Box",315],[10,"Any",314],[5,"ModuleCache",35],[1,"u8"],[1,"slice"],[5,"Hash",316],[6,"ModuleInfo",167],[1,"u64"],[6,"RuntimeModule",317],[6,"CacheError",67],[5,"ModuleCacheConfig",8],[5,"String",318],[5,"Private",319],[10,"Error",320],[5,"Formatter",321],[8,"Result",321],[5,"Error",322],[5,"HDCache",100],[5,"GasCosts",323],[5,"CondomLimits",323],[6,"Option",324],[5,"PathBuf",325],[5,"LRUCache",140],[1,"u32"],[5,"ModuleMetadataSerializer",167],[5,"ModuleMetadataDeserializer",167],[6,"ModuleMetadata",167],[8,"IResult",326],[10,"ParseError",327],[10,"ContextError",327],[1,"bool"],[6,"ModuleMetadataId",167],[5,"Vec",328],[6,"SerializeError",329],[5,"TryFromPrimitiveError",330]],"r":[],"b":[[81,"impl-Debug-for-CacheError"],[82,"impl-Display-for-CacheError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAPAAHQABAAQACAADAA0AAwAVAAAAFwABABsAAAAdAAYAJgABACoAAwAwAAAAMgABADkAAAA9AAYARwAMAFUAAgBZABYAcQADAHgAAAB7AAEAgQAAAIYABgCPAAYAmAAAAJsAAQCeAAAAoQANALQAOADyAAYA/gA4AA=="}],\ -["massa_node",{"t":"FFNNONNNNNNHONNNNNNNNOONNNNNNNNNNNOHNNHHONNOOOHOCHCNNNNNNNNNNNNNFFFFFFFFFFFFFFFFFFNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNOOFFNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNONNNNNNNNNN","n":["Args","Managers","augment_args","augment_args_for_update","bootstrap_manager","borrow","borrow","borrow_mut","borrow_mut","command","command_for_update","configure_grpc","consensus_manager","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","execution_manager","factory_manager","from","from","from_arg_matches","from_arg_matches_mut","group_id","init","init","into","into","into_request","into_request","keep_ledger","launch","layout_raw","layout_raw","load_wallet","main","password","pointer_metadata","pointer_metadata","pool_manager","protocol_manager","restart_from_snapshot_at_period","run","selector_manager","settings","stop","survey","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","APISettings","BlockDumpSettings","BootstrapSettings","ConsensusSettings","ExecutionSettings","FactorySettings","GrpcApiSettings","GrpcSettings","LedgerSettings","LoggingSettings","MetricsSettings","NetworkSettings","PoolSettings","ProtocolSettings","SETTINGS","SelectionSettings","Settings","VersioningSettings","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__private_field","abi_gas_costs_file","accept_compressed","accept_http1","allow_hosts","api","ask_block_timeout","asked_operations_buffer_capacity","batch_request_limit","bind","bind","bind","bind","bind_api","bind_private","bind_public","block_db_prune_interval","block_dump","block_dump_folder_path","block_propagation_tick","bootstrap","bootstrap_blacklist_path","bootstrap_list","bootstrap_protocol","bootstrap_timeout","bootstrap_whitelist_path","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broadcast_blocks_channel_capacity","broadcast_blocks_headers_channel_capacity","broadcast_endorsements_channel_capacity","broadcast_filled_blocks_channel_capacity","broadcast_operations_channel_capacity","broadcast_slot_execution_output_channel_capacity","broadcast_slot_execution_traces_channel_capacity","cache_duration","certificate_authority_root_path","client_certificate_authority_root_path","client_certificate_path","client_private_key_path","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","concurrency_limit_per_connection","connect_timeout","connect_timeout","consensus","cursor_delay","default_category_info","deferred_credits_delta","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","disk_ledger_path","draw_lookahead_period_count","draw_lookahead_period_count","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","enable_broadcast","enable_cors","enable_health","enable_http","enable_mtls","enable_reflection","enable_tls","enable_ws","enabled","enabled","execution","execution_traces_limit","factory","final_history_length","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","force_keep_final_periods","force_keep_final_periods_without_ops","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","generate_self_signed_certificates","grpc","hd_cache_path","hd_cache_size","http2_adaptive_window","http2_keepalive_interval","http2_keepalive_timeout","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_connection_window_size","initial_deferred_credits_path","initial_delay","initial_ledger_path","initial_peers_file","initial_rolls_path","initial_stream_window_size","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","ip_list_max_size","keypair_file","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","ledger","ledger_backup_periods_interval","level","logging","lru_cache_size","max_addresses_per_request","max_arguments","max_arguments","max_block_ids_per_request","max_block_propagation_time","max_blocks_kept_for_propagation","max_channel_size","max_clock_delta","max_concurrent_streams","max_connections","max_datastore_entries_per_request","max_decoding_message_size","max_dependency_blocks","max_discarded_blocks","max_encoding_message_size","max_endorsement_ids_per_request","max_endorsements_pool_size_per_thread","max_endorsements_propagation_time","max_filters_per_request","max_final_events","max_frame_size","max_future_processing_blocks","max_in_connections","max_item_return_count","max_known_blocks_size","max_known_endorsements_size","max_known_ops_size","max_ledger_backups","max_log_length","max_node_known_blocks_size","max_node_known_endorsements_size","max_node_known_ops_size","max_node_wanted_blocks_size","max_operation_ids_per_request","max_operation_pool_excess_items","max_operation_pool_size","max_operations_per_message","max_operations_propagation_time","max_ops_kept_for_propagation","max_ping","max_query_items_per_request","max_read_only_gas","max_request_body_size","max_response_body_size","max_send_wait","max_simultaneous_ask_blocks_per_node","max_simultaneous_bootstraps","max_slot_ranges_per_request","max_subscriptions_per_connection","message_timeout","metrics","minimal_fees","mip_stats_warn_announced_version","network","openrpc_spec_path","operation_announcement_buffer_capacity","operation_announcement_interval","operation_batch_buffer_capacity","operation_batch_proc_period","operation_max_future_start_delay","operation_pool_refresh_interval","peers_categories","per_ip_min_interval","ping_interval","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pool","private","protocol","public","rate_limit","rate_limit","read_error_timeout","read_timeout","read_write_limit_bytes_per_second","readonly_queue_length","retry_delay","routable_ip","routable_ip","selector","send_compressed","server_certificate_path","server_private_key_path","snip_amount","staking_wallet_path","stats_time_window_duration","stats_timespan","stop_production_when_zero_connections","subject_alt_names","tcp_keepalive","tcp_nodelay","test_oldest_peer_cooldown","tester_timeout","thread_tester_count","tick_delay","timeout","timeout_connection","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_connection_timer","try_connection_timer_same_peer","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unban_everyone_timer","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","versioning","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","write_error_timeout","write_timeout","MassaSurvey","MassaSurveyStopper","borrow","borrow","borrow_mut","borrow_mut","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","from","from","handle","init","init","into","into","into_request","into_request","layout_raw","layout_raw","pointer_metadata","pointer_metadata","run","stop","try_from","try_from","try_into","try_into","tx_stopper","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip"],"q":[[0,"massa_node"],[64,"massa_node::settings"],[747,"massa_node::survey"],[791,"clap_builder::builder::command"],[792,"massa_grpc::config"],[793,"massa_signature::signature_impl"],[794,"massa_final_state::controller_trait"],[795,"parking_lot::rwlock"],[796,"alloc::sync"],[797,"massa_models::amount"],[798,"rkyv::with"],[799,"core::result"],[800,"clap_builder::parser::matches::arg_matches"],[801,"clap_builder"],[802,"clap_builder::util::id"],[803,"core::option"],[804,"tonic::request"],[805,"massa_wallet"],[806,"std::sync::mutex"],[807,"std::sync::condvar"],[808,"massa_consensus_exports::events"],[809,"massa_channel::receiver"],[810,"massa_bootstrap::server"],[811,"massa_consensus_exports::controller_trait"],[812,"alloc::boxed"],[813,"massa_execution_exports::controller_traits"],[814,"massa_pos_exports::controller_traits"],[815,"massa_pool_exports::controller_traits"],[816,"massa_protocol_exports::controller_trait"],[817,"massa_factory_exports::controller_traits"],[818,"massa_api"],[819,"massa_grpc::server"],[820,"massa_metrics"],[821,"core::alloc::layout"],[822,"alloc::string"],[823,"std::path"],[824,"anyhow"],[825,"core::any"],[826,"dyn_clone::sealed"],[827,"serde::de"],[828,"core::fmt"],[829,"core::time"],[830,"massa_time"],[831,"massa_versioning::versioning"]],"i":[0,0,17,17,47,47,17,47,17,17,17,0,47,47,17,47,17,47,17,47,17,47,47,47,17,17,17,17,47,17,47,17,47,17,17,0,47,17,0,0,17,47,17,47,47,17,0,47,0,0,0,47,17,47,17,47,17,17,17,17,17,17,47,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,52,5,5,58,59,63,63,58,55,62,63,5,58,58,58,60,59,66,63,59,55,55,55,55,55,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,60,60,57,60,57,52,52,55,5,5,5,5,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,5,55,63,59,52,63,58,67,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,5,5,64,64,65,65,66,66,54,58,5,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,58,5,5,58,5,5,5,58,62,5,59,52,59,54,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,60,60,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,5,59,52,52,5,5,5,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,5,54,56,54,63,53,5,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,55,63,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,59,54,51,59,52,5,58,5,5,63,63,5,55,5,58,5,5,60,60,5,5,57,63,5,52,5,60,63,57,63,63,63,54,58,63,63,63,63,5,57,57,63,63,63,55,5,52,58,58,63,63,55,5,58,63,59,57,65,59,58,63,63,63,63,57,57,63,55,58,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,59,64,59,64,55,63,55,55,63,52,55,61,63,59,5,5,5,52,56,52,60,56,5,5,5,63,63,63,62,5,63,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,63,63,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,63,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,59,67,51,52,53,54,55,56,57,58,59,60,61,62,63,5,64,65,66,55,55,0,0,78,40,78,40,78,40,78,40,78,40,78,40,78,40,40,78,40,78,40,78,40,78,40,78,40,78,40,78,40,78,40,40,78,40,78,40,78,40,78,40,78,40],"f":"``{bb}0`{{{d{c}}}{{d{e}}}{}{}}0{{{d{fc}}}{{d{fe}}}{}{}}0{{}b}0{{h{d{j}}l{d{{Ab{{A`{n}}}}}}Ad}Af}`{Ah{{d{c}}}{}}0{Ah{{d{fc}}}{}}0{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}0{AhAn}0``{cc{}}0{{{d{B`}}}{{Al{BbBd}}}}{{{d{fB`}}}{{Al{BbBd}}}}{{}{{Bh{Bf}}}}{{}Ah}0{ce{}{}}0{c{{Bj{e}}}{}{}}0`{{{d{Bb}}{Ab{{A`{Bl}}}}{Ab{{Cd{{C`{Bn}}Cb}}}}}{{Cd{{Ch{Cf}}{Bh{Cj}}{Cn{Cl}}{Cn{D`}}{Cn{Db}}{Cn{Dd}}{Cn{Df}}{Cn{Dh}}DjDjDj{Bh{Dl}}{Bh{Dl}}DnE`}}}}{{}{{Al{EbEd}}}}0{{{Bh{Ef}}{d{Eh}}Ej}{{El{{Ab{{A`{Bl}}}}}}}}{{}{{El{An}}}}`{d}0```{Bb{{El{An}}}}``{{{Ch{Cf}}EnDjDjDj{Bh{Dl}}{Bh{Dl}}DnE`}An}`{c{{Al{e}}}{}{}}000{{{d{c}}}F`{}}0{{{Cn{c}}}{{Cn{Fb}}}{}}{{{d{fc}}}{{d{fFb}}}{}}{{{d{c}}}{{d{Fb}}}{}}{{{d{fBb}}{d{B`}}}{{Al{AnBd}}}}{{{d{fBb}}{d{fB`}}}{{Al{AnBd}}}}??``````````````````{{{d{c}}Fd}An{}}0000000000000000``````````````````````````{{{d{c}}}{{d{e}}}{}{}}00000000000000000{{{d{fc}}}{{d{fe}}}{}{}}00000000000000000````````````{{{d{Ff}}}Ff}{{{d{Fh}}}Fh}{{{d{Fj}}}Fj}{{{d{Fl}}}Fl}{{{d{Fn}}}Fn}{{{d{G`}}}G`}{{{d{Gb}}}Gb}{{{d{Gd}}}Gd}{{{d{Gf}}}Gf}{{{d{Gh}}}Gh}{{{d{Gj}}}Gj}{{{d{Gl}}}Gl}{{{d{Gn}}}Gn}{{{d{j}}}j}{{{d{H`}}}H`}{{{d{Hb}}}Hb}{{{d{Hd}}}Hd}{{{d{c}}{d{fe}}}An{}{}}0000000000000000{{{d{c}}}An{}}0000000000000000```````{{{d{Hf}}}{{d{Gf}}}}{Ah{{d{c}}}{}}00000000000000000{Ah{{d{fc}}}{}}00000000000000000{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}0{c{{Al{Ff}}}Hh}1{c{{Al{Fh}}}Hh}2{c{{Al{Fj}}}Hh}3{c{{Al{Fl}}}Hh}4{c{{Al{Fn}}}Hh}{c{{Al{G`}}}Hh}66{c{{Al{Gb}}}Hh}{c{{Al{Gd}}}Hh}88{c{{Al{Gf}}}Hh}{c{{Al{Gh}}}Hh}:{c{{Al{Gj}}}Hh};;{c{{Al{Gl}}}Hh}<{c{{Al{Gn}}}Hh}={c{{Al{j}}}Hh}{c{{Al{H`}}}Hh}?{c{{Al{Hb}}}Hh}{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}{c{{Al{Hd}}}Hh}1```{AhAn}00000000000000000``````````````{{{d{Ff}}{d{fHj}}}Hl}{{{d{Fh}}{d{fHj}}}Hl}{{{d{Fj}}{d{fHj}}}Hl}{{{d{Fl}}{d{fHj}}}Hl}{{{d{Fn}}{d{fHj}}}Hl}{{{d{G`}}{d{fHj}}}Hl}{{{d{Gb}}{d{fHj}}}Hl}{{{d{Gd}}{d{fHj}}}Hl}{{{d{Gf}}{d{fHj}}}Hl}{{{d{Gh}}{d{fHj}}}Hl}{{{d{Gj}}{d{fHj}}}Hl}{{{d{Gl}}{d{fHj}}}Hl}{{{d{Gn}}{d{fHj}}}Hl}{{{d{j}}{d{fHj}}}Hl}{{{d{H`}}{d{fHj}}}Hl}{{{d{Hb}}{d{fHj}}}Hl}{{{d{Hd}}{d{fHj}}}Hl}``{cc{}}00000000000000000{{{d{c}}}c{}}0000000000000000```````{{}Ah}00000000000000000```````{ce{}{}}00000000000000000{c{{Bj{e}}}{}{}}00000000000000000``{{}{{Al{EbEd}}}}00000000000000000`````````````````````````````````````````````````````````````````````{d}00000000000000000```````````````````````````````{{{d{c}}}e{}{}}0000000000000000``{c{{Al{e}}}{}{}}00000000000000000000000000000000000{{{d{c}}}F`{}}00000000000000000`{{{Cn{c}}}{{Cn{Fb}}}{}}00000000000000000{{{d{fc}}}{{d{fFb}}}{}}00000000000000000{{{d{c}}}{{d{Fb}}}{}}00000000000000000`999999999999999999````{{{d{c}}}{{d{e}}}{}{}}0{{{d{fc}}}{{d{fe}}}{}{}}0{Ah{{d{c}}}{}}0{Ah{{d{fc}}}{}}0{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}0{AhAn}0{cc{}}0`{{}Ah}0{ce{}{}}0{c{{Bj{e}}}{}{}}0{{}{{Al{EbEd}}}}0{d}0{{Hn{Cn{I`}}{Cn{Ib}}Id{Cd{IfIhIhEjEj}}Ij}E`}{{{d{fE`}}}An}{c{{Al{e}}}{}{}}000`{{{d{c}}}F`{}}0{{{Cn{c}}}{{Cn{Fb}}}{}}0{{{d{fc}}}{{d{fFb}}}{}}0{{{d{c}}}{{d{Fb}}}{}}0::","D":"ADj","p":[[5,"Command",791],[1,"reference"],[0,"mut"],[6,"ServiceName",792],[5,"GrpcSettings",64],[6,"KeyPair",793],[10,"FinalStateController",794],[8,"RwLock",795],[5,"Arc",796],[5,"Amount",797],[5,"GrpcConfig",792],[1,"usize"],[5,"With",798],[6,"Result",799],[1,"unit"],[5,"ArgMatches",800],[5,"Args",0],[8,"Error",801],[5,"Id",802],[6,"Option",803],[5,"Request",804],[5,"Wallet",805],[1,"bool"],[5,"Mutex",806],[5,"Condvar",807],[1,"tuple"],[6,"ConsensusEvent",808],[5,"MassaReceiver",809],[5,"BootstrapManager",810],[10,"ConsensusManager",811],[5,"Box",812],[10,"ExecutionManager",813],[10,"SelectorManager",814],[10,"PoolManager",815],[10,"ProtocolManager",816],[10,"FactoryManager",817],[5,"StopHandle",818],[5,"StopHandle",819],[5,"MetricsStopper",820],[5,"MassaSurveyStopper",747],[5,"Layout",821],[5,"LayoutError",821],[5,"String",822],[5,"Path",823],[1,"u64"],[8,"Result",824],[5,"Managers",0],[5,"TypeId",825],[10,"Any",825],[5,"Private",826],[5,"LoggingSettings",64],[5,"ExecutionSettings",64],[5,"SelectionSettings",64],[5,"LedgerSettings",64],[5,"BootstrapSettings",64],[5,"FactorySettings",64],[5,"PoolSettings",64],[5,"APISettings",64],[5,"Settings",64],[5,"ConsensusSettings",64],[5,"NetworkSettings",64],[5,"MetricsSettings",64],[5,"ProtocolSettings",64],[5,"GrpcApiSettings",64],[5,"VersioningSettings",64],[5,"BlockDumpSettings",64],[5,"SETTINGS",64],[10,"Deserializer",827],[5,"Formatter",828],[8,"Result",828],[5,"Duration",829],[10,"ExecutionController",813],[10,"PoolController",815],[5,"MassaMetrics",820],[1,"u8"],[5,"MassaTime",830],[5,"MipStore",831],[5,"MassaSurvey",747]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAHICPgABABYAGgAEACEABQAoAAAAKgADAC8AAQAyAA4AQgAAAEUAAABJAAMATwAWAGgAAQBsAAEAcQACAHUAAAB4AAMAfQAkAKkAAACuADIA4gAAAOQAAQDnAEoAMwESAEgBAABMAQAATwEUAHgBEACKAQIAkAERAKMBAAClAQAApwEAALsBEgDPARYA5wEAAO0BAADvAQAA9gEAAPkBAAD9AQAAAQIBAAgCAQANAgAADwICABQCAAAWAgAAGAIAABoCAgAhAgEAJAIUADoCAAA8AgAAPgIBAEECAQBFAgAASQIAAEsCAABXAhAAagI1AKECWAD8AgIAAQMWAA=="}],\ +["massa_models",{"t":"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCFONNONNNOONONNNNNOOONONNNNNSGFFFPGQFPQSSPGQFPQONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNONNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNOOONNNNNNNNSSFFFFTTNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNPPFFFGFPFPPPIPPNNNNNNNNNNNNNONNNNNNNOOONNNNNNONNNNNNNNNNNNNNNNNNOOOOONNNNNNNNNNNNOOONNNOOOONNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNFFFFIOOONNNNNNNNONNNNOOOONOOOONNOOOOOONNNNNNNNNOONNNNNNNNOONNNOOOONNOOOOOOONNNNNNNNNNNNNNNONNNNSGQFFFPQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNSFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNFFFOOOOONNNNNNNNNNNNNOOONNNNNNNNNNNONNNNNNNNNNNNNNNNNPPPPPFGGPFFPPNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNOOOONNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNFOHCCOOOCOOOOOOFONNNNNNNONONNNNONNOOOONOONNNNNNSSSSFSSSSSSSSSSSSSSFFFSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSFSSSSSSSSSFSSOOOOOONNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHIFFNNNNNNNNHNNNNOONNNNNNNNNOOONNSGQFFFPQNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPFFFFGFGGFFGGFGPPPPPFFFFPPPTOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNOOOSSSFFFFGQFFPQFFIOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNPPPPPPPPPPPPPPPPPGIPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNOONNNNNOOOONONNNNNFFFFFFFFFOOOOOONNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHSFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPSSFFGQFFFPQFFGQFFPQIFFFGFGFFFPPPPIPPOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNOOOOOONNNNONNONNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOONNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOFFONNNNONNNNNNNNOONNNNNNNNNNNNNNNNNNNNONNNNOOONONNONNNNNNNNNNNNIKFIIKNNNNNONNONNNNMNNNFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNKFKFFNNNNNNNONNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNMNNNNONNNNNNOMNNNONNNNONNNOONNNNNNNNNNNNNNNNNFFKFFFFKFFFFFFHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNOOOONNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHOOHHOOONNNNNNNNNNNNFSFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNOOONNNNONONNNNNNNNNNNNNNNNNNNONNNNFFFFOOONNNNNNNNONNNNNNNNNNNNNOOOOOONNNNNNNNNNNNNNNONNNNNNNNOOONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNPPPGFFNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNOONNNHHHHHHKPPPPPPGFFGFFGFFPMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOONNNNN","n":["active_block","address","amount","block","block_header","block_id","bytecode","clique","composite","config","datastore","deferred_calls","denunciation","endorsement","error","execution","ledger","mapping_grpc","node","operation","output_event","prehash","rolls","secure_share","serialization","slot","stats","streaming_step","timeslots","types","version","ActiveBlock","block_id","borrow","borrow_mut","children","clone","clone_into","clone_to_uninit","creator_address","descendants","deserialize","fitness","fmt","from","from_ref","into","into_request","is_final","parents","same_thread_parent_creator","serialize","slot","to_owned","try_from","try_into","type_id","vzip","ADDRESS_PREFIX","Address","AddressDeserializer","AddressSerializer","ExecutionAddressCycleInfo","SC","SCAddress","SCAddress","SCAddressV0","SCAddressV0","SCAddressVariant","SC_PREFIX","USER_PREFIX","User","UserAddress","UserAddress","UserAddressV0","UserAddressV0","UserAddressVariant","active_rolls","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","cmp","cmp","compare","compare","compare","compare","compare","cycle","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_bytes","from_bytes","from_public_key","from_public_key","from_public_key","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_str","from_str_without_prefixed_type","from_str_without_prefixed_type","get_hash","get_hash","get_hash","get_hash","get_hash","get_thread","get_thread","get_thread","get_version","get_version","hash","hash","hash","hash","hash","hash_deserializer","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_final","new","new","nok_count","ok_count","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_prefixed_bytes","to_prefixed_bytes","to_prefixed_bytes","to_prefixed_bytes","to_prefixed_bytes","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_deserializer","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_serializer","version_deserializer","version_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AMOUNT_DECIMAL_FACTOR","AMOUNT_DECIMAL_SCALE","Amount","AmountDeserializer","AmountSerializer","AmountVisitor","MAX","MIN","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","checked_add","checked_div","checked_div_u64","checked_mul_u64","checked_rem","checked_rem_u64","checked_sub","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","const_init","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","expecting","fmt","fmt","fmt","from","from","from","from","from_decimal","from_mantissa_scale","from_raw","from_ref","from_ref","from_ref","from_str","into","into","into","into","into_request","into_request","into_request","into_request","is_zero","new","new","partial_cmp","saturating_add","saturating_mul_u64","saturating_sub","serialize","serialize","to_decimal","to_mantissa_scale","to_owned","to_owned","to_owned","to_raw","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u64_deserializer","u64_serializer","visit_str","vzip","vzip","vzip","vzip","zero","ActiveInAlternativeCliques","ActiveInBlockclique","Block","BlockDeserializer","BlockDeserializerArgs","BlockGraphStatus","BlockSerializer","Discarded","FilledBlock","Final","Incoming","NotFound","SecureShareBlock","WaitingForDependencies","WaitingForSlot","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytes_count","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","contains_operation","content","content_creator_address","content_creator_pub_key","default","deserialize","deserialize","deserialize","deserialize","deserialize","endorsement_count","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","get_fitness","header","header","header_deserializer","header_serializer","id","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","last_start_period","max_denunciations_per_block_header","max_operations_per_block","new","new","new_verifiable","op_ids_deserializer","op_ids_serializer","operations","operations","serialize","serialize","serialize","serialize","serialize","serialized_data","signature","thread_count","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","BlockHeader","BlockHeaderDenunciationData","BlockHeaderDeserializer","BlockHeaderSerializer","SecuredHeader","announced_version","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","compute_signed_hash","content","content_creator_address","content_creator_pub_key","current_version","default","denunciation_deserializer","denunciation_len_deserializer","denunciation_serializer","denunciations","deserialize","deserialize","endorsement_content_serializer","endorsement_count","endorsement_len_deserializer","endorsement_serializer","endorsement_serializer","endorsements","fmt","fmt","fmt","from","from","from","from","from_ref","get_fitness","hash_deserializer","id","into","into","into","into","into_request","into_request","into_request","into_request","last_start_period","network_versions_deserializer","new","new","new","operation_merkle_root","opt_deserializer","opt_serializer","parents","serialize","serialize","serialized_data","signature","slot","slot","slot_deserializer","slot_serializer","thread_count","to_bytes","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u32_serializer","vzip","vzip","vzip","vzip","BLOCKID_PREFIX","BlockId","BlockId","BlockIdDeserializer","BlockIdSerializer","BlockIdV0","BlockIdV0","BlockIdVariant","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","compare","compare","default","default","deserialize","deserialize","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_str","from_str","get_first_bit","get_first_bit","get_hash","get_hash","get_hash","get_hash","get_version","get_version","hash","hash","hash_deserializer","into","into","into","into","into_request","into_request","into_request","into_request","new","new","new","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","version_deserializer","version_serializer","vzip","vzip","vzip","vzip","BYTECODE_VERSION","Bytecode","BytecodeDeserializer","BytecodeSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","new","new","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vec_u8_deserializer","vec_u8_serializer","version_byte_deserializer","version_byte_serializer","vzip","vzip","vzip","Clique","CliqueDeserializer","CliqueSerializer","block_id_deserializer","block_id_serializer","block_ids","block_ids_length_deserializer","block_ids_length_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deserialize","deserialize","fitness","fitness_deserializer","fitness_serializer","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","is_blockclique","new","new","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip","Active","Discarded","Discarded","InBlock","Incoming","OperationSearchResult","OperationSearchResultBlockStatus","OperationSearchResultStatus","Pending","PubkeySig","StakersCycleProductionStats","WaitingForDependencies","WaitingForSlot","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cycle","deserialize","deserialize","deserialize","deserialize","deserialize","extend","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","in_blocks","in_pool","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","is_final","ok_nok_counts","op","public_key","serialize","serialize","serialize","serialize","serialize","signature","status","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","CompactConfig","block_reward","build_massa_settings","compact_config","constants","delta_f0","end_timestamp","genesis_timestamp","massa_settings","max_block_size","operation_validity_periods","periods_per_cycle","roll_price","t0","thread_count","CompactConfig","block_reward","borrow","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","default","delta_f0","deserialize","end_timestamp","fmt","fmt","from","from_ref","genesis_timestamp","into","into_request","max_block_size","operation_validity_periods","periods_per_cycle","roll_price","serialize","t0","thread_count","to_owned","to_string","try_from","try_into","type_id","vzip","ASYNC_MSG_CST_GAS_COST","BASE_OPERATION_GAS_COST","BLOCK_REWARD","BOOTSTRAP_RANDOMNESS_SIZE_BYTES","CHAINID","CHANNEL_SIZE","CONSENSUS_BOOTSTRAP_PART_SIZE","DEFERRED_CALL_BASE_FEE_MAX_CHANGE_DENOMINATOR","DEFERRED_CALL_CST_GAS_COST","DEFERRED_CALL_GLOBAL_OVERBOOKING_PENALTY","DEFERRED_CALL_MAX_ASYNC_GAS","DEFERRED_CALL_MAX_FUTURE_SLOTS","DEFERRED_CALL_MAX_POOL_CHANGES","DEFERRED_CALL_MIN_GAS_COST","DEFERRED_CALL_MIN_GAS_INCREMENT","DEFERRED_CALL_SLOT_OVERBOOKING_PENALTY","DELTA_F0","DENUNCIATION_EXPIRE_PERIODS","ENDORSEMENT_COUNT","END_TIMESTAMP","GENESIS_KEY","GENESIS_TIMESTAMP","HANDSHAKE_RANDOMNESS_SIZE_BYTES","INITIAL_DRAW_SEED","IP_LIST_MAX_SIZE","KEEP_EXECUTED_HISTORY_EXTRA_PERIODS","LEDGER_COST_PER_BYTE","LEDGER_ENTRY_BASE_COST","LEDGER_ENTRY_DATASTORE_BASE_SIZE","MAX_ADVERTISE_LENGTH","MAX_ASYNC_GAS","MAX_ASYNC_POOL_LENGTH","MAX_BLOCK_SIZE","MAX_BOOTSTRAP_ASYNC_POOL_CHANGES","MAX_BOOTSTRAP_BLOCKS","MAX_BOOTSTRAP_CHILDREN","MAX_BOOTSTRAP_CLIQUES","MAX_BOOTSTRAP_DEPS","MAX_BOOTSTRAP_ERROR_LENGTH","MAX_BOOTSTRAP_FINAL_STATE_PARTS_SIZE","MAX_BOOTSTRAP_MESSAGE_SIZE","MAX_BOOTSTRAP_MESSAGE_SIZE_BYTES","MAX_BOOTSTRAP_POS_CYCLES","MAX_BOOTSTRAP_VERSIONING_ELEMENTS_SIZE","MAX_BYTECODE_LENGTH","MAX_CONSENSUS_BLOCKS_IDS","MAX_DATASTORE_ENTRY_COUNT","MAX_DATASTORE_KEY_LENGTH","MAX_DATASTORE_VALUE_LENGTH","MAX_DEFERRED_CREDITS_LENGTH","MAX_DENUNCIATIONS_PER_BLOCK_HEADER","MAX_DENUNCIATION_CHANGES_LENGTH","MAX_DUPLEX_BUFFER_SIZE","MAX_ENDORSEMENTS_PER_MESSAGE","MAX_EVENT_DATA_SIZE","MAX_EVENT_PER_OPERATION","MAX_EXECUTED_OPS_CHANGES_LENGTH","MAX_EXECUTED_OPS_LENGTH","MAX_FUNCTION_NAME_LENGTH","MAX_GAS_PER_BLOCK","MAX_LEDGER_CHANGES_COUNT","MAX_LEDGER_CHANGES_PER_SLOT","MAX_LISTENERS_PER_PEER","MAX_MESSAGE_SIZE","MAX_OPERATIONS_PER_BLOCK","MAX_OPERATIONS_PER_MESSAGE","MAX_OPERATION_DATASTORE_ENTRY_COUNT","MAX_OPERATION_DATASTORE_KEY_LENGTH","MAX_OPERATION_DATASTORE_VALUE_LENGTH","MAX_OPERATION_STORAGE_TIME","MAX_PARAMETERS_SIZE","MAX_PEERS_IN_ANNOUNCEMENT_LIST","MAX_PRODUCTION_EVENTS_PER_BLOCK","MAX_PRODUCTION_STATS_LENGTH","MAX_RECURSIVE_CALLS_DEPTH","MAX_RNG_SEED_LENGTH","MAX_ROLLS_COUNT_LENGTH","MAX_RUNTIME_MODULE_CUSTOM_SECTION_DATA_LEN","MAX_RUNTIME_MODULE_CUSTOM_SECTION_LEN","MAX_RUNTIME_MODULE_DEFINED_FUNCTIONS","MAX_RUNTIME_MODULE_EXPORTS","MAX_RUNTIME_MODULE_FUNCTIONS","MAX_RUNTIME_MODULE_FUNCTION_ARGS","MAX_RUNTIME_MODULE_FUNCTION_IMPORTS","MAX_RUNTIME_MODULE_FUNCTION_NAME_LEN","MAX_RUNTIME_MODULE_FUNCTION_RETURN_VALUES","MAX_RUNTIME_MODULE_GLOBAL_INITIALIZER","MAX_RUNTIME_MODULE_IMPORTS","MAX_RUNTIME_MODULE_MEMORIES","MAX_RUNTIME_MODULE_MEMORY_IMPORTS","MAX_RUNTIME_MODULE_NAME_LEN","MAX_RUNTIME_MODULE_PASSIVE_DATA","MAX_RUNTIME_MODULE_PASSIVE_ELEMENT","MAX_RUNTIME_MODULE_SIGNATURE_LEN","MAX_RUNTIME_MODULE_TABLE","MAX_RUNTIME_MODULE_TABLE_INITIALIZER","MAX_SIZE_CHANNEL_COMMANDS_CONNECTIVITY","MAX_SIZE_CHANNEL_COMMANDS_PEERS","MAX_SIZE_CHANNEL_COMMANDS_PEER_TESTERS","MAX_SIZE_CHANNEL_COMMANDS_PROPAGATION_BLOCKS","MAX_SIZE_CHANNEL_COMMANDS_PROPAGATION_ENDORSEMENTS","MAX_SIZE_CHANNEL_COMMANDS_PROPAGATION_OPERATIONS","MAX_SIZE_CHANNEL_COMMANDS_RETRIEVAL_BLOCKS","MAX_SIZE_CHANNEL_COMMANDS_RETRIEVAL_ENDORSEMENTS","MAX_SIZE_CHANNEL_COMMANDS_RETRIEVAL_OPERATIONS","MAX_SIZE_CHANNEL_NETWORK_TO_BLOCK_HANDLER","MAX_SIZE_CHANNEL_NETWORK_TO_ENDORSEMENT_HANDLER","MAX_SIZE_CHANNEL_NETWORK_TO_OPERATION_HANDLER","MAX_SIZE_CHANNEL_NETWORK_TO_PEER_HANDLER","MIP_STORE_STATS_BLOCK_CONSIDERED","NETWORK_CONTROLLER_CHANNEL_SIZE","NETWORK_EVENT_CHANNEL_SIZE","NETWORK_NODE_COMMAND_CHANNEL_SIZE","NETWORK_NODE_EVENT_CHANNEL_SIZE","NODE_SEND_CHANNEL_SIZE","OPERATION_VALIDITY_PERIODS","PERIODS_PER_CYCLE","POOL_CONTROLLER_DENUNCIATIONS_CHANNEL_SIZE","POOL_CONTROLLER_ENDORSEMENTS_CHANNEL_SIZE","POOL_CONTROLLER_OPERATIONS_CHANNEL_SIZE","POS_MISS_RATE_DEACTIVATION_THRESHOLD","POS_SAVED_CYCLES","PROTOCOL_CONTROLLER_CHANNEL_SIZE","PROTOCOL_EVENT_CHANNEL_SIZE","ROLL_COUNT_TO_SLASH_ON_DENUNCIATION","ROLL_PRICE","SELECTOR_DRAW_CACHE_SIZE","SIGNATURE_DESER_SIZE","T0","THREAD_COUNT","VERSION","VERSIONING_ACTIVATION_DELAY_MIN","VERSIONING_THRESHOLD_TRANSITION_ACCEPTED","__private_field","__private_field","__private_field","__private_field","__private_field","__private_field","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","deref","deref","deref","deref","deref","deref","from","from","from","from","from","from","get_period_from_args","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","build_massa_settings","Datastore","DatastoreDeserializer","DatastoreSerializer","borrow","borrow","borrow_mut","borrow_mut","default","deserialize","from","from","get_prefix_bounds","into","into","into_request","into_request","key_deserializer","length_deserializer","new","new","serialize","try_from","try_from","try_into","try_into","type_id","type_id","u64_serializer","value_deserializer","vec_u8_serializer","vzip","vzip","DEFERRED_CALL_ID_PREFIX","DeferredCallId","DeferredCallId","DeferredCallIdDeserializer","DeferredCallIdSerializer","DeferredCallIdV0","DeferredCallIdV0","DeferredCallIdVariant","as_bytes","as_bytes","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytes_deserializer","bytes_serializer","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","compare","compare","default","default","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from_bytes","from_bytes","from_ref","from_ref","from_ref","from_ref","from_str","get_hash","get_hash","get_slot","hash","hash","into","into","into","into","into_request","into_request","into_request","into_request","new","new","new","partial_cmp","partial_cmp","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","BlockHeader","BlockHeader","BlockHeader","BlockHeader","BlockHeader","BlockHeaderDenunciation","BlockHeaderDenunciationDeserializer","BlockHeaderDenunciationPrecursor","BlockHeaderDenunciationSerializer","Denunciation","DenunciationDeserializer","DenunciationError","DenunciationIndex","DenunciationIndexDeserializer","DenunciationIndexSerializer","DenunciationIndexTypeId","DenunciationPrecursor","DenunciationSerializer","DenunciationTypeId","Endorsement","Endorsement","Endorsement","Endorsement","Endorsement","EndorsementDenunciation","EndorsementDenunciationDeserializer","EndorsementDenunciationPrecursor","EndorsementDenunciationSerializer","InvalidInput","Serialization","Signature","VARIANT_COUNT","blkh_de_deserializer","blkh_de_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","compute_hash_for_sig_verif","compute_hash_for_sig_verif","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","endo_de_deserializer","endo_de_serializer","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_hash","get_hash","get_hash_1","get_hash_1","get_hash_2","get_hash_2","get_index","get_index","get_index","get_public_key","get_public_key","get_public_key","get_public_key","get_signature_1","get_signature_1","get_signature_2","get_signature_2","get_slot","get_slot","get_slot","get_slot","get_slot","hash","hash","hash","hash_1","hash_1","hash_2","hash_2","hash_deserializer","hash_deserializer","hash_serializer","hash_serializer","id_deserializer","index","index","index_deserializer","index_deserializer","index_serializer","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_also_for_block_header","is_also_for_endorsement","is_expired","is_for_block_header","is_for_endorsement","is_valid","new","new","new","new","new","new","new","new","partial_cmp","pubkey_deserializer","pubkey_deserializer","public_key","public_key","public_key","public_key","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","signature","signature","signature_1","signature_1","signature_2","signature_2","signature_deserializer","signature_deserializer","slot","slot","slot","slot","slot_deserializer","slot_deserializer","slot_deserializer","slot_serializer","slot_serializer","slot_serializer","source","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id_deserializer","type_id_serializer","u32_serializer","u32_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","index","slot","slot","ENDORSEMENTID_PREFIX","ENDORSEMENTID_VERSION","ENDORSEMENT_ID_SIZE_BYTES","Endorsement","EndorsementDenunciationData","EndorsementDeserializer","EndorsementDeserializerLW","EndorsementId","EndorsementId","EndorsementIdDeserializer","EndorsementIdV0","EndorsementIdV0","EndorsementIdVariant","EndorsementSerializer","EndorsementSerializerLW","SecureShareEndorsement","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","compare","compare","compute_signed_hash","content","content_creator_address","content_creator_pub_key","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","endorsed_block","endorsed_block","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_str","from_str","get_hash","get_hash","get_hash","get_hash","hash","hash","hash_deserializer","id","index","index","index_deserializer","index_deserializer","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","new","new","new","new","new","new","new","partial_cmp","partial_cmp","serialize","serialize","serialize","serialize","serialize","serialized_data","signature","slot","slot","slot","slot_deserializer","slot_serializer","to_bytes","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_serializer","u32_serializer","version_deserializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","AddressParseError","AmountOverflowError","AmountParseError","BlockIdParseError","BufferError","CheckedOperationError","DeferredCallIdParseError","DeserializeError","EndorsementIdParseError","Err","ErrorRaised","HashError","InvalidLedgerChange","InvalidRollUpdate","InvalidVersionError","MassaHashError","MassaSignatureError","ModelsError","ModelsResult","NodeIdParseError","Ok","OperationIdParseError","OperationPrefixJoinError","OutdatedBootstrapCursor","PeriodOverflowError","SerializationError","SerializeError","ThreadOverflowError","TimeError","TimeOverflowError","WrongPrefix","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","from","from","from","from","from","from","from_ref","into","into_request","source","to_owned","to_string","try_from","try_into","type_id","vzip","EventFilter","borrow","borrow_mut","clone","clone_into","clone_to_uninit","default","deserialize","emitter_address","end","fmt","from","from_ref","into","into_request","is_error","is_final","original_caller_address","original_operation_id","serialize","start","to_owned","try_from","try_into","type_id","vzip","LedgerChange","LedgerChangeDeserializer","LedgerChangeSerializer","LedgerChanges","LedgerChangesDeserializer","LedgerChangesSerializer","LedgerData","LedgerDataDeserializer","LedgerDataSerializer","address_deserializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","amount_serializer","apply","apply_change","balance","balance_delta","balance_increment","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain","chain","clone","clone","clone","clone_into","clone_into","clone_into","clone_subset","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","get_involved_addresses","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_nil","is_nil","ledger_change_deserializer","ledger_change_serializer","length_deserializer","length_serializer","new","new","new","new","new","new","new","serialize","serialize","serialize","serialize","serialize","serialize","sync_from","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","to_denunciation_index","NODEID_PREFIX","NodeId","borrow","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","cmp","compare","deserialize","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from_ref","from_str","get_hash","get_public_key","hash","into","into_request","new","partial_cmp","serialize","to_owned","to_string","try_from","try_into","type_id","vzip","CallSC","CallSC","ExecuteSC","ExecuteSC","OPERATIONID_PREFIX","OPERATION_ID_PREFIX_SIZE_BYTES","Operation","OperationDeserializer","OperationId","OperationId","OperationIdDeserializer","OperationIdSerializer","OperationIdV0","OperationIdV0","OperationIdVariant","OperationIdsDeserializer","OperationIdsSerializer","OperationPrefixId","OperationPrefixId","OperationPrefixIdDeserializer","OperationPrefixIdV0","OperationPrefixIdV0","OperationPrefixIdVariant","OperationPrefixIds","OperationPrefixIdsDeserializer","OperationPrefixIdsSerializer","OperationSerializer","OperationType","OperationTypeDeserializer","OperationTypeId","OperationTypeSerializer","OperationsDeserializer","OperationsSerializer","RollBuy","RollBuy","RollSell","RollSell","SecureShareOperation","Transaction","Transaction","address_deserializer","address_serializer","amount_deserializer","amount_deserializer","amount_serializer","amount_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","cmp","compare","compare","compare","compare","compute_hash","compute_operations_hash","content","content_creator_address","content_creator_pub_key","data_deserializer","datastore_deserializer","datastore_serializer","default","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","expire_period","expire_period_deserializer","fee","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_str","from_str","function_name_deserializer","function_name_serializer","get_gas_usage","get_hash","get_hash","get_hash","get_hash","get_hash","get_hash","get_ledger_involved_addresses","get_max_spending","get_roll_involved_addresses","get_validity_range","get_version","get_version","hash","hash","hash","hash","hash_deserializer","id","id_deserializer","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_prefix","into_prefix","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","length_deserializer","length_deserializer","length_deserializer","max_gas_deserializer","new","new","new","new","new","new","new","new","new","new","new","new","new","new","op","op_id_deserializer","op_id_serializer","op_type_deserializer","op_type_serializer","parameter_deserializer","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pref_deserializer","prefix","prefix","rolls_number_deserializer","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialized_data","signature","signed_op_deserializer","signed_op_serializer","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_serializer","u32_serializer","u32_serializer","u32_serializer","u64_serializer","u64_serializer","vec_u8_serializer","version_deserializer","version_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","amount","coins","data","datastore","max_coins","max_gas","max_gas","param","recipient_address","roll_count","roll_count","target_addr","target_func","EventExecutionContext","SCOutputEvent","block","borrow","borrow","borrow_mut","borrow_mut","call_stack","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","cmp","compare","context","data","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from_ref","from_ref","index_in_slot","into","into","into_request","into_request","is_error","is_final","origin_operation_id","partial_cmp","read_only","serialize","serialize","slot","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","BuildHashMapper","CapacityAllocator","HashMapper","PreHashMap","PreHashSet","PreHashed","borrow","borrow_mut","default","finish","from","hash","into","into_request","source","try_from","try_into","type_id","vzip","with_capacity","with_capacity","with_capacity","write","RollCompensation","RollCounts","RollUpdate","RollUpdateDeserializer","RollUpdateSerializer","RollUpdates","apply","apply_updates","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain","chain","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_subset","clone_subset","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","compensate","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","get_involved_addresses","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","is_empty","is_nil","len","new","new","new","roll_purchases","roll_sales","serialize","serialize","serialize","serialize","serialize","sync_from","sync_from","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","u64_deserializer","u64_serializer","vzip","vzip","vzip","vzip","vzip","vzip","Id","SecureShare","SecureShareContent","SecureShareDeserializer","SecureShareSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bytes_count","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","compute_hash","compute_signed_hash","compute_signed_hash","contains_operation","content","content_creator_address","content_creator_pub_key","content_deserializer","default","deserialize","deserialize","deserialize","deserialize_with","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from_ref","from_ref","get_fitness","get_fitness","get_gas_usage","get_hash","get_ledger_involved_addresses","get_max_spending","get_roll_involved_addresses","get_validity_range","id","into","into","into","into_request","into_request","into_request","marker_t","new","new","new","new_verifiable","public_key_deserializer","serialize","serialize","serialize","serialize_with","serialized_data","serialized_size","sign","sign","signature","signature_deserializer","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","verify_signature","verify_signature","vzip","vzip","vzip","BitVecDeserializer","BitVecSerializer","DeserializeMinBEInt","IpAddrDeserializer","IpAddrSerializer","PreHashSetDeserializer","PreHashSetSerializer","SerializeMinBEInt","StringDeserializer","StringSerializer","VecDeserializer","VecSerializer","VecU8Deserializer","VecU8Serializer","array_from_slice","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","data_deserializer","data_deserializer","data_serializer","data_serializer","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","from","from","from","from","from","from","from","from","from","from","from","from","from_be_bytes_min","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","len_serializer","len_serializer","len_serializer","length_deserializer","length_serializer","marker_l","marker_l","new","new","new","new","new","new","new","new","new","new","new","new","phantom_t","phantom_t","phantom_t","phantom_t","serialize","serialize","serialize","serialize","serialize","serialize","to_be_bytes_min","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_be_bytes_min_length","u32_deserializer","u32_serializer","u64_be_bytes_min_length","u8_from_slice","varint_u64_deserializer","varint_u64_deserializer","varint_u64_deserializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","IndexedSlot","SLOT_KEY_SIZE","Slot","SlotDeserializer","SlotSerializer","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","default","deserialize","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from","from_bytes_key","from_ref","from_ref","from_ref","from_ref","from_str","get_cycle","get_first_bit","get_hash","get_hash","get_next_slot","get_prev_slot","hash","hash","index","into","into","into","into","into_request","into_request","into_request","into_request","is_first_of_cycle","is_last_of_cycle","max","min","new","new","new","new_first_of_cycle","new_last_of_cycle","partial_cmp","period","period_deserializer","range_thread","serialize","serialize","serialize","skip","slot","slots_since","thread","to_bytes_key","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u64_serializer","vzip","vzip","vzip","vzip","ConsensusStats","ExecutionStats","NetworkStats","PoolStats","active_cursor","active_node_count","banned_peer_count","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clique_count","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","deserialize","deserialize","deserialize","deserialize","end_timespan","endorsement_count","final_block_count","final_block_count","final_cursor","final_executed_operations_count","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_ref","from_ref","from_ref","in_connection_count","into","into","into","into","into_request","into_request","into_request","into_request","known_peer_count","operation_count","out_connection_count","serialize","serialize","serialize","serialize","stale_block_count","start_timespan","time_window_end","time_window_start","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","Finished","Ongoing","Started","StreamingStep","StreamingStepDeserializer","StreamingStepSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","clone_to_uninit","data_deser","data_serializer","deserialize","eq","equivalent","equivalent","equivalent","equivalent","finished","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","new","new","opt_deser","option_serializer","phantom_t","phantom_t","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_deser","u64_serializer","vzip","vzip","vzip","get_block_slot_timestamp","get_closest_slot_to_timestamp","get_current_latest_block_slot","get_latest_block_slot_at_timestamp","slot_count_in_range","time_range_to_slot_range","Applicable","Delete","Delete","Keep","Set","Set","Set","SetOrDelete","SetOrDeleteDeserializer","SetOrDeleteSerializer","SetOrKeep","SetOrKeepDeserializer","SetOrKeepSerializer","SetUpdateOrDelete","SetUpdateOrDeleteDeserializer","SetUpdateOrDeleteSerializer","Update","apply","apply","apply","apply","apply_to","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","inner_deserializer","inner_deserializer","inner_deserializer_set","inner_deserializer_update","inner_serializer","inner_serializer","inner_serializer_set","inner_serializer_update","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","new","new","new","new","new","new","phantom_t","phantom_t","phantom_t","phantom_t","phantom_t","phantom_t","phantom_v","phantom_v","serialize","serialize","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","INSTANCE_LEN","Version","VersionDeserializer","VersionSerializer","VersionVisitor","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","expecting","fmt","fmt","fmt","from","from","from","from","from_ref","from_ref","from_ref","from_str","instance","into","into","into","into","into_request","into_request","into_request","into_request","is_compatible","major","minor","new","new","serialize","serialize","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u32_deserializer","u32_serializer","visit_str","vzip","vzip","vzip","vzip"],"q":[[0,"massa_models"],[31,"massa_models::active_block"],[58,"massa_models::address"],[306,"massa_models::amount"],[410,"massa_models::block"],[536,"massa_models::block_header"],[631,"massa_models::block_id"],[746,"massa_models::bytecode"],[800,"massa_models::clique"],[853,"massa_models::composite"],[963,"massa_models::config"],[978,"massa_models::config::compact_config"],[1010,"massa_models::config::constants"],[1210,"massa_models::config::massa_settings"],[1211,"massa_models::datastore"],[1243,"massa_models::deferred_calls"],[1348,"massa_models::denunciation"],[1742,"massa_models::denunciation::DenunciationIndex"],[1745,"massa_models::endorsement"],[1948,"massa_models::error"],[2003,"massa_models::execution"],[2029,"massa_models::ledger"],[2187,"massa_models::mapping_grpc"],[2188,"massa_models::node"],[2223,"massa_models::operation"],[2676,"massa_models::operation::OperationType"],[2689,"massa_models::output_event"],[2752,"massa_models::prehash"],[2775,"massa_models::rolls"],[2894,"massa_models::secure_share"],[2986,"massa_models::serialization"],[3223,"massa_models::slot"],[3341,"massa_models::stats"],[3434,"massa_models::streaming_step"],[3492,"massa_models::timeslots"],[3498,"massa_models::types"],[3669,"massa_models::version"],[3752,"core::result"],[3753,"serde::de"],[3754,"core::fmt"],[3755,"tonic::request"],[3756,"serde::ser"],[3757,"core::any"],[3758,"core::cmp"],[3759,"nom::internal"],[3760,"nom::error"],[3761,"massa_signature::signature_impl"],[3762,"core::hash"],[3763,"core::marker"],[3764,"core::option"],[3765,"alloc::vec"],[3766,"massa_serialization"],[3767,"alloc::string"],[3768,"rust_decimal::decimal"],[3769,"core::ops::range"],[3770,"massa_hash::hash"],[3771,"massa_time"],[3772,"num_rational"],[3773,"alloc::collections::btree::map"],[3774,"massa_signature::error"],[3775,"core::error"],[3776,"num_enum"],[3777,"massa_hash::error"],[3778,"massa_time::error"],[3779,"massa_proto_rs::massa::model::v1"],[3780,"core::clone"],[3781,"core::convert"],[3782,"nom::traits"],[3783,"core::net::ip_addr"],[3784,"bitvec::vec"],[3785,"core::default"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,12,0,0,0,13,0,0,0,12,0,0,0,15,0,19,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,12,12,13,13,14,14,15,15,16,16,17,18,19,12,13,14,15,16,12,13,14,15,16,19,17,18,12,18,18,18,18,18,19,12,13,14,15,16,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,12,12,13,14,15,16,19,12,13,14,15,16,17,18,19,14,16,12,15,16,12,13,14,15,16,17,18,19,12,13,15,12,13,14,15,16,12,15,16,14,16,12,13,14,15,16,18,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,19,17,18,19,19,12,13,14,15,16,12,13,14,15,16,17,17,17,17,17,19,12,13,14,15,16,17,18,19,12,13,14,15,16,12,13,14,15,16,12,13,14,15,16,17,18,19,12,13,14,15,16,17,18,19,18,12,13,14,15,16,17,18,19,17,18,17,12,13,14,15,16,17,18,19,0,0,0,0,0,0,40,40,44,40,41,42,44,40,41,42,40,40,40,40,40,40,40,40,41,42,40,41,42,40,40,41,42,40,40,40,40,41,40,42,40,40,40,40,40,44,44,40,40,44,40,41,42,40,40,40,40,41,42,40,44,40,41,42,44,40,41,42,40,41,42,40,40,40,40,40,41,40,40,40,41,42,40,40,44,40,41,42,44,40,41,42,44,40,41,42,42,41,44,44,40,41,42,40,62,62,0,0,0,0,0,62,0,62,62,62,0,62,62,54,63,55,51,52,62,54,63,55,51,52,62,50,63,51,52,51,52,51,52,50,50,50,50,54,55,51,51,52,62,63,62,62,62,62,62,51,51,52,62,54,63,55,51,52,62,51,52,50,51,52,55,54,50,54,63,55,51,52,62,54,63,55,51,52,62,63,63,63,54,55,51,55,54,51,52,54,51,51,52,62,50,50,63,51,52,51,54,63,55,51,52,62,54,63,55,51,52,62,54,63,55,51,52,62,54,63,55,51,52,62,0,0,0,0,0,66,69,68,68,69,66,70,68,69,66,70,69,66,66,66,66,71,71,71,66,68,69,69,68,66,69,66,68,69,69,68,69,66,66,66,70,68,69,66,70,66,71,69,71,68,69,66,70,68,69,66,70,69,69,68,69,70,66,69,68,66,68,66,71,71,66,70,69,68,69,70,66,66,68,69,66,70,68,69,66,70,68,69,66,70,68,68,69,66,70,0,0,0,0,0,0,73,0,73,74,75,76,73,74,75,76,73,74,75,76,73,74,75,76,73,73,74,74,75,76,73,74,73,74,75,76,73,74,76,76,73,74,73,73,73,73,74,74,74,74,73,73,74,73,74,75,76,73,74,75,76,73,74,73,74,73,73,74,74,73,74,73,74,76,73,74,75,76,73,74,75,76,73,75,76,73,74,73,74,75,75,73,74,75,76,73,74,73,74,75,76,73,74,75,76,73,74,75,76,76,75,73,74,75,76,0,0,0,0,79,77,78,79,77,78,77,77,77,77,78,79,77,77,77,77,77,77,77,79,77,78,77,79,77,78,79,77,78,79,78,77,78,77,79,77,78,79,77,78,79,77,78,79,78,79,78,79,77,78,0,0,0,82,81,80,82,81,82,80,81,82,80,81,80,80,80,80,81,82,80,80,82,81,80,82,80,81,80,82,80,81,82,80,81,80,82,81,80,81,80,82,80,81,82,80,81,82,80,81,82,80,81,83,83,84,84,83,0,0,0,84,0,0,83,83,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,86,83,84,85,86,87,85,83,84,85,86,87,87,83,84,85,86,87,83,84,85,86,87,85,85,83,84,85,86,87,83,84,85,86,87,86,86,85,87,83,84,85,86,87,87,85,83,84,85,86,87,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,83,84,85,86,87,0,89,0,0,0,89,89,89,0,89,89,89,89,89,89,0,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,0,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,90,92,93,94,96,98,0,0,0,0,100,99,100,99,99,100,100,99,0,100,99,100,99,100,100,100,99,99,100,99,100,99,100,99,99,100,99,100,99,0,0,0,0,0,0,102,0,102,103,102,103,104,105,102,103,104,105,105,104,102,103,104,105,102,103,104,105,102,103,104,105,102,103,102,103,104,105,102,105,102,103,102,102,102,102,103,103,103,103,102,102,103,102,103,104,105,102,103,102,103,104,105,102,102,103,102,102,103,102,103,104,105,102,103,104,105,102,104,105,102,103,102,104,102,103,104,105,102,102,103,104,105,102,103,104,105,102,103,104,105,102,103,104,105,108,122,109,121,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,108,122,109,121,114,0,0,0,0,123,123,123,122,120,117,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,106,107,108,109,110,111,112,113,114,106,107,108,109,110,111,112,113,114,106,107,108,109,109,110,111,112,113,114,109,109,106,107,115,116,117,110,118,119,120,106,107,108,109,111,120,117,106,107,108,109,121,112,113,114,109,109,109,109,121,121,121,121,106,107,108,122,123,123,109,121,112,113,114,115,118,116,119,117,120,106,107,108,122,122,123,123,123,109,109,109,121,121,110,111,112,113,114,114,114,106,107,108,109,110,111,112,113,114,109,109,106,107,106,107,106,108,109,106,107,108,114,106,107,106,107,106,107,108,109,114,109,112,113,106,107,106,107,118,119,115,116,111,106,112,118,111,110,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,108,108,108,108,108,108,115,118,116,119,117,120,110,111,109,118,119,106,107,112,113,115,116,117,106,107,108,109,110,112,113,106,107,106,107,118,119,106,107,112,113,118,119,111,115,116,110,123,106,107,108,109,110,111,112,113,114,123,115,118,116,119,117,120,106,107,108,108,108,108,122,122,123,109,121,121,110,111,112,113,114,122,121,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,120,117,115,110,115,118,116,119,117,120,106,107,108,122,123,109,121,110,111,112,113,114,244,245,244,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,134,131,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,128,129,130,131,128,129,130,131,128,128,129,129,130,131,128,129,128,129,130,125,125,125,132,131,133,133,134,135,128,129,130,135,130,128,129,130,128,128,128,128,129,129,129,129,130,130,130,130,128,128,129,130,130,136,133,134,132,135,128,129,130,131,136,128,129,130,131,128,129,128,128,129,129,128,129,133,125,130,136,134,135,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,133,134,132,135,128,131,136,128,129,132,128,129,130,131,125,125,135,130,136,134,131,136,128,129,130,131,128,129,130,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,133,134,132,135,128,129,130,131,136,132,131,133,133,134,132,135,128,129,130,131,136,27,27,27,27,27,27,27,27,27,144,27,27,27,27,27,27,27,0,0,27,144,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,0,0,0,0,0,0,0,0,0,152,149,147,148,150,151,142,145,145,143,143,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,143,142,145,143,142,145,143,142,142,145,145,143,142,147,148,149,145,150,143,151,142,147,148,152,145,143,142,145,143,142,147,148,149,152,145,150,143,151,142,145,143,142,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,145,143,152,149,152,149,147,148,149,152,145,150,151,149,145,150,143,151,142,142,145,143,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,147,148,149,152,145,150,143,151,142,0,0,0,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,175,162,175,162,0,0,0,0,0,0,0,0,0,155,0,0,0,0,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,175,162,175,162,0,175,162,170,166,169,170,165,166,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,155,156,157,158,159,160,161,162,163,164,155,156,157,158,159,160,161,162,163,164,155,155,156,156,157,157,158,158,159,160,161,162,163,164,155,156,157,158,155,156,157,158,161,0,53,53,53,170,170,166,165,166,167,159,160,168,163,164,169,170,171,172,174,155,156,157,158,160,160,161,162,168,155,156,157,158,175,162,155,155,155,155,156,156,156,156,157,157,157,157,158,158,158,158,175,175,175,175,161,169,161,155,155,156,156,157,157,158,158,175,161,161,162,162,165,169,166,170,167,171,172,174,155,156,157,157,158,159,160,175,161,162,168,163,164,155,156,157,158,159,160,161,162,163,164,155,156,170,166,53,155,155,156,156,157,158,53,53,53,53,155,156,155,156,157,158,160,53,170,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,155,156,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,171,172,174,170,165,169,166,170,167,171,172,174,155,159,160,168,163,164,161,171,167,169,165,170,155,156,157,158,172,155,156,170,165,166,167,155,156,157,158,159,159,161,162,163,164,53,53,174,164,155,156,157,158,159,160,161,162,163,164,155,156,157,158,161,162,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,175,161,162,168,163,164,175,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,166,167,163,164,165,166,166,160,159,165,169,166,170,167,171,172,174,155,156,157,158,159,160,175,161,162,168,163,164,246,247,248,248,248,248,247,247,246,249,250,247,247,0,0,180,179,180,179,180,180,179,180,179,180,179,180,179,179,179,179,179,180,179,180,179,179,179,179,180,180,180,180,179,179,180,180,179,180,179,180,180,179,180,179,180,180,180,180,179,180,179,180,180,179,180,179,180,179,180,179,180,179,180,179,180,0,0,0,0,0,0,181,181,181,181,181,181,181,181,181,181,181,181,181,184,185,146,181,0,0,0,0,0,0,186,189,190,191,188,187,186,189,190,191,188,187,186,189,187,186,188,187,186,189,188,187,186,189,186,189,188,188,187,186,189,187,190,191,186,189,191,188,187,186,189,188,187,186,189,190,191,188,187,186,189,188,187,186,189,186,190,191,188,187,186,189,190,191,188,187,186,189,189,187,189,190,191,189,187,187,190,188,187,186,189,186,189,188,187,186,189,190,191,188,187,186,189,190,191,188,187,186,189,190,191,188,187,186,189,191,190,190,191,188,187,186,189,0,0,0,0,0,196,59,195,196,59,195,59,196,59,195,59,195,59,195,193,193,59,59,59,59,59,196,195,193,196,59,196,59,59,59,59,59,59,59,196,59,195,59,195,59,59,59,61,59,59,59,59,59,196,59,195,196,59,195,196,61,196,195,193,196,193,59,195,195,59,59,193,59,59,196,59,195,59,196,59,195,196,59,195,196,59,195,193,59,196,59,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,205,207,204,206,200,201,202,212,213,201,203,205,207,210,213,200,201,202,203,204,205,206,207,208,210,212,213,217,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,202,204,206,210,208,208,210,200,201,202,203,204,205,206,207,208,210,212,213,204,205,206,207,200,202,204,206,208,212,218,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,200,201,202,203,204,205,206,207,208,210,212,213,0,213,212,0,0,203,205,207,200,201,202,203,204,205,206,207,208,210,212,213,0,0,0,0,0,72,219,220,221,72,219,220,221,72,219,220,221,72,219,220,221,72,72,219,220,221,72,72,219,72,220,221,72,221,72,72,72,72,221,221,221,221,72,72,221,221,72,72,219,220,221,72,72,219,220,221,72,72,72,72,221,72,72,72,221,221,72,219,220,221,72,219,220,221,72,72,72,72,72,219,220,72,72,72,72,220,220,72,219,221,72,221,72,72,72,72,219,220,221,72,221,72,219,220,221,72,219,220,221,72,219,220,221,219,72,219,220,221,0,0,0,0,223,224,224,223,224,225,226,223,224,225,226,225,223,224,225,223,224,225,223,224,225,223,224,225,226,225,226,223,225,223,223,223,223,224,224,225,225,226,226,223,224,225,226,223,224,225,224,223,224,225,226,223,224,225,226,224,226,224,223,224,225,226,225,225,223,223,223,224,225,223,224,225,226,223,224,225,226,223,224,225,226,223,224,225,226,223,224,225,226,227,227,227,0,0,0,229,228,227,229,228,227,227,227,227,227,228,229,228,227,227,227,227,227,227,227,229,228,227,227,229,228,227,229,228,227,229,228,228,229,229,228,229,227,229,228,227,229,228,227,229,228,227,228,229,229,228,227,0,0,0,0,0,0,0,231,233,234,231,233,234,0,0,0,0,0,0,0,0,0,231,230,231,233,234,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,231,233,234,231,233,234,231,233,234,234,235,236,237,231,233,234,231,233,234,231,231,231,231,233,233,233,233,234,234,234,234,231,233,234,235,238,236,239,237,240,231,233,234,231,233,234,236,237,235,235,239,240,238,238,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,235,238,236,239,237,240,235,238,238,239,240,231,233,234,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,235,238,236,239,237,240,231,233,234,0,0,0,0,0,243,97,241,242,243,97,241,242,97,241,242,97,241,242,97,97,241,242,241,242,97,242,97,97,97,97,97,243,243,97,97,243,97,241,242,97,241,242,97,97,243,97,241,242,243,97,241,242,97,97,97,241,242,97,241,97,241,242,97,243,97,241,242,243,97,241,242,243,97,241,242,242,241,243,243,97,241,242],"f":"`````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}``{c{{j{f}}}l}`{{{b{f}}{b{dn}}}A`}{cc{}}{{{b{c}}}c{}}{ce{}{}}{c{{Ab{e}}}{}{}}```{{{b{f}}c}jAd}`{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}5````````````````````>>>>>>>>========{{{b{Ah}}}Ah}{{{b{Aj}}}Aj}{{{b{Al}}}Al}{{{b{An}}}An}{{{b{B`}}}B`}{{{b{Bb}}}Bb}{{{b{Bd}}}Bd}{{{b{Bf}}}Bf}{{{b{c}}{b{de}}}h{}{}}0000000{{{b{c}}}h{}}000000000000{{{b{Ah}}{b{Ah}}}Bh}{{{b{Aj}}{b{Aj}}}Bh}{{{b{Al}}{b{Al}}}Bh}{{{b{An}}{b{An}}}Bh}{{{b{B`}}{b{B`}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0000`{{}Bb}{{}Bd}{c{{j{Ah}}}l}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}B`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Alc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ajc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ahc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Bd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Anc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Bf}}}l}{{{b{Ah}}{b{Ah}}}Cd}{{{b{Aj}}{b{Aj}}}Cd}{{{b{Al}}{b{Al}}}Cd}{{{b{An}}{b{An}}}Cd}{{{b{B`}}{b{B`}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000000000000000{{{b{Ah}}{b{dn}}}A`}0{{{b{Aj}}{b{dn}}}A`}{{{b{Al}}{b{dn}}}A`}{{{b{An}}{b{dn}}}A`}{{{b{B`}}{b{dn}}}A`}{{{b{Bf}}{b{dn}}}A`}{cc{}}0000000{{{b{{Bl{Bj}}}}}{{j{AlCf}}}}{{{b{{Bl{Bj}}}}}{{j{B`Cf}}}}{{{b{Ch}}}Ah}{{{b{Ch}}}An}{{{b{Cj}}}B`}{{{b{c}}}c{}}0000000{{{b{Cl}}}{{j{Ahc}}}{}}{{{b{Cl}}}{{j{AjCf}}}}{{{b{Cl}}}{{j{AnCf}}}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0000{{{b{Ah}}Bj}Bj}{{{b{An}}Bj}Bj}{{{b{B`}}Bj}Bj}{{{b{Al}}}Cn}{{{b{B`}}}Cn}{{{b{Ah}}{b{dc}}}hDf}{{{b{Aj}}{b{dc}}}hDf}{{{b{Al}}{b{dc}}}hDf}{{{b{An}}{b{dc}}}hDf}{{{b{B`}}{b{dc}}}hDf}`{ce{}{}}0000000{c{{Ab{e}}}{}{}}0000000`{{}Bb}{{}Bd}``{{{b{Ah}}{b{Ah}}}{{Dh{Bh}}}}{{{b{Aj}}{b{Aj}}}{{Dh{Bh}}}}{{{b{Al}}{b{Al}}}{{Dh{Bh}}}}{{{b{An}}{b{An}}}{{Dh{Bh}}}}{{{b{B`}}{b{B`}}}{{Dh{Bh}}}}{{{b{Ah}}c}jAd}{{{b{Aj}}c}jAd}{{{b{Al}}c}jAd}{{{b{An}}c}jAd}{{{b{B`}}c}jAd}{{{b{Bb}}{b{Al}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{An}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{B`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{Aj}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bb}}{b{Ah}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Bf}}c}jAd}{{{b{c}}}e{}{}}0000000{Ah{{Dj{Bj}}}}{Aj{{Dj{Bj}}}}{Al{{Dj{Bj}}}}{An{{Dj{Bj}}}}{B`{{Dj{Bj}}}}{{{b{c}}}Dn{}}0000{c{{j{e}}}{}{}}000000000000000`{{{b{c}}}Af{}}0000000```{ce{}{}}0000000````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{E`E`}{{Dh{E`}}}}{{E`E`}{{Dh{Cn}}}}{{E`Cn}{{Dh{E`}}}}0{{{b{E`}}{b{E`}}}{{Dh{E`}}}}{{{b{E`}}Cn}{{Dh{E`}}}}4{{{b{E`}}}E`}{{{b{Eb}}}Eb}{{{b{Ed}}}Ed}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}000{{{b{E`}}{b{E`}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{{CnEf}E`}{{}E`}{{}Eb}{c{{j{E`}}}l}{{{b{Ed}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}E`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{E`}}{b{E`}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{Eh}}{b{dn}}}A`}{{{b{c}}{b{dn}}}{{j{hEj}}}{}}{{{b{E`}}{b{dn}}}A`}0{cc{}}000{El{{j{E`Cf}}}}{{CnEf}{{j{E`Cf}}}}{CnE`}{{{b{c}}}c{}}00{{{b{Cl}}}{{j{E`c}}}{}}{ce{}{}}000{c{{Ab{e}}}{}{}}000{{{b{E`}}}Cd}{{}Eb}{{{En{E`}}{En{E`}}}Ed}{{{b{E`}}{b{E`}}}{{Dh{Bh}}}}{{E`E`}E`}{{E`Cn}E`}1{{{b{E`}}c}jAd}{{{b{Eb}}{b{E`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{E`El}{{{b{E`}}}{{F`{CnEf}}}}{{{b{c}}}e{}{}}00{{{b{E`}}}Cn}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000``{{Eh{b{Cl}}}{{j{E`c}}}Fb}{ce{}{}}000{{}E`}```````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{b{Fd}}}Cn}`{{{b{Ff}}}Ff}{{{b{Fh}}}Fh}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{Fd}}Fj}Cd}```{{}Fl}{{{b{Fn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ffc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Ff}}}l}{{{Dh{{b{G`}}}}{b{Gb}}{b{Gd}}{b{c}}{b{{Bl{Bj}}}}Cn}{{Bn{{b{{Bl{Bj}}}}{Gf{Ffe}}g}}}{{Gh{Ff}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Fh}}}l}{c{{j{Gl}}}l}`{{{b{Gl}}{b{Gl}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{Ff}}{b{dn}}}A`}0{{{b{Fh}}{b{dn}}}A`}{{{b{Gl}}{b{dn}}}A`}{cc{}}00000{{{b{c}}}c{}}0{{{b{Fd}}}Cn}`````{ce{}{}}00000{c{{Ab{e}}}{}{}}00000```?{GnFn}{{Ffc{b{H`}}Cn}{{j{{Gf{Ffe}}Cf}}}{{G`{Ff}}}Gj}````{{{b{Fl}}{b{Ff}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Ff}}c}jAd}{{{b{Hb}}{b{Ch}}{b{{Bl{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Fh}}c}jAd}{{{b{Gl}}c}jAd}```{{{b{c}}}e{}{}}0{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}00000000000{{{b{c}}}Af{}}00000<<<<<<````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000`{{{b{Hd}}}Hd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{Hd}}{b{Ch}}{b{Hf}}}Hf}````{{}Hh}````{{{b{Hj}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Hdc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Hd}}}l}``````{{{b{Hd}}{b{dn}}}A`}0{{{b{Hl}}{b{dn}}}A`}{cc{}}000{{{b{c}}}c{}}{{{b{Hn}}}Cn}``{ce{}{}}000{c{{Ab{e}}}{}{}}000``9{{BjEfEf{Dh{Cn}}Cn}Hj}{I`Hl}````{{{b{Hh}}{b{Hd}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Hd}}c}jAd}```````{{{b{Hl}}}{{Dj{Bj}}}}{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000`::::````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{Ib}}}Ib}{{{b{Id}}}Id}{{{b{If}}}If}{{{b{Ih}}}Ih}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}00000{{{b{Ib}}{b{Ib}}}Bh}{{{b{Id}}{b{Id}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0{{}If}{{}Ih}{c{{j{Ib}}}l}{c{{j{Id}}}l}{{{b{Ih}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Idc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Ih}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ibc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Ib}}{b{Ib}}}Cd}{{{b{Id}}{b{Id}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{Ib}}{b{dn}}}A`}0{{{b{Id}}{b{dn}}}A`}{cc{}}000{{{b{c}}}c{}}000{{{b{Cl}}}{{j{Ibc}}}{}}{{{b{Cl}}}{{j{Idc}}}{}}{{{b{Ib}}}Cd}{{{b{Id}}}Cd}{{{b{Ib}}}{{b{Hf}}}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0{{{b{Id}}}{{b{Hf}}}}{{{b{Ib}}}Cn}{{{b{Id}}}Cn}{{{b{Ib}}{b{dc}}}hDf}{{{b{Id}}{b{dc}}}hDf}`{ce{}{}}000{c{{Ab{e}}}{}{}}000{HfIb}{{}If}{{}Ih}{{{b{Ib}}{b{Ib}}}{{Dh{Bh}}}}{{{b{Id}}{b{Id}}}{{Dh{Bh}}}}{{{b{Ib}}c}jAd}{{{b{Id}}c}jAd}{{{b{If}}{b{Id}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{If}}{b{Ib}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}0{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000``>>>>````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{Ij}}}Ij}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{}Ij}{{}Il}{{{b{In}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Ijc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Ij}}}l}{{{b{Ij}}{b{Ij}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{Ij}}{b{dn}}}A`}{cc{}}00{{{b{c}}}c{}}{ce{}{}}00{c{{Ab{e}}}{}{}}00{CnIn}:{{{b{Ij}}c}jAd}{{{b{Il}}{b{Ij}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00````777````````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{J`}}}J`}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{}J`}{{}Jb}{{{b{Jd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}J`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{J`}}}l}```{{{b{J`}}{b{dn}}}A`}{cc{}}00{{{b{c}}}c{}}{ce{}{}}00{c{{Ab{e}}}{}{}}00`{EfJd}8{{{b{J`}}c}jAd}{{{b{Jb}}{b{J`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00777`````````````{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{{b{Jf}}}Jf}{{{b{Jh}}}Jh}{{{b{Jj}}}Jj}{{{b{Jl}}}Jl}{{{b{Jn}}}Jn}{{{b{c}}{b{de}}}h{}{}}0000{{{b{c}}}h{}}0000`{c{{j{Jf}}}l}{c{{j{Jh}}}l}{c{{j{Jj}}}l}{c{{j{Jl}}}l}{c{{j{Jn}}}l}{{{b{dJj}}{b{Jj}}}h}{{{b{Jf}}{b{dn}}}A`}{{{b{Jh}}{b{dn}}}A`}{{{b{Jj}}{b{dn}}}A`}{{{b{Jl}}{b{dn}}}A`}{{{b{Jn}}{b{dn}}}A`}0{cc{}}0000{{{b{c}}}c{}}0000``{ce{}{}}0000{c{{Ab{e}}}{}{}}0000````{{{b{Jf}}c}jAd}{{{b{Jh}}c}jAd}{{{b{Jj}}c}jAd}{{{b{Jl}}c}jAd}{{{b{Jn}}c}jAd}``{{{b{c}}}e{}{}}0000{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}000000000{{{b{c}}}Af{}}0000:::::``{{{b{Cl}}{b{Cl}}}cK`}``````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Kb}}}Kb}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{{}Kb}`{c{{j{Kb}}}l}`{{{b{Kb}}{b{dn}}}A`}0{cc{}}{{{b{c}}}c{}}`{ce{}{}}{c{{Ab{e}}}{}{}}````{{{b{Kb}}c}jAd}``{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}6```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}00000{{{b{dc}}}{{b{de}}}{}{}}00000{{{b{Kd}}}{{b{Kf}}}}{{{b{Kh}}}{{b{{Dh{Kf}}}}}}{{{b{Kj}}}{{b{H`}}}}{{{b{Kl}}}{{b{{Kn{Cn}}}}}}{{{b{L`}}}{{b{Lb}}}}{{{b{Ld}}}{{b{Cn}}}}{cc{}}00000{{}Cn}{ce{}{}}00000{c{{Ab{e}}}{}{}}00000============<<<<<<111111{{{b{Cl}}{b{Cl}}}cK`}```<<;;{{}Lf}{{{b{Lh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Lj{{Dj{Bj}}{Dj{Bj}}}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}66{{{b{{Bl{Bj}}}}}{{F`{{En{{Dj{Bj}}}}{En{{Dj{Bj}}}}}}}}5544``{{CnBjCn}Lh}3{{{b{Lf}}{b{{Lj{{Dj{Bj}}{Dj{Bj}}}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{c{{j{e}}}{}{}}000{{{b{c}}}Af{}}0```99````````{{{b{Ll}}}{{b{{Bl{Bj}}}}}}{{{b{Ln}}}{{b{{Bl{Bj}}}}}}{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000``{{{b{Ll}}}Ll}{{{b{Ln}}}Ln}{{{b{M`}}}M`}{{{b{Mb}}}Mb}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}000{{{b{Ll}}{b{Ll}}}Bh}{{{b{Ln}}{b{Ln}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0{{}M`}{{}Mb}{c{{j{Ll}}}l}{{{b{Mb}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Llc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Ll}}{b{Ll}}}Cd}{{{b{Ln}}{b{Ln}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{Ll}}{b{dn}}}A`}0{{{b{Ln}}{b{dn}}}A`}{cc{}}000{{{b{{Bl{Bj}}}}}{{j{LlCf}}}}{{{b{{Bl{Bj}}}}}{{j{LnCf}}}}{{{b{c}}}c{}}000{{{b{Cl}}}{{j{Llc}}}{}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0{{{b{Ll}}}{{j{I`Cf}}}}{{{b{Ll}}{b{dc}}}hDf}{{{b{Ln}}{b{dc}}}hDf}{ce{}{}}000{c{{Ab{e}}}{}{}}000{{CnI`Cn{b{{Bl{Bj}}}}}{{j{LlCf}}}}{{}M`}{{}Mb}{{{b{Ll}}{b{Ll}}}{{Dh{Bh}}}}{{{b{Ln}}{b{Ln}}}{{Dh{Bh}}}}{{{b{Ll}}c}jAd}{{{b{M`}}{b{Ll}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000<<<<``````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}00000000000000000{{{b{dc}}}{{b{de}}}{}{}}00000000000000000{{{b{Md}}}Md}{{{b{Mf}}}Mf}{{{b{Mh}}}Mh}{{{b{Mj}}}Mj}{{{b{Ml}}}Ml}{{{b{Mn}}}Mn}{{{b{N`}}}N`}{{{b{Nb}}}Nb}{{{b{Nd}}}Nd}{{{b{c}}{b{de}}}h{}{}}00000000{{{b{c}}}h{}}000000000{{{b{Mj}}{b{Mj}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{{{b{Ch}}{b{I`}}{b{Ef}}{b{Hf}}}Hf}{{{b{Ch}}{b{I`}}{b{Hf}}}Hf}{{}Nf}{{}Nh}{{}Nj}{{}Ml}{{{b{Nl}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mdc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Nn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mfc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{O`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mhc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{Md}}}l}{c{{j{Mf}}}l}{c{{j{Mh}}}l}{c{{j{Mj}}}l}{{{b{Mn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Mjc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}``{{{b{Md}}{b{Md}}}Cd}{{{b{Mf}}{b{Mf}}}Cd}{{{b{Mh}}{b{Mh}}}Cd}{{{b{Mj}}{b{Mj}}}Cd}{{{b{Ob}}{b{Ob}}}Cd}{{{b{N`}}{b{N`}}}Cd}{{{b{Nb}}{b{Nb}}}Cd}{{{b{Nd}}{b{Nd}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{Md}}{b{dn}}}A`}{{{b{Mf}}{b{dn}}}A`}{{{b{Mh}}{b{dn}}}A`}{{{b{Od}}{b{dn}}}A`}{{{b{Of}}{b{dn}}}A`}0{{{b{Mj}}{b{dn}}}A`}{{{b{Ob}}{b{dn}}}A`}{{{b{N`}}{b{dn}}}A`}{{{b{Nb}}{b{dn}}}A`}{{{b{Nd}}{b{dn}}}A`}{cc{}}000000000{{{b{Mh}}}Od}{DlOf}{OhOf}3{{{b{Mh}}}Mj}{{{b{Nd}}}Mj}5{{{b{Mj}}}Ob}66666{{{b{Hn}}}Nd}7{{{b{Oj}}}Nd}{{{b{c}}}c{}}00000000{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{Mj}}}Hf}{{{b{Md}}}{{b{Hf}}}}{{{b{Mf}}}{{b{Hf}}}}10{{{b{Md}}}{{b{Ef}}}}{{{b{Mh}}}{{Dh{{b{Ef}}}}}}{{{b{Mj}}}{{Dh{{b{Ef}}}}}}{{{b{Md}}}{{b{Ch}}}}{{{b{Mf}}}{{b{Ch}}}}{{{b{Mh}}}{{b{Ch}}}}{{{b{Nd}}}{{b{Ch}}}}{{{b{Md}}}{{b{Hb}}}}{{{b{Mf}}}{{b{Hb}}}}10{{{b{Md}}}{{b{I`}}}}{{{b{Mf}}}{{b{I`}}}}{{{b{Mh}}}{{b{I`}}}}{{{b{Mj}}}{{b{I`}}}}{{{b{Nd}}}{{b{I`}}}}{{{b{Mj}}{b{dc}}}hDf}````````````````{ce{}{}}00000000000000000{c{{Ab{e}}}{}{}}00000000000000000{{{b{Mh}}{b{Hn}}}{{j{CdOf}}}}{{{b{Mh}}{b{Oj}}}{{j{CdOf}}}}{{{b{Cn}}{b{Cn}}{b{Cn}}}Cd}{{{b{Mh}}}Cd}00{{}Nf}{{BjEf}Nl}{{}Nh}{BjNn}{{}Nj}{{BjEf}O`}{{}Ml}{{BjEf}Mn}{{{b{Mj}}{b{Mj}}}{{Dh{Bh}}}}``````{{{b{Nf}}{b{Md}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Nh}}{b{Mf}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Nj}}{b{Mh}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{Md}}c}jAd}{{{b{Mf}}c}jAd}{{{b{Mh}}c}jAd}{{{b{Mj}}c}jAd}{{{b{Ml}}{b{Mj}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}``````````````````{{{b{Of}}}{{Dh{{b{Ol}}}}}}{{{b{c}}}e{}{}}00000000{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{F`{{b{Nd}}{b{Nd}}}}}{{j{Mhc}}}{}}{{{F`{{b{Oj}}{b{Oj}}}}}{{j{Mhc}}}{}}{{{F`{{b{Hn}}{b{Hn}}}}}{{j{Mhc}}}{}}33{Ef{{j{Od{On{Od}}}}}}44{Ef{{j{Ob{On{Ob}}}}}}555555{c{{j{Od{On{Od}}}}}{}}{c{{j{Ob{On{Ob}}}}}{}}777777777777777777{{{b{c}}}Af{}}00000000000000000````{ce{}{}}00000000000000000`````````````````````{{{b{c}}}{{b{e}}}{}{}}00000000{{{b{dc}}}{{b{de}}}{}{}}00000000{{{b{A@`}}}A@`}{{{b{A@b}}}A@b}{{{b{A@d}}}A@d}{{{b{A@f}}}A@f}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}00000{{{b{A@`}}{b{A@`}}}Bh}{{{b{A@b}}{b{A@b}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}0{{{b{A@d}}{b{Ch}}{b{Hf}}}Hf}```{{}A@h}{{}A@f}{{{b{A@j}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@bc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{A@j}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{A@l}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@dc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{A@n}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}A@dc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{A@`}}}l}{c{{j{A@b}}}l}{c{{j{A@d}}}l}``{{{b{A@`}}{b{A@`}}}Cd}{{{b{A@b}}{b{A@b}}}Cd}{{{b{A@d}}{b{A@d}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}00000000000{{{b{A@`}}{b{dn}}}A`}0{{{b{A@b}}{b{dn}}}A`}{{{b{A@d}}{b{dn}}}A`}0{{{b{AA`}}{b{dn}}}A`}{cc{}}00000000{{{b{c}}}c{}}000{{{b{Cl}}}{{j{A@`c}}}{}}{{{b{Cl}}}{{j{A@bc}}}{}}{{{b{A@`}}}{{b{Hf}}}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{A@b}}}{{b{Hf}}}}1{{{b{A@`}}{b{dc}}}hDf}{{{b{A@b}}{b{dc}}}hDf}``````{ce{}{}}00000000{c{{Ab{e}}}{}{}}00000000{{}A@j}{{BjEf}A@l}{{}A@h}{{EfI`Ib}A@n}{HfA@`}{{}A@f}{{I`Ef}AA`}{{{b{A@`}}{b{A@`}}}{{Dh{Bh}}}}{{{b{A@b}}{b{A@b}}}{{Dh{Bh}}}}{{{b{A@h}}{b{A@d}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{A@`}}c}jAd}{{{b{A@b}}c}jAd}{{{b{A@d}}c}jAd}{{{b{A@f}}{b{A@d}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}```````{{{b{AA`}}}{{Dj{Bj}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}00{c{{j{e}}}{}{}}00000000000000000{{{b{c}}}Af{}}00000000```{ce{}{}}00000000```````````````````````````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Cf}}}Cf}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{Cf}}{b{dn}}}A`}0{{{AAd{{AAb{{b{{Bl{Bj}}}}}}}}}Cf}{AAfCf}{cc{}}{OhCf}{{{b{Cl}}}Cf}{AAhCf}{DlCf}{{{b{c}}}c{}}>{c{{Ab{e}}}{}{}}{{{b{Cf}}}{{Dh{{b{Ol}}}}}}{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}{ce{}{}}`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{AAj}}}AAj}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{}AAj}{c{{j{AAj}}}l}``{{{b{AAj}}{b{dn}}}A`}{cc{}}{{{b{c}}}c{}}:{c{{Ab{e}}}{}{}}````{{{b{AAj}}c}jAd}`{{{b{c}}}e{}{}}??>=```````````````{{{b{dAAl}}{b{Ah}}{b{AAn}}}{{AB`{h}}}}{{{b{dABb}}{b{AAn}}}{{AB`{h}}}}```>>>>>>>>>========={{{b{dAAn}}{b{AAn}}}{{AB`{hCf}}}}{{{b{dAAl}}{b{AAl}}}{{AB`{h}}}}{{{b{ABb}}}ABb}{{{b{AAn}}}AAn}{{{b{AAl}}}AAl}{{{b{c}}{b{de}}}h{}{}}00{{{b{AAl}}{b{{ABd{Ah}}}}}AAl}{{{b{c}}}h{}}000{{}ABf}{{}ABh}{{}ABj}{{}ABb}{{}ABl}{{}AAn}{{}ABn}{{}AAl}{{{b{ABf}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ABbc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{ABh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AAnc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AC`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AAlc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{ABb}}}l}{c{{j{AAn}}}l}{c{{j{AAl}}}l}{{{b{ABb}}{b{dn}}}A`}{{{b{AAn}}{b{dn}}}A`}{{{b{AAl}}{b{dn}}}A`}{cc{}}00000000{{{b{c}}}c{}}00{{{b{AAl}}}{{ABd{Ah}}}}{ce{}{}}00000000{c{{Ab{e}}}{}{}}00000000{{{b{ABb}}}Cd}{{{b{AAn}}}Cd}````{{}ABf}{{}ABh}{{}ABj}{CnAC`}{E`ABb}{{}ABl}{{}ABn}{{{b{ABj}}{b{AAl}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{ABb}}c}jAd}{{{b{ABl}}{b{ABb}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{AAn}}c}jAd}{{{b{ABn}}{b{AAn}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{AAl}}c}jAd}{{{b{dAAl}}{b{{ABd{Ah}}}}AAl}h}{{{b{c}}}e{}{}}00{c{{j{e}}}{}{}}00000000000000000{{{b{c}}}Af{}}00000000{ce{}{}}00000000{ACb{{j{MjCf}}}}``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{ACd}}}ACd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0{{{b{ACd}}{b{ACd}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{c{{j{ACd}}}l}{{{b{ACd}}{b{ACd}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{ACd}}{b{dn}}}A`}0{cc{}}{{{b{c}}}c{}}{{{b{Cl}}}{{j{ACdc}}}{}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{ACd}}}Ch}{{{b{ACd}}{b{dc}}}hDf}{ce{}{}}{c{{Ab{e}}}{}{}}{ChACd}{{{b{ACd}}{b{ACd}}}{{Dh{Bh}}}}{{{b{ACd}}c}jAd}{{{b{c}}}e{}{}}{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0{{{b{c}}}Af{}}8``````````````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}0000000000000000000{{{b{dc}}}{{b{de}}}{}{}}0000000000000000000{{{b{ACf}}}ACf}{{{b{ACh}}}ACh}{{{b{ACj}}}ACj}{{{b{ACl}}}ACl}{{{b{ACn}}}ACn}{{{b{AD`}}}AD`}{{{b{ADb}}}ADb}{{{b{ADd}}}ADd}{{{b{ADf}}}ADf}{{{b{ADh}}}ADh}{{{b{c}}{b{de}}}h{}{}}000000000{{{b{c}}}h{}}0000000000000{{{b{ACf}}{b{ACf}}}Bh}{{{b{ACh}}{b{ACh}}}Bh}{{{b{ACj}}{b{ACj}}}Bh}{{{b{ACl}}{b{ACl}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}000{{{b{ADb}}{b{{Bl{Bj}}}}{b{Ch}}Cn}Hf}{{{b{{Bl{ACf}}}}{b{ACn}}}Hf}``````{{}ADj}{{}ADl}{{}ADn}{{}ACn}{{}AD`}{{}AE`}{{}ADf}{{}ADh}{{{b{AEb}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ADbc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ADdc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEf}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{ACf}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AEjc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AEl}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{Fj}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{ACf}}}l}{c{{j{ACh}}}l}{c{{j{ACj}}}l}{c{{j{ACl}}}l}{{{b{AD`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AChc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AD`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ACfc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{ADb}}}l}{c{{j{ADd}}}l}{{{b{AE`}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}ACjc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{ACf}}{b{ACf}}}Cd}{{{b{ACh}}{b{ACh}}}Cd}{{{b{ACj}}{b{ACj}}}Cd}{{{b{ACl}}{b{ACl}}}Cd}{{{b{AEn}}{b{AEn}}}Cd}{{{b{ADd}}{b{ADd}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000000000000000```{{{b{ACf}}{b{dn}}}A`}0{{{b{ACh}}{b{dn}}}A`}0{{{b{ACj}}{b{dn}}}A`}0{{{b{ACl}}{b{dn}}}A`}0{{{b{AEn}}{b{dn}}}A`}{{{b{ADb}}{b{dn}}}A`}0{{{b{ADd}}{b{dn}}}A`}0{cc{}}000000000{{{b{{AF`{Bj}}}}}ACj}1111111111{{{b{c}}}c{}}000000000{{{b{Cl}}}{{j{ACfc}}}{}}{{{b{Cl}}}{{j{AChc}}}{}}``{{{b{Fj}}CnCn}Cn}{{{b{ACf}}}{{b{Hf}}}}{{{b{c}}{b{e}}}Cn{D`Db}Dd}{{{b{ACh}}}{{b{Hf}}}}111{{{b{Fj}}}{{ABd{Ah}}}}{{{b{Fj}}E`}E`}{{{b{Fj}}}{{j{{ABd{Ah}}Cf}}}}{{{b{Fj}}Cn}{{AFb{Cn}}}}{{{b{ACf}}}Cn}{{{b{ACh}}}Cn}{{{b{ACf}}{b{dc}}}hDf}{{{b{ACh}}{b{dc}}}hDf}{{{b{ACj}}{b{dc}}}hDf}{{{b{ACl}}{b{dc}}}hDf}```{ce{}{}}0000000000000000000{ACfACj}{AChACj}{c{{Ab{e}}}{}{}}0000000000000000000````{{}ADj}{{CnAFdEfCnBjCn}AEb}{{}ADl}{{CnAFdEfCnBjCn}AEd}{{}ADn}{EfAEf}{EfAEh}{{EfCnAFdEfCnBjCnCn}AEl}{HfACf}{{}ACn}{{}AD`}{{}AE`}{{}ADf}{{}ADh}``````{{{b{ACf}}{b{ACf}}}{{Dh{Bh}}}}{{{b{ACh}}{b{ACh}}}{{Dh{Bh}}}}{{{b{ACj}}{b{ACj}}}{{Dh{Bh}}}}{{{b{ACl}}{b{ACl}}}{{Dh{Bh}}}}`{{{b{ACf}}}ACj}{{{b{ACh}}}ACj}`{{{b{ADj}}{b{ADb}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADl}}{b{ADd}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADn}}{b{{Dj{ACf}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ACf}}c}jAd}{{{b{ACh}}c}jAd}{{{b{ACj}}c}jAd}{{{b{ACl}}c}jAd}{{{b{ACn}}{b{ACh}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ACn}}{b{ACf}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADb}}c}jAd}{{{b{ADd}}c}jAd}{{{b{ADf}}{b{AEj}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{ADh}}{b{{Dj{Fj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}````{{{b{c}}}e{}{}}000000000{{{b{c}}}Dn{}}00000{c{{j{e}}}{}{}}00000000000000{Ef{{j{AEn{On{AEn}}}}}}11111{c{{j{AEn{On{AEn}}}}}{}}22222222222222222222{{{b{c}}}Af{}}0000000000000000000`````````{ce{}{}}0000000000000000000````````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0`{{{b{AFf}}}AFf}{{{b{AFh}}}AFh}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{AFf}}{b{AFf}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}``{c{{j{AFf}}}l}{c{{j{AFh}}}l}{{{b{AFf}}{b{AFf}}}Cd}{{{b{AFh}}{b{AFh}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{AFf}}{b{dn}}}A`}0{{{b{AFh}}{b{dn}}}A`}0{cc{}}0{{{b{c}}}c{}}0`{ce{}{}}0{c{{Ab{e}}}{}{}}0```{{{b{AFf}}{b{AFf}}}{{Dh{Bh}}}}`{{{b{AFf}}c}jAd}{{{b{AFh}}c}jAd}`{{{b{c}}}e{}{}}0{{{b{c}}}Dn{}}0{c{{j{e}}}{}{}}000{{{b{c}}}Af{}}088``````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{}{{AFj{c}}}AFl}{{{b{{AFj{c}}}}}CnAFl}>`<;`554<{AFnAG`}{AFn{{AGb{ce}}}AFl{}}{AFn{{ABd{c}}}AFl}{{{b{d{AFj{c}}}}{b{{Bl{Bj}}}}}hAFl}``````{{{b{dAGd}}{b{Ah}}{b{AGf}}}{{AB`{AGh}}}}{{{b{dAGj}}{b{AGd}}}{{AB`{h}}}}999999888888{{{b{dAGf}}{b{AGf}}}{{AB`{AGh}}}}{{{b{dAGd}}{b{AGd}}}{{AB`{{AGb{AhAGh}}}}}}{{{b{AGh}}}AGh}{{{b{AGf}}}AGf}{{{b{AGd}}}AGd}{{{b{AGj}}}AGj}{{{b{c}}{b{de}}}h{}{}}000{{{b{AGd}}{b{{ABd{Ah}}}}}AGd}{{{b{AGj}}{b{{ABd{Ah}}}}}AGj}{{{b{c}}}h{}}0000{{{b{dAGf}}}AGh}{{}AGl}{{}AGn}{{}AGd}{{}AGj}{{{b{AGn}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AGfc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{AGh}}}l}{c{{j{AGf}}}l}{c{{j{AGd}}}l}{c{{j{AGj}}}l}{{{b{AGh}}{b{dn}}}A`}{{{b{AGf}}{b{dn}}}A`}{{{b{AGd}}{b{dn}}}A`}{{{b{AGj}}{b{dn}}}A`}{cc{}}00000{{{b{c}}}c{}}000{{{b{AGd}}}{{ABd{Ah}}}}{ce{}{}}00000{c{{Ab{e}}}{}{}}00000{{{b{AGj}}}Cd}{{{b{AGf}}}Cd}{{{b{AGj}}}AFn}{{}AGl}{{}AGn}{{}AGj}``{{{b{AGl}}{b{AGf}}{b{d{Dj{Bj}}}}}{{AB`{hDl}}}}{{{b{AGh}}c}jAd}{{{b{AGf}}c}jAd}{{{b{AGd}}c}jAd}{{{b{AGj}}c}jAd}{{{b{dAGd}}{b{{ABd{Ah}}}}AGd}h}{{{b{dAGj}}{b{{ABd{Ah}}}}AGj}h}{{{b{c}}}e{}{}}000{c{{j{e}}}{}{}}00000000000{{{b{c}}}Af{}}00000``{ce{}{}}00000`````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{{Gf{FfIb}}}}}Cn}`{{{b{{Gf{ce}}}}}{{Gf{ce}}}{AH`AHbAHd}{GjAHd}}{{{b{AHf}}}AHf}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{AHb}}{b{{Bl{Bj}}}}{b{Ch}}Cn}Hf}{{{b{AHb}}{b{Ch}}{b{Hf}}}Hf}{{{b{{Gf{ce}}}}}Hf{AH`AHb}Gj}{{{b{{Gf{FfIb}}}}Fj}Cd}````{{}AHf}{{{Dh{{b{G`}}}}{b{Gb}}{b{Gd}}{b{c}}{b{{Bl{Bj}}}}Cn}{{Bn{{b{{Bl{Bj}}}}{Gf{AHbe}}g}}}{{Gh{AHb}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AHh{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Gf{cg}}i}}}{AH`AHb}{{Gh{c}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{{Gf{eg}}}}}l{AH`AHbK`}{GjK`}}{{{b{{AHh{ce}}}}{b{g}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Gf{ci}}k}}}{AH`AHb}{{Gh{c}}}{{G`{c}}}Gj{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{Gf{ce}}}}{b{{Gf{ce}}}}}Cd{AH`AHbAHj}{GjAHj}}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{{Gf{ce}}}}{b{dn}}}A`{AH`AHbAHl}{GjAHl}}{{{b{{Gf{ce}}}}{b{dn}}}A`{AH`AHb}Gj}{cc{}}00{{{b{c}}}c{}}0{{{b{{Gf{FfIb}}}}}Cn}{{{b{{Gf{HdIb}}}}}Cn}{{{b{{Gf{ADbACf}}}}CnCn}Cn}{{{b{Gj}}}{{b{Hf}}}}{{{b{{Gf{ADbACf}}}}}{{ABd{Ah}}}}{{{b{{Gf{ADbACf}}}}E`}E`}{{{b{{Gf{ADbACf}}}}}{{j{{ABd{Ah}}Cf}}}}{{{b{{Gf{ADbACf}}}}Cn}{{AFb{Cn}}}}`{ce{}{}}00{c{{Ab{e}}}{}{}}00`{HfGj}{{eCn}{{AHh{ce}}}{AH`AHb}{{Gh{c}}}}{{}AHf}{{AHbc{b{H`}}Cn}{{j{{Gf{AHbe}}Cf}}}{{G`{AHb}}}Gj}`{{{b{Hb}}{b{Ch}}{b{{Bl{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{{Gf{ce}}}}g}j{AH`AHbAHn}{GjAHn}Ad}{{{b{AHf}}{b{{Gf{ce}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{AH`AHb}Gj}{{{b{AHf}}{b{e}}{b{{Gf{cg}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{AH`AHb}{{G`{c}}}Gj}`{{{b{{Gf{ce}}}}}AFn{AH`AHb}Gj}{{{b{AHb}}{b{H`}}{b{Hf}}}{{j{HbCf}}}}{{{b{H`}}{b{Hf}}{b{c}}}{{j{HbCf}}}{AH`AHb}}``{{{b{c}}}e{}{}}0{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00{{{b{AHb}}{b{Ch}}{b{Hf}}{b{Hb}}}{{j{hCf}}}}{{{b{{Gf{ce}}}}}{{j{hCf}}}{AH`AHb}Gj}{ce{}{}}00``````````````{{{b{{Bl{Bj}}}}}{{j{{AF`{Bj}}Cf}}}}{{{b{c}}}{{b{e}}}{}{}}00000000000{{{b{dc}}}{{b{de}}}{}{}}00000000000{{{b{AI`}}}AI`}{{{b{AIb}}}AIb}{{{b{AId}}}AId}{{{b{AIf}}}AIf}{{{b{{AIh{ce}}}}}{{AIh{ce}}}AHd{{G`{c}}AHd}}{{{b{{AIj{ce}}}}}{{AIj{ce}}}AHd{{Gh{c}}AHdAHd}}{{{b{{AIl{ce}}}}}{{AIl{ce}}}AHd{{G`{c}}AHd}}{{{b{{AIn{ce}}}}}{{AIn{ce}}}AHd{{Gh{c}}AHdAHd}}{{{b{{AJ`{ec}}}}}{{AJ`{ec}}}{{AJb{AFn}}AHd}{{G`{c}}AHd}}{{{b{{AJd{ec}}}}}{{AJd{ec}}}{{AJb{AFn}}AJfAHd}{{Gh{c}}AHd}}{{{b{AJh}}}AJh}{{{b{AJj}}}AJj}{{{b{c}}{b{de}}}h{}{}}00000000000{{{b{c}}}h{}}00000000000````{{}AI`}{{}AIb}{{}AId}{{}AJh}{{}AJj}{{{b{AIb}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}AJlc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AIf}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{Bj}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AIj{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{Dj{c}}g}}}{}{{Gh{c}}AHd}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AIn{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{ABd{c}}g}}}{AFlAJnD`}{{Gh{c}}AHd}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AJd{ec}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Dng}}}{{AJb{AFn}}AJf}{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{AJj}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{AK`{Bj}}c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{cc{}}00000000000{{{b{{Bl{Bj}}}}AKb}{{j{{F`{AKbAFn}}Cf}}}}{{{b{c}}}c{}}00000000000{ce{}{}}00000000000{c{{Ab{e}}}{}{}}00000000000```````?>={{{En{Cn}}{En{Cn}}}AIf}{e{{AIh{ce}}}{}{{G`{c}}}}{{e{En{Cn}}{En{Cn}}}{{AIj{ce}}}{}{{Gh{c}}AHd}}{e{{AIl{ce}}}{}{{G`{c}}}}{{e{En{Cn}}{En{Cn}}}{{AIn{ce}}}{}{{Gh{c}}AHd}}{e{{AJ`{ec}}}{{AJb{AFn}}}{{G`{c}}}}{e{{AJd{ec}}}{{AJb{AFn}}AJf}{{Gh{c}}}}{{}AJh}{{}AJj}````{{{b{AI`}}{b{AJl}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{AId}}{b{{Dj{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{{AIh{ce}}}}{b{{Dj{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{}{{G`{c}}}}{{{b{{AIl{ce}}}}{b{{ABd{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AFl{{G`{c}}}}{{{b{{AJ`{ec}}}}{b{Dn}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{{AJb{AFn}}}{{G`{c}}}}{{{b{AJh}}{b{{AK`{Bj}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{AKdAKd}{{j{{Dj{Bj}}Cf}}}}{{{b{c}}}e{}{}}00000000000{c{{j{e}}}{}{}}00000000000000000000000{{{b{c}}}Af{}}00000000000{EfAFn}``{CnAFn}{{{b{{Bl{Bj}}}}}{{j{BjCf}}}}```{ce{}{}}00000000000`````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{I`}}}I`}{{{b{AKf}}}AKf}{{{b{AKh}}}AKh}{{{b{AKj}}}AKj}{{{b{c}}{b{de}}}h{}{}}000{{{b{c}}}h{}}0000{{{b{I`}}{b{I`}}}Bh}{{{b{c}}{b{e}}}Bh{}{}}{{}AKf}{c{{j{I`}}}l}{{{b{AKh}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}I`c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{AKj}}}l}{{{b{I`}}{b{I`}}}Cd}{{{b{AKj}}{b{AKj}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}0000000{{{b{I`}}{b{dn}}}A`}0{{{b{AKj}}{b{dn}}}A`}0{cc{}}{AKlI`}111{{{b{{AF`{Bj}}}}}I`}{{{b{c}}}c{}}000{{{b{Cl}}}{{j{I`c}}}{}}{{{b{I`}}Cn}Cn}{{{b{I`}}}Cd}{{{b{c}}{b{e}}}Cn{D`Db}Dd}0{{{b{I`}}Bj}{{j{I`Cf}}}}0{{{b{I`}}{b{dc}}}hDf}{{{b{AKj}}{b{dc}}}hDf}`{ce{}{}}000{c{{Ab{e}}}{}{}}000{{{b{I`}}Cn}Cd}{{{b{I`}}CnBj}Cd}{BjI`}{{}I`}{{CnBj}I`}{{}AKf}{{{F`{{En{Cn}}{En{Cn}}}}{F`{{En{Bj}}{En{Bj}}}}}AKh}{{CnCn}{{j{I`Cf}}}}{{CnCnBj}{{j{I`Cf}}}}{{{b{I`}}{b{I`}}}{{Dh{Bh}}}}```{{{b{I`}}c}jAd}{{{b{AKf}}{b{I`}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{AKj}}c}jAd}{{{b{I`}}CnBj}{{j{I`Cf}}}}`{{{b{I`}}{b{I`}}Bj}{{j{CnCf}}}}`{{{b{I`}}}{{AF`{Bj}}}}{{{b{c}}}e{}{}}000{{{b{c}}}Dn{}}0{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000`{ce{}{}}000```````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000`{{{b{AKn}}}AKn}{{{b{AL`}}}AL`}{{{b{ALb}}}ALb}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}00{c{{j{AKn}}}l}{c{{j{AL`}}}l}{c{{j{ALb}}}l}{c{{j{ALd}}}l}``````{{{b{AKn}}{b{dn}}}A`}0{{{b{AL`}}{b{dn}}}A`}0{{{b{ALb}}{b{dn}}}A`}0{{{b{ALd}}{b{dn}}}A`}0{cc{}}000{{{b{c}}}c{}}00`{ce{}{}}000{c{{Ab{e}}}{}{}}000```{{{b{AKn}}c}jAd}{{{b{AL`}}c}jAd}{{{b{ALb}}c}jAd}{{{b{ALd}}c}jAd}````{{{b{c}}}e{}{}}00{{{b{c}}}Dn{}}000{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}0009999``````{{{b{c}}}{{b{e}}}{}{}}00{{{b{dc}}}{{b{de}}}{}{}}00{{{b{{ALf{c}}}}}{{ALf{c}}}AHd}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}0``{{{b{{ALh{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{ALf{c}}g}}}AHd{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{ALf{c}}}}{b{{ALf{c}}}}}CdAHj}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{{ALf{c}}}}}Cd{}}{{{b{{ALf{c}}}}{b{dn}}}A`AHl}{cc{}}00{{{b{c}}}c{}}{ce{}{}}00{c{{Ab{e}}}{}{}}00{e{{ALj{ce}}}{}{{G`{c}}AHd}}{e{{ALh{ce}}}AHd{{Gh{c}}AHd}}````{{{b{{ALj{ce}}}}{b{{ALf{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AHl{{G`{c}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}00000{{{b{c}}}Af{}}00``777{{BjKfKfI`}{{j{KfCf}}}}{{BjKfKfKf}I`}{{BjKfKf}{{j{{Dh{I`}}Cf}}}}{{BjKfKfKf}{{j{{Dh{I`}}Cf}}}}{{I`I`Bj}{{j{CnCf}}}}{{BjKfKf{Dh{Kf}}{Dh{Kf}}}{{j{{F`{{Dh{I`}}{Dh{I`}}}}Cf}}}}`````````````````{{{b{dALl}}c}h{}}{{{b{d{ALn{ec}}}}{ALn{ec}}}h{AHdALl}{AM`{ALl{c}}}}{{{b{d{AMb{c}}}}{AMb{c}}}hAHd}{{{b{d{AMd{c}}}}{AMd{c}}}hAHd}{{{AMd{c}}{b{dc}}}hAHd}{{{b{c}}}{{b{e}}}{}{}}00000000{{{b{dc}}}{{b{de}}}{}{}}00000000{{{b{{ALn{ec}}}}}{{ALn{ec}}}{AHdALlAHd}{AHdAM`{ALl{c}}}}{{{b{{AMb{c}}}}}{{AMb{c}}}{AHdAHd}}{{{b{{AMd{c}}}}}{{AMd{c}}}{AHdAHd}}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}00{{}{{AMd{c}}}AHd}{{{b{{AMf{ecgi}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{ALn{ec}}k}}}{ALlAHd}{AM`{ALl{c}}}{{Gh{e}}}{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AMh{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{AMb{c}}g}}}AHd{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{{AMj{ce}}}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}{AMd{c}}g}}}AHd{{Gh{c}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{c{{j{{ALn{ge}}}}}l{K`ALlAHd}{K`AM`{ALl{e}}}}{c{{j{{AMb{e}}}}}l{K`AHd}}{c{{j{{AMd{e}}}}}l{K`AHd}}{{{b{{ALn{ec}}}}{b{{ALn{ec}}}}}Cd{AHjALlAHd}{AHjAM`{ALl{c}}}}{{{b{{AMb{c}}}}{b{{AMb{c}}}}}Cd{AHjAHd}}{{{b{{AMd{c}}}}{b{{AMd{c}}}}}Cd{AHjAHd}}{{{b{c}}{b{e}}}Cd{}{}}00000000000{{{b{{ALn{ec}}}}{b{dn}}}A`{AHlALlAHd}{AHlAM`{ALl{c}}}}{{{b{{AMb{c}}}}{b{dn}}}A`{AHlAHd}}{{{b{{AMd{c}}}}{b{dn}}}A`{AHlAHd}}{cc{}}00000000{{{b{c}}}c{}}00````````{ce{}{}}00000000{c{{Ab{e}}}{}{}}00000000{{gi}{{AMf{ecgi}}}{ALlAHd}{AM`{ALl{c}}}{{Gh{e}}}{{Gh{c}}}}{{gi}{{AMl{ecgi}}}{ALlAHd}{AM`{ALl{c}}}{{G`{e}}}{{G`{c}}}}{e{{AMh{ce}}}AHd{{Gh{c}}}}{e{{AMn{ce}}}AHd{{G`{c}}}}{e{{AMj{ce}}}AHd{{Gh{c}}}}{e{{AN`{ce}}}AHd{{G`{c}}}}````````{{{b{{AMl{ecgi}}}}{b{{ALn{ec}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}{ALlAHd}{AM`{ALl{c}}}{{G`{e}}}{{G`{c}}}}{{{b{{AMn{ce}}}}{b{{AMb{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AHd{{G`{c}}}}{{{b{{AN`{ce}}}}{b{{AMd{c}}}}{b{d{Dj{Bj}}}}}{{j{hDl}}}AHd{{G`{c}}}}{{{b{{ALn{ec}}}}g}j{AHnALlAHd}{AHnAM`{ALl{c}}}Ad}{{{b{{AMb{c}}}}e}j{AHnAHd}Ad}{{{b{{AMd{c}}}}e}j{AHnAHd}Ad}{{{b{c}}}e{}{}}00{c{{j{e}}}{}{}}00000000000000000{{{b{c}}}Af{}}00000000{ce{}{}}00000000`````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{Lb}}}Lb}{{{b{ANb}}}ANb}{{{b{ANd}}}ANd}{{{b{c}}{b{de}}}h{}{}}00{{{b{c}}}h{}}000{{}ANb}{{}ANd}{c{{j{Lb}}}l}{{{b{ANd}}{b{{Bl{Bj}}}}}{{Bn{{b{{Bl{Bj}}}}Lbc}}}{{C`{{b{{Bl{Bj}}}}}}{Cb{{b{{Bl{Bj}}}}}}}}{{{b{Lb}}{b{Lb}}}Cd}{{{b{c}}{b{e}}}Cd{}{}}000{{{b{ANf}}{b{dn}}}A`}{{{b{c}}{b{dn}}}{{j{hEj}}}{}}{{{b{Lb}}{b{dn}}}A`}0{cc{}}000{{{b{c}}}c{}}00{{{b{Cl}}}{{j{Lbc}}}{}}`{ce{}{}}000{c{{Ab{e}}}{}{}}0009``=<{{{b{Lb}}c}jAd}{{{b{ANb}}{b{Lb}}{b{d{Dj{Bj}}}}}{{j{hDl}}}}{{{b{c}}}e{}{}}00{{{b{c}}}Dn{}}{c{{j{e}}}{}{}}0000000{{{b{c}}}Af{}}000``{{ANf{b{Cl}}}{{j{Lbc}}}Fb}8888","D":"IA`","p":[[1,"reference"],[0,"mut"],[5,"ActiveBlock",31],[1,"unit"],[6,"Result",3752],[10,"Deserializer",3753],[5,"Formatter",3754],[8,"Result",3754],[5,"Request",3755],[10,"Serializer",3756],[5,"TypeId",3757],[6,"Address",58],[6,"SCAddress",58],[5,"SCAddressV0",58],[6,"UserAddress",58],[5,"UserAddressV0",58],[5,"AddressSerializer",58],[5,"AddressDeserializer",58],[5,"ExecutionAddressCycleInfo",58],[6,"Ordering",3758],[1,"u8"],[1,"slice"],[8,"IResult",3759],[10,"ParseError",3760],[10,"ContextError",3760],[1,"bool"],[6,"ModelsError",1948],[6,"PublicKey",3761],[5,"PublicKeyV0",3761],[1,"str"],[1,"u64"],[10,"Hash",3762],[10,"Sized",3763],[10,"BuildHasher",3762],[10,"Hasher",3762],[6,"Option",3764],[5,"Vec",3765],[6,"SerializeError",3766],[5,"String",3767],[5,"Amount",306],[5,"AmountSerializer",306],[5,"AmountDeserializer",306],[1,"u32"],[5,"AmountVisitor",306],[5,"Error",3754],[5,"Decimal",3768],[6,"Bound",3769],[1,"tuple"],[10,"Error",3753],[8,"SecureShareBlock",410],[5,"Block",410],[5,"FilledBlock",410],[8,"SecureShareOperation",2223],[5,"BlockSerializer",410],[5,"BlockDeserializer",410],[10,"Serializer",3766],[5,"SignatureDeserializer",3761],[5,"PublicKeyDeserializer",3761],[5,"SecureShare",2894],[10,"Deserializer",3766],[10,"Id",2894],[6,"BlockGraphStatus",410],[5,"BlockDeserializerArgs",410],[6,"KeyPair",3761],[6,"Signature",3761],[5,"BlockHeader",536],[5,"Hash",3770],[5,"BlockHeaderSerializer",536],[5,"BlockHeaderDeserializer",536],[5,"BlockHeaderDenunciationData",536],[8,"SecuredHeader",536],[5,"Slot",3223],[6,"BlockId",631],[5,"BlockIdV0",631],[5,"BlockIdSerializer",631],[5,"BlockIdDeserializer",631],[5,"Bytecode",746],[5,"BytecodeSerializer",746],[5,"BytecodeDeserializer",746],[5,"Clique",800],[5,"CliqueSerializer",800],[5,"CliqueDeserializer",800],[6,"OperationSearchResultBlockStatus",853],[6,"OperationSearchResultStatus",853],[5,"OperationSearchResult",853],[5,"StakersCycleProductionStats",853],[5,"PubkeySig",853],[10,"Deserialize",3753],[5,"CompactConfig",978],[5,"GENESIS_TIMESTAMP",1010],[5,"MassaTime",3771],[5,"END_TIMESTAMP",1010],[5,"GENESIS_KEY",1010],[5,"POS_MISS_RATE_DEACTIVATION_THRESHOLD",1010],[5,"Ratio",3772],[5,"VERSION",1010],[5,"Version",3669],[5,"CHAINID",1010],[5,"DatastoreSerializer",1211],[5,"DatastoreDeserializer",1211],[5,"BTreeMap",3773],[6,"DeferredCallId",1243],[5,"DeferredCallIdV0",1243],[5,"DeferredCallIdSerializer",1243],[5,"DeferredCallIdDeserializer",1243],[5,"EndorsementDenunciation",1348],[5,"BlockHeaderDenunciation",1348],[6,"Denunciation",1348],[6,"DenunciationIndex",1348],[5,"DenunciationIndexSerializer",1348],[5,"DenunciationIndexDeserializer",1348],[5,"EndorsementDenunciationPrecursor",1348],[5,"BlockHeaderDenunciationPrecursor",1348],[6,"DenunciationPrecursor",1348],[5,"EndorsementDenunciationSerializer",1348],[5,"BlockHeaderDenunciationSerializer",1348],[5,"DenunciationSerializer",1348],[5,"EndorsementDenunciationDeserializer",1348],[5,"BlockHeaderDenunciationDeserializer",1348],[5,"DenunciationDeserializer",1348],[6,"DenunciationIndexTypeId",1348],[6,"DenunciationTypeId",1348],[6,"DenunciationError",1348],[6,"MassaSignatureError",3774],[8,"SecureShareEndorsement",1745],[10,"Error",3775],[5,"TryFromPrimitiveError",3776],[6,"EndorsementId",1745],[5,"EndorsementIdV0",1745],[5,"Endorsement",1745],[5,"EndorsementSerializer",1745],[5,"EndorsementSerializerLW",1745],[5,"EndorsementIdDeserializer",1745],[5,"EndorsementDeserializer",1745],[5,"EndorsementDeserializerLW",1745],[5,"EndorsementDenunciationData",1745],[5,"Error",3760],[6,"Err",3759],[6,"MassaHashError",3777],[6,"TimeError",3778],[5,"EventFilter",2003],[5,"LedgerChanges",2029],[5,"LedgerChange",2029],[8,"ModelsResult",1948],[5,"LedgerData",2029],[8,"PreHashSet",2752],[5,"LedgerDataDeserializer",2029],[5,"LedgerChangeDeserializer",2029],[5,"LedgerChangesSerializer",2029],[5,"LedgerDataSerializer",2029],[5,"LedgerChangeSerializer",2029],[5,"LedgerChangesDeserializer",2029],[5,"DenunciationIndex",3779],[5,"NodeId",2188],[6,"OperationId",2223],[5,"OperationIdV0",2223],[6,"OperationPrefixId",2223],[5,"OperationPrefixIdV0",2223],[5,"OperationIdSerializer",2223],[5,"OperationIdDeserializer",2223],[5,"Operation",2223],[6,"OperationType",2223],[5,"OperationPrefixIdsSerializer",2223],[5,"OperationsSerializer",2223],[5,"OperationSerializer",2223],[5,"OperationTypeSerializer",2223],[5,"OperationIdsSerializer",2223],[5,"OperationPrefixIdDeserializer",2223],[5,"OperationDeserializer",2223],[5,"OperationTypeDeserializer",2223],[5,"OperationIdsDeserializer",2223],[5,"OperationPrefixIdsDeserializer",2223],[8,"OperationPrefixIds",2223],[5,"OperationsDeserializer",2223],[6,"OperationTypeId",2223],[1,"array"],[5,"RangeInclusive",3769],[1,"u16"],[5,"SCOutputEvent",2689],[5,"EventExecutionContext",2689],[5,"HashMapper",2752],[10,"PreHashed",2752],[1,"usize"],[10,"CapacityAllocator",2752],[8,"PreHashMap",2752],[5,"RollUpdates",2775],[5,"RollUpdate",2775],[5,"RollCompensation",2775],[5,"RollCounts",2775],[5,"RollUpdateSerializer",2775],[5,"RollUpdateDeserializer",2775],[10,"Display",3754],[10,"SecureShareContent",2894],[10,"Clone",3780],[5,"SecureShareSerializer",2894],[5,"SecureShareDeserializer",2894],[10,"PartialEq",3758],[10,"Debug",3754],[10,"Serialize",3756],[5,"IpAddrSerializer",2986],[5,"IpAddrDeserializer",2986],[5,"VecU8Serializer",2986],[5,"VecU8Deserializer",2986],[5,"VecSerializer",2986],[5,"VecDeserializer",2986],[5,"PreHashSetSerializer",2986],[5,"PreHashSetDeserializer",2986],[5,"StringSerializer",2986],[10,"TryFrom",3781],[5,"StringDeserializer",2986],[10,"ToUsize",3782],[5,"BitVecSerializer",2986],[5,"BitVecDeserializer",2986],[6,"IpAddr",3783],[10,"Eq",3758],[5,"BitVec",3784],[10,"DeserializeMinBEInt",2986],[10,"SerializeMinBEInt",2986],[5,"SlotSerializer",3223],[5,"SlotDeserializer",3223],[5,"IndexedSlot",3223],[5,"Slot",3779],[5,"ExecutionStats",3341],[5,"NetworkStats",3341],[5,"ConsensusStats",3341],[5,"PoolStats",3341],[6,"StreamingStep",3434],[5,"StreamingStepDeserializer",3434],[5,"StreamingStepSerializer",3434],[10,"Applicable",3498],[6,"SetUpdateOrDelete",3498],[10,"Default",3785],[6,"SetOrDelete",3498],[6,"SetOrKeep",3498],[5,"SetUpdateOrDeleteDeserializer",3498],[5,"SetOrDeleteDeserializer",3498],[5,"SetOrKeepDeserializer",3498],[5,"SetUpdateOrDeleteSerializer",3498],[5,"SetOrDeleteSerializer",3498],[5,"SetOrKeepSerializer",3498],[5,"VersionSerializer",3669],[5,"VersionDeserializer",3669],[5,"VersionVisitor",3669],[15,"Endorsement",1742],[15,"BlockHeader",1742],[15,"Transaction",2676],[15,"CallSC",2676],[15,"ExecuteSC",2676],[15,"RollBuy",2676],[15,"RollSell",2676]],"r":[[963,978],[965,1210]],"b":[[137,"impl-Deserializer%3CUserAddressV0%3E-for-AddressDeserializer"],[138,"impl-Deserializer%3CSCAddressV0%3E-for-AddressDeserializer"],[139,"impl-Deserializer%3CSCAddress%3E-for-AddressDeserializer"],[140,"impl-Deserializer%3CAddress%3E-for-AddressDeserializer"],[141,"impl-Deserializer%3CUserAddress%3E-for-AddressDeserializer"],[168,"impl-Display-for-Address"],[169,"impl-Debug-for-Address"],[246,"impl-Serializer%3CSCAddressV0%3E-for-AddressSerializer"],[247,"impl-Serializer%3CUserAddress%3E-for-AddressSerializer"],[248,"impl-Serializer%3CUserAddressV0%3E-for-AddressSerializer"],[249,"impl-Serializer%3CSCAddress%3E-for-AddressSerializer"],[250,"impl-Serializer%3CAddress%3E-for-AddressSerializer"],[353,"impl-Debug-for-Amount"],[354,"impl-Display-for-Amount"],[451,"impl-Deserialize%3C\'de%3E-for-Block"],[452,"impl-SecureShareContent-for-Block"],[461,"impl-Debug-for-Block"],[462,"impl-Display-for-Block"],[502,"impl-Serialize-for-Block"],[503,"impl-SecureShareContent-for-Block"],[574,"impl-Debug-for-BlockHeader"],[575,"impl-Display-for-BlockHeader"],[669,"impl-Deserializer%3CBlockIdV0%3E-for-BlockIdDeserializer"],[670,"impl-Deserializer%3CBlockId%3E-for-BlockIdDeserializer"],[681,"impl-Display-for-BlockId"],[682,"impl-Debug-for-BlockId"],[720,"impl-Serializer%3CBlockIdV0%3E-for-BlockIdSerializer"],[721,"impl-Serializer%3CBlockId%3E-for-BlockIdSerializer"],[902,"impl-Display-for-PubkeySig"],[903,"impl-Debug-for-PubkeySig"],[990,"impl-Display-for-CompactConfig"],[991,"impl-Debug-for-CompactConfig"],[1293,"impl-Display-for-DeferredCallId"],[1294,"impl-Debug-for-DeferredCallId"],[1484,"impl-Display-for-DenunciationError"],[1485,"impl-Debug-for-DenunciationError"],[1502,"impl-From%3CSerializeError%3E-for-DenunciationError"],[1503,"impl-From%3CMassaSignatureError%3E-for-DenunciationError"],[1505,"impl-From%3C%26Denunciation%3E-for-DenunciationIndex"],[1506,"impl-From%3C%26DenunciationPrecursor%3E-for-DenunciationIndex"],[1514,"impl-From%3C%26SecureShare%3CBlockHeader,+BlockId%3E%3E-for-DenunciationPrecursor"],[1516,"impl-From%3C%26SecureShare%3CEndorsement,+EndorsementId%3E%3E-for-DenunciationPrecursor"],[1667,"impl-TryFrom%3C(%26DenunciationPrecursor,+%26DenunciationPrecursor)%3E-for-Denunciation"],[1668,"impl-TryFrom%3C(%26SecureShare%3CEndorsement,+EndorsementId%3E,+%26SecureShare%3CEndorsement,+EndorsementId%3E)%3E-for-Denunciation"],[1669,"impl-TryFrom%3C(%26SecureShare%3CBlockHeader,+BlockId%3E,+%26SecureShare%3CBlockHeader,+BlockId%3E)%3E-for-Denunciation"],[1805,"impl-Deserializer%3CEndorsementIdV0%3E-for-EndorsementIdDeserializer"],[1806,"impl-Deserializer%3CEndorsementId%3E-for-EndorsementIdDeserializer"],[1829,"impl-Display-for-EndorsementId"],[1830,"impl-Debug-for-EndorsementId"],[1832,"impl-Debug-for-Endorsement"],[1833,"impl-Display-for-Endorsement"],[1984,"impl-Debug-for-ModelsError"],[1985,"impl-Display-for-ModelsError"],[1986,"impl-From%3CErr%3CError%3C%26%5Bu8%5D%3E%3E%3E-for-ModelsError"],[1987,"impl-From%3CMassaHashError%3E-for-ModelsError"],[1989,"impl-From%3CMassaSignatureError%3E-for-ModelsError"],[1990,"impl-From%3C%26str%3E-for-ModelsError"],[1991,"impl-From%3CTimeError%3E-for-ModelsError"],[1992,"impl-From%3CSerializeError%3E-for-ModelsError"],[2204,"impl-Display-for-NodeId"],[2205,"impl-Debug-for-NodeId"],[2376,"impl-Deserializer%3COperationIdV0%3E-for-OperationIdDeserializer"],[2377,"impl-Deserializer%3COperationId%3E-for-OperationIdDeserializer"],[2410,"impl-Display-for-OperationId"],[2411,"impl-Debug-for-OperationId"],[2412,"impl-Display-for-OperationIdV0"],[2413,"impl-Debug-for-OperationIdV0"],[2414,"impl-Debug-for-OperationPrefixId"],[2415,"impl-Display-for-OperationPrefixId"],[2416,"impl-Display-for-OperationPrefixIdV0"],[2417,"impl-Debug-for-OperationPrefixIdV0"],[2419,"impl-Debug-for-Operation"],[2420,"impl-Display-for-Operation"],[2421,"impl-Debug-for-OperationType"],[2422,"impl-Display-for-OperationType"],[2559,"impl-Serializer%3COperationIdV0%3E-for-OperationIdSerializer"],[2560,"impl-Serializer%3COperationId%3E-for-OperationIdSerializer"],[2719,"impl-Debug-for-SCOutputEvent"],[2720,"impl-Display-for-SCOutputEvent"],[2721,"impl-Display-for-EventExecutionContext"],[2722,"impl-Debug-for-EventExecutionContext"],[2931,"impl-Debug-for-SecureShare%3CT,+ID%3E"],[2932,"impl-Display-for-SecureShare%3CT,+ID%3E"],[2938,"impl-SecureShare%3CBlock,+BlockId%3E"],[2939,"impl-SecureShare%3CBlockHeader,+BlockId%3E"],[3265,"impl-Display-for-Slot"],[3266,"impl-Debug-for-Slot"],[3267,"impl-Debug-for-IndexedSlot"],[3268,"impl-Display-for-IndexedSlot"],[3376,"impl-Debug-for-ExecutionStats"],[3377,"impl-Display-for-ExecutionStats"],[3378,"impl-Debug-for-NetworkStats"],[3379,"impl-Display-for-NetworkStats"],[3380,"impl-Debug-for-ConsensusStats"],[3381,"impl-Display-for-ConsensusStats"],[3382,"impl-Debug-for-PoolStats"],[3383,"impl-Display-for-PoolStats"],[3703,"impl-Debug-for-Version"],[3704,"impl-Display-for-Version"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACAKCAEiAAEAJQACACoAAAAsAAAALgAAADAAAAA0AAAANgAFAEAAAABCAAAARAAEAEoAAABMAAEATwA2AIcAKAC9AA8A0gAFAOAABwDtABcACgEoADgBAAA7AQcASgELAFcBAgBbAQgAawEDAHMBAwB6AQAAfgEAAIIBAgCGARMAqgELALgBBQDCAQAAxAEDAMkBCADYAQEA3QEBAOYBBQDxAQIA9wEDAP4BGgAfAg0AMgIDADgCBQA/AgIARgIAAEgCAABOAgUAWAIBAFwCAABgAgMAZQITAHoCAAB+Ai4AsQIDALYCAAC5AgMAvwICAMYCBADNAh0A7wISAAUDAAAJAwIADgMSACQDAQAnAwwANQMAADcDAgA9AwAAQQMCAEcDAABJAwwAYwMYAH0DBACDAwUAjgMEAJoDBACjAwQAqgMZAMcDAADVAwYA3QMAAN8DAQDiAwAA5QMAAOoDAADtAwUAeAQXAJ0EHQC/BAQAygQDANEEDQDhBAIA5gQqABcFBgAfBQEAJQUDACwFGgBIBQAAVAUAAFcFAgBbBQAAYQVHAKsFKADeBQIA4gUBAOUFAADrBQAA7QUKAPkFBAAABgEABAYFAA0GAAAQBgkAGwYCADAGEQBQBgQAVwYHAGEGBwBrBmMA0gYBANoGAQDdBgEA4gYlAAwHAwASBwMAFwcUADUHAwA6BwcARAcCAFAHCQBdBwAAYAcBAGMHAgBpBwAAawcCAG8HLQC8BwgAxgcEAMwHBwDVBwYA3gcAAOAHAADiBwAA5wcAAOkHBAD3BwUAAggRABYIBQAdCAsALAgFADsIAgBICAgAUwgDAF4IAQBhCAAAYwgAAGUIJgCNCAAAjwgPAKAIAACiCAAApAgAAKYIAACoCAgAsggAALQIAAC5CAAAvQgBAMIIAADFCAEAzQgAANEIAADTCAAA1ggAANgIWAA1CQoARQkHAE4JGQBpCQAAawkMAI0JCQCYCQIAnAkFAKcJBQCuCQAAxQkXAOUJAADsCQkA+AkAAPwJCAAICmwAhQoDAIoKBwCUCg8ApgoBAKsKAQCwCgAAsgoBALUKCwDHCgIAzAoAAM4KBQDgCgsA7goHAPgKBAD+CgMAAwsHABELAwAcCwUAKwsDADELHQBUCwUAWwsGAGkLAQBsCwEAbwsGAHkLAQCHCwMAjwsAAJELAQCZCwwAqAsCALoLSgASDAsAKgwSAEkMCQBUDC8AhQwBAIkMDgCdDCgAxwwAAMwMBADTDAEA1wwBAN4MAwDrDAAA7QwEAPcMFgAVDQcAHg0MADENBwA9DQIARQ0DAEwNAwBUDRYAcQ0RAIQNAACIDQAAjA0CAJENEwCzDQEAtg0BALkNAQC9DQIAwQ0zAP4NCgASDkQAWg4fAH4OAwCHDgMAjA4BAJAOGAA="}],\ +["massa_module_cache",{"t":"CCCCCQQCFNNONNNNNOOONNNNOONONNNNNNNFINNONNNNNNONNNNNNNONNNNNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSSSSFSSSSNNONNNNONNNNNNNOOONNNNNONNNNNNNFINNONNNNNNNNNNNNNNNNNNNNNNPPPPPPPGGFGFPPNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNN","n":["config","controller","error","hd_cache","lru_cache","metadata_key","module_key","types","ModuleCacheConfig","borrow","borrow_mut","condom_limits","deref","deref_mut","deserialize","drop","from","gas_costs","hd_cache_path","hd_cache_size","init","into","into_request","layout_raw","lru_cache_size","max_module_length","pointer_metadata","snip_amount","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ModuleCache","PreHashLruMap","borrow","borrow_mut","cfg","compile_cached","deref","deref_mut","deserialize","drop","from","hd_cache","init","into","into_request","layout_raw","load_module","load_module_info","load_tmp_module","lru_cache","new","pointer_metadata","save_module","set_init_cost","set_invalid","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","CacheError","LoadError","VMError","__clone_box","as_error","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","fmt","from","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","to_string","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","CRUD_ERROR","DATA_DESER_ERROR","DATA_IDENT","DATA_SER_ERROR","HDCache","MODULE_IDENT","MOD_DESER_ERROR","MOD_SER_ERROR","OPEN_ERROR","borrow","borrow_mut","db","deref","deref_mut","deserialize","drop","entry_count","from","get","init","insert","into","into_request","layout_raw","max_entry_count","meta_deser","meta_ser","new","pointer_metadata","set_init_cost","set_invalid","snip","snip_amount","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","LRUCache","PreHashLruMap","borrow","borrow_mut","cache","deref","deref_mut","deserialize","drop","from","get","init","insert","into","into_request","layout_raw","new","pointer_metadata","set_init_cost","set_invalid","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Delta","Delta","Invalid","Invalid","Invalid","Module","ModuleAndDelta","ModuleInfo","ModuleMetadata","ModuleMetadataDeserializer","ModuleMetadataId","ModuleMetadataSerializer","NotExecuted","NotExecuted","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","delta_deser","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","err_msg_deser","err_msg_ser","fmt","from","from","from","from","from","from_ref","id_deser","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","u64_ser","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_module_cache"],[8,"massa_module_cache::config"],[35,"massa_module_cache::controller"],[67,"massa_module_cache::error"],[100,"massa_module_cache::hd_cache"],[140,"massa_module_cache::lru_cache"],[167,"massa_module_cache::types"],[310,"rkyv::with"],[311,"core::result"],[312,"tonic::request"],[313,"core::alloc::layout"],[314,"core::any"],[315,"alloc::boxed"],[316,"massa_hash::hash"],[317,"massa_sc_runtime::execution"],[318,"alloc::string"],[319,"dyn_clone::sealed"],[320,"core::error"],[321,"core::fmt"],[322,"anyhow"],[323,"massa_sc_runtime::types"],[324,"core::option"],[325,"std::path"],[326,"nom::internal"],[327,"nom::error"],[328,"alloc::vec"],[329,"massa_serialization"],[330,"num_enum"]],"i":[0,0,0,0,0,0,0,0,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,37,42,17,37,42,17,17,0,0,0,0,0,37,42,17,35,36,17,37,42,35,36,17,37,42,17,17,17,35,36,36,35,36,17,37,42,35,36,17,37,42,35,36,36,17,37,42,35,36,17,37,42,37,42,37,37,37,37,37,37,42,42,42,42,42,42,36,35,42,35,36,17,37,42,17,36,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42,35,36,35,36,17,37,42,35,17,35,36,17,37,42,42,42,35,36,17,37,42,35,36,17,37,42,35,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42,35,36,17,37,42],"f":"`````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{cc{}}```{{}f}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}``{b}`{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}8``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{{{b{dAj}}{b{{An{Al}}}}B`}Bb}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{cc{}}`{{}f}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}{{{b{dAj}}{b{{An{Al}}}}Bd}{{j{BfBh}}}}{{{b{dAj}}{b{{An{Al}}}}}Bb}{{{b{Aj}}{b{{An{Al}}}}Bd}{{j{BfBh}}}}`{BjAj}{b}{{{b{dAj}}{b{{An{Al}}}}}l}{{{b{dAj}}{b{{An{Al}}}}Bd}l}{{{b{dAj}}{b{{An{Al}}}}Bl}l}{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}?```{{{b{c}}Bn}l{}}{{{b{c}}}{{b{C`}}}{}}{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bh}}}Bh}{{{b{c}}{b{de}}}l{}{}}{{{b{c}}}l{}}{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{{{b{Bh}}{b{dCb}}}Cd}0{CfBh}{cc{}}{{{b{c}}}c{}}{{}f}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}{b}{{{b{c}}}e{}{}}{{{b{c}}}Bl{}}{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}:`````````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}`{cc{}}{{{b{Ch}}B`CjCl}{{Cn{Bb}}}}{{}f}{{{b{dCh}}B`Bb}l}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}```{{D`ff}Ch}{b}{{{b{Ch}}B`Bd}l}{{{b{Ch}}B`Bl}l}{{{b{dCh}}}l}`{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}}<``{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}`{f{{b{c}}}{}}{f{{b{dc}}}{}}{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{fl}{cc{}}{{{b{dDb}}B`}{{Cn{Bb}}}}{{}f}{{{b{dDb}}B`Bb}l}{ce{}{}}{c{{n{e}}}{}{}}{{}{{j{A`Ab}}}}{DdDb}{b}{{{b{dDb}}B`Bd}l}{{{b{dDb}}B`Bl}l}{c{{j{e}}}{}{}}0{{{b{c}}}Ad{}}{{{Af{c}}}{{Af{Ah}}}{}}{{{b{dc}}}{{b{dAh}}}{}}{{{b{c}}}{{b{Ah}}}{}};``````````````{{{b{c}}Bn}l{}}{{{b{c}}}{{b{e}}}{}{}}0000{{{b{dc}}}{{b{de}}}{}{}}0000{{{b{Bb}}}Bb}{{{b{c}}{b{de}}}l{}{}}{{{b{c}}}l{}}{{}Df}{{}Dh}`{f{{b{c}}}{}}0000{f{{b{dc}}}{}}0000{{{b{c}}{b{de}}}{{j{{h{gi}}}}}{}{}{}{}}{{{b{Dh}}{b{{An{Al}}}}}{{Dl{{b{{An{Al}}}}Djc}}}{{Dn{{b{{An{Al}}}}}}{E`{{b{{An{Al}}}}}}}}1111{fl}0000{{{b{Dj}}{b{Dj}}}Eb}{{{b{Ed}}{b{Ed}}}Eb}{{{b{c}}{b{e}}}Eb{}{}}00000000000``{{{b{Ed}}{b{dCb}}}Cd}{cc{}}0000{{{b{c}}}c{}}`{{}f}0000{ce{}{}}0000{c{{n{e}}}{}{}}0000{{}{{j{A`Ab}}}}0000{{}Df}{{}Dh}{b}0000{{{b{Df}}{b{Dj}}{b{d{Ef{Al}}}}}{{j{lEh}}}}{{{b{c}}}e{}{}}{c{{j{e}}}{}{}}000{Bd{{j{Ed{Ej{Ed}}}}}}1{c{{j{Ed{Ej{Ed}}}}}{}}22222{{{b{c}}}Ad{}}0000`{{{Af{c}}}{{Af{Ah}}}{}}0000{{{b{dc}}}{{b{dAh}}}{}}0000{{{b{c}}}{{b{Ah}}}{}}0000>>>>>","D":"Hl","p":[[1,"reference"],[0,"mut"],[1,"usize"],[5,"With",310],[6,"Result",311],[1,"unit"],[5,"Request",312],[5,"Layout",313],[5,"LayoutError",313],[5,"TypeId",314],[5,"Box",315],[10,"Any",314],[5,"ModuleCache",35],[1,"u8"],[1,"slice"],[5,"Hash",316],[6,"ModuleInfo",167],[1,"u64"],[6,"RuntimeModule",317],[6,"CacheError",67],[5,"ModuleCacheConfig",8],[5,"String",318],[5,"Private",319],[10,"Error",320],[5,"Formatter",321],[8,"Result",321],[5,"Error",322],[5,"HDCache",100],[5,"GasCosts",323],[5,"CondomLimits",323],[6,"Option",324],[5,"PathBuf",325],[5,"LRUCache",140],[1,"u32"],[5,"ModuleMetadataSerializer",167],[5,"ModuleMetadataDeserializer",167],[6,"ModuleMetadata",167],[8,"IResult",326],[10,"ParseError",327],[10,"ContextError",327],[1,"bool"],[6,"ModuleMetadataId",167],[5,"Vec",328],[6,"SerializeError",329],[5,"TryFromPrimitiveError",330]],"r":[],"b":[[81,"impl-Display-for-CacheError"],[82,"impl-Debug-for-CacheError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAPAAHQABAAQACAADAA0AAwAVAAAAFwABABsAAAAdAAYAJgABACoAAwAwAAAAMgABADkAAAA9AAYARwANAFYAAQBZABYAcQADAHgAAAB7AAEAgQAAAIYABgCPAAYAmAAAAJsAAQCeAAAAoQANALQAOADyAAYA/gA4AA=="}],\ +["massa_node",{"t":"FFNNONNNNNNHONNNNNNNNOOONNNNNNNNNNNOHNNHHONNOOOHOCHCNNNNNNNNNNNNNFFFFFFFFFFFFFFFFFFNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNOOFFNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNONNNNNNNNNN","n":["Args","Managers","augment_args","augment_args_for_update","bootstrap_manager","borrow","borrow","borrow_mut","borrow_mut","command","command_for_update","configure_grpc","consensus_manager","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","event_cache_manager","execution_manager","factory_manager","from","from","from_arg_matches","from_arg_matches_mut","group_id","init","init","into","into","into_request","into_request","keep_ledger","launch","layout_raw","layout_raw","load_wallet","main","password","pointer_metadata","pointer_metadata","pool_manager","protocol_manager","restart_from_snapshot_at_period","run","selector_manager","settings","stop","survey","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip","APISettings","BlockDumpSettings","BootstrapSettings","ConsensusSettings","ExecutionSettings","FactorySettings","GrpcApiSettings","GrpcSettings","LedgerSettings","LoggingSettings","MetricsSettings","NetworkSettings","PoolSettings","ProtocolSettings","SETTINGS","SelectionSettings","Settings","VersioningSettings","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__private_field","abi_gas_costs_file","accept_compressed","accept_http1","allow_hosts","api","ask_block_timeout","asked_operations_buffer_capacity","batch_request_limit","bind","bind","bind","bind","bind_api","bind_private","bind_public","block_db_prune_interval","block_dump","block_dump_folder_path","block_propagation_tick","bootstrap","bootstrap_blacklist_path","bootstrap_list","bootstrap_protocol","bootstrap_timeout","bootstrap_whitelist_path","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","broadcast_blocks_channel_capacity","broadcast_blocks_headers_channel_capacity","broadcast_endorsements_channel_capacity","broadcast_filled_blocks_channel_capacity","broadcast_operations_channel_capacity","broadcast_slot_execution_output_channel_capacity","broadcast_slot_execution_traces_channel_capacity","cache_duration","certificate_authority_root_path","client_certificate_authority_root_path","client_certificate_path","client_private_key_path","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","concurrency_limit_per_connection","connect_timeout","connect_timeout","consensus","cursor_delay","default_category_info","deferred_credits_delta","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","disk_ledger_path","draw_lookahead_period_count","draw_lookahead_period_count","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","enable_broadcast","enable_cors","enable_health","enable_http","enable_mtls","enable_reflection","enable_tls","enable_ws","enabled","enabled","event_cache_path","event_cache_size","event_snip_amount","execution","execution_traces_limit","factory","final_history_length","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","force_keep_final_periods","force_keep_final_periods_without_ops","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","generate_self_signed_certificates","grpc","hd_cache_path","hd_cache_size","http2_adaptive_window","http2_keepalive_interval","http2_keepalive_timeout","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_connection_window_size","initial_deferred_credits_path","initial_delay","initial_ledger_path","initial_peers_file","initial_rolls_path","initial_stream_window_size","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","ip_list_max_size","keypair_file","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","ledger","ledger_backup_periods_interval","level","logging","lru_cache_size","max_addresses_per_request","max_arguments","max_arguments","max_block_ids_per_request","max_block_propagation_time","max_blocks_kept_for_propagation","max_channel_size","max_clock_delta","max_concurrent_streams","max_connections","max_datastore_entries_per_request","max_decoding_message_size","max_dependency_blocks","max_discarded_blocks","max_encoding_message_size","max_endorsement_ids_per_request","max_endorsements_pool_size_per_thread","max_endorsements_propagation_time","max_event_per_query","max_filters_per_request","max_final_events","max_frame_size","max_future_processing_blocks","max_in_connections","max_item_return_count","max_known_blocks_size","max_known_endorsements_size","max_known_ops_size","max_ledger_backups","max_log_length","max_node_known_blocks_size","max_node_known_endorsements_size","max_node_known_ops_size","max_node_wanted_blocks_size","max_operation_ids_per_request","max_operation_pool_excess_items","max_operation_pool_size","max_operations_per_message","max_operations_propagation_time","max_ops_kept_for_propagation","max_ping","max_query_items_per_request","max_read_only_gas","max_request_body_size","max_response_body_size","max_send_wait","max_simultaneous_ask_blocks_per_node","max_simultaneous_bootstraps","max_slot_ranges_per_request","max_subscriptions_per_connection","message_timeout","metrics","minimal_fees","mip_stats_warn_announced_version","network","openrpc_spec_path","operation_announcement_buffer_capacity","operation_announcement_interval","operation_batch_buffer_capacity","operation_batch_proc_period","operation_max_future_start_delay","operation_pool_refresh_interval","peers_categories","per_ip_min_interval","ping_interval","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pool","private","protocol","public","rate_limit","rate_limit","read_error_timeout","read_timeout","read_write_limit_bytes_per_second","readonly_queue_length","retry_delay","routable_ip","routable_ip","selector","send_compressed","server_certificate_path","server_private_key_path","snip_amount","staking_wallet_path","stats_time_window_duration","stats_timespan","stop_production_when_zero_connections","subject_alt_names","tcp_keepalive","tcp_nodelay","test_oldest_peer_cooldown","tester_timeout","thread_tester_count","tick_delay","timeout","timeout_connection","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_connection_timer","try_connection_timer_same_peer","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unban_everyone_timer","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","versioning","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","write_error_timeout","write_timeout","MassaSurvey","MassaSurveyStopper","borrow","borrow","borrow_mut","borrow_mut","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","from","from","handle","init","init","into","into","into_request","into_request","layout_raw","layout_raw","pointer_metadata","pointer_metadata","run","stop","try_from","try_from","try_into","try_into","tx_stopper","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip"],"q":[[0,"massa_node"],[65,"massa_node::settings"],[752,"massa_node::survey"],[796,"clap_builder::builder::command"],[797,"massa_grpc::config"],[798,"massa_signature::signature_impl"],[799,"massa_final_state::controller_trait"],[800,"parking_lot::rwlock"],[801,"alloc::sync"],[802,"massa_models::amount"],[803,"rkyv::with"],[804,"core::result"],[805,"clap_builder::parser::matches::arg_matches"],[806,"clap_builder"],[807,"clap_builder::util::id"],[808,"core::option"],[809,"tonic::request"],[810,"massa_wallet"],[811,"std::sync::mutex"],[812,"std::sync::condvar"],[813,"massa_consensus_exports::events"],[814,"massa_channel::receiver"],[815,"massa_bootstrap::server"],[816,"massa_consensus_exports::controller_trait"],[817,"alloc::boxed"],[818,"massa_execution_exports::controller_traits"],[819,"massa_pos_exports::controller_traits"],[820,"massa_pool_exports::controller_traits"],[821,"massa_protocol_exports::controller_trait"],[822,"massa_factory_exports::controller_traits"],[823,"massa_event_cache::worker"],[824,"massa_api"],[825,"massa_grpc::server"],[826,"massa_metrics"],[827,"core::alloc::layout"],[828,"alloc::string"],[829,"std::path"],[830,"anyhow"],[831,"core::any"],[832,"dyn_clone::sealed"],[833,"serde::de"],[834,"core::fmt"],[835,"core::time"],[836,"massa_time"],[837,"massa_versioning::versioning"]],"i":[0,0,17,17,48,48,17,48,17,17,17,0,48,48,17,48,17,48,17,48,17,48,48,48,48,17,17,17,17,48,17,48,17,48,17,17,0,48,17,0,0,17,48,17,48,48,17,0,48,0,0,0,48,17,48,17,48,17,17,17,17,17,17,48,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,53,5,5,59,60,64,64,59,56,63,64,5,59,59,59,61,60,67,64,60,56,56,56,56,56,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,61,61,58,61,58,53,53,56,5,5,5,5,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,5,56,64,60,53,64,59,68,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,5,5,65,65,66,66,67,67,55,59,5,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,59,5,5,59,5,5,5,59,63,5,53,53,53,60,53,60,55,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,61,61,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,5,60,53,53,5,5,5,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,5,55,57,55,64,54,5,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,56,64,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,60,55,52,60,53,5,59,5,5,64,64,5,56,5,59,5,5,61,61,5,5,58,64,53,5,53,5,61,64,58,64,64,64,55,59,64,64,64,64,5,58,58,64,64,64,56,5,53,59,59,64,64,56,5,59,64,60,58,66,60,59,64,64,64,64,58,58,64,56,59,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,60,65,60,65,56,64,56,56,64,53,56,62,64,60,5,5,5,53,57,53,61,57,5,5,5,64,64,64,63,5,64,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,64,64,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,64,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,60,68,52,53,54,55,56,57,58,59,60,61,62,63,64,5,65,66,67,56,56,0,0,79,41,79,41,79,41,79,41,79,41,79,41,79,41,41,79,41,79,41,79,41,79,41,79,41,79,41,79,41,79,41,41,79,41,79,41,79,41,79,41,79,41],"f":"``{bb}0`{{{d{c}}}{{d{e}}}{}{}}0{{{d{fc}}}{{d{fe}}}{}{}}0{{}b}0{{h{d{j}}l{d{{Ab{{A`{n}}}}}}Ad}Af}`{Ah{{d{c}}}{}}0{Ah{{d{fc}}}{}}0{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}0{AhAn}0```{cc{}}0{{{d{B`}}}{{Al{BbBd}}}}{{{d{fB`}}}{{Al{BbBd}}}}{{}{{Bh{Bf}}}}{{}Ah}0{ce{}{}}0{c{{Bj{e}}}{}{}}0`{{{d{Bb}}{Ab{{A`{Bl}}}}{Ab{{Cd{{C`{Bn}}Cb}}}}}{{Cd{{Ch{Cf}}{Bh{Cj}}{Cn{Cl}}{Cn{D`}}{Cn{Db}}{Cn{Dd}}{Cn{Df}}{Cn{Dh}}{Cn{Dj}}DlDlDl{Bh{Dn}}{Bh{Dn}}E`Eb}}}}{{}{{Al{EdEf}}}}0{{{Bh{Eh}}{d{Ej}}El}{{En{{Ab{{A`{Bl}}}}}}}}{{}{{En{An}}}}`{d}0```{Bb{{En{An}}}}``{{{Ch{Cf}}F`DlDlDl{Bh{Dn}}{Bh{Dn}}E`Eb}An}`{c{{Al{e}}}{}{}}000{{{d{c}}}Fb{}}0{{{Cn{c}}}{{Cn{Fd}}}{}}{{{d{fc}}}{{d{fFd}}}{}}{{{d{c}}}{{d{Fd}}}{}}{{{d{fBb}}{d{B`}}}{{Al{AnBd}}}}{{{d{fBb}}{d{fB`}}}{{Al{AnBd}}}}??``````````````````{{{d{c}}Ff}An{}}0000000000000000``````````````````````````{{{d{c}}}{{d{e}}}{}{}}00000000000000000{{{d{fc}}}{{d{fe}}}{}{}}00000000000000000````````````{{{d{Fh}}}Fh}{{{d{Fj}}}Fj}{{{d{Fl}}}Fl}{{{d{Fn}}}Fn}{{{d{G`}}}G`}{{{d{Gb}}}Gb}{{{d{Gd}}}Gd}{{{d{Gf}}}Gf}{{{d{Gh}}}Gh}{{{d{Gj}}}Gj}{{{d{Gl}}}Gl}{{{d{Gn}}}Gn}{{{d{H`}}}H`}{{{d{j}}}j}{{{d{Hb}}}Hb}{{{d{Hd}}}Hd}{{{d{Hf}}}Hf}{{{d{c}}{d{fe}}}An{}{}}0000000000000000{{{d{c}}}An{}}0000000000000000```````{Ah{{d{c}}}{}}{{{d{Hh}}}{{d{Gh}}}}11111111111111111{Ah{{d{fc}}}{}}00000000000000000{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}0{c{{Al{Fh}}}Hj}1{c{{Al{Fj}}}Hj}{c{{Al{Fl}}}Hj}33{c{{Al{Fn}}}Hj}{c{{Al{G`}}}Hj}5{c{{Al{Gb}}}Hj}6{c{{Al{Gd}}}Hj}7{c{{Al{Gf}}}Hj}88{c{{Al{Gh}}}Hj}9{c{{Al{Gj}}}Hj}:{c{{Al{Gl}}}Hj};{c{{Al{Gn}}}Hj}{c{{Al{H`}}}Hj}=={c{{Al{j}}}Hj}{c{{Al{Hb}}}Hj}??{c{{Al{Hd}}}Hj}{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}{c{{Al{Hf}}}Hj}```{AhAn}00000000000000000`````````````````{{{d{Fh}}{d{fHl}}}Hn}{{{d{Fj}}{d{fHl}}}Hn}{{{d{Fl}}{d{fHl}}}Hn}{{{d{Fn}}{d{fHl}}}Hn}{{{d{G`}}{d{fHl}}}Hn}{{{d{Gb}}{d{fHl}}}Hn}{{{d{Gd}}{d{fHl}}}Hn}{{{d{Gf}}{d{fHl}}}Hn}{{{d{Gh}}{d{fHl}}}Hn}{{{d{Gj}}{d{fHl}}}Hn}{{{d{Gl}}{d{fHl}}}Hn}{{{d{Gn}}{d{fHl}}}Hn}{{{d{H`}}{d{fHl}}}Hn}{{{d{j}}{d{fHl}}}Hn}{{{d{Hb}}{d{fHl}}}Hn}{{{d{Hd}}{d{fHl}}}Hn}{{{d{Hf}}{d{fHl}}}Hn}``{cc{}}00000000000000000{{{d{c}}}c{}}0000000000000000```````{{}Ah}00000000000000000```````{ce{}{}}00000000000000000{c{{Bj{e}}}{}{}}00000000000000000``{{}{{Al{EdEf}}}}00000000000000000``````````````````````````````````````````````````````````````````````{d}00000000000000000```````````````````````````````{{{d{c}}}e{}{}}0000000000000000``{c{{Al{e}}}{}{}}00000000000000000000000000000000000{{{d{c}}}Fb{}}00000000000000000`{{{Cn{c}}}{{Cn{Fd}}}{}}00000000000000000{{{d{fc}}}{{d{fFd}}}{}}00000000000000000{{{d{c}}}{{d{Fd}}}{}}00000000000000000`999999999999999999````{{{d{c}}}{{d{e}}}{}{}}0{{{d{fc}}}{{d{fe}}}{}{}}0{Ah{{d{c}}}{}}0{Ah{{d{fc}}}{}}0{{{d{c}}{d{fe}}}{{Al{{Aj{gi}}}}}{}{}{}{}}0{AhAn}0{cc{}}0`{{}Ah}0{ce{}{}}0{c{{Bj{e}}}{}{}}0{{}{{Al{EdEf}}}}0{d}0{{I`{Cn{Ib}}{Cn{Id}}If{Cd{IhIjIjElEl}}Il}Eb}{{{d{fEb}}}An}{c{{Al{e}}}{}{}}000`{{{d{c}}}Fb{}}0{{{Cn{c}}}{{Cn{Fd}}}{}}0{{{d{fc}}}{{d{fFd}}}{}}0{{{d{c}}}{{d{Fd}}}{}}0::","D":"ADj","p":[[5,"Command",796],[1,"reference"],[0,"mut"],[6,"ServiceName",797],[5,"GrpcSettings",65],[6,"KeyPair",798],[10,"FinalStateController",799],[8,"RwLock",800],[5,"Arc",801],[5,"Amount",802],[5,"GrpcConfig",797],[1,"usize"],[5,"With",803],[6,"Result",804],[1,"unit"],[5,"ArgMatches",805],[5,"Args",0],[8,"Error",806],[5,"Id",807],[6,"Option",808],[5,"Request",809],[5,"Wallet",810],[1,"bool"],[5,"Mutex",811],[5,"Condvar",812],[1,"tuple"],[6,"ConsensusEvent",813],[5,"MassaReceiver",814],[5,"BootstrapManager",815],[10,"ConsensusManager",816],[5,"Box",817],[10,"ExecutionManager",818],[10,"SelectorManager",819],[10,"PoolManager",820],[10,"ProtocolManager",821],[10,"FactoryManager",822],[10,"EventCacheManager",823],[5,"StopHandle",824],[5,"StopHandle",825],[5,"MetricsStopper",826],[5,"MassaSurveyStopper",752],[5,"Layout",827],[5,"LayoutError",827],[5,"String",828],[5,"Path",829],[1,"u64"],[8,"Result",830],[5,"Managers",0],[5,"TypeId",831],[10,"Any",831],[5,"Private",832],[5,"LoggingSettings",65],[5,"ExecutionSettings",65],[5,"SelectionSettings",65],[5,"LedgerSettings",65],[5,"BootstrapSettings",65],[5,"FactorySettings",65],[5,"PoolSettings",65],[5,"APISettings",65],[5,"Settings",65],[5,"ConsensusSettings",65],[5,"NetworkSettings",65],[5,"MetricsSettings",65],[5,"ProtocolSettings",65],[5,"GrpcApiSettings",65],[5,"VersioningSettings",65],[5,"BlockDumpSettings",65],[5,"SETTINGS",65],[10,"Deserializer",833],[5,"Formatter",834],[8,"Result",834],[5,"Duration",835],[10,"ExecutionController",818],[10,"PoolController",820],[5,"MassaMetrics",826],[1,"u8"],[5,"MassaTime",836],[5,"MipStore",837],[5,"MassaSurvey",752]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAHcCPwABABcAGwAEACIABQApAAAAKwADADAAAQAzAA4AQwAAAEYAAABKAAMAUAAWAGkAAQBtAAEAcgACAHYAAAB5AAMAfgAkAKoAAACvADIA4wAAAOUAAQDoAEoANAESAEkBAABNAQAAUAEXAHwBEACOAQIAlAERAKcBAACpAQAAqwEAAL8BEgDTARYA6wEAAPEBAADzAQAA+gEAAPwBAAD+AQAAAgIAAAYCAQANAgEAEgIAABQCAgAZAgAAGwIAAB0CAAAfAgIAJgIBACkCFAA/AgAAQQIAAEMCAQBGAgEASgIAAE4CAABQAgAAXAIQAG8CNQCmAlgAAQMCAAYDFgA="}],\ ["massa_pool_exports",{"t":"FFFKKMMMOOOOOCMCMMCOOOOOOMMMMMMMOOOOOOOOOOMOOOOOOOOOMOOFFNNNNNNONNNNNNNNNNNNNNOONNNNNNNNNNNNONNONNNNNNNNNNNNNNNNFNONNOOONNNNOONNNNNONNNONNNONOOOOOOOOOOOOOONONOOONNNNNNNNKKMMMMMMMMMMMMMMM","n":["PoolBroadcasts","PoolChannels","PoolConfig","PoolController","PoolManager","add_denunciation_precursor","add_endorsements","add_operations","base_operation_gas_cost","broadcast_enabled","broadcast_endorsements_channel_capacity","broadcast_operations_channel_capacity","broadcasts","channels","clone_box","config","contains_endorsements","contains_operations","controller_traits","denunciation_expire_periods","denunciations_channel_size","endorsement_sender","endorsements_channel_size","execution_controller","genesis_timestamp","get_block_denunciations","get_block_endorsements","get_block_operations","get_denunciation_count","get_endorsement_count","get_final_cs_periods","get_operation_count","last_start_period","max_block_endorsement_count","max_block_gas","max_block_size","max_denunciations_per_block_header","max_endorsements_pool_size_per_thread","max_operation_pool_excess_items","max_operation_pool_size","max_operations_per_block","minimal_fees","notify_final_cs_periods","operation_max_future_start_delay","operation_pool_refresh_interval","operation_sender","operation_validity_periods","operations_channel_size","periods_per_cycle","roll_price","selector","sp_compilation_cost","stop","t0","thread_count","PoolBroadcasts","PoolChannels","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","broadcasts","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_sender","execution_controller","from","from","from_ref","from_ref","init","init","into","into","into_request","into_request","layout_raw","layout_raw","operation_sender","pointer_metadata","pointer_metadata","selector","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","PoolConfig","__clone_box","base_operation_gas_cost","borrow","borrow_mut","broadcast_enabled","broadcast_endorsements_channel_capacity","broadcast_operations_channel_capacity","clone","clone_into","clone_to_uninit","clone_to_uninit","denunciation_expire_periods","denunciations_channel_size","deref","deref_mut","deserialize","deserialize","drop","endorsements_channel_size","fmt","from","from_ref","genesis_timestamp","init","into","into_request","last_start_period","layout_raw","max_block_endorsement_count","max_block_gas","max_block_size","max_denunciations_per_block_header","max_endorsements_pool_size_per_thread","max_operation_pool_excess_items","max_operation_pool_size","max_operations_per_block","minimal_fees","operation_max_future_start_delay","operation_pool_refresh_interval","operation_validity_periods","operations_channel_size","periods_per_cycle","pointer_metadata","roll_price","serialize","sp_compilation_cost","t0","thread_count","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","PoolController","PoolManager","add_denunciation_precursor","add_endorsements","add_operations","clone_box","contains_endorsements","contains_operations","get_block_denunciations","get_block_endorsements","get_block_operations","get_denunciation_count","get_endorsement_count","get_final_cs_periods","get_operation_count","notify_final_cs_periods","stop"],"q":[[0,"massa_pool_exports"],[55,"massa_pool_exports::channels"],[112,"massa_pool_exports::config"],[169,"massa_pool_exports::controller_traits"],[186,"massa_models::denunciation"],[187,"massa_storage"],[188,"alloc::boxed"],[189,"massa_models::endorsement"],[190,"alloc::vec"],[191,"massa_models::operation"],[192,"massa_models::slot"],[193,"massa_models::block_id"],[194,"core::option"],[195,"dyn_clone::sealed"],[196,"rkyv::with"],[197,"core::result"],[198,"tonic::request"],[199,"core::alloc::layout"],[200,"core::any"],[201,"serde::de"],[202,"core::fmt"],[203,"serde::ser"]],"i":[0,0,0,0,0,1,1,1,31,31,31,31,22,0,1,0,1,1,0,31,31,23,31,22,31,1,1,1,1,1,1,1,31,31,31,31,31,31,31,31,31,31,1,31,31,23,31,31,31,31,22,31,20,31,31,0,0,22,23,22,23,22,23,22,22,23,22,23,22,23,22,23,22,23,22,23,22,23,23,22,22,23,22,23,22,23,22,23,22,23,22,23,23,22,23,22,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,0,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,20],"f":"`````{{{d{b}}f}h}{{{d{jb}}l}h}0``````{{{d{b}}}{{n{b}}}}`{{{d{b}}{d{{Ab{A`}}}}}{{Af{Ad}}}}{{{d{b}}{d{{Ab{Ah}}}}}{{Af{Ad}}}}```````{{{d{b}}{d{Aj}}}{{Af{Al}}}}{{{d{b}}{d{An}}{d{Aj}}}{{Bb{{Af{{B`{A`}}}}l}}}}{{{d{b}}{d{Aj}}}{{Bb{{Af{Ah}}l}}}}{{{d{b}}}Bd}0{{{d{b}}}{{Af{Bf}}}}1``````````{{{d{jb}}{d{{Ab{Bf}}}}}h}`````````{{{d{jBh}}}h}````{{{d{c}}Bj}h{}}0{{{d{c}}}{{d{e}}}{}{}}0{{{d{jc}}}{{d{je}}}{}{}}0`{{{d{Bl}}}Bl}{{{d{Bn}}}Bn}{{{d{c}}{d{je}}}h{}{}}0{{{d{c}}}h{}}0{Bd{{d{c}}}{}}0{Bd{{d{jc}}}{}}0{{{d{c}}{d{je}}}{{Cb{{C`{gi}}}}}{}{}{}{}}0{Bdh}0``{cc{}}0{{{d{c}}}c{}}0{{}Bd}0{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Cb{CfCh}}}}0`{d}0`{{{d{c}}}e{}{}}0{c{{Cb{e}}}{}{}}000{{{d{c}}}Cj{}}0{{{n{c}}}{{n{Cl}}}{}}0{{{d{jc}}}{{d{jCl}}}{}}0{{{d{c}}}{{d{Cl}}}{}}099`{{{d{c}}Bj}h{}}`{{{d{c}}}{{d{e}}}{}{}}{{{d{jc}}}{{d{je}}}{}{}}```{{{d{Cn}}}Cn}{{{d{c}}{d{je}}}h{}{}}{{{d{c}}}h{}}0``{Bd{{d{c}}}{}}{Bd{{d{jc}}}{}}{{{d{c}}{d{je}}}{{Cb{{C`{gi}}}}}{}{}{}{}}{c{{Cb{Cn}}}D`}{Bdh}`{{{d{Cn}}{d{jDb}}}Dd}{cc{}}{{{d{c}}}c{}}`{{}Bd}{ce{}{}}{c{{Cd{e}}}{}{}}`{{}{{Cb{CfCh}}}}``````````````{d}`{{{d{Cn}}c}CbDf}```{{{d{c}}}e{}{}}{c{{Cb{e}}}{}{}}0{{{d{c}}}Cj{}}{{{n{c}}}{{n{Cl}}}{}}{{{d{jc}}}{{d{jCl}}}{}}{{{d{c}}}{{d{Cl}}}{}}:``{{{d{b}}f}h}{{{d{jb}}l}h}0{{{d{b}}}{{n{b}}}}{{{d{b}}{d{{Ab{A`}}}}}{{Af{Ad}}}}{{{d{b}}{d{{Ab{Ah}}}}}{{Af{Ad}}}}{{{d{b}}{d{Aj}}}{{Af{Al}}}}{{{d{b}}{d{An}}{d{Aj}}}{{Bb{{Af{{B`{A`}}}}l}}}}{{{d{b}}{d{Aj}}}{{Bb{{Af{Ah}}l}}}}{{{d{b}}}Bd}0{{{d{b}}}{{Af{Bf}}}}1{{{d{jb}}{d{{Ab{Bf}}}}}h}{{{d{jBh}}}h}","D":"N`","p":[[10,"PoolController",169],[1,"reference"],[6,"DenunciationPrecursor",186],[1,"unit"],[0,"mut"],[5,"Storage",187],[5,"Box",188],[6,"EndorsementId",189],[1,"slice"],[1,"bool"],[5,"Vec",190],[6,"OperationId",191],[5,"Slot",192],[6,"Denunciation",186],[6,"BlockId",193],[6,"Option",194],[1,"tuple"],[1,"usize"],[1,"u64"],[10,"PoolManager",169],[5,"Private",195],[5,"PoolChannels",55],[5,"PoolBroadcasts",55],[5,"With",196],[6,"Result",197],[5,"Request",198],[5,"Layout",199],[5,"LayoutError",199],[5,"TypeId",200],[10,"Any",200],[5,"PoolConfig",112],[10,"Deserializer",201],[5,"Formatter",202],[8,"Result",202],[10,"Serializer",203]],"r":[[0,55],[1,55],[2,112],[3,169],[4,169]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEoAFAAOAAAAEwAAADoABQBBAA0AUwADAFkAAwBeAAEAYQAPAHIAAAB0AAEAeQADAH8ABACFAAAAhwAAAIkAAACLAAAAjQAAAJwAAACeAAAAogAHAA=="}],\ ["massa_pool_worker",{"t":"CCCCHCCPPGPFFPNONNNNNNNNNNNNNNNOOOONNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNPPFGNNNNNNNOHNNNNOONNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNFNNNOONNNNNOONNNNNNONNNNONNNNNNNOFNNNOONNNNNNNNNNNNNNNONNNNNNNOONNNNNNNNOFNNNNNNONNNNONNNNONNNNOONOONNNNNNNONFFFNNNNNNONNNNNNNNNNNNONNNNNNNNNNNNNNNONNNOOONNNNNNHNNNNNNNNNNNN","n":["controller_impl","denunciation_pool","endorsement_pool","operation_pool","start_pool_controller","types","worker","AddDenunciationPrecursor","AddItems","Command","NotifyFinalCsPeriods","PoolControllerImpl","PoolManagerImpl","Stop","__clone_box","_config","add_denunciation_precursor","add_endorsements","add_operations","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_box","clone_into","clone_to_uninit","contains_endorsements","contains_operations","denunciation_pool","denunciations_input_sender","denunciations_input_sender","denunciations_thread_handle","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","endorsement_pool","endorsements_input_sender","endorsements_input_sender","endorsements_thread_handle","from","from","from","from_ref","get_block_denunciations","get_block_endorsements","get_block_operations","get_denunciation_count","get_endorsement_count","get_final_cs_periods","get_operation_count","init","init","init","into","into","into","into_request","into_request","into_request","last_cs_final_periods","layout_raw","layout_raw","layout_raw","notify_final_cs_periods","operation_pool","operations_input_sender","operations_input_sender","operations_thread_handle","pointer_metadata","pointer_metadata","pointer_metadata","stop","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","Accumulating","DenunciationEmitted","DenunciationPool","DenunciationStatus","__clone_box","add_denunciation_precursor","add_endorsements","borrow","borrow","borrow_mut","borrow_mut","channels","cleanup_cache","cleanup_caches","clone","clone_into","clone_to_uninit","config","denunciations_cache","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","eq","fmt","from","from","from_ref","get_block_denunciations","init","init","init","into","into","into_request","into_request","last_cs_final_periods","layout_raw","layout_raw","len","notify_final_cs_periods","pointer_metadata","pointer_metadata","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","EndorsementPool","add_endorsements","borrow","borrow_mut","channels","config","contains","deref","deref_mut","deserialize","drop","endorsements_indexed","endorsements_sorted","from","get_block_endorsements","init","init","into","into_request","last_cs_final_periods","layout_raw","len","notify_final_cs_periods","pointer_metadata","storage","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","wallet","OperationPool","add_operations","borrow","borrow_mut","channels","config","contains","deref","deref_mut","deserialize","drop","eliminate_balance_overflows","from","get_block_operations","get_execution_statuses","get_pos_draws","get_sender_balances","init","init","into","into_request","last_cs_final_periods","layout_raw","len","notify_final_cs_periods","pointer_metadata","prefilter_ops","refresh","score_operations","sorted_ops","storage","truncate_container","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","wallet","OperationInfo","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","creator_address","deref","deref_mut","deserialize","drop","fee","fmt","from","from_op","from_ref","id","init","into","into_request","layout_raw","max_gas_usage","max_spending","pointer_metadata","size","thread","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","validity_period_range","vzip","DenunciationPoolThread","EndorsementPoolThread","OperationPoolThread","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","denunciation_pool","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","endorsement_pool","from","from","from","init","init","init","into","into","into","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","operation_pool","pointer_metadata","pointer_metadata","pointer_metadata","receiver","receiver","receiver","run","run","run","spawn","spawn","spawn","start_pool_controller","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_pool_worker"],[7,"massa_pool_worker::controller_impl"],[106,"massa_pool_worker::denunciation_pool"],[168,"massa_pool_worker::endorsement_pool"],[201,"massa_pool_worker::operation_pool"],[241,"massa_pool_worker::types"],[277,"massa_pool_worker::worker"],[341,"massa_pool_exports::config"],[342,"massa_storage"],[343,"massa_pool_exports::channels"],[344,"massa_wallet"],[345,"parking_lot::rwlock"],[346,"alloc::sync"],[347,"massa_pool_exports::controller_traits"],[348,"alloc::boxed"],[349,"dyn_clone::sealed"],[350,"massa_models::denunciation"],[351,"massa_models::endorsement"],[352,"alloc::vec"],[353,"massa_models::operation"],[354,"rkyv::with"],[355,"core::result"],[356,"massa_models::slot"],[357,"massa_models::block_id"],[358,"core::option"],[359,"tonic::request"],[360,"core::alloc::layout"],[361,"core::any"],[362,"alloc::collections::btree::map"],[363,"core::fmt"],[364,"massa_models::address"],[365,"massa_models::amount"],[366,"massa_models::prehash"],[367,"alloc::collections::btree::set"],[368,"std::sync::mpsc"],[369,"std::thread"]],"i":[0,0,0,0,0,0,0,55,55,0,55,0,0,55,14,14,14,14,14,55,33,14,55,33,14,14,14,14,14,14,14,14,33,14,33,55,33,14,55,33,14,55,33,14,55,33,14,14,33,14,33,55,33,14,14,14,14,14,14,14,14,14,55,33,14,55,33,14,55,33,14,14,55,33,14,14,14,33,14,33,55,33,14,33,14,55,33,14,55,33,14,55,33,14,55,33,14,55,33,14,55,33,14,55,33,14,38,38,0,0,38,36,36,36,38,36,38,36,0,36,38,38,38,36,36,36,38,36,38,36,38,36,38,38,38,36,38,38,36,36,36,38,36,38,36,38,36,36,38,36,36,36,38,38,36,38,36,38,36,38,36,38,36,38,36,38,36,38,0,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,0,0,0,52,53,54,52,53,54,54,52,53,54,52,53,54,52,53,54,52,53,54,52,52,53,54,52,53,54,52,53,54,52,53,54,52,53,54,53,52,53,54,52,53,54,52,53,54,52,53,54,0,52,53,54,52,53,54,52,53,54,52,53,54],"f":"````{{b{f{d}}h{n{{l{j}}}}}{{Af{{Ab{A`}}{Ab{Ad}}}}}}`````````{{{f{c}}Ah}Aj{}}`{{{f{Al}}An}Aj}{{{f{B`Al}}d}Aj}0{{{f{c}}}{{f{e}}}{}{}}00{{{f{B`c}}}{{f{B`e}}}{}{}}00{{{f{Al}}}Al}{{{f{Al}}}{{Ab{Ad}}}}{{{f{c}}{f{B`e}}}Aj{}{}}{{{f{c}}}Aj{}}{{{f{Al}}{f{{Bd{Bb}}}}}{{Bh{Bf}}}}{{{f{Al}}{f{{Bd{Bj}}}}}{{Bh{Bf}}}}````{Bl{{f{c}}}{}}00{Bl{{f{B`c}}}{}}00{{{f{c}}{f{B`e}}}{{C`{{Bn{gi}}}}}{}{}{}{}}00{BlAj}00````{cc{}}00{{{f{c}}}c{}}{{{f{Al}}{f{Cb}}}{{Bh{Cd}}}}{{{f{Al}}{f{Cf}}{f{Cb}}}{{Af{{Bh{{Ch{Bb}}}}d}}}}{{{f{Al}}{f{Cb}}}{{Af{{Bh{Bj}}d}}}}{{{f{Al}}}Bl}0{{{f{Al}}}{{Bh{Cj}}}}1{{}Bl}00{ce{}{}}00{c{{Cl{e}}}{}{}}00`{{}{{C`{CnD`}}}}00{{{f{B`Al}}{f{{Bd{Cj}}}}}Aj}````{f}00{{{f{B`Db}}}Aj}{{{f{c}}}e{}{}}{c{{C`{e}}}{}{}}00000{{{f{c}}}Dd{}}00{{{Ab{c}}}{{Ab{Df}}}{}}00{{{f{B`c}}}{{f{B`Df}}}{}}00{{{f{c}}}{{f{Df}}}{}}00;;;````{{{f{c}}Ah}Aj{}}{{{f{B`Dh}}An}Aj}{{{f{B`Dh}}d}Aj}{{{f{c}}}{{f{e}}}{}{}}0{{{f{B`c}}}{{f{B`e}}}{}{}}0`{{{f{B`{Dn{DjDl}}}}{f{Cj}}{f{Cj}}}Aj}{{{f{B`Dh}}}Aj}{{{f{Dl}}}Dl}{{{f{c}}{f{B`e}}}Aj{}{}}{{{f{c}}}Aj{}}``{Bl{{f{c}}}{}}0{Bl{{f{B`c}}}{}}0{{{f{c}}{f{B`e}}}{{C`{{Bn{gi}}}}}{}{}{}{}}0{BlAj}0{{{f{Dl}}{f{Dl}}}Bf}{{{f{Dl}}{f{B`E`}}}Eb}{cc{}}0{{{f{c}}}c{}}{{{f{Dh}}{f{Cb}}}{{Bh{Cd}}}}{{bh}Dh}{{}Bl}0{ce{}{}}0{c{{Cl{e}}}{}{}}0`{{}{{C`{CnD`}}}}0{{{f{Dh}}}Bl}{{{f{B`Dh}}{f{{Bd{Cj}}}}}Aj}{f}0{{{f{c}}}e{}{}}{c{{C`{e}}}{}{}}000{{{f{c}}}Dd{}}0{{{Ab{c}}}{{Ab{Df}}}{}}0{{{f{B`c}}}{{f{B`Df}}}{}}0{{{f{c}}}{{f{Df}}}{}}0;;`{{{f{B`Ed}}d}Aj}{{{f{c}}}{{f{e}}}{}{}}{{{f{B`c}}}{{f{B`e}}}{}{}}``{{{f{Ed}}{f{Bb}}}Bf}{Bl{{f{c}}}{}}{Bl{{f{B`c}}}{}}{{{f{c}}{f{B`e}}}{{C`{{Bn{gi}}}}}{}{}{}{}}{BlAj}``{cc{}}{{{f{Ed}}{f{Cb}}{f{Cf}}}{{Af{{Bh{{Ch{Bb}}}}d}}}}{{b{f{d}}h{n{{l{j}}}}}Ed}{{}Bl}{ce{}{}}{c{{Cl{e}}}{}{}}`{{}{{C`{CnD`}}}}{{{f{Ed}}}Bl}{{{f{B`Ed}}{f{{Bd{Cj}}}}}Aj}{f}`{c{{C`{e}}}{}{}}0{{{f{c}}}Dd{}}{{{Ab{c}}}{{Ab{Df}}}{}}{{{f{B`c}}}{{f{B`Df}}}{}}{{{f{c}}}{{f{Df}}}{}}:``{{{f{B`Ef}}d}Aj}{{{f{c}}}{{f{e}}}{}{}}{{{f{B`c}}}{{f{B`e}}}{}{}}``{{{f{Ef}}{f{Bj}}}Bf}{Bl{{f{c}}}{}}{Bl{{f{B`c}}}{}}{{{f{c}}{f{B`e}}}{{C`{{Bn{gi}}}}}{}{}{}{}}{BlAj}{{{f{B`Ef}}{f{{El{EhEj}}}}}Aj}{cc{}}{{{f{Ef}}{f{Cb}}}{{Af{{Bh{Bj}}d}}}}{{{f{Ef}}}{{El{BjBf}}}}{{{f{B`Ef}}}{{En{Cb}}}}{{{f{Ef}}}{{El{EhEj}}}}{{}Bl}{{b{f{d}}h{n{{l{j}}}}}Ef}{ce{}{}}{c{{Cl{e}}}{}{}}`{{}{{C`{CnD`}}}}{{{f{Ef}}}Bl}{{{f{B`Ef}}{f{{Bd{Cj}}}}}Aj}{f}{{{f{B`Ef}}{f{{El{BjBf}}}}{f{{En{Cb}}}}{f{{El{EhEj}}}}}Aj}{{{f{B`Ef}}}Aj}{{{f{Ef}}{f{{El{BjBf}}}}{f{{En{Cb}}}}}{{El{BjF`}}}}``1{c{{C`{e}}}{}{}}0{{{f{c}}}Dd{}}{{{Ab{c}}}{{Ab{Df}}}{}}{{{f{B`c}}}{{f{B`Df}}}{}}{{{f{c}}}{{f{Df}}}{}}=``{{{f{c}}Ah}Aj{}}{{{f{c}}}{{f{e}}}{}{}}{{{f{B`c}}}{{f{B`e}}}{}{}}{{{f{Fb}}}Fb}{{{f{c}}{f{B`e}}}Aj{}{}}{{{f{c}}}Aj{}}`{Bl{{f{c}}}{}}{Bl{{f{B`c}}}{}}{{{f{c}}{f{B`e}}}{{C`{{Bn{gi}}}}}{}{}{}{}}{BlAj}`{{{f{Fb}}{f{B`E`}}}Eb}{cc{}}{{{f{Fd}}CjEjFfCjCj}Fb}{{{f{c}}}c{}}`{{}Bl}{ce{}{}}{c{{Cl{e}}}{}{}}{{}{{C`{CnD`}}}}``{f}``{{{f{c}}}e{}{}}{c{{C`{e}}}{}{}}0{{{f{c}}}Dd{}}{{{Ab{c}}}{{Ab{Df}}}{}}{{{f{B`c}}}{{f{B`Df}}}{}}{{{f{c}}}{{f{Df}}}{}}`9```{{{f{c}}}{{f{e}}}{}{}}00{{{f{B`c}}}{{f{B`e}}}{}{}}00`{Bl{{f{c}}}{}}00{Bl{{f{B`c}}}{}}00{{{f{c}}{f{B`e}}}{{C`{{Bn{gi}}}}}{}{}{}{}}00{BlAj}00`{cc{}}00{{}Bl}00{ce{}{}}00{c{{Cl{e}}}{}{}}00{{}{{C`{CnD`}}}}00`{f}00```{FhAj}{{Fjb}Aj}{FlAj}{{{G`{Fn}}{n{{l{Ed}}}}}{{Gb{Aj}}}}{{{G`{Fn}}{n{{l{Ef}}}}b}{{Gb{Aj}}}}{{{G`{Fn}}{n{{l{Dh}}}}}{{Gb{Aj}}}}{{b{f{d}}h{n{{l{j}}}}}{{Af{{Ab{A`}}{Ab{Ad}}}}}}{c{{C`{e}}}{}{}}00000{{{f{c}}}Dd{}}00<<<","D":"A@`","p":[[5,"PoolConfig",341],[5,"Storage",342],[1,"reference"],[5,"PoolChannels",343],[5,"Wallet",344],[8,"RwLock",345],[5,"Arc",346],[10,"PoolManager",347],[5,"Box",348],[10,"PoolController",347],[1,"tuple"],[5,"Private",349],[1,"unit"],[5,"PoolControllerImpl",7],[6,"DenunciationPrecursor",350],[0,"mut"],[6,"EndorsementId",351],[1,"slice"],[1,"bool"],[5,"Vec",352],[6,"OperationId",353],[1,"usize"],[5,"With",354],[6,"Result",355],[5,"Slot",356],[6,"Denunciation",350],[6,"BlockId",357],[6,"Option",358],[1,"u64"],[5,"Request",359],[5,"Layout",360],[5,"LayoutError",360],[5,"PoolManagerImpl",7],[5,"TypeId",361],[10,"Any",361],[5,"DenunciationPool",106],[6,"DenunciationIndex",350],[6,"DenunciationStatus",106],[5,"BTreeMap",362],[5,"Formatter",363],[8,"Result",363],[5,"EndorsementPool",168],[5,"OperationPool",201],[6,"Address",364],[5,"Amount",365],[8,"PreHashMap",366],[5,"BTreeSet",367],[1,"f32"],[5,"OperationInfo",241],[8,"SecureShareOperation",353],[1,"u8"],[5,"EndorsementPoolThread",277],[5,"OperationPoolThread",277],[5,"DenunciationPoolThread",277],[6,"Command",7],[5,"Receiver",368],[5,"JoinHandle",369]],"r":[[4,277]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAANUALgAGAAAADwAAABQABgAcAAEAJAALADcAAAA/AAIARQACAEkAAgBRAAIAVQAVAG0AAABvAAAAcgADAHkAAgB+AAkAigAAAIwAAgCRAAEAlAABAJgAEQCrAAEAsAADALgAAQC7AAAAvQAAAMAAAADCAAYAygAAAMwAAQDRAAMA2wABAN4AAADgAAAA4wAAAOoABgDyAA0AAQEDAAYBAQAKAQsAGQEFACABCwAwAQIANgEFAD0BAgBKAQsA"}],\ ["massa_pos_exports",{"t":"PPFFFFFFFPPFFPFPPPPFFFFFGIFFFFPFFKKOOOOOOOOOOOOOOOOMOQQCOCOOOOOOCOOOOOCOOOQQOOOOCMOQQOMMMOOOOOOOOOOOOOCCQQQQQQOOOOOOOOOQQOQQQQOOOOOCOOMOOOOOOOOOOOOOOMFNNNNNONNNONNOOOOONNNNNFKKNNNMNNONNNNNMNNNMMMNNOMNNNNNMFFFFFFFFFOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOONNNNNNNNNFFFFFOOOONNNNNNNNNNNNNNNNNNNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOOONNNNNPPPPPPPPPGIPNNNNNNNNNNNNNNNNNFFFOOONNNNNNNNNNNOOONNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNNNONNNSSSSSFSSNNNHNNNNONNONOOOOONNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNOONNNNNFNNONNNNONNNONNOONONNNNN","n":["ChannelDown","ContainerInconsistency","CreditsDeserializer","CreditsSerializer","CycleHistoryDeserializer","CycleHistorySerializer","CycleInfo","CycleInfoDeserializer","CycleInfoSerializer","CycleUnavailable","CycleUnfinished","DeferredCredits","DeferredCreditsDeserializer","DeferredCreditsFileLoadingError","DeferredCreditsSerializer","Err","InvalidRollDistribution","Ok","OverflowError","PoSChanges","PoSChangesDeserializer","PoSChangesSerializer","PoSConfig","PoSFinalState","PosError","PosResult","ProductionStats","ProductionStatsDeserializer","ProductionStatsSerializer","RollsDeserializer","RollsFileLoadingError","Selection","SelectorConfig","SelectorController","SelectorManager","address_deserializer","address_deserializer","address_deserializer","address_ser","address_ser","address_ser","address_serializer","amount_deserializer","amount_ser","bit_vec_deserializer","bit_vec_serializer","bitvec_deser","bitvec_ser","block_failure_count","block_success_count","channel_size","clone_box","complete","complete_key","complete_key","config","config","controller_traits","credit_deserializer","credits","credits_ser","cycle","cycle_history_cache","cycle_history_length","cycle_info","cycle_info_deserializer","cycle_info_deserializer","cycle_info_serializer","cycle_info_serializer","db","deferred_credits","deferred_credits","deferred_credits_deserializer","deferred_credits_deserializer","deferred_credits_key","deferred_credits_key","deferred_credits_serializer","deferred_credits_serializer","endorsement_count","endorsements","error","feed_cycle","final_state_hash_snapshot","final_state_hash_snapshot_key","final_state_hash_snapshot_key","genesis_address","get_available_selections_in_range","get_producer","get_selection","initial_deferred_credits_path","initial_rolls","initial_seeds","length_deserializer","length_deserializer","max_credit_length","max_draw_cache","max_production_stats_length","max_rolls_length","opt_hash_deser","opt_hash_ser","periods_per_cycle","periods_per_cycle","pos_changes","pos_final_state","prod_stats_fail_key","prod_stats_fail_key","prod_stats_prefix","prod_stats_prefix","prod_stats_success_key","prod_stats_success_key","producer","production_stats","production_stats","production_stats_deser","production_stats_deserializer","production_stats_ser","production_stats_serializer","rng_seed","rng_seed_cache","rng_seed_key","rng_seed_key","roll_changes","roll_count_key","roll_count_key","roll_count_prefix","roll_count_prefix","roll_counts","rolls_deser","rolls_deserializer","seed_bits","selector","settings","slot_deserializer","slot_ser","stop","thread_count","thread_count","u64_deser","u64_deserializer","u64_deserializer","u64_deserializer","u64_deserializer","u64_deserializer","u64_ser","u64_ser","u64_ser","u64_ser","u64_serializer","u64_serializer","wait_for_draws","PoSConfig","borrow","borrow_mut","clone","clone_into","clone_to_uninit","cycle_history_length","fmt","from","from_ref","initial_deferred_credits_path","into","into_request","max_credit_length","max_production_stats_length","max_rolls_length","periods_per_cycle","thread_count","to_owned","try_from","try_into","type_id","vzip","Selection","SelectorController","SelectorManager","borrow","borrow_mut","clone","clone_box","clone_into","clone_to_uninit","endorsements","eq","equivalent","equivalent","equivalent","equivalent","feed_cycle","fmt","from","from_ref","get_available_selections_in_range","get_producer","get_selection","into","into_request","producer","stop","to_owned","try_from","try_into","type_id","vzip","wait_for_draws","CycleHistoryDeserializer","CycleHistorySerializer","CycleInfo","CycleInfoDeserializer","CycleInfoSerializer","ProductionStats","ProductionStatsDeserializer","ProductionStatsSerializer","RollsDeserializer","address_deserializer","address_deserializer","address_ser","address_ser","bitvec_deser","bitvec_ser","block_failure_count","block_success_count","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","complete","cycle","cycle_info_deserializer","cycle_info_serializer","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extend","final_state_hash_snapshot","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_satisfying","length_deserializer","length_deserializer","new","new","new","new","new","new","new","new","opt_hash_deser","opt_hash_ser","production_stats","production_stats_deser","production_stats_ser","rng_seed","roll_counts","rolls_deser","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u64_deser","u64_deserializer","u64_deserializer","u64_deserializer","u64_ser","u64_ser","u64_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","CreditsDeserializer","CreditsSerializer","DeferredCredits","DeferredCreditsDeserializer","DeferredCreditsSerializer","address_deserializer","address_ser","amount_deserializer","amount_ser","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","credit_deserializer","credits","credits_ser","default","default","default","deserialize","deserialize","deserialize","extend","fmt","for_each","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","get_address_credits_for_slot","get_slot_range","insert","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","is_empty","new","new","new","new","new","remove_zeros","serialize","serialize","serialize","slot_deserializer","slot_ser","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","u64_deserializer","u64_deserializer","u64_ser","u64_ser","vzip","vzip","vzip","vzip","vzip","ChannelDown","ContainerInconsistency","CycleUnavailable","CycleUnfinished","DeferredCreditsFileLoadingError","Err","InvalidRollDistribution","Ok","OverflowError","PosError","PosResult","RollsFileLoadingError","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","from_ref","into","into_request","to_owned","to_string","try_from","try_into","type_id","vzip","PoSChanges","PoSChangesDeserializer","PoSChangesSerializer","address_serializer","bit_vec_deserializer","bit_vec_serializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","default","default","deferred_credits","deferred_credits_deserializer","deferred_credits_serializer","deserialize","deserialize","extend","fmt","from","from","from","from_ref","into","into","into","into_request","into_request","into_request","is_empty","new","new","production_stats","production_stats_deserializer","production_stats_serializer","roll_changes","rolls_deserializer","seed_bits","serialize","serialize","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_serializer","vzip","vzip","vzip","COMPLETE_IDENT","FINAL_STATE_HASH_SNAPSHOT_IDENT","PROD_STATS_FAIL_IDENT","PROD_STATS_IDENT","PROD_STATS_SUCCESS_IDENT","PoSFinalState","RNG_SEED_IDENT","ROLL_COUNT_IDENT","apply_changes_to_batch","borrow","borrow_mut","buf_to_array_ctr","clone","clone_into","clone_to_uninit","compute_initial_draws","config","create_initial_cycle","create_new_cycle_from_last","cycle_history_cache","cycle_history_cycle_prefix","cycle_info_deserializer","cycle_info_serializer","db","deferred_credits_deserializer","deferred_credits_serializer","delete_cycle_info","feed_cycle_state_hash","feed_selector","from","from_ref","get_address_active_rolls","get_address_credits_for_slot","get_all_active_rolls","get_all_production_stats","get_all_production_stats_private","get_all_roll_counts","get_cycle_history_cycles","get_cycle_history_final_state_hash_snapshot","get_cycle_history_rng_seed","get_cycle_index","get_cycle_info","get_deferred_credits_range","get_production_stats_for_address","get_rolls_for","initial_rolls","initial_seeds","into","into_request","is_cycle_complete","is_cycle_history_key_value_valid","is_deferred_credits_key_value_valid","load_initial_deferred_credits","new","put_cycle_history_address_entry","put_cycle_history_complete","put_cycle_history_final_state_hash_snapshot","put_cycle_history_rng_seed","put_deferred_credits_entry","put_new_cycle_info","recompute_pos_state_caches","reset","rng_seed_cache","selector","to_owned","try_from","try_into","type_id","vzip","SelectorConfig","borrow","borrow_mut","channel_size","clone","clone_into","clone_to_uninit","deserialize","endorsement_count","fmt","from","from_ref","genesis_address","into","into_request","max_draw_cache","periods_per_cycle","serialize","thread_count","to_owned","try_from","try_into","type_id","vzip"],"q":[[0,"massa_pos_exports"],[150,"massa_pos_exports::config"],[173,"massa_pos_exports::controller_traits"],[205,"massa_pos_exports::cycle_info"],[406,"massa_pos_exports::deferred_credits"],[516,"massa_pos_exports::error"],[545,"massa_pos_exports::pos_changes"],[604,"massa_pos_exports::pos_final_state"],[673,"massa_pos_exports::settings"],[697,"alloc::boxed"],[698,"massa_models::address"],[699,"alloc::collections::btree::map"],[700,"massa_hash::hash"],[701,"massa_models::slot"],[702,"core::ops::range"],[703,"massa_models::prehash"],[704,"core::option"],[705,"core::fmt"],[706,"tonic::request"],[707,"core::result"],[708,"core::any"],[709,"nom::internal"],[710,"nom::error"],[711,"serde::de"],[712,"alloc::vec"],[713,"num_rational"],[714,"bitvec::vec"],[715,"massa_serialization"],[716,"serde::ser"],[717,"alloc::collections::vec_deque"],[718,"massa_models::amount"],[719,"core::ops::function"],[720,"alloc::string"],[721,"massa_db_exports::db_batch"],[722,"massa_hash::hash_xof"],[723,"std::path"],[724,"massa_db_exports::controller"]],"i":[55,55,0,0,0,0,0,0,0,55,55,0,0,55,0,9,55,9,55,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,0,29,30,51,25,28,50,58,51,50,59,58,26,25,27,27,70,1,24,0,0,0,60,0,49,47,48,24,60,17,0,32,60,31,60,60,0,57,59,60,0,0,58,60,70,14,0,1,24,0,0,70,1,1,1,17,60,60,29,30,17,70,17,17,26,25,17,70,0,0,0,0,0,0,0,0,14,24,57,26,59,25,58,24,60,0,0,57,0,0,0,0,24,26,59,57,60,0,49,48,16,17,70,26,29,30,32,49,51,25,28,48,50,58,31,1,0,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,0,0,0,14,14,14,1,14,14,14,14,14,14,14,14,1,14,14,14,1,1,1,14,14,14,16,14,14,14,14,14,1,0,0,0,0,0,0,0,0,0,29,30,25,28,26,25,27,27,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,27,28,29,30,31,32,24,24,32,31,25,27,28,31,26,27,29,30,32,24,27,24,24,24,24,27,27,27,27,27,24,24,27,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,27,29,30,24,25,26,28,29,30,31,32,26,25,24,26,25,24,24,26,25,27,28,31,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,24,25,26,27,28,29,30,31,32,26,29,30,32,25,28,31,24,25,26,27,28,29,30,31,32,0,0,0,0,0,51,50,51,50,47,48,49,50,51,47,48,49,50,51,47,48,49,50,51,47,48,49,50,51,47,48,49,50,51,49,47,48,47,48,50,47,49,51,47,47,47,47,48,49,50,51,47,48,49,50,51,47,47,47,47,48,49,50,51,47,48,49,50,51,47,47,48,49,50,51,47,47,48,50,49,48,47,48,49,50,51,47,48,49,50,51,47,48,49,50,51,47,48,49,50,51,49,51,48,50,47,48,49,50,51,55,55,55,55,55,9,55,9,55,0,0,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,0,0,0,58,59,58,58,59,57,58,59,57,57,57,57,58,57,57,59,58,59,57,57,57,58,59,57,57,58,59,57,58,59,57,57,58,59,57,59,58,57,59,57,58,57,57,58,59,57,58,59,57,58,59,57,58,58,59,57,0,0,0,0,0,0,0,0,60,60,60,0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,0,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70],"f":"```````````````````````````````````````````````````{{{d{b}}}{{f{b}}}}`````````````````````````````{{{d{b}}h{l{jh}}n}{{Ab{A`}}}}````{{{d{b}}{Af{Ad}}{Aj{{d{{Ah{j}}}}}}}{{Ab{{l{AdAl}}}}}}{{{d{b}}Ad}{{Ab{j}}}}{{{d{b}}Ad}{{Ab{Al}}}}`````````````````````````````````````````````{{{d{AnB`}}}A`}``````````````{{{d{b}}h}{{Ab{h}}}}`{{{d{c}}}{{d{e}}}{}{}}{{{d{Anc}}}{{d{Ane}}}{}{}}{{{d{Bb}}}Bb}{{{d{c}}{d{Ane}}}A`{}{}}{{{d{c}}}A`{}}`{{{d{Bb}}{d{AnBd}}}Bf}{cc{}}{{{d{c}}}c{}}`{ce{}{}}{c{{Bh{e}}}{}{}}`````{{{d{c}}}e{}{}}{c{{Bj{e}}}{}{}}0{{{d{c}}}Bl{}}4```<;{{{d{Al}}}Al}{{{d{b}}}{{f{b}}}};:`{{{d{Al}}{d{Al}}}Bn}{{{d{c}}{d{e}}}Bn{}{}}000{{{d{b}}h{l{jh}}n}{{Ab{A`}}}}{{{d{Al}}{d{AnBd}}}Bf}<;{{{d{b}}{Af{Ad}}{Aj{{d{{Ah{j}}}}}}}{{Ab{{l{AdAl}}}}}}{{{d{b}}Ad}{{Ab{j}}}}{{{d{b}}Ad}{{Ab{Al}}}}=<`{{{d{AnB`}}}A`}<;;:>{{{d{b}}h}{{Ab{h}}}}`````````````````{{{d{c}}}{{d{e}}}{}{}}00000000{{{d{Anc}}}{{d{Ane}}}{}{}}00000000{{{d{C`}}}C`}{{{d{Cb}}}Cb}{{{d{Cd}}}Cd}{{{d{Cf}}}Cf}{{{d{Ch}}}Ch}{{{d{Cj}}}Cj}{{{d{Cl}}}Cl}{{{d{Cn}}}Cn}{{{d{D`}}}D`}{{{d{c}}{d{Ane}}}A`{}{}}00000000{{{d{c}}}A`{}}000000000````{{}Cb}{{}Cf}{{}Ch}{{}Cn}{{{d{Cd}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}C`c}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{c{{Bj{Cf}}}Dl}{{{d{Cj}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}{Dn{jCf}}c}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{{{d{Cl}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}{Eb{{E`{jh}}}}c}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{{{d{D`}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}{Eb{C`}}c}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{{{d{C`}}{d{C`}}}Bn}{{{d{Cf}}{d{Cf}}}Bn}{{{d{c}}{d{e}}}Bn{}{}}0000000{{{d{AnCf}}{d{Cf}}}A`}`{{{d{C`}}{d{AnBd}}}Bf}{{{d{Cf}}{d{AnBd}}}Bf}{cc{}}00000000{{{d{c}}}c{}}00000000{ce{}{}}00000000{c{{Bh{e}}}{}{}}00000000{{{d{Cf}}{d{{Ed{h}}}}}Bn}``{{hBn{l{jh}}{Ef{Db}}{Dn{jCf}}}C`}{{}Cb}{{hh}Cd}{{}Ch}{hCj}{hCl}{{}Cn}{{hhh}D`}````````{{{d{Cb}}{d{C`}}{d{An{Eb{Db}}}}}{{Bj{A`Eh}}}}{{{d{Cf}}c}BjEj}{{{d{Ch}}{d{{Dn{jCf}}}}{d{An{Eb{Db}}}}}{{Bj{A`Eh}}}}{{{d{Cn}}{d{{El{C`}}}}{d{An{Eb{Db}}}}}{{Bj{A`Eh}}}}{{{d{c}}}e{}{}}00000000{c{{Bj{e}}}{}{}}00000000000000000{{{d{c}}}Bl{}}00000000```````{ce{}{}}00000000`````````{{{d{c}}}{{d{e}}}{}{}}0000{{{d{Anc}}}{{d{Ane}}}{}{}}0000{{{d{En}}}En}{{{d{F`}}}F`}{{{d{Fb}}}Fb}{{{d{Fd}}}Fd}{{{d{Ff}}}Ff}{{{d{c}}{d{Ane}}}A`{}{}}0000{{{d{c}}}A`{}}0000```{{}En}{{}F`}{{}Fd}{c{{Bj{En}}}Dl}{{{d{Fb}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}Enc}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{{{d{Ff}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}{Dn{jFh}}c}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{{{d{AnEn}}En}A`}{{{d{En}}{d{AnBd}}}Bf}{{{d{AnEn}}c}A`{{Fj{{d{Ad}}{d{j}}{d{AnFh}}}}}}{cc{}}0000{{{d{c}}}c{}}0000{{{d{En}}{d{j}}{d{Ad}}}{{Aj{Fh}}}}{{{d{En}}c}En{{Fl{Ad}}}}{{{d{AnEn}}AdjFh}{{Aj{Fh}}}}{ce{}{}}0000{c{{Bh{e}}}{}{}}0000{{{d{En}}}Bn}{{}En}{{}F`}{{Dbh}Fb}{{}Fd}{hFf}{{{d{AnEn}}}A`}{{{d{En}}c}BjEj}{{{d{F`}}{d{En}}{d{An{Eb{Db}}}}}{{Bj{A`Eh}}}}{{{d{Fd}}{d{{Dn{jFh}}}}{d{An{Eb{Db}}}}}{{Bj{A`Eh}}}}``{{{d{c}}}e{}{}}0000{c{{Bj{e}}}{}{}}000000000{{{d{c}}}Bl{}}0000````>>>>>````````````{{{d{c}}}{{d{e}}}{}{}}{{{d{Anc}}}{{d{Ane}}}{}{}}{{{d{Fn}}}Fn}{{{d{c}}{d{Ane}}}A`{}{}}{{{d{c}}}A`{}}{{{d{Fn}}{d{AnBd}}}Bf}0{cc{}}{{{d{c}}}c{}}{ce{}{}}{c{{Bh{e}}}{}{}}<{{{d{c}}}G`{}}<<;2``````:::999{{{d{Gb}}}Gb}87{{}Gd}{{}Gb}```{{{d{Gf}}{d{{Dd{Db}}}}}{{Df{{d{{Dd{Db}}}}Gbc}}}{{Dh{{d{{Dd{Db}}}}}}{Dj{{d{{Dd{Db}}}}}}}}{c{{Bj{Gb}}}Dl}{{{d{AnGb}}Gb}A`}{{{d{Gb}}{d{AnBd}}}Bf};;;:999888{{{d{Gb}}}Bn}6{{Dbhhh}Gf}``````{{{d{Gd}}{d{Gb}}{d{An{Eb{Db}}}}}{{Bj{A`Eh}}}}{{{d{Gb}}c}BjEj}{{{d{c}}}e{}{}}{c{{Bj{e}}}{}{}}00000{{{d{c}}}Bl{}}00`{ce{}{}}00````````{{{d{AnGh}}GbAdBn{d{AnGj}}}{{Ab{A`}}}}{{{d{c}}}{{d{e}}}{}{}}{{{d{Anc}}}{{d{Ane}}}{}{}}{{{d{{Dd{Db}}}}e}{{Aj{{E`{{d{{Dd{Db}}}}c}}}}}{}{{H`{{d{{Gl{Db}}}}}{{Gn{c}}}}}}{{{d{Gh}}}Gh}{{{d{c}}{d{Ane}}}A`{}{}}{{{d{c}}}A`{}}{{{d{AnGh}}}{{Ab{A`}}}}`{{{d{AnGh}}{d{AnGj}}}A`}{{{d{AnGh}}{d{C`}}AdAd{d{AnGj}}}{{Bj{A`Fn}}}}`{{{d{Gh}}h}{{Eb{Db}}}}`````{{{d{AnGh}}h{d{AnGj}}}A`}{{{d{Gh}}hHb}A`}{{{d{Gh}}h}{{Ab{A`}}}}{cc{}}{{{d{c}}}c{}}{{{d{Gh}}{d{j}}h}{{Aj{h}}}}{{{d{Gh}}{d{j}}{d{Ad}}}{{Aj{Fh}}}}{{{d{Gh}}h}{{l{jh}}}}{{{d{Gh}}h}{{Aj{{Dn{jCf}}}}}}{{{d{Gh}}h}{{Dn{jCf}}}}2{{{d{Gh}}}{{Eb{{E`{hBn}}}}}}{{{d{Gh}}h}{{Aj{Hb}}}}{{{d{Gh}}h}{{Aj{{Ef{Db}}}}}}{{{d{Gh}}h}{{Aj{Hd}}}}{{{d{Gh}}h}{{Aj{C`}}}}{{{d{Gh}}c{Aj{{d{j}}}}}En{{Fl{Ad}}}}{{{d{Gh}}h{d{j}}}{{Aj{Cf}}}}{{{d{Gh}}{d{j}}}h}``{ce{}{}}{c{{Bh{e}}}{}{}}{{{d{Gh}}h}{{Aj{Bn}}}}{{{d{Gh}}{d{{Dd{Db}}}}{d{{Dd{Db}}}}}Bn}0{{{d{AnGh}}{d{AnGj}}}{{Bj{A`Fn}}}}{{Bb{d{Hf}}{d{Hh}}{f{b}}Hj}{{Bj{GhFn}}}}{{{d{Gh}}h{d{j}}{Aj{{d{h}}}}{Aj{{d{Cf}}}}{d{AnGj}}}A`}{{{d{AnGh}}hBn{d{AnGj}}}A`}{{{d{Gh}}h{Aj{Hb}}{d{AnGj}}}A`}{{{d{AnGh}}h{Ef{Db}}{d{AnGj}}}A`}{{{d{Gh}}{d{Ad}}{d{j}}{d{Fh}}{d{AnGj}}}A`}{{{d{AnGh}}{d{C`}}{d{AnGj}}}A`}{{{d{AnGh}}}A`}0``{{{d{c}}}e{}{}}{c{{Bj{e}}}{}{}}0{{{d{c}}}Bl{}}?`{{{d{c}}}{{d{e}}}{}{}}{{{d{Anc}}}{{d{Ane}}}{}{}}`{{{d{Hl}}}Hl}{{{d{c}}{d{Ane}}}A`{}{}}{{{d{c}}}A`{}}{c{{Bj{Hl}}}Dl}`{{{d{Hl}}{d{AnBd}}}Bf}{cc{}}{{{d{c}}}c{}}`{ce{}{}}{c{{Bh{e}}}{}{}}``{{{d{Hl}}c}BjEj}`>==<2","D":"BCn","p":[[10,"SelectorController",173],[1,"reference"],[5,"Box",697],[1,"u64"],[6,"Address",698],[5,"BTreeMap",699],[5,"Hash",700],[1,"unit"],[8,"PosResult",516],[5,"Slot",701],[5,"RangeInclusive",702],[8,"PreHashSet",703],[6,"Option",704],[5,"Selection",173],[0,"mut"],[10,"SelectorManager",173],[5,"PoSConfig",150],[5,"Formatter",705],[8,"Result",705],[5,"Request",706],[6,"Result",707],[5,"TypeId",708],[1,"bool"],[5,"CycleInfo",205],[5,"CycleInfoSerializer",205],[5,"CycleInfoDeserializer",205],[5,"ProductionStats",205],[5,"ProductionStatsSerializer",205],[5,"ProductionStatsDeserializer",205],[5,"RollsDeserializer",205],[5,"CycleHistorySerializer",205],[5,"CycleHistoryDeserializer",205],[1,"u8"],[1,"slice"],[8,"IResult",709],[10,"ParseError",710],[10,"ContextError",710],[10,"Deserializer",711],[8,"PreHashMap",703],[1,"tuple"],[5,"Vec",712],[5,"Ratio",713],[5,"BitVec",714],[6,"SerializeError",715],[10,"Serializer",716],[5,"VecDeque",717],[5,"DeferredCredits",406],[5,"DeferredCreditsSerializer",406],[5,"DeferredCreditsDeserializer",406],[5,"CreditsSerializer",406],[5,"CreditsDeserializer",406],[5,"Amount",718],[10,"FnMut",719],[10,"RangeBounds",702],[6,"PosError",516],[5,"String",720],[5,"PoSChanges",545],[5,"PoSChangesSerializer",545],[5,"PoSChangesDeserializer",545],[5,"PoSFinalState",604],[8,"DBBatch",721],[1,"array"],[17,"Output"],[10,"Fn",719],[5,"HashXof",722],[1,"usize"],[1,"str"],[5,"PathBuf",723],[8,"ShareableMassaDBController",724],[5,"SelectorConfig",673]],"r":[[2,406],[3,406],[4,205],[5,205],[6,205],[7,205],[8,205],[11,406],[12,406],[14,406],[19,545],[20,545],[21,545],[22,150],[23,604],[24,516],[25,516],[26,205],[27,205],[28,205],[29,205],[31,173],[32,673],[33,173],[34,173]],"b":[[533,"impl-Debug-for-PosError"],[534,"impl-Display-for-PosError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJoBRAAkAAwAOAAAADsAAAA9AAAAQQABAEQAAABHAAAASQAAAE0AAABRAAAAXQABAGMAAQBnAAEAcgADAIAAAQCEAAIAigALAJgABACeAAAAoAAAAKMAAACpAAQAsQACALUAAQC4AAQAvgAAAMAAAADFAAAAyAAEANcABQDfAC0ADwEUACYBAQAxAQgAQwEIAE0BAQBXAQEAWgEBAF4BOACcAR0AuwEGAMMBAADKAQQA1wEEAOMBIQARAgYAGQIAABsCBgAlAg0ANAIDADkCAAA9AgAAQQICAEgCAQBLAgAATQIUAGMCAQBmAgUAewIAAI0CAACdAgQAowIBAKYCAwCrAgAArQIAALACAACzAgAAtQIEAA=="}],\ ["massa_pos_worker",{"t":"GFFIPFPNNNNNNNNOCONCONNNNNNNNNNNNNNNNNONHNNNNNNNNNNNNNNNNNCOOOFFNNNNONNNNNNNNNNNOONNNNONOONNNNNNNNNNHFNNOONONNNNNHNNNN","n":["Command","CycleDraws","DrawCache","DrawCachePtr","DrawInput","RwLockCondvar","Stop","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","condvar","controller","cycle","default","draw","draws","fmt","fmt","from","from","from","from","get","get_available_cycles_range","get_cycle_index","into","into","into","into","into_request","into_request","into_request","into_request","mutex","notify_all","start_selector_worker","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","wait","worker","cycle","lookback_rolls","lookback_seed","SelectorControllerImpl","SelectorManagerImpl","borrow","borrow","borrow_mut","borrow_mut","cache","clone","clone_box","clone_into","clone_to_uninit","feed_cycle","from","from","from_ref","get_available_selections_in_range","get_producer","get_selection","input_mpsc","input_mpsc","into","into","into_request","into_request","periods_per_cycle","stop","thread_count","thread_handle","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","wait_for_draws","perform_draws","SelectorThread","borrow","borrow_mut","cache","cfg","from","input_mpsc","into","into_request","process_draws_result","run","spawn","start_selector_worker","try_from","try_into","type_id","vzip"],"q":[[0,"massa_pos_worker"],[59,"massa_pos_worker::Command"],[62,"massa_pos_worker::controller"],[100,"massa_pos_worker::draw"],[101,"massa_pos_worker::worker"],[118,"core::fmt"],[119,"core::option"],[120,"core::ops::range"],[121,"tonic::request"],[122,"massa_pos_exports::settings"],[123,"massa_pos_exports::controller_traits"],[124,"alloc::boxed"],[125,"massa_pos_exports::error"],[126,"core::result"],[127,"core::any"],[128,"parking_lot::rwlock"],[129,"massa_models::address"],[130,"alloc::collections::btree::map"],[131,"massa_hash::hash"],[132,"massa_models::slot"],[133,"massa_models::prehash"],[134,"std::sync::mpsc"],[135,"alloc::sync"],[136,"std::thread"]],"i":[0,0,0,0,32,0,32,32,4,7,3,32,4,7,3,3,0,7,3,0,7,4,7,32,4,7,3,4,4,4,32,4,7,3,32,4,7,3,3,3,0,32,4,7,3,32,4,7,3,32,4,7,3,32,4,7,3,3,0,37,37,37,0,0,30,23,30,23,23,23,23,23,23,23,30,23,23,23,23,23,30,23,30,23,30,23,23,30,23,30,23,30,23,30,23,30,23,30,23,23,0,0,31,31,31,31,31,31,31,31,31,31,31,0,31,31,31,31],"f":"```````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000```{{}f}``{{{b{h}}{b{dj}}}l}{{{b{n}}{b{dj}}}l}{cc{}}000{{{b{h}}A`}{{Ab{{b{n}}}}}}{{{b{h}}}{{Ab{{Ad{A`}}}}}}{{{b{h}}A`}{{Ab{Af}}}}{ce{}{}}000{c{{Ah{e}}}{}{}}000`{{{b{f}}}Aj}{Al{{Bf{{Bd{{B`{An}}{B`{Bb}}}}}}}}{c{{Bh{e}}}{}{}}0000000{{{b{c}}}Bj{}}0005555{{{b{f}}{b{d{Bl{c}}}}}Aj{}}``````??>>`{{{b{Bn}}}Bn}{{{b{Bn}}}{{B`{Bb}}}}{{{b{c}}{b{de}}}Aj{}{}}{{{b{c}}}Aj{}}{{{b{Bn}}A`{Cb{C`A`}}Cd}{{Bf{Aj}}}}??{{{b{c}}}c{}}{{{b{Bn}}{Ad{Cf}}{Ab{{b{{Ch{C`}}}}}}}{{Bf{{Cb{CfCj}}}}}}{{{b{Bn}}Cf}{{Bf{C`}}}}{{{b{Bn}}Cf}{{Bf{Cj}}}}``??>>`{{{b{dCl}}}Aj}``{{{b{c}}}e{}{}}====<<{ce{}{}}0{{{b{Bn}}A`}{{Bf{A`}}}}{{{b{Al}}A`{Cb{C`A`}}Cd}{{Bf{n}}}}`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}``{cc{}}`5{c{{Ah{e}}}{}{}}{{{b{Cn}}A`{Bf{n}}}{{Bf{Aj}}}}{Cn{{Bf{Aj}}}}{{{Db{D`}}{Df{{Bd{f{Dd{{Bf{h}}}}}}}}Al}{{Dh{{Bf{Aj}}}}}}{Al{{Bf{{Bd{{B`{An}}{B`{Bb}}}}}}}}{c{{Bh{e}}}{}{}}0{{{b{c}}}Bj{}}<","D":"Fd","p":[[1,"reference"],[0,"mut"],[5,"RwLockCondvar",0],[5,"DrawCache",0],[5,"Formatter",118],[8,"Result",118],[5,"CycleDraws",0],[1,"u64"],[6,"Option",119],[5,"RangeInclusive",120],[1,"usize"],[5,"Request",121],[1,"unit"],[5,"SelectorConfig",122],[10,"SelectorManager",123],[5,"Box",124],[10,"SelectorController",123],[1,"tuple"],[8,"PosResult",125],[6,"Result",126],[5,"TypeId",127],[8,"RwLockReadGuard",128],[5,"SelectorControllerImpl",62],[6,"Address",129],[5,"BTreeMap",130],[5,"Hash",131],[5,"Slot",132],[8,"PreHashSet",133],[5,"Selection",123],[5,"SelectorManagerImpl",62],[5,"SelectorThread",101],[6,"Command",0],[5,"Receiver",134],[8,"RwLock",128],[5,"Arc",135],[5,"JoinHandle",136],[15,"DrawInput",59]],"r":[[40,101]],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEQAEQAAAAAABgAAAAgACAATAAEAFgABACMABQAqABQAQQADAEYAAABIAAEATQAAAFUAAQBbAAgAZwABAGwAAABuAAAAcwADAA=="}],\ -["massa_protocol_exports",{"t":"FFFPPPPPPPPPPPPPPPFPGFPFFFPFKGKPPPPPGPPPOOOMOCNNNNOONNMNNNNNNOCOONNNNNNNONNNNNNNNNNCONNNNNNNOMNMNNNOMNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOMOOOOCOOOOOMMOOOOOMNCMMOOOOOOONNOONNNNNNOOMONNOOOOFFFFNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOONNOOOONNNNNNNNNNNNNNNNNONNNNKKMMMMMMMMMMMMPPPPPPPPPPPPPGPPPPPGPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNFFOOOONNNNONNNNNNNOOONNNNNNNNOONNNNNNONNONNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNOONNNNNNOONN","n":["BootstrapPeers","BootstrapPeersDeserializer","BootstrapPeersSerializer","ChannelError","ContainerInconsistencyError","FactoryError","GeneralProtocolError","IN","IOError","IncompatibleNetworkVersion","InvalidBlock","InvalidIpError","InvalidOperationError","ListenerError","MissingPeersError","ModelsError","OUT","OutdatedAnnouncedNetworkVersion","PeerCategoryInfo","PeerConnectionError","PeerConnectionType","PeerData","PeerDisconnected","PeerId","PeerIdDeserializer","PeerIdSerializer","PosError","ProtocolConfig","ProtocolController","ProtocolError","ProtocolManager","Quic","SendError","SerdeError","Tcp","TimeError","TransportType","UnexpectedNodeCommandChannelClosure","UnexpectedWriterClosure","WrongSignature","allow_local_peers","ask_block_timeout","asked_operations_buffer_capacity","ban_peers","block_propagation_tick","bootstrap_peers","borrow","borrow","borrow_mut","borrow_mut","category","chain_id","clone","clone","clone_box","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","controller_channel_size","controller_trait","debug","default_category_info","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","endorsement_count","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error","event_channel_size","fmt","fmt","from","from","from_ref","from_ref","from_transport_config","genesis_timestamp","get_bootstrap_peers","get_hash","get_stats","hash","init","init","initial_peers","integrated_block","into","into","into_request","into_request","ip_addr_deserializer","ip_addr_serializer","keypair_file","last_start_period","length_deserializer","length_listeners_deserializer","listeners","listeners","max_block_propagation_time","max_blocks_kept_for_propagation","max_denunciations_in_block_header","max_endorsements_per_message","max_endorsements_propagation_time","max_in_connections","max_in_connections","max_in_connections_per_ip","max_known_blocks_size","max_known_endorsements_size","max_known_ops_size","max_message_size","max_node_known_blocks_size","max_node_known_endorsements_size","max_node_known_ops_size","max_node_wanted_blocks_size","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operation_storage_time","max_operations_per_block","max_operations_per_message","max_operations_propagation_time","max_ops_kept_for_propagation","max_send_wait","max_serialized_operations_size_per_block","max_simultaneous_ask_blocks_per_node","max_size_call_sc_parameter","max_size_channel_commands_connectivity","max_size_channel_commands_peer_testers","max_size_channel_commands_peers","max_size_channel_commands_propagation_blocks","max_size_channel_commands_propagation_endorsements","max_size_channel_commands_propagation_operations","max_size_channel_commands_retrieval_blocks","max_size_channel_commands_retrieval_endorsements","max_size_channel_commands_retrieval_operations","max_size_channel_network_to_block_handler","max_size_channel_network_to_endorsement_handler","max_size_channel_network_to_operation_handler","max_size_channel_network_to_peer_handler","max_size_function_name","max_size_listeners_per_peer","max_size_peers_announcement","max_size_value_datastore","message_timeout","notify_block_attack","operation_announcement_buffer_capacity","operation_announcement_interval","operation_batch_buffer_capacity","operation_batch_proc_period","peer_id","peer_id_deserializer","peer_id_serializer","peers_categories","port_deserializer","port_serializer","propagate_endorsements","propagate_operations","public_key","public_key_deserializer","rate_limit","read_write_limit_bytes_per_second","routable_ip","send_wishlist_delta","serialize","settings","stop","stop","t0","target_out_connections","test_oldest_peer_cooldown","tester_timeout","thread_count","thread_tester_count","timeout_connection","to_owned","to_owned","try_connection_timer","try_connection_timer_same_peer","try_from","try_from","try_into","try_into","type_id","type_id","u32_serializer","unban_everyone_timer","unban_peers","version","vzip","vzip","announced_received","local","local","received","BootstrapPeers","BootstrapPeersDeserializer","BootstrapPeersSerializer","PeerData","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","category","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from_ref","from_ref","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","ip_addr_deserializer","ip_addr_serializer","length_deserializer","length_listeners_deserializer","listeners","new","new","peer_id_deserializer","peer_id_serializer","port_deserializer","port_serializer","serialize","serialize","serialize","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u32_serializer","vzip","vzip","vzip","vzip","ProtocolController","ProtocolManager","ban_peers","clone_box","get_bootstrap_peers","get_stats","integrated_block","notify_block_attack","propagate_endorsements","propagate_operations","send_wishlist_delta","stop","stop","unban_peers","ChannelError","CloseConnectionWithNoConnectionToClose","ContainerInconsistencyError","FactoryError","GeneralProtocolError","IOError","IncompatibleNetworkVersion","InvalidBlock","InvalidIpError","InvalidOperationError","ListenerError","MissingPeersError","ModelsError","NetworkConnectionErrorType","OutdatedAnnouncedNetworkVersion","PeerConnectionError","PeerDisconnected","PeerInfoNotFoundError","PosError","ProtocolError","SendError","SerdeError","TimeError","ToManyConnectionAttempt","ToManyConnectionFailure","UnexpectedNodeCommandChannelClosure","UnexpectedWriterClosure","WrongSignature","borrow","borrow","borrow_mut","borrow_mut","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","fmt","from","from","from","from","from","from","from","from","init","init","into","into","into_request","into_request","source","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","announced_received","local","local","received","PeerId","PeerIdDeserializer","PeerIdSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","default","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from_public_key","from_ref","from_ref","from_ref","from_str","generate","get_hash","get_public_key","hash","init","init","init","into","into","into","into_request","into_request","into_request","new","new","partial_cmp","public_key","public_key_deserializer","serialize","serialize","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","verify_signature","vzip","vzip","vzip","PeerCategoryInfo","ProtocolConfig","allow_local_peers","ask_block_timeout","asked_operations_buffer_capacity","block_propagation_tick","borrow","borrow","borrow_mut","borrow_mut","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","controller_channel_size","debug","default_category_info","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_count","event_channel_size","fmt","fmt","from","from","from_ref","from_ref","genesis_timestamp","init","init","initial_peers","into","into","into_request","into_request","keypair_file","last_start_period","listeners","max_block_propagation_time","max_blocks_kept_for_propagation","max_denunciations_in_block_header","max_endorsements_per_message","max_endorsements_propagation_time","max_in_connections","max_in_connections","max_in_connections_per_ip","max_known_blocks_size","max_known_endorsements_size","max_known_ops_size","max_message_size","max_node_known_blocks_size","max_node_known_endorsements_size","max_node_known_ops_size","max_node_wanted_blocks_size","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operation_storage_time","max_operations_per_block","max_operations_per_message","max_operations_propagation_time","max_ops_kept_for_propagation","max_send_wait","max_serialized_operations_size_per_block","max_simultaneous_ask_blocks_per_node","max_size_call_sc_parameter","max_size_channel_commands_connectivity","max_size_channel_commands_peer_testers","max_size_channel_commands_peers","max_size_channel_commands_propagation_blocks","max_size_channel_commands_propagation_endorsements","max_size_channel_commands_propagation_operations","max_size_channel_commands_retrieval_blocks","max_size_channel_commands_retrieval_endorsements","max_size_channel_commands_retrieval_operations","max_size_channel_network_to_block_handler","max_size_channel_network_to_endorsement_handler","max_size_channel_network_to_operation_handler","max_size_channel_network_to_peer_handler","max_size_function_name","max_size_listeners_per_peer","max_size_peers_announcement","max_size_value_datastore","message_timeout","operation_announcement_buffer_capacity","operation_announcement_interval","operation_batch_buffer_capacity","operation_batch_proc_period","peers_categories","rate_limit","read_write_limit_bytes_per_second","routable_ip","t0","target_out_connections","test_oldest_peer_cooldown","tester_timeout","thread_count","thread_tester_count","timeout_connection","to_owned","to_owned","try_connection_timer","try_connection_timer_same_peer","try_from","try_from","try_into","try_into","type_id","type_id","unban_everyone_timer","version","vzip","vzip"],"q":[[0,"massa_protocol_exports"],[205,"massa_protocol_exports::ProtocolError"],[209,"massa_protocol_exports::bootstrap_peers"],[307,"massa_protocol_exports::controller_trait"],[321,"massa_protocol_exports::error"],[386,"massa_protocol_exports::error::ProtocolError"],[390,"massa_protocol_exports::peer_id"],[476,"massa_protocol_exports::settings"],[599,"alloc::vec"],[600,"core::result"],[601,"peernet::peer"],[602,"peernet::transports"],[603,"alloc::boxed"],[604,"serde::de"],[605,"core::fmt"],[606,"core::hash"],[607,"core::marker"],[608,"massa_models::stats"],[609,"core::net::socket_addr"],[610,"std::collections::hash::map"],[611,"massa_models::block_id"],[612,"massa_storage"],[613,"tonic::request"],[614,"massa_models::block_header"],[615,"core::option"],[616,"massa_models::prehash"],[617,"serde::ser"],[618,"core::any"],[619,"nom::internal"],[620,"nom::error"],[621,"massa_serialization"],[622,"std::io::error"],[623,"massa_pos_exports::error"],[624,"massa_versioning::versioning_factory"],[625,"serde_json::error"],[626,"massa_models::error"],[627,"massa_time::error"],[628,"core::error"],[629,"alloc::string"],[630,"core::cmp"],[631,"massa_signature::signature_impl"],[632,"massa_hash::hash"]],"i":[0,0,0,6,6,6,6,9,6,6,6,6,6,6,6,6,9,6,0,6,0,0,6,0,0,0,6,0,0,0,0,10,6,6,10,6,0,6,6,6,65,66,66,1,66,0,9,10,9,10,38,66,9,10,1,9,10,9,9,10,10,66,0,66,66,9,10,9,10,10,9,10,66,9,10,9,9,9,9,10,10,10,10,0,66,9,10,9,10,9,10,10,66,1,10,1,10,9,10,66,1,9,10,9,10,40,39,66,66,40,40,38,66,66,66,66,66,66,65,66,65,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,1,66,66,66,66,0,40,39,66,40,39,1,1,3,59,66,66,66,1,10,0,1,36,66,65,66,66,66,66,66,9,10,66,66,9,10,9,10,9,10,39,66,1,66,9,10,67,68,67,68,0,0,0,0,39,40,38,18,39,40,38,18,38,38,18,38,18,38,18,39,39,40,38,18,39,40,38,18,40,38,18,39,40,38,18,38,18,38,38,38,38,18,18,18,18,38,18,39,40,38,18,38,18,39,40,38,18,39,40,38,18,39,40,38,18,40,39,40,40,38,39,40,40,39,40,39,39,38,18,38,18,39,40,38,18,39,40,38,18,39,40,38,18,39,39,40,38,18,0,0,1,1,1,1,1,1,1,1,1,1,36,1,6,49,6,6,6,6,6,6,6,6,6,6,6,0,6,6,6,49,6,0,6,6,6,49,49,6,6,6,6,49,6,49,6,49,6,49,6,49,6,6,49,6,6,6,6,6,6,6,49,6,49,6,49,6,49,6,6,6,49,6,49,6,49,6,49,67,68,67,68,0,0,0,3,58,59,3,58,59,3,58,59,3,58,59,3,3,58,59,3,3,58,59,3,58,59,3,58,59,3,59,3,58,59,3,3,3,3,3,3,3,3,58,59,3,3,58,59,3,3,3,3,3,3,58,59,3,58,59,3,58,59,58,59,3,3,59,3,58,3,58,59,3,3,58,59,3,58,59,3,58,59,3,3,58,59,0,0,65,66,66,66,65,66,65,66,66,65,66,65,66,65,65,66,66,66,66,65,66,65,66,65,66,65,66,66,66,65,66,65,66,65,66,66,65,66,66,65,66,65,66,66,66,66,66,66,66,66,66,65,66,65,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,65,66,66,66,66,66,65,66,66,66,65,66,65,66,65,66,66,66,65,66],"f":"```````````````````````````````````````````{{{d{b}}{h{f}}}{{n{jl}}}}``{{{d{c}}}{{d{e}}}{}{}}0{{{d{A`c}}}{{d{A`e}}}{}{}}0``{{{d{Ab}}}Ab}{{{d{Ad}}}Ad}{{{d{b}}}{{Af{b}}}}{{{d{c}}{d{A`e}}}j{}{}}0{{{d{c}}}j{}}000````{Ah{{d{c}}}{}}0{Ah{{d{A`c}}}{}}0{c{{n{Ad}}}Aj}{Ahj}0`{{{d{Ab}}{d{Ab}}}Al}{{{d{Ad}}{d{Ad}}}Al}{{{d{c}}{d{e}}}Al{}{}}0000000``{{{d{Ab}}{d{A`An}}}{{n{jB`}}}}{{{d{Ad}}{d{A`An}}}{{n{jB`}}}}{cc{}}0{{{d{c}}}c{}}0{{{d{Bb}}}Ad}`{{{d{b}}}{{n{Bdl}}}}{{{d{c}}{d{e}}}Bf{BhBj}Bl}{{{d{b}}}{{n{{Cb{Bn{Cd{f{Cb{C`Ab}}}}}}l}}}}{{{d{Ad}}{d{A`c}}}jCf}{{}Ah}0`{{{d{b}}ChCj}{{n{jl}}}}{ce{}{}}0{c{{Cl{e}}}{}{}}0``````````````````````````````````````````````````````{{{d{b}}Ch}{{n{jl}}}}``````````{{{d{b}}Cj}{{n{jl}}}}0`````{{{d{b}}{Db{Ch{D`{Cn}}}}{Dd{Ch}}}{{n{jl}}}}{{{d{Ad}}c}nDf}`{{{d{A`b}}}j}{{{d{A`Dh}}}j}```````{{{d{c}}}e{}{}}0``{c{{n{e}}}{}{}}000{{{d{c}}}Dj{}}0``{{{d{b}}{h{f}}}{{n{jl}}}}`;;````````{{{d{c}}}{{d{e}}}{}{}}000{{{d{A`c}}}{{d{A`e}}}{}{}}000`{{{d{Dl}}}Dl}{{{d{Bd}}}Bd}{{{d{c}}{d{A`e}}}j{}{}}0{{{d{c}}}j{}}0{{}Dn}{Ah{{d{c}}}{}}000{Ah{{d{A`c}}}{}}000{{{d{E`}}{d{{Ed{Eb}}}}}{{Ef{{d{{Ed{Eb}}}}Bdc}}}{{Eh{{d{{Ed{Eb}}}}}}{Ej{{d{{Ed{Eb}}}}}}}}{c{{n{Dl}}}Aj}{c{{n{Bd}}}Aj}{Ahj}000{{{d{Dl}}{d{Dl}}}Al}{{{d{Bd}}{d{Bd}}}Al}{{{d{c}}{d{e}}}Al{}{}}0000000{{{d{Dl}}{d{A`An}}}El}{{{d{Bd}}{d{A`An}}}El}{cc{}}000{{{d{c}}}c{}}0{{}Ah}000{ce{}{}}000{c{{Cl{e}}}{}{}}000`````{{}Dn}{{EnEn}E`}````{{{d{Dn}}{d{Bd}}{d{A`{h{Eb}}}}}{{n{jF`}}}}{{{d{Dl}}c}nDf}{{{d{Bd}}c}nDf}{{{d{c}}}e{}{}}0{c{{n{e}}}{}{}}0000000{{{d{c}}}Dj{}}000`9999``{{{d{b}}{h{f}}}{{n{jl}}}}{{{d{b}}}{{Af{b}}}}{{{d{b}}}{{n{Bdl}}}}{{{d{b}}}{{n{{Cb{Bn{Cd{f{Cb{C`Ab}}}}}}l}}}}{{{d{b}}ChCj}{{n{jl}}}}{{{d{b}}Ch}{{n{jl}}}}{{{d{b}}Cj}{{n{jl}}}}0{{{d{b}}{Db{Ch{D`{Cn}}}}{Dd{Ch}}}{{n{jl}}}}{{{d{A`b}}}j}{{{d{A`Dh}}}j}9````````````````````````````{{{d{c}}}{{d{e}}}{}{}}0{{{d{A`c}}}{{d{A`e}}}{}{}}0{Ah{{d{c}}}{}}0{Ah{{d{A`c}}}{}}0{Ahj}0{{{d{l}}{d{A`An}}}El}0{{{d{Fb}}{d{A`An}}}El}{Fdl}{Ffl}{Fhl}{Fjl}{Fll}{Fnl}{cc{}}0{{}Ah}0{ce{}{}}0{c{{Cl{e}}}{}{}}0{{{d{l}}}{{D`{{d{G`}}}}}}{{{d{c}}}Gb{}}{c{{n{e}}}{}{}}000{{{d{c}}}Dj{}}055```````{{{d{c}}}{{d{e}}}{}{}}00{{{d{A`c}}}{{d{A`e}}}{}{}}00{{{d{f}}}f}{{{d{Gd}}}Gd}{{{d{Gf}}}Gf}{{{d{c}}{d{A`e}}}j{}{}}00{{{d{c}}}j{}}000{{{d{f}}{d{f}}}Gh}{{{d{c}}{d{e}}}Gh{}{}}{{}Gd}{{}Gf}{Ah{{d{c}}}{}}00{Ah{{d{A`c}}}{}}00{c{{n{f}}}Aj}{{{d{Gf}}{d{{Ed{Eb}}}}}{{Ef{{d{{Ed{Eb}}}}fc}}}{{Eh{{d{{Ed{Eb}}}}}}{Ej{{d{{Ed{Eb}}}}}}}}{Ahj}00{{{d{f}}{d{f}}}Al}{{{d{c}}{d{e}}}Al{}{}}000{{{d{f}}{d{A`An}}}El}0{cc{}}00{Gjf}{{{d{c}}}c{}}00{{{d{Gl}}}{{n{fc}}}{}}{{}f}{{{d{c}}{d{e}}}Bf{BhBj}Bl}{{{d{f}}}Gj}{{{d{f}}{d{A`c}}}jCf}{{}Ah}00{ce{}{}}00{c{{Cl{e}}}{}{}}00{{}Gd}{{}Gf}{{{d{f}}{d{f}}}{{D`{Gh}}}}``{{{d{f}}c}nDf}{{{d{Gd}}{d{f}}{d{A`{h{Eb}}}}}{{n{jF`}}}}{{{d{c}}}e{}{}}00{{{d{c}}}Gb{}}{c{{n{e}}}{}{}}00000{{{d{c}}}Dj{}}00{{{d{f}}{d{Gn}}{d{H`}}}{{n{jl}}}};;;``````{{{d{c}}}{{d{e}}}{}{}}0{{{d{A`c}}}{{d{A`e}}}{}{}}0`{{{d{Hb}}}Hb}{{{d{Hd}}}Hd}{{{d{c}}{d{A`e}}}j{}{}}0{{{d{c}}}j{}}00```{Ah{{d{c}}}{}}0{Ah{{d{A`c}}}{}}0{c{{n{Hb}}}Aj}{c{{n{Hd}}}Aj}{Ahj}0``{{{d{Hb}}{d{A`An}}}El}{{{d{Hd}}{d{A`An}}}El}{cc{}}0{{{d{c}}}c{}}0`{{}Ah}0`{ce{}{}}0{c{{Cl{e}}}{}{}}0````````````````````````````````````````````````````````````````{{{d{c}}}e{}{}}0``{c{{n{e}}}{}{}}000{{{d{c}}}Dj{}}0``44","D":"BAh","p":[[10,"ProtocolController",307],[1,"reference"],[5,"PeerId",390],[5,"Vec",599],[1,"unit"],[6,"ProtocolError",321],[6,"Result",600],[0,"mut"],[6,"PeerConnectionType",0,601],[6,"TransportType",0,602],[5,"Box",603],[1,"usize"],[10,"Deserializer",604],[1,"bool"],[5,"Formatter",605],[5,"Error",605],[6,"TransportConfig",602],[5,"BootstrapPeers",209],[1,"u64"],[10,"Hash",606],[10,"Sized",607],[10,"BuildHasher",606],[5,"NetworkStats",608],[6,"SocketAddr",609],[1,"tuple"],[5,"HashMap",610],[10,"Hasher",606],[6,"BlockId",611],[5,"Storage",612],[5,"Request",613],[8,"SecuredHeader",614],[6,"Option",615],[8,"PreHashMap",616],[8,"PreHashSet",616],[10,"Serializer",617],[10,"ProtocolManager",307],[5,"TypeId",618],[5,"PeerData",209],[5,"BootstrapPeersSerializer",209],[5,"BootstrapPeersDeserializer",209],[1,"u8"],[1,"slice"],[8,"IResult",619],[10,"ParseError",620],[10,"ContextError",620],[8,"Result",605],[1,"u32"],[6,"SerializeError",621],[6,"NetworkConnectionErrorType",321],[5,"Error",622],[6,"PosError",623],[6,"FactoryError",624],[5,"Error",625],[6,"ModelsError",626],[6,"TimeError",627],[10,"Error",628],[5,"String",629],[5,"PeerIdSerializer",390],[5,"PeerIdDeserializer",390],[6,"Ordering",630],[6,"PublicKey",631],[1,"str"],[5,"Hash",632],[6,"Signature",631],[5,"PeerCategoryInfo",476],[5,"ProtocolConfig",476],[15,"OutdatedAnnouncedNetworkVersion",386],[15,"IncompatibleNetworkVersion",386]],"r":[[0,209],[1,209],[2,209],[18,476],[20,601],[21,209],[23,390],[24,390],[25,390],[27,476],[28,307],[29,321],[30,307],[36,602]],"b":[[359,"impl-Debug-for-ProtocolError"],[360,"impl-Display-for-ProtocolError"],[362,"impl-From%3CError%3E-for-ProtocolError"],[363,"impl-From%3CPosError%3E-for-ProtocolError"],[364,"impl-From%3CFactoryError%3E-for-ProtocolError"],[365,"impl-From%3CError%3E-for-ProtocolError"],[366,"impl-From%3CModelsError%3E-for-ProtocolError"],[367,"impl-From%3CTimeError%3E-for-ProtocolError"],[429,"impl-Debug-for-PeerId"],[430,"impl-Display-for-PeerId"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEsBQAAAAAAACAAAABEAAAATAAAAFQAAABgAAgAdAAAAIAAAACMAAAApAAAALgAFADUAAQA4AAUAPwAAAEIABgBKAAoAVgABAFoAAQBfAAAAYQACAGgAAwBuAAIAdwAAAHkAAACCAAIApQACAKkAAQCtAAEAswABALgAAAC+AAEAwgAGAMwAAQDWACoABQEFAA8BCAAaARoAQwEAAE8BAABTAQAAWQEBAF4BEgBzAQEAdwELAIcBHAClAQoAswELAMIBBwDLARIA3wEAAOMBAwDoAQYA8gEHAPwBAQAAAgEAAwIBAAgCAQASAgAAFAIAAB0CAgBEAgAASgIBAE4CBQBWAgEA"}],\ -["massa_protocol_worker",{"t":"CCCHCCCCCHCCCGPPSNNNNNNNNNNNNNNNNNHNHNNNNNNNOFNNNNNNNNNNNNNNNNNONNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNCCCCFOONNCCCNNNNNNNNNCNNCCNNNNNNNNFIONNONNNNNNNNNNONNNNNNNNNNPGPPNNNNNNNNNNNNNNNNNNNNNNNNNNOOGPPNNNNNNNNNNNNNNNNNNNNNNNNNOOGGGGFFFPPPPPPPPPGPPPPPPPPNNNOOONNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNOOOOOOOOONNOOONNNNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOFFSOONONNNNOONNNNNNNNNNNONNNNNNNNONNNONHOONNNNNNNNNNNNNNFFSNOOONOONNNNONNNNOONNNNNNNNONNNNNNNONNNNNNNNNOONONNNNNNOOOONNOOONNOOOHOONNNNNNNNNNNNNNNNFNNCCCNNNNOONNNNNCNNCCNNNNNNNNFINNONNNNONNNNNNNONNNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNGPNNNNNNNNNNNNNNNNNNNGFFFPPGNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOONNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFSONNOONNNNONNNNNNNONHNNNNNNNFSNNNOONNNNONNONNNOHONONOONOHONNNNNNNFNNCCCNNNNNNNNNCNOONCCNNNNNNNNFINNOONNNNNNNNNNNONONNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNGPNNNNNNNNNNNNNNNNNNNNNNNNNPPGGFFFPPPPNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOOOOOOONNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFSOONNNOONNNNNNONNNOOONNNHONNNNNNNFFSOOONNNNNOONNNNNNNNNNNNOONNNNNNHNNOOOOONNOOONHONNNNNNNNNNNNNNNFFSNCOONNNNNNNONNNNNNNNNNNNNNNNNNNNNCCNNOOOOONNNONCOONNNNNNNNNNNNNOONNFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNOOONNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPGPPGFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNOONNNNNOHOOONNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPFPPPIFFFGIGIPSPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNONOONNNNNNONNNNNONNNONNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOSFNNNNNNNONNNNNNNNNNNNNNNHFNNONNNNNNNNNNNNNNNNNNNPPPPGGFFPPPPNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNOONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSHFOONNOHNNNNOONNNNNOOONHNNNNNNNKKFNNMNNNNNMNMMMMMMMNMNNNNNNONMMMNMNMNNNNNNNNKMMMMMMMMMMMMMMMMMMM","n":["connectivity","context","controller","create_protocol_controller","handlers","ip","manager","messages","sig_verifier","start_protocol_controller","worker","wrap_network","wrap_peer_db","ConnectivityCommand","GetStats","Stop","THREAD_NAME","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","start_connectivity_thread","to_owned","try_connect_peer","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","responder","Context","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","get_peer_id","init","into","into_request","layout_raw","our_keypair","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ProtocolControllerImpl","__clone_box","ban_peers","borrow","borrow_mut","clone","clone_box","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","get_bootstrap_peers","get_stats","init","integrated_block","into","into_request","layout_raw","new","notify_block_attack","pointer_metadata","propagate_endorsements","propagate_operations","send_wishlist_delta","sender_block_handler","sender_block_retrieval_handler","sender_connectivity_thread","sender_endorsement_handler","sender_operation_handler","sender_peer_management_thread","stop","to_owned","try_from","try_into","type_id","unban_peers","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","block_handler","endorsement_handler","operation_handler","peer_handler","BlockHandler","block_propagation_thread","block_retrieval_thread","borrow","borrow_mut","cache","commands_propagation","commands_retrieval","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","messages","new","pointer_metadata","propagation","retrieval","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","BlockCache","SharedBlockCache","blocks_known_by_peer","borrow","borrow_mut","checked_headers","deref","deref_mut","deserialize","drop","from","init","insert_peer_known_block","into","into_request","layout_raw","max_known_blocks_by_peer","new","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_cache","vzip","AttackBlockDetected","BlockHandlerPropagationCommand","IntegratedBlock","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","block_id","storage","BlockHandlerRetrievalCommand","Stop","WishlistDelta","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","new","remove","AskForBlockInfo","BlockInfoReply","BlockInfoType","BlockMessage","BlockMessageDeserializer","BlockMessageDeserializerArgs","BlockMessageSerializer","DataRequest","DataRequest","DataResponse","DataResponse","Header","Header","Header","Header","Header","MessageTypeId","NotFound","NotFound","OperationIds","OperationIds","OperationIds","Operations","Operations","Operations","__clone_box","__clone_box","__clone_box","block_header_deserializer","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","endorsement_count","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","id_deserializer","id_serializer","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","last_start_period","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_serializer","max_datastore_value_length","max_denunciations_in_block_header","max_function_name_length","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations_per_block","max_parameters_size","new","new","operation_id_serializer","operation_ids_deserializer","operations_deserializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","secure_share_serializer","serialize","thread_count","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","block_id","block_id","block_info","block_info","BlockPropagationData","PropagationThread","THREAD_NAME","_storage","active_connections","ban_peers","block_serializer","borrow","borrow","borrow_mut","borrow_mut","cache","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fmt","from","from","header","init","init","into","into","into_request","into_request","layout_raw","layout_raw","peer_cmd_sender","perform_propagations","pointer_metadata","pointer_metadata","receiver","run","start_propagation_thread","stored_for_propagation","time_added","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","BlockInfo","RetrievalThread","THREAD_NAME","__clone_box","_announcement_sender","active_connections","asked_blocks","ban_peers","block_message_serializer","block_wishlist","borrow","borrow","borrow_mut","borrow_mut","cache","check_network_version_compatibility","clone","clone_into","clone_to_uninit","config","consensus_controller","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_cache","fmt","from","from","from_ref","fully_gathered_block","gather_missing_block_ops","get_total_operations_size","header","init","init","into","into","into_request","into_request","layout_raw","layout_raw","mark_block_as_invalid","massa_metrics","mip_store","new","next_timer_ask_block","note_header_from_peer","on_ask_for_block_info_received","on_block_full_operations_received","on_block_header_received","on_block_info_received","on_block_operation_list_received","operation_cache","operation_id_serializer","operation_ids","peer_cmd_sender","pointer_metadata","pointer_metadata","pool_controller","receiver","receiver_network","remove_asked_blocks","run","selector_controller","sender_propagation_endorsements","sender_propagation_ops","start_retrieval_thread","storage","storage","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_block_retrieval","vzip","vzip","EndorsementHandler","borrow","borrow_mut","cache","commands_propagation","commands_retrieval","deref","deref_mut","deserialize","drop","endorsement_propagation_thread","endorsement_retrieval_thread","from","init","into","into_request","layout_raw","messages","new","pointer_metadata","propagation","retrieval","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","EndorsementCache","SharedEndorsementCache","borrow","borrow_mut","checked_endorsements","deref","deref_mut","deserialize","drop","endorsements_known_by_peer","from","init","insert_checked_endorsement","insert_peer_known_endorsements","into","into_request","layout_raw","max_known_endorsements_by_peer","new","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_cache","vzip","EndorsementHandlerPropagationCommand","PropagateEndorsements","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","EndorsementHandlerRetrievalCommand","Stop","borrow","borrow_mut","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","EndorsementMessage","EndorsementMessageDeserializer","EndorsementMessageDeserializerArgs","EndorsementMessageSerializer","Endorsements","Endorsements","MessageTypeId","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","endorsement_count","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from_ref","id_deserializer","id_serializer","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_endorsements_deserializer","length_endorsements_serializer","max_length_endorsements","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","secure_share_deserializer","secure_share_serializer","serialize","thread_count","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","PropagationThread","THREAD_NAME","active_connections","borrow","borrow_mut","cache","config","deref","deref_mut","deserialize","drop","endorsement_serializer","from","init","into","into_request","layout_raw","pointer_metadata","propagate_endorsements","receiver","run","start_propagation_thread","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","RetrievalThread","THREAD_NAME","ban_peer","borrow","borrow_mut","cache","config","deref","deref_mut","deserialize","drop","endorsement_message_deserializer","from","init","internal_sender","into","into_request","layout_raw","metrics","note_endorsements_from_peer","peer_cmd_sender","pointer_metadata","pool_controller","process_message","receiver","receiver_ext","run","selector_controller","start_retrieval_thread","storage","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationHandler","borrow","borrow_mut","cache","commands_propagation","commands_retrieval","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","messages","new","operation_propagation_thread","operation_retrieval_thread","pointer_metadata","propagation","retrieval","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationCache","SharedOperationCache","borrow","borrow_mut","checked_operations","checked_operations_prefix","deref","deref_mut","deserialize","drop","from","init","insert_checked_operation","insert_peer_known_ops","into","into_request","layout_raw","max_known_ops_by_peer","new","ops_known_by_peer","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_cache","vzip","OperationHandlerPropagationCommand","PropagateOperations","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationHandlerRetrievalCommand","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","AskForOperations","AskForOperations","MessageTypeId","OperationMessage","OperationMessageDeserializer","OperationMessageDeserializerArgs","OperationMessageSerializer","Operations","Operations","OperationsAnnouncement","OperationsAnnouncement","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from_ref","id_deserializer","id_serializer","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","max_datastore_value_length","max_function_name_length","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations","max_operations_prefix_ids","max_parameters_size","new","new","operation_prefix_ids_deserializer","operation_prefix_ids_serializer","operations_deserializer","operations_serializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","PropagationThread","THREAD_NAME","_massa_metrics","active_connections","announce_ops","borrow","borrow_mut","cache","config","deref","deref_mut","deserialize","drop","from","init","internal_receiver","into","into_request","layout_raw","next_batch","op_storage","operation_message_serializer","pointer_metadata","prune_propagation_storage","run","start_propagation_thread","stored_for_propagation","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationBatchItem","RetrievalThread","THREAD_NAME","_massa_metrics","active_connections","asked_operations","ban_node","borrow","borrow","borrow_mut","borrow_mut","cache","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","from","from","init","init","instant","internal_sender","into","into","into_request","into_request","layout_raw","layout_raw","note_operations_from_peer","on_asked_operations_received","on_operations_announcements_received","op_batch_buffer","operation_message_serializer","operations_prefix_ids","peer_cmd_sender","peer_id","pointer_metadata","pointer_metadata","pool_controller","receiver","receiver_ext","run","start_retrieval_thread","storage","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_ask_operation","vzip","vzip","MassaHandshake","PeerManagementHandler","THREAD_NAME","__clone_box","announcement","announcement_deserializer","announcement_serializer","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fallback_function","from","from","from_ref","handshake_fail","init","init","into","into","into_request","into_request","layout_raw","layout_raw","messages","models","new","new","peer_db","peer_db","peer_id_deserializer","peer_id_serializer","peer_mngt_msg_serializer","perform_handshake","pointer_metadata","pointer_metadata","sender","stop","tester","testers","thread_join","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","version_deserializer","version_serializer","vzip","vzip","Announcement","AnnouncementDeserializer","AnnouncementDeserializerArgs","AnnouncementSerializer","__clone_box","__clone_box","__clone_box","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from","from_ref","from_ref","from_ref","hash","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","ip_addr_deserializer","layout_raw","layout_raw","layout_raw","layout_raw","length_listeners_deserializer","listeners","max_listeners","new","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialized","signature","timestamp","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","ListPeers","ListPeers","MessageTypeId","NewPeerConnected","NewPeerConnected","PeerManagementMessage","PeerManagementMessageDeserializer","PeerManagementMessageDeserializerArgs","PeerManagementMessageSerializer","__clone_box","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","id_deserializer","id_serializer","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","ip_addr_deserializer","ip_addr_serializer","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_serializer","listener_deserializer","listeners_length_deserializer","max_listeners_per_peer","max_peers_per_announcement","new","new","peer_id_deserializer","peer_id_serializer","peers_length_deserializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","Ban","Banned","ConnectionMetadata","GetBootstrapPeers","HandshakeFailed","InHandshake","InitialPeers","PeerDB","PeerInfo","PeerManagementChannel","PeerManagementCmd","PeerMessageTuple","PeerState","SharedPeerDB","Stop","THREE_DAYS_MS","Trusted","Unban","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","ban_peer","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_box","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","command_sender","compare","default","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","edit","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","failure","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","get_banned_peer_count","get_connection_metadata_or_default","get_known_peer_count","get_oldest_peer","get_peers","get_peers_in_test","get_peers_mut","get_rand_peers_to_send","get_tested_addresses","init","init","init","init","init","init","insert_peer_in_test","insert_tested_address","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","last_announce","last_failure","last_success","last_test_failure","last_test_success","last_try_connect","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","msg_sender","partial_cmp","peers","peers_in_test","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","random_priority","remove_peer_in_test","set_try_connect_failure_or_insert","set_try_connect_success_or_insert","set_try_connect_test_failure_or_insert","set_try_connect_test_success_or_insert","state","success","test_failure","test_success","tested_addresses","to_owned","to_owned","to_owned","to_owned","to_owned","try_connect","try_connect_history","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","unban_peer","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","responder","THREAD_NAME","Tester","borrow","borrow_mut","deref","deref_mut","deserialize","drop","from","handler","init","into","into_request","layout_raw","new","pointer_metadata","run","tcp_handshake","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","to_canonical","ProtocolManagerImpl","borrow","borrow_mut","connectivity_thread","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","new","pointer_metadata","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Block","Block","Endorsement","Endorsement","Message","MessageTypeId","MessagesHandler","MessagesSerializer","Operation","Operation","PeerManagement","PeerManagement","__clone_box","__clone_box","block_message_serializer","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","endorsement_message_serializer","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","handle","id_deserializer","id_serializer","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","new","operation_message_serializer","peer_management_message_serializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","sender_blocks","sender_endorsements","sender_operations","sender_peers","serialize","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","with_block_message_serializer","with_endorsement_message_serializer","with_operation_message_serializer","with_peer_management_message_serializer","SMALL_BATCH_LIMIT","verify_sigs_batch","ProtocolChannels","block_handler_propagation","block_handler_retrieval","borrow","borrow_mut","connectivity_thread","create_protocol_controller","deref","deref_mut","deserialize","drop","endorsement_handler_propagation","endorsement_handler_retrieval","from","init","into","into_request","layout_raw","operation_handler_propagation","operation_handler_retrieval","peer_management_handler","pointer_metadata","start_protocol_controller","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ActiveConnectionsTrait","NetworkController","NetworkControllerImpl","borrow","borrow_mut","clone_box","deref","deref_mut","deserialize","drop","from","get_active_connections","get_active_connections","get_nb_in_connections","get_nb_out_connections","get_peer_ids_connected","get_peer_ids_out_connection_queue","get_peers_connected","get_peers_connections_bandwidth","get_total_bytes_received","get_total_bytes_received","get_total_bytes_sent","get_total_bytes_sent","init","into","into_request","layout_raw","new","peernet_manager","pointer_metadata","send_to_peer","shutdown_connection","start_listener","start_listener","stop_listener","stop_listener","try_connect","try_connect","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","PeerDBTrait","ban_peer","clone_box","get_banned_peer_count","get_connection_metadata_or_default","get_known_peer_count","get_oldest_peer","get_peers","get_peers_in_test","get_peers_mut","get_rand_peers_to_send","get_tested_addresses","insert_peer_in_test","insert_tested_address","remove_peer_in_test","set_try_connect_failure_or_insert","set_try_connect_success_or_insert","set_try_connect_test_failure_or_insert","set_try_connect_test_success_or_insert","unban_peer"],"q":[[0,"massa_protocol_worker"],[13,"massa_protocol_worker::connectivity"],[44,"massa_protocol_worker::connectivity::ConnectivityCommand"],[45,"massa_protocol_worker::context"],[73,"massa_protocol_worker::controller"],[117,"massa_protocol_worker::handlers"],[121,"massa_protocol_worker::handlers::block_handler"],[151,"massa_protocol_worker::handlers::block_handler::cache"],[178,"massa_protocol_worker::handlers::block_handler::commands_propagation"],[208,"massa_protocol_worker::handlers::block_handler::commands_propagation::BlockHandlerPropagationCommand"],[210,"massa_protocol_worker::handlers::block_handler::commands_retrieval"],[238,"massa_protocol_worker::handlers::block_handler::commands_retrieval::BlockHandlerRetrievalCommand"],[240,"massa_protocol_worker::handlers::block_handler::messages"],[494,"massa_protocol_worker::handlers::block_handler::messages::BlockMessage"],[498,"massa_protocol_worker::handlers::block_handler::propagation"],[554,"massa_protocol_worker::handlers::block_handler::retrieval"],[644,"massa_protocol_worker::handlers::endorsement_handler"],[674,"massa_protocol_worker::handlers::endorsement_handler::cache"],[702,"massa_protocol_worker::handlers::endorsement_handler::commands_propagation"],[730,"massa_protocol_worker::handlers::endorsement_handler::commands_retrieval"],[751,"massa_protocol_worker::handlers::endorsement_handler::messages"],[893,"massa_protocol_worker::handlers::endorsement_handler::propagation"],[922,"massa_protocol_worker::handlers::endorsement_handler::retrieval"],[959,"massa_protocol_worker::handlers::operation_handler"],[989,"massa_protocol_worker::handlers::operation_handler::cache"],[1018,"massa_protocol_worker::handlers::operation_handler::commands_propagation"],[1046,"massa_protocol_worker::handlers::operation_handler::commands_retrieval"],[1073,"massa_protocol_worker::handlers::operation_handler::messages"],[1217,"massa_protocol_worker::handlers::operation_handler::propagation"],[1251,"massa_protocol_worker::handlers::operation_handler::retrieval"],[1315,"massa_protocol_worker::handlers::peer_handler"],[1385,"massa_protocol_worker::handlers::peer_handler::announcement"],[1504,"massa_protocol_worker::handlers::peer_handler::messages"],[1649,"massa_protocol_worker::handlers::peer_handler::models"],[1871,"massa_protocol_worker::handlers::peer_handler::models::PeerManagementCmd"],[1872,"massa_protocol_worker::handlers::peer_handler::tester"],[1897,"massa_protocol_worker::ip"],[1898,"massa_protocol_worker::manager"],[1921,"massa_protocol_worker::messages"],[2055,"massa_protocol_worker::sig_verifier"],[2057,"massa_protocol_worker::worker"],[2087,"massa_protocol_worker::wrap_network"],[2132,"massa_protocol_worker::wrap_peer_db"],[2152,"massa_protocol_exports::settings"],[2153,"massa_protocol_exports::controller_trait"],[2154,"alloc::boxed"],[2155,"massa_pos_exports::controller_traits"],[2156,"massa_consensus_exports::controller_trait"],[2157,"massa_protocol_exports::bootstrap_peers"],[2158,"core::option"],[2159,"massa_pool_exports::controller_traits"],[2160,"massa_storage"],[2161,"massa_versioning::versioning"],[2162,"massa_metrics"],[2163,"massa_signature::signature_impl"],[2164,"massa_models::node"],[2165,"massa_protocol_exports::error"],[2166,"core::result"],[2167,"dyn_clone::sealed"],[2168,"rkyv::with"],[2169,"tonic::request"],[2170,"core::alloc::layout"],[2171,"massa_protocol_exports::peer_id"],[2172,"alloc::vec"],[2173,"massa_channel::sender"],[2174,"massa_channel::receiver"],[2175,"core::net::socket_addr"],[2176,"peernet::transports"],[2177,"std::collections::hash::map"],[2178,"parking_lot::rwlock"],[2179,"alloc::sync"],[2180,"alloc::string"],[2181,"core::net::ip_addr"],[2182,"std::thread"],[2183,"core::any"],[2184,"massa_models::stats"],[2185,"peernet::peer"],[2186,"massa_models::block_id"],[2187,"massa_models::block_header"],[2188,"massa_models::prehash"],[2189,"std::collections::hash::set"],[2190,"core::fmt"],[2191,"nom::internal"],[2192,"nom::error"],[2193,"massa_serialization"],[2194,"num_enum"],[2195,"massa_models::operation"],[2196,"massa_models::endorsement"],[2197,"peernet::transports::endpoint"],[2198,"peernet::error"],[2199,"massa_models::serialization"],[2200,"core::cmp"],[2201,"massa_time"],[2202,"core::time"],[2203,"massa_models::version"],[2204,"massa_hash::hash"],[2205,"peernet::network_manager"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,23,0,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,0,23,0,23,23,23,23,23,23,23,147,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,0,0,0,0,0,65,65,65,65,0,0,0,65,65,65,65,65,65,65,65,65,0,65,65,0,0,65,65,65,65,65,65,65,65,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,54,0,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,148,148,0,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,149,149,0,0,0,0,0,0,0,76,80,76,80,72,73,76,80,81,0,73,81,72,73,81,72,73,81,72,73,74,75,75,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,82,72,73,74,72,73,74,72,73,74,72,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,82,72,80,81,72,72,72,72,72,72,80,80,80,80,80,80,81,81,81,81,81,81,72,73,76,80,81,75,82,72,73,76,80,80,81,74,72,73,74,75,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,82,75,82,72,73,76,80,81,74,74,82,82,82,82,82,82,82,82,75,74,74,75,75,75,82,72,73,76,80,81,74,74,74,82,72,73,74,75,82,72,73,76,80,80,81,81,74,80,81,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,150,151,150,151,0,0,0,87,86,86,86,86,87,86,87,86,86,86,87,86,87,86,87,86,87,87,86,87,87,86,87,86,87,86,87,86,87,86,86,86,87,86,86,0,86,87,86,87,86,87,86,87,86,87,86,87,86,87,86,87,0,0,0,89,88,88,88,88,88,88,88,89,88,89,88,88,89,89,89,88,88,88,89,88,89,88,89,88,89,88,89,88,89,89,88,88,88,89,88,89,88,89,88,89,88,89,88,88,88,89,88,88,88,88,88,88,88,88,88,89,88,88,89,88,88,88,88,88,88,88,88,0,88,89,89,88,89,88,89,88,89,88,89,88,89,88,89,88,88,89,0,93,93,0,0,0,93,93,93,93,93,93,93,93,93,93,93,0,93,93,0,0,93,93,93,93,93,93,93,93,0,0,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,0,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,0,0,97,98,0,95,99,96,97,98,95,99,96,97,98,95,99,95,95,95,95,99,96,97,98,95,99,96,97,98,95,99,96,96,97,98,95,99,96,97,98,95,99,97,98,97,97,97,97,97,97,98,98,98,98,98,98,97,98,99,96,97,98,98,95,95,96,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,96,95,99,96,95,99,96,97,98,95,96,95,95,99,95,99,96,97,98,98,95,98,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,100,0,0,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,0,101,101,101,101,101,101,101,101,0,101,101,101,101,101,101,101,101,0,104,104,0,0,0,104,104,104,104,104,104,104,104,104,0,104,104,104,104,0,0,104,104,104,104,104,104,104,104,0,0,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,0,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,0,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,108,109,0,0,0,0,0,108,109,108,109,106,107,110,108,109,106,107,110,108,109,106,110,106,106,106,106,107,110,108,109,106,107,110,108,109,106,107,107,110,108,109,106,107,110,108,109,106,109,109,109,109,109,109,109,108,109,107,110,108,109,109,106,106,107,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,110,110,110,110,110,110,110,110,107,106,107,106,107,106,107,110,108,109,106,106,106,107,110,108,109,109,106,109,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,0,0,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,0,111,111,111,111,111,111,111,111,0,0,0,112,112,112,112,152,112,152,112,112,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,0,112,112,112,112,152,112,152,152,112,112,112,112,112,0,112,152,112,152,112,152,112,152,112,152,112,152,112,112,152,112,0,0,0,114,0,114,114,117,114,117,114,114,114,114,114,117,114,117,114,117,114,117,114,114,117,114,114,114,117,114,117,114,117,114,117,114,0,0,117,114,117,114,114,114,114,114,117,114,117,117,0,117,117,114,117,114,117,114,117,114,117,114,117,114,117,114,114,114,117,114,0,0,0,0,118,119,120,121,118,119,120,121,118,119,120,118,119,120,118,119,120,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,120,121,118,119,120,118,118,118,118,118,118,118,118,121,118,119,120,118,119,120,118,121,118,119,120,121,118,119,120,121,118,119,120,120,121,118,119,120,120,118,121,118,119,120,121,118,119,120,119,118,118,118,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,122,125,0,122,125,0,0,0,0,122,123,124,127,122,125,123,124,127,122,125,123,122,123,122,123,122,123,123,124,127,122,125,123,124,127,122,125,123,124,124,127,122,125,123,124,127,122,125,123,125,125,125,125,125,125,125,122,125,124,127,122,125,125,123,122,123,124,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,123,124,127,122,125,123,123,0,124,127,127,124,123,124,123,124,124,127,122,125,123,123,122,123,124,127,122,125,125,123,125,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,57,131,0,57,131,131,0,0,0,0,0,0,0,0,57,0,131,57,129,128,130,131,57,128,153,129,128,130,131,57,153,129,128,130,131,57,129,128,130,131,57,128,129,128,130,131,57,129,128,130,131,57,129,153,129,129,128,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,129,129,131,129,129,129,129,129,129,131,131,131,131,131,131,129,130,131,153,129,128,130,131,57,129,128,130,131,57,128,128,128,128,128,128,128,128,128,153,129,128,130,131,57,128,128,153,129,128,130,131,57,153,129,128,130,131,57,130,129,129,129,129,129,153,129,128,130,131,57,153,129,128,128,153,129,128,130,131,57,129,128,128,128,128,128,130,129,129,129,128,129,128,130,131,57,129,128,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,128,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,154,0,0,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,0,0,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,141,140,141,140,0,0,0,0,141,140,141,140,139,41,139,141,140,139,41,141,140,139,41,139,41,139,41,139,41,139,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,139,140,140,140,140,140,140,140,141,140,141,141,141,141,141,140,140,139,41,139,41,41,41,139,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,139,139,139,141,140,139,41,41,41,41,41,139,139,41,141,140,140,139,41,140,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,139,139,139,139,0,0,0,4,4,4,4,4,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,4,4,4,4,4,4,4,0,0,0,145,145,61,145,145,145,145,145,30,145,61,61,61,61,61,61,30,145,30,145,145,145,145,145,145,145,145,61,61,30,145,30,145,30,145,145,145,145,145,145,145,145,0,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38],"f":"```{b{{j{{f{d}}h}}}}`````{{b{f{l}}{f{n}}{Ab{A`}}{f{Ad}}AfhAhAj}{{Bd{{j{{f{Al}}AnB`}}Bb}}}}```````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Bn}}}Bn}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{Cj{f{l}}{f{Cl}}{f{n}}{f{Ad}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{Dj{Cj{Dj{DfDh}}}}{E`{{Dn{Dl}}}}AfhEb{Dj{Ed{j{{D`{Ef}}Eh}}}}EhbAhAj}{{Bd{{j{{Db{Bn}}{Ej{Bj}}}}Bb}}}}{{{Bf{c}}}e{}{}}{{Df{Bf{Bl{f{Cl}}}}{Bf{{E`{{Dn{Dl}}}}}}{Bf{b}}}{{Bd{BjBb}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}};``{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{F`}}}F`}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{{Bf{F`}}}Cj}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9`{{{Bf{c}}Bh}Bj{}}{{{Bf{Fb}}{D`{Cj}}}{{Bd{BjBb}}}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fb}}}Fb}{{{Bf{Fb}}}{{f{d}}}}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{{Bf{Fb}}}{{Bd{A`Bb}}}}{{{Bf{Fb}}}{{Bd{{j{Fd{Dj{Cj{j{DfFf}}}}}}Bb}}}}{{}C`}{{{Bf{Fb}}FhAf}{{Bd{BjBb}}}}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{Db{Fj}}{Db{Fl}}{Db{Fn}}{Db{G`}}{Db{Bn}}{Db{Gb}}}Fb}{{{Bf{Fb}}Fh}{{Bd{BjBb}}}}{Bf}{{{Bf{Fb}}Af}{{Bd{BjBb}}}}0{{{Bf{Fb}}{Gf{Fh{Ab{Gd}}}}{Gh{Fh}}}{{Bd{BjBb}}}}``````{{{Bf{BlFb}}}Bj}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{Bf{Fb}}{D`{Cj}}}{{Bd{BjBb}}}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}?```````{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}```{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{f{Gj}}{f{l}}{f{n}}{f{Ad}}{Dd{{j{Cj{D`{Cn}}}}}}{Db{Fj}}{Dd{Fj}}{Dd{Fl}}{Db{Fl}}{Db{Fn}}{Db{G`}}{Db{Gb}}b{E`{{Dn{Gl}}}}{E`{{Dn{Gn}}}}{E`{{Dn{H`}}}}AfAhAj}Hb}{Bf}``{{{Bf{BlHb}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}:```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{{{Bf{BlH`}}{Bf{Cj}}{Bf{{Hd{Fh}}}}Hf}Bj}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{HhHh}H`}{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{{{Bf{BlH`}}{Bf{{Hj{Cj}}}}}Bj}:````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fl}}}Fl}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{{{Bf{Fl}}{Bf{BlHl}}}Hn}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9`````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fj}}}Fj}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9```````````````````````````{{{Bf{c}}Bh}Bj{}}00```{{{Bf{c}}}{{Bf{e}}}{}{}}0000000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000000`{{{Bf{I`}}}I`}{{{Bf{Ib}}}Ib}{{{Bf{Id}}}Id}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}00{{{Bf{c}}}Bj{}}00{{}I`}{{}Id}{C`{{Bf{c}}}{}}0000000{C`{{Bf{Blc}}}{}}0000000{{{Bf{If}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Ihc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0000000{C`Bj}0000000`{{{Bf{I`}}{Bf{I`}}}Hf}{{{Bf{J`}}{Bf{J`}}}Hf}{{{Bf{Jb}}{Bf{Jb}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000000000000000{{{Bf{I`}}{Bf{BlHl}}}Hn}{{{Bf{Ib}}{Bf{BlHl}}}Hn}{{{Bf{Ih}}{Bf{BlHl}}}Hn}{{{Bf{J`}}{Bf{BlHl}}}Hn}{{{Bf{Jb}}{Bf{BlHl}}}Hn}{cc{}}00000{{{Bf{Ih}}}J`}11{{{Bf{c}}}c{}}00``{{}C`}0000000{ce{}{}}0000000{c{{Cd{e}}}{}{}}0000000`{{}{{Bd{CfCh}}}}0000000`````````{JdIf}{{}Id}```{Bf}0000000`{{{Bf{Id}}{Bf{Ih}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}`{{{Bf{c}}}e{}{}}00{c{{Bd{e}}}{}{}}0000{Jh{{Bd{J`{Jj{J`}}}}}}1{Jh{{Bd{Jb{Jj{Jb}}}}}}22{c{{Bd{J`{Jj{J`}}}}}{}}{c{{Bd{Jb{Jj{Jb}}}}}{}}44444444{{{Bf{c}}}El{}}0000000{{{f{c}}}{{f{En}}}{}}0000000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000000{{{Bf{c}}}{{Bf{En}}}{}}0000000{ce{}{}}0000000`````````{{{Bf{BlJl}}{Bf{{Hd{Cj}}}}}Bj}`{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0``{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0{{{Bf{Jn}}{Bf{BlHl}}}Hn}{cc{}}0`{{}C`}0::{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}0`{{{Bf{BlJl}}}Bj}{Bf}0`1{{{f{Gj}}{Dd{Fl}}{Db{Gb}}b{E`{{Dn{H`}}}}}{{Ej{Bj}}}}``{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}0{ce{}{}}0```{{{Bf{c}}Bh}Bj{}}```{{{Bf{BlK`}}{Bf{{Hd{Cj}}}}}{{Bd{BjBb}}}}``{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0`{{{Bf{K`}}{Bf{Gd}}}{{Bd{BjBb}}}}{{{Bf{Kb}}}Kb}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}``{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0`{{{Bf{Kb}}{Bf{BlHl}}}Hn}{cc{}}0{{{Bf{c}}}c{}}{{{Bf{BlK`}}{Bf{Fh}}}Bj}{{{Bf{BlK`}}{Bf{Fh}}}{{Ab{{D`{Kd}}}}}}{{{Bf{Af}}{Bf{{Hd{Kd}}}}}C`}`{{}C`}0{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}06``{{{Ab{Gd}}Af}Kb}`{{{Bf{BlK`}}{Bf{Gd}}{Bf{Cj}}}{{Bd{HfBb}}}}{{{Bf{BlK`}}CjFhI`}Bj}{{{Bf{BlK`}}CjFh{D`{Kf}}}Bj}{{{Bf{BlK`}}CjGd}Bj}{{{Bf{BlK`}}CjFhIb}Bj}{{{Bf{BlK`}}CjFh{D`{Kd}}}Bj}````{Bf}0```{{{Bf{BlK`}}{Bf{{Gh{Fh}}}}}Bj}{{{Bf{BlK`}}}Bj}```{{{f{Gj}}{f{l}}{f{n}}{f{Ad}}{Dd{{j{Cj{D`{Cn}}}}}}{Dd{Fj}}{Db{Fl}}{Db{Fn}}{Db{G`}}{Db{Gb}}b{E`{{Dn{Gl}}}}{E`{{Dn{Gn}}}}{E`{{Dn{H`}}}}AfAhAj}{{Ej{Bj}}}}``{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}07{ce{}{}}0`{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}```{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}``{cc{}}{{}C`}8{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{f{Ad}}{f{l}}{E`{{Dn{Gl}}}}Afb{f{Gj}}{Dd{{j{Cj{D`{Cn}}}}}}{Db{Kh}}{Dd{Kh}}{Db{G`}}{Dd{G`}}{Db{Gb}}Aj}Kj}{Bf}``{{{Bf{BlKj}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{ce{}{}}``{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}`{cc{}}{{}C`}{{{Bf{BlGl}}Kl}Bj}{{{Bf{BlGl}}{Bf{Cj}}{Bf{{Hd{Kl}}}}}Bj}:{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{HhHh}Gl}{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{{{Bf{BlGl}}{Bf{{Hj{Cj}}}}}Bj}{ce{}{}}```{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{G`}}}G`}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}={c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{ce{}{}}``{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}8{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{ce{}{}}```````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}0000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000`{{{Bf{Kn}}}Kn}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{{}Kn}{C`{{Bf{c}}}{}}0000{C`{{Bf{Blc}}}{}}0000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{{{Bf{L`}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Lbc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}1111{C`Bj}0000`{{{Bf{Lb}}{Bf{Lb}}}Hf}{{{Bf{Ld}}{Bf{Ld}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000000000{{{Bf{Lb}}{Bf{BlHl}}}Hn}{{{Bf{Ld}}{Bf{BlHl}}}Hn}{cc{}}000{{{Bf{Lb}}}Ld}1{{{Bf{c}}}c{}}``{{}C`}0000{ce{}{}}0000{c{{Cd{e}}}{}{}}0000{{}{{Bd{CfCh}}}}0000```{LfL`}{{}Kn}{Bf}0000``{{{Bf{Kn}}{Bf{Lb}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}`{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}00{Jh{{Bd{Ld{Jj{Ld}}}}}}11{c{{Bd{Ld{Jj{Ld}}}}}{}}22222{{{Bf{c}}}El{}}0000{{{f{c}}}{{f{En}}}{}}0000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000{{{Bf{c}}}{{Bf{En}}}{}}0000>>>>>```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}`{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{BlLh}}Af}Bj}`{{{Bf{BlLh}}}Bj}{{{Dd{G`}}{E`{{Dn{Gl}}}}b{f{Gj}}}{{Ej{Bj}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}};``{{{Bf{BlLj}}{Bf{Cj}}}{{Bd{BjBb}}}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}`{cc{}}{{}C`}`{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{D`{Ll}}{Bf{Cj}}{Bf{{E`{{Dn{Gl}}}}}}{Bf{l}}{Bf{Af}}{Bf{b}}{Bf{{Db{G`}}}}{Bf{BlAd}}}{{Bd{BjBb}}}}`{Bf}`{{{Bf{BlLj}}Cj{D`{Cn}}}Bj}``{{{Bf{BlLj}}}Bj}`{{{Dd{{j{Cj{D`{Cn}}}}}}{Dd{Kh}}{Db{G`}}{Db{Gb}}{E`{{Dn{Gl}}}}{f{l}}{f{Ad}}bAfAj}{{Ej{Bj}}}}`{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}<`{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}```{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{f{Ad}}Afb{E`{{Dn{Gn}}}}{f{Gj}}{Dd{{j{Cj{D`{Cn}}}}}}{Db{Ln}}{Dd{Ln}}{Db{Fn}}{Dd{Fn}}{Db{Gb}}Aj}M`}``{Bf}``{{{Bf{BlM`}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}:``{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{{{Bf{BlGn}}Kd}Bj}{{{Bf{BlGn}}{Bf{Cj}}{Bf{{Hd{Mb}}}}}Bj}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{HhHh}Gn}`{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{{{Bf{BlGn}}{Bf{{Hj{Cj}}}}}Bj}:```{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fn}}}Fn}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9``{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Ln}}}Ln}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9```````````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}0000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000`{{{Bf{Md}}}Md}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{{}Md}{C`{{Bf{c}}}{}}0000{C`{{Bf{Blc}}}{}}0000{{{Bf{Mf}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Mhc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0000{C`Bj}0000{{{Bf{Mj}}{Bf{Mj}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{Mh}}{Bf{BlHl}}}Hn}{{{Bf{Mj}}{Bf{BlHl}}}Hn}{cc{}}00{{{Bf{Mh}}}Mj}11{{{Bf{c}}}c{}}``{{}C`}0000{ce{}{}}0000{c{{Cd{e}}}{}{}}0000{{}{{Bd{CfCh}}}}0000````````{MlMf}{{}Md}````{Bf}0000{{{Bf{Md}}{Bf{Mh}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}000{Jh{{Bd{Mj{Jj{Mj}}}}}}1{c{{Bd{Mj{Jj{Mj}}}}}{}}22222{{{Bf{c}}}El{}}0000{{{f{c}}}{{f{En}}}{}}0000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000{{{Bf{c}}}{{Bf{En}}}{}}0000>>>>>````{{{Bf{BlMn}}}Bj}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}`{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}```{Bf}<<{{{Dd{Fn}}{f{Gj}}b{E`{{Dn{Gn}}}}AfAj}{{Ej{Bj}}}}`{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9``````{{{Bf{BlN`}}{Bf{Cj}}}{{Bd{BjBb}}}}{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0``{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0{cc{}}0{{}C`}0``{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}0{{{Bf{Af}}{Bf{Bl{E`{{Dn{Gn}}}}}}{Bf{b}}{D`{Kf}}{Bf{Cj}}{Bf{Bl{Db{Fn}}}}{Bf{Bl{f{Ad}}}}}{{Bd{BjBb}}}}{{{Bf{BlN`}}{Bf{Cj}}Nb}{{Bd{BjBb}}}}{{{Bf{BlN`}}Nb{Bf{Cj}}}{{Bd{BjBb}}}}`````{Bf}0```{{{Bf{BlN`}}}Bj}{{{Dd{{j{Cj{D`{Cn}}}}}}{f{Ad}}Afb{E`{{Dn{Gn}}}}{f{Gj}}{Dd{Ln}}{Db{Fn}}{Db{Gb}}Aj}{{Ej{Bj}}}}`{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}0{{{Bf{BlN`}}}{{Bd{BjBb}}}}>>```{{{Bf{c}}Bh}Bj{}}```{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0{{{Bf{Nd}}}Nd}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}`{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0{{{Bf{BlNd}}{Bf{F`}}{Bf{BlNf}}{Bf{{Dj{DfDh}}}}}{{Nh{Bj}}}}{cc{}}0{{{Bf{c}}}c{}}{{{Bf{BlNd}}{Bf{Df}}}Bj}{{}C`}0{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}0``{{{Dj{Cj{Dj{DfDh}}}}Cj{E`{{Dn{Dl}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{Gb}}{Dd{Gb}}}}Eb{f{Gj}}{Dj{Ed{j{{D`{Ef}}C`}}}}C`{Bf{b}}Aj}Nj}{{{E`{{Dn{Dl}}}}b}Nd}`````{{{Bf{BlNd}}{Bf{F`}}{Bf{BlNf}}{Bf{{Dj{DfDh}}}}Eb}{{Nh{Cj}}}}{Bf}0`{{{Bf{BlNj}}}Bj}```{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}0``==````{{{Bf{c}}Bh}Bj{}}00{{{Bf{c}}}{{Bf{e}}}{}{}}000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}000{{{Bf{Nl}}}Nl}{{{Bf{Nn}}}Nn}{{{Bf{O`}}}O`}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}00{{{Bf{c}}}Bj{}}00{C`{{Bf{c}}}{}}000{C`{{Bf{Blc}}}{}}000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}000{{{Bf{O`}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Nlc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{C`Bj}000{{{Bf{Nl}}{Bf{Nl}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{Nl}}{Bf{BlHl}}}Hn}{cc{}}000{{{Bf{c}}}c{}}00`{{}C`}000{ce{}{}}000{c{{Cd{e}}}{}{}}000`{{}{{Bd{CfCh}}}}000```{{{Dj{DfDh}}{Ab{Ef}}{Bf{An}}}{{Nh{Nl}}}}{{}Nn}{ObO`}{Bf}000{{{Bf{Nn}}{Bf{Nl}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}```{{{Bf{c}}}e{}{}}00{c{{Bd{e}}}{}{}}0000000{{{Bf{c}}}El{}}000{{{f{c}}}{{f{En}}}{}}000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}000{{{Bf{c}}}{{Bf{En}}}{}}000====`````````{{{Bf{c}}Bh}Bj{}}0{{{Bf{c}}}{{Bf{e}}}{}{}}0000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000{{{Bf{Od}}}Od}{{{Bf{Of}}}Of}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}0{{{Bf{c}}}Bj{}}0{{}Of}{C`{{Bf{c}}}{}}0000{C`{{Bf{Blc}}}{}}0000{{{Bf{Oh}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Odc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0000{C`Bj}0000{{{Bf{Oj}}{Bf{Oj}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{Od}}{Bf{BlHl}}}Hn}{{{Bf{Oj}}{Bf{BlHl}}}Hn}{cc{}}000{{{Bf{Od}}}Oj}1{{{Bf{c}}}c{}}0``{{}C`}0000{ce{}{}}0000{c{{Cd{e}}}{}{}}0000``{{}{{Bd{CfCh}}}}0000`{{{Bf{{Hd{Cn}}}}{Bf{Ol}}}{{Ij{{Bf{{Hd{Cn}}}}{j{DfDh}}c}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}```{OnOh}{{}Of}```{Bf}0000{{{Bf{Of}}{Bf{Od}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}{{{Bf{c}}}e{}{}}0{c{{Bd{e}}}{}{}}00{Jh{{Bd{Oj{Jj{Oj}}}}}}11{c{{Bd{Oj{Jj{Oj}}}}}{}}22222{{{Bf{c}}}El{}}0000{{{f{c}}}{{f{En}}}{}}0000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000{{{Bf{c}}}{{Bf{En}}}{}}0000?????``````````````````{{{Bf{c}}Bh}Bj{}}0000{{{Bf{BlA@`}}{Bf{Cj}}}Bj}{{{Bf{c}}}{{Bf{e}}}{}{}}00000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}00000{{{Bf{A@b}}}A@b}{{{Bf{A@`}}}A@`}{{{Bf{A@d}}}A@d}{{{Bf{A@f}}}A@f}{{{Bf{Gb}}}Gb}{{{Bf{A@`}}}{{f{Dl}}}}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}0000{{{Bf{c}}}Bj{}}0000{{{Bf{A@b}}{Bf{A@b}}}A@h}`{{{Bf{c}}{Bf{e}}}A@h{}{}}{{}A@b}{{}A@`}{C`{{Bf{c}}}{}}00000{C`{{Bf{Blc}}}{}}00000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}00000{C`Bj}00000{{A@bC`{Ab{A@j}}}A@b}{{{Bf{A@b}}{Bf{A@b}}}Hf}{{{Bf{A@f}}{Bf{A@f}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000000000{{{Bf{BlA@b}}}Bj}{{{Bf{A@d}}{Bf{BlHl}}}Hn}{{{Bf{A@f}}{Bf{BlHl}}}Hn}{cc{}}00000{{{Bf{c}}}c{}}0000{{{Bf{A@`}}}Jh}{{{Bf{A@`}}{Bf{Df}}}A@b}1{{{Bf{A@`}}A@l{Bf{{Hj{Df}}}}}{{Ab{Df}}}}{{{Bf{A@`}}}{{Bf{{Dj{CjA@d}}}}}}{{{Bf{A@`}}}{{Bf{{Hj{Df}}}}}}{{{Bf{BlA@`}}}{{Bf{Bl{Dj{CjA@d}}}}}}{{{Bf{A@`}}C`}{{D`{{j{Cj{Dj{DfDh}}}}}}}}{{{Bf{A@`}}}{{Bf{{Dj{DfA@j}}}}}}{{}C`}00000{{{Bf{BlA@`}}{Bf{Df}}}Hf}{{{Bf{BlA@`}}{Bf{Df}}A@j}Bj}{ce{}{}}00000{c{{Cd{e}}}{}{}}00000``````{{}{{Bd{CfCh}}}}00000`{{{Bf{A@b}}{Bf{A@b}}}{{Ab{A@h}}}}``{Bf}00000`6{{{Bf{BlA@`}}{Bf{Df}}}Bj}000`{{{Bf{BlA@b}}}Bj}00`{{{Bf{c}}}e{}{}}00001`{c{{Bd{e}}}{}{}}00000000000{{{Bf{c}}}El{}}00000{{{Bf{BlA@`}}{Bf{Cj}}}Bj}{{{f{c}}}{{f{En}}}{}}00000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}00000{{{Bf{c}}}{{Bf{En}}}{}}00000======```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}`{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{E`{{Dn{Dl}}}}{f{Gj}}b{Dd{{j{Cj{Dj{DfDh}}}}}}Eb{Dj{Ed{j{{D`{Ef}}C`}}}}C`Aj}A@n}{Bf}{{{Bf{b}}{f{Gj}}{E`{{Dn{Dl}}}}Eb{Dj{Ed{j{{D`{Ef}}C`}}}}C`Aj}{{j{{j{{Db{{j{Cj{Dj{DfDh}}}}}}{Dd{{j{Cj{Dj{DfDh}}}}}}}}{D`{A@n}}}}}}{{Eb{E`{{Dn{Dl}}}}O`AA`AAbDf{Bf{b}}Aj}{{Nh{Cj}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}};{EfEf}`{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{j{{Db{Bn}}{Ej{Bj}}}}}AAd}{Bf}{{{Bf{BlAAd}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}:````````````{{{Bf{c}}Bh}Bj{}}0`{{{Bf{c}}}{{Bf{e}}}{}{}}000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}000{{{Bf{AAf}}}AAf}{{{Bf{Eb}}}Eb}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}0{{{Bf{c}}}Bj{}}0{{}AAf}{C`{{Bf{c}}}{}}000{C`{{Bf{Blc}}}{}}000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}000{C`Bj}000`{{{Bf{AAh}}{Bf{AAh}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{AAj}}{Bf{BlHl}}}Hn}{{{Bf{AAh}}{Bf{BlHl}}}Hn}{IhAAj}{cc{}}{LbAAj}{MhAAj}{OdAAj}3{{{Bf{AAj}}}AAh}44{{{Bf{c}}}c{}}0{{{Bf{Eb}}{Bf{{Hd{Cn}}}}{Bf{Cj}}}{{Nh{Bj}}}}``{{}C`}000{ce{}{}}000{c{{Cd{e}}}{}{}}000{{}{{Bd{CfCh}}}}000{{}AAf}``{Bf}000````{{{Bf{AAf}}{Bf{AAj}}{Bf{Bl{D`{Cn}}}}}{{Nh{Bj}}}}{{{Bf{c}}}e{}{}}0{c{{Bd{e}}}{}{}}{Jh{{Bd{AAh{Jj{AAh}}}}}}111{c{{Bd{AAh{Jj{AAh}}}}}{}}2222{{{Bf{c}}}El{}}000{{{f{c}}}{{f{En}}}{}}000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}000{{{Bf{c}}}{{Bf{En}}}{}}000===={{AAfId}AAf}{{AAfKn}AAf}{{AAfMd}AAf}{{AAfOf}AAf}`{{{Bf{{Hd{{j{AAlAAnAB`}}}}}}}{{Bd{BjBb}}}}```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{b{{j{{f{d}}h}}}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}``{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}```{Bf}{{b{f{l}}{f{n}}{Ab{A`}}{f{Ad}}AfhAhAj}{{Bd{{j{{f{Al}}AnB`}}Bb}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Gj}}}{{f{Gj}}}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{Cl}}}{{f{Gj}}}}{{{Bf{ABb}}}{{f{Gj}}}}{{{Bf{Gj}}}C`}0{{{Bf{Gj}}}{{Hj{Cj}}}}{{{Bf{Gj}}}{{Hj{Df}}}}{{{Bf{Gj}}}{{Dj{Cj{j{DfFf{Ab{Ed}}}}}}}}{{{Bf{Gj}}}{{Dj{Ed{j{JhJh}}}}}}{{{Bf{Cl}}}Jh}{{{Bf{ABb}}}Jh}10{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{ABd{CjF`NdEb}}}ABb}`{Bf}{{{Bf{Gj}}{Bf{Cj}}{Bf{AAf}}AAjHf}{{Bd{BjBb}}}}{{{Bf{BlGj}}{Bf{Cj}}}Bj}{{{Bf{BlCl}}DhDf}{{Bd{BjBb}}}}{{{Bf{BlABb}}DhDf}{{Bd{BjBb}}}}10{{{Bf{BlCl}}DfA@l}{{Bd{BjBb}}}}{{{Bf{BlABb}}DfA@l}{{Bd{BjBb}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}?`{{{Bf{BlDl}}{Bf{Cj}}}Bj}{{{Bf{Dl}}}{{f{Dl}}}}{{{Bf{Dl}}}Jh}{{{Bf{Dl}}{Bf{Df}}}A@b}1{{{Bf{Dl}}A@l{Bf{{Hj{Df}}}}}{{Ab{Df}}}}{{{Bf{Dl}}}{{Bf{{Dj{CjA@d}}}}}}{{{Bf{Dl}}}{{Bf{{Hj{Df}}}}}}{{{Bf{BlDl}}}{{Bf{Bl{Dj{CjA@d}}}}}}{{{Bf{Dl}}C`}{{D`{{j{Cj{Dj{DfDh}}}}}}}}{{{Bf{Dl}}}{{Bf{{Dj{DfA@j}}}}}}{{{Bf{BlDl}}{Bf{Df}}}Hf}{{{Bf{BlDl}}{Bf{Df}}A@j}Bj}1{{{Bf{BlDl}}{Bf{Df}}}Bj}000<","D":"BAh","p":[[5,"ProtocolConfig",2152],[10,"ProtocolController",2153],[5,"Box",2154],[5,"ProtocolChannels",2057],[1,"tuple"],[10,"SelectorController",2155],[10,"ConsensusController",2156],[5,"BootstrapPeers",2157],[6,"Option",2158],[10,"PoolController",2159],[5,"Storage",2160],[5,"MipStore",2161],[5,"MassaMetrics",2162],[10,"ProtocolManager",2153],[6,"KeyPair",2163],[5,"NodeId",2164],[6,"ProtocolError",2165],[6,"Result",2166],[1,"reference"],[5,"Private",2167],[1,"unit"],[0,"mut"],[6,"ConnectivityCommand",13],[1,"usize"],[5,"With",2168],[5,"Request",2169],[5,"Layout",2170],[5,"LayoutError",2170],[5,"PeerId",2171],[10,"NetworkController",2087],[1,"u8"],[5,"Vec",2172],[5,"MassaSender",2173],[5,"MassaReceiver",2174],[6,"SocketAddr",2175],[6,"TransportType",2176],[5,"HashMap",2177],[10,"PeerDBTrait",2132],[8,"RwLock",2178],[5,"Arc",2179],[5,"MessagesHandler",1921],[5,"String",2180],[6,"IpAddr",2181],[5,"PeerCategoryInfo",2152],[5,"JoinHandle",2182],[5,"TypeId",2183],[10,"Any",2183],[5,"Context",45],[5,"ProtocolControllerImpl",73],[5,"NetworkStats",2184],[6,"PeerConnectionType",2185],[6,"BlockId",2186],[6,"BlockHandlerRetrievalCommand",210],[6,"BlockHandlerPropagationCommand",178],[6,"OperationHandlerPropagationCommand",1018],[6,"EndorsementHandlerPropagationCommand",702],[6,"PeerManagementCmd",1649],[8,"SecuredHeader",2187],[8,"PreHashMap",2188],[8,"PreHashSet",2188],[10,"ActiveConnectionsTrait",2087],[5,"EndorsementCache",674],[5,"OperationCache",989],[5,"BlockCache",151],[5,"BlockHandler",121],[1,"slice"],[1,"bool"],[1,"u32"],[5,"HashSet",2189],[5,"Formatter",2190],[8,"Result",2190],[6,"AskForBlockInfo",240],[6,"BlockInfoReply",240],[5,"BlockMessageSerializer",240],[5,"BlockMessageDeserializer",240],[6,"BlockMessage",240],[8,"IResult",2191],[10,"ParseError",2192],[10,"ContextError",2192],[6,"MessageTypeId",240],[6,"BlockInfoType",240],[5,"BlockMessageDeserializerArgs",240],[6,"SerializeError",2193],[1,"u64"],[5,"TryFromPrimitiveError",2194],[5,"PropagationThread",498],[5,"BlockPropagationData",498],[5,"RetrievalThread",554],[5,"BlockInfo",554],[6,"OperationId",2195],[8,"SecureShareOperation",2195],[6,"EndorsementHandlerRetrievalCommand",730],[5,"EndorsementHandler",644],[6,"EndorsementId",2196],[5,"EndorsementMessageSerializer",751],[5,"EndorsementMessageDeserializer",751],[6,"EndorsementMessage",751],[6,"MessageTypeId",751],[5,"EndorsementMessageDeserializerArgs",751],[5,"PropagationThread",893],[5,"RetrievalThread",922],[8,"SecureShareEndorsement",2196],[6,"OperationHandlerRetrievalCommand",1046],[5,"OperationHandler",959],[6,"OperationPrefixId",2195],[5,"OperationMessageSerializer",1073],[5,"OperationMessageDeserializer",1073],[6,"OperationMessage",1073],[6,"MessageTypeId",1073],[5,"OperationMessageDeserializerArgs",1073],[5,"PropagationThread",1217],[5,"RetrievalThread",1251],[8,"OperationPrefixIds",2195],[5,"MassaHandshake",1315],[6,"Endpoint",2197],[8,"PeerNetResult",2198],[5,"PeerManagementHandler",1315],[5,"Announcement",1385],[5,"AnnouncementSerializer",1385],[5,"AnnouncementDeserializer",1385],[5,"AnnouncementDeserializerArgs",1385],[6,"PeerManagementMessage",1504],[5,"PeerManagementMessageSerializer",1504],[5,"PeerManagementMessageDeserializer",1504],[6,"MessageTypeId",1504],[5,"IpAddrDeserializer",2199],[5,"PeerManagementMessageDeserializerArgs",1504],[5,"PeerDB",1649],[5,"ConnectionMetadata",1649],[5,"PeerInfo",1649],[6,"PeerState",1649],[6,"Ordering",2200],[5,"MassaTime",2201],[5,"Duration",2202],[5,"Tester",1872],[5,"VersionDeserializer",2203],[5,"PeerIdDeserializer",2171],[5,"ProtocolManagerImpl",1898],[5,"MessagesSerializer",1921],[6,"MessageTypeId",1921],[6,"Message",1921],[5,"Hash",2204],[6,"Signature",2163],[6,"PublicKey",2163],[5,"NetworkControllerImpl",2087],[5,"PeerNetManager",2205],[15,"GetStats",44],[15,"IntegratedBlock",208],[15,"WishlistDelta",238],[15,"DataRequest",494],[15,"DataResponse",494],[5,"OperationBatchItem",1251],[5,"PeerManagementChannel",1649],[15,"GetBootstrapPeers",1871]],"r":[[3,2057],[9,2057]],"b":[[1977,"impl-From%3CBlockMessage%3E-for-Message"],[1979,"impl-From%3CEndorsementMessage%3E-for-Message"],[1980,"impl-From%3COperationMessage%3E-for-Message"],[1981,"impl-From%3CPeerManagementMessage%3E-for-Message"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFwHmwAAAAMABQADAAsAEAAdAAEAIAAYADoAAgA+ABgAWAADAF4AAgBiAAAAZgAfAIcAAACJAAQAjwAIAJkAAACbAAEAngADAKMAAACmAAEAqQAJALYACwDDAAEAxgAKANMAAQDWAAkA4QABAOQACgDzAAQA+QAAAPsAAAD/AAIAAwEAAAYBAAAJAV4AbgEAAHEBDACGAWgA8wECAPoBAwAAAggADAIBABACAwAWAgEAGQIBAB0CDQAsAgUAMwIGADsCDgBMAgAATgIAAFECAQBVAgMAWgIDAGQCAQBnAgUAbgIFAHUCDACDAg0AkgIAAJQCDgCkAgIAqAIDAK4CAACyAgEAtgIGAL4CDQDNAgEA0AISAOQCAADmAg0A9QI3ADEDAAAzAwcAQAM9AH8DCgCLAwAAjQMCAJEDCwCeAwgAqAMBAKsDAgCvAwIAswMWAMsDAADNAxAA3wMCAOQDAwDpAwAA7QMBAPIDBgD6AwEA/QMKAAkEAQAMBBYAJAQBACcECgAzBAMAOAQAADoEAAA8BAsASQQhAG4EAABxBAcAfgQJAJAEPgDQBAEA0wQFANoECQDlBAQA6wQNAPsEAQD+BAAAAQUEAAgFAQALBQAADQUaACkFEgA+BQMARAVWAJ8FAgCjBQMAqwUJALYFCADCBSUA6QUxAB8GAAAhBggALwYOAEAGlADbBgcA5AYCAOgGCAD3BhQADQcPAB4HBQAlBzMAWgcBAF0HAQBgBwoAbAcGAHQHAAB2BwMAewc/ALwHAgDABwAAwwcIANAHEgDkByMACggFABEIBQAYCAAAGggFACEIEAAzCAwAQQgnAA=="}],\ -["massa_sdk",{"t":"FFGFPFFFPFNNNNONNNNNNNNNNCOOOOCOONNNNNNNNNNNNNNNNNNHHNNNNNNNOOOOOHONNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNOONONNNNNNNHNNNNNNNNNNNNNNNNNNNNNOHHHFFFNNNNNNOOONNNNNNNNNOONNNNNNNNNOONNNNNNOOOOOONNNNNNNNNNNNNNN","n":["Client","ClientConfig","ClientError","ClientV2","Connect","HttpConfig","RpcClient","RpcClientV2","Url","WsConfig","_get_cliques","_get_graph_interval","_get_stakers","add_staking_secret_keys","api","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cert_manager","certificate_store","chain_id","client_config","client_config","config","enabled","enabled","execute_read_only_bytecode","execute_read_only_call","fmt","fmt","from","from","from","from","from","from","from","from_url","from_url","get_addresses","get_blocks","get_datastore_entries","get_endorsements","get_filtered_sc_output_event","get_headers","get_id_kind","get_largest_stakers","get_next_block_best_parents","get_operations","get_slots_transfers","get_staking_addresses","get_status","get_version","grpc_private","grpc_public","headers","http_client","http_client","http_client_from_url","id_kind","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","max_concurrent_requests","max_log_length","max_notifs_per_subscription","max_redirections","max_request_body_size","new","new","node_add_to_bootstrap_blacklist","node_add_to_bootstrap_whitelist","node_add_to_peers_whitelist","node_ban_by_id","node_ban_by_ip","node_bootstrap_blacklist","node_bootstrap_whitelist","node_bootstrap_whitelist_allow_all","node_peers_whitelist","node_remove_from_bootstrap_blacklist","node_remove_from_bootstrap_whitelist","node_remove_from_peers_whitelist","node_sign_message","node_unban_by_id","node_unban_by_ip","private","public","remove_staking_addresses","request_timeout","send_operations","source","stop_node","subscribe_new_blocks","subscribe_new_blocks_headers","subscribe_new_filled_blocks","subscribe_new_operations","to_error_obj","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","ws_client","ws_client_from_url","gen_cert_for_ca","gen_signed_cert","ClientConfig","HttpConfig","WsConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","certificate_store","client_config","client_config","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","enabled","enabled","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","headers","id_kind","into","into","into","into_request","into_request","into_request","max_concurrent_requests","max_log_length","max_notifs_per_subscription","max_redirections","max_request_body_size","request_timeout","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_sdk"],[134,"massa_sdk::cert_manager"],[136,"massa_sdk::config"],[197,"massa_models::clique"],[198,"alloc::vec"],[199,"jsonrpsee_core"],[200,"massa_api_exports"],[201,"massa_api_exports::block"],[202,"massa_models::address"],[203,"massa_models::prehash"],[204,"alloc::string"],[205,"massa_api_exports::execution"],[206,"core::fmt"],[207,"http::uri"],[208,"tonic::transport::error"],[209,"core::net::socket_addr"],[210,"massa_api_exports::address"],[211,"massa_models::block_id"],[212,"massa_api_exports::datastore"],[213,"massa_models::endorsement"],[214,"massa_api_exports::endorsement"],[215,"massa_models::execution"],[216,"massa_models::output_event"],[217,"http::header::map"],[218,"jsonrpsee_core::client"],[219,"core::option"],[220,"massa_api_exports::page"],[221,"massa_models::operation"],[222,"massa_api_exports::operation"],[223,"massa_models::slot"],[224,"massa_api_exports::node"],[225,"massa_models::version"],[226,"jsonrpsee_http_client::transport"],[227,"jsonrpsee_http_client::client"],[228,"tonic::request"],[229,"core::net::ip_addr"],[230,"core::result"],[231,"massa_models::node"],[232,"massa_models::composite"],[233,"core::error"],[234,"jsonrpsee_core::client::error"],[235,"massa_models::block_header"],[236,"massa_models::secure_share"],[237,"massa_models::block"],[238,"jsonrpsee_types::error"],[239,"core::any"],[240,"jsonrpsee_core::client::async_client"],[241,"rcgen"],[242,"rcgen::error"]],"i":[0,0,0,0,17,0,0,0,17,0,1,1,1,1,57,55,1,57,26,17,55,1,57,26,17,0,74,55,23,25,0,23,25,1,1,17,17,55,1,57,26,17,17,17,1,26,1,1,1,1,1,0,0,26,26,1,1,1,1,26,55,55,74,1,26,0,74,55,1,57,26,17,55,1,57,26,17,74,74,25,25,74,55,57,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,55,55,1,74,1,17,1,26,26,26,26,0,17,55,1,57,26,17,55,1,57,26,17,55,1,57,26,17,55,1,57,26,17,26,0,0,0,0,0,0,74,23,25,74,23,25,74,23,25,74,23,25,74,23,25,74,23,25,23,25,74,23,25,74,23,25,74,23,25,74,74,74,23,25,74,23,25,74,74,25,25,74,74,74,23,25,74,23,25,74,23,25,74,23,25,74,23,25],"f":"``````````{{{d{b}}}{{j{{h{f}}}}}}{{{d{b}}l}{{j{{h{n}}}}}}{{{d{b}}}{{j{{Ad{A`Ab}}}}}}{{{d{b}}{h{Af}}}{{j{Ah}}}}`{{{d{c}}}{{d{e}}}{}{}}0000{{{d{Ajc}}}{{d{Aje}}}{}{}}0000````````{{{d{b}}Al}{{j{An}}}}{{{d{b}}B`}{{j{An}}}}{{{d{Bb}}{d{AjBd}}}Bf}0{cc{}}000{BhBb}1{BjBb}{{{d{Bl}}{d{Bn}}}b}{{C`{d{Bn}}{d{Cb}}}Cd}{{{d{b}}{h{A`}}}{{j{{h{Cf}}}}}}{{{d{b}}{h{Ch}}}{{j{{h{Cj}}}}}}{{{d{b}}{h{Cl}}}{{j{{h{Cn}}}}}}{{{d{b}}{h{D`}}}{{j{{h{Db}}}}}}{{{d{b}}Dd}{{j{{h{Df}}}}}}{{{d{{Dj{{Dh{AfAf}}}}}}}Dl}{{{d{Bl}}}Dn}{{{d{Cd}}{Eb{E`}}}{{j{{Ed{{Dh{ChAb}}}}}}}}{{{d{Cd}}}{{j{{h{{Dh{ChAb}}}}}}}}{{{d{b}}{h{Ef}}}{{j{{h{Eh}}}}}}{{{d{b}}{h{Ej}}}{{j{{h{{h{El}}}}}}}}{{{d{b}}}{{j{{En{A`}}}}}}{{{d{b}}}{{j{F`}}}}{{{d{Cd}}}{{j{Fb}}}}`````{{{d{Bl}}{d{Bn}}}{{Ff{Fd}}}}`{ce{}{}}0000{c{{Fh{e}}}{}{}}0000`````{{FjFlFlFlFlAb{d{Bn}}}{{G`{FnBb}}}}{{FjFl{d{Bn}}{d{Cb}}}Gb}{{{d{b}}{h{Fj}}}{{j{Ah}}}}00{{{d{b}}{h{Gd}}}{{j{Ah}}}}1{{{d{b}}}{{j{{h{Fj}}}}}}0{{{d{b}}}{{j{Ah}}}}1333{{{d{b}}{h{Gf}}}{{j{Gh}}}}34``{{{d{b}}{h{A`}}}{{j{Ah}}}}`{{{d{b}}{h{Gj}}}{{j{{h{Ef}}}}}}{{{d{Bb}}}{{Eb{{d{Gl}}}}}}4{{{d{Cd}}}{{G`{{Gn{Cj}}H`}}}}{{{d{Cd}}}{{G`{{Gn{{Hd{HbCh}}}}H`}}}}{{{d{Cd}}}{{G`{{Gn{Hf}}H`}}}}{{{d{Cd}}}{{G`{{Gn{Hh}}H`}}}}{AfHj}{{{d{c}}}Af{}}{c{{G`{e}}}{}{}}000000000{{{d{c}}}Hl{}}0000{ce{}{}}0000`{{{d{Bl}}{d{Cb}}}Hn}{{}{{G`{I`Ib}}}}{{{d{I`}}{h{Af}}}{{G`{{Dh{AfAf}}Ib}}}}```{{{d{c}}}{{d{e}}}{}{}}00{{{d{Ajc}}}{{d{Aje}}}{}{}}00```{{{d{Id}}}Id}{{{d{Bn}}}Bn}{{{d{Cb}}}Cb}{{{d{c}}{d{Aje}}}Ah{}{}}00{{{d{c}}}Ah{}}00``{{{d{Id}}{d{AjBd}}}Bf}{{{d{Bn}}{d{AjBd}}}Bf}{{{d{Cb}}{d{AjBd}}}Bf}{cc{}}00{{{d{c}}}c{}}00``???{c{{Fh{e}}}{}{}}00``````{{{d{c}}}e{}{}}00{c{{G`{e}}}{}{}}00000{{{d{c}}}Hl{}}00{ce{}{}}00","D":"Mh","p":[[5,"RpcClient",0],[1,"reference"],[5,"Clique",197],[5,"Vec",198],[8,"RpcResult",199],[5,"TimeInterval",200],[5,"BlockSummary",201],[6,"Address",202],[1,"u64"],[8,"PreHashMap",203],[5,"String",204],[1,"unit"],[0,"mut"],[5,"ReadOnlyBytecodeExecution",205],[5,"ExecuteReadOnlyResponse",205],[5,"ReadOnlyCall",205],[6,"ClientError",0],[5,"Formatter",206],[8,"Result",206],[5,"InvalidUri",207],[5,"Error",208],[1,"str"],[5,"HttpConfig",136],[6,"SocketAddr",209],[5,"WsConfig",136],[5,"RpcClientV2",0],[5,"AddressInfo",210],[6,"BlockId",211],[5,"BlockInfo",201],[5,"DatastoreEntryInput",212],[5,"DatastoreEntryOutput",212],[6,"EndorsementId",213],[5,"EndorsementInfo",214],[5,"EventFilter",215],[5,"SCOutputEvent",216],[1,"tuple"],[1,"slice"],[5,"HeaderMap",217],[6,"IdKind",218],[5,"ApiRequest",200],[6,"Option",219],[5,"PagedVecV2",220],[6,"OperationId",221],[5,"OperationInfo",222],[5,"Slot",223],[5,"Transfer",205],[8,"PreHashSet",203],[5,"NodeStatus",224],[5,"Version",225],[6,"HttpBackend",226],[5,"HttpClient",227],[5,"Request",228],[6,"IpAddr",229],[1,"u16"],[5,"Client",0],[6,"Result",230],[5,"ClientV2",0],[5,"NodeId",231],[1,"u8"],[5,"PubkeySig",232],[5,"OperationInput",222],[10,"Error",233],[5,"Subscription",218],[6,"Error",234],[5,"BlockHeader",235],[5,"SecureShare",236],[5,"FilledBlock",237],[5,"Operation",221],[5,"ErrorObject",238],[5,"TypeId",239],[5,"Client",240],[5,"Certificate",241],[6,"RcgenError",242],[5,"ClientConfig",136]],"r":[[1,136],[5,136],[9,136]],"b":[[35,"impl-Display-for-ClientError"],[36,"impl-Debug-for-ClientError"],[41,"impl-From%3CInvalidUri%3E-for-ClientError"],[43,"impl-From%3CError%3E-for-ClientError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFkAEQALAAAAEAAJAB8AAAAkAAEAKgAAACwAAAA0AAEAQAACAEkABABpAAAAbwAXAIwABQCVAAgAoAACAKYAAgCuAAIAtwAOAA=="}],\ -["massa_serialization",{"t":"FFFKPPFFFFGKPFFFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNMNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["BoolDeserializer","BoolSerializer","DeserializeError","Deserializer","GeneralError","NumberTooBig","OptionDeserializer","OptionSerializer","RatioDeserializer","RatioSerializer","SerializeError","Serializer","StringTooBig","U128VarIntDeserializer","U128VarIntSerializer","U16VarIntDeserializer","U16VarIntSerializer","U32VarIntDeserializer","U32VarIntSerializer","U64VarIntDeserializer","U64VarIntSerializer","add_context","append","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","data_deserializer","data_deserializer","data_serializer","data_serializer","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","errors","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_char","from_error_kind","gen_varint","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","new","new","new","new","new","new","new","new","new","new","new","new","new","new","or","phantom_data","phantom_data","phantom_t","phantom_t","range","range","range","range","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id"],"q":[[0,"massa_serialization"],[262,"nom::error"],[263,"core::clone"],[264,"num_integer"],[265,"core::default"],[266,"nom::internal"],[267,"core::option"],[268,"num_rational"],[269,"core::fmt"],[270,"core::ops::range"],[271,"alloc::vec"],[272,"core::result"],[273,"alloc::string"],[274,"core::any"]],"i":[0,0,0,0,8,8,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,5,5,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,20,26,17,24,9,11,13,15,22,23,24,21,10,12,14,16,20,23,26,5,8,8,5,5,22,23,24,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,5,5,0,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,9,10,11,12,13,14,15,16,17,20,22,23,24,26,5,24,26,17,20,10,12,14,16,19,9,11,13,15,17,22,24,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26],"f":"`````````````````````{{{f{{d{b}}}}{f{h}}j}j}{{{f{{d{b}}}}lj}j}{{{f{c}}}{{f{e}}}{}{}}000000000000000{{{f{nc}}}{{f{ne}}}{}{}}000000000000000{{{f{A`}}}A`}{{{f{j}}}j}{{{f{Ab}}}Ab}{{{f{Ad}}}Ad}{{{f{Af}}}Af}{{{f{Ah}}}Ah}{{{f{Aj}}}Aj}{{{f{Al}}}Al}{{{f{An}}}An}{{{f{B`}}}B`}{{{f{{Bb{ce}}}}}{{Bb{ce}}}Bd{{Bf{c}}Bd}}{{{f{{Bh{ce}}}}}{{Bh{ce}}}{BdBd}{{Bj{c}}Bd}}{{{f{Bl}}}Bl}{{{f{Bn}}}Bn}{{{f{{C`{ce}}}}}{{C`{ce}}}{CbBdBd}{{Bf{c}}Bd}}{{{f{{Cd{ce}}}}}{{Cd{ce}}}{CbBdBd}{{Bj{c}}Bd}}{{{f{c}}{f{ne}}}Cf{}{}}000000000000000{{{f{c}}}Cf{}}000000000000000````{{}Ab}{{}Af}{{}Aj}{{}An}{{}Bl}{{}Bn}{{}{{C`{ce}}}{CbBdCh}{{Bf{c}}Ch}}{{{f{Bj}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}ce}}}{}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Ad}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}D`c}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Ah}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Dbc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Al}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Ddc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{B`}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Dfc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{{Bh{ce}}}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}{Dh{c}}g}}}Bd{{Bj{c}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Bn}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Djc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{{Cd{ce}}}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}{Dl{c}}g}}}{CbBd}{{Bj{c}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}`{{{f{A`}}{f{nDn}}}E`}0{{{f{j}}{f{nDn}}}E`}0{{{f{Bl}}{f{nDn}}}E`}{{{f{Bn}}{f{nDn}}}E`}{{{f{{C`{ce}}}}{f{nDn}}}E`{CbBdEb}{{Bf{c}}Eb}}{cc{}}000000000000000{{{f{{d{b}}}}Ed}j}{{{f{{d{b}}}}l}j}`{ce{}{}}000000000000000{{}Ab}{{{Ef{D`}}{Ef{D`}}}Ad}{{}Af}{{{Ef{Db}}{Ef{Db}}}Ah}{{}Aj}{{{Ef{Dd}}{Ef{Dd}}}Al}{{}An}{{{Ef{Df}}{Ef{Df}}}B`}{e{{Bb{ce}}}{}{{Bf{c}}}}{e{{Bh{ce}}}Bd{{Bj{c}}}}{{}Bl}{{}Bn}{e{{C`{ce}}}{CbBd}{{Bf{c}}}}{e{{Cd{ce}}}{CbBd}{{Bj{c}}}}{{jj}j}````````{{{f{Bf}}{f{c}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}{}}{{{f{Ab}}{f{D`}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{Af}}{f{Db}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{Aj}}{f{Dd}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{An}}{f{Df}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{{Bb{ce}}}}{f{{Dh{c}}}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}{}{{Bf{c}}}}{{{f{Bl}}{f{Dj}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{{C`{ce}}}}{f{{Dl{c}}}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}{CbBd}{{Bf{c}}}}{{{f{c}}}e{}{}}000000000000000{{{f{c}}}El{}}0{c{{Ej{e}}}{}{}}0000000000000000000000000000000{{{f{c}}}En{}}000000000000000","D":"Gh","p":[[1,"u8"],[1,"slice"],[1,"reference"],[1,"str"],[5,"DeserializeError",0],[6,"ErrorKind",262],[0,"mut"],[6,"SerializeError",0],[5,"U16VarIntSerializer",0],[5,"U16VarIntDeserializer",0],[5,"U32VarIntSerializer",0],[5,"U32VarIntDeserializer",0],[5,"U64VarIntSerializer",0],[5,"U64VarIntDeserializer",0],[5,"U128VarIntSerializer",0],[5,"U128VarIntDeserializer",0],[5,"OptionSerializer",0],[10,"Clone",263],[10,"Serializer",0],[5,"OptionDeserializer",0],[10,"Deserializer",0],[5,"BoolSerializer",0],[5,"BoolDeserializer",0],[5,"RatioSerializer",0],[10,"Integer",264],[5,"RatioDeserializer",0],[1,"unit"],[10,"Default",265],[8,"IResult",266],[10,"ParseError",262],[10,"ContextError",262],[1,"u16"],[1,"u32"],[1,"u64"],[1,"u128"],[6,"Option",267],[1,"bool"],[5,"Ratio",268],[5,"Formatter",269],[8,"Result",269],[10,"Debug",269],[1,"char"],[6,"Bound",270],[5,"Vec",271],[6,"Result",272],[5,"String",273],[5,"TypeId",274]],"r":[],"b":[[123,"impl-Debug-for-SerializeError"],[124,"impl-Display-for-SerializeError"],[125,"impl-Debug-for-DeserializeError%3C\'a%3E"],[126,"impl-Display-for-DeserializeError%3C\'a%3E"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAMoACgAAAAAAAwAAAAcAAgALAAAAFgBcAHQADgCTAAIArgABALIACgC+AEgA"}],\ -["massa_signature",{"t":"PGPGPGFFPGFPPPCCHPGPPPNNNNNNNNNNNNNNNGQFPQTSGQFFPQTSTGQFFPQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNN","n":["InvalidVersionError","KeyPair","KeyPairV0","MassaSignatureError","ParsingError","PublicKey","PublicKeyDeserializer","PublicKeyV0","PublicKeyV0","Signature","SignatureDeserializer","SignatureError","SignatureV0","WrongPrefix","error","signature_impl","verify_signature_batch","InvalidVersionError","MassaSignatureError","ParsingError","SignatureError","WrongPrefix","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","into","to_owned","to_string","try_from","try_into","type_id","vzip","KeyPair","KeyPair","KeyPairV0","KeyPairV0","KeyPairVariant","PUBLIC_KEY_SIZE_BYTES","PUBLIC_PREFIX","PublicKey","PublicKey","PublicKeyDeserializer","PublicKeyV0","PublicKeyV0","PublicKeyVariant","SECRET_KEY_BYTES_SIZE","SECRET_PREFIX","SIGNATURE_SIZE_BYTES","Signature","Signature","SignatureDeserializer","SignatureV0","SignatureV0","SignatureVariant","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_bs58_check","from_bs58_check","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_str","from_str","from_str","generate","generate","get_public_key","get_public_key","get_ser_len","get_ser_len","get_ser_len","get_ser_len","get_ser_len","get_ser_len","get_version","get_version","hash","hash","into","into","into","into","into","into","into","into","new","new","partial_cmp","partial_cmp","serialize","serialize","serialize","sign","sign","to_bs58_check","to_bs58_check","to_bytes","to_bytes","to_bytes","to_bytes","to_bytes","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","verify_signature","verify_signature","verify_signature_batch","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_signature"],[17,"massa_signature::error"],[37,"massa_signature::signature_impl"],[230,"massa_hash::hash"],[231,"core::result"],[232,"core::fmt"],[233,"alloc::string"],[234,"core::any"],[235,"core::cmp"],[236,"serde::de"],[237,"nom::internal"],[238,"nom::error"],[239,"core::hash"],[240,"core::option"],[241,"serde::ser"],[242,"alloc::vec"]],"i":[8,0,15,0,8,0,0,0,3,0,0,8,2,8,0,0,0,8,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,15,0,17,0,0,0,0,0,3,0,16,0,19,0,0,0,0,2,0,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,15,16,3,17,18,2,19,15,16,3,3,17,17,18,2,2,19,19,3,17,18,21,15,3,18,2,21,3,17,2,19,15,15,16,3,3,17,17,2,2,19,19,15,16,3,17,18,2,19,21,2,19,15,16,3,17,2,19,15,3,2,15,16,15,16,15,16,3,17,2,19,15,16,3,17,15,16,3,17,18,2,19,21,18,21,3,17,15,3,2,15,16,2,19,15,16,3,17,2,19,15,16,3,17,18,2,19,15,16,3,17,2,19,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,21,3,17,0,15,16,3,17,18,2,19,21],"f":"````````````````{{{l{{j{{h{bdf}}}}}}}{{Ab{nA`}}}}`````{{{l{c}}}{{l{e}}}{}{}}{{{l{Adc}}}{{l{Ade}}}{}{}}{{{l{A`}}}A`}{{{l{c}}{l{Ade}}}n{}{}}{{{l{c}}}n{}}{{{l{A`}}{l{AdAf}}}Ah}0{cc{}}{ce{}{}}{{{l{c}}}e{}{}}{{{l{c}}}Aj{}}{c{{Ab{e}}}{}{}}0{{{l{c}}}Al{}}4``````````````````````;;;;;;;;::::::::{{{l{An}}}An}{{{l{B`}}}B`}{{{l{f}}}f}{{{l{Bb}}}Bb}{{{l{Bd}}}Bd}{{{l{d}}}d}{{{l{Bf}}}Bf}???????>>>>>>>>>>>{{{l{f}}{l{f}}}Bh}{{{l{Bb}}{l{Bb}}}Bh}{{}Bd}{{}Bj}{c{{Ab{An}}}Bl}{c{{Ab{f}}}Bl}{{{l{Bd}}{l{{j{Bn}}}}}{{C`{{l{{j{Bn}}}}fc}}}{{Cb{{l{{j{Bn}}}}}}{Cd{{l{{j{Bn}}}}}}}}{c{{Ab{d}}}Bl}{{{l{Bj}}{l{{j{Bn}}}}}{{C`{{l{{j{Bn}}}}dc}}}{{Cb{{l{{j{Bn}}}}}}{Cd{{l{{j{Bn}}}}}}}}{{{l{f}}{l{f}}}Cf}{{{l{Bb}}{l{Bb}}}Cf}{{{l{d}}{l{d}}}Cf}{{{l{Bf}}{l{Bf}}}Cf}{{{l{An}}{l{AdAf}}}Ah}0{{{l{B`}}{l{AdAf}}}Ah}{{{l{f}}{l{AdAf}}}Ah}0{{{l{Bb}}{l{AdAf}}}Ah}0{{{l{d}}{l{AdAf}}}Ah}0{{{l{Bf}}{l{AdAf}}}Ah}0{cc{}}0000000{{{l{Ch}}}{{Ab{dA`}}}}{{{l{Ch}}}{{Ab{BfA`}}}}{{{l{{j{Bn}}}}}{{Ab{AnA`}}}}{{{l{{j{Bn}}}}}{{Ab{B`A`}}}}{{{l{{j{Bn}}}}}{{Ab{fA`}}}}{{{l{{j{Bn}}}}}{{Ab{BbA`}}}}{{{l{{j{Bn}}}}}{{Ab{dA`}}}}{{{l{{j{Bn}}}}}{{Ab{BfA`}}}}{{{l{Ch}}}{{Ab{Anc}}}{}}{{{l{Ch}}}{{Ab{fc}}}{}}{{{l{Ch}}}{{Ab{dc}}}{}}{Cj{{Ab{AnA`}}}}{{}B`}{{{l{An}}}f}{{{l{B`}}}Bb}{{{l{An}}}Cl}{{{l{B`}}}Cl}{{{l{f}}}Cl}{{{l{Bb}}}Cl}{{{l{d}}}Cl}{{{l{Bf}}}Cl}{{{l{An}}}Cj}{{{l{B`}}}Cj}{{{l{f}}{l{Adc}}}nCn}{{{l{Bb}}{l{Adc}}}nCn}{ce{}{}}0000000{{}Bd}{{}Bj}{{{l{f}}{l{f}}}{{D`{Bh}}}}{{{l{Bb}}{l{Bb}}}{{D`{Bh}}}}{{{l{An}}c}AbDb}{{{l{f}}c}AbDb}{{{l{d}}c}AbDb}{{{l{An}}{l{b}}}{{Ab{dA`}}}}{{{l{B`}}{l{b}}}{{Ab{BfA`}}}}{{{l{d}}}Aj}{BfAj}{{{l{An}}}{{Dd{Bn}}}}{{{l{B`}}}{{Dd{Bn}}}}{{{l{f}}}{{Dd{Bn}}}}{{{l{Bb}}}{{Dd{Bn}}}}{{{l{d}}}{{Dd{Bn}}}}{Bf{{Dd{Bn}}}}{{{l{c}}}e{}{}}000000{{{l{c}}}Aj{}}00000{c{{Ab{e}}}{}{}}000000000000000{{{l{c}}}Al{}}0000000{{{l{f}}{l{b}}{l{d}}}{{Ab{nA`}}}}{{{l{Bb}}{l{b}}{l{Bf}}}{{Ab{nA`}}}}{{{l{{j{{h{bdf}}}}}}}{{Ab{nA`}}}}{ce{}{}}0000000","D":"Kd","p":[[5,"Hash",230],[6,"Signature",37],[6,"PublicKey",37],[1,"tuple"],[1,"slice"],[1,"reference"],[1,"unit"],[6,"MassaSignatureError",17],[6,"Result",231],[0,"mut"],[5,"Formatter",232],[8,"Result",232],[5,"String",233],[5,"TypeId",234],[6,"KeyPair",37],[5,"KeyPairV0",37],[5,"PublicKeyV0",37],[5,"PublicKeyDeserializer",37],[5,"SignatureV0",37],[6,"Ordering",235],[5,"SignatureDeserializer",37],[10,"Deserializer",236],[1,"u8"],[8,"IResult",237],[10,"ParseError",238],[10,"ContextError",238],[1,"bool"],[1,"str"],[1,"u64"],[1,"usize"],[10,"Hasher",239],[6,"Option",240],[10,"Serializer",241],[5,"Vec",242]],"r":[[1,37],[3,17],[5,37],[6,37],[7,37],[9,37],[10,37],[16,37]],"b":[[27,"impl-Debug-for-MassaSignatureError"],[28,"impl-Display-for-MassaSignatureError"],[113,"impl-Display-for-KeyPair"],[114,"impl-Debug-for-KeyPair"],[116,"impl-Display-for-PublicKey"],[117,"impl-Debug-for-PublicKey"],[118,"impl-Display-for-PublicKeyV0"],[119,"impl-Debug-for-PublicKeyV0"],[120,"impl-Debug-for-Signature"],[121,"impl-Display-for-Signature"],[122,"impl-Display-for-SignatureV0"],[123,"impl-Debug-for-SignatureV0"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAIwAEwADAAAACQAAAA0AAAAPAAEAFwAGACAABQAnAAAAKQABACwAAAAuAAAAMQADADcAAAA6AC4AawAAAG0ADwCcAAEAqAABALcAJADfAAcA"}],\ +["massa_protocol_exports",{"t":"FFFPPPPPPPPPPPPPPPFPGFPFFFPFKGKPPPPPGPPPOOOMOCNNNNOONNMNNNNNNOCOONNNNNNNONNNNNNNNNNCONNNNNNNOMNMNNNOMNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOMOOOOCOOOOOMMOOOOOMNCMMOOOOOOONNOONNNNNNOOMONNOOOOFFFFNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOONNOOOONNNNNNNNNNNNNNNNNONNNNKKMMMMMMMMMMMMPPPPPPPPPPPPPGPPPPPGPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNFFOOOONNNNONNNNNNNOOONNNNNNNNOONNNNNNONNONNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNOONNNNNNOONN","n":["BootstrapPeers","BootstrapPeersDeserializer","BootstrapPeersSerializer","ChannelError","ContainerInconsistencyError","FactoryError","GeneralProtocolError","IN","IOError","IncompatibleNetworkVersion","InvalidBlock","InvalidIpError","InvalidOperationError","ListenerError","MissingPeersError","ModelsError","OUT","OutdatedAnnouncedNetworkVersion","PeerCategoryInfo","PeerConnectionError","PeerConnectionType","PeerData","PeerDisconnected","PeerId","PeerIdDeserializer","PeerIdSerializer","PosError","ProtocolConfig","ProtocolController","ProtocolError","ProtocolManager","Quic","SendError","SerdeError","Tcp","TimeError","TransportType","UnexpectedNodeCommandChannelClosure","UnexpectedWriterClosure","WrongSignature","allow_local_peers","ask_block_timeout","asked_operations_buffer_capacity","ban_peers","block_propagation_tick","bootstrap_peers","borrow","borrow","borrow_mut","borrow_mut","category","chain_id","clone","clone","clone_box","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","controller_channel_size","controller_trait","debug","default_category_info","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","endorsement_count","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error","event_channel_size","fmt","fmt","from","from","from_ref","from_ref","from_transport_config","genesis_timestamp","get_bootstrap_peers","get_hash","get_stats","hash","init","init","initial_peers","integrated_block","into","into","into_request","into_request","ip_addr_deserializer","ip_addr_serializer","keypair_file","last_start_period","length_deserializer","length_listeners_deserializer","listeners","listeners","max_block_propagation_time","max_blocks_kept_for_propagation","max_denunciations_in_block_header","max_endorsements_per_message","max_endorsements_propagation_time","max_in_connections","max_in_connections","max_in_connections_per_ip","max_known_blocks_size","max_known_endorsements_size","max_known_ops_size","max_message_size","max_node_known_blocks_size","max_node_known_endorsements_size","max_node_known_ops_size","max_node_wanted_blocks_size","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operation_storage_time","max_operations_per_block","max_operations_per_message","max_operations_propagation_time","max_ops_kept_for_propagation","max_send_wait","max_serialized_operations_size_per_block","max_simultaneous_ask_blocks_per_node","max_size_call_sc_parameter","max_size_channel_commands_connectivity","max_size_channel_commands_peer_testers","max_size_channel_commands_peers","max_size_channel_commands_propagation_blocks","max_size_channel_commands_propagation_endorsements","max_size_channel_commands_propagation_operations","max_size_channel_commands_retrieval_blocks","max_size_channel_commands_retrieval_endorsements","max_size_channel_commands_retrieval_operations","max_size_channel_network_to_block_handler","max_size_channel_network_to_endorsement_handler","max_size_channel_network_to_operation_handler","max_size_channel_network_to_peer_handler","max_size_function_name","max_size_listeners_per_peer","max_size_peers_announcement","max_size_value_datastore","message_timeout","notify_block_attack","operation_announcement_buffer_capacity","operation_announcement_interval","operation_batch_buffer_capacity","operation_batch_proc_period","peer_id","peer_id_deserializer","peer_id_serializer","peers_categories","port_deserializer","port_serializer","propagate_endorsements","propagate_operations","public_key","public_key_deserializer","rate_limit","read_write_limit_bytes_per_second","routable_ip","send_wishlist_delta","serialize","settings","stop","stop","t0","target_out_connections","test_oldest_peer_cooldown","tester_timeout","thread_count","thread_tester_count","timeout_connection","to_owned","to_owned","try_connection_timer","try_connection_timer_same_peer","try_from","try_from","try_into","try_into","type_id","type_id","u32_serializer","unban_everyone_timer","unban_peers","version","vzip","vzip","announced_received","local","local","received","BootstrapPeers","BootstrapPeersDeserializer","BootstrapPeersSerializer","PeerData","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","category","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","drop","drop","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from_ref","from_ref","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","ip_addr_deserializer","ip_addr_serializer","length_deserializer","length_listeners_deserializer","listeners","new","new","peer_id_deserializer","peer_id_serializer","port_deserializer","port_serializer","serialize","serialize","serialize","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","u32_serializer","vzip","vzip","vzip","vzip","ProtocolController","ProtocolManager","ban_peers","clone_box","get_bootstrap_peers","get_stats","integrated_block","notify_block_attack","propagate_endorsements","propagate_operations","send_wishlist_delta","stop","stop","unban_peers","ChannelError","CloseConnectionWithNoConnectionToClose","ContainerInconsistencyError","FactoryError","GeneralProtocolError","IOError","IncompatibleNetworkVersion","InvalidBlock","InvalidIpError","InvalidOperationError","ListenerError","MissingPeersError","ModelsError","NetworkConnectionErrorType","OutdatedAnnouncedNetworkVersion","PeerConnectionError","PeerDisconnected","PeerInfoNotFoundError","PosError","ProtocolError","SendError","SerdeError","TimeError","ToManyConnectionAttempt","ToManyConnectionFailure","UnexpectedNodeCommandChannelClosure","UnexpectedWriterClosure","WrongSignature","borrow","borrow","borrow_mut","borrow_mut","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","fmt","from","from","from","from","from","from","from","from","init","init","into","into","into_request","into_request","source","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","announced_received","local","local","received","PeerId","PeerIdDeserializer","PeerIdSerializer","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","default","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","deserialize","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from_public_key","from_ref","from_ref","from_ref","from_str","generate","get_hash","get_public_key","hash","init","init","init","into","into","into","into_request","into_request","into_request","new","new","partial_cmp","public_key","public_key_deserializer","serialize","serialize","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","verify_signature","vzip","vzip","vzip","PeerCategoryInfo","ProtocolConfig","allow_local_peers","ask_block_timeout","asked_operations_buffer_capacity","block_propagation_tick","borrow","borrow","borrow_mut","borrow_mut","chain_id","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","controller_channel_size","debug","default_category_info","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_count","event_channel_size","fmt","fmt","from","from","from_ref","from_ref","genesis_timestamp","init","init","initial_peers","into","into","into_request","into_request","keypair_file","last_start_period","listeners","max_block_propagation_time","max_blocks_kept_for_propagation","max_denunciations_in_block_header","max_endorsements_per_message","max_endorsements_propagation_time","max_in_connections","max_in_connections","max_in_connections_per_ip","max_known_blocks_size","max_known_endorsements_size","max_known_ops_size","max_message_size","max_node_known_blocks_size","max_node_known_endorsements_size","max_node_known_ops_size","max_node_wanted_blocks_size","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operation_storage_time","max_operations_per_block","max_operations_per_message","max_operations_propagation_time","max_ops_kept_for_propagation","max_send_wait","max_serialized_operations_size_per_block","max_simultaneous_ask_blocks_per_node","max_size_call_sc_parameter","max_size_channel_commands_connectivity","max_size_channel_commands_peer_testers","max_size_channel_commands_peers","max_size_channel_commands_propagation_blocks","max_size_channel_commands_propagation_endorsements","max_size_channel_commands_propagation_operations","max_size_channel_commands_retrieval_blocks","max_size_channel_commands_retrieval_endorsements","max_size_channel_commands_retrieval_operations","max_size_channel_network_to_block_handler","max_size_channel_network_to_endorsement_handler","max_size_channel_network_to_operation_handler","max_size_channel_network_to_peer_handler","max_size_function_name","max_size_listeners_per_peer","max_size_peers_announcement","max_size_value_datastore","message_timeout","operation_announcement_buffer_capacity","operation_announcement_interval","operation_batch_buffer_capacity","operation_batch_proc_period","peers_categories","rate_limit","read_write_limit_bytes_per_second","routable_ip","t0","target_out_connections","test_oldest_peer_cooldown","tester_timeout","thread_count","thread_tester_count","timeout_connection","to_owned","to_owned","try_connection_timer","try_connection_timer_same_peer","try_from","try_from","try_into","try_into","type_id","type_id","unban_everyone_timer","version","vzip","vzip"],"q":[[0,"massa_protocol_exports"],[205,"massa_protocol_exports::ProtocolError"],[209,"massa_protocol_exports::bootstrap_peers"],[307,"massa_protocol_exports::controller_trait"],[321,"massa_protocol_exports::error"],[386,"massa_protocol_exports::error::ProtocolError"],[390,"massa_protocol_exports::peer_id"],[476,"massa_protocol_exports::settings"],[599,"alloc::vec"],[600,"core::result"],[601,"peernet::peer"],[602,"peernet::transports"],[603,"alloc::boxed"],[604,"serde::de"],[605,"core::fmt"],[606,"core::hash"],[607,"core::marker"],[608,"massa_models::stats"],[609,"core::net::socket_addr"],[610,"std::collections::hash::map"],[611,"massa_models::block_id"],[612,"massa_storage"],[613,"tonic::request"],[614,"massa_models::block_header"],[615,"core::option"],[616,"massa_models::prehash"],[617,"serde::ser"],[618,"core::any"],[619,"nom::internal"],[620,"nom::error"],[621,"massa_serialization"],[622,"massa_versioning::versioning_factory"],[623,"massa_models::error"],[624,"serde_json::error"],[625,"massa_time::error"],[626,"massa_pos_exports::error"],[627,"std::io::error"],[628,"core::error"],[629,"alloc::string"],[630,"core::cmp"],[631,"massa_signature::signature_impl"],[632,"massa_hash::hash"]],"i":[0,0,0,6,6,6,6,9,6,6,6,6,6,6,6,6,9,6,0,6,0,0,6,0,0,0,6,0,0,0,0,10,6,6,10,6,0,6,6,6,65,66,66,1,66,0,9,10,9,10,38,66,9,10,1,9,10,9,9,10,10,66,0,66,66,9,10,9,10,10,9,10,66,9,10,9,9,9,9,10,10,10,10,0,66,9,10,9,10,9,10,10,66,1,10,1,10,9,10,66,1,9,10,9,10,40,39,66,66,40,40,38,66,66,66,66,66,66,65,66,65,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,1,66,66,66,66,0,40,39,66,40,39,1,1,3,59,66,66,66,1,10,0,1,36,66,65,66,66,66,66,66,9,10,66,66,9,10,9,10,9,10,39,66,1,66,9,10,67,68,67,68,0,0,0,0,39,40,38,18,39,40,38,18,38,38,18,38,18,38,18,39,39,40,38,18,39,40,38,18,40,38,18,39,40,38,18,38,18,38,38,38,38,18,18,18,18,38,18,39,40,38,18,38,18,39,40,38,18,39,40,38,18,39,40,38,18,40,39,40,40,38,39,40,40,39,40,39,39,38,18,38,18,39,40,38,18,39,40,38,18,39,40,38,18,39,39,40,38,18,0,0,1,1,1,1,1,1,1,1,1,1,36,1,6,49,6,6,6,6,6,6,6,6,6,6,6,0,6,6,6,49,6,0,6,6,6,49,49,6,6,6,6,49,6,49,6,49,6,49,6,49,6,6,49,6,6,6,6,6,6,6,49,6,49,6,49,6,49,6,6,6,49,6,49,6,49,6,49,67,68,67,68,0,0,0,3,58,59,3,58,59,3,58,59,3,58,59,3,3,58,59,3,3,58,59,3,58,59,3,58,59,3,59,3,58,59,3,3,3,3,3,3,3,3,58,59,3,3,58,59,3,3,3,3,3,3,58,59,3,58,59,3,58,59,58,59,3,3,59,3,58,3,58,59,3,3,58,59,3,58,59,3,58,59,3,3,58,59,0,0,65,66,66,66,65,66,65,66,66,65,66,65,66,65,65,66,66,66,66,65,66,65,66,65,66,65,66,66,66,65,66,65,66,65,66,66,65,66,66,65,66,65,66,66,66,66,66,66,66,66,66,65,66,65,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,65,66,66,66,66,66,65,66,66,66,65,66,65,66,65,66,66,66,65,66],"f":"```````````````````````````````````````````{{{d{b}}{h{f}}}{{n{jl}}}}``{{{d{c}}}{{d{e}}}{}{}}0{{{d{A`c}}}{{d{A`e}}}{}{}}0``{{{d{Ab}}}Ab}{{{d{Ad}}}Ad}{{{d{b}}}{{Af{b}}}}{{{d{c}}{d{A`e}}}j{}{}}0{{{d{c}}}j{}}000````{Ah{{d{c}}}{}}0{Ah{{d{A`c}}}{}}0{c{{n{Ad}}}Aj}{Ahj}0`{{{d{Ab}}{d{Ab}}}Al}{{{d{Ad}}{d{Ad}}}Al}{{{d{c}}{d{e}}}Al{}{}}0000000``{{{d{Ab}}{d{A`An}}}{{n{jB`}}}}{{{d{Ad}}{d{A`An}}}{{n{jB`}}}}{cc{}}0{{{d{c}}}c{}}0{{{d{Bb}}}Ad}`{{{d{b}}}{{n{Bdl}}}}{{{d{c}}{d{e}}}Bf{BhBj}Bl}{{{d{b}}}{{n{{Cb{Bn{Cd{f{Cb{C`Ab}}}}}}l}}}}{{{d{Ad}}{d{A`c}}}jCf}{{}Ah}0`{{{d{b}}ChCj}{{n{jl}}}}{ce{}{}}0{c{{Cl{e}}}{}{}}0``````````````````````````````````````````````````````{{{d{b}}Ch}{{n{jl}}}}``````````{{{d{b}}Cj}{{n{jl}}}}0`````{{{d{b}}{Db{Ch{D`{Cn}}}}{Dd{Ch}}}{{n{jl}}}}{{{d{Ad}}c}nDf}`{{{d{A`b}}}j}{{{d{A`Dh}}}j}```````{{{d{c}}}e{}{}}0``{c{{n{e}}}{}{}}000{{{d{c}}}Dj{}}0``{{{d{b}}{h{f}}}{{n{jl}}}}`;;````````{{{d{c}}}{{d{e}}}{}{}}000{{{d{A`c}}}{{d{A`e}}}{}{}}000`{{{d{Dl}}}Dl}{{{d{Bd}}}Bd}{{{d{c}}{d{A`e}}}j{}{}}0{{{d{c}}}j{}}0{{}Dn}{Ah{{d{c}}}{}}000{Ah{{d{A`c}}}{}}000{{{d{E`}}{d{{Ed{Eb}}}}}{{Ef{{d{{Ed{Eb}}}}Bdc}}}{{Eh{{d{{Ed{Eb}}}}}}{Ej{{d{{Ed{Eb}}}}}}}}{c{{n{Dl}}}Aj}{c{{n{Bd}}}Aj}{Ahj}000{{{d{Dl}}{d{Dl}}}Al}{{{d{Bd}}{d{Bd}}}Al}{{{d{c}}{d{e}}}Al{}{}}0000000{{{d{Dl}}{d{A`An}}}El}{{{d{Bd}}{d{A`An}}}El}{cc{}}000{{{d{c}}}c{}}0{{}Ah}000{ce{}{}}000{c{{Cl{e}}}{}{}}000`````{{}Dn}{{EnEn}E`}````{{{d{Dn}}{d{Bd}}{d{A`{h{Eb}}}}}{{n{jF`}}}}{{{d{Dl}}c}nDf}{{{d{Bd}}c}nDf}{{{d{c}}}e{}{}}0{c{{n{e}}}{}{}}0000000{{{d{c}}}Dj{}}000`9999``{{{d{b}}{h{f}}}{{n{jl}}}}{{{d{b}}}{{Af{b}}}}{{{d{b}}}{{n{Bdl}}}}{{{d{b}}}{{n{{Cb{Bn{Cd{f{Cb{C`Ab}}}}}}l}}}}{{{d{b}}ChCj}{{n{jl}}}}{{{d{b}}Ch}{{n{jl}}}}{{{d{b}}Cj}{{n{jl}}}}0{{{d{b}}{Db{Ch{D`{Cn}}}}{Dd{Ch}}}{{n{jl}}}}{{{d{A`b}}}j}{{{d{A`Dh}}}j}9````````````````````````````{{{d{c}}}{{d{e}}}{}{}}0{{{d{A`c}}}{{d{A`e}}}{}{}}0{Ah{{d{c}}}{}}0{Ah{{d{A`c}}}{}}0{Ahj}0{{{d{l}}{d{A`An}}}El}0{{{d{Fb}}{d{A`An}}}El}{Fdl}{Ffl}{Fhl}{Fjl}{Fll}{Fnl}{cc{}}0{{}Ah}0{ce{}{}}0{c{{Cl{e}}}{}{}}0{{{d{l}}}{{D`{{d{G`}}}}}}{{{d{c}}}Gb{}}{c{{n{e}}}{}{}}000{{{d{c}}}Dj{}}055```````{{{d{c}}}{{d{e}}}{}{}}00{{{d{A`c}}}{{d{A`e}}}{}{}}00{{{d{f}}}f}{{{d{Gd}}}Gd}{{{d{Gf}}}Gf}{{{d{c}}{d{A`e}}}j{}{}}00{{{d{c}}}j{}}000{{{d{f}}{d{f}}}Gh}{{{d{c}}{d{e}}}Gh{}{}}{{}Gd}{{}Gf}{Ah{{d{c}}}{}}00{Ah{{d{A`c}}}{}}00{c{{n{f}}}Aj}{{{d{Gf}}{d{{Ed{Eb}}}}}{{Ef{{d{{Ed{Eb}}}}fc}}}{{Eh{{d{{Ed{Eb}}}}}}{Ej{{d{{Ed{Eb}}}}}}}}{Ahj}00{{{d{f}}{d{f}}}Al}{{{d{c}}{d{e}}}Al{}{}}000{{{d{f}}{d{A`An}}}El}0{cc{}}00{Gjf}{{{d{c}}}c{}}00{{{d{Gl}}}{{n{fc}}}{}}{{}f}{{{d{c}}{d{e}}}Bf{BhBj}Bl}{{{d{f}}}Gj}{{{d{f}}{d{A`c}}}jCf}{{}Ah}00{ce{}{}}00{c{{Cl{e}}}{}{}}00{{}Gd}{{}Gf}{{{d{f}}{d{f}}}{{D`{Gh}}}}``{{{d{f}}c}nDf}{{{d{Gd}}{d{f}}{d{A`{h{Eb}}}}}{{n{jF`}}}}{{{d{c}}}e{}{}}00{{{d{c}}}Gb{}}{c{{n{e}}}{}{}}00000{{{d{c}}}Dj{}}00{{{d{f}}{d{Gn}}{d{H`}}}{{n{jl}}}};;;``````{{{d{c}}}{{d{e}}}{}{}}0{{{d{A`c}}}{{d{A`e}}}{}{}}0`{{{d{Hb}}}Hb}{{{d{Hd}}}Hd}{{{d{c}}{d{A`e}}}j{}{}}0{{{d{c}}}j{}}00```{Ah{{d{c}}}{}}0{Ah{{d{A`c}}}{}}0{c{{n{Hb}}}Aj}{c{{n{Hd}}}Aj}{Ahj}0``{{{d{Hb}}{d{A`An}}}El}{{{d{Hd}}{d{A`An}}}El}{cc{}}0{{{d{c}}}c{}}0`{{}Ah}0`{ce{}{}}0{c{{Cl{e}}}{}{}}0````````````````````````````````````````````````````````````````{{{d{c}}}e{}{}}0``{c{{n{e}}}{}{}}000{{{d{c}}}Dj{}}0``44","D":"BAh","p":[[10,"ProtocolController",307],[1,"reference"],[5,"PeerId",390],[5,"Vec",599],[1,"unit"],[6,"ProtocolError",321],[6,"Result",600],[0,"mut"],[6,"PeerConnectionType",0,601],[6,"TransportType",0,602],[5,"Box",603],[1,"usize"],[10,"Deserializer",604],[1,"bool"],[5,"Formatter",605],[5,"Error",605],[6,"TransportConfig",602],[5,"BootstrapPeers",209],[1,"u64"],[10,"Hash",606],[10,"Sized",607],[10,"BuildHasher",606],[5,"NetworkStats",608],[6,"SocketAddr",609],[1,"tuple"],[5,"HashMap",610],[10,"Hasher",606],[6,"BlockId",611],[5,"Storage",612],[5,"Request",613],[8,"SecuredHeader",614],[6,"Option",615],[8,"PreHashMap",616],[8,"PreHashSet",616],[10,"Serializer",617],[10,"ProtocolManager",307],[5,"TypeId",618],[5,"PeerData",209],[5,"BootstrapPeersSerializer",209],[5,"BootstrapPeersDeserializer",209],[1,"u8"],[1,"slice"],[8,"IResult",619],[10,"ParseError",620],[10,"ContextError",620],[8,"Result",605],[1,"u32"],[6,"SerializeError",621],[6,"NetworkConnectionErrorType",321],[6,"FactoryError",622],[6,"ModelsError",623],[5,"Error",624],[6,"TimeError",625],[6,"PosError",626],[5,"Error",627],[10,"Error",628],[5,"String",629],[5,"PeerIdSerializer",390],[5,"PeerIdDeserializer",390],[6,"Ordering",630],[6,"PublicKey",631],[1,"str"],[5,"Hash",632],[6,"Signature",631],[5,"PeerCategoryInfo",476],[5,"ProtocolConfig",476],[15,"OutdatedAnnouncedNetworkVersion",386],[15,"IncompatibleNetworkVersion",386]],"r":[[0,209],[1,209],[2,209],[18,476],[20,601],[21,209],[23,390],[24,390],[25,390],[27,476],[28,307],[29,321],[30,307],[36,602]],"b":[[359,"impl-Display-for-ProtocolError"],[360,"impl-Debug-for-ProtocolError"],[362,"impl-From%3CFactoryError%3E-for-ProtocolError"],[363,"impl-From%3CModelsError%3E-for-ProtocolError"],[364,"impl-From%3CError%3E-for-ProtocolError"],[365,"impl-From%3CTimeError%3E-for-ProtocolError"],[366,"impl-From%3CPosError%3E-for-ProtocolError"],[367,"impl-From%3CError%3E-for-ProtocolError"],[429,"impl-Display-for-PeerId"],[430,"impl-Debug-for-PeerId"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAEsBQAAAAAAACAAAABEAAAATAAAAFQAAABgAAgAdAAAAIAAAACMAAAApAAAALgAFADUAAQA4AAUAPwAAAEIABgBKAAoAVgABAFoAAQBfAAAAYQACAGgAAwBuAAIAdwAAAHkAAACCAAIApQACAKkAAQCtAAEAswABALgAAAC+AAEAwgAGAMwAAQDWACoABQEFAA8BCAAaARoAQwEAAE8BAABTAQAAWQEBAF4BEgBzAQEAdwELAIcBHAClAQoAswELAMIBBwDLARIA3wEAAOMBAwDoAQYA8gEHAPwBAQAAAgEAAwIBAAgCAQASAgAAFAIAAB0CAgBEAgAASgIBAE4CBQBWAgEA"}],\ +["massa_protocol_worker",{"t":"CCCHCCCCCHCCCGPPSNNNNNNNNNNNNNNNNNHNHNNNNNNNOFNNNNNNNNNNNNNNNNNONNNNNNNNNFNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNNNNNCCCCFOONNCCCNNNNNNNNNCNNCCNNNNNNNNFIONNONNNNNNNNNNONNNNNNNNNNPGPPNNNNNNNNNNNNNNNNNNNNNNNNNNOOGPPNNNNNNNNNNNNNNNNNNNNNNNNNOOGGGGFFFPPPPPPPPPGPPPPPPPPNNNOOONNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNOOOOOOOOONNOOONNNNNNNNONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOFFSOONONNNNOONNNNNNNNNNNONNNNNNNNONNNONHOONNNNNNNNNNNNNNFFSNOOONOONNNNONNNNOONNNNNNNNONNNNNNNONNNNNNNNNOONONNNNNNOOOONNOOONNOOOHOONNNNNNNNNNNNNNNNFNNCCCNNNNOONNNNNCNNCCNNNNNNNNFINNONNNNONNNNNNNONNNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNGPNNNNNNNNNNNNNNNNNNNGFFFPPGNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOONNNNNNNOONONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFSONNOONNNNONNNNNNNONHNNNNNNNFSNNNOONNNNONNONNNOHONONOONOHONNNNNNNFNNCCCNNNNNNNNNCNOONCCNNNNNNNNFINNOONNNNNNNNNNNONONNNNNNNNNGPPNNNNNNNNNNNNNNNNNNNNNNNNNGPNNNNNNNNNNNNNNNNNNNNNNNNNPPGGFFFPPPPNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNOOOOOOOONNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFSOONNNOONNNNNNONNNOOONNNHONNNNNNNFFSOOONNNNNOONNNNNNNNNNNNOONNNNNNHNNOOOOONNOOONHONNNNNNNNNNNNNNNFFSNCOONNNNNNNONNNNNNNNNNNNNNNNNNNNNCCNNOOOOONNNONCOONNNNNNNNNNNNNOONNFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNONNNNOOONNNNNNNNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPGPPGFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNOONNNNNOHOOONNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPFPPPIFFFGIGIPSPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOONNNNNNONOONNNNNNONNNNNONNNONNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOSFNNNNNNNONNNNNNNNNNNNNNNHFNNONNNNNNNNNNNNNNNNNNNPPPPGGFFPPPPNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNOONNNNOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNSHFOONNOHNNNNOONNNNNOOONHNNNNNNNKKFNNMNNNNNMNMMMMMMMNMNNNNNNONMMMNMNMNNNNNNNNKMMMMMMMMMMMMMMMMMMM","n":["connectivity","context","controller","create_protocol_controller","handlers","ip","manager","messages","sig_verifier","start_protocol_controller","worker","wrap_network","wrap_peer_db","ConnectivityCommand","GetStats","Stop","THREAD_NAME","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","start_connectivity_thread","to_owned","try_connect_peer","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","responder","Context","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","get_peer_id","init","into","into_request","layout_raw","our_keypair","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ProtocolControllerImpl","__clone_box","ban_peers","borrow","borrow_mut","clone","clone_box","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","get_bootstrap_peers","get_stats","init","integrated_block","into","into_request","layout_raw","new","notify_block_attack","pointer_metadata","propagate_endorsements","propagate_operations","send_wishlist_delta","sender_block_handler","sender_block_retrieval_handler","sender_connectivity_thread","sender_endorsement_handler","sender_operation_handler","sender_peer_management_thread","stop","to_owned","try_from","try_into","type_id","unban_peers","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","block_handler","endorsement_handler","operation_handler","peer_handler","BlockHandler","block_propagation_thread","block_retrieval_thread","borrow","borrow_mut","cache","commands_propagation","commands_retrieval","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","messages","new","pointer_metadata","propagation","retrieval","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","BlockCache","SharedBlockCache","blocks_known_by_peer","borrow","borrow_mut","checked_headers","deref","deref_mut","deserialize","drop","from","init","insert_peer_known_block","into","into_request","layout_raw","max_known_blocks_by_peer","new","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_cache","vzip","AttackBlockDetected","BlockHandlerPropagationCommand","IntegratedBlock","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","fmt","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","block_id","storage","BlockHandlerRetrievalCommand","Stop","WishlistDelta","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","new","remove","AskForBlockInfo","BlockInfoReply","BlockInfoType","BlockMessage","BlockMessageDeserializer","BlockMessageDeserializerArgs","BlockMessageSerializer","DataRequest","DataRequest","DataResponse","DataResponse","Header","Header","Header","Header","Header","MessageTypeId","NotFound","NotFound","OperationIds","OperationIds","OperationIds","Operations","Operations","Operations","__clone_box","__clone_box","__clone_box","block_header_deserializer","block_id_deserializer","block_id_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","endorsement_count","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","id_deserializer","id_serializer","init","init","init","init","init","init","init","init","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","last_start_period","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_serializer","max_datastore_value_length","max_denunciations_in_block_header","max_function_name_length","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations_per_block","max_parameters_size","new","new","operation_id_serializer","operation_ids_deserializer","operations_deserializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","secure_share_serializer","serialize","thread_count","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","block_id","block_id","block_info","block_info","BlockPropagationData","PropagationThread","THREAD_NAME","_storage","active_connections","ban_peers","block_serializer","borrow","borrow","borrow_mut","borrow_mut","cache","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fmt","from","from","header","init","init","into","into","into_request","into_request","layout_raw","layout_raw","peer_cmd_sender","perform_propagations","pointer_metadata","pointer_metadata","receiver","run","start_propagation_thread","stored_for_propagation","time_added","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","vzip","vzip","BlockInfo","RetrievalThread","THREAD_NAME","__clone_box","_announcement_sender","active_connections","asked_blocks","ban_peers","block_message_serializer","block_wishlist","borrow","borrow","borrow_mut","borrow_mut","cache","check_network_version_compatibility","clone","clone_into","clone_to_uninit","config","consensus_controller","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","endorsement_cache","fmt","from","from","from_ref","fully_gathered_block","gather_missing_block_ops","get_total_operations_size","header","init","init","into","into","into_request","into_request","layout_raw","layout_raw","mark_block_as_invalid","massa_metrics","mip_store","new","next_timer_ask_block","note_header_from_peer","on_ask_for_block_info_received","on_block_full_operations_received","on_block_header_received","on_block_info_received","on_block_operation_list_received","operation_cache","operation_id_serializer","operation_ids","peer_cmd_sender","pointer_metadata","pointer_metadata","pool_controller","receiver","receiver_network","remove_asked_blocks","run","selector_controller","sender_propagation_endorsements","sender_propagation_ops","start_retrieval_thread","storage","storage","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_block_retrieval","vzip","vzip","EndorsementHandler","borrow","borrow_mut","cache","commands_propagation","commands_retrieval","deref","deref_mut","deserialize","drop","endorsement_propagation_thread","endorsement_retrieval_thread","from","init","into","into_request","layout_raw","messages","new","pointer_metadata","propagation","retrieval","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","EndorsementCache","SharedEndorsementCache","borrow","borrow_mut","checked_endorsements","deref","deref_mut","deserialize","drop","endorsements_known_by_peer","from","init","insert_checked_endorsement","insert_peer_known_endorsements","into","into_request","layout_raw","max_known_endorsements_by_peer","new","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_cache","vzip","EndorsementHandlerPropagationCommand","PropagateEndorsements","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","EndorsementHandlerRetrievalCommand","Stop","borrow","borrow_mut","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","EndorsementMessage","EndorsementMessageDeserializer","EndorsementMessageDeserializerArgs","EndorsementMessageSerializer","Endorsements","Endorsements","MessageTypeId","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","endorsement_count","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from_ref","id_deserializer","id_serializer","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_endorsements_deserializer","length_endorsements_serializer","max_length_endorsements","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","secure_share_deserializer","secure_share_serializer","serialize","thread_count","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","PropagationThread","THREAD_NAME","active_connections","borrow","borrow_mut","cache","config","deref","deref_mut","deserialize","drop","endorsement_serializer","from","init","into","into_request","layout_raw","pointer_metadata","propagate_endorsements","receiver","run","start_propagation_thread","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","RetrievalThread","THREAD_NAME","ban_peer","borrow","borrow_mut","cache","config","deref","deref_mut","deserialize","drop","endorsement_message_deserializer","from","init","internal_sender","into","into_request","layout_raw","metrics","note_endorsements_from_peer","peer_cmd_sender","pointer_metadata","pool_controller","process_message","receiver","receiver_ext","run","selector_controller","start_retrieval_thread","storage","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationHandler","borrow","borrow_mut","cache","commands_propagation","commands_retrieval","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","messages","new","operation_propagation_thread","operation_retrieval_thread","pointer_metadata","propagation","retrieval","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationCache","SharedOperationCache","borrow","borrow_mut","checked_operations","checked_operations_prefix","deref","deref_mut","deserialize","drop","from","init","insert_checked_operation","insert_peer_known_ops","into","into_request","layout_raw","max_known_ops_by_peer","new","ops_known_by_peer","pointer_metadata","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","update_cache","vzip","OperationHandlerPropagationCommand","PropagateOperations","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationHandlerRetrievalCommand","Stop","__clone_box","borrow","borrow_mut","clone","clone_into","clone_to_uninit","deref","deref_mut","deserialize","drop","from","from_ref","init","into","into_request","layout_raw","pointer_metadata","to_owned","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","AskForOperations","AskForOperations","MessageTypeId","OperationMessage","OperationMessageDeserializer","OperationMessageDeserializerArgs","OperationMessageSerializer","Operations","Operations","OperationsAnnouncement","OperationsAnnouncement","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","chain_id","clone","clone_into","clone_to_uninit","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from_ref","id_deserializer","id_serializer","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","max_datastore_value_length","max_function_name_length","max_op_datastore_entry_count","max_op_datastore_key_length","max_op_datastore_value_length","max_operations","max_operations_prefix_ids","max_parameters_size","new","new","operation_prefix_ids_deserializer","operation_prefix_ids_serializer","operations_deserializer","operations_serializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","PropagationThread","THREAD_NAME","_massa_metrics","active_connections","announce_ops","borrow","borrow_mut","cache","config","deref","deref_mut","deserialize","drop","from","init","internal_receiver","into","into_request","layout_raw","next_batch","op_storage","operation_message_serializer","pointer_metadata","prune_propagation_storage","run","start_propagation_thread","stored_for_propagation","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","OperationBatchItem","RetrievalThread","THREAD_NAME","_massa_metrics","active_connections","asked_operations","ban_node","borrow","borrow","borrow_mut","borrow_mut","cache","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","from","from","init","init","instant","internal_sender","into","into","into_request","into_request","layout_raw","layout_raw","note_operations_from_peer","on_asked_operations_received","on_operations_announcements_received","op_batch_buffer","operation_message_serializer","operations_prefix_ids","peer_cmd_sender","peer_id","pointer_metadata","pointer_metadata","pool_controller","receiver","receiver_ext","run","start_retrieval_thread","storage","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","update_ask_operation","vzip","vzip","MassaHandshake","PeerManagementHandler","THREAD_NAME","__clone_box","announcement","announcement_deserializer","announcement_serializer","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","config","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","fallback_function","from","from","from_ref","handshake_fail","init","init","into","into","into_request","into_request","layout_raw","layout_raw","messages","models","new","new","peer_db","peer_db","peer_id_deserializer","peer_id_serializer","peer_mngt_msg_serializer","perform_handshake","pointer_metadata","pointer_metadata","sender","stop","tester","testers","thread_join","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","version_deserializer","version_serializer","vzip","vzip","Announcement","AnnouncementDeserializer","AnnouncementDeserializerArgs","AnnouncementSerializer","__clone_box","__clone_box","__clone_box","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","from","from","from","from_ref","from_ref","from_ref","hash","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","ip_addr_deserializer","layout_raw","layout_raw","layout_raw","layout_raw","length_listeners_deserializer","listeners","max_listeners","new","new","new","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","serialized","signature","timestamp","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","ListPeers","ListPeers","MessageTypeId","NewPeerConnected","NewPeerConnected","PeerManagementMessage","PeerManagementMessageDeserializer","PeerManagementMessageDeserializerArgs","PeerManagementMessageSerializer","__clone_box","__clone_box","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","id_deserializer","id_serializer","init","init","init","init","init","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","ip_addr_deserializer","ip_addr_serializer","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","length_serializer","listener_deserializer","listeners_length_deserializer","max_listeners_per_peer","max_peers_per_announcement","new","new","peer_id_deserializer","peer_id_serializer","peers_length_deserializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","serialize","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","Ban","Banned","ConnectionMetadata","GetBootstrapPeers","HandshakeFailed","InHandshake","InitialPeers","PeerDB","PeerInfo","PeerManagementChannel","PeerManagementCmd","PeerMessageTuple","PeerState","SharedPeerDB","Stop","THREE_DAYS_MS","Trusted","Unban","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","ban_peer","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_box","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","command_sender","compare","default","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","edit","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","failure","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","get_banned_peer_count","get_connection_metadata_or_default","get_known_peer_count","get_oldest_peer","get_peers","get_peers_in_test","get_peers_mut","get_rand_peers_to_send","get_tested_addresses","init","init","init","init","init","init","insert_peer_in_test","insert_tested_address","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","last_announce","last_failure","last_success","last_test_failure","last_test_success","last_try_connect","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","layout_raw","msg_sender","partial_cmp","peers","peers_in_test","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","random_priority","remove_peer_in_test","set_try_connect_failure_or_insert","set_try_connect_success_or_insert","set_try_connect_test_failure_or_insert","set_try_connect_test_success_or_insert","state","success","test_failure","test_success","tested_addresses","to_owned","to_owned","to_owned","to_owned","to_owned","try_connect","try_connect_history","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","unban_peer","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","vzip","vzip","responder","THREAD_NAME","Tester","borrow","borrow_mut","deref","deref_mut","deserialize","drop","from","handler","init","into","into_request","layout_raw","new","pointer_metadata","run","tcp_handshake","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","to_canonical","ProtocolManagerImpl","borrow","borrow_mut","connectivity_thread","deref","deref_mut","deserialize","drop","from","init","into","into_request","layout_raw","new","pointer_metadata","stop","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","Block","Block","Endorsement","Endorsement","Message","MessageTypeId","MessagesHandler","MessagesSerializer","Operation","Operation","PeerManagement","PeerManagement","__clone_box","__clone_box","block_message_serializer","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","endorsement_message_serializer","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","from","from","from","from","from_ref","from_ref","handle","id_deserializer","id_serializer","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","layout_raw","layout_raw","layout_raw","layout_raw","new","operation_message_serializer","peer_management_message_serializer","pointer_metadata","pointer_metadata","pointer_metadata","pointer_metadata","sender_blocks","sender_endorsements","sender_operations","sender_peers","serialize","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_box","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_mut","upcast_any_ref","upcast_any_ref","upcast_any_ref","upcast_any_ref","vzip","vzip","vzip","vzip","with_block_message_serializer","with_endorsement_message_serializer","with_operation_message_serializer","with_peer_management_message_serializer","SMALL_BATCH_LIMIT","verify_sigs_batch","ProtocolChannels","block_handler_propagation","block_handler_retrieval","borrow","borrow_mut","connectivity_thread","create_protocol_controller","deref","deref_mut","deserialize","drop","endorsement_handler_propagation","endorsement_handler_retrieval","from","init","into","into_request","layout_raw","operation_handler_propagation","operation_handler_retrieval","peer_management_handler","pointer_metadata","start_protocol_controller","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","ActiveConnectionsTrait","NetworkController","NetworkControllerImpl","borrow","borrow_mut","clone_box","deref","deref_mut","deserialize","drop","from","get_active_connections","get_active_connections","get_nb_in_connections","get_nb_out_connections","get_peer_ids_connected","get_peer_ids_out_connection_queue","get_peers_connected","get_peers_connections_bandwidth","get_total_bytes_received","get_total_bytes_received","get_total_bytes_sent","get_total_bytes_sent","init","into","into_request","layout_raw","new","peernet_manager","pointer_metadata","send_to_peer","shutdown_connection","start_listener","start_listener","stop_listener","stop_listener","try_connect","try_connect","try_from","try_into","type_id","upcast_any_box","upcast_any_mut","upcast_any_ref","vzip","PeerDBTrait","ban_peer","clone_box","get_banned_peer_count","get_connection_metadata_or_default","get_known_peer_count","get_oldest_peer","get_peers","get_peers_in_test","get_peers_mut","get_rand_peers_to_send","get_tested_addresses","insert_peer_in_test","insert_tested_address","remove_peer_in_test","set_try_connect_failure_or_insert","set_try_connect_success_or_insert","set_try_connect_test_failure_or_insert","set_try_connect_test_success_or_insert","unban_peer"],"q":[[0,"massa_protocol_worker"],[13,"massa_protocol_worker::connectivity"],[44,"massa_protocol_worker::connectivity::ConnectivityCommand"],[45,"massa_protocol_worker::context"],[73,"massa_protocol_worker::controller"],[117,"massa_protocol_worker::handlers"],[121,"massa_protocol_worker::handlers::block_handler"],[151,"massa_protocol_worker::handlers::block_handler::cache"],[178,"massa_protocol_worker::handlers::block_handler::commands_propagation"],[208,"massa_protocol_worker::handlers::block_handler::commands_propagation::BlockHandlerPropagationCommand"],[210,"massa_protocol_worker::handlers::block_handler::commands_retrieval"],[238,"massa_protocol_worker::handlers::block_handler::commands_retrieval::BlockHandlerRetrievalCommand"],[240,"massa_protocol_worker::handlers::block_handler::messages"],[494,"massa_protocol_worker::handlers::block_handler::messages::BlockMessage"],[498,"massa_protocol_worker::handlers::block_handler::propagation"],[554,"massa_protocol_worker::handlers::block_handler::retrieval"],[644,"massa_protocol_worker::handlers::endorsement_handler"],[674,"massa_protocol_worker::handlers::endorsement_handler::cache"],[702,"massa_protocol_worker::handlers::endorsement_handler::commands_propagation"],[730,"massa_protocol_worker::handlers::endorsement_handler::commands_retrieval"],[751,"massa_protocol_worker::handlers::endorsement_handler::messages"],[893,"massa_protocol_worker::handlers::endorsement_handler::propagation"],[922,"massa_protocol_worker::handlers::endorsement_handler::retrieval"],[959,"massa_protocol_worker::handlers::operation_handler"],[989,"massa_protocol_worker::handlers::operation_handler::cache"],[1018,"massa_protocol_worker::handlers::operation_handler::commands_propagation"],[1046,"massa_protocol_worker::handlers::operation_handler::commands_retrieval"],[1073,"massa_protocol_worker::handlers::operation_handler::messages"],[1217,"massa_protocol_worker::handlers::operation_handler::propagation"],[1251,"massa_protocol_worker::handlers::operation_handler::retrieval"],[1315,"massa_protocol_worker::handlers::peer_handler"],[1385,"massa_protocol_worker::handlers::peer_handler::announcement"],[1504,"massa_protocol_worker::handlers::peer_handler::messages"],[1649,"massa_protocol_worker::handlers::peer_handler::models"],[1871,"massa_protocol_worker::handlers::peer_handler::models::PeerManagementCmd"],[1872,"massa_protocol_worker::handlers::peer_handler::tester"],[1897,"massa_protocol_worker::ip"],[1898,"massa_protocol_worker::manager"],[1921,"massa_protocol_worker::messages"],[2055,"massa_protocol_worker::sig_verifier"],[2057,"massa_protocol_worker::worker"],[2087,"massa_protocol_worker::wrap_network"],[2132,"massa_protocol_worker::wrap_peer_db"],[2152,"massa_protocol_exports::settings"],[2153,"massa_protocol_exports::controller_trait"],[2154,"alloc::boxed"],[2155,"massa_pos_exports::controller_traits"],[2156,"massa_consensus_exports::controller_trait"],[2157,"massa_protocol_exports::bootstrap_peers"],[2158,"core::option"],[2159,"massa_pool_exports::controller_traits"],[2160,"massa_storage"],[2161,"massa_versioning::versioning"],[2162,"massa_metrics"],[2163,"massa_signature::signature_impl"],[2164,"massa_models::node"],[2165,"massa_protocol_exports::error"],[2166,"core::result"],[2167,"dyn_clone::sealed"],[2168,"rkyv::with"],[2169,"tonic::request"],[2170,"core::alloc::layout"],[2171,"massa_protocol_exports::peer_id"],[2172,"alloc::vec"],[2173,"massa_channel::sender"],[2174,"massa_channel::receiver"],[2175,"core::net::socket_addr"],[2176,"peernet::transports"],[2177,"std::collections::hash::map"],[2178,"parking_lot::rwlock"],[2179,"alloc::sync"],[2180,"alloc::string"],[2181,"core::net::ip_addr"],[2182,"std::thread"],[2183,"core::any"],[2184,"massa_models::stats"],[2185,"peernet::peer"],[2186,"massa_models::block_id"],[2187,"massa_models::block_header"],[2188,"massa_models::prehash"],[2189,"std::collections::hash::set"],[2190,"core::fmt"],[2191,"nom::internal"],[2192,"nom::error"],[2193,"massa_serialization"],[2194,"num_enum"],[2195,"massa_models::operation"],[2196,"massa_models::endorsement"],[2197,"peernet::transports::endpoint"],[2198,"peernet::error"],[2199,"massa_models::serialization"],[2200,"core::cmp"],[2201,"massa_time"],[2202,"core::time"],[2203,"massa_models::version"],[2204,"massa_hash::hash"],[2205,"peernet::network_manager"]],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,23,0,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,0,23,0,23,23,23,23,23,23,23,147,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,0,0,0,0,0,65,65,65,65,0,0,0,65,65,65,65,65,65,65,65,65,0,65,65,0,0,65,65,65,65,65,65,65,65,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,54,0,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,148,148,0,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,149,149,0,0,0,0,0,0,0,76,80,76,80,72,73,76,80,81,0,73,81,72,73,81,72,73,81,72,73,74,75,75,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,82,72,73,74,72,73,74,72,73,74,72,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,82,72,80,81,72,72,72,72,72,72,80,80,80,80,80,80,81,81,81,81,81,81,72,73,76,80,81,75,82,72,73,76,80,80,81,74,72,73,74,75,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,82,75,82,72,73,76,80,81,74,74,82,82,82,82,82,82,82,82,75,74,74,75,75,75,82,72,73,76,80,81,74,74,74,82,72,73,74,75,82,72,73,76,80,80,81,81,74,80,81,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,75,82,72,73,76,80,81,74,150,151,150,151,0,0,0,87,86,86,86,86,87,86,87,86,86,86,87,86,87,86,87,86,87,87,86,87,87,86,87,86,87,86,87,86,87,86,86,86,87,86,86,0,86,87,86,87,86,87,86,87,86,87,86,87,86,87,86,87,0,0,0,89,88,88,88,88,88,88,88,89,88,89,88,88,89,89,89,88,88,88,89,88,89,88,89,88,89,88,89,88,89,89,88,88,88,89,88,89,88,89,88,89,88,89,88,88,88,89,88,88,88,88,88,88,88,88,88,89,88,88,89,88,88,88,88,88,88,88,88,0,88,89,89,88,89,88,89,88,89,88,89,88,89,88,89,88,88,89,0,93,93,0,0,0,93,93,93,93,93,93,93,93,93,93,93,0,93,93,0,0,93,93,93,93,93,93,93,93,0,0,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,0,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,0,0,97,98,0,95,99,96,97,98,95,99,96,97,98,95,99,95,95,95,95,99,96,97,98,95,99,96,97,98,95,99,96,96,97,98,95,99,96,97,98,95,99,97,98,97,97,97,97,97,97,98,98,98,98,98,98,97,98,99,96,97,98,98,95,95,96,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,96,95,99,96,95,99,96,97,98,95,96,95,95,99,95,99,96,97,98,98,95,98,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,99,96,97,98,95,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,100,0,0,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,0,101,101,101,101,101,101,101,101,0,101,101,101,101,101,101,101,101,0,104,104,0,0,0,104,104,104,104,104,104,104,104,104,0,104,104,104,104,0,0,104,104,104,104,104,104,104,104,0,0,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,0,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,0,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,108,109,0,0,0,0,0,108,109,108,109,106,107,110,108,109,106,107,110,108,109,106,110,106,106,106,106,107,110,108,109,106,107,110,108,109,106,107,107,110,108,109,106,107,110,108,109,106,109,109,109,109,109,109,109,108,109,107,110,108,109,109,106,106,107,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,110,110,110,110,110,110,110,110,107,106,107,106,107,106,107,110,108,109,106,106,106,107,110,108,109,109,106,109,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,107,110,108,109,106,0,0,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,0,111,111,111,111,111,111,111,111,0,0,0,112,112,112,112,152,112,152,112,112,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,152,112,0,112,112,112,112,152,112,152,152,112,112,112,112,112,0,112,152,112,152,112,152,112,152,112,152,112,152,112,112,152,112,0,0,0,114,0,114,114,117,114,117,114,114,114,114,114,117,114,117,114,117,114,117,114,114,117,114,114,114,117,114,117,114,117,114,117,114,0,0,117,114,117,114,114,114,114,114,117,114,117,117,0,117,117,114,117,114,117,114,117,114,117,114,117,114,117,114,114,114,117,114,0,0,0,0,118,119,120,121,118,119,120,121,118,119,120,118,119,120,118,119,120,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,120,121,118,119,120,118,118,118,118,118,118,118,118,121,118,119,120,118,119,120,118,121,118,119,120,121,118,119,120,121,118,119,120,120,121,118,119,120,120,118,121,118,119,120,121,118,119,120,119,118,118,118,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,121,118,119,120,122,125,0,122,125,0,0,0,0,122,123,124,127,122,125,123,124,127,122,125,123,122,123,122,123,122,123,123,124,127,122,125,123,124,127,122,125,123,124,124,127,122,125,123,124,127,122,125,123,125,125,125,125,125,125,125,122,125,124,127,122,125,125,123,122,123,124,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,123,124,127,122,125,123,123,0,124,127,127,124,123,124,123,124,124,127,122,125,123,123,122,123,124,127,122,125,125,123,125,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,124,127,122,125,123,57,131,0,57,131,131,0,0,0,0,0,0,0,0,57,0,131,57,129,128,130,131,57,128,153,129,128,130,131,57,153,129,128,130,131,57,129,128,130,131,57,128,129,128,130,131,57,129,128,130,131,57,129,153,129,129,128,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,129,129,131,129,129,129,129,129,129,131,131,131,131,131,131,129,130,131,153,129,128,130,131,57,129,128,130,131,57,128,128,128,128,128,128,128,128,128,153,129,128,130,131,57,128,128,153,129,128,130,131,57,153,129,128,130,131,57,130,129,129,129,129,129,153,129,128,130,131,57,153,129,128,128,153,129,128,130,131,57,129,128,128,128,128,128,130,129,129,129,128,129,128,130,131,57,129,128,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,128,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,153,129,128,130,131,57,154,0,0,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,0,0,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,141,140,141,140,0,0,0,0,141,140,141,140,139,41,139,141,140,139,41,141,140,139,41,139,41,139,41,139,41,139,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,139,140,140,140,140,140,140,140,141,140,141,141,141,141,141,140,140,139,41,139,41,41,41,139,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,139,139,139,141,140,139,41,41,41,41,41,139,139,41,141,140,140,139,41,140,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,141,140,139,41,139,139,139,139,0,0,0,4,4,4,4,4,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,4,4,4,4,4,4,4,0,0,0,145,145,61,145,145,145,145,145,30,145,61,61,61,61,61,61,30,145,30,145,145,145,145,145,145,145,145,61,61,30,145,30,145,30,145,145,145,145,145,145,145,145,0,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38],"f":"```{b{{j{{f{d}}h}}}}`````{{b{f{l}}{f{n}}{Ab{A`}}{f{Ad}}AfhAhAj}{{Bd{{j{{f{Al}}AnB`}}Bb}}}}```````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Bn}}}Bn}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{Cj{f{l}}{f{Cl}}{f{n}}{f{Ad}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{Dj{Cj{Dj{DfDh}}}}{E`{{Dn{Dl}}}}AfhEb{Dj{Ed{j{{D`{Ef}}Eh}}}}EhbAhAj}{{Bd{{j{{Db{Bn}}{Ej{Bj}}}}Bb}}}}{{{Bf{c}}}e{}{}}{{Df{Bf{Bl{f{Cl}}}}{Bf{{E`{{Dn{Dl}}}}}}{Bf{b}}}{{Bd{BjBb}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}};``{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{F`}}}F`}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{{Bf{F`}}}Cj}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9`{{{Bf{c}}Bh}Bj{}}{{{Bf{Fb}}{D`{Cj}}}{{Bd{BjBb}}}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fb}}}Fb}{{{Bf{Fb}}}{{f{d}}}}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{{Bf{Fb}}}{{Bd{A`Bb}}}}{{{Bf{Fb}}}{{Bd{{j{Fd{Dj{Cj{j{DfFf}}}}}}Bb}}}}{{}C`}{{{Bf{Fb}}FhAf}{{Bd{BjBb}}}}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{Db{Fj}}{Db{Fl}}{Db{Fn}}{Db{G`}}{Db{Bn}}{Db{Gb}}}Fb}{{{Bf{Fb}}Fh}{{Bd{BjBb}}}}{Bf}{{{Bf{Fb}}Af}{{Bd{BjBb}}}}0{{{Bf{Fb}}{Gf{Fh{Ab{Gd}}}}{Gh{Fh}}}{{Bd{BjBb}}}}``````{{{Bf{BlFb}}}Bj}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{Bf{Fb}}{D`{Cj}}}{{Bd{BjBb}}}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}?```````{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}```{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{f{Gj}}{f{l}}{f{n}}{f{Ad}}{Dd{{j{Cj{D`{Cn}}}}}}{Db{Fj}}{Dd{Fj}}{Dd{Fl}}{Db{Fl}}{Db{Fn}}{Db{G`}}{Db{Gb}}b{E`{{Dn{Gl}}}}{E`{{Dn{Gn}}}}{E`{{Dn{H`}}}}AfAhAj}Hb}{Bf}``{{{Bf{BlHb}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}:```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{{{Bf{BlH`}}{Bf{Cj}}{Bf{{Hd{Fh}}}}Hf}Bj}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{HhHh}H`}{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{{{Bf{BlH`}}{Bf{{Hj{Cj}}}}}Bj}:````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fl}}}Fl}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{{{Bf{Fl}}{Bf{BlHl}}}Hn}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9`````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fj}}}Fj}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9```````````````````````````{{{Bf{c}}Bh}Bj{}}00```{{{Bf{c}}}{{Bf{e}}}{}{}}0000000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000000`{{{Bf{I`}}}I`}{{{Bf{Ib}}}Ib}{{{Bf{Id}}}Id}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}00{{{Bf{c}}}Bj{}}00{{}I`}{{}Id}{C`{{Bf{c}}}{}}0000000{C`{{Bf{Blc}}}{}}0000000{{{Bf{If}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Ihc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0000000{C`Bj}0000000`{{{Bf{I`}}{Bf{I`}}}Hf}{{{Bf{J`}}{Bf{J`}}}Hf}{{{Bf{Jb}}{Bf{Jb}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000000000000000{{{Bf{I`}}{Bf{BlHl}}}Hn}{{{Bf{Ib}}{Bf{BlHl}}}Hn}{{{Bf{Ih}}{Bf{BlHl}}}Hn}{{{Bf{J`}}{Bf{BlHl}}}Hn}{{{Bf{Jb}}{Bf{BlHl}}}Hn}{cc{}}0000{{{Bf{Ih}}}J`}111{{{Bf{c}}}c{}}00``{{}C`}0000000{ce{}{}}0000000{c{{Cd{e}}}{}{}}0000000`{{}{{Bd{CfCh}}}}0000000`````````{JdIf}{{}Id}```{Bf}0000000`{{{Bf{Id}}{Bf{Ih}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}`{{{Bf{c}}}e{}{}}00{c{{Bd{e}}}{}{}}00000{Jh{{Bd{J`{Jj{J`}}}}}}1{Jh{{Bd{Jb{Jj{Jb}}}}}}2{c{{Bd{J`{Jj{J`}}}}}{}}{c{{Bd{Jb{Jj{Jb}}}}}{}}44444444{{{Bf{c}}}El{}}0000000{{{f{c}}}{{f{En}}}{}}0000000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000000{{{Bf{c}}}{{Bf{En}}}{}}0000000{ce{}{}}0000000`````````{{{Bf{BlJl}}{Bf{{Hd{Cj}}}}}Bj}`{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0``{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0{{{Bf{Jn}}{Bf{BlHl}}}Hn}{cc{}}0`{{}C`}0::{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}0`{{{Bf{BlJl}}}Bj}{Bf}0`1{{{f{Gj}}{Dd{Fl}}{Db{Gb}}b{E`{{Dn{H`}}}}}{{Ej{Bj}}}}``{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}0{ce{}{}}0```{{{Bf{c}}Bh}Bj{}}```{{{Bf{BlK`}}{Bf{{Hd{Cj}}}}}{{Bd{BjBb}}}}``{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0`{{{Bf{K`}}{Bf{Gd}}}{{Bd{BjBb}}}}{{{Bf{Kb}}}Kb}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}``{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0`{{{Bf{Kb}}{Bf{BlHl}}}Hn}{cc{}}0{{{Bf{c}}}c{}}{{{Bf{BlK`}}{Bf{Fh}}}Bj}{{{Bf{BlK`}}{Bf{Fh}}}{{Ab{{D`{Kd}}}}}}{{{Bf{Af}}{Bf{{Hd{Kd}}}}}C`}`{{}C`}0{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}06``{{{Ab{Gd}}Af}Kb}`{{{Bf{BlK`}}{Bf{Gd}}{Bf{Cj}}}{{Bd{HfBb}}}}{{{Bf{BlK`}}CjFhI`}Bj}{{{Bf{BlK`}}CjFh{D`{Kf}}}Bj}{{{Bf{BlK`}}CjGd}Bj}{{{Bf{BlK`}}CjFhIb}Bj}{{{Bf{BlK`}}CjFh{D`{Kd}}}Bj}````{Bf}0```{{{Bf{BlK`}}{Bf{{Gh{Fh}}}}}Bj}{{{Bf{BlK`}}}Bj}```{{{f{Gj}}{f{l}}{f{n}}{f{Ad}}{Dd{{j{Cj{D`{Cn}}}}}}{Dd{Fj}}{Db{Fl}}{Db{Fn}}{Db{G`}}{Db{Gb}}b{E`{{Dn{Gl}}}}{E`{{Dn{Gn}}}}{E`{{Dn{H`}}}}AfAhAj}{{Ej{Bj}}}}``{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}07{ce{}{}}0`{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}```{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}``{cc{}}{{}C`}8{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{f{Ad}}{f{l}}{E`{{Dn{Gl}}}}Afb{f{Gj}}{Dd{{j{Cj{D`{Cn}}}}}}{Db{Kh}}{Dd{Kh}}{Db{G`}}{Dd{G`}}{Db{Gb}}Aj}Kj}{Bf}``{{{Bf{BlKj}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{ce{}{}}``{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}`{cc{}}{{}C`}{{{Bf{BlGl}}Kl}Bj}{{{Bf{BlGl}}{Bf{Cj}}{Bf{{Hd{Kl}}}}}Bj}:{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{HhHh}Gl}{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{{{Bf{BlGl}}{Bf{{Hj{Cj}}}}}Bj}{ce{}{}}```{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{G`}}}G`}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}={c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{ce{}{}}``{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}8{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{ce{}{}}```````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}0000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000`{{{Bf{Kn}}}Kn}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{{}Kn}{C`{{Bf{c}}}{}}0000{C`{{Bf{Blc}}}{}}0000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{{{Bf{L`}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Lbc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}111{C`Bj}0000`{{{Bf{Lb}}{Bf{Lb}}}Hf}{{{Bf{Ld}}{Bf{Ld}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000000000{{{Bf{Lb}}{Bf{BlHl}}}Hn}{{{Bf{Ld}}{Bf{BlHl}}}Hn}{cc{}}00{{{Bf{Lb}}}Ld}11{{{Bf{c}}}c{}}``{{}C`}0000{ce{}{}}0000{c{{Cd{e}}}{}{}}0000{{}{{Bd{CfCh}}}}0000```{LfL`}{{}Kn}{Bf}0000``{{{Bf{Kn}}{Bf{Lb}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}`{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}00{Jh{{Bd{Ld{Jj{Ld}}}}}}11{c{{Bd{Ld{Jj{Ld}}}}}{}}22222{{{Bf{c}}}El{}}0000{{{f{c}}}{{f{En}}}{}}0000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000{{{Bf{c}}}{{Bf{En}}}{}}0000>>>>>```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}`{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{BlLh}}Af}Bj}`{{{Bf{BlLh}}}Bj}{{{Dd{G`}}{E`{{Dn{Gl}}}}b{f{Gj}}}{{Ej{Bj}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}};``{{{Bf{BlLj}}{Bf{Cj}}}{{Bd{BjBb}}}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}`{cc{}}{{}C`}`{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{D`{Ll}}{Bf{Cj}}{Bf{{E`{{Dn{Gl}}}}}}{Bf{l}}{Bf{Af}}{Bf{b}}{Bf{{Db{G`}}}}{Bf{BlAd}}}{{Bd{BjBb}}}}`{Bf}`{{{Bf{BlLj}}Cj{D`{Cn}}}Bj}``{{{Bf{BlLj}}}Bj}`{{{Dd{{j{Cj{D`{Cn}}}}}}{Dd{Kh}}{Db{G`}}{Db{Gb}}{E`{{Dn{Gl}}}}{f{l}}{f{Ad}}bAfAj}{{Ej{Bj}}}}`{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}<`{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}```{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{{f{Ad}}Afb{E`{{Dn{Gn}}}}{f{Gj}}{Dd{{j{Cj{D`{Cn}}}}}}{Db{Ln}}{Dd{Ln}}{Db{Fn}}{Dd{Fn}}{Db{Gb}}Aj}M`}``{Bf}``{{{Bf{BlM`}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}:``{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{{{Bf{BlGn}}Kd}Bj}{{{Bf{BlGn}}{Bf{Cj}}{Bf{{Hd{Mb}}}}}Bj}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}`{{HhHh}Gn}`{Bf}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}{{{Bf{BlGn}}{Bf{{Hj{Cj}}}}}Bj}:```{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Fn}}}Fn}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9``{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Ln}}}Ln}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{c}}}c{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{Bf}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9```````````{{{Bf{c}}Bh}Bj{}}{{{Bf{c}}}{{Bf{e}}}{}{}}0000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000`{{{Bf{Md}}}Md}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}{{}Md}{C`{{Bf{c}}}{}}0000{C`{{Bf{Blc}}}{}}0000{{{Bf{Mf}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Mhc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0000{C`Bj}0000{{{Bf{Mj}}{Bf{Mj}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{Mh}}{Bf{BlHl}}}Hn}{{{Bf{Mj}}{Bf{BlHl}}}Hn}{cc{}}00{{{Bf{Mh}}}Mj}11{{{Bf{c}}}c{}}``{{}C`}0000{ce{}{}}0000{c{{Cd{e}}}{}{}}0000{{}{{Bd{CfCh}}}}0000````````{MlMf}{{}Md}````{Bf}0000{{{Bf{Md}}{Bf{Mh}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}00{Jh{{Bd{Mj{Jj{Mj}}}}}}11{c{{Bd{Mj{Jj{Mj}}}}}{}}22222{{{Bf{c}}}El{}}0000{{{f{c}}}{{f{En}}}{}}0000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000{{{Bf{c}}}{{Bf{En}}}{}}0000>>>>>````{{{Bf{BlMn}}}Bj}{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}``{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}`{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}```{Bf}<<{{{Dd{Fn}}{f{Gj}}b{E`{{Dn{Gn}}}}AfAj}{{Ej{Bj}}}}`{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9``````{{{Bf{BlN`}}{Bf{Cj}}}{{Bd{BjBb}}}}{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0``{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0{cc{}}0{{}C`}0``{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}0{{{Bf{Af}}{Bf{Bl{E`{{Dn{Gn}}}}}}{Bf{b}}{D`{Kf}}{Bf{Cj}}{Bf{Bl{Db{Fn}}}}{Bf{Bl{f{Ad}}}}}{{Bd{BjBb}}}}{{{Bf{BlN`}}{Bf{Cj}}Nb}{{Bd{BjBb}}}}{{{Bf{BlN`}}Nb{Bf{Cj}}}{{Bd{BjBb}}}}`````{Bf}0```{{{Bf{BlN`}}}Bj}{{{Dd{{j{Cj{D`{Cn}}}}}}{f{Ad}}Afb{E`{{Dn{Gn}}}}{f{Gj}}{Dd{Ln}}{Db{Fn}}{Db{Gb}}Aj}{{Ej{Bj}}}}`{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}0{{{Bf{BlN`}}}{{Bd{BjBb}}}}>>```{{{Bf{c}}Bh}Bj{}}```{{{Bf{c}}}{{Bf{e}}}{}{}}0{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0{{{Bf{Nd}}}Nd}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}{{{Bf{c}}}Bj{}}`{C`{{Bf{c}}}{}}0{C`{{Bf{Blc}}}{}}0{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}0{C`Bj}0{{{Bf{BlNd}}{Bf{F`}}{Bf{BlNf}}{Bf{{Dj{DfDh}}}}}{{Nh{Bj}}}}{cc{}}0{{{Bf{c}}}c{}}{{{Bf{BlNd}}{Bf{Df}}}Bj}{{}C`}0{ce{}{}}0{c{{Cd{e}}}{}{}}0{{}{{Bd{CfCh}}}}0``{{{Dj{Cj{Dj{DfDh}}}}Cj{E`{{Dn{Dl}}}}{j{{Db{{j{Cj{D`{Cn}}}}}}{Dd{{j{Cj{D`{Cn}}}}}}}}{j{{Db{Gb}}{Dd{Gb}}}}Eb{f{Gj}}{Dj{Ed{j{{D`{Ef}}C`}}}}C`{Bf{b}}Aj}Nj}{{{E`{{Dn{Dl}}}}b}Nd}`````{{{Bf{BlNd}}{Bf{F`}}{Bf{BlNf}}{Bf{{Dj{DfDh}}}}Eb}{{Nh{Cj}}}}{Bf}0`{{{Bf{BlNj}}}Bj}```{{{Bf{c}}}e{}{}}{c{{Bd{e}}}{}{}}000{{{Bf{c}}}El{}}0{{{f{c}}}{{f{En}}}{}}0{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0{{{Bf{c}}}{{Bf{En}}}{}}0``==````{{{Bf{c}}Bh}Bj{}}00{{{Bf{c}}}{{Bf{e}}}{}{}}000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}000{{{Bf{Nl}}}Nl}{{{Bf{Nn}}}Nn}{{{Bf{O`}}}O`}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}00{{{Bf{c}}}Bj{}}00{C`{{Bf{c}}}{}}000{C`{{Bf{Blc}}}{}}000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}000{{{Bf{O`}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Nlc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}{C`Bj}000{{{Bf{Nl}}{Bf{Nl}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{Nl}}{Bf{BlHl}}}Hn}{cc{}}000{{{Bf{c}}}c{}}00`{{}C`}000{ce{}{}}000{c{{Cd{e}}}{}{}}000`{{}{{Bd{CfCh}}}}000```{{{Dj{DfDh}}{Ab{Ef}}{Bf{An}}}{{Nh{Nl}}}}{{}Nn}{ObO`}{Bf}000{{{Bf{Nn}}{Bf{Nl}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}```{{{Bf{c}}}e{}{}}00{c{{Bd{e}}}{}{}}0000000{{{Bf{c}}}El{}}000{{{f{c}}}{{f{En}}}{}}000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}000{{{Bf{c}}}{{Bf{En}}}{}}000====`````````{{{Bf{c}}Bh}Bj{}}0{{{Bf{c}}}{{Bf{e}}}{}{}}0000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}0000{{{Bf{Od}}}Od}{{{Bf{Of}}}Of}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}0{{{Bf{c}}}Bj{}}0{{}Of}{C`{{Bf{c}}}{}}0000{C`{{Bf{Blc}}}{}}0000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{{{Bf{Oh}}{Bf{{Hd{Cn}}}}}{{Ij{{Bf{{Hd{Cn}}}}Odc}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}1111{C`Bj}0000{{{Bf{Oj}}{Bf{Oj}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{Od}}{Bf{BlHl}}}Hn}{{{Bf{Oj}}{Bf{BlHl}}}Hn}{cc{}}000{{{Bf{Od}}}Oj}1{{{Bf{c}}}c{}}0``{{}C`}0000{ce{}{}}0000{c{{Cd{e}}}{}{}}0000``{{}{{Bd{CfCh}}}}0000`{{{Bf{{Hd{Cn}}}}{Bf{Ol}}}{{Ij{{Bf{{Hd{Cn}}}}{j{DfDh}}c}}}{{Il{{Bf{{Hd{Cn}}}}}}{In{{Bf{{Hd{Cn}}}}}}}}```{OnOh}{{}Of}```{Bf}0000{{{Bf{Of}}{Bf{Od}}{Bf{Bl{D`{Cn}}}}}{{Bd{BjJf}}}}{{{Bf{c}}}e{}{}}0{c{{Bd{e}}}{}{}}00{Jh{{Bd{Oj{Jj{Oj}}}}}}11{c{{Bd{Oj{Jj{Oj}}}}}{}}22222{{{Bf{c}}}El{}}0000{{{f{c}}}{{f{En}}}{}}0000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}0000{{{Bf{c}}}{{Bf{En}}}{}}0000?????``````````````````{{{Bf{c}}Bh}Bj{}}0000{{{Bf{BlA@`}}{Bf{Cj}}}Bj}{{{Bf{c}}}{{Bf{e}}}{}{}}00000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}00000{{{Bf{A@b}}}A@b}{{{Bf{A@`}}}A@`}{{{Bf{A@d}}}A@d}{{{Bf{A@f}}}A@f}{{{Bf{Gb}}}Gb}{{{Bf{A@`}}}{{f{Dl}}}}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}0000{{{Bf{c}}}Bj{}}0000{{{Bf{A@b}}{Bf{A@b}}}A@h}`{{{Bf{c}}{Bf{e}}}A@h{}{}}{{}A@b}{{}A@`}{C`{{Bf{c}}}{}}00000{C`{{Bf{Blc}}}{}}00000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}00000{C`Bj}00000{{A@bC`{Ab{A@j}}}A@b}{{{Bf{A@b}}{Bf{A@b}}}Hf}{{{Bf{A@f}}{Bf{A@f}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000000000{{{Bf{BlA@b}}}Bj}{{{Bf{A@d}}{Bf{BlHl}}}Hn}{{{Bf{A@f}}{Bf{BlHl}}}Hn}{cc{}}00000{{{Bf{c}}}c{}}0000{{{Bf{A@`}}}Jh}{{{Bf{A@`}}{Bf{Df}}}A@b}1{{{Bf{A@`}}A@l{Bf{{Hj{Df}}}}}{{Ab{Df}}}}{{{Bf{A@`}}}{{Bf{{Dj{CjA@d}}}}}}{{{Bf{A@`}}}{{Bf{{Hj{Df}}}}}}{{{Bf{BlA@`}}}{{Bf{Bl{Dj{CjA@d}}}}}}{{{Bf{A@`}}C`}{{D`{{j{Cj{Dj{DfDh}}}}}}}}{{{Bf{A@`}}}{{Bf{{Dj{DfA@j}}}}}}{{}C`}00000{{{Bf{BlA@`}}{Bf{Df}}}Hf}{{{Bf{BlA@`}}{Bf{Df}}A@j}Bj}{ce{}{}}00000{c{{Cd{e}}}{}{}}00000``````{{}{{Bd{CfCh}}}}00000`{{{Bf{A@b}}{Bf{A@b}}}{{Ab{A@h}}}}``{Bf}00000`6{{{Bf{BlA@`}}{Bf{Df}}}Bj}000`{{{Bf{BlA@b}}}Bj}00`{{{Bf{c}}}e{}{}}00001`{c{{Bd{e}}}{}{}}00000000000{{{Bf{c}}}El{}}00000{{{Bf{BlA@`}}{Bf{Cj}}}Bj}{{{f{c}}}{{f{En}}}{}}00000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}00000{{{Bf{c}}}{{Bf{En}}}{}}00000======```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}`{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{E`{{Dn{Dl}}}}{f{Gj}}b{Dd{{j{Cj{Dj{DfDh}}}}}}Eb{Dj{Ed{j{{D`{Ef}}C`}}}}C`Aj}A@n}{Bf}{{{Bf{b}}{f{Gj}}{E`{{Dn{Dl}}}}Eb{Dj{Ed{j{{D`{Ef}}C`}}}}C`Aj}{{j{{j{{Db{{j{Cj{Dj{DfDh}}}}}}{Dd{{j{Cj{Dj{DfDh}}}}}}}}{D`{A@n}}}}}}{{Eb{E`{{Dn{Dl}}}}O`AA`AAbDf{Bf{b}}Aj}{{Nh{Cj}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}};{EfEf}`{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{j{{Db{Bn}}{Ej{Bj}}}}}AAd}{Bf}{{{Bf{BlAAd}}}Bj}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}:````````````{{{Bf{c}}Bh}Bj{}}0`{{{Bf{c}}}{{Bf{e}}}{}{}}000{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}000{{{Bf{AAf}}}AAf}{{{Bf{Eb}}}Eb}{{{Bf{c}}{Bf{Ble}}}Bj{}{}}0{{{Bf{c}}}Bj{}}0{{}AAf}{C`{{Bf{c}}}{}}000{C`{{Bf{Blc}}}{}}000{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}000{C`Bj}000`{{{Bf{AAh}}{Bf{AAh}}}Hf}{{{Bf{c}}{Bf{e}}}Hf{}{}}00000{{{Bf{AAj}}{Bf{BlHl}}}Hn}{{{Bf{AAh}}{Bf{BlHl}}}Hn}{LbAAj}{MhAAj}{IhAAj}{cc{}}{OdAAj}{{{Bf{AAj}}}AAh}222{{{Bf{c}}}c{}}0{{{Bf{Eb}}{Bf{{Hd{Cn}}}}{Bf{Cj}}}{{Nh{Bj}}}}``{{}C`}000{ce{}{}}000{c{{Cd{e}}}{}{}}000{{}{{Bd{CfCh}}}}000{{}AAf}``{Bf}000````{{{Bf{AAf}}{Bf{AAj}}{Bf{Bl{D`{Cn}}}}}{{Nh{Bj}}}}{{{Bf{c}}}e{}{}}0{c{{Bd{e}}}{}{}}{Jh{{Bd{AAh{Jj{AAh}}}}}}111{c{{Bd{AAh{Jj{AAh}}}}}{}}2222{{{Bf{c}}}El{}}000{{{f{c}}}{{f{En}}}{}}000{{{Bf{Blc}}}{{Bf{BlEn}}}{}}000{{{Bf{c}}}{{Bf{En}}}{}}000===={{AAfId}AAf}{{AAfKn}AAf}{{AAfMd}AAf}{{AAfOf}AAf}`{{{Bf{{Hd{{j{AAlAAnAB`}}}}}}}{{Bd{BjBb}}}}```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}`{b{{j{{f{d}}h}}}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}``{cc{}}{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}```{Bf}{{b{f{l}}{f{n}}{Ab{A`}}{f{Ad}}AfhAhAj}{{Bd{{j{{f{Al}}AnB`}}Bb}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}9```{{{Bf{c}}}{{Bf{e}}}{}{}}{{{Bf{Blc}}}{{Bf{Ble}}}{}{}}{{{Bf{Gj}}}{{f{Gj}}}}{C`{{Bf{c}}}{}}{C`{{Bf{Blc}}}{}}{{{Bf{c}}{Bf{Ble}}}{{Bd{{Cb{gi}}}}}{}{}{}{}}{C`Bj}{cc{}}{{{Bf{Cl}}}{{f{Gj}}}}{{{Bf{ABb}}}{{f{Gj}}}}{{{Bf{Gj}}}C`}0{{{Bf{Gj}}}{{Hj{Cj}}}}{{{Bf{Gj}}}{{Hj{Df}}}}{{{Bf{Gj}}}{{Dj{Cj{j{DfFf{Ab{Ed}}}}}}}}{{{Bf{Gj}}}{{Dj{Ed{j{JhJh}}}}}}{{{Bf{Cl}}}Jh}{{{Bf{ABb}}}Jh}10{{}C`}{ce{}{}}{c{{Cd{e}}}{}{}}{{}{{Bd{CfCh}}}}{{{ABd{CjF`NdEb}}}ABb}`{Bf}{{{Bf{Gj}}{Bf{Cj}}{Bf{AAf}}AAjHf}{{Bd{BjBb}}}}{{{Bf{BlGj}}{Bf{Cj}}}Bj}{{{Bf{BlCl}}DhDf}{{Bd{BjBb}}}}{{{Bf{BlABb}}DhDf}{{Bd{BjBb}}}}10{{{Bf{BlCl}}DfA@l}{{Bd{BjBb}}}}{{{Bf{BlABb}}DfA@l}{{Bd{BjBb}}}}{c{{Bd{e}}}{}{}}0{{{Bf{c}}}El{}}{{{f{c}}}{{f{En}}}{}}{{{Bf{Blc}}}{{Bf{BlEn}}}{}}{{{Bf{c}}}{{Bf{En}}}{}}?`{{{Bf{BlDl}}{Bf{Cj}}}Bj}{{{Bf{Dl}}}{{f{Dl}}}}{{{Bf{Dl}}}Jh}{{{Bf{Dl}}{Bf{Df}}}A@b}1{{{Bf{Dl}}A@l{Bf{{Hj{Df}}}}}{{Ab{Df}}}}{{{Bf{Dl}}}{{Bf{{Dj{CjA@d}}}}}}{{{Bf{Dl}}}{{Bf{{Hj{Df}}}}}}{{{Bf{BlDl}}}{{Bf{Bl{Dj{CjA@d}}}}}}{{{Bf{Dl}}C`}{{D`{{j{Cj{Dj{DfDh}}}}}}}}{{{Bf{Dl}}}{{Bf{{Dj{DfA@j}}}}}}{{{Bf{BlDl}}{Bf{Df}}}Hf}{{{Bf{BlDl}}{Bf{Df}}A@j}Bj}1{{{Bf{BlDl}}{Bf{Df}}}Bj}000<","D":"BAh","p":[[5,"ProtocolConfig",2152],[10,"ProtocolController",2153],[5,"Box",2154],[5,"ProtocolChannels",2057],[1,"tuple"],[10,"SelectorController",2155],[10,"ConsensusController",2156],[5,"BootstrapPeers",2157],[6,"Option",2158],[10,"PoolController",2159],[5,"Storage",2160],[5,"MipStore",2161],[5,"MassaMetrics",2162],[10,"ProtocolManager",2153],[6,"KeyPair",2163],[5,"NodeId",2164],[6,"ProtocolError",2165],[6,"Result",2166],[1,"reference"],[5,"Private",2167],[1,"unit"],[0,"mut"],[6,"ConnectivityCommand",13],[1,"usize"],[5,"With",2168],[5,"Request",2169],[5,"Layout",2170],[5,"LayoutError",2170],[5,"PeerId",2171],[10,"NetworkController",2087],[1,"u8"],[5,"Vec",2172],[5,"MassaSender",2173],[5,"MassaReceiver",2174],[6,"SocketAddr",2175],[6,"TransportType",2176],[5,"HashMap",2177],[10,"PeerDBTrait",2132],[8,"RwLock",2178],[5,"Arc",2179],[5,"MessagesHandler",1921],[5,"String",2180],[6,"IpAddr",2181],[5,"PeerCategoryInfo",2152],[5,"JoinHandle",2182],[5,"TypeId",2183],[10,"Any",2183],[5,"Context",45],[5,"ProtocolControllerImpl",73],[5,"NetworkStats",2184],[6,"PeerConnectionType",2185],[6,"BlockId",2186],[6,"BlockHandlerRetrievalCommand",210],[6,"BlockHandlerPropagationCommand",178],[6,"OperationHandlerPropagationCommand",1018],[6,"EndorsementHandlerPropagationCommand",702],[6,"PeerManagementCmd",1649],[8,"SecuredHeader",2187],[8,"PreHashMap",2188],[8,"PreHashSet",2188],[10,"ActiveConnectionsTrait",2087],[5,"EndorsementCache",674],[5,"OperationCache",989],[5,"BlockCache",151],[5,"BlockHandler",121],[1,"slice"],[1,"bool"],[1,"u32"],[5,"HashSet",2189],[5,"Formatter",2190],[8,"Result",2190],[6,"AskForBlockInfo",240],[6,"BlockInfoReply",240],[5,"BlockMessageSerializer",240],[5,"BlockMessageDeserializer",240],[6,"BlockMessage",240],[8,"IResult",2191],[10,"ParseError",2192],[10,"ContextError",2192],[6,"MessageTypeId",240],[6,"BlockInfoType",240],[5,"BlockMessageDeserializerArgs",240],[6,"SerializeError",2193],[1,"u64"],[5,"TryFromPrimitiveError",2194],[5,"PropagationThread",498],[5,"BlockPropagationData",498],[5,"RetrievalThread",554],[5,"BlockInfo",554],[6,"OperationId",2195],[8,"SecureShareOperation",2195],[6,"EndorsementHandlerRetrievalCommand",730],[5,"EndorsementHandler",644],[6,"EndorsementId",2196],[5,"EndorsementMessageSerializer",751],[5,"EndorsementMessageDeserializer",751],[6,"EndorsementMessage",751],[6,"MessageTypeId",751],[5,"EndorsementMessageDeserializerArgs",751],[5,"PropagationThread",893],[5,"RetrievalThread",922],[8,"SecureShareEndorsement",2196],[6,"OperationHandlerRetrievalCommand",1046],[5,"OperationHandler",959],[6,"OperationPrefixId",2195],[5,"OperationMessageSerializer",1073],[5,"OperationMessageDeserializer",1073],[6,"OperationMessage",1073],[6,"MessageTypeId",1073],[5,"OperationMessageDeserializerArgs",1073],[5,"PropagationThread",1217],[5,"RetrievalThread",1251],[8,"OperationPrefixIds",2195],[5,"MassaHandshake",1315],[6,"Endpoint",2197],[8,"PeerNetResult",2198],[5,"PeerManagementHandler",1315],[5,"Announcement",1385],[5,"AnnouncementSerializer",1385],[5,"AnnouncementDeserializer",1385],[5,"AnnouncementDeserializerArgs",1385],[6,"PeerManagementMessage",1504],[5,"PeerManagementMessageSerializer",1504],[5,"PeerManagementMessageDeserializer",1504],[6,"MessageTypeId",1504],[5,"IpAddrDeserializer",2199],[5,"PeerManagementMessageDeserializerArgs",1504],[5,"PeerDB",1649],[5,"ConnectionMetadata",1649],[5,"PeerInfo",1649],[6,"PeerState",1649],[6,"Ordering",2200],[5,"MassaTime",2201],[5,"Duration",2202],[5,"Tester",1872],[5,"VersionDeserializer",2203],[5,"PeerIdDeserializer",2171],[5,"ProtocolManagerImpl",1898],[5,"MessagesSerializer",1921],[6,"MessageTypeId",1921],[6,"Message",1921],[5,"Hash",2204],[6,"Signature",2163],[6,"PublicKey",2163],[5,"NetworkControllerImpl",2087],[5,"PeerNetManager",2205],[15,"GetStats",44],[15,"IntegratedBlock",208],[15,"WishlistDelta",238],[15,"DataRequest",494],[15,"DataResponse",494],[5,"OperationBatchItem",1251],[5,"PeerManagementChannel",1649],[15,"GetBootstrapPeers",1871]],"r":[[3,2057],[9,2057]],"b":[[1977,"impl-From%3CEndorsementMessage%3E-for-Message"],[1978,"impl-From%3COperationMessage%3E-for-Message"],[1979,"impl-From%3CBlockMessage%3E-for-Message"],[1981,"impl-From%3CPeerManagementMessage%3E-for-Message"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFwHmgAAAAMABQADAAsAEAAdAAEAIAAYADoAAgA+ABgAWAADAF4AAgBiAAAAZgAfAIcAAACJAAQAjwAIAJkAAACbAAEAngADAKMAAACmAAEAqQAJALYACwDDAAEAxgAKANMAAQDWAAkA4QABAOQACgDzAAQA+QAAAPsAAAD/AAIAAwEAAAYBAAAJAV4AbQEAAHEBDACGAWgA8wECAPoBAwAAAggADAIBABACAwAWAgEAGQIBAB0CDQAsAgUAMwIGADsCDgBMAgAATgIAAFECAQBVAgMAWgIDAGQCAQBnAgUAbgIFAHUCDACDAg0AkgIAAJQCDgCkAgIAqAIDAK4CAACyAgEAtgIGAL4CDQDNAgEA0AISAOQCAADmAg0A9QI3ADADAAAzAwcAQAM9AH8DCgCLAwAAjQMCAJEDCwCeAwgAqAMBAKsDAgCvAwIAswMWAMsDAADNAxAA3wMCAOQDAwDpAwAA7QMBAPIDBgD6AwEA/QMKAAkEAQAMBBYAJAQBACcECgAzBAMAOAQAADoEAAA8BAsASQQhAG4EAABxBAcAfgQJAJAEPgDQBAEA0wQFANoECQDlBAQA6wQNAPsEAQD+BAAAAQUEAAgFAQALBQAADQUaACkFEgA+BQMARAVWAJ8FAgCjBQMAqwUJALYFCADCBSUA6QUxAB8GAAAhBggALwYOAEAGlADbBgcA5AYCAOgGCAD3BhQADQcPAB4HBQAlBzMAWgcBAF0HAQBgBwoAbAcGAHQHAAB2BwMAewdBAL4HAQDDBwgA0AcSAOQHIwAKCAUAEQgFABgIAAAaCAUAIQgQADMIDABBCCcA"}],\ +["massa_sdk",{"t":"FFGFPFFFPFNNNNONNNNNNNNNNCOOOOCOONNNNNNNNNNNNNNNNNNHHNNNNNNNOOOOOHONNNNNNNNNNOOOOONNNNNNNNNNNNNNNNNOONONNNNNNNHNNNNNNNNNNNNNNNNNNNNNOHHHFFFNNNNNNOOONNNNNNNNNOONNNNNNNNNOONNNNNNOOOOOONNNNNNNNNNNNNNN","n":["Client","ClientConfig","ClientError","ClientV2","Connect","HttpConfig","RpcClient","RpcClientV2","Url","WsConfig","_get_cliques","_get_graph_interval","_get_stakers","add_staking_secret_keys","api","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cert_manager","certificate_store","chain_id","client_config","client_config","config","enabled","enabled","execute_read_only_bytecode","execute_read_only_call","fmt","fmt","from","from","from","from","from","from","from","from_url","from_url","get_addresses","get_blocks","get_datastore_entries","get_endorsements","get_filtered_sc_output_event","get_headers","get_id_kind","get_largest_stakers","get_next_block_best_parents","get_operations","get_slots_transfers","get_staking_addresses","get_status","get_version","grpc_private","grpc_public","headers","http_client","http_client","http_client_from_url","id_kind","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","max_concurrent_requests","max_log_length","max_notifs_per_subscription","max_redirections","max_request_body_size","new","new","node_add_to_bootstrap_blacklist","node_add_to_bootstrap_whitelist","node_add_to_peers_whitelist","node_ban_by_id","node_ban_by_ip","node_bootstrap_blacklist","node_bootstrap_whitelist","node_bootstrap_whitelist_allow_all","node_peers_whitelist","node_remove_from_bootstrap_blacklist","node_remove_from_bootstrap_whitelist","node_remove_from_peers_whitelist","node_sign_message","node_unban_by_id","node_unban_by_ip","private","public","remove_staking_addresses","request_timeout","send_operations","source","stop_node","subscribe_new_blocks","subscribe_new_blocks_headers","subscribe_new_filled_blocks","subscribe_new_operations","to_error_obj","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","ws_client","ws_client_from_url","gen_cert_for_ca","gen_signed_cert","ClientConfig","HttpConfig","WsConfig","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","certificate_store","client_config","client_config","clone","clone","clone","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","enabled","enabled","fmt","fmt","fmt","from","from","from","from_ref","from_ref","from_ref","headers","id_kind","into","into","into","into_request","into_request","into_request","max_concurrent_requests","max_log_length","max_notifs_per_subscription","max_redirections","max_request_body_size","request_timeout","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","vzip","vzip","vzip"],"q":[[0,"massa_sdk"],[134,"massa_sdk::cert_manager"],[136,"massa_sdk::config"],[197,"massa_models::clique"],[198,"alloc::vec"],[199,"jsonrpsee_core"],[200,"massa_api_exports"],[201,"massa_api_exports::block"],[202,"massa_models::address"],[203,"massa_models::prehash"],[204,"alloc::string"],[205,"massa_api_exports::execution"],[206,"core::fmt"],[207,"tonic::transport::error"],[208,"http::uri"],[209,"core::net::socket_addr"],[210,"massa_api_exports::address"],[211,"massa_models::block_id"],[212,"massa_api_exports::datastore"],[213,"massa_models::endorsement"],[214,"massa_api_exports::endorsement"],[215,"massa_models::execution"],[216,"massa_models::output_event"],[217,"http::header::map"],[218,"jsonrpsee_core::client"],[219,"core::option"],[220,"massa_api_exports::page"],[221,"massa_models::operation"],[222,"massa_api_exports::operation"],[223,"massa_models::slot"],[224,"massa_api_exports::node"],[225,"massa_models::version"],[226,"jsonrpsee_http_client::transport"],[227,"jsonrpsee_http_client::client"],[228,"tonic::request"],[229,"core::net::ip_addr"],[230,"core::result"],[231,"massa_models::node"],[232,"massa_models::composite"],[233,"core::error"],[234,"jsonrpsee_core::client::error"],[235,"massa_models::block_header"],[236,"massa_models::secure_share"],[237,"massa_models::block"],[238,"jsonrpsee_types::error"],[239,"core::any"],[240,"jsonrpsee_core::client::async_client"],[241,"rcgen"],[242,"rcgen::error"]],"i":[0,0,0,0,17,0,0,0,17,0,1,1,1,1,57,55,1,57,26,17,55,1,57,26,17,0,74,55,23,25,0,23,25,1,1,17,17,55,1,57,26,17,17,17,1,26,1,1,1,1,1,0,0,26,26,1,1,1,1,26,55,55,74,1,26,0,74,55,1,57,26,17,55,1,57,26,17,74,74,25,25,74,55,57,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,55,55,1,74,1,17,1,26,26,26,26,0,17,55,1,57,26,17,55,1,57,26,17,55,1,57,26,17,55,1,57,26,17,26,0,0,0,0,0,0,74,23,25,74,23,25,74,23,25,74,23,25,74,23,25,74,23,25,23,25,74,23,25,74,23,25,74,23,25,74,74,74,23,25,74,23,25,74,74,25,25,74,74,74,23,25,74,23,25,74,23,25,74,23,25,74,23,25],"f":"``````````{{{d{b}}}{{j{{h{f}}}}}}{{{d{b}}l}{{j{{h{n}}}}}}{{{d{b}}}{{j{{Ad{A`Ab}}}}}}{{{d{b}}{h{Af}}}{{j{Ah}}}}`{{{d{c}}}{{d{e}}}{}{}}0000{{{d{Ajc}}}{{d{Aje}}}{}{}}0000````````{{{d{b}}Al}{{j{An}}}}{{{d{b}}B`}{{j{An}}}}{{{d{Bb}}{d{AjBd}}}Bf}0{cc{}}000{BhBb}1{BjBb}{{{d{Bl}}{d{Bn}}}b}{{C`{d{Bn}}{d{Cb}}}Cd}{{{d{b}}{h{A`}}}{{j{{h{Cf}}}}}}{{{d{b}}{h{Ch}}}{{j{{h{Cj}}}}}}{{{d{b}}{h{Cl}}}{{j{{h{Cn}}}}}}{{{d{b}}{h{D`}}}{{j{{h{Db}}}}}}{{{d{b}}Dd}{{j{{h{Df}}}}}}{{{d{{Dj{{Dh{AfAf}}}}}}}Dl}{{{d{Bl}}}Dn}{{{d{Cd}}{Eb{E`}}}{{j{{Ed{{Dh{ChAb}}}}}}}}{{{d{Cd}}}{{j{{h{{Dh{ChAb}}}}}}}}{{{d{b}}{h{Ef}}}{{j{{h{Eh}}}}}}{{{d{b}}{h{Ej}}}{{j{{h{{h{El}}}}}}}}{{{d{b}}}{{j{{En{A`}}}}}}{{{d{b}}}{{j{F`}}}}{{{d{Cd}}}{{j{Fb}}}}`````{{{d{Bl}}{d{Bn}}}{{Ff{Fd}}}}`{ce{}{}}0000{c{{Fh{e}}}{}{}}0000`````{{FjFlFlFlFlAb{d{Bn}}}{{G`{FnBb}}}}{{FjFl{d{Bn}}{d{Cb}}}Gb}{{{d{b}}{h{Fj}}}{{j{Ah}}}}00{{{d{b}}{h{Gd}}}{{j{Ah}}}}1{{{d{b}}}{{j{{h{Fj}}}}}}0{{{d{b}}}{{j{Ah}}}}1333{{{d{b}}{h{Gf}}}{{j{Gh}}}}34``{{{d{b}}{h{A`}}}{{j{Ah}}}}`{{{d{b}}{h{Gj}}}{{j{{h{Ef}}}}}}{{{d{Bb}}}{{Eb{{d{Gl}}}}}}4{{{d{Cd}}}{{G`{{Gn{Cj}}H`}}}}{{{d{Cd}}}{{G`{{Gn{{Hd{HbCh}}}}H`}}}}{{{d{Cd}}}{{G`{{Gn{Hf}}H`}}}}{{{d{Cd}}}{{G`{{Gn{Hh}}H`}}}}{AfHj}{{{d{c}}}Af{}}{c{{G`{e}}}{}{}}000000000{{{d{c}}}Hl{}}0000{ce{}{}}0000`{{{d{Bl}}{d{Cb}}}Hn}{{}{{G`{I`Ib}}}}{{{d{I`}}{h{Af}}}{{G`{{Dh{AfAf}}Ib}}}}```{{{d{c}}}{{d{e}}}{}{}}00{{{d{Ajc}}}{{d{Aje}}}{}{}}00```{{{d{Id}}}Id}{{{d{Bn}}}Bn}{{{d{Cb}}}Cb}{{{d{c}}{d{Aje}}}Ah{}{}}00{{{d{c}}}Ah{}}00``{{{d{Id}}{d{AjBd}}}Bf}{{{d{Bn}}{d{AjBd}}}Bf}{{{d{Cb}}{d{AjBd}}}Bf}{cc{}}00{{{d{c}}}c{}}00``???{c{{Fh{e}}}{}{}}00``````{{{d{c}}}e{}{}}00{c{{G`{e}}}{}{}}00000{{{d{c}}}Hl{}}00{ce{}{}}00","D":"Mh","p":[[5,"RpcClient",0],[1,"reference"],[5,"Clique",197],[5,"Vec",198],[8,"RpcResult",199],[5,"TimeInterval",200],[5,"BlockSummary",201],[6,"Address",202],[1,"u64"],[8,"PreHashMap",203],[5,"String",204],[1,"unit"],[0,"mut"],[5,"ReadOnlyBytecodeExecution",205],[5,"ExecuteReadOnlyResponse",205],[5,"ReadOnlyCall",205],[6,"ClientError",0],[5,"Formatter",206],[8,"Result",206],[5,"Error",207],[5,"InvalidUri",208],[1,"str"],[5,"HttpConfig",136],[6,"SocketAddr",209],[5,"WsConfig",136],[5,"RpcClientV2",0],[5,"AddressInfo",210],[6,"BlockId",211],[5,"BlockInfo",201],[5,"DatastoreEntryInput",212],[5,"DatastoreEntryOutput",212],[6,"EndorsementId",213],[5,"EndorsementInfo",214],[5,"EventFilter",215],[5,"SCOutputEvent",216],[1,"tuple"],[1,"slice"],[5,"HeaderMap",217],[6,"IdKind",218],[5,"ApiRequest",200],[6,"Option",219],[5,"PagedVecV2",220],[6,"OperationId",221],[5,"OperationInfo",222],[5,"Slot",223],[5,"Transfer",205],[8,"PreHashSet",203],[5,"NodeStatus",224],[5,"Version",225],[6,"HttpBackend",226],[5,"HttpClient",227],[5,"Request",228],[6,"IpAddr",229],[1,"u16"],[5,"Client",0],[6,"Result",230],[5,"ClientV2",0],[5,"NodeId",231],[1,"u8"],[5,"PubkeySig",232],[5,"OperationInput",222],[10,"Error",233],[5,"Subscription",218],[6,"Error",234],[5,"BlockHeader",235],[5,"SecureShare",236],[5,"FilledBlock",237],[5,"Operation",221],[5,"ErrorObject",238],[5,"TypeId",239],[5,"Client",240],[5,"Certificate",241],[6,"RcgenError",242],[5,"ClientConfig",136]],"r":[[1,136],[5,136],[9,136]],"b":[[35,"impl-Debug-for-ClientError"],[36,"impl-Display-for-ClientError"],[41,"impl-From%3CError%3E-for-ClientError"],[43,"impl-From%3CInvalidUri%3E-for-ClientError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAFkAEQALAAAAEAAJAB8AAAAkAAEAKgAAACwAAAA0AAEAQAACAEkABABpAAAAbwAXAIwABQCVAAgAoAACAKYAAgCuAAIAtwAOAA=="}],\ +["massa_serialization",{"t":"FFFKPPFFFFGKPFFFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOONNNNNNNMNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["BoolDeserializer","BoolSerializer","DeserializeError","Deserializer","GeneralError","NumberTooBig","OptionDeserializer","OptionSerializer","RatioDeserializer","RatioSerializer","SerializeError","Serializer","StringTooBig","U128VarIntDeserializer","U128VarIntSerializer","U16VarIntDeserializer","U16VarIntSerializer","U32VarIntDeserializer","U32VarIntSerializer","U64VarIntDeserializer","U64VarIntSerializer","add_context","append","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","data_deserializer","data_deserializer","data_serializer","data_serializer","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","errors","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_char","from_error_kind","gen_varint","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","new","new","new","new","new","new","new","new","new","new","new","new","new","new","or","phantom_data","phantom_data","phantom_t","phantom_t","range","range","range","range","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id"],"q":[[0,"massa_serialization"],[262,"nom::error"],[263,"core::clone"],[264,"num_integer"],[265,"core::default"],[266,"nom::internal"],[267,"core::option"],[268,"num_rational"],[269,"core::fmt"],[270,"core::ops::range"],[271,"alloc::vec"],[272,"core::result"],[273,"alloc::string"],[274,"core::any"]],"i":[0,0,0,0,8,8,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,5,5,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,20,26,17,24,9,11,13,15,22,23,24,21,10,12,14,16,20,23,26,5,8,8,5,5,22,23,24,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,5,5,0,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,9,10,11,12,13,14,15,16,17,20,22,23,24,26,5,24,26,17,20,10,12,14,16,19,9,11,13,15,17,22,24,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26,8,5,9,10,11,12,13,14,15,16,17,20,22,23,24,26],"f":"`````````````````````{{{f{{d{b}}}}{f{h}}j}j}{{{f{{d{b}}}}lj}j}{{{f{c}}}{{f{e}}}{}{}}000000000000000{{{f{nc}}}{{f{ne}}}{}{}}000000000000000{{{f{A`}}}A`}{{{f{j}}}j}{{{f{Ab}}}Ab}{{{f{Ad}}}Ad}{{{f{Af}}}Af}{{{f{Ah}}}Ah}{{{f{Aj}}}Aj}{{{f{Al}}}Al}{{{f{An}}}An}{{{f{B`}}}B`}{{{f{{Bb{ce}}}}}{{Bb{ce}}}Bd{{Bf{c}}Bd}}{{{f{{Bh{ce}}}}}{{Bh{ce}}}{BdBd}{{Bj{c}}Bd}}{{{f{Bl}}}Bl}{{{f{Bn}}}Bn}{{{f{{C`{ce}}}}}{{C`{ce}}}{CbBdBd}{{Bf{c}}Bd}}{{{f{{Cd{ce}}}}}{{Cd{ce}}}{CbBdBd}{{Bj{c}}Bd}}{{{f{c}}{f{ne}}}Cf{}{}}000000000000000{{{f{c}}}Cf{}}000000000000000````{{}Ab}{{}Af}{{}Aj}{{}An}{{}Bl}{{}Bn}{{}{{C`{ce}}}{CbBdCh}{{Bf{c}}Ch}}{{{f{Bj}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}ce}}}{}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Ad}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}D`c}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Ah}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Dbc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Al}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Ddc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{B`}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Dfc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{{Bh{ce}}}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}{Dh{c}}g}}}Bd{{Bj{c}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{Bn}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}Djc}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}{{{f{{Cd{ce}}}}{f{{d{b}}}}}{{Cj{{f{{d{b}}}}{Dl{c}}g}}}{CbBd}{{Bj{c}}}{{Cl{{f{{d{b}}}}}}{Cn{{f{{d{b}}}}}}}}`{{{f{A`}}{f{nDn}}}E`}0{{{f{j}}{f{nDn}}}E`}0{{{f{Bl}}{f{nDn}}}E`}{{{f{Bn}}{f{nDn}}}E`}{{{f{{C`{ce}}}}{f{nDn}}}E`{CbBdEb}{{Bf{c}}Eb}}{cc{}}000000000000000{{{f{{d{b}}}}Ed}j}{{{f{{d{b}}}}l}j}`{ce{}{}}000000000000000{{}Ab}{{{Ef{D`}}{Ef{D`}}}Ad}{{}Af}{{{Ef{Db}}{Ef{Db}}}Ah}{{}Aj}{{{Ef{Dd}}{Ef{Dd}}}Al}{{}An}{{{Ef{Df}}{Ef{Df}}}B`}{e{{Bb{ce}}}{}{{Bf{c}}}}{e{{Bh{ce}}}Bd{{Bj{c}}}}{{}Bl}{{}Bn}{e{{C`{ce}}}{CbBd}{{Bf{c}}}}{e{{Cd{ce}}}{CbBd}{{Bj{c}}}}{{jj}j}````````{{{f{Bf}}{f{c}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}{}}{{{f{Ab}}{f{D`}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{Af}}{f{Db}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{Aj}}{f{Dd}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{An}}{f{Df}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{{Bb{ce}}}}{f{{Dh{c}}}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}{}{{Bf{c}}}}{{{f{Bl}}{f{Dj}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}}{{{f{{C`{ce}}}}{f{{Dl{c}}}}{f{n{Eh{b}}}}}{{Ej{CfA`}}}{CbBd}{{Bf{c}}}}{{{f{c}}}e{}{}}000000000000000{{{f{c}}}El{}}0{c{{Ej{e}}}{}{}}0000000000000000000000000000000{{{f{c}}}En{}}000000000000000","D":"Gh","p":[[1,"u8"],[1,"slice"],[1,"reference"],[1,"str"],[5,"DeserializeError",0],[6,"ErrorKind",262],[0,"mut"],[6,"SerializeError",0],[5,"U16VarIntSerializer",0],[5,"U16VarIntDeserializer",0],[5,"U32VarIntSerializer",0],[5,"U32VarIntDeserializer",0],[5,"U64VarIntSerializer",0],[5,"U64VarIntDeserializer",0],[5,"U128VarIntSerializer",0],[5,"U128VarIntDeserializer",0],[5,"OptionSerializer",0],[10,"Clone",263],[10,"Serializer",0],[5,"OptionDeserializer",0],[10,"Deserializer",0],[5,"BoolSerializer",0],[5,"BoolDeserializer",0],[5,"RatioSerializer",0],[10,"Integer",264],[5,"RatioDeserializer",0],[1,"unit"],[10,"Default",265],[8,"IResult",266],[10,"ParseError",262],[10,"ContextError",262],[1,"u16"],[1,"u32"],[1,"u64"],[1,"u128"],[6,"Option",267],[1,"bool"],[5,"Ratio",268],[5,"Formatter",269],[8,"Result",269],[10,"Debug",269],[1,"char"],[6,"Bound",270],[5,"Vec",271],[6,"Result",272],[5,"String",273],[5,"TypeId",274]],"r":[],"b":[[123,"impl-Debug-for-SerializeError"],[124,"impl-Display-for-SerializeError"],[125,"impl-Display-for-DeserializeError%3C\'a%3E"],[126,"impl-Debug-for-DeserializeError%3C\'a%3E"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAMoACgAAAAAAAwAAAAcAAgALAAAAFgBcAHQADgCTAAIArgABALIACgC+AEgA"}],\ +["massa_signature",{"t":"PGPGPGFFPGFPPPCCHPGPPPNNNNNNNNNNNNNNNGQFPQTSGQFFPQTSTGQFFPQNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNN","n":["InvalidVersionError","KeyPair","KeyPairV0","MassaSignatureError","ParsingError","PublicKey","PublicKeyDeserializer","PublicKeyV0","PublicKeyV0","Signature","SignatureDeserializer","SignatureError","SignatureV0","WrongPrefix","error","signature_impl","verify_signature_batch","InvalidVersionError","MassaSignatureError","ParsingError","SignatureError","WrongPrefix","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","into","to_owned","to_string","try_from","try_into","type_id","vzip","KeyPair","KeyPair","KeyPairV0","KeyPairV0","KeyPairVariant","PUBLIC_KEY_SIZE_BYTES","PUBLIC_PREFIX","PublicKey","PublicKey","PublicKeyDeserializer","PublicKeyV0","PublicKeyV0","PublicKeyVariant","SECRET_KEY_BYTES_SIZE","SECRET_PREFIX","SIGNATURE_SIZE_BYTES","Signature","Signature","SignatureDeserializer","SignatureV0","SignatureV0","SignatureVariant","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","eq","eq","eq","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_bs58_check","from_bs58_check","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_str","from_str","from_str","generate","generate","get_public_key","get_public_key","get_ser_len","get_ser_len","get_ser_len","get_ser_len","get_ser_len","get_ser_len","get_version","get_version","hash","hash","into","into","into","into","into","into","into","into","new","new","partial_cmp","partial_cmp","serialize","serialize","serialize","sign","sign","to_bs58_check","to_bs58_check","to_bytes","to_bytes","to_bytes","to_bytes","to_bytes","to_bytes","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","verify_signature","verify_signature","verify_signature_batch","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_signature"],[17,"massa_signature::error"],[37,"massa_signature::signature_impl"],[230,"massa_hash::hash"],[231,"core::result"],[232,"core::fmt"],[233,"alloc::string"],[234,"core::any"],[235,"core::cmp"],[236,"serde::de"],[237,"nom::internal"],[238,"nom::error"],[239,"core::hash"],[240,"core::option"],[241,"serde::ser"],[242,"alloc::vec"]],"i":[8,0,15,0,8,0,0,0,3,0,0,8,2,8,0,0,0,8,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,15,0,17,0,0,0,0,0,3,0,16,0,19,0,0,0,0,2,0,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,15,16,3,17,18,2,19,15,16,3,3,17,17,18,2,2,19,19,3,17,18,21,15,3,18,2,21,3,17,2,19,15,15,16,3,3,17,17,2,2,19,19,15,16,3,17,18,2,19,21,2,19,15,16,3,17,2,19,15,3,2,15,16,15,16,15,16,3,17,2,19,15,16,3,17,15,16,3,17,18,2,19,21,18,21,3,17,15,3,2,15,16,2,19,15,16,3,17,2,19,15,16,3,17,18,2,19,15,16,3,17,2,19,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,21,15,16,3,17,18,2,19,21,3,17,0,15,16,3,17,18,2,19,21],"f":"````````````````{{{l{{j{{h{bdf}}}}}}}{{Ab{nA`}}}}`````{{{l{c}}}{{l{e}}}{}{}}{{{l{Adc}}}{{l{Ade}}}{}{}}{{{l{A`}}}A`}{{{l{c}}{l{Ade}}}n{}{}}{{{l{c}}}n{}}{{{l{A`}}{l{AdAf}}}Ah}0{cc{}}{ce{}{}}{{{l{c}}}e{}{}}{{{l{c}}}Aj{}}{c{{Ab{e}}}{}{}}0{{{l{c}}}Al{}}4``````````````````````;;;;;;;;::::::::{{{l{An}}}An}{{{l{B`}}}B`}{{{l{f}}}f}{{{l{Bb}}}Bb}{{{l{Bd}}}Bd}{{{l{d}}}d}{{{l{Bf}}}Bf}???????>>>>>>>>>>>{{{l{f}}{l{f}}}Bh}{{{l{Bb}}{l{Bb}}}Bh}{{}Bd}{{}Bj}{c{{Ab{An}}}Bl}{c{{Ab{f}}}Bl}{{{l{Bd}}{l{{j{Bn}}}}}{{C`{{l{{j{Bn}}}}fc}}}{{Cb{{l{{j{Bn}}}}}}{Cd{{l{{j{Bn}}}}}}}}{c{{Ab{d}}}Bl}{{{l{Bj}}{l{{j{Bn}}}}}{{C`{{l{{j{Bn}}}}dc}}}{{Cb{{l{{j{Bn}}}}}}{Cd{{l{{j{Bn}}}}}}}}{{{l{f}}{l{f}}}Cf}{{{l{Bb}}{l{Bb}}}Cf}{{{l{d}}{l{d}}}Cf}{{{l{Bf}}{l{Bf}}}Cf}{{{l{An}}{l{AdAf}}}Ah}0{{{l{B`}}{l{AdAf}}}Ah}{{{l{f}}{l{AdAf}}}Ah}0{{{l{Bb}}{l{AdAf}}}Ah}0{{{l{d}}{l{AdAf}}}Ah}0{{{l{Bf}}{l{AdAf}}}Ah}0{cc{}}0000000{{{l{Ch}}}{{Ab{dA`}}}}{{{l{Ch}}}{{Ab{BfA`}}}}{{{l{{j{Bn}}}}}{{Ab{AnA`}}}}{{{l{{j{Bn}}}}}{{Ab{B`A`}}}}{{{l{{j{Bn}}}}}{{Ab{fA`}}}}{{{l{{j{Bn}}}}}{{Ab{BbA`}}}}{{{l{{j{Bn}}}}}{{Ab{dA`}}}}{{{l{{j{Bn}}}}}{{Ab{BfA`}}}}{{{l{Ch}}}{{Ab{Anc}}}{}}{{{l{Ch}}}{{Ab{fc}}}{}}{{{l{Ch}}}{{Ab{dc}}}{}}{Cj{{Ab{AnA`}}}}{{}B`}{{{l{An}}}f}{{{l{B`}}}Bb}{{{l{An}}}Cl}{{{l{B`}}}Cl}{{{l{f}}}Cl}{{{l{Bb}}}Cl}{{{l{d}}}Cl}{{{l{Bf}}}Cl}{{{l{An}}}Cj}{{{l{B`}}}Cj}{{{l{f}}{l{Adc}}}nCn}{{{l{Bb}}{l{Adc}}}nCn}{ce{}{}}0000000{{}Bd}{{}Bj}{{{l{f}}{l{f}}}{{D`{Bh}}}}{{{l{Bb}}{l{Bb}}}{{D`{Bh}}}}{{{l{An}}c}AbDb}{{{l{f}}c}AbDb}{{{l{d}}c}AbDb}{{{l{An}}{l{b}}}{{Ab{dA`}}}}{{{l{B`}}{l{b}}}{{Ab{BfA`}}}}{{{l{d}}}Aj}{BfAj}{{{l{An}}}{{Dd{Bn}}}}{{{l{B`}}}{{Dd{Bn}}}}{{{l{f}}}{{Dd{Bn}}}}{{{l{Bb}}}{{Dd{Bn}}}}{{{l{d}}}{{Dd{Bn}}}}{Bf{{Dd{Bn}}}}{{{l{c}}}e{}{}}000000{{{l{c}}}Aj{}}00000{c{{Ab{e}}}{}{}}000000000000000{{{l{c}}}Al{}}0000000{{{l{f}}{l{b}}{l{d}}}{{Ab{nA`}}}}{{{l{Bb}}{l{b}}{l{Bf}}}{{Ab{nA`}}}}{{{l{{j{{h{bdf}}}}}}}{{Ab{nA`}}}}{ce{}{}}0000000","D":"Kd","p":[[5,"Hash",230],[6,"Signature",37],[6,"PublicKey",37],[1,"tuple"],[1,"slice"],[1,"reference"],[1,"unit"],[6,"MassaSignatureError",17],[6,"Result",231],[0,"mut"],[5,"Formatter",232],[8,"Result",232],[5,"String",233],[5,"TypeId",234],[6,"KeyPair",37],[5,"KeyPairV0",37],[5,"PublicKeyV0",37],[5,"PublicKeyDeserializer",37],[5,"SignatureV0",37],[6,"Ordering",235],[5,"SignatureDeserializer",37],[10,"Deserializer",236],[1,"u8"],[8,"IResult",237],[10,"ParseError",238],[10,"ContextError",238],[1,"bool"],[1,"str"],[1,"u64"],[1,"usize"],[10,"Hasher",239],[6,"Option",240],[10,"Serializer",241],[5,"Vec",242]],"r":[[1,37],[3,17],[5,37],[6,37],[7,37],[9,37],[10,37],[16,37]],"b":[[27,"impl-Debug-for-MassaSignatureError"],[28,"impl-Display-for-MassaSignatureError"],[113,"impl-Debug-for-KeyPair"],[114,"impl-Display-for-KeyPair"],[116,"impl-Display-for-PublicKey"],[117,"impl-Debug-for-PublicKey"],[118,"impl-Display-for-PublicKeyV0"],[119,"impl-Debug-for-PublicKeyV0"],[120,"impl-Debug-for-Signature"],[121,"impl-Display-for-Signature"],[122,"impl-Display-for-SignatureV0"],[123,"impl-Debug-for-SignatureV0"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAIwAEwADAAAACQAAAA0AAAAPAAEAFwAGACAABQAnAAAAKQABACwAAAAuAAAAMQADADcAAAA6AC4AawAAAG0ADwCcAAEAqAABALcAJADfAAcA"}],\ ["massa_storage",{"t":"FCOONNNNNNNNNNNNNNCOONNNNNNNNNNOOOCOONNNNNNNNNNNNFNONNNNNNNNNNOOOONNNNNNNNFNNNNONNNONNNNNNNNFNNNNNNNNOONNNONNNNN","n":["Storage","block_indexes","block_owners","blocks","borrow","borrow_mut","claim_block_refs","claim_endorsement_refs","claim_operation_refs","clone","clone_into","clone_to_uninit","clone_without_refs","create_root","drop","drop_block_refs","drop_endorsement_refs","drop_operation_refs","endorsement_indexes","endorsement_owners","endorsements","extend","fmt","from","from_ref","get_block_refs","get_endorsement_refs","get_op_refs","internal_claim_refs","into","into_request","local_used_blocks","local_used_endorsements","local_used_ops","operation_indexes","operation_owners","operations","read_blocks","read_endorsements","read_operations","split_off","store_block","store_endorsements","store_operations","to_owned","try_from","try_into","type_id","vzip","BlockIndexes","aggregate_blocks_by_slot_range","blocks","borrow","borrow_mut","contains","default","from","get","get_blocks_by_endorsement","get_blocks_by_operation","get_blocks_by_slot","get_blocks_created_by","index_by_creator","index_by_endorsement","index_by_op","index_by_slot","insert","into","into_request","remove","try_from","try_into","type_id","vzip","EndorsementIndexes","borrow","borrow_mut","contains","default","endorsements","from","get","get_endorsements_created_by","index_by_creator","insert","into","into_request","remove","try_from","try_into","type_id","vzip","OperationIndexes","borrow","borrow_mut","contains","default","from","get","get_operations_by_prefix","get_operations_created_by","index_by_creator","index_by_prefix","insert","into","into_request","operations","remove","try_from","try_into","type_id","vzip"],"q":[[0,"massa_storage"],[49,"massa_storage::block_indexes"],[74,"massa_storage::endorsement_indexes"],[92,"massa_storage::operation_indexes"],[112,"massa_models::block_id"],[113,"massa_models::prehash"],[114,"massa_models::endorsement"],[115,"massa_models::operation"],[116,"core::fmt"],[117,"parking_lot::rwlock"],[118,"massa_models::secure_share"],[119,"core::cmp"],[120,"core::hash"],[121,"core::marker"],[122,"tonic::request"],[123,"massa_models::block"],[124,"alloc::vec"],[125,"core::result"],[126,"core::any"],[127,"massa_models::slot"],[128,"core::ops::range"],[129,"core::option"],[130,"massa_models::address"],[131,"alloc::boxed"]],"i":[0,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24],"f":"````{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{df}}{b{{j{h}}}}}{{j{h}}}}{{{b{df}}{b{{j{l}}}}}{{j{l}}}}{{{b{df}}{b{{j{n}}}}}{{j{n}}}}{{{b{f}}}f}{{{b{c}}{b{de}}}A`{}{}}{{{b{c}}}A`{}}2{{}f}{{{b{df}}}A`}{{{b{df}}{b{{j{h}}}}}A`}{{{b{df}}{b{{j{l}}}}}A`}{{{b{df}}{b{{j{n}}}}}A`}```{{{b{df}}f}A`}{{{b{f}}{b{dAb}}}Ad}{cc{}}{{{b{c}}}c{}}{{{b{f}}}{{b{{j{h}}}}}}{{{b{f}}}{{b{{j{l}}}}}}{{{b{f}}}{{b{{j{n}}}}}}{{{b{{j{c}}}}{b{d{Aj{{Ah{cAf}}}}}}{b{d{j{c}}}}}A`{AlAnB`BbBdBf}}{ce{}{}}{c{{Bh{e}}}{}{}}``````{{{b{f}}}{{Bl{Bj}}}}{{{b{f}}}{{Bl{Bn}}}}{{{b{f}}}{{Bl{C`}}}}{{{b{df}}{b{{j{h}}}}{b{{j{n}}}}{b{{j{l}}}}}f}{{{b{df}}Cb}A`}{{{b{df}}{Cf{Cd}}}A`}{{{b{df}}{Cf{Ch}}}A`}{{{b{c}}}e{}{}}{c{{Cj{e}}}{}{}}0{{{b{c}}}Cl{}};`{{{b{Bj}}c}{{j{h}}}{{D`{Cn}}}}`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{Bj}}{b{h}}}Db}{{}Bj}{cc{}}{{{b{Bj}}{b{h}}}{{Dd{{b{Cb}}}}}}{{{b{Bj}}{b{l}}}{{Dd{{b{{j{h}}}}}}}}{{{b{Bj}}{b{n}}}{{Dd{{b{{j{h}}}}}}}}{{{b{Bj}}{b{Cn}}}{{Dd{{b{{j{h}}}}}}}}{{{b{Bj}}{b{Df}}}{{Dd{{b{{j{h}}}}}}}}````{{{b{dBj}}Cb}A`}{ce{}{}}{c{{Bh{e}}}{}{}}{{{b{dBj}}{b{h}}}{{Dd{{Dh{Cb}}}}}}{c{{Cj{e}}}{}{}}0{{{b{c}}}Cl{}}4`?>{{{b{Bn}}{b{l}}}Db}{{}Bn}`={{{b{Bn}}{b{l}}}{{Dd{{b{Cd}}}}}}{{{b{Bn}}{b{Df}}}{{Dd{{b{{j{l}}}}}}}}`{{{b{dBn}}Cd}A`}98{{{b{dBn}}{b{l}}}{{Dd{{Dh{Cd}}}}}}776:`{{{b{c}}}{{b{e}}}{}{}}{{{b{dc}}}{{b{de}}}{}{}}{{{b{C`}}{b{n}}}Db}{{}C`}{cc{}}{{{b{C`}}{b{n}}}{{Dd{{b{Ch}}}}}}{{{b{C`}}{b{Dj}}}{{Dd{{b{{j{n}}}}}}}}{{{b{C`}}{b{Df}}}{{Dd{{b{{j{n}}}}}}}}``{{{b{dC`}}Ch}A`}{ce{}{}}{c{{Bh{e}}}{}{}}`{{{b{dC`}}{b{n}}}{{Dd{{Dh{Ch}}}}}}{c{{Cj{e}}}{}{}}0{{{b{c}}}Cl{}}4","D":"Ib","p":[[1,"reference"],[0,"mut"],[5,"Storage",0],[6,"BlockId",112],[8,"PreHashSet",113],[6,"EndorsementId",114],[6,"OperationId",115],[1,"unit"],[5,"Formatter",116],[8,"Result",116],[1,"usize"],[8,"PreHashMap",113],[8,"RwLockWriteGuard",117],[10,"Id",118],[10,"PartialEq",119],[10,"Eq",119],[10,"Hash",120],[10,"PreHashed",113],[10,"Copy",121],[5,"Request",122],[5,"BlockIndexes",49],[8,"RwLockReadGuard",117],[5,"EndorsementIndexes",74],[5,"OperationIndexes",92],[8,"SecureShareBlock",123],[8,"SecureShareEndorsement",114],[5,"Vec",124],[8,"SecureShareOperation",115],[6,"Result",125],[5,"TypeId",126],[5,"Slot",127],[10,"RangeBounds",128],[1,"bool"],[6,"Option",129],[6,"Address",130],[5,"Box",131],[6,"OperationPrefixId",115]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAACcAEAAAAAIABQAGAAoACwAMABMAFwAZAB8AIwAtAC4ALwAwADEANQA2ADgARQBHAEgASQBKAEwATQBPAFcAWQBaAFsAXABeAF8AYQBqAG0AbgBvAHAA"}],\ ["massa_test_framework",{"t":"","n":[],"q":[],"i":[],"f":"","D":"`","p":[],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAAAEAAAAAAA"}],\ ["massa_time",{"t":"PPTFFFGPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNOONNNPPGPNNNNNNNNNNNNNNNNN","n":["CheckedOperationError","ConversionError","EPSILON","MassaTime","MassaTimeDeserializer","MassaTimeSerializer","TimeError","TimeOverflowError","abs_diff","as_millis","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","checked_add","checked_div_time","checked_div_u64","checked_mul","checked_rem_time","checked_rem_u64","checked_sub","clone","clone_into","clone_to_uninit","clone_to_uninit","cmp","compare","days_hours_mins_secs","default","deserialize","deserialize","eq","equivalent","equivalent","equivalent","equivalent","error","estimate_instant","fmt","fmt","format_duration","format_instant","from","from","from","from_millis","from_ref","from_utc_ymd_hms","get_hash","hash","into","into","into","into_request","into_request","into_request","mapping_grpc","max","new","new","now","partial_cmp","saturating_add","saturating_mul","saturating_sub","serialize","serialize","to_duration","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","u64_deserializer","u64_serializer","vzip","vzip","vzip","CheckedOperationError","ConversionError","TimeError","TimeOverflowError","borrow","borrow_mut","clone","clone_into","clone_to_uninit","fmt","fmt","from","from_ref","into","into_request","to_owned","to_string","try_from","try_into","type_id","vzip"],"q":[[0,"massa_time"],[86,"massa_time::error"],[107,"core::result"],[108,"core::cmp"],[109,"nom::internal"],[110,"nom::error"],[111,"serde::de"],[112,"std::time"],[113,"core::fmt"],[114,"alloc::string"],[115,"core::hash"],[116,"core::marker"],[117,"tonic::request"],[118,"core::ops::range"],[119,"core::option"],[120,"alloc::vec"],[121,"massa_serialization"],[122,"serde::ser"],[123,"core::time"],[124,"core::any"]],"i":[5,5,1,0,0,0,0,5,1,1,11,12,1,11,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,11,12,1,1,1,1,1,1,0,1,1,1,1,1,11,12,1,1,1,1,1,1,11,12,1,11,12,1,0,1,11,12,1,1,1,1,1,11,1,1,1,1,11,12,1,11,12,1,11,12,1,12,11,11,12,1,5,5,0,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],"f":"````````{{{d{b}}b}b}{{{d{b}}}f}{{{d{c}}}{{d{e}}}{}{}}00{{{d{hc}}}{{d{he}}}{}{}}00{{bb}{{l{bj}}}}{{bb}{{l{fj}}}}{{bf}{{l{bj}}}}0202{{{d{b}}}b}{{{d{c}}{d{he}}}n{}{}}{{{d{c}}}n{}}0{{{d{b}}{d{b}}}A`}{{{d{c}}{d{e}}}A`{}{}}{{{d{b}}}{{l{{Ad{AbAbAbAb}}j}}}}{{}Af}{{{d{Ah}}{d{{Al{Aj}}}}}{{An{{d{{Al{Aj}}}}bc}}}{{B`{{d{{Al{Aj}}}}}}{Bb{{d{{Al{Aj}}}}}}}}{c{{l{b}}}Bd}{{{d{b}}{d{b}}}Bf}{{{d{c}}{d{e}}}Bf{}{}}000`{b{{l{Bhj}}}}{{{d{b}}{d{hBj}}}Bl}0{{{d{b}}}{{l{Bnj}}}}{{{d{b}}}Bn}{cc{}}00{fb}{{{d{c}}}c{}}{{C`AjAjAjAjAj}{{l{bj}}}}{{{d{c}}{d{e}}}f{CbCd}Cf}{{{d{b}}{d{hc}}}nCh}{ce{}{}}00{c{{Cj{e}}}{}{}}00`{{}b}{{}Af}{{{Ad{{Cl{b}}{Cl{b}}}}}Ah}2{{{d{b}}{d{b}}}{{Cn{A`}}}}{{bb}b}{{bf}b}1{{{d{Af}}{d{b}}{d{h{D`{Aj}}}}}{{l{nDb}}}}{{{d{b}}c}lDd}{{{d{b}}}Df}{{{d{c}}}e{}{}}{{{d{c}}}Bn{}}{c{{l{e}}}{}{}}00000{{{d{c}}}Dh{}}00``>>>````{{{d{c}}}{{d{e}}}{}{}}{{{d{hc}}}{{d{he}}}{}{}}{{{d{j}}}j}{{{d{c}}{d{he}}}n{}{}}{{{d{c}}}n{}}{{{d{j}}{d{hBj}}}Bl}0{cc{}}{{{d{c}}}c{}}{ce{}{}}{c{{Cj{e}}}{}{}}=<;;:1","D":"Ch","p":[[5,"MassaTime",0],[1,"reference"],[1,"u64"],[0,"mut"],[6,"TimeError",86],[6,"Result",107],[1,"unit"],[6,"Ordering",108],[1,"i64"],[1,"tuple"],[5,"MassaTimeSerializer",0],[5,"MassaTimeDeserializer",0],[1,"u8"],[1,"slice"],[8,"IResult",109],[10,"ParseError",110],[10,"ContextError",110],[10,"Deserializer",111],[1,"bool"],[5,"Instant",112],[5,"Formatter",113],[8,"Result",113],[5,"String",114],[1,"i32"],[10,"Hash",115],[10,"Sized",116],[10,"BuildHasher",115],[10,"Hasher",115],[5,"Request",117],[6,"Bound",118],[6,"Option",119],[5,"Vec",120],[6,"SerializeError",121],[10,"Serializer",122],[5,"Duration",123],[5,"TypeId",124]],"r":[[6,86]],"b":[[40,"impl-Display-for-MassaTime"],[41,"impl-Debug-for-MassaTime"],[95,"impl-Display-for-TimeError"],[96,"impl-Debug-for-TimeError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAE8ACQAJAAAACwAhADEAAwA4AAMAQAAFAEcADwBbAAYAYwAAAGUABgA="}],\ -["massa_versioning",{"t":"CCCCCCCGFPPNNNNNNNNNNNNNNNNNONNNNNNNNNOOFNNNNNNNNNNNNONNNNNHFPPPFPFPPPGGGFPPPPPPPPPGFPPPPPPPGGGPFPPGFFFFFFPPPPFPPGPPPPGTTPNNOONNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONOONNOONNNNNNNNNNNNNNNNOONONOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNORPRPGGPPRPPKNNNNNNNNNNMNNNNNNNNNNMNNMNNNNNNNNNNNNNNNFFSSFFSSSSFFFFFFFFOONNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNONNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNOOOONNNNNNOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOONNNNNNNNNNNN","n":["address_factory","grpc_mapping","keypair_factory","mips","versioning","versioning_factory","versioning_ser_der","AddressArgs","AddressFactory","SC","User","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","create","from","from","from_ref","get_component","get_versioning_store","into","into","into_request","into_request","mip_store","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","hash","hash","KeyPairFactory","borrow","borrow_mut","clone","clone_into","clone_to_uninit","create","from","from_ref","get_component","get_versioning_store","into","into_request","mip_store","to_owned","try_from","try_into","type_id","vzip","get_mip_list","Active","Active","Active","Address","Advance","Advance","AdvanceLW","AtError","BeforeInitialState","Block","ComponentState","ComponentStateMessages","ComponentStateTypeId","Defined","Defined","Defined","Deserialize","Deserialize","Downgrade","EmptyHistory","EmptyHistory","Error","Error","ExtendFromDbError","Failed","Failed","Failed","FinalStateHashKind","Invalid","InvalidActivationDelay","InvalidHistory","InvalidPrefix","IsConsistentError","IsConsistentWithShutdownPeriodError","IsKVValidError","KeyPair","LockedIn","LockedIn","LockedIn","MipComponent","MipInfo","MipState","MipStatsConfig","MipStore","MipStoreRaw","MipStoreStats","NonConsistent","NonConsistent","NonConsistent","Overlapping","Started","Started","Started","StateAtError","UnknownDbColumn","Unpredictable","Update","Update","UpdateWithError","VARIANT_COUNT","VARIANT_COUNT","VM","_is_key_value_valid","activation_at","activation_delay","activation_delay","active","advance_states_on_updated_stats","at","at","block_count_considered","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","cmp","compare","compare","compare","compare","components","config","default","defined","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error","execute","extend_from_db","extend_from_db","failed","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_primitive","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_all_active_component_versions","get_all_active_component_versions","get_all_component_versions","get_all_component_versions","get_hash","get_latest_component_version_at","get_latest_component_version_at","get_mip_status","get_network_version_active_at","get_network_version_current","get_network_version_to_announce","get_network_versions_stats","hash","history","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_consistent_with","is_consistent_with_shutdown_period","is_consistent_with_shutdown_period","is_final","is_final","is_key_value_valid","is_key_value_valid","latest_announcements","locked_in","name","network_version_counters","new","new","now","now","on_advance","on_advance","on_advance","on_advance","on_advance","on_advance","on_advance","partial_cmp","partial_cmp","partial_cmp","partial_cmp","reset","reset_db","reset_from","source","source","start","start_timestamp","started","state","state_at","stats","store","threshold","threshold","timeout","timeout","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_db","try_from_db","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_batches","update_batches","update_for_network_shutdown","update_for_network_shutdown","update_network_version_stats","update_network_version_stats","update_with","update_with","version","vote_ratio","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","warn_announced_version_ratio","Arguments","At","Error","Exact","FactoryError","FactoryStrategy","OnCreate","OnStateNotReady","Output","UnimplementedVersion","UnknownVersion","VersioningFactory","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","create","fmt","fmt","fmt","from","from","from","from_ref","from_ref","get_all_active_component_versions","get_all_component_versions","get_component","get_component_version_with_strategy","get_latest_component_version_at","get_versioning_store","into","into","into_request","into_request","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","AdvanceLWDeserializer","AdvanceLWSerializer","COMPONENT_STATE_ID_VARIANT_COUNT","COMPONENT_STATE_VARIANT_COUNT","ComponentStateDeserializer","ComponentStateSerializer","MIP_INFO_COMPONENTS_MAX_ENTRIES","MIP_INFO_NAME_MAX_LEN","MIP_STORE_MAX_ENTRIES","MIP_STORE_MAX_SIZE","MipInfoDeserializer","MipInfoSerializer","MipStateDeserializer","MipStateSerializer","MipStoreRawDeserializer","MipStoreRawSerializer","MipStoreStatsDeserializer","MipStoreStatsSerializer","advance_deserializer","advance_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","components_len_deserializer","config","default","default","default","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","entry_count_deserializer","from","from","from","from","from","from","from","from","from","from","from","from","info_deserializer","info_serializer","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","name_len_deserializer","new","new","new","new","new","new","new","new","new","new","new","new","ratio_deserializer","ratio_deserializer","ratio_serializer","ratio_serializer","serialize","serialize","serialize","serialize","serialize","serialize","state_deserializer","state_deserializer","state_deserializer","state_id_deserializer","state_serializer","state_serializer","stats_deserializer","stats_serializer","time_deserializer","time_deserializer","time_deserializer","time_serializer","time_serializer","time_serializer","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_deserializer","u32_deserializer","u32_deserializer","u32_serializer","u32_serializer","u32_serializer","u32_serializer","u32_serializer","u64_deserializer","u64_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_versioning"],[7,"massa_versioning::address_factory"],[38,"massa_versioning::address_factory::AddressArgs"],[40,"massa_versioning::keypair_factory"],[59,"massa_versioning::mips"],[60,"massa_versioning::versioning"],[599,"massa_versioning::versioning_factory"],[651,"massa_versioning::versioning_ser_der"],[847,"core::result"],[848,"tonic::request"],[849,"core::any"],[850,"massa_time"],[851,"core::option"],[852,"core::cmp"],[853,"massa_db_exports::controller"],[854,"alloc::vec"],[855,"alloc::collections::btree::map"],[856,"core::fmt"],[857,"massa_models::error"],[858,"core::hash"],[859,"core::marker"],[860,"std::collections::hash::map"],[861,"massa_models::slot"],[862,"core::error"],[863,"num_rational"],[864,"alloc::string"],[865,"num_enum"],[866,"massa_db_exports::db_batch"],[867,"massa_serialization"],[868,"nom::internal"],[869,"nom::error"]],"i":[0,0,0,0,0,0,0,0,0,82,82,82,3,82,3,3,3,3,3,82,3,3,3,3,82,3,82,3,3,3,82,3,82,3,82,3,82,3,83,84,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,22,28,7,0,31,0,36,37,7,0,0,0,0,22,28,42,19,38,36,37,22,28,0,0,22,28,7,36,38,36,19,0,0,0,7,0,22,28,0,0,0,0,0,0,0,36,38,45,38,0,22,28,0,42,37,42,45,0,7,28,7,16,13,12,29,22,16,25,26,32,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,7,12,22,22,23,23,24,24,25,25,26,26,27,27,28,29,30,31,13,8,32,33,16,7,12,28,30,7,12,28,30,12,33,22,22,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,32,33,38,16,7,7,7,7,12,12,12,12,28,28,28,28,29,29,29,29,30,30,30,30,22,22,8,16,22,7,12,22,23,24,25,26,27,28,29,30,31,36,36,13,37,37,8,32,33,38,38,42,42,45,45,19,19,16,7,7,12,22,23,24,25,26,27,28,28,29,30,30,31,36,13,37,8,32,33,38,42,42,45,45,19,16,7,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,8,16,8,16,7,8,16,8,8,8,8,16,7,13,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,13,8,16,22,13,8,16,33,22,12,33,13,33,29,30,22,23,24,25,26,27,13,7,12,28,30,33,8,13,42,45,12,29,22,13,13,16,16,29,30,12,29,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,36,37,38,42,45,19,7,12,22,23,24,25,26,27,28,28,29,30,31,36,13,37,8,8,32,33,38,42,45,19,16,16,8,16,28,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,8,16,8,16,8,16,8,16,12,24,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,32,65,5,65,5,0,0,61,61,65,61,61,0,61,5,61,5,61,5,61,5,61,5,65,61,61,5,61,5,5,61,5,65,65,65,65,65,65,61,5,61,5,61,5,61,61,5,61,5,61,5,61,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,72,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,67,79,66,67,68,69,70,71,72,73,74,75,67,69,71,73,79,80,80,66,67,68,69,70,71,72,73,74,79,75,80,80,75,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,67,66,67,68,69,70,71,72,73,74,79,75,80,69,71,68,70,66,68,70,72,74,75,69,73,80,73,72,75,80,75,67,69,71,66,68,70,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,67,73,79,66,68,72,74,75,79,74,66,67,68,69,70,71,72,73,74,79,75,80],"f":"```````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{f}}{b{c}}j}{{l{eg}}}{}{}{}}{cc{}}0{{{b{c}}}c{}}{{}n}{{{b{f}}}A`}{ce{}{}}0{c{{Ab{e}}}{}{}}0`{{{b{c}}}e{}{}}{c{{l{e}}}{}{}}000{{{b{c}}}Ad{}}044```>={{{b{Af}}}Af}<;{{{b{Af}}{b{c}}j}{{l{eg}}}{}{}{}}:98{{{b{Af}}}A`}76`54437{{}{{An{{Al{AhAj}}}}}}``````````````````````````````````````````````````````````````{{{b{B`}}{b{{Bd{Bb}}}}{b{{Bd{Bb}}}}}{{l{hBf}}}}{{{b{Aj}}{b{Ah}}}{{Bj{Bh}}}}``{BhBl}{{{b{dB`}}Bh}h}```{{{b{c}}}{{b{e}}}{}{}}0000000000000000000000{{{b{dc}}}{{b{de}}}{}{}}0000000000000000000000{{{b{n}}}n}{{{b{Ah}}}Ah}{{{b{Bl}}}Bl}{{{b{Bn}}}Bn}{{{b{C`}}}C`}{{{b{Cb}}}Cb}{{{b{Cd}}}Cd}{{{b{Cf}}}Cf}{{{b{Ch}}}Ch}{{{b{Cj}}}Cj}{{{b{Cl}}}Cl}{{{b{Cn}}}Cn}{{{b{Aj}}}Aj}{{{b{A`}}}A`}{{{b{D`}}}D`}{{{b{Db}}}Db}{{{b{B`}}}B`}{{{b{c}}{b{de}}}h{}{}}0000000000000000{{{b{c}}}h{}}0000000000000000000000{{{b{n}}{b{n}}}Dd}{{{b{Ah}}{b{Ah}}}Dd}{{{b{Ch}}{b{Ch}}}Dd}{{{b{Cl}}{b{Cl}}}Dd}{{{b{c}}{b{e}}}Dd{}{}}000``{{}Bl}0{{{b{n}}{b{n}}}Df}{{{b{Ah}}{b{Ah}}}Df}{{{b{Bl}}{b{Bl}}}Df}{{{b{Bn}}{b{Bn}}}Df}{{{b{C`}}{b{C`}}}Df}{{{b{Cb}}{b{Cb}}}Df}{{{b{Cd}}{b{Cd}}}Df}{{{b{Cf}}{b{Cf}}}Df}{{{b{Ch}}{b{Ch}}}Df}{{{b{Cj}}{b{Cj}}}Df}{{{b{Cl}}{b{Cl}}}Df}{{{b{Cn}}{b{Cn}}}Df}{{{b{Dh}}{b{Dh}}}Df}{{{b{Aj}}{b{Aj}}}Df}{{{b{Dj}}{b{Dj}}}Df}{{{b{D`}}{b{D`}}}Df}{{{b{Db}}{b{Db}}}Df}{{{b{Dl}}{b{Dl}}}Df}{{{b{B`}}{b{B`}}}Df}{{{b{c}}{b{e}}}Df{}{}}0000000000000000000{{}Bl}{{BlCn}Bl}{{{b{dA`}}Dn}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Ed}}}}{{{b{dB`}}Dn}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Ed}}}}3{{{b{n}}{b{dEf}}}Eh}{{{b{Ah}}{b{dEf}}}Eh}{{{b{Bl}}{b{dEf}}}Eh}{{{b{Bn}}{b{dEf}}}Eh}{{{b{C`}}{b{dEf}}}Eh}{{{b{Cb}}{b{dEf}}}Eh}{{{b{Cd}}{b{dEf}}}Eh}{{{b{Cf}}{b{dEf}}}Eh}{{{b{Ch}}{b{dEf}}}Eh}{{{b{Cj}}{b{dEf}}}Eh}{{{b{Cl}}{b{dEf}}}Eh}{{{b{Cn}}{b{dEf}}}Eh}{{{b{Dh}}{b{dEf}}}Eh}0{{{b{Aj}}{b{dEf}}}Eh}{{{b{Dj}}{b{dEf}}}Eh}0{{{b{A`}}{b{dEf}}}Eh}{{{b{D`}}{b{dEf}}}Eh}{{{b{Db}}{b{dEf}}}Eh}{{{b{Dl}}{b{dEf}}}Eh}0{{{b{Ed}}{b{dEf}}}Eh}0{{{b{Ej}}{b{dEf}}}Eh}0{{{b{Bf}}{b{dEf}}}Eh}0{{{b{B`}}{b{dEf}}}Eh}{cc{}}{Eln}11111111{{{b{Bl}}}Ch}22{{{b{Cj}}}Cl}333333333{DlEd}{EnEj}555{cn{}}{{{b{c}}}c{}}0000000000000000{{{b{A`}}{b{n}}}{{E`{El}}}}{{{b{B`}}{b{n}}}{{E`{El}}}}{{{b{A`}}{b{n}}}{{Eb{ElCh}}}}{{{b{B`}}{b{n}}}{{Eb{ElCh}}}}{{{b{c}}{b{e}}}F`{FbFd}Ff}{{{b{A`}}{b{n}}Bh}El}{{{b{B`}}{b{n}}Bh}El}{{{b{A`}}}{{Eb{AhCh}}}}{{{b{A`}}Bh}El}{{{b{A`}}}El}{{{b{A`}}}{{Bj{El}}}}{{{b{B`}}}{{Fh{ElF`}}}}{{{b{n}}{b{dc}}}hFj}`{ce{}{}}0000000000000000000000{c{{Ab{e}}}{}{}}0000000000000000000000{{{b{Aj}}{b{Ah}}}{{l{hDh}}}}{{{b{A`}}FlFlBbBhBh}{{l{hEj}}}}{{{b{B`}}FlFlBbBhBh}{{l{hEj}}}}{{{b{Bl}}}Df}{{{b{Aj}}}Df}{{{b{A`}}{b{{Bd{Bb}}}}{b{{Bd{Bb}}}}}Df}{{{b{B`}}{b{{Bd{Bb}}}}{b{{Bd{Bb}}}}}Df}`{BhBl}``{BhAj}{D`Db}``{{BlCj}Bl}{{BnCj}Bl}{{C`Cj}Bl}{{CbCj}Bl}{{CdCj}Cd}{{CfCj}Cf}{{{b{dAj}}{b{Cj}}}h}{{{b{n}}{b{n}}}{{Bj{Dd}}}}{{{b{Ah}}{b{Ah}}}{{Bj{Dd}}}}{{{b{Ch}}{b{Ch}}}{{Bj{Dd}}}}{{{b{Cl}}{b{Cl}}}{{Bj{Dd}}}}{{{b{dDb}}}h}{{{b{A`}}Dn}h}{{{b{Aj}}}{{Bj{Aj}}}}{{{b{Ed}}}{{Bj{{b{Fn}}}}}}{{{b{Ej}}}{{Bj{{b{Fn}}}}}}``{{{G`{F`}}}Bl}`{{{b{Aj}}BhBhBhBh}{{l{ChDj}}}}``````{{{b{c}}}e{}{}}0000000000000000{{{b{c}}}Gb{}}00000{c{{l{e}}}{}{}}00000000{El{{l{Ch{Gd{Ch}}}}}}111111{{{Al{{An{{Al{AhAj}}}}D`}}}{{l{A`c}}}{}}2222222{{{Al{{An{{Al{AhAj}}}}D`}}}{{l{B`c}}}{}}3{{DnD`}{{l{A`Ed}}}}{{DnD`}{{l{B`Ed}}}}{c{{l{Ch{Gd{Ch}}}}}{}}66666666666666666666666{{{b{c}}}Ad{}}0000000000000000000000{{{b{A`}}{b{dGf}}{b{dGf}}{Bj{{Al{{b{Bh}}{b{Bh}}}}}}}{{l{hGh}}}}{{{b{B`}}{b{dGf}}{b{dGf}}{Bj{{Al{{b{Bh}}{b{Bh}}}}}}}{{l{hGh}}}}{{{b{dA`}}FlFlBbBhBh}{{l{hEn}}}}{{{b{dB`}}FlFlBbBhBh}{{l{hEn}}}}{{{b{dA`}}Bh{Bj{{Al{El{Bj{El}}}}}}}h}{{{b{dB`}}Bh{Bj{{Al{El{Bj{El}}}}}}}h}{{{b{dA`}}{b{A`}}}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Dl}}}}{{{b{dB`}}{b{B`}}}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Dl}}}}``{ce{}{}}0000000000000000000000`````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Gj}}}Gj}{{{b{j}}}j}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}{b{g}}j}{{l{ce}}}{}{}{}}{{{b{Gj}}{b{dEf}}}Eh}0{{{b{j}}{b{dEf}}}Eh}{cc{}}0{Elj}{{{b{c}}}c{}}0{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}}{{E`{El}}}{}{}{}}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}}{{Eb{ElCh}}}{}{}{}}{{}n}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}j}{{l{ElGj}}}{}{}{}}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}Bh}{{l{ElGj}}}{}{}{}}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}}A`{}{}{}}{ce{}{}}0{c{{Ab{e}}}{}{}}0{{{b{c}}}e{}{}}0{{{b{c}}}Gb{}}{c{{l{e}}}{}{}}000{{{b{c}}}Ad{}}055````````````````````{{{b{c}}}{{b{e}}}{}{}}00000000000{{{b{dc}}}{{b{de}}}{}{}}00000000000``{{}Hd}{{}Hf}{{}Hh}{{}Hj}{{}Hl}{{}Hn}{{}I`}{{}Ib}{{}Id}{{}If}{{{b{Hf}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Ahc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{Hj}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Blc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{Hn}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Clc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{Ib}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Ajc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{In}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Dbc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{J`}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}B`c}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}`{cc{}}00000000000``{ce{}{}}00000000000{c{{Ab{e}}}{}{}}00000000000`{{}Hd}{{}Hf}{{}Hh}{{}Hj}{{}Hl}{{}Hn}{{}I`}{{}Ib}{{}Id}{{Jb{G`{F`}}}In}{{}If}{{Jb{G`{F`}}}J`}````{{{b{Hd}}{b{Ah}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{Hh}}{b{Bl}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{Hl}}{b{Cl}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{I`}}{b{Aj}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{Id}}{b{Db}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{If}}{b{B`}}{b{d{E`{Bb}}}}}{{l{hGh}}}}``````````````{c{{l{e}}}{}{}}00000000000000000000000{{{b{c}}}Ad{}}00000000000``````````{ce{}{}}00000000000","D":"AFl","p":[[1,"reference"],[0,"mut"],[5,"AddressFactory",7],[1,"unit"],[6,"FactoryStrategy",599],[6,"Result",847],[6,"MipComponent",60],[5,"MipStore",60],[5,"Request",848],[5,"TypeId",849],[5,"KeyPairFactory",40],[5,"MipInfo",60],[5,"MipState",60],[1,"tuple"],[1,"array"],[5,"MipStoreRaw",60],[1,"u8"],[1,"slice"],[6,"IsKVValidError",60],[5,"MassaTime",850],[6,"Option",851],[6,"ComponentState",60],[5,"Defined",60],[5,"Started",60],[5,"LockedIn",60],[5,"Active",60],[5,"Failed",60],[6,"ComponentStateTypeId",60],[5,"Advance",60],[5,"AdvanceLW",60],[6,"ComponentStateMessages",60],[5,"MipStatsConfig",60],[5,"MipStoreStats",60],[6,"Ordering",852],[1,"bool"],[6,"IsConsistentError",60],[6,"StateAtError",60],[6,"UpdateWithError",60],[8,"ShareableMassaDBController",853],[5,"Vec",854],[5,"BTreeMap",855],[6,"ExtendFromDbError",60],[5,"Formatter",856],[8,"Result",856],[6,"IsConsistentWithShutdownPeriodError",60],[1,"u32"],[6,"ModelsError",857],[1,"u64"],[10,"Hash",858],[10,"Sized",859],[10,"BuildHasher",858],[5,"HashMap",860],[10,"Hasher",858],[5,"Slot",861],[10,"Error",862],[5,"Ratio",863],[5,"String",864],[5,"TryFromPrimitiveError",865],[8,"DBBatch",866],[6,"SerializeError",867],[6,"FactoryError",599],[17,"Output"],[17,"Error"],[17,"Arguments"],[10,"VersioningFactory",599],[5,"MipInfoSerializer",651],[5,"MipInfoDeserializer",651],[5,"ComponentStateSerializer",651],[5,"ComponentStateDeserializer",651],[5,"AdvanceLWSerializer",651],[5,"AdvanceLWDeserializer",651],[5,"MipStateSerializer",651],[5,"MipStateDeserializer",651],[5,"MipStoreStatsSerializer",651],[5,"MipStoreRawSerializer",651],[8,"IResult",868],[10,"ParseError",869],[10,"ContextError",869],[5,"MipStoreStatsDeserializer",651],[5,"MipStoreRawDeserializer",651],[1,"usize"],[6,"AddressArgs",7],[15,"User",38],[15,"SC",38]],"r":[],"b":[[302,"impl-Display-for-IsConsistentError"],[303,"impl-Debug-for-IsConsistentError"],[305,"impl-Display-for-StateAtError"],[306,"impl-Debug-for-StateAtError"],[310,"impl-Display-for-UpdateWithError"],[311,"impl-Debug-for-UpdateWithError"],[312,"impl-Display-for-ExtendFromDbError"],[313,"impl-Debug-for-ExtendFromDbError"],[314,"impl-Display-for-IsConsistentWithShutdownPeriodError"],[315,"impl-Debug-for-IsConsistentWithShutdownPeriodError"],[316,"impl-Debug-for-IsKVValidError"],[317,"impl-Display-for-IsKVValidError"],[622,"impl-Display-for-FactoryError"],[623,"impl-Debug-for-FactoryError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJkCNwABABIAFgACABsAFAAxAAIANQAHAD4AAgBCAAQASAABAEsACABWAAYAXwABAGIAAQBrAAMAcAABAHMAAwB4AAMAfwAAAIEAcQD0ACwAIgEdAEEBAABKAQAATQEAAFcBAQBcAREAcgEAAHkBAgCTARYAqwEAAK0BAACvAQMAtAEAALYBAAC5AQAAwAEFAMcBAQDLAQEAzgEBANQBMAAHAi8AOAIEAD8CGABeAgEAYQIBAGQCCQBvAgIAdAICAH8CDACOAgEAkgIAAJQCAQCeAiwA1wIBAOUCDAD+AlEA"}],\ -["massa_wallet",{"t":"PPPPPPPPSFGFPNONNNNOONNNNNNNNNNCNNNNNNNNNNNNNNNONOOOONONNNNNNNNNNNNNONNONPPPPPPPPGPNNNNNNNNNNNNNNNNNNNN","n":["IOError","MassaCipherError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","SerdeqsError","VersionError","WALLET_VERSION","Wallet","WalletError","WalletFileFormat","YAMLError","add_keypairs","address","borrow","borrow","borrow_mut","borrow_mut","chain_id","ciphered_data","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","create_operation","deserialize","deserialize","drop","error","find_associated_keypair","find_associated_public_key","fmt","fmt","fmt","from","from","from_ref","from_ref","get_full_wallet","get_wallet_address_list","into","into","into_request","into_request","keys","new","nickname","nonce","password","public_key","remove_addresses","salt","save","serialize","serialize","sign_message","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","version","vzip","vzip","wallet_path","zeroize","IOError","MassaCipherError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","SerdeqsError","VersionError","WalletError","YAMLError","borrow","borrow_mut","fmt","fmt","from","from","from","from","from","from","from","from","into","into_request","source","to_string","try_from","try_into","type_id","vzip"],"q":[[0,"massa_wallet"],[73,"massa_wallet::error"],[103,"massa_signature::signature_impl"],[104,"alloc::vec"],[105,"massa_models::address"],[106,"core::result"],[107,"massa_models::operation"],[108,"serde::de"],[109,"core::option"],[110,"core::fmt"],[111,"massa_models::prehash"],[112,"tonic::request"],[113,"std::path"],[114,"alloc::string"],[115,"serde::ser"],[116,"massa_models::composite"],[117,"core::any"],[118,"massa_hash::error"],[119,"massa_models::error"],[120,"massa_signature::error"],[121,"serde_qs::error"],[122,"massa_cipher::error"],[123,"serde_yaml::error"],[124,"std::io::error"],[125,"core::error"]],"i":[7,7,7,7,7,7,7,7,0,0,0,0,7,2,9,2,9,2,9,2,9,2,9,2,9,2,9,2,2,9,2,0,2,2,2,2,9,2,9,2,9,2,2,2,9,2,9,2,2,9,9,2,9,2,9,2,2,9,2,2,9,2,2,9,2,9,2,9,9,2,9,2,2,7,7,7,7,7,7,7,7,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"f":"`````````````{{{f{bd}}{j{h}}}{{A`{{j{l}}n}}}}`{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0``{{{f{d}}}d}{{{f{Ab}}}Ab}{{{f{c}}{f{be}}}Ad{}{}}0{{{f{c}}}Ad{}}0{{{f{d}}Afl}{{A`{Ahn}}}}{c{{A`{d}}}Aj}{c{{A`{Ab}}}Aj}{{{f{bd}}}Ad}`{{{f{d}}{f{l}}}{{Al{{f{h}}}}}}{{{f{d}}{f{l}}}{{Al{An}}}}{{{f{d}}{f{bB`}}}Bb}0{{{f{Ab}}{f{bB`}}}Bb}{cc{}}0{{{f{c}}}c{}}0{{{f{d}}}{{f{{Bd{lh}}}}}}{{{f{d}}}{{Bf{l}}}}{ce{}{}}0{c{{Bh{e}}}{}{}}0`{{BjBlBn}{{A`{dn}}}}````{{{f{bd}}{f{{j{l}}}}}{{A`{C`n}}}}`{{{f{d}}}{{A`{Adn}}}}{{{f{d}}c}A`Cb}{{{f{Ab}}c}A`Cb}{{{f{d}}{f{l}}{j{Cd}}}{{Al{Cf}}}}{{{f{c}}}e{}{}}0{{{f{c}}}Bl{}}{c{{A`{e}}}{}{}}000{{{f{c}}}Ch{}}0`;;`{{{f{bd}}}Ad}``````````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{n}}{f{bB`}}}Bb}0{Cjn}{Cln}{Cnn}{D`n}{Dbn}{Ddn}{cc{}}{Dfn}{ce{}{}}{c{{Bh{e}}}{}{}}{{{f{n}}}{{Al{{f{Dh}}}}}}{{{f{c}}}Bl{}}{c{{A`{e}}}{}{}}0{{{f{c}}}Ch{}}5","D":"Ef","p":[[0,"mut"],[5,"Wallet",0],[1,"reference"],[6,"KeyPair",103],[5,"Vec",104],[6,"Address",105],[6,"WalletError",73],[6,"Result",106],[5,"WalletFileFormat",0],[1,"unit"],[5,"Operation",107],[8,"SecureShareOperation",107],[10,"Deserializer",108],[6,"Option",109],[6,"PublicKey",103],[5,"Formatter",110],[8,"Result",110],[8,"PreHashMap",111],[8,"PreHashSet",111],[5,"Request",112],[5,"PathBuf",113],[5,"String",114],[1,"u64"],[1,"bool"],[10,"Serializer",115],[1,"u8"],[5,"PubkeySig",116],[5,"TypeId",117],[6,"MassaHashError",118],[6,"ModelsError",119],[6,"MassaSignatureError",120],[6,"Error",121],[6,"CipherError",122],[5,"Error",123],[5,"Error",124],[10,"Error",125]],"r":[[10,73]],"b":[[34,"impl-Debug-for-Wallet"],[35,"impl-Display-for-Wallet"],[85,"impl-Display-for-WalletError"],[86,"impl-Debug-for-WalletError"],[87,"impl-From%3CMassaHashError%3E-for-WalletError"],[88,"impl-From%3CModelsError%3E-for-WalletError"],[89,"impl-From%3CMassaSignatureError%3E-for-WalletError"],[90,"impl-From%3CError%3E-for-WalletError"],[91,"impl-From%3CCipherError%3E-for-WalletError"],[92,"impl-From%3CError%3E-for-WalletError"],[94,"impl-From%3CError%3E-for-WalletError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADwAEAAJAAAADwAEABUABgAdAAMAIwACACgAAQAuAAEAMgABADUAAAA3AAAAOQABADwACwBJAAAAVAAJAF8AAABhAAYA"}],\ +["massa_versioning",{"t":"CCCCCCCGFPPNNNNNNNNNNNNNNNNNONNNNNNNNNOOFNNNNNNNNNNNNONNNNNHFPPPFPFPPPGGGFPPPPPPPPPGFPPPPPPPGGGPFPPGFFFFFFPPPPFPPGPPPPGTTPNNOONNOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNONOONNOONNNNNNNNNNNNNNNNOONONOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNORPRPGGPPRPPKNNNNNNNNNNMNNNNNNNNNNMNNMNNNNNNNNNNNNNNNFFSSFFSSSSFFFFFFFFOONNNNNNNNNNNNNNNNNNNNNNNNOONNNNNNNNNNNNNNNNONNNNNNNNNNNNOONNNNNNNNNNNNNNNNNNNNNNNNONNNNNNNNNNNNOOOONNNNNNOOOOOOOOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOONNNNNNNNNNNN","n":["address_factory","grpc_mapping","keypair_factory","mips","versioning","versioning_factory","versioning_ser_der","AddressArgs","AddressFactory","SC","User","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","create","from","from","from_ref","get_component","get_versioning_store","into","into","into_request","into_request","mip_store","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","hash","hash","KeyPairFactory","borrow","borrow_mut","clone","clone_into","clone_to_uninit","create","from","from_ref","get_component","get_versioning_store","into","into_request","mip_store","to_owned","try_from","try_into","type_id","vzip","get_mip_list","Active","Active","Active","Address","Advance","Advance","AdvanceLW","AtError","BeforeInitialState","Block","ComponentState","ComponentStateMessages","ComponentStateTypeId","Defined","Defined","Defined","Deserialize","Deserialize","Downgrade","EmptyHistory","EmptyHistory","Error","Error","ExtendFromDbError","Failed","Failed","Failed","FinalStateHashKind","Invalid","InvalidActivationDelay","InvalidHistory","InvalidPrefix","IsConsistentError","IsConsistentWithShutdownPeriodError","IsKVValidError","KeyPair","LockedIn","LockedIn","LockedIn","MipComponent","MipInfo","MipState","MipStatsConfig","MipStore","MipStoreRaw","MipStoreStats","NonConsistent","NonConsistent","NonConsistent","Overlapping","Started","Started","Started","StateAtError","UnknownDbColumn","Unpredictable","Update","Update","UpdateWithError","VARIANT_COUNT","VARIANT_COUNT","VM","_is_key_value_valid","activation_at","activation_delay","activation_delay","active","advance_states_on_updated_stats","at","at","block_count_considered","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","cmp","compare","compare","compare","compare","components","config","default","defined","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error","execute","extend_from_db","extend_from_db","failed","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_primitive","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","get_all_active_component_versions","get_all_active_component_versions","get_all_component_versions","get_all_component_versions","get_hash","get_latest_component_version_at","get_latest_component_version_at","get_mip_status","get_network_version_active_at","get_network_version_current","get_network_version_to_announce","get_network_versions_stats","hash","history","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_consistent_with","is_consistent_with_shutdown_period","is_consistent_with_shutdown_period","is_final","is_final","is_key_value_valid","is_key_value_valid","latest_announcements","locked_in","name","network_version_counters","new","new","now","now","on_advance","on_advance","on_advance","on_advance","on_advance","on_advance","on_advance","partial_cmp","partial_cmp","partial_cmp","partial_cmp","reset","reset_db","reset_from","source","source","start","start_timestamp","started","state","state_at","stats","store","threshold","threshold","timeout","timeout","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_db","try_from_db","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update_batches","update_batches","update_for_network_shutdown","update_for_network_shutdown","update_network_version_stats","update_network_version_stats","update_with","update_with","version","vote_ratio","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","warn_announced_version_ratio","Arguments","At","Error","Exact","FactoryError","FactoryStrategy","OnCreate","OnStateNotReady","Output","UnimplementedVersion","UnknownVersion","VersioningFactory","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","create","fmt","fmt","fmt","from","from","from","from_ref","from_ref","get_all_active_component_versions","get_all_component_versions","get_component","get_component_version_with_strategy","get_latest_component_version_at","get_versioning_store","into","into","into_request","into_request","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","AdvanceLWDeserializer","AdvanceLWSerializer","COMPONENT_STATE_ID_VARIANT_COUNT","COMPONENT_STATE_VARIANT_COUNT","ComponentStateDeserializer","ComponentStateSerializer","MIP_INFO_COMPONENTS_MAX_ENTRIES","MIP_INFO_NAME_MAX_LEN","MIP_STORE_MAX_ENTRIES","MIP_STORE_MAX_SIZE","MipInfoDeserializer","MipInfoSerializer","MipStateDeserializer","MipStateSerializer","MipStoreRawDeserializer","MipStoreRawSerializer","MipStoreStatsDeserializer","MipStoreStatsSerializer","advance_deserializer","advance_serializer","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","components_len_deserializer","config","default","default","default","default","default","default","default","default","default","default","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","entry_count_deserializer","from","from","from","from","from","from","from","from","from","from","from","from","info_deserializer","info_serializer","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","name_len_deserializer","new","new","new","new","new","new","new","new","new","new","new","new","ratio_deserializer","ratio_deserializer","ratio_serializer","ratio_serializer","serialize","serialize","serialize","serialize","serialize","serialize","state_deserializer","state_deserializer","state_deserializer","state_id_deserializer","state_serializer","state_serializer","stats_deserializer","stats_serializer","time_deserializer","time_deserializer","time_deserializer","time_serializer","time_serializer","time_serializer","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u32_deserializer","u32_deserializer","u32_deserializer","u32_serializer","u32_serializer","u32_serializer","u32_serializer","u32_serializer","u64_deserializer","u64_serializer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":[[0,"massa_versioning"],[7,"massa_versioning::address_factory"],[38,"massa_versioning::address_factory::AddressArgs"],[40,"massa_versioning::keypair_factory"],[59,"massa_versioning::mips"],[60,"massa_versioning::versioning"],[599,"massa_versioning::versioning_factory"],[651,"massa_versioning::versioning_ser_der"],[847,"core::result"],[848,"tonic::request"],[849,"core::any"],[850,"massa_time"],[851,"core::option"],[852,"core::cmp"],[853,"massa_db_exports::controller"],[854,"alloc::vec"],[855,"alloc::collections::btree::map"],[856,"core::fmt"],[857,"massa_models::error"],[858,"core::hash"],[859,"core::marker"],[860,"std::collections::hash::map"],[861,"massa_models::slot"],[862,"core::error"],[863,"num_rational"],[864,"alloc::string"],[865,"num_enum"],[866,"massa_db_exports::db_batch"],[867,"massa_serialization"],[868,"nom::internal"],[869,"nom::error"]],"i":[0,0,0,0,0,0,0,0,0,82,82,82,3,82,3,3,3,3,3,82,3,3,3,3,82,3,82,3,3,3,82,3,82,3,82,3,82,3,83,84,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,22,28,7,0,31,0,36,37,7,0,0,0,0,22,28,42,19,38,36,37,22,28,0,0,22,28,7,36,38,36,19,0,0,0,7,0,22,28,0,0,0,0,0,0,0,36,38,45,38,0,22,28,0,42,37,42,45,0,7,28,7,16,13,12,29,22,16,25,26,32,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,7,12,22,22,23,23,24,24,25,25,26,26,27,27,28,29,30,31,13,8,32,33,16,7,12,28,30,7,12,28,30,12,33,22,22,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,32,33,38,16,7,7,7,7,12,12,12,12,28,28,28,28,29,29,29,29,30,30,30,30,22,22,8,16,22,7,12,22,23,24,25,26,27,28,29,30,31,36,36,13,37,37,8,32,33,38,38,42,42,45,45,19,19,16,7,7,12,22,23,24,25,26,27,28,28,29,30,30,31,36,13,37,8,32,33,38,42,42,45,45,19,16,7,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,8,16,8,16,7,8,16,8,8,8,8,16,7,13,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,13,8,16,22,13,8,16,33,22,12,33,13,33,29,30,22,23,24,25,26,27,13,7,12,28,30,33,8,13,42,45,12,29,22,13,13,16,16,29,30,12,29,7,12,22,23,24,25,26,27,28,29,30,31,13,8,32,33,16,36,37,38,42,45,19,7,12,22,23,24,25,26,27,28,28,29,30,31,36,13,37,8,8,32,33,38,42,45,19,16,16,8,16,28,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,8,16,8,16,8,16,8,16,12,24,7,12,22,23,24,25,26,27,28,29,30,31,36,13,37,8,32,33,38,42,45,19,16,32,65,5,65,5,0,0,61,61,65,61,61,0,61,5,61,5,61,5,61,5,61,5,65,61,61,5,61,5,5,61,5,65,65,65,65,65,65,61,5,61,5,61,5,61,61,5,61,5,61,5,61,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,72,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,67,79,66,67,68,69,70,71,72,73,74,75,67,69,71,73,79,80,80,66,67,68,69,70,71,72,73,74,79,75,80,80,75,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,67,66,67,68,69,70,71,72,73,74,79,75,80,69,71,68,70,66,68,70,72,74,75,69,73,80,73,72,75,80,75,67,69,71,66,68,70,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,66,67,68,69,70,71,72,73,74,79,75,80,67,73,79,66,68,72,74,75,79,74,66,67,68,69,70,71,72,73,74,79,75,80],"f":"```````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{f}}}f}{{{b{c}}{b{de}}}h{}{}}{{{b{c}}}h{}}{{{b{f}}{b{c}}j}{{l{eg}}}{}{}{}}{cc{}}0{{{b{c}}}c{}}{{}n}{{{b{f}}}A`}{ce{}{}}0{c{{Ab{e}}}{}{}}0`{{{b{c}}}e{}{}}{c{{l{e}}}{}{}}000{{{b{c}}}Ad{}}044```>={{{b{Af}}}Af}<;{{{b{Af}}{b{c}}j}{{l{eg}}}{}{}{}}:98{{{b{Af}}}A`}76`54437{{}{{An{{Al{AhAj}}}}}}``````````````````````````````````````````````````````````````{{{b{B`}}{b{{Bd{Bb}}}}{b{{Bd{Bb}}}}}{{l{hBf}}}}{{{b{Aj}}{b{Ah}}}{{Bj{Bh}}}}``{BhBl}{{{b{dB`}}Bh}h}```{{{b{c}}}{{b{e}}}{}{}}0000000000000000000000{{{b{dc}}}{{b{de}}}{}{}}0000000000000000000000{{{b{n}}}n}{{{b{Ah}}}Ah}{{{b{Bl}}}Bl}{{{b{Bn}}}Bn}{{{b{C`}}}C`}{{{b{Cb}}}Cb}{{{b{Cd}}}Cd}{{{b{Cf}}}Cf}{{{b{Ch}}}Ch}{{{b{Cj}}}Cj}{{{b{Cl}}}Cl}{{{b{Cn}}}Cn}{{{b{Aj}}}Aj}{{{b{A`}}}A`}{{{b{D`}}}D`}{{{b{Db}}}Db}{{{b{B`}}}B`}{{{b{c}}{b{de}}}h{}{}}0000000000000000{{{b{c}}}h{}}0000000000000000000000{{{b{n}}{b{n}}}Dd}{{{b{Ah}}{b{Ah}}}Dd}{{{b{Ch}}{b{Ch}}}Dd}{{{b{Cl}}{b{Cl}}}Dd}{{{b{c}}{b{e}}}Dd{}{}}000``{{}Bl}0{{{b{n}}{b{n}}}Df}{{{b{Ah}}{b{Ah}}}Df}{{{b{Bl}}{b{Bl}}}Df}{{{b{Bn}}{b{Bn}}}Df}{{{b{C`}}{b{C`}}}Df}{{{b{Cb}}{b{Cb}}}Df}{{{b{Cd}}{b{Cd}}}Df}{{{b{Cf}}{b{Cf}}}Df}{{{b{Ch}}{b{Ch}}}Df}{{{b{Cj}}{b{Cj}}}Df}{{{b{Cl}}{b{Cl}}}Df}{{{b{Cn}}{b{Cn}}}Df}{{{b{Dh}}{b{Dh}}}Df}{{{b{Aj}}{b{Aj}}}Df}{{{b{Dj}}{b{Dj}}}Df}{{{b{D`}}{b{D`}}}Df}{{{b{Db}}{b{Db}}}Df}{{{b{Dl}}{b{Dl}}}Df}{{{b{B`}}{b{B`}}}Df}{{{b{c}}{b{e}}}Df{}{}}0000000000000000000{{}Bl}{{BlCn}Bl}{{{b{dA`}}Dn}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Ed}}}}{{{b{dB`}}Dn}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Ed}}}}3{{{b{n}}{b{dEf}}}Eh}{{{b{Ah}}{b{dEf}}}Eh}{{{b{Bl}}{b{dEf}}}Eh}{{{b{Bn}}{b{dEf}}}Eh}{{{b{C`}}{b{dEf}}}Eh}{{{b{Cb}}{b{dEf}}}Eh}{{{b{Cd}}{b{dEf}}}Eh}{{{b{Cf}}{b{dEf}}}Eh}{{{b{Ch}}{b{dEf}}}Eh}{{{b{Cj}}{b{dEf}}}Eh}{{{b{Cl}}{b{dEf}}}Eh}{{{b{Cn}}{b{dEf}}}Eh}{{{b{Dh}}{b{dEf}}}Eh}0{{{b{Aj}}{b{dEf}}}Eh}{{{b{Dj}}{b{dEf}}}Eh}0{{{b{A`}}{b{dEf}}}Eh}{{{b{D`}}{b{dEf}}}Eh}{{{b{Db}}{b{dEf}}}Eh}{{{b{Dl}}{b{dEf}}}Eh}0{{{b{Ed}}{b{dEf}}}Eh}0{{{b{Ej}}{b{dEf}}}Eh}0{{{b{Bf}}{b{dEf}}}Eh}0{{{b{B`}}{b{dEf}}}Eh}{cc{}}{Eln}11111111{{{b{Bl}}}Ch}2{{{b{Cj}}}Cl}333333333{DlEd}4{EnEj}555{cn{}}{{{b{c}}}c{}}0000000000000000{{{b{A`}}{b{n}}}{{E`{El}}}}{{{b{B`}}{b{n}}}{{E`{El}}}}{{{b{A`}}{b{n}}}{{Eb{ElCh}}}}{{{b{B`}}{b{n}}}{{Eb{ElCh}}}}{{{b{c}}{b{e}}}F`{FbFd}Ff}{{{b{A`}}{b{n}}Bh}El}{{{b{B`}}{b{n}}Bh}El}{{{b{A`}}}{{Eb{AhCh}}}}{{{b{A`}}Bh}El}{{{b{A`}}}El}{{{b{A`}}}{{Bj{El}}}}{{{b{B`}}}{{Fh{ElF`}}}}{{{b{n}}{b{dc}}}hFj}`{ce{}{}}0000000000000000000000{c{{Ab{e}}}{}{}}0000000000000000000000{{{b{Aj}}{b{Ah}}}{{l{hDh}}}}{{{b{A`}}FlFlBbBhBh}{{l{hEj}}}}{{{b{B`}}FlFlBbBhBh}{{l{hEj}}}}{{{b{Bl}}}Df}{{{b{Aj}}}Df}{{{b{A`}}{b{{Bd{Bb}}}}{b{{Bd{Bb}}}}}Df}{{{b{B`}}{b{{Bd{Bb}}}}{b{{Bd{Bb}}}}}Df}`{BhBl}``{BhAj}{D`Db}``{{BlCj}Bl}{{BnCj}Bl}{{C`Cj}Bl}{{CbCj}Bl}{{CdCj}Cd}{{CfCj}Cf}{{{b{dAj}}{b{Cj}}}h}{{{b{n}}{b{n}}}{{Bj{Dd}}}}{{{b{Ah}}{b{Ah}}}{{Bj{Dd}}}}{{{b{Ch}}{b{Ch}}}{{Bj{Dd}}}}{{{b{Cl}}{b{Cl}}}{{Bj{Dd}}}}{{{b{dDb}}}h}{{{b{A`}}Dn}h}{{{b{Aj}}}{{Bj{Aj}}}}{{{b{Ed}}}{{Bj{{b{Fn}}}}}}{{{b{Ej}}}{{Bj{{b{Fn}}}}}}``{{{G`{F`}}}Bl}`{{{b{Aj}}BhBhBhBh}{{l{ChDj}}}}``````{{{b{c}}}e{}{}}0000000000000000{{{b{c}}}Gb{}}00000{c{{l{e}}}{}{}}0000000{El{{l{Ch{Gd{Ch}}}}}}11111111{{{Al{{An{{Al{AhAj}}}}D`}}}{{l{A`c}}}{}}2222222{{{Al{{An{{Al{AhAj}}}}D`}}}{{l{B`c}}}{}}{{DnD`}{{l{A`Ed}}}}{{DnD`}{{l{B`Ed}}}}{c{{l{Ch{Gd{Ch}}}}}{}}66666666666666666666666{{{b{c}}}Ad{}}0000000000000000000000{{{b{A`}}{b{dGf}}{b{dGf}}{Bj{{Al{{b{Bh}}{b{Bh}}}}}}}{{l{hGh}}}}{{{b{B`}}{b{dGf}}{b{dGf}}{Bj{{Al{{b{Bh}}{b{Bh}}}}}}}{{l{hGh}}}}{{{b{dA`}}FlFlBbBhBh}{{l{hEn}}}}{{{b{dB`}}FlFlBbBhBh}{{l{hEn}}}}{{{b{dA`}}Bh{Bj{{Al{El{Bj{El}}}}}}}h}{{{b{dB`}}Bh{Bj{{Al{El{Bj{El}}}}}}}h}{{{b{dA`}}{b{A`}}}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Dl}}}}{{{b{dB`}}{b{B`}}}{{l{{Al{{E`{Ah}}{Eb{AhAj}}}}Dl}}}}``{ce{}{}}0000000000000000000000`````````````{{{b{c}}}{{b{e}}}{}{}}0{{{b{dc}}}{{b{de}}}{}{}}0{{{b{Gj}}}Gj}{{{b{j}}}j}{{{b{c}}{b{de}}}h{}{}}0{{{b{c}}}h{}}0{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}{b{g}}j}{{l{ce}}}{}{}{}}{{{b{Gj}}{b{dEf}}}Eh}0{{{b{j}}{b{dEf}}}Eh}{cc{}}0{Elj}{{{b{c}}}c{}}0{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}}{{E`{El}}}{}{}{}}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}}{{Eb{ElCh}}}{}{}{}}{{}n}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}j}{{l{ElGj}}}{}{}{}}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}Bh}{{l{ElGj}}}{}{}{}}{{{b{{Hb{}{{Gl{c}}{Gn{e}}{H`{g}}}}}}}A`{}{}{}}{ce{}{}}0{c{{Ab{e}}}{}{}}0{{{b{c}}}e{}{}}0{{{b{c}}}Gb{}}{c{{l{e}}}{}{}}000{{{b{c}}}Ad{}}055````````````````````{{{b{c}}}{{b{e}}}{}{}}00000000000{{{b{dc}}}{{b{de}}}{}{}}00000000000``{{}Hd}{{}Hf}{{}Hh}{{}Hj}{{}Hl}{{}Hn}{{}I`}{{}Ib}{{}Id}{{}If}{{{b{Hf}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Ahc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{Hj}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Blc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{Hn}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Clc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{Ib}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Ajc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{In}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}Dbc}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}{{{b{J`}}{b{{Bd{Bb}}}}}{{Ih{{b{{Bd{Bb}}}}B`c}}}{{Ij{{b{{Bd{Bb}}}}}}{Il{{b{{Bd{Bb}}}}}}}}`{cc{}}00000000000``{ce{}{}}00000000000{c{{Ab{e}}}{}{}}00000000000`{{}Hd}{{}Hf}{{}Hh}{{}Hj}{{}Hl}{{}Hn}{{}I`}{{}Ib}{{}Id}{{Jb{G`{F`}}}In}{{}If}{{Jb{G`{F`}}}J`}````{{{b{Hd}}{b{Ah}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{Hh}}{b{Bl}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{Hl}}{b{Cl}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{I`}}{b{Aj}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{Id}}{b{Db}}{b{d{E`{Bb}}}}}{{l{hGh}}}}{{{b{If}}{b{B`}}{b{d{E`{Bb}}}}}{{l{hGh}}}}``````````````{c{{l{e}}}{}{}}00000000000000000000000{{{b{c}}}Ad{}}00000000000``````````{ce{}{}}00000000000","D":"AFl","p":[[1,"reference"],[0,"mut"],[5,"AddressFactory",7],[1,"unit"],[6,"FactoryStrategy",599],[6,"Result",847],[6,"MipComponent",60],[5,"MipStore",60],[5,"Request",848],[5,"TypeId",849],[5,"KeyPairFactory",40],[5,"MipInfo",60],[5,"MipState",60],[1,"tuple"],[1,"array"],[5,"MipStoreRaw",60],[1,"u8"],[1,"slice"],[6,"IsKVValidError",60],[5,"MassaTime",850],[6,"Option",851],[6,"ComponentState",60],[5,"Defined",60],[5,"Started",60],[5,"LockedIn",60],[5,"Active",60],[5,"Failed",60],[6,"ComponentStateTypeId",60],[5,"Advance",60],[5,"AdvanceLW",60],[6,"ComponentStateMessages",60],[5,"MipStatsConfig",60],[5,"MipStoreStats",60],[6,"Ordering",852],[1,"bool"],[6,"IsConsistentError",60],[6,"StateAtError",60],[6,"UpdateWithError",60],[8,"ShareableMassaDBController",853],[5,"Vec",854],[5,"BTreeMap",855],[6,"ExtendFromDbError",60],[5,"Formatter",856],[8,"Result",856],[6,"IsConsistentWithShutdownPeriodError",60],[1,"u32"],[6,"ModelsError",857],[1,"u64"],[10,"Hash",858],[10,"Sized",859],[10,"BuildHasher",858],[5,"HashMap",860],[10,"Hasher",858],[5,"Slot",861],[10,"Error",862],[5,"Ratio",863],[5,"String",864],[5,"TryFromPrimitiveError",865],[8,"DBBatch",866],[6,"SerializeError",867],[6,"FactoryError",599],[17,"Output"],[17,"Error"],[17,"Arguments"],[10,"VersioningFactory",599],[5,"MipInfoSerializer",651],[5,"MipInfoDeserializer",651],[5,"ComponentStateSerializer",651],[5,"ComponentStateDeserializer",651],[5,"AdvanceLWSerializer",651],[5,"AdvanceLWDeserializer",651],[5,"MipStateSerializer",651],[5,"MipStateDeserializer",651],[5,"MipStoreStatsSerializer",651],[5,"MipStoreRawSerializer",651],[8,"IResult",868],[10,"ParseError",869],[10,"ContextError",869],[5,"MipStoreStatsDeserializer",651],[5,"MipStoreRawDeserializer",651],[1,"usize"],[6,"AddressArgs",7],[15,"User",38],[15,"SC",38]],"r":[],"b":[[302,"impl-Display-for-IsConsistentError"],[303,"impl-Debug-for-IsConsistentError"],[305,"impl-Debug-for-StateAtError"],[306,"impl-Display-for-StateAtError"],[310,"impl-Display-for-UpdateWithError"],[311,"impl-Debug-for-UpdateWithError"],[312,"impl-Display-for-ExtendFromDbError"],[313,"impl-Debug-for-ExtendFromDbError"],[314,"impl-Debug-for-IsConsistentWithShutdownPeriodError"],[315,"impl-Display-for-IsConsistentWithShutdownPeriodError"],[316,"impl-Display-for-IsKVValidError"],[317,"impl-Debug-for-IsKVValidError"],[622,"impl-Debug-for-FactoryError"],[623,"impl-Display-for-FactoryError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAJkCOAABABIAFgACABsAFAAxAAIANQAHAD4AAgBCAAQASAABAEsACABWAAYAXwABAGIAAQBrAAMAcAABAHMAAwB4AAMAfwAAAIEAcQD0ACwAIgEdAEEBAABKAQAATAEAAFYBAABYAQAAXAERAHIBAAB5AQIAkwEWAKsBAACtAQAArwEDALQBAAC2AQAAuQEAAMABBQDHAQEAywEBAM4BAQDUATAABwIvADgCBAA/AhgAXgIBAGECAQBkAgkAbwICAHQCAgB/AgwAjgIBAJICAACUAgEAngIsANcCAQDlAgwA/gJRAA=="}],\ +["massa_wallet",{"t":"PPPPPPPPSFGFPNONNNNOONNNNNNNNNNCNNNNNNNNNNNNNNNONOOOONONNNNNNNNNNNNNONNONPPPPPPPPGPNNNNNNNNNNNNNNNNNNNN","n":["IOError","MassaCipherError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","SerdeqsError","VersionError","WALLET_VERSION","Wallet","WalletError","WalletFileFormat","YAMLError","add_keypairs","address","borrow","borrow","borrow_mut","borrow_mut","chain_id","ciphered_data","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","create_operation","deserialize","deserialize","drop","error","find_associated_keypair","find_associated_public_key","fmt","fmt","fmt","from","from","from_ref","from_ref","get_full_wallet","get_wallet_address_list","into","into","into_request","into_request","keys","new","nickname","nonce","password","public_key","remove_addresses","salt","save","serialize","serialize","sign_message","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","version","vzip","vzip","wallet_path","zeroize","IOError","MassaCipherError","MassaHashError","MassaSignatureError","MissingKeyError","ModelsError","SerdeqsError","VersionError","WalletError","YAMLError","borrow","borrow_mut","fmt","fmt","from","from","from","from","from","from","from","from","into","into_request","source","to_string","try_from","try_into","type_id","vzip"],"q":[[0,"massa_wallet"],[73,"massa_wallet::error"],[103,"massa_signature::signature_impl"],[104,"alloc::vec"],[105,"massa_models::address"],[106,"core::result"],[107,"massa_models::operation"],[108,"serde::de"],[109,"core::option"],[110,"core::fmt"],[111,"massa_models::prehash"],[112,"tonic::request"],[113,"std::path"],[114,"alloc::string"],[115,"serde::ser"],[116,"massa_models::composite"],[117,"core::any"],[118,"serde_qs::error"],[119,"massa_models::error"],[120,"massa_cipher::error"],[121,"std::io::error"],[122,"massa_signature::error"],[123,"massa_hash::error"],[124,"serde_yaml::error"],[125,"core::error"]],"i":[7,7,7,7,7,7,7,7,0,0,0,0,7,2,9,2,9,2,9,2,9,2,9,2,9,2,9,2,2,9,2,0,2,2,2,2,9,2,9,2,9,2,2,2,9,2,9,2,2,9,9,2,9,2,9,2,2,9,2,2,9,2,2,9,2,9,2,9,9,2,9,2,2,7,7,7,7,7,7,7,7,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"f":"`````````````{{{f{bd}}{j{h}}}{{A`{{j{l}}n}}}}`{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0``{{{f{d}}}d}{{{f{Ab}}}Ab}{{{f{c}}{f{be}}}Ad{}{}}0{{{f{c}}}Ad{}}0{{{f{d}}Afl}{{A`{Ahn}}}}{c{{A`{d}}}Aj}{c{{A`{Ab}}}Aj}{{{f{bd}}}Ad}`{{{f{d}}{f{l}}}{{Al{{f{h}}}}}}{{{f{d}}{f{l}}}{{Al{An}}}}{{{f{d}}{f{bB`}}}Bb}0{{{f{Ab}}{f{bB`}}}Bb}{cc{}}0{{{f{c}}}c{}}0{{{f{d}}}{{f{{Bd{lh}}}}}}{{{f{d}}}{{Bf{l}}}}{ce{}{}}0{c{{Bh{e}}}{}{}}0`{{BjBlBn}{{A`{dn}}}}````{{{f{bd}}{f{{j{l}}}}}{{A`{C`n}}}}`{{{f{d}}}{{A`{Adn}}}}{{{f{d}}c}A`Cb}{{{f{Ab}}c}A`Cb}{{{f{d}}{f{l}}{j{Cd}}}{{Al{Cf}}}}{{{f{c}}}e{}{}}0{{{f{c}}}Bl{}}{c{{A`{e}}}{}{}}000{{{f{c}}}Ch{}}0`;;`{{{f{bd}}}Ad}``````````{{{f{c}}}{{f{e}}}{}{}}{{{f{bc}}}{{f{be}}}{}{}}{{{f{n}}{f{bB`}}}Bb}0{Cjn}{Cln}{Cnn}{cc{}}{D`n}{Dbn}{Ddn}{Dfn}{ce{}{}}{c{{Bh{e}}}{}{}}{{{f{n}}}{{Al{{f{Dh}}}}}}{{{f{c}}}Bl{}}{c{{A`{e}}}{}{}}0{{{f{c}}}Ch{}}5","D":"Ef","p":[[0,"mut"],[5,"Wallet",0],[1,"reference"],[6,"KeyPair",103],[5,"Vec",104],[6,"Address",105],[6,"WalletError",73],[6,"Result",106],[5,"WalletFileFormat",0],[1,"unit"],[5,"Operation",107],[8,"SecureShareOperation",107],[10,"Deserializer",108],[6,"Option",109],[6,"PublicKey",103],[5,"Formatter",110],[8,"Result",110],[8,"PreHashMap",111],[8,"PreHashSet",111],[5,"Request",112],[5,"PathBuf",113],[5,"String",114],[1,"u64"],[1,"bool"],[10,"Serializer",115],[1,"u8"],[5,"PubkeySig",116],[5,"TypeId",117],[6,"Error",118],[6,"ModelsError",119],[6,"CipherError",120],[5,"Error",121],[6,"MassaSignatureError",122],[6,"MassaHashError",123],[5,"Error",124],[10,"Error",125]],"r":[[10,73]],"b":[[34,"impl-Debug-for-Wallet"],[35,"impl-Display-for-Wallet"],[85,"impl-Display-for-WalletError"],[86,"impl-Debug-for-WalletError"],[87,"impl-From%3CError%3E-for-WalletError"],[88,"impl-From%3CModelsError%3E-for-WalletError"],[89,"impl-From%3CCipherError%3E-for-WalletError"],[91,"impl-From%3CError%3E-for-WalletError"],[92,"impl-From%3CMassaSignatureError%3E-for-WalletError"],[93,"impl-From%3CMassaHashError%3E-for-WalletError"],[94,"impl-From%3CError%3E-for-WalletError"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAADwAEAAJAAAADwAEABUABgAdAAMAIwACACgAAQAuAAEAMgABADUAAAA3AAAAOQABADwACwBJAAAAVAAGAFwAAwBhAAYA"}],\ ["massa_xtask",{"t":"CHCHHHH","n":["check_gas_cost_definitions","main","update_package_versions","check_gas_cost_definitions","check_package_version","check_workspace_packages_version","update_package_versions"],"q":[[0,"massa_xtask"],[3,"massa_xtask::check_gas_cost_definitions"],[4,"massa_xtask::update_package_versions"],[7,"alloc::string"],[8,"core::result"],[9,"std::path"],[10,"core::error"],[11,"alloc::boxed"]],"i":[0,0,0,0,0,0,0],"f":"`{{}b}`{{}{{f{bd}}}}{{d{j{h}}}{{f{l{A`{n}}}}}}{{d{j{h}}}{{f{Ab{A`{n}}}}}}3","D":"f","p":[[1,"unit"],[5,"String",7],[6,"Result",8],[5,"Path",9],[1,"reference"],[1,"bool"],[10,"Error",10],[5,"Box",11],[1,"i32"]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAQAEAAAAAAAAQADAAQABwA="}]\ ]')); if (typeof exports !== 'undefined') exports.searchIndex = searchIndex; diff --git a/search.desc/massa_db_worker/massa_db_worker-desc-0-.js b/search.desc/massa_db_worker/massa_db_worker-desc-0-.js index 25d7839363b..5a91aa490f1 100644 --- a/search.desc/massa_db_worker/massa_db_worker-desc-0-.js +++ b/search.desc/massa_db_worker/massa_db_worker-desc-0-.js @@ -1 +1 @@ -searchState.loadedDescShard("massa_db_worker", 0, "General description\nWrapped RocksDB database\nA generic wrapped RocksDB database.\nIn change_history, we keep the latest changes made to the …\nIn change_history, we keep the latest changes made to the …\nsame as change_history but for versioning\nsame as change_history but for versioning\nA deserializer for the ChangeID type\nA deserializer for the ChangeID type\nA serializer for the ChangeID type\nA serializer for the ChangeID type\nconfiguration for the RawMassaDB\nconfiguration for the RawMassaDB\nThe current RocksDB batch of the database, in a Mutex to …\nThe current RocksDB batch of the database, in a Mutex to …\nThe rocksdb instance\nThe rocksdb instance\nWrapped RocksDB database\nA generic wrapped RocksDB database.\nCreates a new hard copy of the DB, for the given slot\nIn change_history, we keep the latest changes made to the …\nIn change_history, we keep the latest changes made to the …\nsame as change_history but for versioning\nsame as change_history but for versioning\nA deserializer for the ChangeID type\nA deserializer for the ChangeID type\nA serializer for the ChangeID type\nA serializer for the ChangeID type\nconfiguration for the RawMassaDB\nconfiguration for the RawMassaDB\nThe current RocksDB batch of the database, in a Mutex to …\nThe current RocksDB batch of the database, in a Mutex to …\nThe rocksdb instance\nThe rocksdb instance\nUtility function to delete a key & value in the batch\nUtility function to delete all keys in a prefix\nFlushes the underlying db.\nReturns the argument unchanged.\nUsed for bootstrap servers (get a new batch of data from …\nUsed for bootstrap servers (get a new batch of data from …\nGet the current change_id attached to the database.\nGet the current change_id attached to the database.\nUsed for bootstrap servers (get a new batch of data from …\nUsed for bootstrap servers (get a new batch of data from …\nGet the current extended state hash of the database\nGet the current XOF state hash of the database\nGet the current XOF state hash of the database\nCalls U::from(self).\nExposes RocksDB’s “iterator_cf” function\nExposes RocksDB’s “multi_get_cf” function\nReturns a new MassaDB instance\nReturns a new MassaDB instance given a config and RocksDB …\nExposes RocksDB’s “prefix_iterator_cf” function\nUtility function to put / update a key & value in the batch\nReset the database, and attach it to the given slot.\nSet the current change_id in the batch\nSet the initial change_id. This function should only be …\nSet the initial change_id. This function should only be …\nWrites the batch to the DB\nWrite a stream_batch of database entries received from a …\nWrite a stream_batch of database entries received from a …\nUsed for:") \ No newline at end of file +searchState.loadedDescShard("massa_db_worker", 0, "General description\nWrapped RocksDB database\nA generic wrapped RocksDB database.\nIn change_history, we keep the latest changes made to the …\nIn change_history, we keep the latest changes made to the …\nsame as change_history but for versioning\nsame as change_history but for versioning\nA deserializer for the ChangeID type\nA deserializer for the ChangeID type\nA serializer for the ChangeID type\nA serializer for the ChangeID type\nconfiguration for the RawMassaDB\nconfiguration for the RawMassaDB\nThe current RocksDB batch of the database, in a Mutex to …\nThe current RocksDB batch of the database, in a Mutex to …\nThe rocksdb instance\nThe rocksdb instance\nWrapped RocksDB database\nA generic wrapped RocksDB database.\nCreates a new hard copy of the DB, for the given slot\nIn change_history, we keep the latest changes made to the …\nIn change_history, we keep the latest changes made to the …\nsame as change_history but for versioning\nsame as change_history but for versioning\nA deserializer for the ChangeID type\nA deserializer for the ChangeID type\nA serializer for the ChangeID type\nA serializer for the ChangeID type\nconfiguration for the RawMassaDB\nconfiguration for the RawMassaDB\nThe current RocksDB batch of the database, in a Mutex to …\nThe current RocksDB batch of the database, in a Mutex to …\nThe rocksdb instance\nThe rocksdb instance\nUtility function to delete a key & value in the batch\nUtility function to delete all keys in a prefix\nFlushes the underlying db.\nReturns the argument unchanged.\nUsed for bootstrap servers (get a new batch of data from …\nUsed for bootstrap servers (get a new batch of data from …\nGet the current change_id attached to the database.\nGet the current change_id attached to the database.\nUsed for bootstrap servers (get a new batch of data from …\nUsed for bootstrap servers (get a new batch of data from …\nGet the current XOF state hash of the database\nGet the current extended state hash of the database\nGet the current XOF state hash of the database\nCalls U::from(self).\nExposes RocksDB’s “iterator_cf” function\nExposes RocksDB’s “multi_get_cf” function\nReturns a new MassaDB instance\nReturns a new MassaDB instance given a config and RocksDB …\nExposes RocksDB’s “prefix_iterator_cf” function\nUtility function to put / update a key & value in the batch\nReset the database, and attach it to the given slot.\nSet the current change_id in the batch\nSet the initial change_id. This function should only be …\nSet the initial change_id. This function should only be …\nWrites the batch to the DB\nWrite a stream_batch of database entries received from a …\nWrite a stream_batch of database entries received from a …\nUsed for:") \ No newline at end of file diff --git a/search.desc/massa_event_cache/massa_event_cache-desc-0-.js b/search.desc/massa_event_cache/massa_event_cache-desc-0-.js new file mode 100644 index 00000000000..3bfc6773641 --- /dev/null +++ b/search.desc/massa_event_cache/massa_event_cache-desc-0-.js @@ -0,0 +1 @@ +searchState.loadedDescShard("massa_event_cache", 0, "Path to the hard drive cache storage\nReturns the argument unchanged.\nCalls U::from(self).\nCall stack max length\nMaximum number of entries we want to keep in the event …\nMaximum length of an event data (aka event message)\nMaximum number of events per operation\nMaximum events returned in a query\nMaximum number of operations per block\nAmount of entries removed when event_cache_size is reached\nThread count\ninterface that communicates with the worker thread\nimplementation of the event cache controller\nstructure used to communicate with controller\nEvent cache\nReturns the argument unchanged.\nReturns the argument unchanged.\ninput data to process in the VM loop with a wake-up …\nCalls U::from(self).\nCalls U::from(self).\nset stop to true to stop the thread\nDisk based event cache db (rocksdb based)\nA filter parameter - used to decompose an EventFilter in …\nKey for this type of data that we want to get\nPrefix u8 used to identify rocksdb keys\nCounter key for specific emitter_address / operation_id / …\nRocksDB database\nHow many entries are in the db. Count is initialized at …\nEvent deserializer\nEvent serializer\nEstimate for a given KeyIndent & FilterItem the number of …\nFirst event slot in db\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nConvert a EventFilter into a list of (KeyIndent, …\nGet events filtered by the given argument\nInsert a new event in the cache\nFrom an event add keys & values into a rocksdb batch\nInsert new events in the cache\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nLow level key builder function There is no guarantees that …\nKey builder\nKey usually used to populate the DB\nLast event slot in db\nMaximum number of entries we want to keep in the db. When …\nMaximum number of events per operation\nMax number of events returned by a query\nMaximum number of operations per block\nCreate a new EventCache\nOperation Id Serializer\nPrefix key to iterate over specific emitter_address / …\nPrefix key to iterate over all events / emitter_address / …\nTry to remove some entries from the db\nHow many entries are removed when entry_count reaches …\nThread count\nSCOutputEvent deserializer\nSCOutputEvent deserializer args\nMetadata serializer\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nEvent cache manager trait used to stop the event cache …\n… manager Allows stopping the … worker\nStructure gathering all elements needed by the event cache …\nEvent cache\nReturns the argument unchanged.\nReturns the argument unchanged.\ninput data to process in the VM loop with a wake-up …\nCalls U::from(self).\nCalls U::from(self).\nMain loop of the worker\nStop the event cache thread Note that we do not take self …\nstops the worker\nhandle used to join the worker thread\nWaits for an event to trigger a new iteration in the event …") \ No newline at end of file diff --git a/search.desc/massa_execution_exports/massa_execution_exports-desc-0-.js b/search.desc/massa_execution_exports/massa_execution_exports-desc-0-.js index 6ae6db7836c..e0d2d5d7933 100644 --- a/search.desc/massa_execution_exports/massa_execution_exports-desc-0-.js +++ b/search.desc/massa_execution_exports/massa_execution_exports-desc-0-.js @@ -1 +1 @@ -searchState.loadedDescShard("massa_execution_exports", 0, "Overview\ngets the balance (candidate) of an address, returns …\ngets the balance (final) of an address, returns …\ngets the bytecode (candidate) of an address, returns …\ngets the bytecode (final) of an address, returns …\ngets the datastore keys (candidate) of an address, returns …\ngets the datastore keys (final) of an address, returns …\ngets a datastore value (candidate) for an address, returns …\ngets a datastore value (final) for an address, returns …\ngets the deferred credits (candidate) of an address, …\ngets the deferred credits (final) of an address, returns …\nchecks if address exists (candidate) returns …\nchecks if address exists (final) returns …\ngets the roll count (candidate) of an address, returns …\ngets the roll count (final) of an address, returns …\nThe operation or denunciation was found as executed with …\nThe operation or denunciation was found as successfully …\namount value\nBlock gas error: {0}\nboolean value\nbytecode\nExecute the main function of a bytecode\nCache error: {0}\nChannel error\nget all information for a given cycle, returns …\ncycle infos value\ndatastore value\nget info of deferred calls\ndeferred call info value\ngets the deferred call quote (candidate) for a slot, …\ndeferred call quote (target_slot, gas_request, available, …\nretrieves the deferred call for given slot\ndeferred call slot calls value\nAutonomous smart contract call error: {0}\ndeferred credits value\ngets the execution status (candidate) for an denunciation, …\ngets the execution status (final) for an denunciation, …\nStore for events emitted by smart contracts\nget filtered events. Returns …\nEvents\nNo information about the operation or denunciation …\nstructure storing a block id + network versions (from a …\nExecuted slot output\nExecution info about an address\nMetadata needed to execute the block\nchannels used by the execution worker\nExecution module configuration\ninterface that communicates with the execution worker …\nErrors of the execution component.\nExecution manager used to stop the execution thread\nstructure describing the output of a single execution\nInformation about cycles\nExecution query errors\nExecution status of an operation or denunciation\nRequest to atomically execute a batch of execution state …\nExecution state query item\nResponse to a list of execution queries\nExecution state query response item\nStaker information for a given cycle\nStructure describing an element of the execution stack. …\nexecution status value\nFactory error: {0}\nFinalized slot output\nExecute a function call\nInclude denunciation error: {0}\nInclude operation error: {0}\nInvalid slot range\nlist of keys\nMassaHashError: {0}\nModelsError: {0}\nNot enough gas in the block: {0}\nNot found: {0}\ngets the execution status (candidate) for an operation, …\ngets the execution status (final) for an operation, …\nstructure describing a read-only call\nstructure describing the output of a read only execution\nstructure describing different types of read-only …\nstructure describing different possible targets of a …\nRollBuy error: {0}\nroll counts value\nRollSell error: {0}\nRuntime error: {0}\nSlash roll or deferred credits error: {0}\nstructure describing the output of the execution of a slot\nStorage cost constants\nGiven gas is above the threshold: {0}\nTransaction error: {0}\nVM Error in {context} context: {error}\nactive roll count\nCalled address\nAnnounced network version (see Versioning doc)\nconstant cost for async messages\nAuto sell roll execution (empty if execution-info feature …\nGas used by a transaction, a roll buy or a roll sell)\nWhere to dump blocks\nBlock id\noptional executed block info at that slot (None if miss)\nblock creation reward\nwhether slot execution outputs broadcast is enabled\nslot execution outputs channel capacity\nslot execution traces channel capacity\nwhether slot execution traces broadcast is enabled\nReturned value from the module call\nCall stack to simulate, older caller first\nCall stack to simulate, older caller first. Target should …\nCancel async message execution (empty if execution-info …\ncandidate balance of the address\nLast executed candidate slot\ncandidate datastore keys of the address\ncandidate number of rolls the address has\nchain id\nReturns a boxed clone of self. Useful to allow cloning …\nCoins transferred to the target address during the call\nCoins transferred to the target address during the call\nRuntime condom middleware limits\nThis module exports generic traits representing interfaces …\nCurrent network version (see Versioning doc)\nextra lag to add on the execution cursor to improve …\ncycle number\ncycle information\ndeferred calls config\nDeferred credits execution (empty if execution-info …\nDenunciation expire delta\nendorsement count\nthis file defines all possible execution error categories\nThis module represents an event store allowing to store, …\nevents emitted by the execution step\nExecute read-only SC function call without causing …\nFee\nfinal balance of the address\nLast executed final slot\nfinal datastore keys of the address\nfinal number of rolls the address has\nFinal state hash\nReturns the argument unchanged.\nReturns the argument unchanged.\nfuture deferred credits\nGas cost for this execution, with needed adjustments\nGas costs\ngenesis timestamp\nGets information about a batch of addresses\nReturns for a given cycle the stakers taken into account …\nCheck if a denunciation has been executed given a …\nGet execution events optionally filtered by:\nGet a copy of a single datastore entry with its final and …\nGet the final and active values of balance.\nGet the execution status of a batch of operations.\nGet execution statistics\nPath to the hard drive cache storage\nMaximum number of entries we want to keep in the HD cache\nCalls U::from(self).\nCalls U::from(self).\nwhether the cycle is final\nexecution start state\nlast start period, used to attach to the correct execution …\nCost per byte in ledger\nLedger entry base cost\nLedger entry datastore base cost\nMaximum number of entries we want to keep in the LRU cache\nmapping grpc\nmaximum available gas for asynchronous messages execution\nMax bytecode size\nMax size of a datastore key\nMax datastore value size\nMaximum number of event that an operation can emit\nmax size of event data, in bytes\nMax execution traces slot to keep in trace history cache\nmaximum number of SC output events kept in cache\nMax function length in call sc\nMaximum gas to spend in the execution.\nMaximum gas to spend in the execution.\nmaximum gas per block\nMax miss ratio for auto roll sell\nMax parameter length in call sc\nMax gas for read only executions\nMax recursive calls depth in SC Used to limit the …\nDatastore (key value store) for ExecuteSC Operation\noperation validity period\nOutput of a single execution\nList of addresses owned by the current call, and on which …\nParameter to pass to the target function\nperiods per cycle\nproduction stats\nAtomically query the execution state with multiple requests\nread-only execution request queue length\nList of requests\nList of responses\nNumber of roll to remove per denunciation\nprice of a roll inside the network\nAddress of the creator of the parent in the same thread\nThis module provides the structures used to provide …\nslot\nBroadcast channel for new slot execution outputs\nAmount of entries removed when hd_cache_size is reached\ninfos for each PoS-participating address among the ones …\nstate changes caused by the execution step\nduration of the statistics time window\nStop the execution thread Note that we do not take self by …\nStorage referencing the block and its contents\nStorage cost constants\nperiod duration\nTarget of the request\nTarget address\nTarget function\nnumber of threads\nThis file exports useful types used to interact with the …\ntypes for execution-trace / execution-info\nUpdates blockclique status by signaling newly finalized …\nexecution context in which the error happened\nmassa-sc-runtime virtual machine error\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\ncycle to query\nKey of the entry\nKey of the entry\ngas request\nparams size\nFilter only entries whose key starts with a prefix\nFilter only entries whose key starts with a prefix\noptionally restrict the query to a set of addresses. If …\nslot to query\nParameter to pass to the target function\nTarget address\nTarget function\nchannels used by the execution worker\nReturns the argument unchanged.\nCalls U::from(self).\nBroadcast channel for new slot execution outputs\ninterface that communicates with the execution worker …\nExecution manager used to stop the execution thread\nReturns a boxed clone of self. Useful to allow cloning …\nExecute read-only SC function call without causing …\nGets information about a batch of addresses\nReturns for a given cycle the stakers taken into account …\nCheck if a denunciation has been executed given a …\nGet execution events optionally filtered by:\nGet a copy of a single datastore entry with its final and …\nGet the final and active values of balance.\nGet the execution status of a batch of operations.\nGet execution statistics\nAtomically query the execution state with multiple requests\nStop the execution thread Note that we do not take self by …\nUpdates blockclique status by signaling newly finalized …\nBlock gas error: {0}\nCache error: {0}\nChannel error\nAutonomous smart contract call error: {0}\nErrors of the execution component.\nExecution query errors\nFactory error: {0}\nInclude denunciation error: {0}\nInclude operation error: {0}\nInvalid slot range\nMassaHashError: {0}\nModelsError: {0}\nNot enough gas in the block: {0}\nNot found: {0}\nRollBuy error: {0}\nRollSell error: {0}\nRuntime error: {0}\nSlash roll or deferred credits error: {0}\nGiven gas is above the threshold: {0}\nTransaction error: {0}\nVM Error in {context} context: {error}\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self).\nCalls U::from(self).\nexecution context in which the error happened\nmassa-sc-runtime virtual machine error\nStore for events emitted by smart contracts\nClear the event store\nExtend the event store with another store\nSet the events of this store as final\nReturns the argument unchanged.\nGet events optionally filtered by:\nGet events iterator optionally filtered by given …\nCalls U::from(self).\nPrune the event store if its size is over the given limit\nPush a new smart contract event to the store\nTake the event store\nConvert a vector of grpc_model::ScExecutionEventsFilter to …\nConverts a ExecutionQueryResponse to a …\nConvert a grpc_api::ScExecutionEventsRequest to a …\nExecution module configuration\nStorage cost constants\nconstant cost for async messages\nGas used by a transaction, a roll buy or a roll sell)\nWhere to dump blocks\nblock creation reward\nwhether slot execution outputs broadcast is enabled\nslot execution outputs channel capacity\nslot execution traces channel capacity\nwhether slot execution traces broadcast is enabled\nchain id\nRuntime condom middleware limits\nextra lag to add on the execution cursor to improve …\ndeferred calls config\nDenunciation expire delta\nendorsement count\nReturns the argument unchanged.\nReturns the argument unchanged.\nGas costs\ngenesis timestamp\nPath to the hard drive cache storage\nMaximum number of entries we want to keep in the HD cache\nCalls U::from(self).\nCalls U::from(self).\nlast start period, used to attach to the correct execution …\nCost per byte in ledger\nLedger entry base cost\nLedger entry datastore base cost\nMaximum number of entries we want to keep in the LRU cache\nmaximum available gas for asynchronous messages execution\nMax bytecode size\nMax size of a datastore key\nMax datastore value size\nMaximum number of event that an operation can emit\nmax size of event data, in bytes\nMax execution traces slot to keep in trace history cache\nmaximum number of SC output events kept in cache\nMax function length in call sc\nmaximum gas per block\nMax miss ratio for auto roll sell\nMax parameter length in call sc\nMax gas for read only executions\nMax recursive calls depth in SC Used to limit the …\noperation validity period\nperiods per cycle\nread-only execution request queue length\nNumber of roll to remove per denunciation\nprice of a roll inside the network\nAmount of entries removed when hd_cache_size is reached\nduration of the statistics time window\nStorage cost constants\nperiod duration\nnumber of threads\ngets the balance (candidate) of an address, returns …\ngets the balance (final) of an address, returns …\ngets the bytecode (candidate) of an address, returns …\ngets the bytecode (final) of an address, returns …\ngets the datastore keys (candidate) of an address, returns …\ngets the datastore keys (final) of an address, returns …\ngets a datastore value (candidate) for an address, returns …\ngets a datastore value (final) for an address, returns …\ngets the deferred credits (candidate) of an address, …\ngets the deferred credits (final) of an address, returns …\nchecks if address exists (candidate) returns …\nchecks if address exists (final) returns …\ngets the roll count (candidate) of an address, returns …\ngets the roll count (final) of an address, returns …\nThe operation or denunciation was found as executed with …\nThe operation or denunciation was found as successfully …\namount value\nboolean value\nbytecode\nExecute the main function of a bytecode\nget all information for a given cycle, returns …\ncycle infos value\ndatastore value\nget info of deferred calls\ndeferred call info value\ngets the deferred call quote (candidate) for a slot, …\ndeferred call quote (target_slot, gas_request, available, …\nretrieves the deferred call for given slot\ndeferred call slot calls value\ndeferred credits value\ngets the execution status (candidate) for an denunciation, …\ngets the execution status (final) for an denunciation, …\nget filtered events. Returns …\nEvents\nNo information about the operation or denunciation …\nstructure storing a block id + network versions (from a …\nExecuted slot output\nExecution info about an address\nMetadata needed to execute the block\nstructure describing the output of a single execution\nInformation about cycles\nExecution status of an operation or denunciation\nRequest to atomically execute a batch of execution state …\nExecution state query item\nResponse to a list of execution queries\nExecution state query response item\nStaker information for a given cycle\nStructure describing an element of the execution stack. …\nexecution status value\nFinalized slot output\nExecute a function call\nlist of keys\ngets the execution status (candidate) for an operation, …\ngets the execution status (final) for an operation, …\nstructure describing a read-only call\nstructure describing the output of a read only execution\nstructure describing different types of read-only …\nstructure describing different possible targets of a …\nroll counts value\nstructure describing the output of the execution of a slot\nactive roll count\nCalled address\nAnnounced network version (see Versioning doc)\nAuto sell roll execution (empty if execution-info feature …\nBlock id\noptional executed block info at that slot (None if miss)\nReturned value from the module call\nCall stack to simulate, older caller first\nCall stack to simulate, older caller first. Target should …\nCancel async message execution (empty if execution-info …\ncandidate balance of the address\nLast executed candidate slot\ncandidate datastore keys of the address\ncandidate number of rolls the address has\nCoins transferred to the target address during the call\nCoins transferred to the target address during the call\nCurrent network version (see Versioning doc)\ncycle number\ncycle information\nDeferred credits execution (empty if execution-info …\nevents emitted by the execution step\nFee\nfinal balance of the address\nLast executed final slot\nfinal datastore keys of the address\nfinal number of rolls the address has\nFinal state hash\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nfuture deferred credits\nGas cost for this execution, with needed adjustments\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nwhether the cycle is final\nexecution start state\nMaximum gas to spend in the execution.\nMaximum gas to spend in the execution.\nDatastore (key value store) for ExecuteSC Operation\nOutput of a single execution\nList of addresses owned by the current call, and on which …\nParameter to pass to the target function\nproduction stats\nList of requests\nList of responses\nAddress of the creator of the parent in the same thread\nslot\ninfos for each PoS-participating address among the ones …\nstate changes caused by the execution step\nStorage referencing the block and its contents\nTarget of the request\nTarget address\nTarget function\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\ncycle to query\nKey of the entry\nKey of the entry\ngas request\nparams size\nFilter only entries whose key starts with a prefix\nFilter only entries whose key starts with a prefix\noptionally restrict the query to a set of addresses. If …\nslot to query\nParameter to pass to the target function\nTarget address\nTarget function") \ No newline at end of file +searchState.loadedDescShard("massa_execution_exports", 0, "Overview\ngets the balance (candidate) of an address, returns …\ngets the balance (final) of an address, returns …\ngets the bytecode (candidate) of an address, returns …\ngets the bytecode (final) of an address, returns …\ngets the datastore keys (candidate) of an address, returns …\ngets the datastore keys (final) of an address, returns …\ngets a datastore value (candidate) for an address, returns …\ngets a datastore value (final) for an address, returns …\ngets the deferred credits (candidate) of an address, …\ngets the deferred credits (final) of an address, returns …\nchecks if address exists (candidate) returns …\nchecks if address exists (final) returns …\ngets the roll count (candidate) of an address, returns …\ngets the roll count (final) of an address, returns …\nThe operation or denunciation was found as executed with …\nThe operation or denunciation was found as successfully …\namount value\nBlock gas error: {0}\nboolean value\nbytecode\nExecute the main function of a bytecode\nCache error: {0}\nChannel error\nget all information for a given cycle, returns …\ncycle infos value\ndatastore value\nget info of deferred calls\ndeferred call info value\ngets the deferred call quote (candidate) for a slot, …\ndeferred call quote (target_slot, gas_request, available, …\nretrieves the deferred call for given slot\ndeferred call slot calls value\nAutonomous smart contract call error: {0}\ndeferred credits value\ngets the execution status (candidate) for an denunciation, …\ngets the execution status (final) for an denunciation, …\nStore for events emitted by smart contracts\nget filtered events. Returns …\nEvents\nNo information about the operation or denunciation …\nstructure storing a block id + network versions (from a …\nExecuted slot output\nExecution info about an address\nMetadata needed to execute the block\nchannels used by the execution worker\nExecution module configuration\ninterface that communicates with the execution worker …\nErrors of the execution component.\nExecution manager used to stop the execution thread\nstructure describing the output of a single execution\nInformation about cycles\nExecution query errors\nExecution status of an operation or denunciation\nRequest to atomically execute a batch of execution state …\nExecution state query item\nResponse to a list of execution queries\nExecution state query response item\nStaker information for a given cycle\nStructure describing an element of the execution stack. …\nexecution status value\nFactory error: {0}\nFinalized slot output\nExecute a function call\nInclude denunciation error: {0}\nInclude operation error: {0}\nInvalid slot range\nlist of keys\nMassaHashError: {0}\nModelsError: {0}\nNot enough gas in the block: {0}\nNot found: {0}\ngets the execution status (candidate) for an operation, …\ngets the execution status (final) for an operation, …\nstructure describing a read-only call\nstructure describing the output of a read only execution\nstructure describing different types of read-only …\nstructure describing different possible targets of a …\nRollBuy error: {0}\nroll counts value\nRollSell error: {0}\nRuntime error: {0}\nSlash roll or deferred credits error: {0}\nstructure describing the output of the execution of a slot\nStorage cost constants\nGiven gas is above the threshold: {0}\nTransaction error: {0}\nVM Error in {context} context: {error}\nactive roll count\nCalled address\nAnnounced network version (see Versioning doc)\nconstant cost for async messages\nAuto sell roll execution (empty if execution-info feature …\nGas used by a transaction, a roll buy or a roll sell)\nWhere to dump blocks\nBlock id\noptional executed block info at that slot (None if miss)\nblock creation reward\nwhether slot execution outputs broadcast is enabled\nslot execution outputs channel capacity\nslot execution traces channel capacity\nwhether slot execution traces broadcast is enabled\nReturned value from the module call\nCall stack to simulate, older caller first\nCall stack to simulate, older caller first. Target should …\nCancel async message execution (empty if execution-info …\ncandidate balance of the address\nLast executed candidate slot\ncandidate datastore keys of the address\ncandidate number of rolls the address has\nchain id\nReturns a boxed clone of self. Useful to allow cloning …\nCoins transferred to the target address during the call\nCoins transferred to the target address during the call\nRuntime condom middleware limits\nThis module exports generic traits representing interfaces …\nCurrent network version (see Versioning doc)\nextra lag to add on the execution cursor to improve …\ncycle number\ncycle information\ndeferred calls config\nDeferred credits execution (empty if execution-info …\nDenunciation expire delta\nendorsement count\nthis file defines all possible execution error categories\nPath to the hard drive event cache storage\nMaximum number of entries we want to keep in the Event …\nAmount of entries removed when event_cache_size is reached\nThis module represents an event store allowing to store, …\nevents emitted by the execution step\nExecute read-only SC function call without causing …\nFee\nfinal balance of the address\nLast executed final slot\nfinal datastore keys of the address\nfinal number of rolls the address has\nFinal state hash\nReturns the argument unchanged.\nReturns the argument unchanged.\nfuture deferred credits\nGas cost for this execution, with needed adjustments\nGas costs\ngenesis timestamp\nGets information about a batch of addresses\nReturns for a given cycle the stakers taken into account …\nCheck if a denunciation has been executed given a …\nGet execution events optionally filtered by:\nGet a copy of a single datastore entry with its final and …\nGet the final and active values of balance.\nGet the execution status of a batch of operations.\nGet execution statistics\nPath to the hard drive cache storage\nMaximum number of entries we want to keep in the HD cache\nCalls U::from(self).\nCalls U::from(self).\nwhether the cycle is final\nexecution start state\nlast start period, used to attach to the correct execution …\nCost per byte in ledger\nLedger entry base cost\nLedger entry datastore base cost\nMaximum number of entries we want to keep in the LRU cache\nmapping grpc\nmaximum available gas for asynchronous messages execution\nMax bytecode size\nMax size of a datastore key\nMax datastore value size\nMaximum number of event that an operation can emit\nmax size of event data, in bytes\nMax execution traces slot to keep in trace history cache\nmaximum number of SC output events kept in cache\nMax function length in call sc\nMaximum gas to spend in the execution.\nMaximum gas to spend in the execution.\nmaximum gas per block\nMax miss ratio for auto roll sell\nMax parameter length in call sc\nMax gas for read only executions\nMax recursive calls depth in SC Used to limit the …\nDatastore (key value store) for ExecuteSC Operation\noperation validity period\nOutput of a single execution\nList of addresses owned by the current call, and on which …\nParameter to pass to the target function\nperiods per cycle\nproduction stats\nAtomically query the execution state with multiple requests\nread-only execution request queue length\nList of requests\nList of responses\nNumber of roll to remove per denunciation\nprice of a roll inside the network\nAddress of the creator of the parent in the same thread\nThis module provides the structures used to provide …\nslot\nBroadcast channel for new slot execution outputs\nAmount of entries removed when hd_cache_size is reached\ninfos for each PoS-participating address among the ones …\nstate changes caused by the execution step\nduration of the statistics time window\nStop the execution thread Note that we do not take self by …\nStorage referencing the block and its contents\nStorage cost constants\nperiod duration\nTarget of the request\nTarget address\nTarget function\nnumber of threads\nThis file exports useful types used to interact with the …\ntypes for execution-trace / execution-info\nUpdates blockclique status by signaling newly finalized …\nexecution context in which the error happened\nmassa-sc-runtime virtual machine error\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\ncycle to query\nKey of the entry\nKey of the entry\ngas request\nparams size\nFilter only entries whose key starts with a prefix\nFilter only entries whose key starts with a prefix\noptionally restrict the query to a set of addresses. If …\nslot to query\nParameter to pass to the target function\nTarget address\nTarget function\nchannels used by the execution worker\nReturns the argument unchanged.\nCalls U::from(self).\nBroadcast channel for new slot execution outputs\ninterface that communicates with the execution worker …\nExecution manager used to stop the execution thread\nReturns a boxed clone of self. Useful to allow cloning …\nExecute read-only SC function call without causing …\nGets information about a batch of addresses\nReturns for a given cycle the stakers taken into account …\nCheck if a denunciation has been executed given a …\nGet execution events optionally filtered by:\nGet a copy of a single datastore entry with its final and …\nGet the final and active values of balance.\nGet the execution status of a batch of operations.\nGet execution statistics\nAtomically query the execution state with multiple requests\nStop the execution thread Note that we do not take self by …\nUpdates blockclique status by signaling newly finalized …\nBlock gas error: {0}\nCache error: {0}\nChannel error\nAutonomous smart contract call error: {0}\nErrors of the execution component.\nExecution query errors\nFactory error: {0}\nInclude denunciation error: {0}\nInclude operation error: {0}\nInvalid slot range\nMassaHashError: {0}\nModelsError: {0}\nNot enough gas in the block: {0}\nNot found: {0}\nRollBuy error: {0}\nRollSell error: {0}\nRuntime error: {0}\nSlash roll or deferred credits error: {0}\nGiven gas is above the threshold: {0}\nTransaction error: {0}\nVM Error in {context} context: {error}\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self).\nCalls U::from(self).\nexecution context in which the error happened\nmassa-sc-runtime virtual machine error\nStore for events emitted by smart contracts\nClear the event store\nExtend the event store with another store\nSet the events of this store as final\nReturns the argument unchanged.\nGet events optionally filtered by:\nGet events iterator optionally filtered by given …\nCalls U::from(self).\nPrune the event store if its size is over the given limit\nPush a new smart contract event to the store\nTake the event store\nConvert a vector of grpc_model::ScExecutionEventsFilter to …\nConverts a ExecutionQueryResponse to a …\nConvert a grpc_api::ScExecutionEventsRequest to a …\nExecution module configuration\nStorage cost constants\nconstant cost for async messages\nGas used by a transaction, a roll buy or a roll sell)\nWhere to dump blocks\nblock creation reward\nwhether slot execution outputs broadcast is enabled\nslot execution outputs channel capacity\nslot execution traces channel capacity\nwhether slot execution traces broadcast is enabled\nchain id\nRuntime condom middleware limits\nextra lag to add on the execution cursor to improve …\ndeferred calls config\nDenunciation expire delta\nendorsement count\nPath to the hard drive event cache storage\nMaximum number of entries we want to keep in the Event …\nAmount of entries removed when event_cache_size is reached\nReturns the argument unchanged.\nReturns the argument unchanged.\nGas costs\ngenesis timestamp\nPath to the hard drive cache storage\nMaximum number of entries we want to keep in the HD cache\nCalls U::from(self).\nCalls U::from(self).\nlast start period, used to attach to the correct execution …\nCost per byte in ledger\nLedger entry base cost\nLedger entry datastore base cost\nMaximum number of entries we want to keep in the LRU cache\nmaximum available gas for asynchronous messages execution\nMax bytecode size\nMax size of a datastore key\nMax datastore value size\nMaximum number of event that an operation can emit\nmax size of event data, in bytes\nMax execution traces slot to keep in trace history cache\nmaximum number of SC output events kept in cache\nMax function length in call sc\nmaximum gas per block\nMax miss ratio for auto roll sell\nMax parameter length in call sc\nMax gas for read only executions\nMax recursive calls depth in SC Used to limit the …\noperation validity period\nperiods per cycle\nread-only execution request queue length\nNumber of roll to remove per denunciation\nprice of a roll inside the network\nAmount of entries removed when hd_cache_size is reached\nduration of the statistics time window\nStorage cost constants\nperiod duration\nnumber of threads\ngets the balance (candidate) of an address, returns …\ngets the balance (final) of an address, returns …\ngets the bytecode (candidate) of an address, returns …\ngets the bytecode (final) of an address, returns …\ngets the datastore keys (candidate) of an address, returns …\ngets the datastore keys (final) of an address, returns …\ngets a datastore value (candidate) for an address, returns …\ngets a datastore value (final) for an address, returns …\ngets the deferred credits (candidate) of an address, …\ngets the deferred credits (final) of an address, returns …\nchecks if address exists (candidate) returns …\nchecks if address exists (final) returns …\ngets the roll count (candidate) of an address, returns …\ngets the roll count (final) of an address, returns …\nThe operation or denunciation was found as executed with …\nThe operation or denunciation was found as successfully …\namount value\nboolean value\nbytecode\nExecute the main function of a bytecode\nget all information for a given cycle, returns …\ncycle infos value\ndatastore value\nget info of deferred calls\ndeferred call info value\ngets the deferred call quote (candidate) for a slot, …\ndeferred call quote (target_slot, gas_request, available, …\nretrieves the deferred call for given slot\ndeferred call slot calls value\ndeferred credits value\ngets the execution status (candidate) for an denunciation, …\ngets the execution status (final) for an denunciation, …\nget filtered events. Returns …\nEvents\nNo information about the operation or denunciation …\nstructure storing a block id + network versions (from a …\nExecuted slot output\nExecution info about an address\nMetadata needed to execute the block\nstructure describing the output of a single execution\nInformation about cycles\nExecution status of an operation or denunciation\nRequest to atomically execute a batch of execution state …\nExecution state query item\nResponse to a list of execution queries\nExecution state query response item\nStaker information for a given cycle\nStructure describing an element of the execution stack. …\nexecution status value\nFinalized slot output\nExecute a function call\nlist of keys\ngets the execution status (candidate) for an operation, …\ngets the execution status (final) for an operation, …\nstructure describing a read-only call\nstructure describing the output of a read only execution\nstructure describing different types of read-only …\nstructure describing different possible targets of a …\nroll counts value\nstructure describing the output of the execution of a slot\nactive roll count\nCalled address\nAnnounced network version (see Versioning doc)\nAuto sell roll execution (empty if execution-info feature …\nBlock id\noptional executed block info at that slot (None if miss)\nReturned value from the module call\nCall stack to simulate, older caller first\nCall stack to simulate, older caller first. Target should …\nCancel async message execution (empty if execution-info …\ncandidate balance of the address\nLast executed candidate slot\ncandidate datastore keys of the address\ncandidate number of rolls the address has\nCoins transferred to the target address during the call\nCoins transferred to the target address during the call\nCurrent network version (see Versioning doc)\ncycle number\ncycle information\nDeferred credits execution (empty if execution-info …\nevents emitted by the execution step\nFee\nfinal balance of the address\nLast executed final slot\nfinal datastore keys of the address\nfinal number of rolls the address has\nFinal state hash\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nfuture deferred credits\nGas cost for this execution, with needed adjustments\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nCalls U::from(self).\nwhether the cycle is final\nexecution start state\nMaximum gas to spend in the execution.\nMaximum gas to spend in the execution.\nDatastore (key value store) for ExecuteSC Operation\nOutput of a single execution\nList of addresses owned by the current call, and on which …\nParameter to pass to the target function\nproduction stats\nList of requests\nList of responses\nAddress of the creator of the parent in the same thread\nslot\ninfos for each PoS-participating address among the ones …\nstate changes caused by the execution step\nStorage referencing the block and its contents\nTarget of the request\nTarget address\nTarget function\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\nAddress for which to query the datastore\ncycle to query\nKey of the entry\nKey of the entry\ngas request\nparams size\nFilter only entries whose key starts with a prefix\nFilter only entries whose key starts with a prefix\noptionally restrict the query to a set of addresses. If …\nslot to query\nParameter to pass to the target function\nTarget address\nTarget function") \ No newline at end of file diff --git a/settings.html b/settings.html index bc8ad8623c3..d77b2ee00ec 100644 --- a/settings.html +++ b/settings.html @@ -1 +1 @@ -Settings

    Rustdoc settings

    Back
    \ No newline at end of file +Settings

    Rustdoc settings

    Back
    \ No newline at end of file diff --git a/src-files.js b/src-files.js index 13b00ed0ac9..191e4cb34cb 100644 --- a/src-files.js +++ b/src-files.js @@ -11,6 +11,7 @@ var srcIndex = new Map(JSON.parse('[\ ["massa_db_exports",["",[],["constants.rs","controller.rs","db_batch.rs","error.rs","lib.rs","settings.rs"]]],\ ["massa_db_worker",["",[],["lib.rs","massa_db.rs"]]],\ ["massa_deferred_calls",["",[],["call.rs","config.rs","lib.rs","macros.rs","registry_changes.rs","slot_changes.rs"]]],\ +["massa_event_cache",["",[],["config.rs","controller.rs","event_cache.rs","lib.rs","rocksdb_operator.rs","ser_deser.rs","worker.rs"]]],\ ["massa_executed_ops",["",[],["config.rs","denunciations_changes.rs","executed_denunciations.rs","executed_ops.rs","lib.rs","ops_changes.rs"]]],\ ["massa_execution_exports",["",[],["channels.rs","controller_traits.rs","error.rs","event_store.rs","lib.rs","mapping_grpc.rs","settings.rs","types.rs","types_trace_info.rs"]]],\ ["massa_execution_worker",["",[],["active_history.rs","context.rs","controller.rs","execution.rs","execution_info.rs","interface_impl.rs","lib.rs","request_queue.rs","slot_sequencer.rs","speculative_async_pool.rs","speculative_deferred_calls.rs","speculative_executed_denunciations.rs","speculative_executed_ops.rs","speculative_ledger.rs","speculative_roll_state.rs","stats.rs","storage_backend.rs","worker.rs"]]],\ diff --git a/src/massa_db_worker/lib.rs.html b/src/massa_db_worker/lib.rs.html index 0683c8bd6e8..2eec96a7df0 100644 --- a/src/massa_db_worker/lib.rs.html +++ b/src/massa_db_worker/lib.rs.html @@ -100,7 +100,7 @@ //! * if we want to delete item a: 1000 ^ 0011 == 1011 (== item b) //! * if we want to delete item b: 1000 ^ 1011 == 0011 (== item a) //! -//! Note that this does not provides "Proof of present" nor "Proof of Absence" +//! Note that this does not provide "Proof of present" nor "Proof of Absence" //! (operations avail with Merkle trees) //! //! For more details here: https://github.com/massalabs/massa/discussions/3852#discussioncomment-6188158 @@ -110,10 +110,10 @@ //! # Caches //! //! A cache of db changes is kept in memory allowing to easily stream it -//! (by streaming, we means: sending it to another massa node (aka bootstrap)) +//! (by streaming, we mean: sending it to another massa node (aka bootstrap)) //! There is 2 separate caches: one for 'state' and one for 'versioning' //! -//! These caches is stored as a key, value: slot -> insertion_data|deletion_data. +//! These caches are stored as a key, value: slot -> insertion_data|deletion_data. //! //! # Streaming steps //! diff --git a/src/massa_event_cache/config.rs.html b/src/massa_event_cache/config.rs.html new file mode 100644 index 00000000000..0f5b061079a --- /dev/null +++ b/src/massa_event_cache/config.rs.html @@ -0,0 +1,45 @@ +config.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +
    use std::path::PathBuf;
    +
    +pub struct EventCacheConfig {
    +    /// Path to the hard drive cache storage
    +    pub event_cache_path: PathBuf,
    +    /// Maximum number of entries we want to keep in the event cache
    +    pub max_event_cache_length: usize,
    +    /// Amount of entries removed when `event_cache_size` is reached
    +    pub snip_amount: usize,
    +    /// Maximum length of an event data (aka event message)
    +    pub max_event_data_length: u64,
    +    /// Thread count
    +    pub thread_count: u8,
    +    /// Call stack max length
    +    pub max_call_stack_length: u16,
    +    /// Maximum number of events per operation
    +    pub max_events_per_operation: u64,
    +    /// Maximum number of operations per block
    +    pub max_operations_per_block: u64,
    +    /// Maximum events returned in a query
    +    pub max_events_per_query: usize,
    +}
    +
    \ No newline at end of file diff --git a/src/massa_event_cache/controller.rs.html b/src/massa_event_cache/controller.rs.html new file mode 100644 index 00000000000..3093449aa3a --- /dev/null +++ b/src/massa_event_cache/controller.rs.html @@ -0,0 +1,273 @@ +controller.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
    +87
    +88
    +89
    +90
    +91
    +92
    +93
    +94
    +95
    +96
    +97
    +98
    +99
    +100
    +101
    +102
    +103
    +104
    +105
    +106
    +107
    +108
    +109
    +110
    +111
    +112
    +113
    +114
    +115
    +116
    +117
    +118
    +119
    +120
    +121
    +122
    +123
    +124
    +125
    +126
    +127
    +128
    +129
    +130
    +131
    +132
    +133
    +134
    +135
    +136
    +
    // std
    +use std::collections::{BTreeSet, VecDeque};
    +use std::sync::Arc;
    +// third-party
    +use parking_lot::{Condvar, Mutex, RwLock};
    +// internal
    +use crate::event_cache::EventCache;
    +use massa_models::execution::EventFilter;
    +use massa_models::output_event::SCOutputEvent;
    +
    +/// structure used to communicate with controller
    +#[derive(Debug, Default)]
    +pub(crate) struct EventCacheWriterInputData {
    +    /// set stop to true to stop the thread
    +    pub stop: bool,
    +    pub(crate) events: VecDeque<SCOutputEvent>,
    +}
    +
    +impl EventCacheWriterInputData {
    +    pub fn new() -> Self {
    +        Self {
    +            stop: Default::default(),
    +            events: Default::default(),
    +        }
    +    }
    +
    +    /*
    +    /// Takes the current input data into a clone that is returned,
    +    /// and resets self.
    +    pub fn take(&mut self) -> Self {
    +        Self {
    +            stop: std::mem::take(&mut self.stop),
    +            events: std::mem::take(&mut self.events),
    +        }
    +    }
    +    */
    +}
    +
    +/// interface that communicates with the worker thread
    +#[cfg_attr(feature = "test-exports", mockall_wrap::wrap, mockall::automock)]
    +pub trait EventCacheController: Send + Sync {
    +    fn save_events(&self, events: VecDeque<SCOutputEvent>);
    +
    +    fn get_filtered_sc_output_events(&self, filter: &EventFilter) -> Vec<SCOutputEvent>;
    +}
    +
    +#[derive(Clone)]
    +/// implementation of the event cache controller
    +pub struct EventCacheControllerImpl {
    +    /// input data to process in the VM loop
    +    /// with a wake-up condition variable that needs to be triggered when the data changes
    +    pub(crate) input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +    /// Event cache
    +    pub(crate) cache: Arc<RwLock<EventCache>>,
    +}
    +
    +impl EventCacheController for EventCacheControllerImpl {
    +    fn save_events(&self, events: VecDeque<SCOutputEvent>) {
    +        // lock input data
    +        let mut input_data = self.input_data.1.lock();
    +        input_data.events.extend(events);
    +        // Wake up the condvar in EventCacheWriterThread waiting for events
    +        self.input_data.0.notify_all();
    +    }
    +
    +    fn get_filtered_sc_output_events(&self, filter: &EventFilter) -> Vec<SCOutputEvent> {
    +        let mut res_0 = {
    +            // Read from new events first
    +            let lock_0 = self.input_data.1.lock();
    +            #[allow(clippy::unnecessary_filter_map)]
    +            let it = lock_0.events.iter().filter_map(|event| {
    +                if let Some(start) = filter.start {
    +                    if event.context.slot < start {
    +                        return None;
    +                    }
    +                }
    +                if let Some(end) = filter.end {
    +                    if event.context.slot >= end {
    +                        return None;
    +                    }
    +                }
    +                if let Some(is_final) = filter.is_final {
    +                    if event.context.is_final != is_final {
    +                        return None;
    +                    }
    +                }
    +                if let Some(is_error) = filter.is_error {
    +                    if event.context.is_error != is_error {
    +                        return None;
    +                    }
    +                }
    +                match (
    +                    filter.original_caller_address,
    +                    event.context.call_stack.front(),
    +                ) {
    +                    (Some(addr1), Some(addr2)) if addr1 != *addr2 => return None,
    +                    (Some(_), None) => return None,
    +                    _ => (),
    +                }
    +                match (filter.emitter_address, event.context.call_stack.back()) {
    +                    (Some(addr1), Some(addr2)) if addr1 != *addr2 => return None,
    +                    (Some(_), None) => return None,
    +                    _ => (),
    +                }
    +                match (
    +                    filter.original_operation_id,
    +                    event.context.origin_operation_id,
    +                ) {
    +                    (Some(addr1), Some(addr2)) if addr1 != addr2 => return None,
    +                    (Some(_), None) => return None,
    +                    _ => (),
    +                }
    +                Some(event)
    +            });
    +
    +            let res_0: BTreeSet<SCOutputEvent> = it.cloned().collect();
    +            // Drop the lock on the queue as soon as possible to avoid deadlocks
    +            drop(lock_0);
    +            res_0
    +        };
    +
    +        let res_1 = {
    +            // Read from db (on disk) events
    +            let lock = self.cache.read();
    +            let (_, res_1) = lock.get_filtered_sc_output_events(filter);
    +            // Drop the lock on the event cache db asap
    +            drop(lock);
    +            res_1
    +        };
    +
    +        // Merge results
    +        let res_1: BTreeSet<SCOutputEvent> = BTreeSet::from_iter(res_1);
    +        res_0.extend(res_1);
    +        Vec::from_iter(res_0)
    +    }
    +}
    +
    \ No newline at end of file diff --git a/src/massa_event_cache/event_cache.rs.html b/src/massa_event_cache/event_cache.rs.html new file mode 100644 index 00000000000..a5240070a57 --- /dev/null +++ b/src/massa_event_cache/event_cache.rs.html @@ -0,0 +1,3637 @@ +event_cache.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
    +87
    +88
    +89
    +90
    +91
    +92
    +93
    +94
    +95
    +96
    +97
    +98
    +99
    +100
    +101
    +102
    +103
    +104
    +105
    +106
    +107
    +108
    +109
    +110
    +111
    +112
    +113
    +114
    +115
    +116
    +117
    +118
    +119
    +120
    +121
    +122
    +123
    +124
    +125
    +126
    +127
    +128
    +129
    +130
    +131
    +132
    +133
    +134
    +135
    +136
    +137
    +138
    +139
    +140
    +141
    +142
    +143
    +144
    +145
    +146
    +147
    +148
    +149
    +150
    +151
    +152
    +153
    +154
    +155
    +156
    +157
    +158
    +159
    +160
    +161
    +162
    +163
    +164
    +165
    +166
    +167
    +168
    +169
    +170
    +171
    +172
    +173
    +174
    +175
    +176
    +177
    +178
    +179
    +180
    +181
    +182
    +183
    +184
    +185
    +186
    +187
    +188
    +189
    +190
    +191
    +192
    +193
    +194
    +195
    +196
    +197
    +198
    +199
    +200
    +201
    +202
    +203
    +204
    +205
    +206
    +207
    +208
    +209
    +210
    +211
    +212
    +213
    +214
    +215
    +216
    +217
    +218
    +219
    +220
    +221
    +222
    +223
    +224
    +225
    +226
    +227
    +228
    +229
    +230
    +231
    +232
    +233
    +234
    +235
    +236
    +237
    +238
    +239
    +240
    +241
    +242
    +243
    +244
    +245
    +246
    +247
    +248
    +249
    +250
    +251
    +252
    +253
    +254
    +255
    +256
    +257
    +258
    +259
    +260
    +261
    +262
    +263
    +264
    +265
    +266
    +267
    +268
    +269
    +270
    +271
    +272
    +273
    +274
    +275
    +276
    +277
    +278
    +279
    +280
    +281
    +282
    +283
    +284
    +285
    +286
    +287
    +288
    +289
    +290
    +291
    +292
    +293
    +294
    +295
    +296
    +297
    +298
    +299
    +300
    +301
    +302
    +303
    +304
    +305
    +306
    +307
    +308
    +309
    +310
    +311
    +312
    +313
    +314
    +315
    +316
    +317
    +318
    +319
    +320
    +321
    +322
    +323
    +324
    +325
    +326
    +327
    +328
    +329
    +330
    +331
    +332
    +333
    +334
    +335
    +336
    +337
    +338
    +339
    +340
    +341
    +342
    +343
    +344
    +345
    +346
    +347
    +348
    +349
    +350
    +351
    +352
    +353
    +354
    +355
    +356
    +357
    +358
    +359
    +360
    +361
    +362
    +363
    +364
    +365
    +366
    +367
    +368
    +369
    +370
    +371
    +372
    +373
    +374
    +375
    +376
    +377
    +378
    +379
    +380
    +381
    +382
    +383
    +384
    +385
    +386
    +387
    +388
    +389
    +390
    +391
    +392
    +393
    +394
    +395
    +396
    +397
    +398
    +399
    +400
    +401
    +402
    +403
    +404
    +405
    +406
    +407
    +408
    +409
    +410
    +411
    +412
    +413
    +414
    +415
    +416
    +417
    +418
    +419
    +420
    +421
    +422
    +423
    +424
    +425
    +426
    +427
    +428
    +429
    +430
    +431
    +432
    +433
    +434
    +435
    +436
    +437
    +438
    +439
    +440
    +441
    +442
    +443
    +444
    +445
    +446
    +447
    +448
    +449
    +450
    +451
    +452
    +453
    +454
    +455
    +456
    +457
    +458
    +459
    +460
    +461
    +462
    +463
    +464
    +465
    +466
    +467
    +468
    +469
    +470
    +471
    +472
    +473
    +474
    +475
    +476
    +477
    +478
    +479
    +480
    +481
    +482
    +483
    +484
    +485
    +486
    +487
    +488
    +489
    +490
    +491
    +492
    +493
    +494
    +495
    +496
    +497
    +498
    +499
    +500
    +501
    +502
    +503
    +504
    +505
    +506
    +507
    +508
    +509
    +510
    +511
    +512
    +513
    +514
    +515
    +516
    +517
    +518
    +519
    +520
    +521
    +522
    +523
    +524
    +525
    +526
    +527
    +528
    +529
    +530
    +531
    +532
    +533
    +534
    +535
    +536
    +537
    +538
    +539
    +540
    +541
    +542
    +543
    +544
    +545
    +546
    +547
    +548
    +549
    +550
    +551
    +552
    +553
    +554
    +555
    +556
    +557
    +558
    +559
    +560
    +561
    +562
    +563
    +564
    +565
    +566
    +567
    +568
    +569
    +570
    +571
    +572
    +573
    +574
    +575
    +576
    +577
    +578
    +579
    +580
    +581
    +582
    +583
    +584
    +585
    +586
    +587
    +588
    +589
    +590
    +591
    +592
    +593
    +594
    +595
    +596
    +597
    +598
    +599
    +600
    +601
    +602
    +603
    +604
    +605
    +606
    +607
    +608
    +609
    +610
    +611
    +612
    +613
    +614
    +615
    +616
    +617
    +618
    +619
    +620
    +621
    +622
    +623
    +624
    +625
    +626
    +627
    +628
    +629
    +630
    +631
    +632
    +633
    +634
    +635
    +636
    +637
    +638
    +639
    +640
    +641
    +642
    +643
    +644
    +645
    +646
    +647
    +648
    +649
    +650
    +651
    +652
    +653
    +654
    +655
    +656
    +657
    +658
    +659
    +660
    +661
    +662
    +663
    +664
    +665
    +666
    +667
    +668
    +669
    +670
    +671
    +672
    +673
    +674
    +675
    +676
    +677
    +678
    +679
    +680
    +681
    +682
    +683
    +684
    +685
    +686
    +687
    +688
    +689
    +690
    +691
    +692
    +693
    +694
    +695
    +696
    +697
    +698
    +699
    +700
    +701
    +702
    +703
    +704
    +705
    +706
    +707
    +708
    +709
    +710
    +711
    +712
    +713
    +714
    +715
    +716
    +717
    +718
    +719
    +720
    +721
    +722
    +723
    +724
    +725
    +726
    +727
    +728
    +729
    +730
    +731
    +732
    +733
    +734
    +735
    +736
    +737
    +738
    +739
    +740
    +741
    +742
    +743
    +744
    +745
    +746
    +747
    +748
    +749
    +750
    +751
    +752
    +753
    +754
    +755
    +756
    +757
    +758
    +759
    +760
    +761
    +762
    +763
    +764
    +765
    +766
    +767
    +768
    +769
    +770
    +771
    +772
    +773
    +774
    +775
    +776
    +777
    +778
    +779
    +780
    +781
    +782
    +783
    +784
    +785
    +786
    +787
    +788
    +789
    +790
    +791
    +792
    +793
    +794
    +795
    +796
    +797
    +798
    +799
    +800
    +801
    +802
    +803
    +804
    +805
    +806
    +807
    +808
    +809
    +810
    +811
    +812
    +813
    +814
    +815
    +816
    +817
    +818
    +819
    +820
    +821
    +822
    +823
    +824
    +825
    +826
    +827
    +828
    +829
    +830
    +831
    +832
    +833
    +834
    +835
    +836
    +837
    +838
    +839
    +840
    +841
    +842
    +843
    +844
    +845
    +846
    +847
    +848
    +849
    +850
    +851
    +852
    +853
    +854
    +855
    +856
    +857
    +858
    +859
    +860
    +861
    +862
    +863
    +864
    +865
    +866
    +867
    +868
    +869
    +870
    +871
    +872
    +873
    +874
    +875
    +876
    +877
    +878
    +879
    +880
    +881
    +882
    +883
    +884
    +885
    +886
    +887
    +888
    +889
    +890
    +891
    +892
    +893
    +894
    +895
    +896
    +897
    +898
    +899
    +900
    +901
    +902
    +903
    +904
    +905
    +906
    +907
    +908
    +909
    +910
    +911
    +912
    +913
    +914
    +915
    +916
    +917
    +918
    +919
    +920
    +921
    +922
    +923
    +924
    +925
    +926
    +927
    +928
    +929
    +930
    +931
    +932
    +933
    +934
    +935
    +936
    +937
    +938
    +939
    +940
    +941
    +942
    +943
    +944
    +945
    +946
    +947
    +948
    +949
    +950
    +951
    +952
    +953
    +954
    +955
    +956
    +957
    +958
    +959
    +960
    +961
    +962
    +963
    +964
    +965
    +966
    +967
    +968
    +969
    +970
    +971
    +972
    +973
    +974
    +975
    +976
    +977
    +978
    +979
    +980
    +981
    +982
    +983
    +984
    +985
    +986
    +987
    +988
    +989
    +990
    +991
    +992
    +993
    +994
    +995
    +996
    +997
    +998
    +999
    +1000
    +1001
    +1002
    +1003
    +1004
    +1005
    +1006
    +1007
    +1008
    +1009
    +1010
    +1011
    +1012
    +1013
    +1014
    +1015
    +1016
    +1017
    +1018
    +1019
    +1020
    +1021
    +1022
    +1023
    +1024
    +1025
    +1026
    +1027
    +1028
    +1029
    +1030
    +1031
    +1032
    +1033
    +1034
    +1035
    +1036
    +1037
    +1038
    +1039
    +1040
    +1041
    +1042
    +1043
    +1044
    +1045
    +1046
    +1047
    +1048
    +1049
    +1050
    +1051
    +1052
    +1053
    +1054
    +1055
    +1056
    +1057
    +1058
    +1059
    +1060
    +1061
    +1062
    +1063
    +1064
    +1065
    +1066
    +1067
    +1068
    +1069
    +1070
    +1071
    +1072
    +1073
    +1074
    +1075
    +1076
    +1077
    +1078
    +1079
    +1080
    +1081
    +1082
    +1083
    +1084
    +1085
    +1086
    +1087
    +1088
    +1089
    +1090
    +1091
    +1092
    +1093
    +1094
    +1095
    +1096
    +1097
    +1098
    +1099
    +1100
    +1101
    +1102
    +1103
    +1104
    +1105
    +1106
    +1107
    +1108
    +1109
    +1110
    +1111
    +1112
    +1113
    +1114
    +1115
    +1116
    +1117
    +1118
    +1119
    +1120
    +1121
    +1122
    +1123
    +1124
    +1125
    +1126
    +1127
    +1128
    +1129
    +1130
    +1131
    +1132
    +1133
    +1134
    +1135
    +1136
    +1137
    +1138
    +1139
    +1140
    +1141
    +1142
    +1143
    +1144
    +1145
    +1146
    +1147
    +1148
    +1149
    +1150
    +1151
    +1152
    +1153
    +1154
    +1155
    +1156
    +1157
    +1158
    +1159
    +1160
    +1161
    +1162
    +1163
    +1164
    +1165
    +1166
    +1167
    +1168
    +1169
    +1170
    +1171
    +1172
    +1173
    +1174
    +1175
    +1176
    +1177
    +1178
    +1179
    +1180
    +1181
    +1182
    +1183
    +1184
    +1185
    +1186
    +1187
    +1188
    +1189
    +1190
    +1191
    +1192
    +1193
    +1194
    +1195
    +1196
    +1197
    +1198
    +1199
    +1200
    +1201
    +1202
    +1203
    +1204
    +1205
    +1206
    +1207
    +1208
    +1209
    +1210
    +1211
    +1212
    +1213
    +1214
    +1215
    +1216
    +1217
    +1218
    +1219
    +1220
    +1221
    +1222
    +1223
    +1224
    +1225
    +1226
    +1227
    +1228
    +1229
    +1230
    +1231
    +1232
    +1233
    +1234
    +1235
    +1236
    +1237
    +1238
    +1239
    +1240
    +1241
    +1242
    +1243
    +1244
    +1245
    +1246
    +1247
    +1248
    +1249
    +1250
    +1251
    +1252
    +1253
    +1254
    +1255
    +1256
    +1257
    +1258
    +1259
    +1260
    +1261
    +1262
    +1263
    +1264
    +1265
    +1266
    +1267
    +1268
    +1269
    +1270
    +1271
    +1272
    +1273
    +1274
    +1275
    +1276
    +1277
    +1278
    +1279
    +1280
    +1281
    +1282
    +1283
    +1284
    +1285
    +1286
    +1287
    +1288
    +1289
    +1290
    +1291
    +1292
    +1293
    +1294
    +1295
    +1296
    +1297
    +1298
    +1299
    +1300
    +1301
    +1302
    +1303
    +1304
    +1305
    +1306
    +1307
    +1308
    +1309
    +1310
    +1311
    +1312
    +1313
    +1314
    +1315
    +1316
    +1317
    +1318
    +1319
    +1320
    +1321
    +1322
    +1323
    +1324
    +1325
    +1326
    +1327
    +1328
    +1329
    +1330
    +1331
    +1332
    +1333
    +1334
    +1335
    +1336
    +1337
    +1338
    +1339
    +1340
    +1341
    +1342
    +1343
    +1344
    +1345
    +1346
    +1347
    +1348
    +1349
    +1350
    +1351
    +1352
    +1353
    +1354
    +1355
    +1356
    +1357
    +1358
    +1359
    +1360
    +1361
    +1362
    +1363
    +1364
    +1365
    +1366
    +1367
    +1368
    +1369
    +1370
    +1371
    +1372
    +1373
    +1374
    +1375
    +1376
    +1377
    +1378
    +1379
    +1380
    +1381
    +1382
    +1383
    +1384
    +1385
    +1386
    +1387
    +1388
    +1389
    +1390
    +1391
    +1392
    +1393
    +1394
    +1395
    +1396
    +1397
    +1398
    +1399
    +1400
    +1401
    +1402
    +1403
    +1404
    +1405
    +1406
    +1407
    +1408
    +1409
    +1410
    +1411
    +1412
    +1413
    +1414
    +1415
    +1416
    +1417
    +1418
    +1419
    +1420
    +1421
    +1422
    +1423
    +1424
    +1425
    +1426
    +1427
    +1428
    +1429
    +1430
    +1431
    +1432
    +1433
    +1434
    +1435
    +1436
    +1437
    +1438
    +1439
    +1440
    +1441
    +1442
    +1443
    +1444
    +1445
    +1446
    +1447
    +1448
    +1449
    +1450
    +1451
    +1452
    +1453
    +1454
    +1455
    +1456
    +1457
    +1458
    +1459
    +1460
    +1461
    +1462
    +1463
    +1464
    +1465
    +1466
    +1467
    +1468
    +1469
    +1470
    +1471
    +1472
    +1473
    +1474
    +1475
    +1476
    +1477
    +1478
    +1479
    +1480
    +1481
    +1482
    +1483
    +1484
    +1485
    +1486
    +1487
    +1488
    +1489
    +1490
    +1491
    +1492
    +1493
    +1494
    +1495
    +1496
    +1497
    +1498
    +1499
    +1500
    +1501
    +1502
    +1503
    +1504
    +1505
    +1506
    +1507
    +1508
    +1509
    +1510
    +1511
    +1512
    +1513
    +1514
    +1515
    +1516
    +1517
    +1518
    +1519
    +1520
    +1521
    +1522
    +1523
    +1524
    +1525
    +1526
    +1527
    +1528
    +1529
    +1530
    +1531
    +1532
    +1533
    +1534
    +1535
    +1536
    +1537
    +1538
    +1539
    +1540
    +1541
    +1542
    +1543
    +1544
    +1545
    +1546
    +1547
    +1548
    +1549
    +1550
    +1551
    +1552
    +1553
    +1554
    +1555
    +1556
    +1557
    +1558
    +1559
    +1560
    +1561
    +1562
    +1563
    +1564
    +1565
    +1566
    +1567
    +1568
    +1569
    +1570
    +1571
    +1572
    +1573
    +1574
    +1575
    +1576
    +1577
    +1578
    +1579
    +1580
    +1581
    +1582
    +1583
    +1584
    +1585
    +1586
    +1587
    +1588
    +1589
    +1590
    +1591
    +1592
    +1593
    +1594
    +1595
    +1596
    +1597
    +1598
    +1599
    +1600
    +1601
    +1602
    +1603
    +1604
    +1605
    +1606
    +1607
    +1608
    +1609
    +1610
    +1611
    +1612
    +1613
    +1614
    +1615
    +1616
    +1617
    +1618
    +1619
    +1620
    +1621
    +1622
    +1623
    +1624
    +1625
    +1626
    +1627
    +1628
    +1629
    +1630
    +1631
    +1632
    +1633
    +1634
    +1635
    +1636
    +1637
    +1638
    +1639
    +1640
    +1641
    +1642
    +1643
    +1644
    +1645
    +1646
    +1647
    +1648
    +1649
    +1650
    +1651
    +1652
    +1653
    +1654
    +1655
    +1656
    +1657
    +1658
    +1659
    +1660
    +1661
    +1662
    +1663
    +1664
    +1665
    +1666
    +1667
    +1668
    +1669
    +1670
    +1671
    +1672
    +1673
    +1674
    +1675
    +1676
    +1677
    +1678
    +1679
    +1680
    +1681
    +1682
    +1683
    +1684
    +1685
    +1686
    +1687
    +1688
    +1689
    +1690
    +1691
    +1692
    +1693
    +1694
    +1695
    +1696
    +1697
    +1698
    +1699
    +1700
    +1701
    +1702
    +1703
    +1704
    +1705
    +1706
    +1707
    +1708
    +1709
    +1710
    +1711
    +1712
    +1713
    +1714
    +1715
    +1716
    +1717
    +1718
    +1719
    +1720
    +1721
    +1722
    +1723
    +1724
    +1725
    +1726
    +1727
    +1728
    +1729
    +1730
    +1731
    +1732
    +1733
    +1734
    +1735
    +1736
    +1737
    +1738
    +1739
    +1740
    +1741
    +1742
    +1743
    +1744
    +1745
    +1746
    +1747
    +1748
    +1749
    +1750
    +1751
    +1752
    +1753
    +1754
    +1755
    +1756
    +1757
    +1758
    +1759
    +1760
    +1761
    +1762
    +1763
    +1764
    +1765
    +1766
    +1767
    +1768
    +1769
    +1770
    +1771
    +1772
    +1773
    +1774
    +1775
    +1776
    +1777
    +1778
    +1779
    +1780
    +1781
    +1782
    +1783
    +1784
    +1785
    +1786
    +1787
    +1788
    +1789
    +1790
    +1791
    +1792
    +1793
    +1794
    +1795
    +1796
    +1797
    +1798
    +1799
    +1800
    +1801
    +1802
    +1803
    +1804
    +1805
    +1806
    +1807
    +1808
    +1809
    +1810
    +1811
    +1812
    +1813
    +1814
    +1815
    +1816
    +1817
    +1818
    +
    // std
    +use std::cmp::max;
    +use std::collections::{BTreeMap, BTreeSet};
    +use std::path::Path;
    +// third-party
    +use num_enum::IntoPrimitive;
    +use rocksdb::{IteratorMode, Options, WriteBatch, DB};
    +use tracing::{debug, warn};
    +// internal
    +use crate::rocksdb_operator::counter_merge;
    +use crate::ser_deser::{
    +    SCOutputEventDeserializer, SCOutputEventDeserializerArgs, SCOutputEventSerializer,
    +};
    +use massa_models::address::Address;
    +use massa_models::error::ModelsError;
    +use massa_models::execution::EventFilter;
    +use massa_models::operation::{OperationId, OperationIdSerializer};
    +use massa_models::output_event::SCOutputEvent;
    +use massa_models::slot::Slot;
    +use massa_serialization::{DeserializeError, Deserializer, Serializer};
    +
    +const OPEN_ERROR: &str = "critical: rocksdb open operation failed";
    +// const COUNTER_INIT_ERROR: &str = "critical: cannot init rocksdb counters";
    +const DESTROY_ERROR: &str = "critical: rocksdb delete operation failed";
    +const CRUD_ERROR: &str = "critical: rocksdb crud operation failed";
    +const EVENT_DESER_ERROR: &str = "critical: event deserialization failed";
    +const OPERATION_ID_DESER_ERROR: &str = "critical: deserialization failed for op id in rocksdb";
    +const COUNTER_ERROR: &str = "critical: cannot get counter";
    +const COUNTER_KEY_CREATION_ERROR: &str = "critical: cannot create counter key";
    +
    +#[allow(dead_code)]
    +/// Prefix u8 used to identify rocksdb keys
    +#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, IntoPrimitive)]
    +#[repr(u8)]
    +enum KeyIndent {
    +    Counter = 0,
    +    Event,
    +    EmitterAddress,
    +    OriginalCallerAddress,
    +    OriginalOperationId,
    +    IsError,
    +    IsFinal,
    +}
    +
    +/// Key for this type of data that we want to get
    +enum KeyBuilderType<'a> {
    +    Slot(&'a Slot),
    +    Event(&'a Slot, u64),
    +    Address(&'a Address),
    +    OperationId(&'a OperationId),
    +    Bool(bool),
    +    None,
    +}
    +
    +enum KeyKind {
    +    Regular,
    +    Prefix,
    +    Counter,
    +}
    +
    +struct DbKeyBuilder {
    +    /// Operation Id Serializer
    +    op_id_ser: OperationIdSerializer,
    +}
    +
    +impl DbKeyBuilder {
    +    fn new() -> Self {
    +        Self {
    +            op_id_ser: OperationIdSerializer::new(),
    +        }
    +    }
    +
    +    /// Low level key builder function
    +    /// There is no guarantees that the key will be unique
    +    /// Recommended to use high level function like:
    +    /// `key_from_event`, `prefix_key_from_indent`,
    +    /// `prefix_key_from_filter_item` or `counter_key_from_filter_item`
    +    fn key(&self, indent: &KeyIndent, key_type: KeyBuilderType, key_kind: &KeyKind) -> Vec<u8> {
    +        let mut key_base = if matches!(key_kind, KeyKind::Counter) {
    +            vec![u8::from(KeyIndent::Counter), u8::from(*indent)]
    +        } else {
    +            vec![u8::from(*indent)]
    +        };
    +
    +        match key_type {
    +            KeyBuilderType::Slot(slot) => {
    +                key_base.extend(slot.to_bytes_key());
    +            }
    +            KeyBuilderType::Event(slot, index) => {
    +                key_base.extend(slot.to_bytes_key());
    +                key_base.extend(index.to_be_bytes());
    +            }
    +            KeyBuilderType::Address(addr) => {
    +                let addr_bytes = addr.to_prefixed_bytes();
    +                let addr_bytes_len = addr_bytes.len();
    +                key_base.extend(addr_bytes);
    +                key_base.push(addr_bytes_len as u8);
    +            }
    +            KeyBuilderType::OperationId(op_id) => {
    +                let mut buffer = Vec::new();
    +                self.op_id_ser
    +                    .serialize(op_id, &mut buffer)
    +                    .expect(OPERATION_ID_DESER_ERROR);
    +                key_base.extend(&buffer);
    +                key_base.extend(u32::to_be_bytes(buffer.len() as u32));
    +            }
    +            KeyBuilderType::Bool(value) => {
    +                key_base.push(u8::from(value));
    +            }
    +            KeyBuilderType::None => {}
    +        }
    +
    +        key_base
    +    }
    +
    +    /// Key usually used to populate the DB
    +    fn key_from_event(
    +        &self,
    +        event: &SCOutputEvent,
    +        indent: &KeyIndent,
    +        key_kind: &KeyKind,
    +    ) -> Option<Vec<u8>> {
    +        // Db format:
    +        // * Regular keys:
    +        //   * Event key: [Event Indent][Slot][Index] -> Event value: Event serialized
    +        //   * Emitter address key: [Emitter Address Indent][Addr][Addr len][Event key] -> []
    +        // * Prefix keys:
    +        //   * Emitter address prefix key: [Emitter Address Indent][Addr][Addr len]
    +        // * Counter keys:
    +        //   * Emitter address counter key: [Counter indent][Emitter Address Indent][Addr][Addr len][Event key] -> u64
    +
    +        let key = match indent {
    +            KeyIndent::Event => {
    +                let item = KeyBuilderType::Event(&event.context.slot, event.context.index_in_slot);
    +                Some(self.key(indent, item, key_kind))
    +            }
    +            KeyIndent::EmitterAddress => {
    +                if let Some(addr) = event.context.call_stack.back() {
    +                    let item = KeyBuilderType::Address(addr);
    +                    let mut key = self.key(indent, item, key_kind);
    +                    let item =
    +                        KeyBuilderType::Event(&event.context.slot, event.context.index_in_slot);
    +                    if matches!(key_kind, KeyKind::Regular) {
    +                        key.extend(self.key(&KeyIndent::Event, item, &KeyKind::Regular));
    +                    }
    +                    Some(key)
    +                } else {
    +                    None
    +                }
    +            }
    +            KeyIndent::OriginalCallerAddress => {
    +                if let Some(addr) = event.context.call_stack.front() {
    +                    let item = KeyBuilderType::Address(addr);
    +                    let mut key = self.key(indent, item, key_kind);
    +                    let item =
    +                        KeyBuilderType::Event(&event.context.slot, event.context.index_in_slot);
    +                    if matches!(key_kind, KeyKind::Regular) {
    +                        key.extend(self.key(&KeyIndent::Event, item, &KeyKind::Regular));
    +                    }
    +                    Some(key)
    +                } else {
    +                    None
    +                }
    +            }
    +            KeyIndent::OriginalOperationId => {
    +                if let Some(op_id) = event.context.origin_operation_id.as_ref() {
    +                    let item = KeyBuilderType::OperationId(op_id);
    +                    let mut key = self.key(indent, item, key_kind);
    +                    let item =
    +                        KeyBuilderType::Event(&event.context.slot, event.context.index_in_slot);
    +                    if matches!(key_kind, KeyKind::Regular) {
    +                        key.extend(self.key(&KeyIndent::Event, item, &KeyKind::Regular));
    +                    }
    +                    Some(key)
    +                } else {
    +                    None
    +                }
    +            }
    +            KeyIndent::IsError => {
    +                let item = KeyBuilderType::Bool(event.context.is_error);
    +                let mut key = self.key(indent, item, key_kind);
    +                let item = KeyBuilderType::Event(&event.context.slot, event.context.index_in_slot);
    +                if matches!(key_kind, KeyKind::Regular) {
    +                    key.extend(self.key(&KeyIndent::Event, item, &KeyKind::Regular));
    +                }
    +                Some(key)
    +            }
    +            _ => unreachable!(),
    +        };
    +
    +        key
    +    }
    +
    +    /// Prefix key to iterate over all events / emitter_address / ...
    +    fn prefix_key_from_indent(&self, indent: &KeyIndent) -> Vec<u8> {
    +        self.key(indent, KeyBuilderType::None, &KeyKind::Regular)
    +    }
    +
    +    /// Prefix key to iterate over specific emitter_address / operation_id / ...
    +    fn prefix_key_from_filter_item(&self, filter_item: &FilterItem, indent: &KeyIndent) -> Vec<u8> {
    +        match (indent, filter_item) {
    +            (KeyIndent::Event, FilterItem::SlotStartEnd(_start, _end)) => {
    +                unimplemented!()
    +            }
    +            (KeyIndent::Event, FilterItem::SlotStart(start)) => {
    +                self.key(indent, KeyBuilderType::Slot(start), &KeyKind::Prefix)
    +            }
    +            (KeyIndent::Event, FilterItem::SlotEnd(end)) => {
    +                self.key(indent, KeyBuilderType::Slot(end), &KeyKind::Prefix)
    +            }
    +            (KeyIndent::EmitterAddress, FilterItem::EmitterAddress(addr)) => {
    +                self.key(indent, KeyBuilderType::Address(addr), &KeyKind::Prefix)
    +            }
    +            (KeyIndent::OriginalCallerAddress, FilterItem::OriginalCallerAddress(addr)) => {
    +                self.key(indent, KeyBuilderType::Address(addr), &KeyKind::Prefix)
    +            }
    +            (KeyIndent::OriginalOperationId, FilterItem::OriginalOperationId(op_id)) => {
    +                self.key(indent, KeyBuilderType::OperationId(op_id), &KeyKind::Prefix)
    +            }
    +            (KeyIndent::IsError, FilterItem::IsError(v)) => {
    +                self.key(indent, KeyBuilderType::Bool(*v), &KeyKind::Prefix)
    +            }
    +            _ => {
    +                unreachable!()
    +            }
    +        }
    +    }
    +
    +    /// Counter key for specific emitter_address / operation_id / ...
    +    fn counter_key_from_filter_item(
    +        &self,
    +        filter_item: &FilterItem,
    +        indent: &KeyIndent,
    +    ) -> Vec<u8> {
    +        // High level key builder function
    +        match (indent, filter_item) {
    +            (KeyIndent::Event, FilterItem::SlotStartEnd(_start, _end)) => {
    +                unimplemented!()
    +            }
    +            (KeyIndent::Event, FilterItem::SlotStart(start)) => {
    +                self.key(indent, KeyBuilderType::Slot(start), &KeyKind::Counter)
    +            }
    +            (KeyIndent::Event, FilterItem::SlotEnd(end)) => {
    +                self.key(indent, KeyBuilderType::Slot(end), &KeyKind::Counter)
    +            }
    +            (KeyIndent::EmitterAddress, FilterItem::EmitterAddress(addr)) => {
    +                self.key(indent, KeyBuilderType::Address(addr), &KeyKind::Counter)
    +            }
    +            (KeyIndent::OriginalCallerAddress, FilterItem::OriginalCallerAddress(addr)) => {
    +                self.key(indent, KeyBuilderType::Address(addr), &KeyKind::Counter)
    +            }
    +            (KeyIndent::OriginalOperationId, FilterItem::OriginalOperationId(op_id)) => self.key(
    +                indent,
    +                KeyBuilderType::OperationId(op_id),
    +                &KeyKind::Counter,
    +            ),
    +            (KeyIndent::IsError, FilterItem::IsError(v)) => {
    +                self.key(indent, KeyBuilderType::Bool(*v), &KeyKind::Counter)
    +            }
    +            _ => {
    +                unreachable!()
    +            }
    +        }
    +    }
    +}
    +
    +/// Disk based event cache db (rocksdb based)
    +pub(crate) struct EventCache {
    +    /// RocksDB database
    +    db: DB,
    +    /// How many entries are in the db. Count is initialized at creation time by iterating
    +    /// over all the entries in the db then it is maintained in memory
    +    entry_count: usize,
    +    /// Maximum number of entries we want to keep in the db.
    +    /// When this maximum is reached `snip_amount` entries are removed
    +    max_entry_count: usize,
    +    /// How many entries are removed when `entry_count` reaches `max_entry_count`
    +    snip_amount: usize,
    +    /// Event serializer
    +    event_ser: SCOutputEventSerializer,
    +    /// Event deserializer
    +    event_deser: SCOutputEventDeserializer,
    +    /// Key builder
    +    key_builder: DbKeyBuilder,
    +    /// First event slot in db
    +    first_slot: Slot,
    +    /// Last event slot in db
    +    last_slot: Slot,
    +    /// Thread count
    +    thread_count: u8,
    +    /// Maximum number of events per operation
    +    max_events_per_operation: u64,
    +    /// Maximum number of operations per block
    +    max_operations_per_block: u64,
    +    /// Max number of events returned by a query
    +    max_events_per_query: usize,
    +}
    +
    +impl EventCache {
    +    #[allow(clippy::too_many_arguments)]
    +    /// Create a new EventCache
    +    pub fn new(
    +        path: &Path,
    +        max_entry_count: usize,
    +        snip_amount: usize,
    +        thread_count: u8,
    +        max_recursive_call_depth: u16,
    +        max_event_data_length: u64,
    +        max_events_per_operation: u64,
    +        max_operations_per_block: u64,
    +        max_events_per_query: usize,
    +    ) -> Self {
    +        // Clear the db
    +        DB::destroy(&Options::default(), path).expect(DESTROY_ERROR);
    +        let options = {
    +            let mut opts = Options::default();
    +            opts.create_if_missing(true);
    +            opts.set_merge_operator_associative("counter merge operator", counter_merge);
    +            opts
    +        };
    +        let db = DB::open(&options, path).expect(OPEN_ERROR);
    +
    +        let key_builder_2 = DbKeyBuilder::new();
    +
    +        Self {
    +            db,
    +            entry_count: 0,
    +            max_entry_count,
    +            snip_amount,
    +            event_ser: SCOutputEventSerializer::new(),
    +            event_deser: SCOutputEventDeserializer::new(SCOutputEventDeserializerArgs {
    +                thread_count,
    +                max_call_stack_length: max_recursive_call_depth,
    +                max_event_data_length,
    +            }),
    +            key_builder: key_builder_2,
    +            first_slot: Slot::new(0, 0),
    +            last_slot: Slot::new(0, 0),
    +            thread_count,
    +            max_events_per_operation,
    +            max_operations_per_block,
    +            max_events_per_query,
    +        }
    +    }
    +
    +    /// From an event add keys & values into a rocksdb batch
    +    fn insert_into_batch(&mut self, event: SCOutputEvent, batch: &mut WriteBatch) {
    +        let mut event_buffer = Vec::new();
    +        self.event_ser.serialize(&event, &mut event_buffer).unwrap();
    +
    +        batch.put(
    +            self.key_builder
    +                .key_from_event(&event, &KeyIndent::Event, &KeyKind::Regular)
    +                .unwrap(),
    +            event_buffer,
    +        );
    +
    +        if let Some(key) =
    +            self.key_builder
    +                .key_from_event(&event, &KeyIndent::EmitterAddress, &KeyKind::Regular)
    +        {
    +            let key_counter = self.key_builder.key_from_event(
    +                &event,
    +                &KeyIndent::EmitterAddress,
    +                &KeyKind::Counter,
    +            );
    +            batch.put(key, vec![]);
    +            let key_counter = key_counter.expect(COUNTER_KEY_CREATION_ERROR);
    +            batch.merge(key_counter, 1i64.to_be_bytes());
    +        }
    +
    +        if let Some(key) = self.key_builder.key_from_event(
    +            &event,
    +            &KeyIndent::OriginalCallerAddress,
    +            &KeyKind::Regular,
    +        ) {
    +            let key_counter = self.key_builder.key_from_event(
    +                &event,
    +                &KeyIndent::OriginalCallerAddress,
    +                &KeyKind::Counter,
    +            );
    +            batch.put(key, vec![]);
    +            let key_counter = key_counter.expect(COUNTER_KEY_CREATION_ERROR);
    +            batch.merge(key_counter, 1i64.to_be_bytes());
    +        }
    +
    +        if let Some(key) = self.key_builder.key_from_event(
    +            &event,
    +            &KeyIndent::OriginalOperationId,
    +            &KeyKind::Regular,
    +        ) {
    +            let key_counter = self.key_builder.key_from_event(
    +                &event,
    +                &KeyIndent::OriginalOperationId,
    +                &KeyKind::Counter,
    +            );
    +            batch.put(key, vec![]);
    +            let key_counter = key_counter.expect(COUNTER_KEY_CREATION_ERROR);
    +            batch.merge(key_counter, 1i64.to_be_bytes());
    +        }
    +
    +        {
    +            if let Some(key) =
    +                self.key_builder
    +                    .key_from_event(&event, &KeyIndent::IsError, &KeyKind::Regular)
    +            {
    +                let key_counter =
    +                    self.key_builder
    +                        .key_from_event(&event, &KeyIndent::IsError, &KeyKind::Counter);
    +                let key_counter = key_counter.expect(COUNTER_KEY_CREATION_ERROR);
    +                batch.put(key, vec![]);
    +                batch.merge(key_counter, 1i64.to_be_bytes());
    +            }
    +        }
    +
    +        // Keep track of last slot (and start slot) of events in the DB
    +        // Help for event filtering
    +        self.last_slot = max(self.last_slot, event.context.slot);
    +    }
    +
    +    #[allow(dead_code)]
    +    /// Insert a new event in the cache
    +    pub fn insert(&mut self, event: SCOutputEvent) {
    +        if self.entry_count >= self.max_entry_count {
    +            self.snip(None);
    +        }
    +
    +        let mut batch = WriteBatch::default();
    +        self.insert_into_batch(event, &mut batch);
    +        self.db.write(batch).expect(CRUD_ERROR);
    +
    +        // Note:
    +        // This assumes that events are always added, never overwritten
    +        self.entry_count = self.entry_count.saturating_add(1);
    +
    +        debug!("(Event insert) entry_count is: {}", self.entry_count);
    +    }
    +
    +    /// Insert new events in the cache
    +    pub fn insert_multi_it(
    +        &mut self,
    +        events: impl ExactSizeIterator<Item = SCOutputEvent> + Clone,
    +    ) {
    +        let events_len = events.len();
    +
    +        if self.entry_count + events_len >= self.max_entry_count {
    +            let snip_amount = max(self.snip_amount, events_len);
    +            self.snip(Some(snip_amount));
    +        }
    +
    +        let mut batch = WriteBatch::default();
    +        for event in events {
    +            self.insert_into_batch(event, &mut batch);
    +        }
    +        self.db.write(batch).expect(CRUD_ERROR);
    +        // Note:
    +        // This assumes that events are always added, never overwritten
    +        self.entry_count = self.entry_count.saturating_add(events_len);
    +
    +        debug!("(Events insert) entry_count is: {}", self.entry_count);
    +    }
    +
    +    /// Get events filtered by the given argument
    +    pub(crate) fn get_filtered_sc_output_events(
    +        &self,
    +        filter: &EventFilter,
    +    ) -> (Vec<u64>, Vec<SCOutputEvent>) {
    +        // Step 1
    +        // Build a (sorted) map with key: (counter value, indent), value: filter
    +        // Will be used to iterate from the lower count index to the highest count index
    +        // e.g. if index for emitter address is 10 (index count), and origin operation id is 20
    +        //      iter over emitter address index then origin operation id index
    +
    +        let filter_items = from_event_filter(filter);
    +
    +        if filter_items.is_empty() {
    +            // Note: will return too many event - user should restrict the filter
    +            warn!("Filter item only on is final field, please add more filter parameters");
    +            return (vec![], vec![]);
    +        }
    +
    +        let it = filter_items.iter().map(|(key_indent, filter_item)| {
    +            let count = self
    +                .filter_item_estimate_count(key_indent, filter_item)
    +                .unwrap_or_else(|e| {
    +                    warn!(
    +                        "Could not estimate count for key indent: {:?} - filter_item: {:?}: {}",
    +                        key_indent, filter_item, e
    +                    );
    +                    self.max_entry_count as u64
    +                });
    +            ((count, key_indent), filter_item)
    +        });
    +
    +        let map = BTreeMap::from_iter(it);
    +        debug!("Filter items map: {:?}", map);
    +
    +        // Step 2: apply filter from the lowest counter to the highest counter
    +
    +        let mut query_counts = Vec::with_capacity(map.len());
    +        let mut filter_res_prev = None;
    +        for ((_counter, indent), filter_item) in map.iter() {
    +            let mut filter_res = BTreeSet::new();
    +            let query_count = self.filter_for(
    +                indent,
    +                filter_item,
    +                &mut filter_res,
    +                filter_res_prev.as_ref(),
    +            );
    +            query_counts.push(query_count);
    +            filter_res_prev = Some(filter_res);
    +        }
    +
    +        // Step 3: get values & deserialize
    +
    +        let multi_args = filter_res_prev
    +            .unwrap()
    +            .into_iter()
    +            .take(self.max_events_per_query)
    +            .collect::<Vec<Vec<u8>>>();
    +
    +        let res = self.db.multi_get(multi_args);
    +        debug!(
    +            "Filter will try to deserialize to SCOutputEvent {} values",
    +            res.len()
    +        );
    +
    +        let events = res
    +            .into_iter()
    +            .map(|value| {
    +                let value = value.unwrap().unwrap();
    +                let (_, event) = self
    +                    .event_deser
    +                    .deserialize::<DeserializeError>(&value)
    +                    .unwrap();
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        (query_counts, events)
    +    }
    +
    +    fn filter_for(
    +        &self,
    +        indent: &KeyIndent,
    +        filter_item: &FilterItem,
    +        result: &mut BTreeSet<Vec<u8>>,
    +        seen: Option<&BTreeSet<Vec<u8>>>,
    +    ) -> u64 {
    +        let mut query_count: u64 = 0;
    +
    +        if *indent == KeyIndent::Event {
    +            let opts = match filter_item {
    +                FilterItem::SlotStart(_start) => {
    +                    let key_start = self
    +                        .key_builder
    +                        .prefix_key_from_filter_item(filter_item, indent);
    +                    let mut options = rocksdb::ReadOptions::default();
    +                    options.set_iterate_lower_bound(key_start);
    +                    options
    +                }
    +                FilterItem::SlotEnd(_end) => {
    +                    let key_end = self
    +                        .key_builder
    +                        .prefix_key_from_filter_item(filter_item, indent);
    +                    let mut options = rocksdb::ReadOptions::default();
    +                    options.set_iterate_upper_bound(key_end);
    +                    options
    +                }
    +                FilterItem::SlotStartEnd(start, end) => {
    +                    let key_start = self
    +                        .key_builder
    +                        .prefix_key_from_filter_item(&FilterItem::SlotStart(*start), indent);
    +                    let key_end = self
    +                        .key_builder
    +                        .prefix_key_from_filter_item(&FilterItem::SlotEnd(*end), indent);
    +                    let mut options = rocksdb::ReadOptions::default();
    +                    options.set_iterate_range(key_start..key_end);
    +                    options
    +                }
    +                _ => unreachable!(),
    +            };
    +
    +            #[allow(clippy::manual_flatten)]
    +            for kvb in self.db.iterator_opt(IteratorMode::Start, opts) {
    +                if let Ok(kvb) = kvb {
    +                    if !kvb.0.starts_with(&[*indent as u8]) {
    +                        // Stop as soon as our key does not start with the right indent
    +                        break;
    +                    }
    +
    +                    let found = kvb.0.to_vec();
    +                    query_count = query_count.saturating_add(1);
    +
    +                    if let Some(filter_set_seen) = seen {
    +                        if filter_set_seen.contains(&found) {
    +                            result.insert(found);
    +                        }
    +
    +                        // We have already found as many items as in a previous search
    +                        // As we search from the lowest count to the highest count, we will never add new items
    +                        // in our result, so we can break here
    +                        if filter_set_seen.len() == result.len() {
    +                            break;
    +                        }
    +                    } else {
    +                        result.insert(found);
    +                    }
    +                }
    +            }
    +        } else {
    +            let prefix_filter = match filter_item {
    +                FilterItem::EmitterAddress(_addr) => self
    +                    .key_builder
    +                    .prefix_key_from_filter_item(filter_item, indent),
    +                FilterItem::OriginalCallerAddress(_addr) => self
    +                    .key_builder
    +                    .prefix_key_from_filter_item(filter_item, indent),
    +                FilterItem::OriginalOperationId(_op_id) => self
    +                    .key_builder
    +                    .prefix_key_from_filter_item(filter_item, indent),
    +                FilterItem::IsError(_is_error) => self
    +                    .key_builder
    +                    .prefix_key_from_filter_item(filter_item, indent),
    +                _ => unreachable!(),
    +            };
    +
    +            #[allow(clippy::manual_flatten)]
    +            for kvb in self.db.prefix_iterator(prefix_filter.as_slice()) {
    +                if let Ok(kvb) = kvb {
    +                    if !kvb.0.starts_with(&[*indent as u8]) {
    +                        // Stop as soon as our key does not start with the right indent
    +                        break;
    +                    }
    +
    +                    if !kvb.0.starts_with(prefix_filter.as_slice()) {
    +                        // Stop as soon as our key does not start with our current prefix
    +                        break;
    +                    }
    +
    +                    let found = kvb
    +                        .0
    +                        .strip_prefix(prefix_filter.as_slice())
    +                        .unwrap() // safe to unwrap() - already tested
    +                        .to_vec();
    +
    +                    query_count = query_count.saturating_add(1);
    +
    +                    if let Some(filter_set_seen) = seen {
    +                        if filter_set_seen.contains(&found) {
    +                            result.insert(found);
    +                        }
    +
    +                        // We have already found as many items as in a previous search
    +                        // As we search from the lowest count to the highest count, we will never add new items
    +                        // in our result, so we can break here
    +                        if filter_set_seen.len() == result.len() {
    +                            break;
    +                        }
    +                    } else {
    +                        result.insert(found);
    +                    }
    +                }
    +            }
    +        }
    +
    +        query_count
    +    }
    +
    +    /// Estimate for a given KeyIndent & FilterItem the number of row to iterate
    +    fn filter_item_estimate_count(
    +        &self,
    +        key_indent: &KeyIndent,
    +        filter_item: &FilterItem,
    +    ) -> Result<u64, ModelsError> {
    +        match filter_item {
    +            FilterItem::SlotStart(start) => {
    +                let diff = self.last_slot.slots_since(start, self.thread_count)?;
    +                // Note: Pessimistic estimation - should we keep an average count of events per slot
    +                //       and use that instead?
    +                Ok(diff
    +                    .saturating_mul(self.max_events_per_operation)
    +                    .saturating_mul(self.max_operations_per_block))
    +            }
    +            FilterItem::SlotStartEnd(start, end) => {
    +                let diff = end.slots_since(start, self.thread_count)?;
    +                Ok(diff
    +                    .saturating_mul(self.max_events_per_operation)
    +                    .saturating_mul(self.max_operations_per_block))
    +            }
    +            FilterItem::SlotEnd(end) => {
    +                let diff = end.slots_since(&self.first_slot, self.thread_count)?;
    +                Ok(diff
    +                    .saturating_mul(self.max_events_per_operation)
    +                    .saturating_mul(self.max_operations_per_block))
    +            }
    +            FilterItem::EmitterAddress(_addr) => {
    +                let counter_key = self
    +                    .key_builder
    +                    .counter_key_from_filter_item(filter_item, key_indent);
    +                let counter = self.db.get(counter_key).expect(COUNTER_ERROR);
    +                let counter_value = counter
    +                    .map(|b| u64::from_be_bytes(b.try_into().unwrap()))
    +                    .unwrap_or(0);
    +                Ok(counter_value)
    +            }
    +            FilterItem::OriginalCallerAddress(_addr) => {
    +                let counter_key = self
    +                    .key_builder
    +                    .counter_key_from_filter_item(filter_item, key_indent);
    +                let counter = self.db.get(counter_key).expect(COUNTER_ERROR);
    +                let counter_value = counter
    +                    .map(|b| u64::from_be_bytes(b.try_into().unwrap()))
    +                    .unwrap_or(0);
    +                Ok(counter_value)
    +            }
    +            FilterItem::OriginalOperationId(_op_id) => {
    +                let counter_key = self
    +                    .key_builder
    +                    .counter_key_from_filter_item(filter_item, key_indent);
    +                let counter = self.db.get(counter_key).expect(COUNTER_ERROR);
    +                let counter_value = counter
    +                    .map(|b| u64::from_be_bytes(b.try_into().unwrap()))
    +                    .unwrap_or(0);
    +                Ok(counter_value)
    +            }
    +            FilterItem::IsError(_is_error) => {
    +                let counter_key = self
    +                    .key_builder
    +                    .counter_key_from_filter_item(filter_item, key_indent);
    +                let counter = self.db.get(counter_key).expect(COUNTER_ERROR);
    +                let counter_value = counter
    +                    .map(|b| u64::from_be_bytes(b.try_into().unwrap()))
    +                    .unwrap_or(0);
    +                Ok(counter_value)
    +            }
    +        }
    +    }
    +
    +    /// Try to remove some entries from the db
    +    fn snip(&mut self, snip_amount: Option<usize>) {
    +        let mut iter = self.db.iterator(IteratorMode::Start);
    +        let mut batch = WriteBatch::default();
    +        let mut snipped_count: usize = 0;
    +        let snip_amount = snip_amount.unwrap_or(self.snip_amount);
    +
    +        let mut counter_keys = vec![];
    +
    +        while snipped_count < snip_amount {
    +            let key_value = iter.next();
    +            if key_value.is_none() {
    +                break;
    +            }
    +            let kvb = key_value
    +                .unwrap() // safe to unwrap - just tested it
    +                .expect(EVENT_DESER_ERROR);
    +
    +            let key = kvb.0;
    +            if !key.starts_with(&[u8::from(KeyIndent::Event)]) {
    +                continue;
    +            }
    +
    +            let (_, event) = self
    +                .event_deser
    +                .deserialize::<DeserializeError>(&kvb.1)
    +                .unwrap();
    +
    +            // delete all associated key
    +            if let Some(key) = self.key_builder.key_from_event(
    +                &event,
    +                &KeyIndent::EmitterAddress,
    +                &KeyKind::Regular,
    +            ) {
    +                let key_counter = self
    +                    .key_builder
    +                    .key_from_event(&event, &KeyIndent::EmitterAddress, &KeyKind::Counter)
    +                    .expect(COUNTER_ERROR);
    +                batch.delete(key);
    +                counter_keys.push(key_counter.clone());
    +                batch.merge(key_counter, (-1i64).to_be_bytes());
    +            }
    +            if let Some(key) = self.key_builder.key_from_event(
    +                &event,
    +                &KeyIndent::OriginalCallerAddress,
    +                &KeyKind::Regular,
    +            ) {
    +                let key_counter = self
    +                    .key_builder
    +                    .key_from_event(&event, &KeyIndent::OriginalCallerAddress, &KeyKind::Counter)
    +                    .expect(COUNTER_ERROR);
    +                batch.delete(key);
    +                counter_keys.push(key_counter.clone());
    +                batch.merge(key_counter, (-1i64).to_be_bytes());
    +            }
    +
    +            if let Some(key) = self.key_builder.key_from_event(
    +                &event,
    +                &KeyIndent::OriginalOperationId,
    +                &KeyKind::Regular,
    +            ) {
    +                let key_counter = self
    +                    .key_builder
    +                    .key_from_event(&event, &KeyIndent::OriginalOperationId, &KeyKind::Counter)
    +                    .expect(COUNTER_ERROR);
    +                batch.delete(key);
    +                counter_keys.push(key_counter.clone());
    +                batch.merge(key_counter, (-1i64).to_be_bytes());
    +            }
    +            if let Some(key) =
    +                self.key_builder
    +                    .key_from_event(&event, &KeyIndent::IsError, &KeyKind::Regular)
    +            {
    +                let key_counter = self
    +                    .key_builder
    +                    .key_from_event(&event, &KeyIndent::IsError, &KeyKind::Counter)
    +                    .expect(COUNTER_ERROR);
    +                batch.delete(key);
    +                counter_keys.push(key_counter.clone());
    +                batch.merge(key_counter, (-1i64).to_be_bytes());
    +            }
    +
    +            batch.delete(key);
    +            snipped_count += 1;
    +        }
    +
    +        // delete the key and reduce entry_count
    +        self.db.write(batch).expect(CRUD_ERROR);
    +        self.entry_count = self.entry_count.saturating_sub(snipped_count);
    +
    +        // delete key counters where value == 0
    +        let mut batch_counters = WriteBatch::default();
    +        const U64_ZERO_BYTES: [u8; 8] = 0u64.to_be_bytes();
    +        for (value, key) in self.db.multi_get(&counter_keys).iter().zip(counter_keys) {
    +            if let Ok(Some(value)) = value {
    +                if *value == U64_ZERO_BYTES.to_vec() {
    +                    batch_counters.delete(key);
    +                }
    +            }
    +        }
    +        self.db.write(batch_counters).expect(CRUD_ERROR);
    +
    +        // Update first_slot / last_slot in the DB
    +        if self.entry_count == 0 {
    +            // Reset
    +            self.first_slot = Slot::new(0, 0);
    +            self.last_slot = Slot::new(0, 0);
    +        } else {
    +            // Get the first event in the db
    +            // By using a prefix iterator this should be fast
    +
    +            let key_prefix = self.key_builder.prefix_key_from_indent(&KeyIndent::Event);
    +            let mut it_slot = self.db.prefix_iterator(key_prefix);
    +
    +            let key_value = it_slot.next();
    +            let kvb = key_value.unwrap().expect(EVENT_DESER_ERROR);
    +
    +            let (_, event) = self
    +                .event_deser
    +                .deserialize::<DeserializeError>(&kvb.1)
    +                .unwrap();
    +            self.first_slot = event.context.slot;
    +        }
    +    }
    +}
    +
    +/// A filter parameter - used to decompose an EventFilter in multiple filters
    +#[derive(Debug)]
    +enum FilterItem {
    +    SlotStart(Slot),
    +    SlotStartEnd(Slot, Slot),
    +    SlotEnd(Slot),
    +    EmitterAddress(Address),
    +    OriginalCallerAddress(Address),
    +    OriginalOperationId(OperationId),
    +    IsError(bool),
    +}
    +
    +/// Convert a EventFilter into a list of (KeyIndent, FilterItem)
    +fn from_event_filter(event_filter: &EventFilter) -> Vec<(KeyIndent, FilterItem)> {
    +    let mut filter_items = vec![];
    +    if event_filter.start.is_some() && event_filter.end.is_some() {
    +        let start = event_filter.start.unwrap();
    +        let end = event_filter.end.unwrap();
    +        filter_items.push((KeyIndent::Event, FilterItem::SlotStartEnd(start, end)));
    +    } else if event_filter.start.is_some() {
    +        let start = event_filter.start.unwrap();
    +        filter_items.push((KeyIndent::Event, FilterItem::SlotStart(start)));
    +    } else if event_filter.end.is_some() {
    +        let end = event_filter.end.unwrap();
    +        filter_items.push((KeyIndent::Event, FilterItem::SlotEnd(end)));
    +    }
    +
    +    if let Some(addr) = event_filter.emitter_address {
    +        filter_items.push((KeyIndent::EmitterAddress, FilterItem::EmitterAddress(addr)));
    +    }
    +
    +    if let Some(addr) = event_filter.original_caller_address {
    +        filter_items.push((
    +            KeyIndent::OriginalCallerAddress,
    +            FilterItem::OriginalCallerAddress(addr),
    +        ));
    +    }
    +
    +    if let Some(op_id) = event_filter.original_operation_id {
    +        filter_items.push((
    +            KeyIndent::OriginalOperationId,
    +            FilterItem::OriginalOperationId(op_id),
    +        ));
    +    }
    +
    +    if let Some(is_error) = event_filter.is_error {
    +        filter_items.push((KeyIndent::IsError, FilterItem::IsError(is_error)));
    +    }
    +
    +    filter_items
    +}
    +
    +#[cfg(test)]
    +impl EventCache {
    +    /// Iterate over all keys & values in the db - test only
    +    fn iter_all(
    +        &self,
    +        mode: Option<IteratorMode>,
    +    ) -> impl Iterator<Item = (Box<[u8]>, Box<[u8]>)> + '_ {
    +        self.db
    +            .iterator(mode.unwrap_or(IteratorMode::Start))
    +            .flatten()
    +    }
    +}
    +
    +#[cfg(test)]
    +mod tests {
    +    use super::*;
    +    // std
    +    use std::collections::VecDeque;
    +    use std::str::FromStr;
    +    // third-party
    +    use more_asserts::assert_gt;
    +    use rand::seq::SliceRandom;
    +    use rand::thread_rng;
    +    use serial_test::serial;
    +    use tempfile::TempDir;
    +    // internal
    +    use massa_models::config::{
    +        MAX_EVENT_DATA_SIZE, MAX_EVENT_PER_OPERATION, MAX_OPERATIONS_PER_BLOCK,
    +        MAX_RECURSIVE_CALLS_DEPTH, THREAD_COUNT,
    +    };
    +    use massa_models::operation::OperationId;
    +    use massa_models::output_event::EventExecutionContext;
    +    use massa_models::slot::Slot;
    +
    +    fn setup() -> EventCache {
    +        let tmp_path = TempDir::new().unwrap().path().to_path_buf();
    +        EventCache::new(
    +            &tmp_path,
    +            1000,
    +            300,
    +            THREAD_COUNT,
    +            MAX_RECURSIVE_CALLS_DEPTH,
    +            MAX_EVENT_DATA_SIZE as u64,
    +            MAX_EVENT_PER_OPERATION as u64,
    +            MAX_OPERATIONS_PER_BLOCK as u64,
    +            5000, // MAX_EVENTS_PER_QUERY,
    +        )
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_db_insert_order() {
    +        // Test that the data will be correctly ordered (when iterated from start) in db
    +
    +        let mut cache = setup();
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let max_entry_count = cache.max_entry_count - 5;
    +        let mut events = (0..max_entry_count)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = 0u64;
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in DB
    +        events.shuffle(&mut thread_rng());
    +
    +        for event in events {
    +            cache.insert(event);
    +        }
    +
    +        // Now check that we are going to iter in correct order
    +        // let db_it = cache.db_iter(Some(IteratorMode::Start));
    +        let mut prev_slot = None;
    +        let mut prev_event_index = None;
    +        for kvb in cache.iter_all(None) {
    +            let bytes = kvb.0.iter().as_slice();
    +
    +            if bytes[0] != u8::from(KeyIndent::Event) {
    +                continue;
    +            }
    +
    +            let slot = Slot::from_bytes_key(&bytes[1..=9].try_into().unwrap());
    +            let event_index = u64::from_be_bytes(bytes[10..].try_into().unwrap());
    +            if prev_slot.is_some() && prev_event_index.is_some() {
    +                assert_gt!(
    +                    (slot, event_index),
    +                    (prev_slot.unwrap(), prev_event_index.unwrap())
    +                );
    +            } else {
    +                assert_eq!(slot, slot_1);
    +                assert_eq!(event_index, index_1_0);
    +            }
    +            prev_slot = Some(slot);
    +            prev_event_index = Some(event_index);
    +        }
    +
    +        assert_eq!(prev_slot, Some(slot_2));
    +        assert_eq!(prev_event_index, Some(index_2_2));
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_insert_more_than_max_entry() {
    +        // Test insert (and snip) so we do not store too many event in the cache
    +
    +        let mut cache = setup();
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: Slot::new(1, 0),
    +                block: None,
    +                read_only: false,
    +                index_in_slot: 0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        // fill the db: add cache.max_entry_count entries
    +        for count in 0..cache.max_entry_count {
    +            let mut event = event.clone();
    +            event.context.index_in_slot = count as u64;
    +            cache.insert(event.clone());
    +        }
    +        assert_eq!(cache.entry_count, cache.max_entry_count);
    +
    +        // insert one more entry
    +        let mut event_last = event.clone();
    +        event_last.context.index_in_slot = u64::MAX;
    +        cache.insert(event_last);
    +        assert_eq!(
    +            cache.entry_count,
    +            cache.max_entry_count - cache.snip_amount + 1
    +        );
    +        dbg!(cache.entry_count);
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_insert_more_than_max_entry_2() {
    +        // Test insert_multi_it (and snip) so we do not store too many event in the cache
    +
    +        let mut cache = setup();
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: Slot::new(1, 0),
    +                block: None,
    +                read_only: false,
    +                index_in_slot: 0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let it = (0..cache.max_entry_count).map(|i| {
    +            let mut event = event.clone();
    +            event.context.index_in_slot = i as u64;
    +            event
    +        });
    +        cache.insert_multi_it(it);
    +
    +        assert_eq!(cache.entry_count, cache.max_entry_count);
    +
    +        // insert one more entry
    +        let mut event_last = event.clone();
    +        event_last.context.index_in_slot = u64::MAX;
    +        cache.insert(event_last);
    +        assert_eq!(
    +            cache.entry_count,
    +            cache.max_entry_count - cache.snip_amount + 1
    +        );
    +        dbg!(cache.entry_count);
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_snip() {
    +        // Test snip so we enforce that all db keys are removed
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: Slot::new(1, 0),
    +                block: None,
    +                read_only: false,
    +                index_in_slot: 0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let it = (0..cache.max_entry_count).map(|i| {
    +            let mut event = event.clone();
    +            event.context.index_in_slot = i as u64;
    +            event
    +        });
    +        cache.insert_multi_it(it);
    +
    +        assert_eq!(cache.entry_count, cache.max_entry_count);
    +
    +        cache.snip(Some(cache.entry_count));
    +
    +        assert_eq!(cache.entry_count, 0);
    +        assert_eq!(cache.iter_all(None).count(), 0);
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_counter_0() {
    +        // Test snip so we enforce that all db keys are removed
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let dummy_addr =
    +            Address::from_str("AU12qePoXhNbYWE1jZuafqJong7bbq1jw3k89RgbMawbrdZpaasoA").unwrap();
    +        let emit_addr_1 =
    +            Address::from_str("AU122Em8qkqegdLb1eyH8rdkSCNEf7RZLeTJve4Q2inRPGiTJ2xNv").unwrap();
    +        let emit_addr_2 =
    +            Address::from_str("AU12WuVR1Td74q9eAbtYZUnk5jnRbUuUacyhQFwm217bV5v1mNqTZ").unwrap();
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: Slot::new(1, 0),
    +                block: None,
    +                read_only: false,
    +                index_in_slot: 0,
    +                call_stack: VecDeque::from(vec![dummy_addr, emit_addr_1]),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let event_2 = {
    +            let mut evt = event.clone();
    +            evt.context.slot = Slot::new(2, 0);
    +            evt.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            evt
    +        };
    +
    +        cache.insert_multi_it([event, event_2].into_iter());
    +
    +        // Check counters key length
    +        let key_counters = cache
    +            .key_builder
    +            .prefix_key_from_indent(&KeyIndent::Counter);
    +        let kvbs: Result<Vec<(_, _)>, _> = cache
    +            .db
    +            .prefix_iterator(key_counters)
    +            .take_while(|kvb| {
    +                kvb.as_ref()
    +                    .unwrap()
    +                    .0
    +                    .starts_with(&[u8::from(KeyIndent::Counter)])
    +            })
    +            .collect();
    +        // println!("kvbs: {:#?}", kvbs);
    +
    +        // Expected 4 counters:
    +        // 2 for emitter address (emit_addr_1 & emit_addr_2)
    +        // 1 for original caller address (dummy_addr)
    +        // 1 for is_error(false)
    +        assert_eq!(kvbs.unwrap().len(), 4);
    +
    +        let key_counter_1 = cache.key_builder.counter_key_from_filter_item(
    +            &FilterItem::EmitterAddress(emit_addr_1),
    +            &KeyIndent::EmitterAddress,
    +        );
    +        let key_counter_2 = cache.key_builder.counter_key_from_filter_item(
    +            &FilterItem::EmitterAddress(emit_addr_2),
    +            &KeyIndent::EmitterAddress,
    +        );
    +
    +        let v1 = cache.db.get(key_counter_1.clone());
    +        let v2 = cache.db.get(key_counter_2.clone());
    +
    +        // println!("v1: {:?} - v2: {:?}", v1, v2);
    +        assert_eq!(v1, Ok(Some(1u64.to_be_bytes().to_vec())));
    +        assert_eq!(v2, Ok(Some(1u64.to_be_bytes().to_vec())));
    +
    +        cache.snip(Some(1));
    +
    +        let v1 = cache.db.get(key_counter_1);
    +        let v2 = cache.db.get(key_counter_2);
    +
    +        // println!("v1: {:?} - v2: {:?}", v1, v2);
    +        assert_eq!(v1, Ok(None)); // counter has been removed
    +        assert_eq!(v2, Ok(Some(1u64.to_be_bytes().to_vec())));
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_event_filter() {
    +        // Test that the data will be correctly ordered (when filtered) in db
    +
    +        let mut cache = setup();
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let mut events = (0..cache.max_entry_count - 5)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let index_2_1 = 0u64;
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_1;
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in the DB
    +        events.shuffle(&mut thread_rng());
    +
    +        cache.insert_multi_it(events.into_iter());
    +
    +        let filter_1 = EventFilter {
    +            start: Some(Slot::new(2, 0)),
    +            ..Default::default()
    +        };
    +
    +        let (_, filtered_events_1) = cache.get_filtered_sc_output_events(&filter_1);
    +
    +        assert_eq!(filtered_events_1.len(), 2);
    +        assert_eq!(filtered_events_1[0].context.slot, slot_2);
    +        assert_eq!(filtered_events_1[0].context.index_in_slot, index_2_1);
    +        assert_eq!(filtered_events_1[1].context.slot, slot_2);
    +        assert_eq!(filtered_events_1[1].context.index_in_slot, index_2_2);
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_event_filter_2() {
    +        // Test get_filtered_sc_output_events + op id
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +        let op_id_1 =
    +            OperationId::from_str("O12n1vt8uTLh3H65J4TVuztaWfBh3oumjjVtRCkke7Ba5qWdXdjD").unwrap();
    +        let op_id_2 =
    +            OperationId::from_str("O1p5P691KF672fQ8tQougxzSERBwDKZF8FwtkifMSJbP14sEuGc").unwrap();
    +        let op_id_unknown =
    +            OperationId::from_str("O1kvXTfsnVbQcmDERkC89vqAd2xRTLCb3q5b2E5WaVPHwFd7Qth").unwrap();
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: Some(op_id_1),
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let mut events = (0..cache.max_entry_count - 5)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let index_2_1 = 0u64;
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_1;
    +            event.context.origin_operation_id = Some(op_id_2);
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event.context.origin_operation_id = Some(op_id_2);
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in the DB
    +        events.shuffle(&mut thread_rng());
    +        cache.insert_multi_it(events.into_iter());
    +
    +        let mut filter_1 = EventFilter {
    +            original_operation_id: Some(op_id_1),
    +            ..Default::default()
    +        };
    +
    +        let (_, filtered_events_1) = cache.get_filtered_sc_output_events(&filter_1);
    +
    +        assert_eq!(filtered_events_1.len(), cache.max_entry_count - 5);
    +        filtered_events_1.iter().enumerate().for_each(|(i, event)| {
    +            assert_eq!(event.context.slot, slot_1);
    +            assert_eq!(event.context.index_in_slot, i as u64);
    +        });
    +
    +        {
    +            filter_1.original_operation_id = Some(op_id_2);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), 2);
    +            filtered_events_2.iter().enumerate().for_each(|(i, event)| {
    +                assert_eq!(event.context.slot, slot_2);
    +                if i == 0 {
    +                    assert_eq!(event.context.index_in_slot, i as u64);
    +                } else {
    +                    assert_eq!(event.context.index_in_slot, 256u64);
    +                }
    +            });
    +        }
    +
    +        {
    +            filter_1.original_operation_id = Some(op_id_unknown);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), 0);
    +        }
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_event_filter_3() {
    +        // Test get_filtered_sc_output_events + emitter address
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +
    +        let dummy_addr =
    +            Address::from_str("AU12qePoXhNbYWE1jZuafqJong7bbq1jw3k89RgbMawbrdZpaasoA").unwrap();
    +        let emit_addr_1 =
    +            Address::from_str("AU122Em8qkqegdLb1eyH8rdkSCNEf7RZLeTJve4Q2inRPGiTJ2xNv").unwrap();
    +        let emit_addr_2 =
    +            Address::from_str("AU12WuVR1Td74q9eAbtYZUnk5jnRbUuUacyhQFwm217bV5v1mNqTZ").unwrap();
    +        let emit_addr_unknown =
    +            Address::from_str("AU1zLC4TFUiaKDg7quQyusMPQcHT4ykWVs3FsFpuhdNSmowUG2As").unwrap();
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let to_insert_count = cache.max_entry_count - 5;
    +        let threshold = to_insert_count / 2;
    +        let mut events = (0..cache.max_entry_count - 5)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                if i < threshold {
    +                    event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_1]);
    +                } else {
    +                    event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +                }
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let index_2_1 = 0u64;
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_1;
    +            event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in the DB
    +        events.shuffle(&mut thread_rng());
    +
    +        cache.insert_multi_it(events.into_iter());
    +
    +        let mut filter_1 = EventFilter {
    +            emitter_address: Some(emit_addr_1),
    +            ..Default::default()
    +        };
    +
    +        let (_, filtered_events_1) = cache.get_filtered_sc_output_events(&filter_1);
    +
    +        assert_eq!(filtered_events_1.len(), threshold);
    +        filtered_events_1.iter().for_each(|event| {
    +            assert_eq!(event.context.slot, slot_1);
    +            assert_eq!(*event.context.call_stack.back().unwrap(), emit_addr_1)
    +        });
    +
    +        // filter with emit_addr_2
    +        {
    +            filter_1.emitter_address = Some(emit_addr_2);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), threshold + 1 + 2);
    +            filtered_events_2.iter().for_each(|event| {
    +                assert_eq!(*event.context.call_stack.back().unwrap(), emit_addr_2)
    +            });
    +        }
    +        // filter with dummy_addr
    +        {
    +            filter_1.emitter_address = Some(dummy_addr);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), 0);
    +        }
    +        // filter with address that is not in the DB
    +        {
    +            filter_1.emitter_address = Some(emit_addr_unknown);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), 0);
    +        }
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_event_filter_4() {
    +        // Test get_filtered_sc_output_events + original caller addr
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +
    +        let dummy_addr =
    +            Address::from_str("AU12qePoXhNbYWE1jZuafqJong7bbq1jw3k89RgbMawbrdZpaasoA").unwrap();
    +        let caller_addr_1 =
    +            Address::from_str("AU122Em8qkqegdLb1eyH8rdkSCNEf7RZLeTJve4Q2inRPGiTJ2xNv").unwrap();
    +        let caller_addr_2 =
    +            Address::from_str("AU12WuVR1Td74q9eAbtYZUnk5jnRbUuUacyhQFwm217bV5v1mNqTZ").unwrap();
    +        let caller_addr_unknown =
    +            Address::from_str("AU1zLC4TFUiaKDg7quQyusMPQcHT4ykWVs3FsFpuhdNSmowUG2As").unwrap();
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let to_insert_count = cache.max_entry_count - 5;
    +        let threshold = to_insert_count / 2;
    +        let mut events = (0..cache.max_entry_count - 5)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                if i < threshold {
    +                    event.context.call_stack = VecDeque::from(vec![caller_addr_1, dummy_addr]);
    +                } else {
    +                    event.context.call_stack = VecDeque::from(vec![caller_addr_2, dummy_addr]);
    +                }
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let index_2_1 = 0u64;
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_1;
    +            event.context.call_stack = VecDeque::from(vec![caller_addr_2, dummy_addr]);
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event.context.call_stack = VecDeque::from(vec![caller_addr_2, dummy_addr]);
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in the DB
    +        events.shuffle(&mut thread_rng());
    +        cache.insert_multi_it(events.into_iter());
    +
    +        let mut filter_1 = EventFilter {
    +            original_caller_address: Some(caller_addr_1),
    +            ..Default::default()
    +        };
    +
    +        let (_, filtered_events_1) = cache.get_filtered_sc_output_events(&filter_1);
    +
    +        assert_eq!(filtered_events_1.len(), threshold);
    +        filtered_events_1.iter().for_each(|event| {
    +            assert_eq!(event.context.slot, slot_1);
    +            assert_eq!(*event.context.call_stack.front().unwrap(), caller_addr_1);
    +        });
    +
    +        {
    +            filter_1.original_caller_address = Some(caller_addr_2);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), threshold + 1 + 2);
    +            filtered_events_2.iter().for_each(|event| {
    +                assert_eq!(*event.context.call_stack.front().unwrap(), caller_addr_2);
    +            });
    +        }
    +        {
    +            filter_1.original_caller_address = Some(dummy_addr);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), 0);
    +        }
    +        {
    +            filter_1.original_caller_address = Some(caller_addr_unknown);
    +            let (_, filtered_events_2) = cache.get_filtered_sc_output_events(&filter_1);
    +            assert_eq!(filtered_events_2.len(), 0);
    +        }
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_event_filter_5() {
    +        // Test get_filtered_sc_output_events + is error
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +
    +        let dummy_addr =
    +            Address::from_str("AU12qePoXhNbYWE1jZuafqJong7bbq1jw3k89RgbMawbrdZpaasoA").unwrap();
    +        let emit_addr_1 =
    +            Address::from_str("AU122Em8qkqegdLb1eyH8rdkSCNEf7RZLeTJve4Q2inRPGiTJ2xNv").unwrap();
    +        let emit_addr_2 =
    +            Address::from_str("AU12WuVR1Td74q9eAbtYZUnk5jnRbUuUacyhQFwm217bV5v1mNqTZ").unwrap();
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let to_insert_count = cache.max_entry_count - 5;
    +        let threshold = to_insert_count / 2;
    +        let mut events = (0..cache.max_entry_count - 5)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                if i < threshold {
    +                    event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_1]);
    +                } else {
    +                    event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +                }
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let index_2_1 = 0u64;
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_1;
    +            event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            event.context.is_error = true;
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in the DB
    +        events.shuffle(&mut thread_rng());
    +        cache.insert_multi_it(events.into_iter());
    +
    +        let filter_1 = EventFilter {
    +            is_error: Some(true),
    +            ..Default::default()
    +        };
    +
    +        let (_, filtered_events_1) = cache.get_filtered_sc_output_events(&filter_1);
    +        assert_eq!(filtered_events_1.len(), 1);
    +        assert!(filtered_events_1[0].context.is_error);
    +        assert_eq!(filtered_events_1[0].context.slot, slot_2);
    +        assert_eq!(filtered_events_1[0].context.index_in_slot, index_2_2);
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_filter_optimisations() {
    +        // Test we iterate over the right number of rows when filtering
    +
    +        let mut cache = setup();
    +        cache.max_entry_count = 10;
    +
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +
    +        let dummy_addr =
    +            Address::from_str("AU12qePoXhNbYWE1jZuafqJong7bbq1jw3k89RgbMawbrdZpaasoA").unwrap();
    +        let emit_addr_1 =
    +            Address::from_str("AU122Em8qkqegdLb1eyH8rdkSCNEf7RZLeTJve4Q2inRPGiTJ2xNv").unwrap();
    +        let emit_addr_2 =
    +            Address::from_str("AU12WuVR1Td74q9eAbtYZUnk5jnRbUuUacyhQFwm217bV5v1mNqTZ").unwrap();
    +
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: true,
    +            },
    +            data: "error foo bar".to_string(),
    +        };
    +
    +        let to_insert_count = cache.max_entry_count - 5;
    +        let threshold = to_insert_count / 2;
    +        let mut events = (0..cache.max_entry_count - 5)
    +            .map(|i| {
    +                let mut event = event.clone();
    +                event.context.index_in_slot = i as u64;
    +                if i < threshold {
    +                    event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_1]);
    +                } else {
    +                    event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +                }
    +                event
    +            })
    +            .collect::<Vec<SCOutputEvent>>();
    +
    +        let slot_2 = Slot::new(2, 0);
    +        let index_2_1 = 0u64;
    +        let event_slot_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_1;
    +            event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            event
    +        };
    +        let index_2_2 = 256u64;
    +        let event_slot_2_2 = {
    +            let mut event = event.clone();
    +            event.context.slot = slot_2;
    +            event.context.index_in_slot = index_2_2;
    +            event.context.call_stack = VecDeque::from(vec![dummy_addr, emit_addr_2]);
    +            // event.context.is_error = true;
    +            event
    +        };
    +        events.push(event_slot_2.clone());
    +        events.push(event_slot_2_2.clone());
    +        // Randomize the events so we insert in random orders in the DB
    +        events.shuffle(&mut thread_rng());
    +        cache.insert_multi_it(events.into_iter());
    +
    +        // Check if we correctly count the number of events in the DB with emit_addr_1 & emit_addr_2
    +        let emit_addr_1_count = cache
    +            .filter_item_estimate_count(
    +                &KeyIndent::EmitterAddress,
    +                &FilterItem::EmitterAddress(emit_addr_1),
    +            )
    +            .unwrap();
    +        let emit_addr_2_count = cache
    +            .filter_item_estimate_count(
    +                &KeyIndent::EmitterAddress,
    +                &FilterItem::EmitterAddress(emit_addr_2),
    +            )
    +            .unwrap();
    +
    +        assert_eq!(emit_addr_1_count, (threshold) as u64);
    +        assert_eq!(emit_addr_2_count, (threshold + 1 + 2) as u64);
    +
    +        // Check if we query first by emitter address then is_error
    +
    +        let filter_1 = EventFilter {
    +            emitter_address: Some(emit_addr_1),
    +            is_error: Some(true),
    +            ..Default::default()
    +        };
    +
    +        let (query_counts, _filtered_events_1) = cache.get_filtered_sc_output_events(&filter_1);
    +        println!("threshold: {:?}", threshold);
    +        println!("query_counts: {:?}", query_counts);
    +
    +        // Check that we iter no more than needed (here: only 2 (== threshold) event with emit addr 1)
    +        assert_eq!(query_counts[0], threshold as u64);
    +        // For second filter (is_error) we could have iter more (all events have is_error = true)
    +        // but as soon as we found 2 items we could return (as the previous filter already limit the final count)
    +        assert_eq!(query_counts[1], threshold as u64);
    +    }
    +}
    +
    \ No newline at end of file diff --git a/src/massa_event_cache/lib.rs.html b/src/massa_event_cache/lib.rs.html new file mode 100644 index 00000000000..9ef9d3e569b --- /dev/null +++ b/src/massa_event_cache/lib.rs.html @@ -0,0 +1,21 @@ +lib.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +
    pub mod config;
    +
    +pub mod controller;
    +mod event_cache;
    +mod rocksdb_operator;
    +mod ser_deser;
    +pub mod worker;
    +
    +#[cfg(feature = "test-exports")]
    +pub use controller::{MockEventCacheController, MockEventCacheControllerWrapper};
    +
    \ No newline at end of file diff --git a/src/massa_event_cache/rocksdb_operator.rs.html b/src/massa_event_cache/rocksdb_operator.rs.html new file mode 100644 index 00000000000..4cbc823e366 --- /dev/null +++ b/src/massa_event_cache/rocksdb_operator.rs.html @@ -0,0 +1,221 @@ +rocksdb_operator.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
    +87
    +88
    +89
    +90
    +91
    +92
    +93
    +94
    +95
    +96
    +97
    +98
    +99
    +100
    +101
    +102
    +103
    +104
    +105
    +106
    +107
    +108
    +109
    +110
    +
    use rocksdb::MergeOperands;
    +
    +pub fn counter_merge(
    +    _key: &[u8],
    +    existing_val: Option<&[u8]>,
    +    operands: &MergeOperands,
    +) -> Option<Vec<u8>> {
    +    let counter_current_value = if let Some(existing_val) = existing_val {
    +        u64::from_be_bytes(existing_val.try_into().unwrap())
    +    } else {
    +        0
    +    };
    +
    +    let counter_value = operands.iter().fold(counter_current_value, |mut acc, x| {
    +        let incr_value = i64::from_be_bytes(x.try_into().unwrap());
    +        acc = acc.saturating_add_signed(incr_value);
    +        acc
    +    });
    +
    +    Some(counter_value.to_be_bytes().to_vec())
    +}
    +
    +#[cfg(test)]
    +mod tests {
    +    use super::*;
    +    // std
    +    // third-party
    +    use rocksdb::{Options, DB};
    +    use serial_test::serial;
    +    use tempfile::TempDir;
    +
    +    #[test]
    +    #[serial]
    +    fn test_operator() {
    +        let tmp_path = TempDir::new().unwrap().path().to_path_buf();
    +        let options = {
    +            let mut opts = Options::default();
    +            opts.create_if_missing(true);
    +            opts.set_merge_operator_associative("counter merge operator", counter_merge);
    +            opts
    +        };
    +        let db = DB::open(&options, tmp_path).unwrap();
    +        let key_1 = "foo1";
    +        let key_2 = "baz42";
    +        db.put(key_1, 0u64.to_be_bytes()).unwrap();
    +        db.put(key_2, 0u64.to_be_bytes()).unwrap();
    +
    +        let value = db.get(key_1).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value.try_into().unwrap()), 0);
    +        let value2 = db.get(key_2).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value2.try_into().unwrap()), 0);
    +
    +        // key_1 counter += 1
    +        db.merge(key_1, 1i64.to_be_bytes()).unwrap();
    +
    +        let value = db.get(key_1).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value.try_into().unwrap()), 1);
    +        let value2 = db.get(key_2).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value2.try_into().unwrap()), 0);
    +
    +        // key_2 counter += 9
    +        db.merge(key_2, 9i64.to_be_bytes()).unwrap();
    +        // key_2 counter += 1
    +        db.merge(key_2, 1i64.to_be_bytes()).unwrap();
    +        // key_2 counter += 32
    +        db.merge(key_2, 32i64.to_be_bytes()).unwrap();
    +
    +        let value = db.get(key_1).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value.try_into().unwrap()), 1);
    +        let value2 = db.get(key_2).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value2.try_into().unwrap()), 42);
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_operator_2() {
    +        let tmp_path = TempDir::new().unwrap().path().to_path_buf();
    +        let options = {
    +            let mut opts = Options::default();
    +            opts.create_if_missing(true);
    +            opts.set_merge_operator_associative("counter merge operator", counter_merge);
    +            opts
    +        };
    +        let db = DB::open(&options, tmp_path).unwrap();
    +        let key_1 = "foo1";
    +        let key_2 = "baz42";
    +        db.put(key_1, 0u64.to_be_bytes()).unwrap();
    +        db.put(key_2, 0u64.to_be_bytes()).unwrap();
    +
    +        let value = db.get(key_1).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value.try_into().unwrap()), 0);
    +        let value2 = db.get(key_2).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value2.try_into().unwrap()), 0);
    +
    +        // key_1 counter += 1
    +        db.merge(key_1, 1i64.to_be_bytes()).unwrap();
    +
    +        let value = db.get(key_1).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value.try_into().unwrap()), 1);
    +        let value2 = db.get(key_2).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value2.try_into().unwrap()), 0);
    +
    +        db.merge(key_1, (-3i64).to_be_bytes()).unwrap();
    +
    +        let value = db.get(key_1).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value.try_into().unwrap()), 0);
    +        let value2 = db.get(key_2).unwrap().unwrap();
    +        assert_eq!(u64::from_be_bytes(value2.try_into().unwrap()), 0);
    +    }
    +}
    +
    \ No newline at end of file diff --git a/src/massa_event_cache/ser_deser.rs.html b/src/massa_event_cache/ser_deser.rs.html new file mode 100644 index 00000000000..b3cd7ce3c86 --- /dev/null +++ b/src/massa_event_cache/ser_deser.rs.html @@ -0,0 +1,609 @@ +ser_deser.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
    +87
    +88
    +89
    +90
    +91
    +92
    +93
    +94
    +95
    +96
    +97
    +98
    +99
    +100
    +101
    +102
    +103
    +104
    +105
    +106
    +107
    +108
    +109
    +110
    +111
    +112
    +113
    +114
    +115
    +116
    +117
    +118
    +119
    +120
    +121
    +122
    +123
    +124
    +125
    +126
    +127
    +128
    +129
    +130
    +131
    +132
    +133
    +134
    +135
    +136
    +137
    +138
    +139
    +140
    +141
    +142
    +143
    +144
    +145
    +146
    +147
    +148
    +149
    +150
    +151
    +152
    +153
    +154
    +155
    +156
    +157
    +158
    +159
    +160
    +161
    +162
    +163
    +164
    +165
    +166
    +167
    +168
    +169
    +170
    +171
    +172
    +173
    +174
    +175
    +176
    +177
    +178
    +179
    +180
    +181
    +182
    +183
    +184
    +185
    +186
    +187
    +188
    +189
    +190
    +191
    +192
    +193
    +194
    +195
    +196
    +197
    +198
    +199
    +200
    +201
    +202
    +203
    +204
    +205
    +206
    +207
    +208
    +209
    +210
    +211
    +212
    +213
    +214
    +215
    +216
    +217
    +218
    +219
    +220
    +221
    +222
    +223
    +224
    +225
    +226
    +227
    +228
    +229
    +230
    +231
    +232
    +233
    +234
    +235
    +236
    +237
    +238
    +239
    +240
    +241
    +242
    +243
    +244
    +245
    +246
    +247
    +248
    +249
    +250
    +251
    +252
    +253
    +254
    +255
    +256
    +257
    +258
    +259
    +260
    +261
    +262
    +263
    +264
    +265
    +266
    +267
    +268
    +269
    +270
    +271
    +272
    +273
    +274
    +275
    +276
    +277
    +278
    +279
    +280
    +281
    +282
    +283
    +284
    +285
    +286
    +287
    +288
    +289
    +290
    +291
    +292
    +293
    +294
    +295
    +296
    +297
    +298
    +299
    +300
    +301
    +302
    +303
    +304
    +
    use std::collections::Bound::{Excluded, Included};
    +use std::collections::VecDeque;
    +// third-party
    +use nom::{
    +    bytes::complete::take,
    +    error::{context, ContextError, ParseError},
    +    multi::length_count,
    +    sequence::tuple,
    +    IResult, Parser,
    +};
    +// internal
    +use massa_models::address::{AddressDeserializer, AddressSerializer};
    +use massa_models::block_id::{BlockId, BlockIdDeserializer, BlockIdSerializer};
    +use massa_models::operation::{OperationId, OperationIdDeserializer, OperationIdSerializer};
    +use massa_models::output_event::{EventExecutionContext, SCOutputEvent};
    +use massa_models::serialization::{StringDeserializer, StringSerializer};
    +use massa_models::slot::{SlotDeserializer, SlotSerializer};
    +use massa_serialization::{
    +    Deserializer, OptionDeserializer, OptionSerializer, SerializeError, Serializer,
    +    U32VarIntDeserializer, U32VarIntSerializer, U64VarIntDeserializer, U64VarIntSerializer,
    +};
    +
    +/// Metadata serializer
    +pub struct SCOutputEventSerializer {
    +    index_in_slot_ser: U64VarIntSerializer,
    +    addr_len_ser: U32VarIntSerializer,
    +    slot_ser: SlotSerializer,
    +    addr_ser: AddressSerializer,
    +    block_id_ser: OptionSerializer<BlockId, BlockIdSerializer>,
    +    op_id_ser: OptionSerializer<OperationId, OperationIdSerializer>,
    +    data_ser: StringSerializer<U64VarIntSerializer, u64>,
    +}
    +
    +impl SCOutputEventSerializer {
    +    pub fn new() -> Self {
    +        Self {
    +            index_in_slot_ser: U64VarIntSerializer::new(),
    +            addr_len_ser: U32VarIntSerializer::new(),
    +            slot_ser: SlotSerializer::new(),
    +            addr_ser: AddressSerializer::new(),
    +            block_id_ser: OptionSerializer::new(BlockIdSerializer::new()),
    +            op_id_ser: OptionSerializer::new(OperationIdSerializer::new()),
    +            data_ser: StringSerializer::new(U64VarIntSerializer::new()),
    +        }
    +    }
    +}
    +
    +impl Default for SCOutputEventSerializer {
    +    fn default() -> Self {
    +        Self::new()
    +    }
    +}
    +
    +impl Serializer<SCOutputEvent> for SCOutputEventSerializer {
    +    fn serialize(&self, value: &SCOutputEvent, buffer: &mut Vec<u8>) -> Result<(), SerializeError> {
    +        // context
    +        self.slot_ser.serialize(&value.context.slot, buffer)?;
    +        self.block_id_ser.serialize(&value.context.block, buffer)?;
    +        buffer.push(u8::from(value.context.read_only));
    +        self.index_in_slot_ser
    +            .serialize(&value.context.index_in_slot, buffer)?;
    +        // Components
    +        let call_stack_len_ = value.context.call_stack.len();
    +        let call_stack_len = u32::try_from(call_stack_len_).map_err(|_| {
    +            SerializeError::GeneralError(format!(
    +                "Cannot convert component_len ({}) to u32",
    +                call_stack_len_
    +            ))
    +        })?;
    +        // ser vec len
    +        self.addr_len_ser.serialize(&call_stack_len, buffer)?;
    +        for address in value.context.call_stack.iter() {
    +            self.addr_ser.serialize(address, buffer)?;
    +        }
    +        self.op_id_ser
    +            .serialize(&value.context.origin_operation_id, buffer)?;
    +        buffer.push(u8::from(value.context.is_final));
    +        buffer.push(u8::from(value.context.is_error));
    +
    +        // data
    +        self.data_ser.serialize(&value.data, buffer)?;
    +        Ok(())
    +    }
    +}
    +
    +/// SCOutputEvent deserializer
    +pub struct SCOutputEventDeserializer {
    +    index_in_slot_deser: U64VarIntDeserializer,
    +    addr_len_deser: U32VarIntDeserializer,
    +    slot_deser: SlotDeserializer,
    +    addr_deser: AddressDeserializer,
    +    block_id_deser: OptionDeserializer<BlockId, BlockIdDeserializer>,
    +    op_id_deser: OptionDeserializer<OperationId, OperationIdDeserializer>,
    +    data_deser: StringDeserializer<U64VarIntDeserializer, u64>,
    +}
    +
    +impl SCOutputEventDeserializer {
    +    pub fn new(args: SCOutputEventDeserializerArgs) -> Self {
    +        Self {
    +            index_in_slot_deser: U64VarIntDeserializer::new(Included(0), Included(u64::MAX)),
    +            addr_len_deser: U32VarIntDeserializer::new(
    +                Included(0),
    +                Included(u32::from(args.max_call_stack_length)),
    +            ),
    +            slot_deser: SlotDeserializer::new(
    +                (Included(0), Included(u64::MAX)),
    +                (Included(0), Excluded(args.thread_count)),
    +            ),
    +            addr_deser: Default::default(),
    +            block_id_deser: OptionDeserializer::new(BlockIdDeserializer::new()),
    +            op_id_deser: OptionDeserializer::new(OperationIdDeserializer::new()),
    +            data_deser: StringDeserializer::new(U64VarIntDeserializer::new(
    +                Included(0),
    +                Included(args.max_event_data_length),
    +            )),
    +        }
    +    }
    +}
    +
    +impl Deserializer<SCOutputEvent> for SCOutputEventDeserializer {
    +    fn deserialize<'a, E: ParseError<&'a [u8]> + ContextError<&'a [u8]>>(
    +        &self,
    +        buffer: &'a [u8],
    +    ) -> IResult<&'a [u8], SCOutputEvent, E> {
    +        context(
    +            "Failed ScOutputEvent deserialization",
    +            tuple((
    +                context("Failed slot deserialization", |input| {
    +                    self.slot_deser.deserialize(input)
    +                }),
    +                context("Failed BlockId deserialization", |input| {
    +                    self.block_id_deser.deserialize(input)
    +                }),
    +                context("Failed read_only deserialization", |input: &'a [u8]| {
    +                    let (rem, read_only) = take(1usize)(input)?;
    +                    let read_only = match read_only.first() {
    +                        None => {
    +                            return IResult::Err(nom::Err::Error(ParseError::from_error_kind(
    +                                input,
    +                                nom::error::ErrorKind::Fail,
    +                            )));
    +                        }
    +                        Some(0) => false,
    +                        _ => true,
    +                    };
    +                    IResult::Ok((rem, read_only))
    +                }),
    +                context("Failed index_in_slot deser", |input| {
    +                    self.index_in_slot_deser.deserialize(input)
    +                }),
    +                length_count(
    +                    context("Failed call stack entry count deser", |input| {
    +                        self.addr_len_deser.deserialize(input)
    +                    }),
    +                    context("Failed call stack items deser", |input| {
    +                        self.addr_deser.deserialize(input)
    +                    }),
    +                ),
    +                context("Failed OperationId deserialization", |input| {
    +                    self.op_id_deser.deserialize(input)
    +                }),
    +                context("Failed is_final deserialization", |input: &'a [u8]| {
    +                    let (rem, read_only) = take(1usize)(input)?;
    +                    let read_only = match read_only.first() {
    +                        None => {
    +                            return IResult::Err(nom::Err::Error(ParseError::from_error_kind(
    +                                input,
    +                                nom::error::ErrorKind::Fail,
    +                            )));
    +                        }
    +                        Some(0) => false,
    +                        _ => true,
    +                    };
    +                    IResult::Ok((rem, read_only))
    +                }),
    +                context("Failed is_error deserialization", |input: &'a [u8]| {
    +                    let (rem, read_only) = take(1usize)(input)?;
    +                    let read_only = match read_only.first() {
    +                        None => {
    +                            return IResult::Err(nom::Err::Error(ParseError::from_error_kind(
    +                                input,
    +                                nom::error::ErrorKind::Fail,
    +                            )));
    +                        }
    +                        Some(0) => false,
    +                        _ => true,
    +                    };
    +                    IResult::Ok((rem, read_only))
    +                }),
    +                context("Failed data deserialization", |input| {
    +                    self.data_deser.deserialize(input)
    +                }),
    +            )),
    +        )
    +        .map(
    +            |(slot, bid, read_only, idx, call_stack, oid, is_final, is_error, data)| {
    +                SCOutputEvent {
    +                    context: EventExecutionContext {
    +                        slot,
    +                        block: bid,
    +                        read_only,
    +                        index_in_slot: idx,
    +                        call_stack: VecDeque::from(call_stack),
    +                        origin_operation_id: oid,
    +                        is_final,
    +                        is_error,
    +                    },
    +                    data,
    +                }
    +            },
    +        )
    +        .parse(buffer)
    +    }
    +}
    +
    +/// SCOutputEvent deserializer args
    +#[allow(missing_docs)]
    +pub struct SCOutputEventDeserializerArgs {
    +    pub thread_count: u8,
    +    pub max_call_stack_length: u16,
    +    pub max_event_data_length: u64,
    +}
    +
    +#[cfg(test)]
    +mod test {
    +    use super::*;
    +    use massa_models::slot::Slot;
    +    use massa_serialization::DeserializeError;
    +    use serial_test::serial;
    +
    +    #[test]
    +    #[serial]
    +    fn test_sc_output_event_ser_der() {
    +        let slot_1 = Slot::new(1, 0);
    +        let index_1_0 = 0;
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let event_ser = SCOutputEventSerializer::new();
    +        let event_deser = SCOutputEventDeserializer::new(SCOutputEventDeserializerArgs {
    +            thread_count: 16,
    +            max_call_stack_length: 25,
    +            max_event_data_length: 512,
    +        });
    +
    +        let mut buffer = Vec::new();
    +        event_ser.serialize(&event, &mut buffer).unwrap();
    +
    +        let (rem, event_new) = event_deser
    +            .deserialize::<DeserializeError>(&buffer)
    +            .unwrap();
    +
    +        assert_eq!(event.context, event_new.context);
    +        assert_eq!(event.data, event_new.data);
    +        assert!(rem.is_empty());
    +    }
    +
    +    #[test]
    +    #[serial]
    +    fn test_sc_output_event_ser_der_err() {
    +        // Test serialization / deserialization with a slot with thread too high
    +
    +        let slot_1 = Slot::new(1, 99);
    +        let index_1_0 = 0;
    +        let event = SCOutputEvent {
    +            context: EventExecutionContext {
    +                slot: slot_1,
    +                block: None,
    +                read_only: false,
    +                index_in_slot: index_1_0,
    +                call_stack: Default::default(),
    +                origin_operation_id: None,
    +                is_final: true,
    +                is_error: false,
    +            },
    +            data: "message foo bar".to_string(),
    +        };
    +
    +        let event_ser = SCOutputEventSerializer::new();
    +        let event_deser = SCOutputEventDeserializer::new(SCOutputEventDeserializerArgs {
    +            thread_count: 16,
    +            max_call_stack_length: 25,
    +            max_event_data_length: 512,
    +        });
    +
    +        let mut buffer = Vec::new();
    +        event_ser.serialize(&event, &mut buffer).unwrap();
    +
    +        let res = event_deser.deserialize::<DeserializeError>(&buffer);
    +        // Expect deserialization to fail (slot thread too high)
    +        assert!(res.is_err());
    +    }
    +}
    +
    \ No newline at end of file diff --git a/src/massa_event_cache/worker.rs.html b/src/massa_event_cache/worker.rs.html new file mode 100644 index 00000000000..dd2aeefb234 --- /dev/null +++ b/src/massa_event_cache/worker.rs.html @@ -0,0 +1,325 @@ +worker.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
    +87
    +88
    +89
    +90
    +91
    +92
    +93
    +94
    +95
    +96
    +97
    +98
    +99
    +100
    +101
    +102
    +103
    +104
    +105
    +106
    +107
    +108
    +109
    +110
    +111
    +112
    +113
    +114
    +115
    +116
    +117
    +118
    +119
    +120
    +121
    +122
    +123
    +124
    +125
    +126
    +127
    +128
    +129
    +130
    +131
    +132
    +133
    +134
    +135
    +136
    +137
    +138
    +139
    +140
    +141
    +142
    +143
    +144
    +145
    +146
    +147
    +148
    +149
    +150
    +151
    +152
    +153
    +154
    +155
    +156
    +157
    +158
    +159
    +160
    +161
    +162
    +
    // std
    +use std::sync::Arc;
    +use std::thread;
    +// third-party
    +// use massa_time::MassaTime;
    +use parking_lot::{Condvar, Mutex, RwLock};
    +use tracing::{debug, info};
    +// internal
    +use crate::config::EventCacheConfig;
    +use crate::controller::{
    +    EventCacheController, EventCacheControllerImpl, EventCacheWriterInputData,
    +};
    +use crate::event_cache::EventCache;
    +
    +/// Structure gathering all elements needed by the event cache thread
    +pub(crate) struct EventCacheWriterThread {
    +    // A copy of the input data allowing access to incoming requests
    +    input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +    /// Event cache
    +    cache: Arc<RwLock<EventCache>>,
    +}
    +
    +impl EventCacheWriterThread {
    +    fn new(
    +        input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +        event_cache: Arc<RwLock<EventCache>>,
    +    ) -> Self {
    +        Self {
    +            input_data,
    +            cache: event_cache,
    +        }
    +    }
    +
    +    /// Waits for an event to trigger a new iteration in the event cache main loop.
    +    ///
    +    /// # Returns
    +    /// `ExecutionInputData` representing the input requests,
    +    /// and a boolean saying whether we should stop the loop.
    +    fn wait_loop_event(&mut self) -> (EventCacheWriterInputData, bool) {
    +        loop {
    +            // lock input data
    +            let mut input_data_lock = self.input_data.1.lock();
    +
    +            // take current input data, resetting it
    +            let input_data: EventCacheWriterInputData = std::mem::take(&mut input_data_lock);
    +
    +            // Check if there is some input data
    +            if !input_data.events.is_empty() {
    +                return (input_data, false);
    +            }
    +
    +            // if we need to stop, return None
    +            if input_data.stop {
    +                return (input_data, true);
    +            }
    +
    +            self.input_data.0.wait(&mut input_data_lock);
    +        }
    +    }
    +
    +    /// Main loop of the worker
    +    pub fn main_loop(&mut self) {
    +        loop {
    +            let (input_data, stop) = self.wait_loop_event();
    +            debug!(
    +                "Event cache writer loop triggered, input_data = {:?}",
    +                input_data
    +            );
    +
    +            if stop {
    +                // we need to stop
    +                break;
    +            }
    +
    +            {
    +                let mut lock = self.cache.write();
    +                lock.insert_multi_it(input_data.events.into_iter());
    +                // drop the lock as early as possible
    +                drop(lock);
    +            }
    +        }
    +    }
    +}
    +
    +/// Event cache manager trait used to stop the event cache thread
    +pub trait EventCacheManager {
    +    /// Stop the event cache thread
    +    /// Note that we do not take self by value to consume it
    +    /// because it is not allowed to move out of `Box<dyn ExecutionManager>`
    +    /// This will improve if the `unsized_fn_params` feature stabilizes enough to be safely usable.
    +    fn stop(&mut self);
    +}
    +
    +/// ... manager
    +/// Allows stopping the ... worker
    +pub struct EventCacheWriterManagerImpl {
    +    /// input data to process in the VM loop
    +    /// with a wake-up condition variable that needs to be triggered when the data changes
    +    pub(crate) input_data: Arc<(Condvar, Mutex<EventCacheWriterInputData>)>,
    +    /// handle used to join the worker thread
    +    pub(crate) thread_handle: Option<std::thread::JoinHandle<()>>,
    +}
    +
    +impl EventCacheManager for EventCacheWriterManagerImpl {
    +    /// stops the worker
    +    fn stop(&mut self) {
    +        info!("Stopping Execution controller...");
    +        // notify the worker thread to stop
    +        {
    +            let mut input_wlock = self.input_data.1.lock();
    +            input_wlock.stop = true;
    +            self.input_data.0.notify_one();
    +        }
    +        // join the thread
    +        if let Some(join_handle) = self.thread_handle.take() {
    +            join_handle.join().expect("VM controller thread panicked");
    +        }
    +        info!("Execution controller stopped");
    +    }
    +}
    +
    +pub fn start_event_cache_writer_worker(
    +    cfg: EventCacheConfig,
    +) -> (Box<dyn EventCacheManager>, Box<dyn EventCacheController>) {
    +    let event_cache = Arc::new(RwLock::new(EventCache::new(
    +        cfg.event_cache_path.as_path(),
    +        cfg.max_event_cache_length,
    +        cfg.snip_amount,
    +        cfg.thread_count,
    +        cfg.max_call_stack_length,
    +        cfg.max_event_data_length,
    +        cfg.max_events_per_operation,
    +        cfg.max_operations_per_block,
    +        cfg.max_events_per_query,
    +    )));
    +
    +    // define the input data interface
    +    let input_data = Arc::new((Condvar::new(), Mutex::new(EventCacheWriterInputData::new())));
    +    let input_data_clone = input_data.clone();
    +
    +    // create a controller
    +    let controller = EventCacheControllerImpl {
    +        input_data: input_data.clone(),
    +        cache: event_cache.clone(),
    +    };
    +
    +    let thread_builder = thread::Builder::new().name("event_cache".into());
    +    let thread_handle = thread_builder
    +        .spawn(move || {
    +            EventCacheWriterThread::new(input_data_clone, event_cache).main_loop();
    +        })
    +        .expect("failed to spawn thread : event_cache");
    +
    +    // create a manager
    +    let manager = EventCacheWriterManagerImpl {
    +        input_data,
    +        thread_handle: Some(thread_handle),
    +    };
    +
    +    // return the manager and controller pair
    +    (Box::new(manager), Box::new(controller))
    +}
    +
    \ No newline at end of file diff --git a/src/massa_execution_exports/settings.rs.html b/src/massa_execution_exports/settings.rs.html index b3762e5a74c..cf91942453a 100644 --- a/src/massa_execution_exports/settings.rs.html +++ b/src/massa_execution_exports/settings.rs.html @@ -113,6 +113,12 @@ 113 114 115 +116 +117 +118 +119 +120 +121
    // Copyright (c) 2022 MASSA LABS <info@massa.net>
     
     //! This module provides the structures used to provide configuration parameters to the Execution system
    @@ -227,5 +233,11 @@
         pub deferred_calls_config: DeferredCallsConfig,
         /// Maximum number of event that an operation can emit
         pub max_event_per_operation: usize,
    +    /// Path to the hard drive event cache storage
    +    pub event_cache_path: PathBuf,
    +    /// Maximum number of entries we want to keep in the Event cache
    +    pub event_cache_size: usize,
    +    /// Amount of entries removed when `event_cache_size` is reached
    +    pub event_snip_amount: usize,
     }
     
    \ No newline at end of file diff --git a/src/massa_execution_worker/execution.rs.html b/src/massa_execution_worker/execution.rs.html index 747cc77d834..efdf3c6cb64 100644 --- a/src/massa_execution_worker/execution.rs.html +++ b/src/massa_execution_worker/execution.rs.html @@ -2518,7 +2518,6 @@ 2518 2519 2520 -2521
    // Copyright (c) 2022 MASSA LABS <info@massa.net>
     
     //! This module deals with executing final and active slots, as well as read-only requests.
    @@ -2537,18 +2536,17 @@
     use crate::storage_backend::StorageBackend;
     use massa_async_pool::AsyncMessage;
     use massa_deferred_calls::DeferredCall;
    +use massa_event_cache::controller::EventCacheController;
     use massa_execution_exports::{
    -    EventStore, ExecutedBlockInfo, ExecutionBlockMetadata, ExecutionChannels, ExecutionConfig,
    -    ExecutionError, ExecutionOutput, ExecutionQueryCycleInfos, ExecutionQueryStakerInfo,
    -    ExecutionStackElement, ReadOnlyExecutionOutput, ReadOnlyExecutionRequest,
    -    ReadOnlyExecutionTarget, SlotExecutionOutput,
    +    ExecutedBlockInfo, ExecutionBlockMetadata, ExecutionChannels, ExecutionConfig, ExecutionError,
    +    ExecutionOutput, ExecutionQueryCycleInfos, ExecutionQueryStakerInfo, ExecutionStackElement,
    +    ReadOnlyExecutionOutput, ReadOnlyExecutionRequest, ReadOnlyExecutionTarget,
    +    SlotExecutionOutput,
     };
     use massa_final_state::FinalStateController;
     use massa_metrics::MassaMetrics;
     use massa_models::address::ExecutionAddressCycleInfo;
     use massa_models::bytecode::Bytecode;
    -use massa_models::types::{SetOrDelete, SetUpdateOrDelete};
    -
     use massa_models::datastore::get_prefix_bounds;
     use massa_models::deferred_calls::DeferredCallId;
     use massa_models::denunciation::{Denunciation, DenunciationIndex};
    @@ -2557,6 +2555,7 @@
     use massa_models::prehash::PreHashSet;
     use massa_models::stats::ExecutionStats;
     use massa_models::timeslots::get_block_slot_timestamp;
    +use massa_models::types::{SetOrDelete, SetUpdateOrDelete};
     use massa_models::{
         address::Address,
         block_id::BlockId,
    @@ -2634,7 +2633,7 @@
         // a cursor pointing to the highest executed final slot
         pub final_cursor: Slot,
         // store containing execution events that became final
    -    final_events: EventStore,
    +    final_events_cache: Box<dyn EventCacheController>,
         // final state with atomic R/W access
         final_state: Arc<RwLock<dyn FinalStateController>>,
         // execution context (see documentation in context.rs)
    @@ -2681,6 +2680,7 @@
             channels: ExecutionChannels,
             wallet: Arc<RwLock<Wallet>>,
             massa_metrics: MassaMetrics,
    +        event_cache: Box<dyn EventCacheController>,
             #[cfg(feature = "dump-block")] block_storage_backend: Arc<RwLock<dyn StorageBackend>>,
         ) -> ExecutionState {
             // Get the slot at the output of which the final state is attached.
    @@ -2731,7 +2731,8 @@
                 // empty execution output history: it is not recovered through bootstrap
                 active_history,
                 // empty final event store: it is not recovered through bootstrap
    -            final_events: Default::default(),
    +            // final_events: Default::default(),
    +            final_events_cache: event_cache,
                 // no active slots executed yet: set active_cursor to the last final block
                 active_cursor: last_final_slot,
                 final_cursor: last_final_slot,
    @@ -2820,8 +2821,7 @@
     
             // append generated events to the final event store
             exec_out.events.finalize();
    -        self.final_events.extend(exec_out.events);
    -        self.final_events.prune(self.config.max_final_events);
    +        self.final_events_cache.save_events(exec_out.events.0);
     
             // update the prometheus metrics
             self.massa_metrics
    @@ -4792,10 +4792,8 @@
         pub fn get_filtered_sc_output_event(&self, filter: EventFilter) -> Vec<SCOutputEvent> {
             match filter.is_final {
                 Some(true) => self
    -                .final_events
    -                .get_filtered_sc_output_events(&filter)
    -                .into_iter()
    -                .collect(),
    +                .final_events_cache
    +                .get_filtered_sc_output_events(&filter),
                 Some(false) => self
                     .active_history
                     .read()
    @@ -4804,7 +4802,7 @@
                     .flat_map(|item| item.events.get_filtered_sc_output_events(&filter))
                     .collect(),
                 None => self
    -                .final_events
    +                .final_events_cache
                     .get_filtered_sc_output_events(&filter)
                     .into_iter()
                     .chain(
    diff --git a/src/massa_execution_worker/worker.rs.html b/src/massa_execution_worker/worker.rs.html
    index 7feafa0de9b..0904f9f014d 100644
    --- a/src/massa_execution_worker/worker.rs.html
    +++ b/src/massa_execution_worker/worker.rs.html
    @@ -311,6 +311,9 @@
     311
     312
     313
    +314
    +315
    +316
     
    //! Copyright (c) 2022 MASSA LABS <info@massa.net>
     
     //! This module allows launching the execution worker thread, returning objects to communicate with it.
    @@ -326,6 +329,7 @@
         request_queue::RequestQueue,
         slot_sequencer::SlotSequencer,
     };
    +use massa_event_cache::controller::EventCacheController;
     use massa_execution_exports::{
         ExecutionBlockMetadata, ExecutionChannels, ExecutionConfig, ExecutionController,
         ExecutionError, ExecutionManager, ReadOnlyExecutionOutput, ReadOnlyExecutionRequest,
    @@ -571,6 +575,7 @@
         channels: ExecutionChannels,
         wallet: Arc<RwLock<Wallet>>,
         massa_metrics: MassaMetrics,
    +    event_cache: Box<dyn EventCacheController>,
         #[cfg(feature = "dump-block")] block_storage_backend: Arc<RwLock<dyn StorageBackend>>,
     ) -> (Box<dyn ExecutionManager>, Box<dyn ExecutionController>) {
         if config.hd_cache_size < config.snip_amount {
    @@ -586,6 +591,7 @@
             channels,
             wallet,
             massa_metrics,
    +        event_cache,
             #[cfg(feature = "dump-block")]
             block_storage_backend,
         )));
    diff --git a/src/massa_models/output_event.rs.html b/src/massa_models/output_event.rs.html
    index 7232aa33778..74f557ec3d7 100644
    --- a/src/massa_models/output_event.rs.html
    +++ b/src/massa_models/output_event.rs.html
    @@ -69,11 +69,26 @@
     69
     70
     71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
     
    use crate::{address::Address, block_id::BlockId, operation::OperationId, slot::Slot};
     use serde::{Deserialize, Serialize};
    +use std::cmp::Ordering;
     use std::{collections::VecDeque, fmt::Display};
     
    -#[derive(Debug, Clone, Serialize, Deserialize)]
    +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
     /// By product of a byte code execution
     pub struct SCOutputEvent {
         /// context generated by the execution context
    @@ -82,6 +97,19 @@
         pub data: String,
     }
     
    +impl PartialOrd for SCOutputEvent {
    +    fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
    +        Some(self.cmp(other))
    +    }
    +}
    +
    +impl Ord for SCOutputEvent {
    +    fn cmp(&self, other: &Self) -> Ordering {
    +        (self.context.slot, self.context.index_in_slot)
    +            .cmp(&(other.context.slot, other.context.index_in_slot))
    +    }
    +}
    +
     impl Display for SCOutputEvent {
         fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
             writeln!(f, "Context: {}", self.context)?;
    @@ -90,7 +118,7 @@
     }
     
     /// Context of the event (not generated by the user)
    -#[derive(Debug, Clone, Serialize, Deserialize)]
    +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
     pub struct EventExecutionContext {
         /// when was it generated
         pub slot: Slot,
    diff --git a/src/massa_node/main.rs.html b/src/massa_node/main.rs.html
    index 8edb7226a63..e902bb024a1 100644
    --- a/src/massa_node/main.rs.html
    +++ b/src/massa_node/main.rs.html
    @@ -1554,6 +1554,39 @@
     1554
     1555
     1556
    +1557
    +1558
    +1559
    +1560
    +1561
    +1562
    +1563
    +1564
    +1565
    +1566
    +1567
    +1568
    +1569
    +1570
    +1571
    +1572
    +1573
    +1574
    +1575
    +1576
    +1577
    +1578
    +1579
    +1580
    +1581
    +1582
    +1583
    +1584
    +1585
    +1586
    +1587
    +1588
    +1589
     
    // Copyright (c) 2022 MASSA LABS <info@massa.net>
     
     #![doc = include_str!("../../README.md")]
    @@ -1683,6 +1716,8 @@
     use std::time::Duration;
     use std::{path::Path, process, sync::Arc};
     
    +use massa_event_cache::config::EventCacheConfig;
    +use massa_event_cache::worker::{start_event_cache_writer_worker, EventCacheManager};
     use survey::MassaSurveyStopper;
     use tokio::sync::broadcast;
     use tracing::{debug, error, info, warn};
    @@ -1706,6 +1741,7 @@
         Box<dyn PoolManager>,
         Box<dyn ProtocolManager>,
         Box<dyn FactoryManager>,
    +    Box<dyn EventCacheManager>,
         StopHandle,
         StopHandle,
         StopHandle,
    @@ -2029,6 +2065,25 @@
             }
         }
     
    +    // Event cache thread
    +    let event_cache_config = EventCacheConfig {
    +        event_cache_path: SETTINGS.execution.event_cache_path.clone(),
    +        max_event_cache_length: SETTINGS.execution.event_cache_size,
    +        snip_amount: SETTINGS.execution.event_snip_amount,
    +        max_event_data_length: MAX_EVENT_DATA_SIZE as u64,
    +        thread_count: THREAD_COUNT,
    +        // Note: SCOutputEvent call stack comes from the execution module, and we assume
    +        //       this should return a limited call stack length
    +        //       The value remains for future use & limitations
    +        max_call_stack_length: u16::MAX,
    +
    +        max_events_per_operation: MAX_EVENT_PER_OPERATION as u64,
    +        max_operations_per_block: MAX_OPERATIONS_PER_BLOCK as u64,
    +        max_events_per_query: SETTINGS.execution.max_event_per_query,
    +    };
    +    let (event_cache_manager, event_cache_controller) =
    +        start_event_cache_writer_worker(event_cache_config);
    +
         // Storage costs constants
         let storage_costs_constants = StorageCostsConstants {
             ledger_cost_per_byte: LEDGER_COST_PER_BYTE,
    @@ -2122,6 +2177,9 @@
             condom_limits,
             deferred_calls_config,
             max_event_per_operation: MAX_EVENT_PER_OPERATION,
    +        event_cache_path: SETTINGS.execution.event_cache_path.clone(),
    +        event_cache_size: SETTINGS.execution.event_cache_size,
    +        event_snip_amount: SETTINGS.execution.event_snip_amount,
         };
     
         let execution_channels = ExecutionChannels {
    @@ -2160,6 +2218,7 @@
             execution_channels.clone(),
             node_wallet.clone(),
             massa_metrics.clone(),
    +        event_cache_controller,
             #[cfg(feature = "dump-block")]
             block_storage_backend.clone(),
         );
    @@ -2697,6 +2756,7 @@
             pool_manager,
             protocol_manager,
             factory_manager,
    +        event_cache_manager,
             api_private_handle,
             api_public_handle,
             api_handle,
    @@ -2792,6 +2852,7 @@
         pool_manager: Box<dyn PoolManager>,
         protocol_manager: Box<dyn ProtocolManager>,
         factory_manager: Box<dyn FactoryManager>,
    +    event_cache_manager: Box<dyn EventCacheManager>,
     }
     
     #[allow(clippy::too_many_arguments)]
    @@ -2805,6 +2866,7 @@
             mut pool_manager,
             mut protocol_manager,
             mut factory_manager,
    +        mut event_cache_manager,
         }: Managers,
         api_private_handle: StopHandle,
         api_public_handle: StopHandle,
    @@ -2876,7 +2938,9 @@
         //let protocol_pool_event_receiver = pool_manager.stop().await.expect("pool shutdown failed");
     
         // note that FinalLedger gets destroyed as soon as its Arc count goes to zero
    -}
    +
    +    event_cache_manager.stop();
    +}
     
     #[derive(Parser)]
     #[command(version = crate_version!())]
    @@ -3025,6 +3089,7 @@
                 pool_manager,
                 protocol_manager,
                 factory_manager,
    +            event_cache_manager,
                 api_private_handle,
                 api_public_handle,
                 api_handle,
    @@ -3091,6 +3156,7 @@
                     pool_manager,
                     protocol_manager,
                     factory_manager,
    +                event_cache_manager,
                 },
                 api_private_handle,
                 api_public_handle,
    diff --git a/src/massa_node/settings.rs.html b/src/massa_node/settings.rs.html
    index ff7f9072c5f..aaa1107c2d0 100644
    --- a/src/massa_node/settings.rs.html
    +++ b/src/massa_node/settings.rs.html
    @@ -400,6 +400,10 @@
     400
     401
     402
    +403
    +404
    +405
    +406
     
    // Copyright (c) 2022 MASSA LABS <info@massa.net>
     
     //! Build here the default node settings from the configuration file toml
    @@ -438,6 +442,10 @@
         /// slot execution traces channel capacity
         pub broadcast_slot_execution_traces_channel_capacity: usize,
         pub execution_traces_limit: usize,
    +    pub event_cache_path: PathBuf,
    +    pub event_cache_size: usize,
    +    pub event_snip_amount: usize,
    +    pub max_event_per_query: usize,
     }
     
     #[derive(Clone, Debug, Deserialize)]
    diff --git a/trait.impl/core/clone/trait.Clone.js b/trait.impl/core/clone/trait.Clone.js
    index 3de57676847..c97afe5b2f3 100644
    --- a/trait.impl/core/clone/trait.Clone.js
    +++ b/trait.impl/core/clone/trait.Clone.js
    @@ -8,6 +8,7 @@
     "massa_consensus_worker":[["impl Clone for ConsensusCommand"],["impl Clone for ConsensusControllerImpl"],["impl Clone for BlocksState"],["impl Clone for ConsensusState"]],
     "massa_db_exports":[["impl Clone for MassaDBConfig"],["impl<ChangeID: Clone + PartialOrd + Ord + PartialEq + Eq + Clone + Debug> Clone for StreamBatch<ChangeID>"]],
     "massa_deferred_calls":[["impl Clone for DeferredCall"],["impl Clone for DeferredCallDeserializer"],["impl Clone for DeferredCallSerializer"],["impl Clone for DeferredCallsConfig"],["impl Clone for DeferredCallRegistryChanges"],["impl Clone for DeferredRegistrySlotChanges"],["impl Clone for DeferredSlotCalls"]],
    +"massa_event_cache":[["impl Clone for KeyIndent"],["impl Clone for EventCacheControllerImpl"]],
     "massa_executed_ops":[["impl Clone for ExecutedDenunciationsConfig"],["impl Clone for ExecutedOpsConfig"],["impl Clone for ExecutedDenunciations"],["impl Clone for ExecutedOps"]],
     "massa_execution_exports":[["impl Clone for ExecutionError"],["impl Clone for ExecutionQueryError"],["impl Clone for ReadOnlyExecutionTarget"],["impl Clone for SlotExecutionOutput"],["impl Clone for Box<dyn ExecutionController>"],["impl Clone for ExecutionChannels"],["impl Clone for EventStore"],["impl Clone for ExecutionConfig"],["impl Clone for StorageCostsConstants"],["impl Clone for ExecutedBlockInfo"],["impl Clone for ExecutionAddressInfo"],["impl Clone for ExecutionBlockMetadata"],["impl Clone for ExecutionOutput"],["impl Clone for ExecutionStackElement"],["impl Clone for ReadOnlyCallRequest"],["impl Clone for ReadOnlyExecutionOutput"],["impl Clone for ReadOnlyExecutionRequest"]],
     "massa_execution_worker":[["impl Clone for ExecutionControllerImpl"],["impl Clone for InterfaceImpl"],["impl Clone for SlotInfo"]],
    @@ -17,7 +18,7 @@
     "massa_hash":[["impl Clone for MassaHashError"],["impl Clone for Hash"],["impl Clone for HashDeserializer"],["impl Clone for HashSerializer"],["impl Clone for HashXofDeserializer"],["impl Clone for HashXofSerializer"],["impl<const SIZE: usize> Clone for HashXof<SIZE>"]],
     "massa_ledger_exports":[["impl Clone for KeyType"],["impl Clone for KeyTypeId"],["impl Clone for LedgerConfig"],["impl Clone for Key"],["impl Clone for KeyDeserializer"],["impl Clone for KeySerializer"],["impl Clone for KeyTypeDeserializer"],["impl Clone for KeyTypeSerializer"],["impl Clone for LedgerChanges"],["impl Clone for LedgerEntryUpdate"],["impl Clone for LedgerEntry"]],
     "massa_metrics":[["impl Clone for MassaMetrics"]],
    -"massa_models":[["impl Clone for Address"],["impl Clone for SCAddress"],["impl Clone for UserAddress"],["impl Clone for BlockId"],["impl Clone for OperationSearchResultBlockStatus"],["impl Clone for OperationSearchResultStatus"],["impl Clone for DeferredCallId"],["impl Clone for Denunciation"],["impl Clone for DenunciationIndex"],["impl Clone for DenunciationPrecursor"],["impl Clone for EndorsementId"],["impl Clone for ModelsError"],["impl Clone for OperationId"],["impl Clone for OperationPrefixId"],["impl Clone for OperationType"],["impl Clone for ActiveBlock"],["impl Clone for AddressDeserializer"],["impl Clone for AddressSerializer"],["impl Clone for ExecutionAddressCycleInfo"],["impl Clone for SCAddressV0"],["impl Clone for UserAddressV0"],["impl Clone for Amount"],["impl Clone for AmountDeserializer"],["impl Clone for AmountSerializer"],["impl Clone for Block"],["impl Clone for FilledBlock"],["impl Clone for BlockHeader"],["impl Clone for BlockIdDeserializer"],["impl Clone for BlockIdSerializer"],["impl Clone for BlockIdV0"],["impl Clone for Bytecode"],["impl Clone for Clique"],["impl Clone for OperationSearchResult"],["impl Clone for PubkeySig"],["impl Clone for StakersCycleProductionStats"],["impl Clone for CompactConfig"],["impl Clone for DeferredCallIdDeserializer"],["impl Clone for DeferredCallIdSerializer"],["impl Clone for DeferredCallIdV0"],["impl Clone for BlockHeaderDenunciation"],["impl Clone for BlockHeaderDenunciationPrecursor"],["impl Clone for DenunciationIndexDeserializer"],["impl Clone for DenunciationIndexSerializer"],["impl Clone for EndorsementDenunciation"],["impl Clone for EndorsementDenunciationPrecursor"],["impl Clone for Endorsement"],["impl Clone for EndorsementIdV0"],["impl Clone for EndorsementSerializer"],["impl Clone for EventFilter"],["impl Clone for LedgerChange"],["impl Clone for LedgerChanges"],["impl Clone for LedgerData"],["impl Clone for NodeId"],["impl Clone for Operation"],["impl Clone for OperationIdDeserializer"],["impl Clone for OperationIdSerializer"],["impl Clone for OperationIdV0"],["impl Clone for OperationPrefixIdV0"],["impl Clone for OperationPrefixIdsSerializer"],["impl Clone for OperationsSerializer"],["impl Clone for EventExecutionContext"],["impl Clone for SCOutputEvent"],["impl Clone for RollCompensation"],["impl Clone for RollCounts"],["impl Clone for RollUpdate"],["impl Clone for RollUpdates"],["impl Clone for SecureShareSerializer"],["impl Clone for BitVecDeserializer"],["impl Clone for BitVecSerializer"],["impl Clone for IpAddrDeserializer"],["impl Clone for IpAddrSerializer"],["impl Clone for VecU8Deserializer"],["impl Clone for VecU8Serializer"],["impl Clone for IndexedSlot"],["impl Clone for Slot"],["impl Clone for SlotDeserializer"],["impl Clone for SlotSerializer"],["impl Clone for ConsensusStats"],["impl Clone for ExecutionStats"],["impl Clone for NetworkStats"],["impl Clone for Version"],["impl Clone for VersionDeserializer"],["impl Clone for VersionSerializer"],["impl<DL, L> Clone for StringDeserializer<DL, L>
    where\n DL: Deserializer<L> + Clone,\n L: TryFrom<usize> + ToUsize + Clone,
    "],["impl<SL, L> Clone for StringSerializer<SL, L>
    where\n SL: Serializer<L> + Clone,\n L: TryFrom<usize> + Clone,
    "],["impl<T, ID> Clone for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Clone,\n ID: Id + Clone,
    "],["impl<T: Clone + Clone> Clone for SetOrDelete<T>"],["impl<T: Clone + Clone> Clone for SetOrKeep<T>"],["impl<T: Clone + Default + Applicable<V>, V: Clone + Applicable<V> + Clone> Clone for SetUpdateOrDelete<T, V>"],["impl<T: Clone> Clone for StreamingStep<T>"],["impl<T: Clone, ST> Clone for PreHashSetDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone + Clone,
    "],["impl<T: Clone, ST> Clone for PreHashSetSerializer<T, ST>
    where\n ST: Serializer<T> + Clone,
    "],["impl<T: Clone, ST> Clone for VecDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone + Clone,
    "],["impl<T: Clone, ST> Clone for VecSerializer<T, ST>
    where\n ST: Serializer<T> + Clone,
    "]], +"massa_models":[["impl Clone for Address"],["impl Clone for SCAddress"],["impl Clone for UserAddress"],["impl Clone for BlockId"],["impl Clone for OperationSearchResultBlockStatus"],["impl Clone for OperationSearchResultStatus"],["impl Clone for DeferredCallId"],["impl Clone for Denunciation"],["impl Clone for DenunciationIndex"],["impl Clone for DenunciationPrecursor"],["impl Clone for EndorsementId"],["impl Clone for ModelsError"],["impl Clone for OperationId"],["impl Clone for OperationPrefixId"],["impl Clone for OperationType"],["impl Clone for ActiveBlock"],["impl Clone for AddressDeserializer"],["impl Clone for AddressSerializer"],["impl Clone for ExecutionAddressCycleInfo"],["impl Clone for SCAddressV0"],["impl Clone for UserAddressV0"],["impl Clone for Amount"],["impl Clone for AmountDeserializer"],["impl Clone for AmountSerializer"],["impl Clone for Block"],["impl Clone for FilledBlock"],["impl Clone for BlockHeader"],["impl Clone for BlockIdDeserializer"],["impl Clone for BlockIdSerializer"],["impl Clone for BlockIdV0"],["impl Clone for Bytecode"],["impl Clone for Clique"],["impl Clone for OperationSearchResult"],["impl Clone for PubkeySig"],["impl Clone for StakersCycleProductionStats"],["impl Clone for CompactConfig"],["impl Clone for DeferredCallIdDeserializer"],["impl Clone for DeferredCallIdSerializer"],["impl Clone for DeferredCallIdV0"],["impl Clone for BlockHeaderDenunciation"],["impl Clone for BlockHeaderDenunciationPrecursor"],["impl Clone for DenunciationIndexDeserializer"],["impl Clone for DenunciationIndexSerializer"],["impl Clone for EndorsementDenunciation"],["impl Clone for EndorsementDenunciationPrecursor"],["impl Clone for Endorsement"],["impl Clone for EndorsementIdV0"],["impl Clone for EndorsementSerializer"],["impl Clone for EventFilter"],["impl Clone for LedgerChange"],["impl Clone for LedgerChanges"],["impl Clone for LedgerData"],["impl Clone for NodeId"],["impl Clone for Operation"],["impl Clone for OperationIdDeserializer"],["impl Clone for OperationIdSerializer"],["impl Clone for OperationIdV0"],["impl Clone for OperationPrefixIdV0"],["impl Clone for OperationPrefixIdsSerializer"],["impl Clone for OperationsSerializer"],["impl Clone for EventExecutionContext"],["impl Clone for SCOutputEvent"],["impl Clone for RollCompensation"],["impl Clone for RollCounts"],["impl Clone for RollUpdate"],["impl Clone for RollUpdates"],["impl Clone for SecureShareSerializer"],["impl Clone for BitVecDeserializer"],["impl Clone for BitVecSerializer"],["impl Clone for IpAddrDeserializer"],["impl Clone for IpAddrSerializer"],["impl Clone for VecU8Deserializer"],["impl Clone for VecU8Serializer"],["impl Clone for IndexedSlot"],["impl Clone for Slot"],["impl Clone for SlotDeserializer"],["impl Clone for SlotSerializer"],["impl Clone for ConsensusStats"],["impl Clone for ExecutionStats"],["impl Clone for NetworkStats"],["impl Clone for Version"],["impl Clone for VersionDeserializer"],["impl Clone for VersionSerializer"],["impl<DL, L> Clone for StringDeserializer<DL, L>
    where\n DL: Deserializer<L> + Clone,\n L: TryFrom<usize> + ToUsize + Clone,
    "],["impl<SL, L> Clone for StringSerializer<SL, L>
    where\n SL: Serializer<L> + Clone,\n L: TryFrom<usize> + Clone,
    "],["impl<T, ID> Clone for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Clone,\n ID: Id + Clone,
    "],["impl<T: Clone + Clone> Clone for SetOrDelete<T>"],["impl<T: Clone + Clone> Clone for SetOrKeep<T>"],["impl<T: Clone + Default + Applicable<V>, V: Clone + Applicable<V> + Clone> Clone for SetUpdateOrDelete<T, V>"],["impl<T: Clone> Clone for StreamingStep<T>"],["impl<T: Clone, ST> Clone for PreHashSetDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone + Clone,
    "],["impl<T: Clone, ST> Clone for PreHashSetSerializer<T, ST>
    where\n ST: Serializer<T> + Clone,
    "],["impl<T: Clone, ST> Clone for VecDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone + Clone,
    "],["impl<T: Clone, ST> Clone for VecSerializer<T, ST>
    where\n ST: Serializer<T> + Clone,
    "]], "massa_module_cache":[["impl Clone for CacheError"],["impl Clone for ModuleInfo"]], "massa_node":[["impl Clone for APISettings"],["impl Clone for BlockDumpSettings"],["impl Clone for BootstrapSettings"],["impl Clone for ConsensusSettings"],["impl Clone for ExecutionSettings"],["impl Clone for FactorySettings"],["impl Clone for GrpcApiSettings"],["impl Clone for GrpcSettings"],["impl Clone for LedgerSettings"],["impl Clone for LoggingSettings"],["impl Clone for MetricsSettings"],["impl Clone for NetworkSettings"],["impl Clone for PoolSettings"],["impl Clone for ProtocolSettings"],["impl Clone for SelectionSettings"],["impl Clone for Settings"],["impl Clone for VersioningSettings"]], "massa_pool_exports":[["impl Clone for Box<dyn PoolController>"],["impl Clone for PoolBroadcasts"],["impl Clone for PoolChannels"],["impl Clone for PoolConfig"]], diff --git a/trait.impl/core/cmp/trait.Eq.js b/trait.impl/core/cmp/trait.Eq.js index 09f53d72770..6247c0cbd89 100644 --- a/trait.impl/core/cmp/trait.Eq.js +++ b/trait.impl/core/cmp/trait.Eq.js @@ -4,10 +4,11 @@ "massa_client":[["impl Eq for Command"]], "massa_consensus_exports":[["impl Eq for BlockStatusId"],["impl Eq for DiscardReason"],["impl Eq for Status"]], "massa_deferred_calls":[["impl Eq for DeferredCall"]], +"massa_event_cache":[["impl Eq for KeyIndent"]], "massa_grpc":[["impl Eq for EndorsementDraw"],["impl Eq for SlotDraw"],["impl Eq for SlotRange"]], "massa_hash":[["impl Eq for Hash"],["impl<const SIZE: usize> Eq for HashXof<SIZE>"]], "massa_ledger_exports":[["impl Eq for KeyType"],["impl Eq for KeyTypeId"],["impl Eq for Key"],["impl Eq for LedgerChanges"],["impl Eq for LedgerEntryUpdate"],["impl Eq for LedgerEntry"]], -"massa_models":[["impl Eq for Address"],["impl Eq for SCAddress"],["impl Eq for UserAddress"],["impl Eq for BlockGraphStatus"],["impl Eq for BlockId"],["impl Eq for DeferredCallId"],["impl Eq for DenunciationIndex"],["impl Eq for DenunciationIndexTypeId"],["impl Eq for EndorsementId"],["impl Eq for OperationId"],["impl Eq for OperationPrefixId"],["impl Eq for OperationTypeId"],["impl Eq for SCAddressV0"],["impl Eq for UserAddressV0"],["impl Eq for Amount"],["impl Eq for BlockIdV0"],["impl Eq for Bytecode"],["impl Eq for DeferredCallIdV0"],["impl Eq for Endorsement"],["impl Eq for EndorsementIdV0"],["impl Eq for NodeId"],["impl Eq for OperationIdV0"],["impl Eq for OperationPrefixIdV0"],["impl Eq for IndexedSlot"],["impl Eq for Slot"],["impl Eq for Version"],["impl<T, ID> Eq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Eq,\n ID: Id + Eq,
    "],["impl<T: Eq + Clone> Eq for SetOrDelete<T>"],["impl<T: Eq + Clone> Eq for SetOrKeep<T>"],["impl<T: Eq + Default + Applicable<V>, V: Eq + Applicable<V> + Clone> Eq for SetUpdateOrDelete<T, V>"],["impl<T: Eq> Eq for StreamingStep<T>"]], +"massa_models":[["impl Eq for Address"],["impl Eq for SCAddress"],["impl Eq for UserAddress"],["impl Eq for BlockGraphStatus"],["impl Eq for BlockId"],["impl Eq for DeferredCallId"],["impl Eq for DenunciationIndex"],["impl Eq for DenunciationIndexTypeId"],["impl Eq for EndorsementId"],["impl Eq for OperationId"],["impl Eq for OperationPrefixId"],["impl Eq for OperationTypeId"],["impl Eq for SCAddressV0"],["impl Eq for UserAddressV0"],["impl Eq for Amount"],["impl Eq for BlockIdV0"],["impl Eq for Bytecode"],["impl Eq for DeferredCallIdV0"],["impl Eq for Endorsement"],["impl Eq for EndorsementIdV0"],["impl Eq for NodeId"],["impl Eq for OperationIdV0"],["impl Eq for OperationPrefixIdV0"],["impl Eq for EventExecutionContext"],["impl Eq for SCOutputEvent"],["impl Eq for IndexedSlot"],["impl Eq for Slot"],["impl Eq for Version"],["impl<T, ID> Eq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Eq,\n ID: Id + Eq,
    "],["impl<T: Eq + Clone> Eq for SetOrDelete<T>"],["impl<T: Eq + Clone> Eq for SetOrKeep<T>"],["impl<T: Eq + Default + Applicable<V>, V: Eq + Applicable<V> + Clone> Eq for SetUpdateOrDelete<T, V>"],["impl<T: Eq> Eq for StreamingStep<T>"]], "massa_module_cache":[["impl Eq for ModuleMetadata"],["impl Eq for ModuleMetadataId"]], "massa_pos_exports":[["impl Eq for Selection"],["impl Eq for CycleInfo"],["impl Eq for ProductionStats"]], "massa_protocol_exports":[["impl Eq for BootstrapPeers"],["impl Eq for PeerData"],["impl Eq for PeerId"]], diff --git a/trait.impl/core/cmp/trait.Ord.js b/trait.impl/core/cmp/trait.Ord.js index acc1d7855a8..6bf91fe2d94 100644 --- a/trait.impl/core/cmp/trait.Ord.js +++ b/trait.impl/core/cmp/trait.Ord.js @@ -1,6 +1,7 @@ (function() {var implementors = { +"massa_event_cache":[["impl Ord for KeyIndent"]], "massa_hash":[["impl Ord for Hash"]], -"massa_models":[["impl Ord for Address"],["impl Ord for SCAddress"],["impl Ord for UserAddress"],["impl Ord for BlockId"],["impl Ord for DeferredCallId"],["impl Ord for DenunciationIndex"],["impl Ord for EndorsementId"],["impl Ord for OperationId"],["impl Ord for OperationPrefixId"],["impl Ord for SCAddressV0"],["impl Ord for UserAddressV0"],["impl Ord for Amount"],["impl Ord for BlockIdV0"],["impl Ord for DeferredCallIdV0"],["impl Ord for EndorsementIdV0"],["impl Ord for NodeId"],["impl Ord for OperationIdV0"],["impl Ord for OperationPrefixIdV0"],["impl Ord for Slot"]], +"massa_models":[["impl Ord for Address"],["impl Ord for SCAddress"],["impl Ord for UserAddress"],["impl Ord for BlockId"],["impl Ord for DeferredCallId"],["impl Ord for DenunciationIndex"],["impl Ord for EndorsementId"],["impl Ord for OperationId"],["impl Ord for OperationPrefixId"],["impl Ord for SCAddressV0"],["impl Ord for UserAddressV0"],["impl Ord for Amount"],["impl Ord for BlockIdV0"],["impl Ord for DeferredCallIdV0"],["impl Ord for EndorsementIdV0"],["impl Ord for NodeId"],["impl Ord for OperationIdV0"],["impl Ord for OperationPrefixIdV0"],["impl Ord for SCOutputEvent"],["impl Ord for Slot"]], "massa_protocol_exports":[["impl Ord for PeerId"]], "massa_protocol_worker":[["impl Ord for ConnectionMetadata"]], "massa_signature":[["impl Ord for PublicKey"],["impl Ord for PublicKeyV0"]], diff --git a/trait.impl/core/cmp/trait.PartialEq.js b/trait.impl/core/cmp/trait.PartialEq.js index 9b718cb1108..b4fdc8da55c 100644 --- a/trait.impl/core/cmp/trait.PartialEq.js +++ b/trait.impl/core/cmp/trait.PartialEq.js @@ -4,10 +4,11 @@ "massa_client":[["impl PartialEq for Command"]], "massa_consensus_exports":[["impl PartialEq for BlockStatusId"],["impl PartialEq for DiscardReason"],["impl PartialEq for Status"]], "massa_deferred_calls":[["impl PartialEq for DeferredCall"]], +"massa_event_cache":[["impl PartialEq for KeyIndent"]], "massa_grpc":[["impl PartialEq for EndorsementDraw"],["impl PartialEq for SlotDraw"],["impl PartialEq for SlotRange"]], "massa_hash":[["impl PartialEq for Hash"],["impl<const SIZE: usize> PartialEq for HashXof<SIZE>"]], "massa_ledger_exports":[["impl PartialEq for KeyType"],["impl PartialEq for KeyTypeId"],["impl PartialEq for Key"],["impl PartialEq for LedgerChanges"],["impl PartialEq for LedgerEntryUpdate"],["impl PartialEq for LedgerEntry"]], -"massa_models":[["impl PartialEq for Address"],["impl PartialEq for SCAddress"],["impl PartialEq for UserAddress"],["impl PartialEq for BlockGraphStatus"],["impl PartialEq for BlockId"],["impl PartialEq for DeferredCallId"],["impl PartialEq for Denunciation"],["impl PartialEq for DenunciationIndex"],["impl PartialEq for DenunciationIndexTypeId"],["impl PartialEq for DenunciationPrecursor"],["impl PartialEq for EndorsementId"],["impl PartialEq for OperationId"],["impl PartialEq for OperationPrefixId"],["impl PartialEq for OperationType"],["impl PartialEq for OperationTypeId"],["impl PartialEq for SCAddressV0"],["impl PartialEq for UserAddressV0"],["impl PartialEq for Amount"],["impl PartialEq for BlockIdV0"],["impl PartialEq for Bytecode"],["impl PartialEq for DeferredCallIdV0"],["impl PartialEq for BlockHeaderDenunciation"],["impl PartialEq for BlockHeaderDenunciationPrecursor"],["impl PartialEq for EndorsementDenunciation"],["impl PartialEq for EndorsementDenunciationPrecursor"],["impl PartialEq for Endorsement"],["impl PartialEq for EndorsementIdV0"],["impl PartialEq for NodeId"],["impl PartialEq for OperationIdV0"],["impl PartialEq for OperationPrefixIdV0"],["impl PartialEq for IndexedSlot"],["impl PartialEq for Slot"],["impl PartialEq for Version"],["impl<T, ID> PartialEq for SecureShare<T, ID>"],["impl<T: PartialEq + Clone> PartialEq for SetOrDelete<T>"],["impl<T: PartialEq + Clone> PartialEq for SetOrKeep<T>"],["impl<T: PartialEq + Default + Applicable<V>, V: PartialEq + Applicable<V> + Clone> PartialEq for SetUpdateOrDelete<T, V>"],["impl<T: PartialEq> PartialEq for StreamingStep<T>"]], +"massa_models":[["impl PartialEq for Address"],["impl PartialEq for SCAddress"],["impl PartialEq for UserAddress"],["impl PartialEq for BlockGraphStatus"],["impl PartialEq for BlockId"],["impl PartialEq for DeferredCallId"],["impl PartialEq for Denunciation"],["impl PartialEq for DenunciationIndex"],["impl PartialEq for DenunciationIndexTypeId"],["impl PartialEq for DenunciationPrecursor"],["impl PartialEq for EndorsementId"],["impl PartialEq for OperationId"],["impl PartialEq for OperationPrefixId"],["impl PartialEq for OperationType"],["impl PartialEq for OperationTypeId"],["impl PartialEq for SCAddressV0"],["impl PartialEq for UserAddressV0"],["impl PartialEq for Amount"],["impl PartialEq for BlockIdV0"],["impl PartialEq for Bytecode"],["impl PartialEq for DeferredCallIdV0"],["impl PartialEq for BlockHeaderDenunciation"],["impl PartialEq for BlockHeaderDenunciationPrecursor"],["impl PartialEq for EndorsementDenunciation"],["impl PartialEq for EndorsementDenunciationPrecursor"],["impl PartialEq for Endorsement"],["impl PartialEq for EndorsementIdV0"],["impl PartialEq for NodeId"],["impl PartialEq for OperationIdV0"],["impl PartialEq for OperationPrefixIdV0"],["impl PartialEq for EventExecutionContext"],["impl PartialEq for SCOutputEvent"],["impl PartialEq for IndexedSlot"],["impl PartialEq for Slot"],["impl PartialEq for Version"],["impl<T, ID> PartialEq for SecureShare<T, ID>"],["impl<T: PartialEq + Clone> PartialEq for SetOrDelete<T>"],["impl<T: PartialEq + Clone> PartialEq for SetOrKeep<T>"],["impl<T: PartialEq + Default + Applicable<V>, V: PartialEq + Applicable<V> + Clone> PartialEq for SetUpdateOrDelete<T, V>"],["impl<T: PartialEq> PartialEq for StreamingStep<T>"]], "massa_module_cache":[["impl PartialEq for ModuleMetadata"],["impl PartialEq for ModuleMetadataId"]], "massa_pool_worker":[["impl PartialEq for DenunciationStatus"]], "massa_pos_exports":[["impl PartialEq for Selection"],["impl PartialEq for CycleInfo"],["impl PartialEq for ProductionStats"]], diff --git a/trait.impl/core/cmp/trait.PartialOrd.js b/trait.impl/core/cmp/trait.PartialOrd.js index a286f02b8be..fe8207f92d1 100644 --- a/trait.impl/core/cmp/trait.PartialOrd.js +++ b/trait.impl/core/cmp/trait.PartialOrd.js @@ -1,6 +1,7 @@ (function() {var implementors = { +"massa_event_cache":[["impl PartialOrd for KeyIndent"]], "massa_hash":[["impl PartialOrd for Hash"]], -"massa_models":[["impl PartialOrd for Address"],["impl PartialOrd for SCAddress"],["impl PartialOrd for UserAddress"],["impl PartialOrd for BlockId"],["impl PartialOrd for DeferredCallId"],["impl PartialOrd for DenunciationIndex"],["impl PartialOrd for EndorsementId"],["impl PartialOrd for OperationId"],["impl PartialOrd for OperationPrefixId"],["impl PartialOrd for SCAddressV0"],["impl PartialOrd for UserAddressV0"],["impl PartialOrd for Amount"],["impl PartialOrd for BlockIdV0"],["impl PartialOrd for DeferredCallIdV0"],["impl PartialOrd for EndorsementIdV0"],["impl PartialOrd for NodeId"],["impl PartialOrd for OperationIdV0"],["impl PartialOrd for OperationPrefixIdV0"],["impl PartialOrd for Slot"]], +"massa_models":[["impl PartialOrd for Address"],["impl PartialOrd for SCAddress"],["impl PartialOrd for UserAddress"],["impl PartialOrd for BlockId"],["impl PartialOrd for DeferredCallId"],["impl PartialOrd for DenunciationIndex"],["impl PartialOrd for EndorsementId"],["impl PartialOrd for OperationId"],["impl PartialOrd for OperationPrefixId"],["impl PartialOrd for SCAddressV0"],["impl PartialOrd for UserAddressV0"],["impl PartialOrd for Amount"],["impl PartialOrd for BlockIdV0"],["impl PartialOrd for DeferredCallIdV0"],["impl PartialOrd for EndorsementIdV0"],["impl PartialOrd for NodeId"],["impl PartialOrd for OperationIdV0"],["impl PartialOrd for OperationPrefixIdV0"],["impl PartialOrd for SCOutputEvent"],["impl PartialOrd for Slot"]], "massa_protocol_exports":[["impl PartialOrd for PeerId"]], "massa_protocol_worker":[["impl PartialOrd for ConnectionMetadata"]], "massa_signature":[["impl PartialOrd for PublicKey"],["impl PartialOrd for PublicKeyV0"]], diff --git a/trait.impl/core/convert/trait.From.js b/trait.impl/core/convert/trait.From.js index 037f784929e..28ae664d1bc 100644 --- a/trait.impl/core/convert/trait.From.js +++ b/trait.impl/core/convert/trait.From.js @@ -1,17 +1,18 @@ (function() {var implementors = { -"massa_api_exports":[["impl From<ApiError> for ErrorObjectOwned"],["impl From<WalletError> for ApiError"],["impl From<FactoryError> for ApiError"],["impl From<MassaHashError> for ApiError"],["impl From<ModelsError> for ApiError"],["impl From<TimeError> for ApiError"],["impl<T> From<PagedVec<T>> for PagedVecV2<T>"]], +"massa_api_exports":[["impl From<ApiError> for ErrorObjectOwned"],["impl From<FactoryError> for ApiError"],["impl From<MassaHashError> for ApiError"],["impl From<ModelsError> for ApiError"],["impl From<TimeError> for ApiError"],["impl From<WalletError> for ApiError"],["impl<T> From<PagedVec<T>> for PagedVecV2<T>"]], "massa_async_pool":[["impl From<AsyncMessage> for AsyncMessageInfo"],["impl From<AsyncMessage> for AsyncMessage"],["impl From<AsyncMessageTrigger> for AsyncMessageTrigger"],["impl From<AsyncMessageUpdate> for AsyncMessageUpdate"]], "massa_bootstrap":[["impl From<&BootstrapClientConfig> for BootstrapServerMessageDeserializerArgs"],["impl From<&BootstrapConfig> for BootstrapClientConfig"],["impl From<&BootstrapConfig> for BootstrapSrvBindCfg"],["impl From<&BootstrapServerMessageDeserializerArgs> for BlockDeserializerArgs"],["impl From<MessageClientTypeId> for u32"],["impl From<MessageServerTypeId> for u32"],["impl From<FinalStateError> for BootstrapError"],["impl From<MassaHashError> for BootstrapError"],["impl From<ModelsError> for BootstrapError"],["impl From<PosError> for BootstrapError"],["impl From<ProtocolError> for BootstrapError"],["impl From<SerializeError> for BootstrapError"],["impl From<MassaSignatureError> for BootstrapError"],["impl From<TimeError> for BootstrapError"],["impl From<Error> for BootstrapError"],["impl From<ConsensusError> for BootstrapError"]], "massa_cipher":[["impl From<Utf8Error> for CipherError"]], -"massa_consensus_exports":[["impl From<&BlockStatus> for BlockStatusId"],["impl From<LedgerError> for ConsensusError"],["impl From<ExecutionError> for ConsensusError"],["impl From<ModelsError> for ConsensusError"],["impl From<ModelsError> for LedgerError"],["impl From<ProtocolError> for ConsensusError"],["impl From<TimeError> for ConsensusError"],["impl From<TryFromSliceError> for LedgerError"],["impl From<Error> for ConsensusError"],["impl From<Error> for LedgerError"],["impl From<Error> for ConsensusError"],["impl From<Error> for LedgerError"]], +"massa_consensus_exports":[["impl From<&BlockStatus> for BlockStatusId"],["impl From<LedgerError> for ConsensusError"],["impl From<ModelsError> for ConsensusError"],["impl From<ModelsError> for LedgerError"],["impl From<ProtocolError> for ConsensusError"],["impl From<TimeError> for ConsensusError"],["impl From<TryFromSliceError> for LedgerError"],["impl From<Error> for ConsensusError"],["impl From<Error> for LedgerError"],["impl From<Error> for ConsensusError"],["impl From<Error> for LedgerError"],["impl From<ExecutionError> for ConsensusError"]], "massa_deferred_calls":[["impl From<DeferredCall> for DeferredCallInfoEntry"]], +"massa_event_cache":[["impl From<KeyIndent> for u8"]], "massa_execution_exports":[["impl From<ExecutionQueryError> for Error"],["impl From<SlotExecutionOutput> for SlotExecutionOutput"],["impl From<MassaHashError> for ExecutionError"],["impl From<ModelsError> for ExecutionError"],["impl From<CacheError> for ExecutionError"],["impl From<FactoryError> for ExecutionError"],["impl From<ExecutionOutput> for ExecutionOutput"]], "massa_final_state":[["impl From<StateChanges> for StateChanges"],["impl From<ExtendFromDbError> for FinalStateError"],["impl From<IsConsistentWithShutdownPeriodError> for FinalStateError"]], -"massa_grpc":[["impl From<Error> for GrpcError"],["impl From<ExecutionError> for GrpcError"],["impl From<GrpcError> for Status"],["impl From<MassaHashError> for GrpcError"],["impl From<ModelsError> for GrpcError"],["impl From<ProtocolError> for GrpcError"],["impl From<MassaSignatureError> for GrpcError"],["impl From<TimeError> for GrpcError"],["impl From<FactoryError> for GrpcError"],["impl From<WalletError> for GrpcError"],["impl From<EndorsementDraw> for EndorsementDraw"],["impl From<SlotDraw> for SlotDraw"],["impl From<ConsensusError> for GrpcError"]], +"massa_grpc":[["impl From<Error> for GrpcError"],["impl From<GrpcError> for Status"],["impl From<MassaHashError> for GrpcError"],["impl From<ModelsError> for GrpcError"],["impl From<ProtocolError> for GrpcError"],["impl From<MassaSignatureError> for GrpcError"],["impl From<TimeError> for GrpcError"],["impl From<FactoryError> for GrpcError"],["impl From<WalletError> for GrpcError"],["impl From<EndorsementDraw> for EndorsementDraw"],["impl From<SlotDraw> for SlotDraw"],["impl From<ConsensusError> for GrpcError"],["impl From<ExecutionError> for GrpcError"]], "massa_ledger_exports":[["impl From<KeyTypeId> for u8"],["impl From<LedgerEntryUpdate> for LedgerEntryUpdate"],["impl From<LedgerEntry> for LedgerEntry"]], -"massa_models":[["impl From<&'static str> for ModelsError"],["impl From<&Denunciation> for DenunciationIndex"],["impl From<&Denunciation> for DenunciationTypeId"],["impl From<&DenunciationIndex> for DenunciationIndexTypeId"],["impl From<&DenunciationPrecursor> for DenunciationIndex"],["impl From<&OperationPrefixId> for Vec<u8>"],["impl From<&SecureShare<BlockHeader, BlockId>> for DenunciationPrecursor"],["impl From<&SecureShare<Endorsement, EndorsementId>> for DenunciationPrecursor"],["impl From<&[u8; 17]> for OperationPrefixId"],["impl From<MassaHashError> for ModelsError"],["impl From<BlockGraphStatus> for i32"],["impl From<Denunciation> for Denunciation"],["impl From<DenunciationIndex> for DenunciationIndex"],["impl From<DenunciationIndexTypeId> for u32"],["impl From<DenunciationTypeId> for u32"],["impl From<OperationType> for OpType"],["impl From<OperationType> for OperationType"],["impl From<OperationTypeId> for u32"],["impl From<MassaSignatureError> for DenunciationError"],["impl From<MassaSignatureError> for ModelsError"],["impl From<TimeError> for ModelsError"],["impl From<Amount> for NativeAmount"],["impl From<Block> for Block"],["impl From<FilledBlock> for FilledBlock"],["impl From<BlockHeader> for BlockHeader"],["impl From<CompactConfig> for CompactConfig"],["impl From<Endorsement> for Endorsement"],["impl From<Operation> for Operation"],["impl From<EventExecutionContext> for ScExecutionEventContext"],["impl From<SCOutputEvent> for ScExecutionEvent"],["impl From<SecureShare<Block, BlockId>> for SignedBlock"],["impl From<SecureShare<BlockHeader, BlockId>> for SignedBlockHeader"],["impl From<SecureShare<Endorsement, EndorsementId>> for SignedEndorsement"],["impl From<SecureShare<Operation, OperationId>> for SignedOperation"],["impl From<IndexedSlot> for IndexedSlot"],["impl From<Slot> for Slot"],["impl From<ConsensusStats> for ConsensusStats"],["impl From<ExecutionStats> for ExecutionStats"],["impl From<NetworkStats> for NetworkStats"],["impl From<Err<Error<&[u8]>>> for ModelsError"],["impl From<SerializeError> for DenunciationError"],["impl From<SerializeError> for ModelsError"],["impl From<Slot> for Slot"]], -"massa_module_cache":[["impl From<ModuleMetadataId> for u64"],["impl From<Error> for CacheError"]], -"massa_protocol_exports":[["impl From<Error> for ProtocolError"],["impl From<Error> for ProtocolError"],["impl From<FactoryError> for ProtocolError"],["impl From<ModelsError> for ProtocolError"],["impl From<PosError> for ProtocolError"],["impl From<TimeError> for ProtocolError"]], +"massa_models":[["impl From<&'static str> for ModelsError"],["impl From<&Denunciation> for DenunciationIndex"],["impl From<&Denunciation> for DenunciationTypeId"],["impl From<&DenunciationIndex> for DenunciationIndexTypeId"],["impl From<&DenunciationPrecursor> for DenunciationIndex"],["impl From<&OperationPrefixId> for Vec<u8>"],["impl From<&SecureShare<BlockHeader, BlockId>> for DenunciationPrecursor"],["impl From<&SecureShare<Endorsement, EndorsementId>> for DenunciationPrecursor"],["impl From<&[u8; 17]> for OperationPrefixId"],["impl From<MassaHashError> for ModelsError"],["impl From<BlockGraphStatus> for i32"],["impl From<Denunciation> for Denunciation"],["impl From<DenunciationIndex> for DenunciationIndex"],["impl From<DenunciationIndexTypeId> for u32"],["impl From<DenunciationTypeId> for u32"],["impl From<OperationType> for OpType"],["impl From<OperationType> for OperationType"],["impl From<OperationTypeId> for u32"],["impl From<SerializeError> for DenunciationError"],["impl From<SerializeError> for ModelsError"],["impl From<MassaSignatureError> for DenunciationError"],["impl From<MassaSignatureError> for ModelsError"],["impl From<TimeError> for ModelsError"],["impl From<Amount> for NativeAmount"],["impl From<Block> for Block"],["impl From<FilledBlock> for FilledBlock"],["impl From<BlockHeader> for BlockHeader"],["impl From<CompactConfig> for CompactConfig"],["impl From<Endorsement> for Endorsement"],["impl From<Operation> for Operation"],["impl From<EventExecutionContext> for ScExecutionEventContext"],["impl From<SCOutputEvent> for ScExecutionEvent"],["impl From<SecureShare<Block, BlockId>> for SignedBlock"],["impl From<SecureShare<BlockHeader, BlockId>> for SignedBlockHeader"],["impl From<SecureShare<Endorsement, EndorsementId>> for SignedEndorsement"],["impl From<SecureShare<Operation, OperationId>> for SignedOperation"],["impl From<IndexedSlot> for IndexedSlot"],["impl From<Slot> for Slot"],["impl From<ConsensusStats> for ConsensusStats"],["impl From<ExecutionStats> for ExecutionStats"],["impl From<NetworkStats> for NetworkStats"],["impl From<Err<Error<&[u8]>>> for ModelsError"],["impl From<Slot> for Slot"]], +"massa_module_cache":[["impl From<ModuleMetadataId> for u64"],["impl From<Error> for CacheError"]], +"massa_protocol_exports":[["impl From<Error> for ProtocolError"],["impl From<Error> for ProtocolError"],["impl From<FactoryError> for ProtocolError"],["impl From<ModelsError> for ProtocolError"],["impl From<PosError> for ProtocolError"],["impl From<TimeError> for ProtocolError"]], "massa_protocol_worker":[["impl From<&BlockMessage> for MessageTypeId"],["impl From<&EndorsementMessage> for MessageTypeId"],["impl From<&OperationMessage> for MessageTypeId"],["impl From<&PeerManagementMessage> for MessageTypeId"],["impl From<&Message> for MessageTypeId"],["impl From<BlockInfoType> for u64"],["impl From<BlockMessage> for Message"],["impl From<MessageTypeId> for u64"],["impl From<EndorsementMessage> for Message"],["impl From<MessageTypeId> for u64"],["impl From<MessageTypeId> for u64"],["impl From<OperationMessage> for Message"],["impl From<MessageTypeId> for u64"],["impl From<PeerManagementMessage> for Message"],["impl From<MessageTypeId> for u64"]], "massa_sdk":[["impl From<Error> for ClientError"],["impl From<InvalidUri> for ClientError"]], "massa_time":[["impl From<MassaTime> for Duration"],["impl From<MassaTime> for NativeTime"]], diff --git a/trait.impl/core/default/trait.Default.js b/trait.impl/core/default/trait.Default.js index ec0747269d8..2322e936915 100644 --- a/trait.impl/core/default/trait.Default.js +++ b/trait.impl/core/default/trait.Default.js @@ -3,6 +3,7 @@ "massa_bootstrap":[["impl Default for BootstrapClientMessageSerializer"],["impl Default for BootstrapServerMessageSerializer"],["impl Default for WhiteBlackListInner"]], "massa_consensus_exports":[["impl Default for BootstrapableGraphSerializer"],["impl Default for ExportActiveBlockSerializer"]], "massa_deferred_calls":[["impl Default for DeferredCallsConfig"],["impl Default for DeferredCallRegistryChanges"],["impl Default for DeferredRegistryChangesSerializer"],["impl Default for DeferredRegistrySlotChanges"],["impl Default for DeferredRegistrySlotChangesSerializer"]], +"massa_event_cache":[["impl Default for EventCacheWriterInputData"],["impl Default for SCOutputEventSerializer"]], "massa_executed_ops":[["impl Default for ExecutedDenunciationsChangesSerializer"],["impl Default for ExecutedOpsChangesSerializer"]], "massa_execution_exports":[["impl Default for EventStore"]], "massa_execution_worker":[["impl Default for ActiveHistory"]], diff --git a/trait.impl/core/fmt/trait.Debug.js b/trait.impl/core/fmt/trait.Debug.js index b5331d91335..6dabfaa0847 100644 --- a/trait.impl/core/fmt/trait.Debug.js +++ b/trait.impl/core/fmt/trait.Debug.js @@ -10,6 +10,7 @@ "massa_db_exports":[["impl Debug for MassaDBError"],["impl Debug for MassaDBConfig"],["impl<ChangeID: Debug + PartialOrd + Ord + PartialEq + Eq + Clone + Debug> Debug for StreamBatch<ChangeID>"]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> Debug for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>
    where\n ChangeID: PartialOrd + Ord + PartialEq + Eq + Clone + Debug,\n ChangeIDSerializer: Serializer<ChangeID>,\n ChangeIDDeserializer: Deserializer<ChangeID>,
    "]], "massa_deferred_calls":[["impl Debug for DeferredCall"],["impl Debug for DeferredCallsConfig"],["impl Debug for DeferredCallRegistryChanges"],["impl Debug for DeferredRegistrySlotChanges"],["impl Debug for DeferredSlotCalls"]], +"massa_event_cache":[["impl Debug for FilterItem"],["impl Debug for KeyIndent"],["impl Debug for EventCacheWriterInputData"]], "massa_executed_ops":[["impl Debug for ExecutedDenunciationsConfig"],["impl Debug for ExecutedOpsConfig"]], "massa_execution_exports":[["impl Debug for ExecutionError"],["impl Debug for ExecutionQueryError"],["impl Debug for ReadOnlyExecutionTarget"],["impl Debug for SlotExecutionOutput"],["impl Debug for EventStore"],["impl Debug for ExecutionConfig"],["impl Debug for StorageCostsConstants"],["impl Debug for ExecutedBlockInfo"],["impl Debug for ExecutionAddressInfo"],["impl Debug for ExecutionBlockMetadata"],["impl Debug for ExecutionOutput"],["impl Debug for ExecutionStackElement"],["impl Debug for ReadOnlyCallRequest"],["impl Debug for ReadOnlyExecutionOutput"],["impl Debug for ReadOnlyExecutionRequest"]], "massa_execution_worker":[["impl Debug for SlotIndexPosition"],["impl Debug for DenunciationResult"],["impl Debug for SlotInfo"],["impl<T: Debug, R: Debug> Debug for RequestQueue<T, R>"],["impl<T: Debug, R: Debug> Debug for RequestWithResponseSender<T, R>"]], diff --git a/trait.impl/core/marker/trait.Copy.js b/trait.impl/core/marker/trait.Copy.js index 224395a8d03..71f6c8f044f 100644 --- a/trait.impl/core/marker/trait.Copy.js +++ b/trait.impl/core/marker/trait.Copy.js @@ -2,6 +2,7 @@ "massa_api_exports":[["impl Copy for LedgerInfo"],["impl Copy for RollsInfo"],["impl Copy for TimeInterval"]], "massa_bootstrap":[["impl Copy for IpType"]], "massa_deferred_calls":[["impl Copy for DeferredCallsConfig"]], +"massa_event_cache":[["impl Copy for KeyIndent"]], "massa_execution_exports":[["impl Copy for StorageCostsConstants"]], "massa_hash":[["impl Copy for Hash"],["impl<const SIZE: usize> Copy for HashXof<SIZE>"]], "massa_models":[["impl Copy for Address"],["impl Copy for SCAddress"],["impl Copy for UserAddress"],["impl Copy for BlockId"],["impl Copy for DenunciationIndex"],["impl Copy for EndorsementId"],["impl Copy for OperationId"],["impl Copy for OperationPrefixId"],["impl Copy for SCAddressV0"],["impl Copy for UserAddressV0"],["impl Copy for Amount"],["impl Copy for BlockIdV0"],["impl Copy for CompactConfig"],["impl Copy for EndorsementIdV0"],["impl Copy for LedgerData"],["impl Copy for NodeId"],["impl Copy for OperationIdV0"],["impl Copy for OperationPrefixIdV0"],["impl Copy for RollCompensation"],["impl Copy for Slot"],["impl Copy for Version"],["impl<T: Copy> Copy for StreamingStep<T>"]], diff --git a/trait.impl/core/marker/trait.Freeze.js b/trait.impl/core/marker/trait.Freeze.js index c42df557c1c..2bf231921b0 100644 --- a/trait.impl/core/marker/trait.Freeze.js +++ b/trait.impl/core/marker/trait.Freeze.js @@ -11,6 +11,7 @@ "massa_db_exports":[["impl Freeze for MassaDirection",1,["massa_db_exports::controller::MassaDirection"]],["impl Freeze for MassaDBError",1,["massa_db_exports::error::MassaDBError"]],["impl Freeze for MassaDBConfig",1,["massa_db_exports::settings::MassaDBConfig"]],["impl<'a> Freeze for MassaIteratorMode<'a>",1,["massa_db_exports::controller::MassaIteratorMode"]],["impl<ChangeID> Freeze for StreamBatch<ChangeID>
    where\n ChangeID: Freeze,
    ",1,["massa_db_exports::db_batch::StreamBatch"]]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> Freeze for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>
    where\n ChangeIDSerializer: Freeze,\n ChangeIDDeserializer: Freeze,
    ",1,["massa_db_worker::massa_db::RawMassaDB"]]], "massa_deferred_calls":[["impl Freeze for DeferredCall",1,["massa_deferred_calls::call::DeferredCall"]],["impl Freeze for DeferredCallDeserializer",1,["massa_deferred_calls::call::DeferredCallDeserializer"]],["impl Freeze for DeferredCallSerializer",1,["massa_deferred_calls::call::DeferredCallSerializer"]],["impl Freeze for DeferredCallsConfig",1,["massa_deferred_calls::config::DeferredCallsConfig"]],["impl Freeze for DeferredCallRegistryChanges",1,["massa_deferred_calls::registry_changes::DeferredCallRegistryChanges"]],["impl Freeze for DeferredRegistryChangesDeserializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesDeserializer"]],["impl Freeze for DeferredRegistryChangesSerializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesSerializer"]],["impl Freeze for DeferredRegistrySlotChanges",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChanges"]],["impl Freeze for DeferredRegistrySlotChangesDeserializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesDeserializer"]],["impl Freeze for DeferredRegistrySlotChangesSerializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesSerializer"]],["impl Freeze for DeferredCallRegistry",1,["massa_deferred_calls::DeferredCallRegistry"]],["impl Freeze for DeferredSlotCalls",1,["massa_deferred_calls::DeferredSlotCalls"]]], +"massa_event_cache":[["impl Freeze for FilterItem",1,["massa_event_cache::event_cache::FilterItem"]],["impl Freeze for KeyIndent",1,["massa_event_cache::event_cache::KeyIndent"]],["impl Freeze for KeyKind",1,["massa_event_cache::event_cache::KeyKind"]],["impl Freeze for EventCacheConfig",1,["massa_event_cache::config::EventCacheConfig"]],["impl Freeze for EventCacheControllerImpl",1,["massa_event_cache::controller::EventCacheControllerImpl"]],["impl Freeze for EventCacheWriterInputData",1,["massa_event_cache::controller::EventCacheWriterInputData"]],["impl Freeze for DbKeyBuilder",1,["massa_event_cache::event_cache::DbKeyBuilder"]],["impl Freeze for EventCache",1,["massa_event_cache::event_cache::EventCache"]],["impl Freeze for SCOutputEventDeserializer",1,["massa_event_cache::ser_deser::SCOutputEventDeserializer"]],["impl Freeze for SCOutputEventDeserializerArgs",1,["massa_event_cache::ser_deser::SCOutputEventDeserializerArgs"]],["impl Freeze for SCOutputEventSerializer",1,["massa_event_cache::ser_deser::SCOutputEventSerializer"]],["impl Freeze for EventCacheWriterManagerImpl",1,["massa_event_cache::worker::EventCacheWriterManagerImpl"]],["impl Freeze for EventCacheWriterThread",1,["massa_event_cache::worker::EventCacheWriterThread"]],["impl<'a> Freeze for KeyBuilderType<'a>",1,["massa_event_cache::event_cache::KeyBuilderType"]]], "massa_executed_ops":[["impl Freeze for ExecutedDenunciationsConfig",1,["massa_executed_ops::config::ExecutedDenunciationsConfig"]],["impl Freeze for ExecutedOpsConfig",1,["massa_executed_ops::config::ExecutedOpsConfig"]],["impl Freeze for ExecutedDenunciationsChangesDeserializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesDeserializer"]],["impl Freeze for ExecutedDenunciationsChangesSerializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesSerializer"]],["impl Freeze for ExecutedDenunciations",1,["massa_executed_ops::executed_denunciations::ExecutedDenunciations"]],["impl Freeze for ExecutedOps",1,["massa_executed_ops::executed_ops::ExecutedOps"]],["impl Freeze for ExecutedOpsChangesDeserializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesDeserializer"]],["impl Freeze for ExecutedOpsChangesSerializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesSerializer"]]], "massa_execution_exports":[["impl Freeze for ExecutionError",1,["massa_execution_exports::error::ExecutionError"]],["impl Freeze for ExecutionQueryError",1,["massa_execution_exports::error::ExecutionQueryError"]],["impl Freeze for ExecutionQueryExecutionStatus",1,["massa_execution_exports::types::ExecutionQueryExecutionStatus"]],["impl Freeze for ExecutionQueryRequestItem",1,["massa_execution_exports::types::ExecutionQueryRequestItem"]],["impl Freeze for ExecutionQueryResponseItem",1,["massa_execution_exports::types::ExecutionQueryResponseItem"]],["impl Freeze for ReadOnlyExecutionTarget",1,["massa_execution_exports::types::ReadOnlyExecutionTarget"]],["impl Freeze for SlotExecutionOutput",1,["massa_execution_exports::types::SlotExecutionOutput"]],["impl Freeze for ExecutionChannels",1,["massa_execution_exports::channels::ExecutionChannels"]],["impl Freeze for EventStore",1,["massa_execution_exports::event_store::EventStore"]],["impl Freeze for ExecutionConfig",1,["massa_execution_exports::settings::ExecutionConfig"]],["impl Freeze for StorageCostsConstants",1,["massa_execution_exports::settings::StorageCostsConstants"]],["impl Freeze for ExecutedBlockInfo",1,["massa_execution_exports::types::ExecutedBlockInfo"]],["impl Freeze for ExecutionAddressInfo",1,["massa_execution_exports::types::ExecutionAddressInfo"]],["impl Freeze for ExecutionBlockMetadata",1,["massa_execution_exports::types::ExecutionBlockMetadata"]],["impl Freeze for ExecutionOutput",1,["massa_execution_exports::types::ExecutionOutput"]],["impl Freeze for ExecutionQueryCycleInfos",1,["massa_execution_exports::types::ExecutionQueryCycleInfos"]],["impl Freeze for ExecutionQueryRequest",1,["massa_execution_exports::types::ExecutionQueryRequest"]],["impl Freeze for ExecutionQueryResponse",1,["massa_execution_exports::types::ExecutionQueryResponse"]],["impl Freeze for ExecutionQueryStakerInfo",1,["massa_execution_exports::types::ExecutionQueryStakerInfo"]],["impl Freeze for ExecutionStackElement",1,["massa_execution_exports::types::ExecutionStackElement"]],["impl Freeze for ReadOnlyCallRequest",1,["massa_execution_exports::types::ReadOnlyCallRequest"]],["impl Freeze for ReadOnlyExecutionOutput",1,["massa_execution_exports::types::ReadOnlyExecutionOutput"]],["impl Freeze for ReadOnlyExecutionRequest",1,["massa_execution_exports::types::ReadOnlyExecutionRequest"]]], "massa_execution_worker":[["impl Freeze for SlotIndexPosition",1,["massa_execution_worker::active_history::SlotIndexPosition"]],["impl Freeze for OperationInfo",1,["massa_execution_worker::execution_info::OperationInfo"]],["impl Freeze for ActiveHistory",1,["massa_execution_worker::active_history::ActiveHistory"]],["impl Freeze for ExecutionContext",1,["massa_execution_worker::context::ExecutionContext"]],["impl Freeze for ExecutionContextSnapshot",1,["massa_execution_worker::context::ExecutionContextSnapshot"]],["impl Freeze for ExecutionControllerImpl",1,["massa_execution_worker::controller::ExecutionControllerImpl"]],["impl Freeze for ExecutionInputData",1,["massa_execution_worker::controller::ExecutionInputData"]],["impl Freeze for ExecutionManagerImpl",1,["massa_execution_worker::controller::ExecutionManagerImpl"]],["impl Freeze for ExecutionState",1,["massa_execution_worker::execution::ExecutionState"]],["impl Freeze for AsyncMessageExecutionResult",1,["massa_execution_worker::execution_info::AsyncMessageExecutionResult"]],["impl Freeze for DeferredCallExecutionResult",1,["massa_execution_worker::execution_info::DeferredCallExecutionResult"]],["impl Freeze for DenunciationResult",1,["massa_execution_worker::execution_info::DenunciationResult"]],["impl Freeze for ExecutionInfo",1,["massa_execution_worker::execution_info::ExecutionInfo"]],["impl Freeze for ExecutionInfoForSlot",1,["massa_execution_worker::execution_info::ExecutionInfoForSlot"]],["impl Freeze for InterfaceImpl",1,["massa_execution_worker::interface_impl::InterfaceImpl"]],["impl Freeze for SlotInfo",1,["massa_execution_worker::slot_sequencer::SlotInfo"]],["impl Freeze for SlotSequencer",1,["massa_execution_worker::slot_sequencer::SlotSequencer"]],["impl Freeze for SpeculativeAsyncPool",1,["massa_execution_worker::speculative_async_pool::SpeculativeAsyncPool"]],["impl Freeze for SpeculativeDeferredCallRegistry",1,["massa_execution_worker::speculative_deferred_calls::SpeculativeDeferredCallRegistry"]],["impl Freeze for SpeculativeExecutedDenunciations",1,["massa_execution_worker::speculative_executed_denunciations::SpeculativeExecutedDenunciations"]],["impl Freeze for SpeculativeExecutedOps",1,["massa_execution_worker::speculative_executed_ops::SpeculativeExecutedOps"]],["impl Freeze for SpeculativeLedger",1,["massa_execution_worker::speculative_ledger::SpeculativeLedger"]],["impl Freeze for SpeculativeRollState",1,["massa_execution_worker::speculative_roll_state::SpeculativeRollState"]],["impl Freeze for ExecutionStatsCounter",1,["massa_execution_worker::stats::ExecutionStatsCounter"]],["impl Freeze for FileStorageBackend",1,["massa_execution_worker::storage_backend::FileStorageBackend"]],["impl Freeze for RocksDBStorageBackend",1,["massa_execution_worker::storage_backend::RocksDBStorageBackend"]],["impl Freeze for ExecutionThread",1,["massa_execution_worker::worker::ExecutionThread"]],["impl<T> Freeze for HistorySearchResult<T>
    where\n T: Freeze,
    ",1,["massa_execution_worker::active_history::HistorySearchResult"]],["impl<T, R> Freeze for RequestQueue<T, R>",1,["massa_execution_worker::request_queue::RequestQueue"]],["impl<T, R> Freeze for RequestWithResponseSender<T, R>
    where\n T: Freeze,
    ",1,["massa_execution_worker::request_queue::RequestWithResponseSender"]]], diff --git a/trait.impl/core/marker/trait.Send.js b/trait.impl/core/marker/trait.Send.js index f2380b0632b..f8bdabea0fa 100644 --- a/trait.impl/core/marker/trait.Send.js +++ b/trait.impl/core/marker/trait.Send.js @@ -11,6 +11,7 @@ "massa_db_exports":[["impl Send for MassaDirection",1,["massa_db_exports::controller::MassaDirection"]],["impl Send for MassaDBError",1,["massa_db_exports::error::MassaDBError"]],["impl Send for MassaDBConfig",1,["massa_db_exports::settings::MassaDBConfig"]],["impl<'a> Send for MassaIteratorMode<'a>",1,["massa_db_exports::controller::MassaIteratorMode"]],["impl<ChangeID> Send for StreamBatch<ChangeID>
    where\n ChangeID: Send,
    ",1,["massa_db_exports::db_batch::StreamBatch"]]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> Send for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>
    where\n ChangeIDSerializer: Send,\n ChangeIDDeserializer: Send,\n ChangeID: Send,
    ",1,["massa_db_worker::massa_db::RawMassaDB"]]], "massa_deferred_calls":[["impl Send for DeferredCall",1,["massa_deferred_calls::call::DeferredCall"]],["impl Send for DeferredCallDeserializer",1,["massa_deferred_calls::call::DeferredCallDeserializer"]],["impl Send for DeferredCallSerializer",1,["massa_deferred_calls::call::DeferredCallSerializer"]],["impl Send for DeferredCallsConfig",1,["massa_deferred_calls::config::DeferredCallsConfig"]],["impl Send for DeferredCallRegistryChanges",1,["massa_deferred_calls::registry_changes::DeferredCallRegistryChanges"]],["impl Send for DeferredRegistryChangesDeserializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesDeserializer"]],["impl Send for DeferredRegistryChangesSerializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesSerializer"]],["impl Send for DeferredRegistrySlotChanges",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChanges"]],["impl Send for DeferredRegistrySlotChangesDeserializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesDeserializer"]],["impl Send for DeferredRegistrySlotChangesSerializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesSerializer"]],["impl Send for DeferredCallRegistry",1,["massa_deferred_calls::DeferredCallRegistry"]],["impl Send for DeferredSlotCalls",1,["massa_deferred_calls::DeferredSlotCalls"]]], +"massa_event_cache":[["impl Send for FilterItem",1,["massa_event_cache::event_cache::FilterItem"]],["impl Send for KeyIndent",1,["massa_event_cache::event_cache::KeyIndent"]],["impl Send for KeyKind",1,["massa_event_cache::event_cache::KeyKind"]],["impl Send for EventCacheConfig",1,["massa_event_cache::config::EventCacheConfig"]],["impl Send for EventCacheControllerImpl",1,["massa_event_cache::controller::EventCacheControllerImpl"]],["impl Send for EventCacheWriterInputData",1,["massa_event_cache::controller::EventCacheWriterInputData"]],["impl Send for DbKeyBuilder",1,["massa_event_cache::event_cache::DbKeyBuilder"]],["impl Send for EventCache",1,["massa_event_cache::event_cache::EventCache"]],["impl Send for SCOutputEventDeserializer",1,["massa_event_cache::ser_deser::SCOutputEventDeserializer"]],["impl Send for SCOutputEventDeserializerArgs",1,["massa_event_cache::ser_deser::SCOutputEventDeserializerArgs"]],["impl Send for SCOutputEventSerializer",1,["massa_event_cache::ser_deser::SCOutputEventSerializer"]],["impl Send for EventCacheWriterManagerImpl",1,["massa_event_cache::worker::EventCacheWriterManagerImpl"]],["impl Send for EventCacheWriterThread",1,["massa_event_cache::worker::EventCacheWriterThread"]],["impl<'a> Send for KeyBuilderType<'a>",1,["massa_event_cache::event_cache::KeyBuilderType"]]], "massa_executed_ops":[["impl Send for ExecutedDenunciationsConfig",1,["massa_executed_ops::config::ExecutedDenunciationsConfig"]],["impl Send for ExecutedOpsConfig",1,["massa_executed_ops::config::ExecutedOpsConfig"]],["impl Send for ExecutedDenunciationsChangesDeserializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesDeserializer"]],["impl Send for ExecutedDenunciationsChangesSerializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesSerializer"]],["impl Send for ExecutedDenunciations",1,["massa_executed_ops::executed_denunciations::ExecutedDenunciations"]],["impl Send for ExecutedOps",1,["massa_executed_ops::executed_ops::ExecutedOps"]],["impl Send for ExecutedOpsChangesDeserializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesDeserializer"]],["impl Send for ExecutedOpsChangesSerializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesSerializer"]]], "massa_execution_exports":[["impl Send for ExecutionError",1,["massa_execution_exports::error::ExecutionError"]],["impl Send for ExecutionQueryError",1,["massa_execution_exports::error::ExecutionQueryError"]],["impl Send for ExecutionQueryExecutionStatus",1,["massa_execution_exports::types::ExecutionQueryExecutionStatus"]],["impl Send for ExecutionQueryRequestItem",1,["massa_execution_exports::types::ExecutionQueryRequestItem"]],["impl Send for ExecutionQueryResponseItem",1,["massa_execution_exports::types::ExecutionQueryResponseItem"]],["impl Send for ReadOnlyExecutionTarget",1,["massa_execution_exports::types::ReadOnlyExecutionTarget"]],["impl Send for SlotExecutionOutput",1,["massa_execution_exports::types::SlotExecutionOutput"]],["impl Send for ExecutionChannels",1,["massa_execution_exports::channels::ExecutionChannels"]],["impl Send for EventStore",1,["massa_execution_exports::event_store::EventStore"]],["impl Send for ExecutionConfig",1,["massa_execution_exports::settings::ExecutionConfig"]],["impl Send for StorageCostsConstants",1,["massa_execution_exports::settings::StorageCostsConstants"]],["impl Send for ExecutedBlockInfo",1,["massa_execution_exports::types::ExecutedBlockInfo"]],["impl Send for ExecutionAddressInfo",1,["massa_execution_exports::types::ExecutionAddressInfo"]],["impl Send for ExecutionBlockMetadata",1,["massa_execution_exports::types::ExecutionBlockMetadata"]],["impl Send for ExecutionOutput",1,["massa_execution_exports::types::ExecutionOutput"]],["impl Send for ExecutionQueryCycleInfos",1,["massa_execution_exports::types::ExecutionQueryCycleInfos"]],["impl Send for ExecutionQueryRequest",1,["massa_execution_exports::types::ExecutionQueryRequest"]],["impl Send for ExecutionQueryResponse",1,["massa_execution_exports::types::ExecutionQueryResponse"]],["impl Send for ExecutionQueryStakerInfo",1,["massa_execution_exports::types::ExecutionQueryStakerInfo"]],["impl Send for ExecutionStackElement",1,["massa_execution_exports::types::ExecutionStackElement"]],["impl Send for ReadOnlyCallRequest",1,["massa_execution_exports::types::ReadOnlyCallRequest"]],["impl Send for ReadOnlyExecutionOutput",1,["massa_execution_exports::types::ReadOnlyExecutionOutput"]],["impl Send for ReadOnlyExecutionRequest",1,["massa_execution_exports::types::ReadOnlyExecutionRequest"]]], "massa_execution_worker":[["impl Send for SlotIndexPosition",1,["massa_execution_worker::active_history::SlotIndexPosition"]],["impl Send for OperationInfo",1,["massa_execution_worker::execution_info::OperationInfo"]],["impl Send for ActiveHistory",1,["massa_execution_worker::active_history::ActiveHistory"]],["impl Send for ExecutionContext",1,["massa_execution_worker::context::ExecutionContext"]],["impl Send for ExecutionContextSnapshot",1,["massa_execution_worker::context::ExecutionContextSnapshot"]],["impl Send for ExecutionControllerImpl",1,["massa_execution_worker::controller::ExecutionControllerImpl"]],["impl Send for ExecutionInputData",1,["massa_execution_worker::controller::ExecutionInputData"]],["impl Send for ExecutionManagerImpl",1,["massa_execution_worker::controller::ExecutionManagerImpl"]],["impl Send for ExecutionState",1,["massa_execution_worker::execution::ExecutionState"]],["impl Send for AsyncMessageExecutionResult",1,["massa_execution_worker::execution_info::AsyncMessageExecutionResult"]],["impl Send for DeferredCallExecutionResult",1,["massa_execution_worker::execution_info::DeferredCallExecutionResult"]],["impl Send for DenunciationResult",1,["massa_execution_worker::execution_info::DenunciationResult"]],["impl Send for ExecutionInfo",1,["massa_execution_worker::execution_info::ExecutionInfo"]],["impl Send for ExecutionInfoForSlot",1,["massa_execution_worker::execution_info::ExecutionInfoForSlot"]],["impl Send for InterfaceImpl",1,["massa_execution_worker::interface_impl::InterfaceImpl"]],["impl Send for SlotInfo",1,["massa_execution_worker::slot_sequencer::SlotInfo"]],["impl Send for SlotSequencer",1,["massa_execution_worker::slot_sequencer::SlotSequencer"]],["impl Send for SpeculativeAsyncPool",1,["massa_execution_worker::speculative_async_pool::SpeculativeAsyncPool"]],["impl Send for SpeculativeDeferredCallRegistry",1,["massa_execution_worker::speculative_deferred_calls::SpeculativeDeferredCallRegistry"]],["impl Send for SpeculativeExecutedDenunciations",1,["massa_execution_worker::speculative_executed_denunciations::SpeculativeExecutedDenunciations"]],["impl Send for SpeculativeExecutedOps",1,["massa_execution_worker::speculative_executed_ops::SpeculativeExecutedOps"]],["impl Send for SpeculativeLedger",1,["massa_execution_worker::speculative_ledger::SpeculativeLedger"]],["impl Send for SpeculativeRollState",1,["massa_execution_worker::speculative_roll_state::SpeculativeRollState"]],["impl Send for ExecutionStatsCounter",1,["massa_execution_worker::stats::ExecutionStatsCounter"]],["impl Send for FileStorageBackend",1,["massa_execution_worker::storage_backend::FileStorageBackend"]],["impl Send for RocksDBStorageBackend",1,["massa_execution_worker::storage_backend::RocksDBStorageBackend"]],["impl Send for ExecutionThread",1,["massa_execution_worker::worker::ExecutionThread"]],["impl<T> Send for HistorySearchResult<T>
    where\n T: Send,
    ",1,["massa_execution_worker::active_history::HistorySearchResult"]],["impl<T, R> Send for RequestQueue<T, R>
    where\n T: Send,\n R: Send,
    ",1,["massa_execution_worker::request_queue::RequestQueue"]],["impl<T, R> Send for RequestWithResponseSender<T, R>
    where\n T: Send,\n R: Send,
    ",1,["massa_execution_worker::request_queue::RequestWithResponseSender"]]], diff --git a/trait.impl/core/marker/trait.StructuralPartialEq.js b/trait.impl/core/marker/trait.StructuralPartialEq.js index f0538fd0b93..4a725913486 100644 --- a/trait.impl/core/marker/trait.StructuralPartialEq.js +++ b/trait.impl/core/marker/trait.StructuralPartialEq.js @@ -4,10 +4,11 @@ "massa_client":[["impl StructuralPartialEq for Command"]], "massa_consensus_exports":[["impl StructuralPartialEq for BlockStatusId"],["impl StructuralPartialEq for DiscardReason"],["impl StructuralPartialEq for Status"]], "massa_deferred_calls":[["impl StructuralPartialEq for DeferredCall"]], +"massa_event_cache":[["impl StructuralPartialEq for KeyIndent"]], "massa_grpc":[["impl StructuralPartialEq for EndorsementDraw"],["impl StructuralPartialEq for SlotDraw"],["impl StructuralPartialEq for SlotRange"]], "massa_hash":[["impl StructuralPartialEq for Hash"],["impl<const SIZE: usize> StructuralPartialEq for HashXof<SIZE>"]], "massa_ledger_exports":[["impl StructuralPartialEq for KeyType"],["impl StructuralPartialEq for KeyTypeId"],["impl StructuralPartialEq for Key"],["impl StructuralPartialEq for LedgerChanges"],["impl StructuralPartialEq for LedgerEntryUpdate"],["impl StructuralPartialEq for LedgerEntry"]], -"massa_models":[["impl StructuralPartialEq for Address"],["impl StructuralPartialEq for SCAddress"],["impl StructuralPartialEq for UserAddress"],["impl StructuralPartialEq for BlockGraphStatus"],["impl StructuralPartialEq for BlockId"],["impl StructuralPartialEq for DeferredCallId"],["impl StructuralPartialEq for Denunciation"],["impl StructuralPartialEq for DenunciationIndex"],["impl StructuralPartialEq for DenunciationIndexTypeId"],["impl StructuralPartialEq for DenunciationPrecursor"],["impl StructuralPartialEq for EndorsementId"],["impl StructuralPartialEq for OperationId"],["impl StructuralPartialEq for OperationPrefixId"],["impl StructuralPartialEq for OperationType"],["impl StructuralPartialEq for OperationTypeId"],["impl StructuralPartialEq for SCAddressV0"],["impl StructuralPartialEq for UserAddressV0"],["impl StructuralPartialEq for Amount"],["impl StructuralPartialEq for BlockIdV0"],["impl StructuralPartialEq for Bytecode"],["impl StructuralPartialEq for DeferredCallIdV0"],["impl StructuralPartialEq for BlockHeaderDenunciation"],["impl StructuralPartialEq for BlockHeaderDenunciationPrecursor"],["impl StructuralPartialEq for EndorsementDenunciation"],["impl StructuralPartialEq for EndorsementDenunciationPrecursor"],["impl StructuralPartialEq for Endorsement"],["impl StructuralPartialEq for EndorsementIdV0"],["impl StructuralPartialEq for NodeId"],["impl StructuralPartialEq for OperationIdV0"],["impl StructuralPartialEq for OperationPrefixIdV0"],["impl StructuralPartialEq for IndexedSlot"],["impl StructuralPartialEq for Slot"],["impl StructuralPartialEq for Version"],["impl<T> StructuralPartialEq for StreamingStep<T>"],["impl<T, ID> StructuralPartialEq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,
    "],["impl<T: Clone> StructuralPartialEq for SetOrDelete<T>"],["impl<T: Clone> StructuralPartialEq for SetOrKeep<T>"],["impl<T: Default + Applicable<V>, V: Applicable<V> + Clone> StructuralPartialEq for SetUpdateOrDelete<T, V>"]], +"massa_models":[["impl StructuralPartialEq for Address"],["impl StructuralPartialEq for SCAddress"],["impl StructuralPartialEq for UserAddress"],["impl StructuralPartialEq for BlockGraphStatus"],["impl StructuralPartialEq for BlockId"],["impl StructuralPartialEq for DeferredCallId"],["impl StructuralPartialEq for Denunciation"],["impl StructuralPartialEq for DenunciationIndex"],["impl StructuralPartialEq for DenunciationIndexTypeId"],["impl StructuralPartialEq for DenunciationPrecursor"],["impl StructuralPartialEq for EndorsementId"],["impl StructuralPartialEq for OperationId"],["impl StructuralPartialEq for OperationPrefixId"],["impl StructuralPartialEq for OperationType"],["impl StructuralPartialEq for OperationTypeId"],["impl StructuralPartialEq for SCAddressV0"],["impl StructuralPartialEq for UserAddressV0"],["impl StructuralPartialEq for Amount"],["impl StructuralPartialEq for BlockIdV0"],["impl StructuralPartialEq for Bytecode"],["impl StructuralPartialEq for DeferredCallIdV0"],["impl StructuralPartialEq for BlockHeaderDenunciation"],["impl StructuralPartialEq for BlockHeaderDenunciationPrecursor"],["impl StructuralPartialEq for EndorsementDenunciation"],["impl StructuralPartialEq for EndorsementDenunciationPrecursor"],["impl StructuralPartialEq for Endorsement"],["impl StructuralPartialEq for EndorsementIdV0"],["impl StructuralPartialEq for NodeId"],["impl StructuralPartialEq for OperationIdV0"],["impl StructuralPartialEq for OperationPrefixIdV0"],["impl StructuralPartialEq for EventExecutionContext"],["impl StructuralPartialEq for SCOutputEvent"],["impl StructuralPartialEq for IndexedSlot"],["impl StructuralPartialEq for Slot"],["impl StructuralPartialEq for Version"],["impl<T> StructuralPartialEq for StreamingStep<T>"],["impl<T, ID> StructuralPartialEq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,
    "],["impl<T: Clone> StructuralPartialEq for SetOrDelete<T>"],["impl<T: Clone> StructuralPartialEq for SetOrKeep<T>"],["impl<T: Default + Applicable<V>, V: Applicable<V> + Clone> StructuralPartialEq for SetUpdateOrDelete<T, V>"]], "massa_module_cache":[["impl StructuralPartialEq for ModuleMetadata"],["impl StructuralPartialEq for ModuleMetadataId"]], "massa_pool_worker":[["impl StructuralPartialEq for DenunciationStatus"]], "massa_pos_exports":[["impl StructuralPartialEq for Selection"],["impl StructuralPartialEq for CycleInfo"],["impl StructuralPartialEq for ProductionStats"]], diff --git a/trait.impl/core/marker/trait.Sync.js b/trait.impl/core/marker/trait.Sync.js index 6220bd4cd2f..6f04befa9af 100644 --- a/trait.impl/core/marker/trait.Sync.js +++ b/trait.impl/core/marker/trait.Sync.js @@ -11,6 +11,7 @@ "massa_db_exports":[["impl Sync for MassaDirection",1,["massa_db_exports::controller::MassaDirection"]],["impl Sync for MassaDBError",1,["massa_db_exports::error::MassaDBError"]],["impl Sync for MassaDBConfig",1,["massa_db_exports::settings::MassaDBConfig"]],["impl<'a> Sync for MassaIteratorMode<'a>",1,["massa_db_exports::controller::MassaIteratorMode"]],["impl<ChangeID> Sync for StreamBatch<ChangeID>
    where\n ChangeID: Sync,
    ",1,["massa_db_exports::db_batch::StreamBatch"]]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> Sync for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>
    where\n ChangeIDSerializer: Sync,\n ChangeIDDeserializer: Sync,\n ChangeID: Sync,
    ",1,["massa_db_worker::massa_db::RawMassaDB"]]], "massa_deferred_calls":[["impl Sync for DeferredCall",1,["massa_deferred_calls::call::DeferredCall"]],["impl Sync for DeferredCallDeserializer",1,["massa_deferred_calls::call::DeferredCallDeserializer"]],["impl Sync for DeferredCallSerializer",1,["massa_deferred_calls::call::DeferredCallSerializer"]],["impl Sync for DeferredCallsConfig",1,["massa_deferred_calls::config::DeferredCallsConfig"]],["impl Sync for DeferredCallRegistryChanges",1,["massa_deferred_calls::registry_changes::DeferredCallRegistryChanges"]],["impl Sync for DeferredRegistryChangesDeserializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesDeserializer"]],["impl Sync for DeferredRegistryChangesSerializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesSerializer"]],["impl Sync for DeferredRegistrySlotChanges",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChanges"]],["impl Sync for DeferredRegistrySlotChangesDeserializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesDeserializer"]],["impl Sync for DeferredRegistrySlotChangesSerializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesSerializer"]],["impl Sync for DeferredCallRegistry",1,["massa_deferred_calls::DeferredCallRegistry"]],["impl Sync for DeferredSlotCalls",1,["massa_deferred_calls::DeferredSlotCalls"]]], +"massa_event_cache":[["impl Sync for FilterItem",1,["massa_event_cache::event_cache::FilterItem"]],["impl Sync for KeyIndent",1,["massa_event_cache::event_cache::KeyIndent"]],["impl Sync for KeyKind",1,["massa_event_cache::event_cache::KeyKind"]],["impl Sync for EventCacheConfig",1,["massa_event_cache::config::EventCacheConfig"]],["impl Sync for EventCacheControllerImpl",1,["massa_event_cache::controller::EventCacheControllerImpl"]],["impl Sync for EventCacheWriterInputData",1,["massa_event_cache::controller::EventCacheWriterInputData"]],["impl Sync for DbKeyBuilder",1,["massa_event_cache::event_cache::DbKeyBuilder"]],["impl Sync for EventCache",1,["massa_event_cache::event_cache::EventCache"]],["impl Sync for SCOutputEventDeserializer",1,["massa_event_cache::ser_deser::SCOutputEventDeserializer"]],["impl Sync for SCOutputEventDeserializerArgs",1,["massa_event_cache::ser_deser::SCOutputEventDeserializerArgs"]],["impl Sync for SCOutputEventSerializer",1,["massa_event_cache::ser_deser::SCOutputEventSerializer"]],["impl Sync for EventCacheWriterManagerImpl",1,["massa_event_cache::worker::EventCacheWriterManagerImpl"]],["impl Sync for EventCacheWriterThread",1,["massa_event_cache::worker::EventCacheWriterThread"]],["impl<'a> Sync for KeyBuilderType<'a>",1,["massa_event_cache::event_cache::KeyBuilderType"]]], "massa_executed_ops":[["impl Sync for ExecutedDenunciationsConfig",1,["massa_executed_ops::config::ExecutedDenunciationsConfig"]],["impl Sync for ExecutedOpsConfig",1,["massa_executed_ops::config::ExecutedOpsConfig"]],["impl Sync for ExecutedDenunciationsChangesDeserializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesDeserializer"]],["impl Sync for ExecutedDenunciationsChangesSerializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesSerializer"]],["impl Sync for ExecutedDenunciations",1,["massa_executed_ops::executed_denunciations::ExecutedDenunciations"]],["impl Sync for ExecutedOps",1,["massa_executed_ops::executed_ops::ExecutedOps"]],["impl Sync for ExecutedOpsChangesDeserializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesDeserializer"]],["impl Sync for ExecutedOpsChangesSerializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesSerializer"]]], "massa_execution_exports":[["impl Sync for ExecutionError",1,["massa_execution_exports::error::ExecutionError"]],["impl Sync for ExecutionQueryError",1,["massa_execution_exports::error::ExecutionQueryError"]],["impl Sync for ExecutionQueryExecutionStatus",1,["massa_execution_exports::types::ExecutionQueryExecutionStatus"]],["impl Sync for ExecutionQueryRequestItem",1,["massa_execution_exports::types::ExecutionQueryRequestItem"]],["impl Sync for ExecutionQueryResponseItem",1,["massa_execution_exports::types::ExecutionQueryResponseItem"]],["impl Sync for ReadOnlyExecutionTarget",1,["massa_execution_exports::types::ReadOnlyExecutionTarget"]],["impl Sync for SlotExecutionOutput",1,["massa_execution_exports::types::SlotExecutionOutput"]],["impl Sync for ExecutionChannels",1,["massa_execution_exports::channels::ExecutionChannels"]],["impl Sync for EventStore",1,["massa_execution_exports::event_store::EventStore"]],["impl Sync for ExecutionConfig",1,["massa_execution_exports::settings::ExecutionConfig"]],["impl Sync for StorageCostsConstants",1,["massa_execution_exports::settings::StorageCostsConstants"]],["impl Sync for ExecutedBlockInfo",1,["massa_execution_exports::types::ExecutedBlockInfo"]],["impl Sync for ExecutionAddressInfo",1,["massa_execution_exports::types::ExecutionAddressInfo"]],["impl Sync for ExecutionBlockMetadata",1,["massa_execution_exports::types::ExecutionBlockMetadata"]],["impl Sync for ExecutionOutput",1,["massa_execution_exports::types::ExecutionOutput"]],["impl Sync for ExecutionQueryCycleInfos",1,["massa_execution_exports::types::ExecutionQueryCycleInfos"]],["impl Sync for ExecutionQueryRequest",1,["massa_execution_exports::types::ExecutionQueryRequest"]],["impl Sync for ExecutionQueryResponse",1,["massa_execution_exports::types::ExecutionQueryResponse"]],["impl Sync for ExecutionQueryStakerInfo",1,["massa_execution_exports::types::ExecutionQueryStakerInfo"]],["impl Sync for ExecutionStackElement",1,["massa_execution_exports::types::ExecutionStackElement"]],["impl Sync for ReadOnlyCallRequest",1,["massa_execution_exports::types::ReadOnlyCallRequest"]],["impl Sync for ReadOnlyExecutionOutput",1,["massa_execution_exports::types::ReadOnlyExecutionOutput"]],["impl Sync for ReadOnlyExecutionRequest",1,["massa_execution_exports::types::ReadOnlyExecutionRequest"]]], "massa_execution_worker":[["impl Sync for SlotIndexPosition",1,["massa_execution_worker::active_history::SlotIndexPosition"]],["impl Sync for OperationInfo",1,["massa_execution_worker::execution_info::OperationInfo"]],["impl Sync for ActiveHistory",1,["massa_execution_worker::active_history::ActiveHistory"]],["impl Sync for ExecutionContext",1,["massa_execution_worker::context::ExecutionContext"]],["impl Sync for ExecutionContextSnapshot",1,["massa_execution_worker::context::ExecutionContextSnapshot"]],["impl Sync for ExecutionControllerImpl",1,["massa_execution_worker::controller::ExecutionControllerImpl"]],["impl Sync for ExecutionInputData",1,["massa_execution_worker::controller::ExecutionInputData"]],["impl Sync for ExecutionManagerImpl",1,["massa_execution_worker::controller::ExecutionManagerImpl"]],["impl Sync for ExecutionState",1,["massa_execution_worker::execution::ExecutionState"]],["impl Sync for AsyncMessageExecutionResult",1,["massa_execution_worker::execution_info::AsyncMessageExecutionResult"]],["impl Sync for DeferredCallExecutionResult",1,["massa_execution_worker::execution_info::DeferredCallExecutionResult"]],["impl Sync for DenunciationResult",1,["massa_execution_worker::execution_info::DenunciationResult"]],["impl Sync for ExecutionInfo",1,["massa_execution_worker::execution_info::ExecutionInfo"]],["impl Sync for ExecutionInfoForSlot",1,["massa_execution_worker::execution_info::ExecutionInfoForSlot"]],["impl Sync for InterfaceImpl",1,["massa_execution_worker::interface_impl::InterfaceImpl"]],["impl Sync for SlotInfo",1,["massa_execution_worker::slot_sequencer::SlotInfo"]],["impl Sync for SlotSequencer",1,["massa_execution_worker::slot_sequencer::SlotSequencer"]],["impl Sync for SpeculativeAsyncPool",1,["massa_execution_worker::speculative_async_pool::SpeculativeAsyncPool"]],["impl Sync for SpeculativeDeferredCallRegistry",1,["massa_execution_worker::speculative_deferred_calls::SpeculativeDeferredCallRegistry"]],["impl Sync for SpeculativeExecutedDenunciations",1,["massa_execution_worker::speculative_executed_denunciations::SpeculativeExecutedDenunciations"]],["impl Sync for SpeculativeExecutedOps",1,["massa_execution_worker::speculative_executed_ops::SpeculativeExecutedOps"]],["impl Sync for SpeculativeLedger",1,["massa_execution_worker::speculative_ledger::SpeculativeLedger"]],["impl Sync for SpeculativeRollState",1,["massa_execution_worker::speculative_roll_state::SpeculativeRollState"]],["impl Sync for ExecutionStatsCounter",1,["massa_execution_worker::stats::ExecutionStatsCounter"]],["impl Sync for FileStorageBackend",1,["massa_execution_worker::storage_backend::FileStorageBackend"]],["impl Sync for RocksDBStorageBackend",1,["massa_execution_worker::storage_backend::RocksDBStorageBackend"]],["impl Sync for ExecutionThread",1,["massa_execution_worker::worker::ExecutionThread"]],["impl<T> Sync for HistorySearchResult<T>
    where\n T: Sync,
    ",1,["massa_execution_worker::active_history::HistorySearchResult"]],["impl<T, R> Sync for RequestQueue<T, R>
    where\n T: Sync,\n R: Send,
    ",1,["massa_execution_worker::request_queue::RequestQueue"]],["impl<T, R> Sync for RequestWithResponseSender<T, R>
    where\n T: Sync,\n R: Send,
    ",1,["massa_execution_worker::request_queue::RequestWithResponseSender"]]], diff --git a/trait.impl/core/marker/trait.Unpin.js b/trait.impl/core/marker/trait.Unpin.js index 191bd989c38..8919b5ba5fa 100644 --- a/trait.impl/core/marker/trait.Unpin.js +++ b/trait.impl/core/marker/trait.Unpin.js @@ -11,6 +11,7 @@ "massa_db_exports":[["impl Unpin for MassaDirection",1,["massa_db_exports::controller::MassaDirection"]],["impl Unpin for MassaDBError",1,["massa_db_exports::error::MassaDBError"]],["impl Unpin for MassaDBConfig",1,["massa_db_exports::settings::MassaDBConfig"]],["impl<'a> Unpin for MassaIteratorMode<'a>",1,["massa_db_exports::controller::MassaIteratorMode"]],["impl<ChangeID> Unpin for StreamBatch<ChangeID>
    where\n ChangeID: Unpin,
    ",1,["massa_db_exports::db_batch::StreamBatch"]]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> Unpin for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>
    where\n ChangeIDSerializer: Unpin,\n ChangeIDDeserializer: Unpin,
    ",1,["massa_db_worker::massa_db::RawMassaDB"]]], "massa_deferred_calls":[["impl Unpin for DeferredCall",1,["massa_deferred_calls::call::DeferredCall"]],["impl Unpin for DeferredCallDeserializer",1,["massa_deferred_calls::call::DeferredCallDeserializer"]],["impl Unpin for DeferredCallSerializer",1,["massa_deferred_calls::call::DeferredCallSerializer"]],["impl Unpin for DeferredCallsConfig",1,["massa_deferred_calls::config::DeferredCallsConfig"]],["impl Unpin for DeferredCallRegistryChanges",1,["massa_deferred_calls::registry_changes::DeferredCallRegistryChanges"]],["impl Unpin for DeferredRegistryChangesDeserializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesDeserializer"]],["impl Unpin for DeferredRegistryChangesSerializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesSerializer"]],["impl Unpin for DeferredRegistrySlotChanges",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChanges"]],["impl Unpin for DeferredRegistrySlotChangesDeserializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesDeserializer"]],["impl Unpin for DeferredRegistrySlotChangesSerializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesSerializer"]],["impl Unpin for DeferredCallRegistry",1,["massa_deferred_calls::DeferredCallRegistry"]],["impl Unpin for DeferredSlotCalls",1,["massa_deferred_calls::DeferredSlotCalls"]]], +"massa_event_cache":[["impl Unpin for FilterItem",1,["massa_event_cache::event_cache::FilterItem"]],["impl Unpin for KeyIndent",1,["massa_event_cache::event_cache::KeyIndent"]],["impl Unpin for KeyKind",1,["massa_event_cache::event_cache::KeyKind"]],["impl Unpin for EventCacheConfig",1,["massa_event_cache::config::EventCacheConfig"]],["impl Unpin for EventCacheControllerImpl",1,["massa_event_cache::controller::EventCacheControllerImpl"]],["impl Unpin for EventCacheWriterInputData",1,["massa_event_cache::controller::EventCacheWriterInputData"]],["impl Unpin for DbKeyBuilder",1,["massa_event_cache::event_cache::DbKeyBuilder"]],["impl Unpin for EventCache",1,["massa_event_cache::event_cache::EventCache"]],["impl Unpin for SCOutputEventDeserializer",1,["massa_event_cache::ser_deser::SCOutputEventDeserializer"]],["impl Unpin for SCOutputEventDeserializerArgs",1,["massa_event_cache::ser_deser::SCOutputEventDeserializerArgs"]],["impl Unpin for SCOutputEventSerializer",1,["massa_event_cache::ser_deser::SCOutputEventSerializer"]],["impl Unpin for EventCacheWriterManagerImpl",1,["massa_event_cache::worker::EventCacheWriterManagerImpl"]],["impl Unpin for EventCacheWriterThread",1,["massa_event_cache::worker::EventCacheWriterThread"]],["impl<'a> Unpin for KeyBuilderType<'a>",1,["massa_event_cache::event_cache::KeyBuilderType"]]], "massa_executed_ops":[["impl Unpin for ExecutedDenunciationsConfig",1,["massa_executed_ops::config::ExecutedDenunciationsConfig"]],["impl Unpin for ExecutedOpsConfig",1,["massa_executed_ops::config::ExecutedOpsConfig"]],["impl Unpin for ExecutedDenunciationsChangesDeserializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesDeserializer"]],["impl Unpin for ExecutedDenunciationsChangesSerializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesSerializer"]],["impl Unpin for ExecutedDenunciations",1,["massa_executed_ops::executed_denunciations::ExecutedDenunciations"]],["impl Unpin for ExecutedOps",1,["massa_executed_ops::executed_ops::ExecutedOps"]],["impl Unpin for ExecutedOpsChangesDeserializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesDeserializer"]],["impl Unpin for ExecutedOpsChangesSerializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesSerializer"]]], "massa_execution_exports":[["impl Unpin for ExecutionError",1,["massa_execution_exports::error::ExecutionError"]],["impl Unpin for ExecutionQueryError",1,["massa_execution_exports::error::ExecutionQueryError"]],["impl Unpin for ExecutionQueryExecutionStatus",1,["massa_execution_exports::types::ExecutionQueryExecutionStatus"]],["impl Unpin for ExecutionQueryRequestItem",1,["massa_execution_exports::types::ExecutionQueryRequestItem"]],["impl Unpin for ExecutionQueryResponseItem",1,["massa_execution_exports::types::ExecutionQueryResponseItem"]],["impl Unpin for ReadOnlyExecutionTarget",1,["massa_execution_exports::types::ReadOnlyExecutionTarget"]],["impl Unpin for SlotExecutionOutput",1,["massa_execution_exports::types::SlotExecutionOutput"]],["impl Unpin for ExecutionChannels",1,["massa_execution_exports::channels::ExecutionChannels"]],["impl Unpin for EventStore",1,["massa_execution_exports::event_store::EventStore"]],["impl Unpin for ExecutionConfig",1,["massa_execution_exports::settings::ExecutionConfig"]],["impl Unpin for StorageCostsConstants",1,["massa_execution_exports::settings::StorageCostsConstants"]],["impl Unpin for ExecutedBlockInfo",1,["massa_execution_exports::types::ExecutedBlockInfo"]],["impl Unpin for ExecutionAddressInfo",1,["massa_execution_exports::types::ExecutionAddressInfo"]],["impl Unpin for ExecutionBlockMetadata",1,["massa_execution_exports::types::ExecutionBlockMetadata"]],["impl Unpin for ExecutionOutput",1,["massa_execution_exports::types::ExecutionOutput"]],["impl Unpin for ExecutionQueryCycleInfos",1,["massa_execution_exports::types::ExecutionQueryCycleInfos"]],["impl Unpin for ExecutionQueryRequest",1,["massa_execution_exports::types::ExecutionQueryRequest"]],["impl Unpin for ExecutionQueryResponse",1,["massa_execution_exports::types::ExecutionQueryResponse"]],["impl Unpin for ExecutionQueryStakerInfo",1,["massa_execution_exports::types::ExecutionQueryStakerInfo"]],["impl Unpin for ExecutionStackElement",1,["massa_execution_exports::types::ExecutionStackElement"]],["impl Unpin for ReadOnlyCallRequest",1,["massa_execution_exports::types::ReadOnlyCallRequest"]],["impl Unpin for ReadOnlyExecutionOutput",1,["massa_execution_exports::types::ReadOnlyExecutionOutput"]],["impl Unpin for ReadOnlyExecutionRequest",1,["massa_execution_exports::types::ReadOnlyExecutionRequest"]]], "massa_execution_worker":[["impl Unpin for SlotIndexPosition",1,["massa_execution_worker::active_history::SlotIndexPosition"]],["impl Unpin for OperationInfo",1,["massa_execution_worker::execution_info::OperationInfo"]],["impl Unpin for ActiveHistory",1,["massa_execution_worker::active_history::ActiveHistory"]],["impl Unpin for ExecutionContext",1,["massa_execution_worker::context::ExecutionContext"]],["impl Unpin for ExecutionContextSnapshot",1,["massa_execution_worker::context::ExecutionContextSnapshot"]],["impl Unpin for ExecutionControllerImpl",1,["massa_execution_worker::controller::ExecutionControllerImpl"]],["impl Unpin for ExecutionInputData",1,["massa_execution_worker::controller::ExecutionInputData"]],["impl Unpin for ExecutionManagerImpl",1,["massa_execution_worker::controller::ExecutionManagerImpl"]],["impl Unpin for ExecutionState",1,["massa_execution_worker::execution::ExecutionState"]],["impl Unpin for AsyncMessageExecutionResult",1,["massa_execution_worker::execution_info::AsyncMessageExecutionResult"]],["impl Unpin for DeferredCallExecutionResult",1,["massa_execution_worker::execution_info::DeferredCallExecutionResult"]],["impl Unpin for DenunciationResult",1,["massa_execution_worker::execution_info::DenunciationResult"]],["impl Unpin for ExecutionInfo",1,["massa_execution_worker::execution_info::ExecutionInfo"]],["impl Unpin for ExecutionInfoForSlot",1,["massa_execution_worker::execution_info::ExecutionInfoForSlot"]],["impl Unpin for InterfaceImpl",1,["massa_execution_worker::interface_impl::InterfaceImpl"]],["impl Unpin for SlotInfo",1,["massa_execution_worker::slot_sequencer::SlotInfo"]],["impl Unpin for SlotSequencer",1,["massa_execution_worker::slot_sequencer::SlotSequencer"]],["impl Unpin for SpeculativeAsyncPool",1,["massa_execution_worker::speculative_async_pool::SpeculativeAsyncPool"]],["impl Unpin for SpeculativeDeferredCallRegistry",1,["massa_execution_worker::speculative_deferred_calls::SpeculativeDeferredCallRegistry"]],["impl Unpin for SpeculativeExecutedDenunciations",1,["massa_execution_worker::speculative_executed_denunciations::SpeculativeExecutedDenunciations"]],["impl Unpin for SpeculativeExecutedOps",1,["massa_execution_worker::speculative_executed_ops::SpeculativeExecutedOps"]],["impl Unpin for SpeculativeLedger",1,["massa_execution_worker::speculative_ledger::SpeculativeLedger"]],["impl Unpin for SpeculativeRollState",1,["massa_execution_worker::speculative_roll_state::SpeculativeRollState"]],["impl Unpin for ExecutionStatsCounter",1,["massa_execution_worker::stats::ExecutionStatsCounter"]],["impl Unpin for FileStorageBackend",1,["massa_execution_worker::storage_backend::FileStorageBackend"]],["impl Unpin for RocksDBStorageBackend",1,["massa_execution_worker::storage_backend::RocksDBStorageBackend"]],["impl Unpin for ExecutionThread",1,["massa_execution_worker::worker::ExecutionThread"]],["impl<T> Unpin for HistorySearchResult<T>
    where\n T: Unpin,
    ",1,["massa_execution_worker::active_history::HistorySearchResult"]],["impl<T, R> Unpin for RequestQueue<T, R>
    where\n T: Unpin,
    ",1,["massa_execution_worker::request_queue::RequestQueue"]],["impl<T, R> Unpin for RequestWithResponseSender<T, R>
    where\n T: Unpin,
    ",1,["massa_execution_worker::request_queue::RequestWithResponseSender"]]], diff --git a/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js b/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js index 9a7472f4fa9..b83a81a357e 100644 --- a/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js +++ b/trait.impl/core/panic/unwind_safe/trait.RefUnwindSafe.js @@ -11,6 +11,7 @@ "massa_db_exports":[["impl RefUnwindSafe for MassaDirection",1,["massa_db_exports::controller::MassaDirection"]],["impl RefUnwindSafe for MassaDBError",1,["massa_db_exports::error::MassaDBError"]],["impl RefUnwindSafe for MassaDBConfig",1,["massa_db_exports::settings::MassaDBConfig"]],["impl<'a> RefUnwindSafe for MassaIteratorMode<'a>",1,["massa_db_exports::controller::MassaIteratorMode"]],["impl<ChangeID> RefUnwindSafe for StreamBatch<ChangeID>
    where\n ChangeID: RefUnwindSafe,
    ",1,["massa_db_exports::db_batch::StreamBatch"]]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> !RefUnwindSafe for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>",1,["massa_db_worker::massa_db::RawMassaDB"]]], "massa_deferred_calls":[["impl !RefUnwindSafe for DeferredCallRegistry",1,["massa_deferred_calls::DeferredCallRegistry"]],["impl RefUnwindSafe for DeferredCall",1,["massa_deferred_calls::call::DeferredCall"]],["impl RefUnwindSafe for DeferredCallDeserializer",1,["massa_deferred_calls::call::DeferredCallDeserializer"]],["impl RefUnwindSafe for DeferredCallSerializer",1,["massa_deferred_calls::call::DeferredCallSerializer"]],["impl RefUnwindSafe for DeferredCallsConfig",1,["massa_deferred_calls::config::DeferredCallsConfig"]],["impl RefUnwindSafe for DeferredCallRegistryChanges",1,["massa_deferred_calls::registry_changes::DeferredCallRegistryChanges"]],["impl RefUnwindSafe for DeferredRegistryChangesDeserializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesDeserializer"]],["impl RefUnwindSafe for DeferredRegistryChangesSerializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesSerializer"]],["impl RefUnwindSafe for DeferredRegistrySlotChanges",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChanges"]],["impl RefUnwindSafe for DeferredRegistrySlotChangesDeserializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesDeserializer"]],["impl RefUnwindSafe for DeferredRegistrySlotChangesSerializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesSerializer"]],["impl RefUnwindSafe for DeferredSlotCalls",1,["massa_deferred_calls::DeferredSlotCalls"]]], +"massa_event_cache":[["impl !RefUnwindSafe for EventCacheControllerImpl",1,["massa_event_cache::controller::EventCacheControllerImpl"]],["impl !RefUnwindSafe for EventCacheWriterManagerImpl",1,["massa_event_cache::worker::EventCacheWriterManagerImpl"]],["impl !RefUnwindSafe for EventCacheWriterThread",1,["massa_event_cache::worker::EventCacheWriterThread"]],["impl RefUnwindSafe for FilterItem",1,["massa_event_cache::event_cache::FilterItem"]],["impl RefUnwindSafe for KeyIndent",1,["massa_event_cache::event_cache::KeyIndent"]],["impl RefUnwindSafe for KeyKind",1,["massa_event_cache::event_cache::KeyKind"]],["impl RefUnwindSafe for EventCacheConfig",1,["massa_event_cache::config::EventCacheConfig"]],["impl RefUnwindSafe for EventCacheWriterInputData",1,["massa_event_cache::controller::EventCacheWriterInputData"]],["impl RefUnwindSafe for DbKeyBuilder",1,["massa_event_cache::event_cache::DbKeyBuilder"]],["impl RefUnwindSafe for EventCache",1,["massa_event_cache::event_cache::EventCache"]],["impl RefUnwindSafe for SCOutputEventDeserializer",1,["massa_event_cache::ser_deser::SCOutputEventDeserializer"]],["impl RefUnwindSafe for SCOutputEventDeserializerArgs",1,["massa_event_cache::ser_deser::SCOutputEventDeserializerArgs"]],["impl RefUnwindSafe for SCOutputEventSerializer",1,["massa_event_cache::ser_deser::SCOutputEventSerializer"]],["impl<'a> RefUnwindSafe for KeyBuilderType<'a>",1,["massa_event_cache::event_cache::KeyBuilderType"]]], "massa_executed_ops":[["impl !RefUnwindSafe for ExecutedDenunciations",1,["massa_executed_ops::executed_denunciations::ExecutedDenunciations"]],["impl !RefUnwindSafe for ExecutedOps",1,["massa_executed_ops::executed_ops::ExecutedOps"]],["impl RefUnwindSafe for ExecutedDenunciationsConfig",1,["massa_executed_ops::config::ExecutedDenunciationsConfig"]],["impl RefUnwindSafe for ExecutedOpsConfig",1,["massa_executed_ops::config::ExecutedOpsConfig"]],["impl RefUnwindSafe for ExecutedDenunciationsChangesDeserializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesDeserializer"]],["impl RefUnwindSafe for ExecutedDenunciationsChangesSerializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesSerializer"]],["impl RefUnwindSafe for ExecutedOpsChangesDeserializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesDeserializer"]],["impl RefUnwindSafe for ExecutedOpsChangesSerializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesSerializer"]]], "massa_execution_exports":[["impl !RefUnwindSafe for ExecutionChannels",1,["massa_execution_exports::channels::ExecutionChannels"]],["impl !RefUnwindSafe for ExecutionBlockMetadata",1,["massa_execution_exports::types::ExecutionBlockMetadata"]],["impl RefUnwindSafe for ExecutionError",1,["massa_execution_exports::error::ExecutionError"]],["impl RefUnwindSafe for ExecutionQueryError",1,["massa_execution_exports::error::ExecutionQueryError"]],["impl RefUnwindSafe for ExecutionQueryExecutionStatus",1,["massa_execution_exports::types::ExecutionQueryExecutionStatus"]],["impl RefUnwindSafe for ExecutionQueryRequestItem",1,["massa_execution_exports::types::ExecutionQueryRequestItem"]],["impl RefUnwindSafe for ExecutionQueryResponseItem",1,["massa_execution_exports::types::ExecutionQueryResponseItem"]],["impl RefUnwindSafe for ReadOnlyExecutionTarget",1,["massa_execution_exports::types::ReadOnlyExecutionTarget"]],["impl RefUnwindSafe for SlotExecutionOutput",1,["massa_execution_exports::types::SlotExecutionOutput"]],["impl RefUnwindSafe for EventStore",1,["massa_execution_exports::event_store::EventStore"]],["impl RefUnwindSafe for ExecutionConfig",1,["massa_execution_exports::settings::ExecutionConfig"]],["impl RefUnwindSafe for StorageCostsConstants",1,["massa_execution_exports::settings::StorageCostsConstants"]],["impl RefUnwindSafe for ExecutedBlockInfo",1,["massa_execution_exports::types::ExecutedBlockInfo"]],["impl RefUnwindSafe for ExecutionAddressInfo",1,["massa_execution_exports::types::ExecutionAddressInfo"]],["impl RefUnwindSafe for ExecutionOutput",1,["massa_execution_exports::types::ExecutionOutput"]],["impl RefUnwindSafe for ExecutionQueryCycleInfos",1,["massa_execution_exports::types::ExecutionQueryCycleInfos"]],["impl RefUnwindSafe for ExecutionQueryRequest",1,["massa_execution_exports::types::ExecutionQueryRequest"]],["impl RefUnwindSafe for ExecutionQueryResponse",1,["massa_execution_exports::types::ExecutionQueryResponse"]],["impl RefUnwindSafe for ExecutionQueryStakerInfo",1,["massa_execution_exports::types::ExecutionQueryStakerInfo"]],["impl RefUnwindSafe for ExecutionStackElement",1,["massa_execution_exports::types::ExecutionStackElement"]],["impl RefUnwindSafe for ReadOnlyCallRequest",1,["massa_execution_exports::types::ReadOnlyCallRequest"]],["impl RefUnwindSafe for ReadOnlyExecutionOutput",1,["massa_execution_exports::types::ReadOnlyExecutionOutput"]],["impl RefUnwindSafe for ReadOnlyExecutionRequest",1,["massa_execution_exports::types::ReadOnlyExecutionRequest"]]], "massa_execution_worker":[["impl !RefUnwindSafe for ExecutionContext",1,["massa_execution_worker::context::ExecutionContext"]],["impl !RefUnwindSafe for ExecutionControllerImpl",1,["massa_execution_worker::controller::ExecutionControllerImpl"]],["impl !RefUnwindSafe for ExecutionInputData",1,["massa_execution_worker::controller::ExecutionInputData"]],["impl !RefUnwindSafe for ExecutionManagerImpl",1,["massa_execution_worker::controller::ExecutionManagerImpl"]],["impl !RefUnwindSafe for ExecutionState",1,["massa_execution_worker::execution::ExecutionState"]],["impl !RefUnwindSafe for InterfaceImpl",1,["massa_execution_worker::interface_impl::InterfaceImpl"]],["impl !RefUnwindSafe for SlotInfo",1,["massa_execution_worker::slot_sequencer::SlotInfo"]],["impl !RefUnwindSafe for SlotSequencer",1,["massa_execution_worker::slot_sequencer::SlotSequencer"]],["impl !RefUnwindSafe for SpeculativeAsyncPool",1,["massa_execution_worker::speculative_async_pool::SpeculativeAsyncPool"]],["impl !RefUnwindSafe for SpeculativeDeferredCallRegistry",1,["massa_execution_worker::speculative_deferred_calls::SpeculativeDeferredCallRegistry"]],["impl !RefUnwindSafe for SpeculativeExecutedDenunciations",1,["massa_execution_worker::speculative_executed_denunciations::SpeculativeExecutedDenunciations"]],["impl !RefUnwindSafe for SpeculativeExecutedOps",1,["massa_execution_worker::speculative_executed_ops::SpeculativeExecutedOps"]],["impl !RefUnwindSafe for SpeculativeLedger",1,["massa_execution_worker::speculative_ledger::SpeculativeLedger"]],["impl !RefUnwindSafe for SpeculativeRollState",1,["massa_execution_worker::speculative_roll_state::SpeculativeRollState"]],["impl !RefUnwindSafe for ExecutionThread",1,["massa_execution_worker::worker::ExecutionThread"]],["impl RefUnwindSafe for SlotIndexPosition",1,["massa_execution_worker::active_history::SlotIndexPosition"]],["impl RefUnwindSafe for OperationInfo",1,["massa_execution_worker::execution_info::OperationInfo"]],["impl RefUnwindSafe for ActiveHistory",1,["massa_execution_worker::active_history::ActiveHistory"]],["impl RefUnwindSafe for ExecutionContextSnapshot",1,["massa_execution_worker::context::ExecutionContextSnapshot"]],["impl RefUnwindSafe for AsyncMessageExecutionResult",1,["massa_execution_worker::execution_info::AsyncMessageExecutionResult"]],["impl RefUnwindSafe for DeferredCallExecutionResult",1,["massa_execution_worker::execution_info::DeferredCallExecutionResult"]],["impl RefUnwindSafe for DenunciationResult",1,["massa_execution_worker::execution_info::DenunciationResult"]],["impl RefUnwindSafe for ExecutionInfo",1,["massa_execution_worker::execution_info::ExecutionInfo"]],["impl RefUnwindSafe for ExecutionInfoForSlot",1,["massa_execution_worker::execution_info::ExecutionInfoForSlot"]],["impl RefUnwindSafe for ExecutionStatsCounter",1,["massa_execution_worker::stats::ExecutionStatsCounter"]],["impl RefUnwindSafe for FileStorageBackend",1,["massa_execution_worker::storage_backend::FileStorageBackend"]],["impl RefUnwindSafe for RocksDBStorageBackend",1,["massa_execution_worker::storage_backend::RocksDBStorageBackend"]],["impl<T> RefUnwindSafe for HistorySearchResult<T>
    where\n T: RefUnwindSafe,
    ",1,["massa_execution_worker::active_history::HistorySearchResult"]],["impl<T, R> RefUnwindSafe for RequestQueue<T, R>
    where\n T: RefUnwindSafe,
    ",1,["massa_execution_worker::request_queue::RequestQueue"]],["impl<T, R> RefUnwindSafe for RequestWithResponseSender<T, R>
    where\n T: RefUnwindSafe,
    ",1,["massa_execution_worker::request_queue::RequestWithResponseSender"]]], diff --git a/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js b/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js index c8072890965..9f7cd93b5fe 100644 --- a/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js +++ b/trait.impl/core/panic/unwind_safe/trait.UnwindSafe.js @@ -11,6 +11,7 @@ "massa_db_exports":[["impl UnwindSafe for MassaDirection",1,["massa_db_exports::controller::MassaDirection"]],["impl UnwindSafe for MassaDBError",1,["massa_db_exports::error::MassaDBError"]],["impl UnwindSafe for MassaDBConfig",1,["massa_db_exports::settings::MassaDBConfig"]],["impl<'a> UnwindSafe for MassaIteratorMode<'a>",1,["massa_db_exports::controller::MassaIteratorMode"]],["impl<ChangeID> UnwindSafe for StreamBatch<ChangeID>
    where\n ChangeID: UnwindSafe,
    ",1,["massa_db_exports::db_batch::StreamBatch"]]], "massa_db_worker":[["impl<ChangeID, ChangeIDSerializer, ChangeIDDeserializer> !UnwindSafe for RawMassaDB<ChangeID, ChangeIDSerializer, ChangeIDDeserializer>",1,["massa_db_worker::massa_db::RawMassaDB"]]], "massa_deferred_calls":[["impl !UnwindSafe for DeferredCallRegistry",1,["massa_deferred_calls::DeferredCallRegistry"]],["impl UnwindSafe for DeferredCall",1,["massa_deferred_calls::call::DeferredCall"]],["impl UnwindSafe for DeferredCallDeserializer",1,["massa_deferred_calls::call::DeferredCallDeserializer"]],["impl UnwindSafe for DeferredCallSerializer",1,["massa_deferred_calls::call::DeferredCallSerializer"]],["impl UnwindSafe for DeferredCallsConfig",1,["massa_deferred_calls::config::DeferredCallsConfig"]],["impl UnwindSafe for DeferredCallRegistryChanges",1,["massa_deferred_calls::registry_changes::DeferredCallRegistryChanges"]],["impl UnwindSafe for DeferredRegistryChangesDeserializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesDeserializer"]],["impl UnwindSafe for DeferredRegistryChangesSerializer",1,["massa_deferred_calls::registry_changes::DeferredRegistryChangesSerializer"]],["impl UnwindSafe for DeferredRegistrySlotChanges",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChanges"]],["impl UnwindSafe for DeferredRegistrySlotChangesDeserializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesDeserializer"]],["impl UnwindSafe for DeferredRegistrySlotChangesSerializer",1,["massa_deferred_calls::slot_changes::DeferredRegistrySlotChangesSerializer"]],["impl UnwindSafe for DeferredSlotCalls",1,["massa_deferred_calls::DeferredSlotCalls"]]], +"massa_event_cache":[["impl !UnwindSafe for EventCacheControllerImpl",1,["massa_event_cache::controller::EventCacheControllerImpl"]],["impl !UnwindSafe for EventCacheWriterManagerImpl",1,["massa_event_cache::worker::EventCacheWriterManagerImpl"]],["impl !UnwindSafe for EventCacheWriterThread",1,["massa_event_cache::worker::EventCacheWriterThread"]],["impl UnwindSafe for FilterItem",1,["massa_event_cache::event_cache::FilterItem"]],["impl UnwindSafe for KeyIndent",1,["massa_event_cache::event_cache::KeyIndent"]],["impl UnwindSafe for KeyKind",1,["massa_event_cache::event_cache::KeyKind"]],["impl UnwindSafe for EventCacheConfig",1,["massa_event_cache::config::EventCacheConfig"]],["impl UnwindSafe for EventCacheWriterInputData",1,["massa_event_cache::controller::EventCacheWriterInputData"]],["impl UnwindSafe for DbKeyBuilder",1,["massa_event_cache::event_cache::DbKeyBuilder"]],["impl UnwindSafe for EventCache",1,["massa_event_cache::event_cache::EventCache"]],["impl UnwindSafe for SCOutputEventDeserializer",1,["massa_event_cache::ser_deser::SCOutputEventDeserializer"]],["impl UnwindSafe for SCOutputEventDeserializerArgs",1,["massa_event_cache::ser_deser::SCOutputEventDeserializerArgs"]],["impl UnwindSafe for SCOutputEventSerializer",1,["massa_event_cache::ser_deser::SCOutputEventSerializer"]],["impl<'a> UnwindSafe for KeyBuilderType<'a>",1,["massa_event_cache::event_cache::KeyBuilderType"]]], "massa_executed_ops":[["impl !UnwindSafe for ExecutedDenunciations",1,["massa_executed_ops::executed_denunciations::ExecutedDenunciations"]],["impl !UnwindSafe for ExecutedOps",1,["massa_executed_ops::executed_ops::ExecutedOps"]],["impl UnwindSafe for ExecutedDenunciationsConfig",1,["massa_executed_ops::config::ExecutedDenunciationsConfig"]],["impl UnwindSafe for ExecutedOpsConfig",1,["massa_executed_ops::config::ExecutedOpsConfig"]],["impl UnwindSafe for ExecutedDenunciationsChangesDeserializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesDeserializer"]],["impl UnwindSafe for ExecutedDenunciationsChangesSerializer",1,["massa_executed_ops::denunciations_changes::ExecutedDenunciationsChangesSerializer"]],["impl UnwindSafe for ExecutedOpsChangesDeserializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesDeserializer"]],["impl UnwindSafe for ExecutedOpsChangesSerializer",1,["massa_executed_ops::ops_changes::ExecutedOpsChangesSerializer"]]], "massa_execution_exports":[["impl !UnwindSafe for ExecutionChannels",1,["massa_execution_exports::channels::ExecutionChannels"]],["impl !UnwindSafe for ExecutionBlockMetadata",1,["massa_execution_exports::types::ExecutionBlockMetadata"]],["impl UnwindSafe for ExecutionError",1,["massa_execution_exports::error::ExecutionError"]],["impl UnwindSafe for ExecutionQueryError",1,["massa_execution_exports::error::ExecutionQueryError"]],["impl UnwindSafe for ExecutionQueryExecutionStatus",1,["massa_execution_exports::types::ExecutionQueryExecutionStatus"]],["impl UnwindSafe for ExecutionQueryRequestItem",1,["massa_execution_exports::types::ExecutionQueryRequestItem"]],["impl UnwindSafe for ExecutionQueryResponseItem",1,["massa_execution_exports::types::ExecutionQueryResponseItem"]],["impl UnwindSafe for ReadOnlyExecutionTarget",1,["massa_execution_exports::types::ReadOnlyExecutionTarget"]],["impl UnwindSafe for SlotExecutionOutput",1,["massa_execution_exports::types::SlotExecutionOutput"]],["impl UnwindSafe for EventStore",1,["massa_execution_exports::event_store::EventStore"]],["impl UnwindSafe for ExecutionConfig",1,["massa_execution_exports::settings::ExecutionConfig"]],["impl UnwindSafe for StorageCostsConstants",1,["massa_execution_exports::settings::StorageCostsConstants"]],["impl UnwindSafe for ExecutedBlockInfo",1,["massa_execution_exports::types::ExecutedBlockInfo"]],["impl UnwindSafe for ExecutionAddressInfo",1,["massa_execution_exports::types::ExecutionAddressInfo"]],["impl UnwindSafe for ExecutionOutput",1,["massa_execution_exports::types::ExecutionOutput"]],["impl UnwindSafe for ExecutionQueryCycleInfos",1,["massa_execution_exports::types::ExecutionQueryCycleInfos"]],["impl UnwindSafe for ExecutionQueryRequest",1,["massa_execution_exports::types::ExecutionQueryRequest"]],["impl UnwindSafe for ExecutionQueryResponse",1,["massa_execution_exports::types::ExecutionQueryResponse"]],["impl UnwindSafe for ExecutionQueryStakerInfo",1,["massa_execution_exports::types::ExecutionQueryStakerInfo"]],["impl UnwindSafe for ExecutionStackElement",1,["massa_execution_exports::types::ExecutionStackElement"]],["impl UnwindSafe for ReadOnlyCallRequest",1,["massa_execution_exports::types::ReadOnlyCallRequest"]],["impl UnwindSafe for ReadOnlyExecutionOutput",1,["massa_execution_exports::types::ReadOnlyExecutionOutput"]],["impl UnwindSafe for ReadOnlyExecutionRequest",1,["massa_execution_exports::types::ReadOnlyExecutionRequest"]]], "massa_execution_worker":[["impl !UnwindSafe for ExecutionContext",1,["massa_execution_worker::context::ExecutionContext"]],["impl !UnwindSafe for ExecutionControllerImpl",1,["massa_execution_worker::controller::ExecutionControllerImpl"]],["impl !UnwindSafe for ExecutionInputData",1,["massa_execution_worker::controller::ExecutionInputData"]],["impl !UnwindSafe for ExecutionManagerImpl",1,["massa_execution_worker::controller::ExecutionManagerImpl"]],["impl !UnwindSafe for ExecutionState",1,["massa_execution_worker::execution::ExecutionState"]],["impl !UnwindSafe for InterfaceImpl",1,["massa_execution_worker::interface_impl::InterfaceImpl"]],["impl !UnwindSafe for SlotInfo",1,["massa_execution_worker::slot_sequencer::SlotInfo"]],["impl !UnwindSafe for SlotSequencer",1,["massa_execution_worker::slot_sequencer::SlotSequencer"]],["impl !UnwindSafe for SpeculativeAsyncPool",1,["massa_execution_worker::speculative_async_pool::SpeculativeAsyncPool"]],["impl !UnwindSafe for SpeculativeDeferredCallRegistry",1,["massa_execution_worker::speculative_deferred_calls::SpeculativeDeferredCallRegistry"]],["impl !UnwindSafe for SpeculativeExecutedDenunciations",1,["massa_execution_worker::speculative_executed_denunciations::SpeculativeExecutedDenunciations"]],["impl !UnwindSafe for SpeculativeExecutedOps",1,["massa_execution_worker::speculative_executed_ops::SpeculativeExecutedOps"]],["impl !UnwindSafe for SpeculativeLedger",1,["massa_execution_worker::speculative_ledger::SpeculativeLedger"]],["impl !UnwindSafe for SpeculativeRollState",1,["massa_execution_worker::speculative_roll_state::SpeculativeRollState"]],["impl !UnwindSafe for ExecutionThread",1,["massa_execution_worker::worker::ExecutionThread"]],["impl UnwindSafe for SlotIndexPosition",1,["massa_execution_worker::active_history::SlotIndexPosition"]],["impl UnwindSafe for OperationInfo",1,["massa_execution_worker::execution_info::OperationInfo"]],["impl UnwindSafe for ActiveHistory",1,["massa_execution_worker::active_history::ActiveHistory"]],["impl UnwindSafe for ExecutionContextSnapshot",1,["massa_execution_worker::context::ExecutionContextSnapshot"]],["impl UnwindSafe for AsyncMessageExecutionResult",1,["massa_execution_worker::execution_info::AsyncMessageExecutionResult"]],["impl UnwindSafe for DeferredCallExecutionResult",1,["massa_execution_worker::execution_info::DeferredCallExecutionResult"]],["impl UnwindSafe for DenunciationResult",1,["massa_execution_worker::execution_info::DenunciationResult"]],["impl UnwindSafe for ExecutionInfo",1,["massa_execution_worker::execution_info::ExecutionInfo"]],["impl UnwindSafe for ExecutionInfoForSlot",1,["massa_execution_worker::execution_info::ExecutionInfoForSlot"]],["impl UnwindSafe for ExecutionStatsCounter",1,["massa_execution_worker::stats::ExecutionStatsCounter"]],["impl UnwindSafe for FileStorageBackend",1,["massa_execution_worker::storage_backend::FileStorageBackend"]],["impl UnwindSafe for RocksDBStorageBackend",1,["massa_execution_worker::storage_backend::RocksDBStorageBackend"]],["impl<T> UnwindSafe for HistorySearchResult<T>
    where\n T: UnwindSafe,
    ",1,["massa_execution_worker::active_history::HistorySearchResult"]],["impl<T, R> UnwindSafe for RequestQueue<T, R>
    where\n T: UnwindSafe,
    ",1,["massa_execution_worker::request_queue::RequestQueue"]],["impl<T, R> UnwindSafe for RequestWithResponseSender<T, R>
    where\n T: UnwindSafe,
    ",1,["massa_execution_worker::request_queue::RequestWithResponseSender"]]], diff --git a/trait.impl/massa_event_cache/controller/trait.EventCacheController.js b/trait.impl/massa_event_cache/controller/trait.EventCacheController.js new file mode 100644 index 00000000000..9d6fd40a8c9 --- /dev/null +++ b/trait.impl/massa_event_cache/controller/trait.EventCacheController.js @@ -0,0 +1,3 @@ +(function() {var implementors = { +"massa_event_cache":[] +};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/massa_event_cache/worker/trait.EventCacheManager.js b/trait.impl/massa_event_cache/worker/trait.EventCacheManager.js new file mode 100644 index 00000000000..9d6fd40a8c9 --- /dev/null +++ b/trait.impl/massa_event_cache/worker/trait.EventCacheManager.js @@ -0,0 +1,3 @@ +(function() {var implementors = { +"massa_event_cache":[] +};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionController.js b/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionController.js index 0e5b8f1e2fd..417cedc055b 100644 --- a/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionController.js +++ b/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionController.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"massa_execution_worker":[["impl ExecutionController for ExecutionControllerImpl"]] +"massa_execution_worker":[["impl ExecutionController for ExecutionControllerImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionManager.js b/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionManager.js index a194de83aed..5e207c64059 100644 --- a/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionManager.js +++ b/trait.impl/massa_execution_exports/controller_traits/trait.ExecutionManager.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"massa_execution_worker":[["impl ExecutionManager for ExecutionManagerImpl"]] +"massa_execution_worker":[["impl ExecutionManager for ExecutionManagerImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/massa_pool_exports/controller_traits/trait.PoolController.js b/trait.impl/massa_pool_exports/controller_traits/trait.PoolController.js index 861511e6de0..fb9c3c671e7 100644 --- a/trait.impl/massa_pool_exports/controller_traits/trait.PoolController.js +++ b/trait.impl/massa_pool_exports/controller_traits/trait.PoolController.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"massa_pool_worker":[["impl PoolController for PoolControllerImpl"]] +"massa_pool_worker":[["impl PoolController for PoolControllerImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/massa_pool_exports/controller_traits/trait.PoolManager.js b/trait.impl/massa_pool_exports/controller_traits/trait.PoolManager.js index 98295c03cd2..428365f3e80 100644 --- a/trait.impl/massa_pool_exports/controller_traits/trait.PoolManager.js +++ b/trait.impl/massa_pool_exports/controller_traits/trait.PoolManager.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"massa_pool_worker":[["impl PoolManager for PoolManagerImpl"]] +"massa_pool_worker":[["impl PoolManager for PoolManagerImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/massa_serialization/trait.Deserializer.js b/trait.impl/massa_serialization/trait.Deserializer.js index 1737bee6530..4856beed671 100644 --- a/trait.impl/massa_serialization/trait.Deserializer.js +++ b/trait.impl/massa_serialization/trait.Deserializer.js @@ -3,11 +3,12 @@ "massa_bootstrap":[["impl Deserializer<BootstrapClientMessage> for BootstrapClientMessageDeserializer"],["impl Deserializer<BootstrapServerMessage> for BootstrapServerMessageDeserializer"]], "massa_consensus_exports":[["impl Deserializer<BootstrapableGraph> for BootstrapableGraphDeserializer"],["impl Deserializer<ExportActiveBlock> for ExportActiveBlockDeserializer"]], "massa_deferred_calls":[["impl Deserializer<DeferredCall> for DeferredCallDeserializer"],["impl Deserializer<DeferredCallRegistryChanges> for DeferredRegistryChangesDeserializer"],["impl Deserializer<DeferredRegistrySlotChanges> for DeferredRegistrySlotChangesDeserializer"]], +"massa_event_cache":[["impl Deserializer<SCOutputEvent> for SCOutputEventDeserializer"]], "massa_executed_ops":[["impl Deserializer<HashMap<OperationId, (bool, Slot), BuildHasherDefault<HashMapper<OperationId>>>> for ExecutedOpsChangesDeserializer"],["impl Deserializer<HashSet<DenunciationIndex>> for ExecutedDenunciationsChangesDeserializer"]], "massa_final_state":[["impl Deserializer<StateChanges> for StateChangesDeserializer"]], "massa_hash":[["impl Deserializer<Hash> for HashDeserializer"],["impl<const SIZE: usize> Deserializer<HashXof<SIZE>> for HashXofDeserializer"]], "massa_ledger_exports":[["impl Deserializer<KeyType> for KeyTypeDeserializer"],["impl Deserializer<BTreeMap<Vec<u8>, SetOrDelete<Vec<u8>>>> for DatastoreUpdateDeserializer"],["impl Deserializer<Key> for KeyDeserializer"],["impl Deserializer<LedgerChanges> for LedgerChangesDeserializer"],["impl Deserializer<LedgerEntryUpdate> for LedgerEntryUpdateDeserializer"],["impl Deserializer<LedgerEntry> for LedgerEntryDeserializer"]], -"massa_models":[["impl Deserializer<IpAddr> for IpAddrDeserializer"],["impl Deserializer<Address> for AddressDeserializer"],["impl Deserializer<SCAddress> for AddressDeserializer"],["impl Deserializer<UserAddress> for AddressDeserializer"],["impl Deserializer<BlockId> for BlockIdDeserializer"],["impl Deserializer<DeferredCallId> for DeferredCallIdDeserializer"],["impl Deserializer<Denunciation> for DenunciationDeserializer"],["impl Deserializer<DenunciationIndex> for DenunciationIndexDeserializer"],["impl Deserializer<EndorsementId> for EndorsementIdDeserializer"],["impl Deserializer<OperationId> for OperationIdDeserializer"],["impl Deserializer<OperationPrefixId> for OperationPrefixIdDeserializer"],["impl Deserializer<OperationType> for OperationTypeDeserializer"],["impl Deserializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreDeserializer"],["impl Deserializer<Vec<OperationId>> for OperationIdsDeserializer"],["impl Deserializer<Vec<u8>> for VecU8Deserializer"],["impl Deserializer<Vec<SecureShare<Operation, OperationId>>> for OperationsDeserializer"],["impl Deserializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsDeserializer"],["impl Deserializer<SCAddressV0> for AddressDeserializer"],["impl Deserializer<UserAddressV0> for AddressDeserializer"],["impl Deserializer<Amount> for AmountDeserializer"],["impl Deserializer<Block> for BlockDeserializer"],["impl Deserializer<BlockHeader> for BlockHeaderDeserializer"],["impl Deserializer<BlockIdV0> for BlockIdDeserializer"],["impl Deserializer<Bytecode> for BytecodeDeserializer"],["impl Deserializer<Clique> for CliqueDeserializer"],["impl Deserializer<BlockHeaderDenunciation> for BlockHeaderDenunciationDeserializer"],["impl Deserializer<EndorsementDenunciation> for EndorsementDenunciationDeserializer"],["impl Deserializer<Endorsement> for EndorsementDeserializer"],["impl Deserializer<Endorsement> for EndorsementDeserializerLW"],["impl Deserializer<EndorsementIdV0> for EndorsementIdDeserializer"],["impl Deserializer<LedgerChange> for LedgerChangeDeserializer"],["impl Deserializer<LedgerChanges> for LedgerChangesDeserializer"],["impl Deserializer<LedgerData> for LedgerDataDeserializer"],["impl Deserializer<Operation> for OperationDeserializer"],["impl Deserializer<OperationIdV0> for OperationIdDeserializer"],["impl Deserializer<RollUpdate> for RollUpdateDeserializer"],["impl Deserializer<Slot> for SlotDeserializer"],["impl Deserializer<Version> for VersionDeserializer"],["impl Deserializer<BitVec<u8>> for BitVecDeserializer"],["impl<DL, L> Deserializer<String> for StringDeserializer<DL, L>
    where\n DL: Deserializer<L>,\n L: TryFrom<usize> + ToUsize,
    "],["impl<T, ID, Deser> Deserializer<SecureShare<T, ID>> for SecureShareDeserializer<T, Deser>
    where\n T: Display + SecureShareContent,\n ID: Id,\n Deser: Deserializer<T>,
    "],["impl<T, ST> Deserializer<StreamingStep<T>> for StreamingStepDeserializer<T, ST>
    where\n ST: Deserializer<T>,\n T: Clone,
    "],["impl<T, ST> Deserializer<Vec<T>> for VecDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone,
    "],["impl<T, ST> Deserializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone,\n T: PreHashed + Eq + Hash,
    "],["impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrDelete<T>> for SetOrDeleteDeserializer<T, DT>"],["impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrKeep<T>> for SetOrKeepDeserializer<T, DT>"],["impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> Deserializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteDeserializer<T, V, DT, DV>"]], +"massa_models":[["impl Deserializer<IpAddr> for IpAddrDeserializer"],["impl Deserializer<Address> for AddressDeserializer"],["impl Deserializer<SCAddress> for AddressDeserializer"],["impl Deserializer<UserAddress> for AddressDeserializer"],["impl Deserializer<BlockId> for BlockIdDeserializer"],["impl Deserializer<DeferredCallId> for DeferredCallIdDeserializer"],["impl Deserializer<Denunciation> for DenunciationDeserializer"],["impl Deserializer<DenunciationIndex> for DenunciationIndexDeserializer"],["impl Deserializer<EndorsementId> for EndorsementIdDeserializer"],["impl Deserializer<OperationId> for OperationIdDeserializer"],["impl Deserializer<OperationPrefixId> for OperationPrefixIdDeserializer"],["impl Deserializer<OperationType> for OperationTypeDeserializer"],["impl Deserializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreDeserializer"],["impl Deserializer<Vec<OperationId>> for OperationIdsDeserializer"],["impl Deserializer<Vec<u8>> for VecU8Deserializer"],["impl Deserializer<Vec<SecureShare<Operation, OperationId>>> for OperationsDeserializer"],["impl Deserializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsDeserializer"],["impl Deserializer<SCAddressV0> for AddressDeserializer"],["impl Deserializer<UserAddressV0> for AddressDeserializer"],["impl Deserializer<Amount> for AmountDeserializer"],["impl Deserializer<Block> for BlockDeserializer"],["impl Deserializer<BlockHeader> for BlockHeaderDeserializer"],["impl Deserializer<BlockIdV0> for BlockIdDeserializer"],["impl Deserializer<Bytecode> for BytecodeDeserializer"],["impl Deserializer<Clique> for CliqueDeserializer"],["impl Deserializer<BlockHeaderDenunciation> for BlockHeaderDenunciationDeserializer"],["impl Deserializer<EndorsementDenunciation> for EndorsementDenunciationDeserializer"],["impl Deserializer<Endorsement> for EndorsementDeserializer"],["impl Deserializer<Endorsement> for EndorsementDeserializerLW"],["impl Deserializer<EndorsementIdV0> for EndorsementIdDeserializer"],["impl Deserializer<LedgerChange> for LedgerChangeDeserializer"],["impl Deserializer<LedgerChanges> for LedgerChangesDeserializer"],["impl Deserializer<LedgerData> for LedgerDataDeserializer"],["impl Deserializer<Operation> for OperationDeserializer"],["impl Deserializer<OperationIdV0> for OperationIdDeserializer"],["impl Deserializer<RollUpdate> for RollUpdateDeserializer"],["impl Deserializer<Slot> for SlotDeserializer"],["impl Deserializer<Version> for VersionDeserializer"],["impl Deserializer<BitVec<u8>> for BitVecDeserializer"],["impl<DL, L> Deserializer<String> for StringDeserializer<DL, L>
    where\n DL: Deserializer<L>,\n L: TryFrom<usize> + ToUsize,
    "],["impl<T, ID, Deser> Deserializer<SecureShare<T, ID>> for SecureShareDeserializer<T, Deser>
    where\n T: Display + SecureShareContent,\n ID: Id,\n Deser: Deserializer<T>,
    "],["impl<T, ST> Deserializer<StreamingStep<T>> for StreamingStepDeserializer<T, ST>
    where\n ST: Deserializer<T>,\n T: Clone,
    "],["impl<T, ST> Deserializer<Vec<T>> for VecDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone,
    "],["impl<T, ST> Deserializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetDeserializer<T, ST>
    where\n ST: Deserializer<T> + Clone,\n T: PreHashed + Eq + Hash,
    "],["impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrDelete<T>> for SetOrDeleteDeserializer<T, DT>"],["impl<T: Clone, DT: Deserializer<T>> Deserializer<SetOrKeep<T>> for SetOrKeepDeserializer<T, DT>"],["impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, DT: Deserializer<T>, DV: Deserializer<V>> Deserializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteDeserializer<T, V, DT, DV>"]], "massa_module_cache":[["impl Deserializer<ModuleMetadata> for ModuleMetadataDeserializer"]], "massa_pos_exports":[["impl Deserializer<Vec<(Address, u64)>> for RollsDeserializer"],["impl Deserializer<Vec<CycleInfo>> for CycleHistoryDeserializer"],["impl Deserializer<HashMap<Address, ProductionStats, BuildHasherDefault<HashMapper<Address>>>> for ProductionStatsDeserializer"],["impl Deserializer<HashMap<Address, Amount, BuildHasherDefault<HashMapper<Address>>>> for CreditsDeserializer"],["impl Deserializer<CycleInfo> for CycleInfoDeserializer"],["impl Deserializer<DeferredCredits> for DeferredCreditsDeserializer"],["impl Deserializer<PoSChanges> for PoSChangesDeserializer"]], "massa_protocol_exports":[["impl Deserializer<BootstrapPeers> for BootstrapPeersDeserializer"],["impl Deserializer<PeerId> for PeerIdDeserializer"]], diff --git a/trait.impl/massa_serialization/trait.Serializer.js b/trait.impl/massa_serialization/trait.Serializer.js index 62a63964d48..33931c0ca55 100644 --- a/trait.impl/massa_serialization/trait.Serializer.js +++ b/trait.impl/massa_serialization/trait.Serializer.js @@ -3,11 +3,12 @@ "massa_bootstrap":[["impl Serializer<BootstrapClientMessage> for BootstrapClientMessageSerializer"],["impl Serializer<BootstrapServerMessage> for BootstrapServerMessageSerializer"]], "massa_consensus_exports":[["impl Serializer<BootstrapableGraph> for BootstrapableGraphSerializer"],["impl Serializer<ExportActiveBlock> for ExportActiveBlockSerializer"]], "massa_deferred_calls":[["impl Serializer<DeferredCall> for DeferredCallSerializer"],["impl Serializer<DeferredCallRegistryChanges> for DeferredRegistryChangesSerializer"],["impl Serializer<DeferredRegistrySlotChanges> for DeferredRegistrySlotChangesSerializer"]], +"massa_event_cache":[["impl Serializer<SCOutputEvent> for SCOutputEventSerializer"]], "massa_executed_ops":[["impl Serializer<HashMap<OperationId, (bool, Slot), BuildHasherDefault<HashMapper<OperationId>>>> for ExecutedOpsChangesSerializer"],["impl Serializer<HashSet<DenunciationIndex>> for ExecutedDenunciationsChangesSerializer"]], "massa_final_state":[["impl Serializer<StateChanges> for StateChangesSerializer"]], "massa_hash":[["impl Serializer<Hash> for HashSerializer"],["impl<const SIZE: usize> Serializer<HashXof<SIZE>> for HashXofSerializer"]], "massa_ledger_exports":[["impl Serializer<KeyType> for KeyTypeSerializer"],["impl Serializer<BTreeMap<Vec<u8>, SetOrDelete<Vec<u8>>>> for DatastoreUpdateSerializer"],["impl Serializer<Key> for KeySerializer"],["impl Serializer<LedgerChanges> for LedgerChangesSerializer"],["impl Serializer<LedgerEntryUpdate> for LedgerEntryUpdateSerializer"],["impl Serializer<LedgerEntry> for LedgerEntrySerializer"]], -"massa_models":[["impl Serializer<IpAddr> for IpAddrSerializer"],["impl Serializer<Address> for AddressSerializer"],["impl Serializer<SCAddress> for AddressSerializer"],["impl Serializer<UserAddress> for AddressSerializer"],["impl Serializer<BlockId> for BlockIdSerializer"],["impl Serializer<DeferredCallId> for DeferredCallIdSerializer"],["impl Serializer<Denunciation> for DenunciationSerializer"],["impl Serializer<DenunciationIndex> for DenunciationIndexSerializer"],["impl Serializer<OperationId> for OperationIdSerializer"],["impl Serializer<OperationType> for OperationTypeSerializer"],["impl Serializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreSerializer"],["impl Serializer<Vec<OperationId>> for OperationIdsSerializer"],["impl Serializer<Vec<u8>> for VecU8Serializer"],["impl Serializer<Vec<SecureShare<Operation, OperationId>>> for OperationsSerializer"],["impl Serializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsSerializer"],["impl Serializer<SCAddressV0> for AddressSerializer"],["impl Serializer<UserAddressV0> for AddressSerializer"],["impl Serializer<Amount> for AmountSerializer"],["impl Serializer<Block> for BlockSerializer"],["impl Serializer<BlockHeader> for BlockHeaderSerializer"],["impl Serializer<BlockIdV0> for BlockIdSerializer"],["impl Serializer<Bytecode> for BytecodeSerializer"],["impl Serializer<Clique> for CliqueSerializer"],["impl Serializer<BlockHeaderDenunciation> for BlockHeaderDenunciationSerializer"],["impl Serializer<EndorsementDenunciation> for EndorsementDenunciationSerializer"],["impl Serializer<Endorsement> for EndorsementSerializer"],["impl Serializer<Endorsement> for EndorsementSerializerLW"],["impl Serializer<LedgerChange> for LedgerChangeSerializer"],["impl Serializer<LedgerChanges> for LedgerChangesSerializer"],["impl Serializer<LedgerData> for LedgerDataSerializer"],["impl Serializer<Operation> for OperationSerializer"],["impl Serializer<OperationIdV0> for OperationIdSerializer"],["impl Serializer<RollUpdate> for RollUpdateSerializer"],["impl Serializer<Slot> for SlotSerializer"],["impl Serializer<Version> for VersionSerializer"],["impl Serializer<BitVec<u8>> for BitVecSerializer"],["impl<SL, L> Serializer<String> for StringSerializer<SL, L>
    where\n SL: Serializer<L>,\n L: TryFrom<usize>,
    "],["impl<T, ID> Serializer<SecureShare<T, ID>> for SecureShareSerializer
    where\n T: Display + SecureShareContent,\n ID: Id,
    "],["impl<T, ST> Serializer<StreamingStep<T>> for StreamingStepSerializer<T, ST>
    where\n ST: Serializer<T>,\n T: Debug,
    "],["impl<T, ST> Serializer<Vec<T>> for VecSerializer<T, ST>
    where\n ST: Serializer<T>,
    "],["impl<T, ST> Serializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetSerializer<T, ST>
    where\n ST: Serializer<T>,\n T: PreHashed,
    "],["impl<T: Clone, ST: Serializer<T>> Serializer<SetOrDelete<T>> for SetOrDeleteSerializer<T, ST>"],["impl<T: Clone, ST: Serializer<T>> Serializer<SetOrKeep<T>> for SetOrKeepSerializer<T, ST>"],["impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> Serializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteSerializer<T, V, ST, SV>"]], +"massa_models":[["impl Serializer<IpAddr> for IpAddrSerializer"],["impl Serializer<Address> for AddressSerializer"],["impl Serializer<SCAddress> for AddressSerializer"],["impl Serializer<UserAddress> for AddressSerializer"],["impl Serializer<BlockId> for BlockIdSerializer"],["impl Serializer<DeferredCallId> for DeferredCallIdSerializer"],["impl Serializer<Denunciation> for DenunciationSerializer"],["impl Serializer<DenunciationIndex> for DenunciationIndexSerializer"],["impl Serializer<OperationId> for OperationIdSerializer"],["impl Serializer<OperationType> for OperationTypeSerializer"],["impl Serializer<BTreeMap<Vec<u8>, Vec<u8>>> for DatastoreSerializer"],["impl Serializer<Vec<OperationId>> for OperationIdsSerializer"],["impl Serializer<Vec<u8>> for VecU8Serializer"],["impl Serializer<Vec<SecureShare<Operation, OperationId>>> for OperationsSerializer"],["impl Serializer<HashSet<OperationPrefixId, BuildHasherDefault<HashMapper<OperationPrefixId>>>> for OperationPrefixIdsSerializer"],["impl Serializer<SCAddressV0> for AddressSerializer"],["impl Serializer<UserAddressV0> for AddressSerializer"],["impl Serializer<Amount> for AmountSerializer"],["impl Serializer<Block> for BlockSerializer"],["impl Serializer<BlockHeader> for BlockHeaderSerializer"],["impl Serializer<BlockIdV0> for BlockIdSerializer"],["impl Serializer<Bytecode> for BytecodeSerializer"],["impl Serializer<Clique> for CliqueSerializer"],["impl Serializer<BlockHeaderDenunciation> for BlockHeaderDenunciationSerializer"],["impl Serializer<EndorsementDenunciation> for EndorsementDenunciationSerializer"],["impl Serializer<Endorsement> for EndorsementSerializer"],["impl Serializer<Endorsement> for EndorsementSerializerLW"],["impl Serializer<LedgerChange> for LedgerChangeSerializer"],["impl Serializer<LedgerChanges> for LedgerChangesSerializer"],["impl Serializer<LedgerData> for LedgerDataSerializer"],["impl Serializer<Operation> for OperationSerializer"],["impl Serializer<OperationIdV0> for OperationIdSerializer"],["impl Serializer<RollUpdate> for RollUpdateSerializer"],["impl Serializer<Slot> for SlotSerializer"],["impl Serializer<Version> for VersionSerializer"],["impl Serializer<BitVec<u8>> for BitVecSerializer"],["impl<SL, L> Serializer<String> for StringSerializer<SL, L>
    where\n SL: Serializer<L>,\n L: TryFrom<usize>,
    "],["impl<T, ID> Serializer<SecureShare<T, ID>> for SecureShareSerializer
    where\n T: Display + SecureShareContent,\n ID: Id,
    "],["impl<T, ST> Serializer<StreamingStep<T>> for StreamingStepSerializer<T, ST>
    where\n ST: Serializer<T>,\n T: Debug,
    "],["impl<T, ST> Serializer<Vec<T>> for VecSerializer<T, ST>
    where\n ST: Serializer<T>,
    "],["impl<T, ST> Serializer<HashSet<T, BuildHasherDefault<HashMapper<T>>>> for PreHashSetSerializer<T, ST>
    where\n ST: Serializer<T>,\n T: PreHashed,
    "],["impl<T: Clone, ST: Serializer<T>> Serializer<SetOrDelete<T>> for SetOrDeleteSerializer<T, ST>"],["impl<T: Clone, ST: Serializer<T>> Serializer<SetOrKeep<T>> for SetOrKeepSerializer<T, ST>"],["impl<T: Default + Applicable<V>, V: Applicable<V> + Clone, ST: Serializer<T>, SV: Serializer<V>> Serializer<SetUpdateOrDelete<T, V>> for SetUpdateOrDeleteSerializer<T, V, ST, SV>"]], "massa_module_cache":[["impl Serializer<ModuleMetadata> for ModuleMetadataSerializer"]], "massa_pos_exports":[["impl Serializer<VecDeque<CycleInfo>> for CycleHistorySerializer"],["impl Serializer<HashMap<Address, ProductionStats, BuildHasherDefault<HashMapper<Address>>>> for ProductionStatsSerializer"],["impl Serializer<HashMap<Address, Amount, BuildHasherDefault<HashMapper<Address>>>> for CreditsSerializer"],["impl Serializer<CycleInfo> for CycleInfoSerializer"],["impl Serializer<DeferredCredits> for DeferredCreditsSerializer"],["impl Serializer<PoSChanges> for PoSChangesSerializer"]], "massa_protocol_exports":[["impl Serializer<BootstrapPeers> for BootstrapPeersSerializer"],["impl Serializer<PeerId> for PeerIdSerializer"]], diff --git a/trait.impl/serde/de/trait.Deserialize.js b/trait.impl/serde/de/trait.Deserialize.js index 020895f4674..86f7e4565a9 100644 --- a/trait.impl/serde/de/trait.Deserialize.js +++ b/trait.impl/serde/de/trait.Deserialize.js @@ -1,20 +1,20 @@ (function() {var implementors = { -"massa_api_exports":[["impl<'de> Deserialize<'de> for ReadOnlyResult"],["impl<'de> Deserialize<'de> for TransferContext"],["impl<'de> Deserialize<'de> for AddressFilter"],["impl<'de> Deserialize<'de> for AddressInfo"],["impl<'de> Deserialize<'de> for CompactAddressInfo"],["impl<'de> Deserialize<'de> for BlockInfo"],["impl<'de> Deserialize<'de> for BlockInfoContent"],["impl<'de> Deserialize<'de> for BlockSummary"],["impl<'de> Deserialize<'de> for APIConfig"],["impl<'de> Deserialize<'de> for DatastoreEntryInput"],["impl<'de> Deserialize<'de> for DatastoreEntryOutput"],["impl<'de> Deserialize<'de> for EndorsementInfo"],["impl<'de> Deserialize<'de> for DeferredCallResponse"],["impl<'de> Deserialize<'de> for DeferredCallsQuoteRequest"],["impl<'de> Deserialize<'de> for DeferredCallsQuoteResponse"],["impl<'de> Deserialize<'de> for DeferredCallsSlotResponse"],["impl<'de> Deserialize<'de> for ExecuteReadOnlyResponse"],["impl<'de> Deserialize<'de> for ReadOnlyBytecodeExecution"],["impl<'de> Deserialize<'de> for ReadOnlyCall"],["impl<'de> Deserialize<'de> for Transfer"],["impl<'de> Deserialize<'de> for LedgerInfo"],["impl<'de> Deserialize<'de> for NodeStatus"],["impl<'de> Deserialize<'de> for OperationInfo"],["impl<'de> Deserialize<'de> for OperationInput"],["impl<'de> Deserialize<'de> for PageRequest"],["impl<'de> Deserialize<'de> for RollsInfo"],["impl<'de> Deserialize<'de> for SlotAmount"],["impl<'de> Deserialize<'de> for ApiRequest"],["impl<'de> Deserialize<'de> for TimeInterval"],["impl<'de, T> Deserialize<'de> for PagedVecV2<T>
    where\n T: Deserialize<'de>,
    "]], -"massa_async_pool":[["impl<'de> Deserialize<'de> for AsyncPoolChanges"],["impl<'de> Deserialize<'de> for AsyncMessage"],["impl<'de> Deserialize<'de> for AsyncMessageTrigger"],["impl<'de> Deserialize<'de> for AsyncMessageUpdate"]], -"massa_bootstrap":[["impl<'de> Deserialize<'de> for IpType"],["impl<'de> Deserialize<'de> for BootstrapClientConfig"],["impl<'de> Deserialize<'de> for BootstrapConfig"],["impl<'de> Deserialize<'de> for BootstrapSrvBindCfg"]], -"massa_client":[["impl<'de> Deserialize<'de> for ClientSettings"],["impl<'de> Deserialize<'de> for DefaultNode"],["impl<'de> Deserialize<'de> for HttpSettings"],["impl<'de> Deserialize<'de> for Settings"]], -"massa_consensus_exports":[["impl<'de> Deserialize<'de> for DiscardReason"],["impl<'de> Deserialize<'de> for ExportBlockStatus"],["impl<'de> Deserialize<'de> for Status"],["impl<'de> Deserialize<'de> for ExportCompiledBlock"],["impl<'de> Deserialize<'de> for BootstrapableGraph"],["impl<'de> Deserialize<'de> for ExportActiveBlock"],["impl<'de> Deserialize<'de> for ConsensusConfig"]], -"massa_deferred_calls":[["impl<'de> Deserialize<'de> for DeferredCall"],["impl<'de> Deserialize<'de> for DeferredCallsConfig"],["impl<'de> Deserialize<'de> for DeferredCallRegistryChanges"],["impl<'de> Deserialize<'de> for DeferredRegistrySlotChanges"]], -"massa_final_state":[["impl<'de> Deserialize<'de> for StateChanges"]], -"massa_grpc":[["impl<'de> Deserialize<'de> for ServiceName"],["impl<'de> Deserialize<'de> for GrpcApiConfig"],["impl<'de> Deserialize<'de> for GrpcConfig"]], -"massa_hash":[["impl<'de> Deserialize<'de> for Hash"]], -"massa_ledger_exports":[["impl<'de> Deserialize<'de> for LedgerChanges"],["impl<'de> Deserialize<'de> for LedgerEntryUpdate"],["impl<'de> Deserialize<'de> for LedgerEntry"]], -"massa_models":[["impl<'de> Deserialize<'de> for Address"],["impl<'de> Deserialize<'de> for BlockGraphStatus"],["impl<'de> Deserialize<'de> for BlockId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationSearchResultBlockStatus"],["impl<'de> Deserialize<'de> for OperationSearchResultStatus"],["impl<'de> Deserialize<'de> for DeferredCallId"],["impl<'de> Deserialize<'de> for Denunciation"],["impl<'de> Deserialize<'de> for DenunciationIndex"],["impl<'de> Deserialize<'de> for EndorsementId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationPrefixId"],["impl<'de> Deserialize<'de> for OperationType"],["impl<'de> Deserialize<'de> for ActiveBlock"],["impl<'de> Deserialize<'de> for ExecutionAddressCycleInfo"],["impl<'de> Deserialize<'de> for Amount"],["impl<'de> Deserialize<'de> for Block"],["impl<'de> Deserialize<'de> for FilledBlock"],["impl<'de> Deserialize<'de> for BlockHeader"],["impl<'de> Deserialize<'de> for BlockIdV0
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for Bytecode"],["impl<'de> Deserialize<'de> for Clique"],["impl<'de> Deserialize<'de> for OperationSearchResult"],["impl<'de> Deserialize<'de> for PubkeySig"],["impl<'de> Deserialize<'de> for StakersCycleProductionStats"],["impl<'de> Deserialize<'de> for CompactConfig"],["impl<'de> Deserialize<'de> for BlockHeaderDenunciation"],["impl<'de> Deserialize<'de> for EndorsementDenunciation"],["impl<'de> Deserialize<'de> for Endorsement"],["impl<'de> Deserialize<'de> for EndorsementIdV0
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for EventFilter"],["impl<'de> Deserialize<'de> for LedgerChange"],["impl<'de> Deserialize<'de> for LedgerChanges"],["impl<'de> Deserialize<'de> for LedgerData"],["impl<'de> Deserialize<'de> for NodeId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for Operation"],["impl<'de> Deserialize<'de> for OperationIdV0
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationPrefixIdV0"],["impl<'de> Deserialize<'de> for EventExecutionContext"],["impl<'de> Deserialize<'de> for SCOutputEvent"],["impl<'de> Deserialize<'de> for RollCompensation"],["impl<'de> Deserialize<'de> for RollCounts"],["impl<'de> Deserialize<'de> for RollUpdate"],["impl<'de> Deserialize<'de> for RollUpdates"],["impl<'de> Deserialize<'de> for IndexedSlot"],["impl<'de> Deserialize<'de> for Slot"],["impl<'de> Deserialize<'de> for ConsensusStats"],["impl<'de> Deserialize<'de> for ExecutionStats"],["impl<'de> Deserialize<'de> for NetworkStats"],["impl<'de> Deserialize<'de> for PoolStats"],["impl<'de> Deserialize<'de> for Version"],["impl<'de, T> Deserialize<'de> for SetOrDelete<T>
    where\n T: Deserialize<'de> + Clone,
    "],["impl<'de, T> Deserialize<'de> for SetOrKeep<T>
    where\n T: Deserialize<'de> + Clone,
    "],["impl<'de, T, ID> Deserialize<'de> for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Deserialize<'de>,\n ID: Id + Deserialize<'de>,
    "],["impl<'de, T, V> Deserialize<'de> for SetUpdateOrDelete<T, V>
    where\n T: Deserialize<'de> + Default + Applicable<V>,\n V: Deserialize<'de> + Applicable<V> + Clone,
    "]], -"massa_node":[["impl<'de> Deserialize<'de> for APISettings"],["impl<'de> Deserialize<'de> for BlockDumpSettings"],["impl<'de> Deserialize<'de> for BootstrapSettings"],["impl<'de> Deserialize<'de> for ConsensusSettings"],["impl<'de> Deserialize<'de> for ExecutionSettings"],["impl<'de> Deserialize<'de> for FactorySettings"],["impl<'de> Deserialize<'de> for GrpcApiSettings"],["impl<'de> Deserialize<'de> for GrpcSettings"],["impl<'de> Deserialize<'de> for LedgerSettings"],["impl<'de> Deserialize<'de> for LoggingSettings"],["impl<'de> Deserialize<'de> for MetricsSettings"],["impl<'de> Deserialize<'de> for NetworkSettings"],["impl<'de> Deserialize<'de> for PoolSettings"],["impl<'de> Deserialize<'de> for ProtocolSettings"],["impl<'de> Deserialize<'de> for SelectionSettings"],["impl<'de> Deserialize<'de> for Settings"],["impl<'de> Deserialize<'de> for VersioningSettings"]], -"massa_pool_exports":[["impl<'de> Deserialize<'de> for PoolConfig"]], -"massa_pos_exports":[["impl<'de> Deserialize<'de> for ProductionStats"],["impl<'de> Deserialize<'de> for DeferredCredits"],["impl<'de> Deserialize<'de> for PoSChanges"],["impl<'de> Deserialize<'de> for SelectorConfig"]], -"massa_protocol_exports":[["impl<'de> Deserialize<'de> for BootstrapPeers"],["impl<'de> Deserialize<'de> for PeerData"],["impl<'de> Deserialize<'de> for PeerId"],["impl<'de> Deserialize<'de> for PeerCategoryInfo"],["impl<'de> Deserialize<'de> for ProtocolConfig"]], -"massa_signature":[["impl<'de> Deserialize<'de> for KeyPair"],["impl<'de> Deserialize<'de> for PublicKey"],["impl<'de> Deserialize<'de> for Signature"]], -"massa_time":[["impl<'de> Deserialize<'de> for MassaTime"]], -"massa_wallet":[["impl<'de> Deserialize<'de> for Wallet"],["impl<'de> Deserialize<'de> for WalletFileFormat"]] +"massa_api_exports":[["impl<'de> Deserialize<'de> for ReadOnlyResult"],["impl<'de> Deserialize<'de> for TransferContext"],["impl<'de> Deserialize<'de> for AddressFilter"],["impl<'de> Deserialize<'de> for AddressInfo"],["impl<'de> Deserialize<'de> for CompactAddressInfo"],["impl<'de> Deserialize<'de> for BlockInfo"],["impl<'de> Deserialize<'de> for BlockInfoContent"],["impl<'de> Deserialize<'de> for BlockSummary"],["impl<'de> Deserialize<'de> for APIConfig"],["impl<'de> Deserialize<'de> for DatastoreEntryInput"],["impl<'de> Deserialize<'de> for DatastoreEntryOutput"],["impl<'de> Deserialize<'de> for EndorsementInfo"],["impl<'de> Deserialize<'de> for DeferredCallResponse"],["impl<'de> Deserialize<'de> for DeferredCallsQuoteRequest"],["impl<'de> Deserialize<'de> for DeferredCallsQuoteResponse"],["impl<'de> Deserialize<'de> for DeferredCallsSlotResponse"],["impl<'de> Deserialize<'de> for ExecuteReadOnlyResponse"],["impl<'de> Deserialize<'de> for ReadOnlyBytecodeExecution"],["impl<'de> Deserialize<'de> for ReadOnlyCall"],["impl<'de> Deserialize<'de> for Transfer"],["impl<'de> Deserialize<'de> for LedgerInfo"],["impl<'de> Deserialize<'de> for NodeStatus"],["impl<'de> Deserialize<'de> for OperationInfo"],["impl<'de> Deserialize<'de> for OperationInput"],["impl<'de> Deserialize<'de> for PageRequest"],["impl<'de> Deserialize<'de> for RollsInfo"],["impl<'de> Deserialize<'de> for SlotAmount"],["impl<'de> Deserialize<'de> for ApiRequest"],["impl<'de> Deserialize<'de> for TimeInterval"],["impl<'de, T> Deserialize<'de> for PagedVecV2<T>
    where\n T: Deserialize<'de>,
    "]], +"massa_async_pool":[["impl<'de> Deserialize<'de> for AsyncPoolChanges"],["impl<'de> Deserialize<'de> for AsyncMessage"],["impl<'de> Deserialize<'de> for AsyncMessageTrigger"],["impl<'de> Deserialize<'de> for AsyncMessageUpdate"]], +"massa_bootstrap":[["impl<'de> Deserialize<'de> for IpType"],["impl<'de> Deserialize<'de> for BootstrapClientConfig"],["impl<'de> Deserialize<'de> for BootstrapConfig"],["impl<'de> Deserialize<'de> for BootstrapSrvBindCfg"]], +"massa_client":[["impl<'de> Deserialize<'de> for ClientSettings"],["impl<'de> Deserialize<'de> for DefaultNode"],["impl<'de> Deserialize<'de> for HttpSettings"],["impl<'de> Deserialize<'de> for Settings"]], +"massa_consensus_exports":[["impl<'de> Deserialize<'de> for DiscardReason"],["impl<'de> Deserialize<'de> for ExportBlockStatus"],["impl<'de> Deserialize<'de> for Status"],["impl<'de> Deserialize<'de> for ExportCompiledBlock"],["impl<'de> Deserialize<'de> for BootstrapableGraph"],["impl<'de> Deserialize<'de> for ExportActiveBlock"],["impl<'de> Deserialize<'de> for ConsensusConfig"]], +"massa_deferred_calls":[["impl<'de> Deserialize<'de> for DeferredCall"],["impl<'de> Deserialize<'de> for DeferredCallsConfig"],["impl<'de> Deserialize<'de> for DeferredCallRegistryChanges"],["impl<'de> Deserialize<'de> for DeferredRegistrySlotChanges"]], +"massa_final_state":[["impl<'de> Deserialize<'de> for StateChanges"]], +"massa_grpc":[["impl<'de> Deserialize<'de> for ServiceName"],["impl<'de> Deserialize<'de> for GrpcApiConfig"],["impl<'de> Deserialize<'de> for GrpcConfig"]], +"massa_hash":[["impl<'de> Deserialize<'de> for Hash"]], +"massa_ledger_exports":[["impl<'de> Deserialize<'de> for LedgerChanges"],["impl<'de> Deserialize<'de> for LedgerEntryUpdate"],["impl<'de> Deserialize<'de> for LedgerEntry"]], +"massa_models":[["impl<'de> Deserialize<'de> for Address"],["impl<'de> Deserialize<'de> for BlockGraphStatus"],["impl<'de> Deserialize<'de> for BlockId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationSearchResultBlockStatus"],["impl<'de> Deserialize<'de> for OperationSearchResultStatus"],["impl<'de> Deserialize<'de> for DeferredCallId"],["impl<'de> Deserialize<'de> for Denunciation"],["impl<'de> Deserialize<'de> for DenunciationIndex"],["impl<'de> Deserialize<'de> for EndorsementId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationPrefixId"],["impl<'de> Deserialize<'de> for OperationType"],["impl<'de> Deserialize<'de> for ActiveBlock"],["impl<'de> Deserialize<'de> for ExecutionAddressCycleInfo"],["impl<'de> Deserialize<'de> for Amount"],["impl<'de> Deserialize<'de> for Block"],["impl<'de> Deserialize<'de> for FilledBlock"],["impl<'de> Deserialize<'de> for BlockHeader"],["impl<'de> Deserialize<'de> for BlockIdV0
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for Bytecode"],["impl<'de> Deserialize<'de> for Clique"],["impl<'de> Deserialize<'de> for OperationSearchResult"],["impl<'de> Deserialize<'de> for PubkeySig"],["impl<'de> Deserialize<'de> for StakersCycleProductionStats"],["impl<'de> Deserialize<'de> for CompactConfig"],["impl<'de> Deserialize<'de> for BlockHeaderDenunciation"],["impl<'de> Deserialize<'de> for EndorsementDenunciation"],["impl<'de> Deserialize<'de> for Endorsement"],["impl<'de> Deserialize<'de> for EndorsementIdV0
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for EventFilter"],["impl<'de> Deserialize<'de> for LedgerChange"],["impl<'de> Deserialize<'de> for LedgerChanges"],["impl<'de> Deserialize<'de> for LedgerData"],["impl<'de> Deserialize<'de> for NodeId
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for Operation"],["impl<'de> Deserialize<'de> for OperationIdV0
    where\n Self: FromStr,\n <Self as FromStr>::Err: Display,
    "],["impl<'de> Deserialize<'de> for OperationPrefixIdV0"],["impl<'de> Deserialize<'de> for EventExecutionContext"],["impl<'de> Deserialize<'de> for SCOutputEvent"],["impl<'de> Deserialize<'de> for RollCompensation"],["impl<'de> Deserialize<'de> for RollCounts"],["impl<'de> Deserialize<'de> for RollUpdate"],["impl<'de> Deserialize<'de> for RollUpdates"],["impl<'de> Deserialize<'de> for IndexedSlot"],["impl<'de> Deserialize<'de> for Slot"],["impl<'de> Deserialize<'de> for ConsensusStats"],["impl<'de> Deserialize<'de> for ExecutionStats"],["impl<'de> Deserialize<'de> for NetworkStats"],["impl<'de> Deserialize<'de> for PoolStats"],["impl<'de> Deserialize<'de> for Version"],["impl<'de, T> Deserialize<'de> for SetOrDelete<T>
    where\n T: Deserialize<'de> + Clone,
    "],["impl<'de, T> Deserialize<'de> for SetOrKeep<T>
    where\n T: Deserialize<'de> + Clone,
    "],["impl<'de, T, ID> Deserialize<'de> for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Deserialize<'de>,\n ID: Id + Deserialize<'de>,
    "],["impl<'de, T, V> Deserialize<'de> for SetUpdateOrDelete<T, V>
    where\n T: Deserialize<'de> + Default + Applicable<V>,\n V: Deserialize<'de> + Applicable<V> + Clone,
    "]], +"massa_node":[["impl<'de> Deserialize<'de> for APISettings"],["impl<'de> Deserialize<'de> for BlockDumpSettings"],["impl<'de> Deserialize<'de> for BootstrapSettings"],["impl<'de> Deserialize<'de> for ConsensusSettings"],["impl<'de> Deserialize<'de> for ExecutionSettings"],["impl<'de> Deserialize<'de> for FactorySettings"],["impl<'de> Deserialize<'de> for GrpcApiSettings"],["impl<'de> Deserialize<'de> for GrpcSettings"],["impl<'de> Deserialize<'de> for LedgerSettings"],["impl<'de> Deserialize<'de> for LoggingSettings"],["impl<'de> Deserialize<'de> for MetricsSettings"],["impl<'de> Deserialize<'de> for NetworkSettings"],["impl<'de> Deserialize<'de> for PoolSettings"],["impl<'de> Deserialize<'de> for ProtocolSettings"],["impl<'de> Deserialize<'de> for SelectionSettings"],["impl<'de> Deserialize<'de> for Settings"],["impl<'de> Deserialize<'de> for VersioningSettings"]], +"massa_pool_exports":[["impl<'de> Deserialize<'de> for PoolConfig"]], +"massa_pos_exports":[["impl<'de> Deserialize<'de> for ProductionStats"],["impl<'de> Deserialize<'de> for DeferredCredits"],["impl<'de> Deserialize<'de> for PoSChanges"],["impl<'de> Deserialize<'de> for SelectorConfig"]], +"massa_protocol_exports":[["impl<'de> Deserialize<'de> for BootstrapPeers"],["impl<'de> Deserialize<'de> for PeerData"],["impl<'de> Deserialize<'de> for PeerId"],["impl<'de> Deserialize<'de> for PeerCategoryInfo"],["impl<'de> Deserialize<'de> for ProtocolConfig"]], +"massa_signature":[["impl<'de> Deserialize<'de> for KeyPair"],["impl<'de> Deserialize<'de> for PublicKey"],["impl<'de> Deserialize<'de> for Signature"]], +"massa_time":[["impl<'de> Deserialize<'de> for MassaTime"]], +"massa_wallet":[["impl<'de> Deserialize<'de> for Wallet"],["impl<'de> Deserialize<'de> for WalletFileFormat"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/serde/de/trait.Visitor.js b/trait.impl/serde/de/trait.Visitor.js index ef857e05562..4be6b3f2b0e 100644 --- a/trait.impl/serde/de/trait.Visitor.js +++ b/trait.impl/serde/de/trait.Visitor.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"massa_models":[["impl<'de> Visitor<'de> for AmountVisitor"],["impl<'de> Visitor<'de> for VersionVisitor"]] +"massa_models":[["impl<'de> Visitor<'de> for AmountVisitor"],["impl<'de> Visitor<'de> for VersionVisitor"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/trait.impl/serde/ser/trait.Serialize.js b/trait.impl/serde/ser/trait.Serialize.js index 59117be0a93..9917cb2b3b1 100644 --- a/trait.impl/serde/ser/trait.Serialize.js +++ b/trait.impl/serde/ser/trait.Serialize.js @@ -1,18 +1,18 @@ (function() {var implementors = { -"massa_api_exports":[["impl Serialize for ReadOnlyResult"],["impl Serialize for TransferContext"],["impl Serialize for AddressFilter"],["impl Serialize for AddressInfo"],["impl Serialize for CompactAddressInfo"],["impl Serialize for BlockInfo"],["impl Serialize for BlockInfoContent"],["impl Serialize for BlockSummary"],["impl Serialize for DatastoreEntryInput"],["impl Serialize for DatastoreEntryOutput"],["impl Serialize for EndorsementInfo"],["impl Serialize for DeferredCallResponse"],["impl Serialize for DeferredCallsQuoteRequest"],["impl Serialize for DeferredCallsQuoteResponse"],["impl Serialize for DeferredCallsSlotResponse"],["impl Serialize for ExecuteReadOnlyResponse"],["impl Serialize for ReadOnlyBytecodeExecution"],["impl Serialize for ReadOnlyCall"],["impl Serialize for Transfer"],["impl Serialize for LedgerInfo"],["impl Serialize for NodeStatus"],["impl Serialize for OperationInfo"],["impl Serialize for OperationInput"],["impl Serialize for PageRequest"],["impl Serialize for RollsInfo"],["impl Serialize for SlotAmount"],["impl Serialize for ApiRequest"],["impl Serialize for TimeInterval"],["impl<T> Serialize for PagedVecV2<T>
    where\n T: Serialize,
    "],["impl<T: Serialize> Serialize for PagedVec<T>"]], -"massa_async_pool":[["impl Serialize for AsyncPoolChanges"],["impl Serialize for AsyncMessage"],["impl Serialize for AsyncMessageTrigger"],["impl Serialize for AsyncMessageUpdate"]], -"massa_client":[["impl Serialize for ExtendedWallet"],["impl Serialize for ExtendedWalletEntry"],["impl Serialize for JsonError"]], -"massa_consensus_exports":[["impl Serialize for DiscardReason"],["impl Serialize for ExportBlockStatus"],["impl Serialize for Status"],["impl Serialize for ExportCompiledBlock"],["impl Serialize for BootstrapableGraph"],["impl Serialize for ExportActiveBlock"],["impl Serialize for ConsensusConfig"]], -"massa_deferred_calls":[["impl Serialize for DeferredCall"],["impl Serialize for DeferredCallRegistryChanges"],["impl Serialize for DeferredRegistrySlotChanges"]], -"massa_execution_exports":[["impl Serialize for EventStore"],["impl Serialize for ExecutedBlockInfo"],["impl Serialize for ExecutionOutput"]], -"massa_final_state":[["impl Serialize for StateChanges"]], -"massa_hash":[["impl Serialize for Hash"]], -"massa_ledger_exports":[["impl Serialize for LedgerChanges"],["impl Serialize for LedgerEntryUpdate"],["impl Serialize for LedgerEntry"]], -"massa_models":[["impl Serialize for Address"],["impl Serialize for SCAddress"],["impl Serialize for UserAddress"],["impl Serialize for BlockGraphStatus"],["impl Serialize for BlockId
    where\n Self: Display,
    "],["impl Serialize for OperationSearchResultBlockStatus"],["impl Serialize for OperationSearchResultStatus"],["impl Serialize for DeferredCallId"],["impl Serialize for Denunciation"],["impl Serialize for DenunciationIndex"],["impl Serialize for EndorsementId
    where\n Self: Display,
    "],["impl Serialize for OperationId
    where\n Self: Display,
    "],["impl Serialize for OperationPrefixId"],["impl Serialize for OperationType"],["impl Serialize for ActiveBlock"],["impl Serialize for ExecutionAddressCycleInfo"],["impl Serialize for SCAddressV0"],["impl Serialize for UserAddressV0"],["impl Serialize for Amount"],["impl Serialize for Block"],["impl Serialize for FilledBlock"],["impl Serialize for BlockHeader"],["impl Serialize for BlockIdV0
    where\n Self: Display,
    "],["impl Serialize for Bytecode"],["impl Serialize for Clique"],["impl Serialize for OperationSearchResult"],["impl Serialize for PubkeySig"],["impl Serialize for StakersCycleProductionStats"],["impl Serialize for CompactConfig"],["impl Serialize for BlockHeaderDenunciation"],["impl Serialize for EndorsementDenunciation"],["impl Serialize for Endorsement"],["impl Serialize for EndorsementIdV0
    where\n Self: Display,
    "],["impl Serialize for EventFilter"],["impl Serialize for LedgerChange"],["impl Serialize for LedgerChanges"],["impl Serialize for LedgerData"],["impl Serialize for NodeId
    where\n Self: Display,
    "],["impl Serialize for Operation"],["impl Serialize for OperationIdV0
    where\n Self: Display,
    "],["impl Serialize for OperationPrefixIdV0"],["impl Serialize for EventExecutionContext"],["impl Serialize for SCOutputEvent"],["impl Serialize for RollCompensation"],["impl Serialize for RollCounts"],["impl Serialize for RollUpdate"],["impl Serialize for RollUpdates"],["impl Serialize for IndexedSlot"],["impl Serialize for Slot"],["impl Serialize for ConsensusStats"],["impl Serialize for ExecutionStats"],["impl Serialize for NetworkStats"],["impl Serialize for PoolStats"],["impl Serialize for Version"],["impl<T> Serialize for SetOrDelete<T>
    where\n T: Serialize + Clone,
    "],["impl<T> Serialize for SetOrKeep<T>
    where\n T: Serialize + Clone,
    "],["impl<T, ID> Serialize for SecureShare<T, ID>"],["impl<T, V> Serialize for SetUpdateOrDelete<T, V>
    where\n T: Serialize + Default + Applicable<V>,\n V: Serialize + Applicable<V> + Clone,
    "]], -"massa_pool_exports":[["impl Serialize for PoolConfig"]], -"massa_pos_exports":[["impl Serialize for ProductionStats"],["impl Serialize for DeferredCredits"],["impl Serialize for PoSChanges"],["impl Serialize for SelectorConfig"]], -"massa_protocol_exports":[["impl Serialize for BootstrapPeers"],["impl Serialize for PeerData"],["impl Serialize for PeerId"]], -"massa_signature":[["impl Serialize for KeyPair"],["impl Serialize for PublicKey"],["impl Serialize for Signature"]], -"massa_time":[["impl Serialize for MassaTime"]], -"massa_wallet":[["impl Serialize for Wallet"],["impl Serialize for WalletFileFormat"]] +"massa_api_exports":[["impl Serialize for ReadOnlyResult"],["impl Serialize for TransferContext"],["impl Serialize for AddressFilter"],["impl Serialize for AddressInfo"],["impl Serialize for CompactAddressInfo"],["impl Serialize for BlockInfo"],["impl Serialize for BlockInfoContent"],["impl Serialize for BlockSummary"],["impl Serialize for DatastoreEntryInput"],["impl Serialize for DatastoreEntryOutput"],["impl Serialize for EndorsementInfo"],["impl Serialize for DeferredCallResponse"],["impl Serialize for DeferredCallsQuoteRequest"],["impl Serialize for DeferredCallsQuoteResponse"],["impl Serialize for DeferredCallsSlotResponse"],["impl Serialize for ExecuteReadOnlyResponse"],["impl Serialize for ReadOnlyBytecodeExecution"],["impl Serialize for ReadOnlyCall"],["impl Serialize for Transfer"],["impl Serialize for LedgerInfo"],["impl Serialize for NodeStatus"],["impl Serialize for OperationInfo"],["impl Serialize for OperationInput"],["impl Serialize for PageRequest"],["impl Serialize for RollsInfo"],["impl Serialize for SlotAmount"],["impl Serialize for ApiRequest"],["impl Serialize for TimeInterval"],["impl<T> Serialize for PagedVecV2<T>
    where\n T: Serialize,
    "],["impl<T: Serialize> Serialize for PagedVec<T>"]], +"massa_async_pool":[["impl Serialize for AsyncPoolChanges"],["impl Serialize for AsyncMessage"],["impl Serialize for AsyncMessageTrigger"],["impl Serialize for AsyncMessageUpdate"]], +"massa_client":[["impl Serialize for ExtendedWallet"],["impl Serialize for ExtendedWalletEntry"],["impl Serialize for JsonError"]], +"massa_consensus_exports":[["impl Serialize for DiscardReason"],["impl Serialize for ExportBlockStatus"],["impl Serialize for Status"],["impl Serialize for ExportCompiledBlock"],["impl Serialize for BootstrapableGraph"],["impl Serialize for ExportActiveBlock"],["impl Serialize for ConsensusConfig"]], +"massa_deferred_calls":[["impl Serialize for DeferredCall"],["impl Serialize for DeferredCallRegistryChanges"],["impl Serialize for DeferredRegistrySlotChanges"]], +"massa_execution_exports":[["impl Serialize for EventStore"],["impl Serialize for ExecutedBlockInfo"],["impl Serialize for ExecutionOutput"]], +"massa_final_state":[["impl Serialize for StateChanges"]], +"massa_hash":[["impl Serialize for Hash"]], +"massa_ledger_exports":[["impl Serialize for LedgerChanges"],["impl Serialize for LedgerEntryUpdate"],["impl Serialize for LedgerEntry"]], +"massa_models":[["impl Serialize for Address"],["impl Serialize for SCAddress"],["impl Serialize for UserAddress"],["impl Serialize for BlockGraphStatus"],["impl Serialize for BlockId
    where\n Self: Display,
    "],["impl Serialize for OperationSearchResultBlockStatus"],["impl Serialize for OperationSearchResultStatus"],["impl Serialize for DeferredCallId"],["impl Serialize for Denunciation"],["impl Serialize for DenunciationIndex"],["impl Serialize for EndorsementId
    where\n Self: Display,
    "],["impl Serialize for OperationId
    where\n Self: Display,
    "],["impl Serialize for OperationPrefixId"],["impl Serialize for OperationType"],["impl Serialize for ActiveBlock"],["impl Serialize for ExecutionAddressCycleInfo"],["impl Serialize for SCAddressV0"],["impl Serialize for UserAddressV0"],["impl Serialize for Amount"],["impl Serialize for Block"],["impl Serialize for FilledBlock"],["impl Serialize for BlockHeader"],["impl Serialize for BlockIdV0
    where\n Self: Display,
    "],["impl Serialize for Bytecode"],["impl Serialize for Clique"],["impl Serialize for OperationSearchResult"],["impl Serialize for PubkeySig"],["impl Serialize for StakersCycleProductionStats"],["impl Serialize for CompactConfig"],["impl Serialize for BlockHeaderDenunciation"],["impl Serialize for EndorsementDenunciation"],["impl Serialize for Endorsement"],["impl Serialize for EndorsementIdV0
    where\n Self: Display,
    "],["impl Serialize for EventFilter"],["impl Serialize for LedgerChange"],["impl Serialize for LedgerChanges"],["impl Serialize for LedgerData"],["impl Serialize for NodeId
    where\n Self: Display,
    "],["impl Serialize for Operation"],["impl Serialize for OperationIdV0
    where\n Self: Display,
    "],["impl Serialize for OperationPrefixIdV0"],["impl Serialize for EventExecutionContext"],["impl Serialize for SCOutputEvent"],["impl Serialize for RollCompensation"],["impl Serialize for RollCounts"],["impl Serialize for RollUpdate"],["impl Serialize for RollUpdates"],["impl Serialize for IndexedSlot"],["impl Serialize for Slot"],["impl Serialize for ConsensusStats"],["impl Serialize for ExecutionStats"],["impl Serialize for NetworkStats"],["impl Serialize for PoolStats"],["impl Serialize for Version"],["impl<T> Serialize for SetOrDelete<T>
    where\n T: Serialize + Clone,
    "],["impl<T> Serialize for SetOrKeep<T>
    where\n T: Serialize + Clone,
    "],["impl<T, ID> Serialize for SecureShare<T, ID>"],["impl<T, V> Serialize for SetUpdateOrDelete<T, V>
    where\n T: Serialize + Default + Applicable<V>,\n V: Serialize + Applicable<V> + Clone,
    "]], +"massa_pool_exports":[["impl Serialize for PoolConfig"]], +"massa_pos_exports":[["impl Serialize for ProductionStats"],["impl Serialize for DeferredCredits"],["impl Serialize for PoSChanges"],["impl Serialize for SelectorConfig"]], +"massa_protocol_exports":[["impl Serialize for BootstrapPeers"],["impl Serialize for PeerData"],["impl Serialize for PeerId"]], +"massa_signature":[["impl Serialize for KeyPair"],["impl Serialize for PublicKey"],["impl Serialize for Signature"]], +"massa_time":[["impl Serialize for MassaTime"]], +"massa_wallet":[["impl Serialize for Wallet"],["impl Serialize for WalletFileFormat"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/type.impl/alloc/collections/btree/map/struct.BTreeMap.js b/type.impl/alloc/collections/btree/map/struct.BTreeMap.js index 9bff2bb8ff8..b85792f97d3 100644 --- a/type.impl/alloc/collections/btree/map/struct.BTreeMap.js +++ b/type.impl/alloc/collections/btree/map/struct.BTreeMap.js @@ -1,4 +1,4 @@ (function() {var type_impls = { -"massa_db_exports":[["
    source§

    impl<K, V> BTreeMap<K, V>

    1.0.0 (const: 1.66.0) · source

    pub const fn new() -> BTreeMap<K, V>

    Makes a new, empty BTreeMap.

    \n

    Does not allocate anything on its own.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    Gets an iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"c\");\nmap.insert(2, \"b\");\nmap.insert(1, \"a\");\n\nfor (key, value) in map.iter() {\n    println!(\"{key}: {value}\");\n}\n\nlet (first_key, first_value) = map.iter().next().unwrap();\nassert_eq!((*first_key, *first_value), (1, \"a\"));
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    Gets a mutable iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::from([\n   (\"a\", 1),\n   (\"b\", 2),\n   (\"c\", 3),\n]);\n\n// add 10 to the value if the key isn't \"a\"\nfor (key, value) in map.iter_mut() {\n    if key != &\"a\" {\n        *value += 10;\n    }\n}
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    Gets an iterator over the keys of the map, in sorted order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<_> = a.keys().cloned().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    Gets an iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.values().cloned().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    Gets a mutable iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, String::from(\"hello\"));\na.insert(2, String::from(\"goodbye\"));\n\nfor value in a.values_mut() {\n    value.push_str(\"!\");\n}\n\nlet values: Vec<String> = a.values().cloned().collect();\nassert_eq!(values, [String::from(\"hello!\"),\n                    String::from(\"goodbye!\")]);
    \n
    1.0.0 (const: unstable) · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 (const: unstable) · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    source

    pub fn lower_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.lower_bound(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &\"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &\"b\")));\n\nlet cursor = map.lower_bound(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.lower_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &\"a\")));
    \n
    source

    pub fn lower_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.lower_bound_mut(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &mut \"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &mut \"b\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &mut \"a\")));
    \n
    source

    pub fn upper_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.upper_bound(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &\"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &\"d\")));\n\nlet cursor = map.upper_bound(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.upper_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &\"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    source

    pub fn upper_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.upper_bound_mut(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &mut \"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &mut \"d\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &mut \"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    source

    pub const fn new_in(alloc: A) -> BTreeMap<K, V, A>

    🔬This is a nightly-only experimental API. (btreemap_alloc)

    Makes a new empty BTreeMap with a reasonable choice for B.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::alloc::Global;\n\nlet mut map = BTreeMap::new_in(Global);\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn get<Q>(&self, key: &Q) -> Option<&V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    1.66.0 · source

    pub fn first_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the first key-value pair in the map.\nThe key in this pair is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.first_key_value(), None);\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.first_key_value(), Some((&1, &\"b\")));
    \n
    1.66.0 · source

    pub fn first_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the first entry in the map for in-place manipulation.\nThe key of this entry is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.first_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"first\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"first\");\nassert_eq!(*map.get(&2).unwrap(), \"b\");
    \n
    1.66.0 · source

    pub fn pop_first(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the first element in the map.\nThe key of this element is the minimum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in ascending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_first() {\n    assert!(map.iter().all(|(k, _v)| *k > key));\n}\nassert!(map.is_empty());
    \n
    1.66.0 · source

    pub fn last_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the last key-value pair in the map.\nThe key in this pair is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.last_key_value(), Some((&2, &\"a\")));
    \n
    1.66.0 · source

    pub fn last_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the last entry in the map for in-place manipulation.\nThe key of this entry is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.last_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"last\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"a\");\nassert_eq!(*map.get(&2).unwrap(), \"last\");
    \n
    1.66.0 · source

    pub fn pop_last(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the last element in the map.\nThe key of this element is the maximum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in descending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_last() {\n    assert!(map.iter().all(|(k, _v)| *k < key));\n}\nassert!(map.is_empty());
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, key: &Q) -> bool
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, key: &Q) -> Option<&mut V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, key: K, value: V) -> Option<V>
    where\n K: Ord,

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V, A>>
    where\n K: Ord,

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n
    #![feature(map_try_insert)]\n\nuse std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, key: &Q) -> Option<V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.45.0 · source

    pub fn remove_entry<Q>(&mut self, key: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the stored key and value if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove_entry(&1), None);
    \n
    1.53.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in ascending key order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\n// Keep only the elements with even-numbered keys.\nmap.retain(|&k, _| k % 2 == 0);\nassert!(map.into_iter().eq(vec![(0, 0), (2, 20), (4, 40), (6, 60)]));
    \n
    1.11.0 · source

    pub fn append(&mut self, other: &mut BTreeMap<K, V, A>)
    where\n K: Ord,\n A: Clone,

    Moves all elements from other into self, leaving other empty.

    \n

    If a key from other is already present in self, the respective\nvalue from self will be overwritten with the respective value from other.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\"); // Note: Key (3) also present in b.\n\nlet mut b = BTreeMap::new();\nb.insert(3, \"d\"); // Note: Key (3) also present in a.\nb.insert(4, \"e\");\nb.insert(5, \"f\");\n\na.append(&mut b);\n\nassert_eq!(a.len(), 5);\nassert_eq!(b.len(), 0);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\nassert_eq!(a[&3], \"d\"); // Note: \"c\" has been overwritten.\nassert_eq!(a[&4], \"e\");\nassert_eq!(a[&5], \"f\");
    \n
    1.17.0 · source

    pub fn range<T, R>(&self, range: R) -> Range<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::ops::Bound::Included;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"a\");\nmap.insert(5, \"b\");\nmap.insert(8, \"c\");\nfor (&key, &value) in map.range((Included(&4), Included(&8))) {\n    println!(\"{key}: {value}\");\n}\nassert_eq!(Some((&5, &\"b\")), map.range(4..).next());
    \n
    1.17.0 · source

    pub fn range_mut<T, R>(&mut self, range: R) -> RangeMut<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a mutable double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<&str, i32> =\n    [(\"Alice\", 0), (\"Bob\", 0), (\"Carol\", 0), (\"Cheryl\", 0)].into();\nfor (_, balance) in map.range_mut(\"B\"..\"Cheryl\") {\n    *balance += 100;\n}\nfor (name, balance) in &map {\n    println!(\"{name} => {balance}\");\n}
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V, A>
    where\n K: Ord,

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut count: BTreeMap<&str, usize> = BTreeMap::new();\n\n// count the number of occurrences of letters in the vec\nfor x in [\"a\", \"b\", \"a\", \"c\", \"a\", \"b\"] {\n    count.entry(x).and_modify(|curr| *curr += 1).or_insert(1);\n}\n\nassert_eq!(count[\"a\"], 3);\nassert_eq!(count[\"b\"], 2);\nassert_eq!(count[\"c\"], 1);
    \n
    1.11.0 · source

    pub fn split_off<Q>(&mut self, key: &Q) -> BTreeMap<K, V, A>
    where\n Q: Ord + ?Sized,\n K: Borrow<Q> + Ord,\n A: Clone,

    Splits the collection into two at the given key. Returns everything after the given key,\nincluding the key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\");\na.insert(17, \"d\");\na.insert(41, \"e\");\n\nlet b = a.split_off(&3);\n\nassert_eq!(a.len(), 2);\nassert_eq!(b.len(), 3);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\n\nassert_eq!(b[&3], \"c\");\nassert_eq!(b[&17], \"d\");\nassert_eq!(b[&41], \"e\");
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F, A>
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (btree_extract_if)

    Creates an iterator that visits all elements (key-value pairs) in\nascending key order and uses a closure to determine if an element should\nbe removed. If the closure returns true, the element is removed from\nthe map and yielded. If the closure returns false, or panics, the\nelement remains in the map and will not be yielded.

    \n

    The iterator also lets you mutate the value of each element in the\nclosure, regardless of whether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(btree_extract_if)]\nuse std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet evens: BTreeMap<_, _> = map.extract_if(|k, _v| k % 2 == 0).collect();\nlet odds = map;\nassert_eq!(evens.keys().copied().collect::<Vec<_>>(), [0, 2, 4, 6]);\nassert_eq!(odds.keys().copied().collect::<Vec<_>>(), [1, 3, 5, 7]);
    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V, A>

    Creates a consuming iterator visiting all the keys, in sorted order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<i32> = a.into_keys().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V, A>

    Creates a consuming iterator visiting all the values, in order by key.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.into_values().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Clone for BTreeMap<K, V, A>
    where\n K: Clone,\n V: Clone,\n A: Allocator + Clone,

    source§

    fn clone(&self) -> BTreeMap<K, V, A>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Debug for BTreeMap<K, V, A>
    where\n K: Debug,\n V: Debug,\n A: Allocator + Clone,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V> Default for BTreeMap<K, V>

    source§

    fn default() -> BTreeMap<K, V>

    Creates an empty BTreeMap.

    \n
    ","Default","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, V> Deserialize<'de> for BTreeMap<K, V>
    where\n K: Deserialize<'de> + Ord,\n V: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs, const N: usize> DeserializeAs<'de, [(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<[(K, V); N], <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, [(K, V); N]>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, V, KU, VU> DeserializeAs<'de, BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeMap>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeSet<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeSet<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BinaryHeap<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BinaryHeap<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Box<[(K, V)]>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Box<[(K, V)]>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs, S> DeserializeAs<'de, HashSet<(K, V), S>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<(K, V), S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet<(K, V), S>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<LinkedList<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, LinkedList<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Option<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Option<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<VecDeque<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, VecDeque<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    1.7.0 · source§

    impl<K, V, A> Drop for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_db_exports::db_batch::DBBatch"],["
    1.2.0 · source§

    impl<'a, K, V, A> Extend<(&'a K, &'a V)> for BTreeMap<K, V, A>
    where\n K: Ord + Copy,\n V: Copy,\n A: Allocator + Clone,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Extend<(K, V)> for BTreeMap<K, V, A>
    where\n K: Ord,\n A: Allocator + Clone,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_db_exports::db_batch::DBBatch"],["
    1.56.0 · source§

    impl<K, V, const N: usize> From<[(K, V); N]> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from(arr: [(K, V); N]) -> BTreeMap<K, V>

    Converts a [(K, V); N] into a BTreeMap<(K, V)>.

    \n\n
    use std::collections::BTreeMap;\n\nlet map1 = BTreeMap::from([(1, 2), (3, 4)]);\nlet map2: BTreeMap<_, _> = [(1, 2), (3, 4)].into();\nassert_eq!(map1, map2);
    \n
    ","From<[(K, V); N]>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V> FromIterator<(K, V)> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from_iter<T>(iter: T) -> BTreeMap<K, V>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Hash for BTreeMap<K, V, A>
    where\n K: Hash,\n V: Hash,\n A: Allocator + Clone,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, Q, V, A> Index<&Q> for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the BTreeMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, V, E> IntoDeserializer<'de, E> for BTreeMap<K, V>
    where\n K: IntoDeserializer<'de, E> + Eq + Ord,\n V: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <BTreeMap<K, V> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <BTreeMap<K, V> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn into_iter(self) -> IntoIter<K, V, A>

    Gets an owning iterator over the entries of the map, sorted by key.

    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Ord for BTreeMap<K, V, A>
    where\n K: Ord,\n V: Ord,\n A: Allocator + Clone,

    source§

    fn cmp(&self, other: &BTreeMap<K, V, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> PartialEq for BTreeMap<K, V, A>
    where\n K: PartialEq,\n V: PartialEq,\n A: Allocator + Clone,

    source§

    fn eq(&self, other: &BTreeMap<K, V, A>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> PartialOrd for BTreeMap<K, V, A>
    where\n K: PartialOrd,\n V: PartialOrd,\n A: Allocator + Clone,

    source§

    fn partial_cmp(&self, other: &BTreeMap<K, V, A>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V> Serialize for BTreeMap<K, V>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<[(K, V)]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V)],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V)]>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs, const N: usize> SerializeAs<[(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V); N],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V); N]>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KU, V, VU> SerializeAs<BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeMap<K, V>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeSet<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BinaryHeap<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Box<[(K, V)]>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs, H> SerializeAs<HashSet<(K, V), H>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashSet<(K, V), H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &LinkedList<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Option<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Vec<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &VecDeque<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Eq for BTreeMap<K, V, A>
    where\n K: Eq,\n V: Eq,\n A: Allocator + Clone,

    ","Eq","massa_db_exports::db_batch::DBBatch"],["
    1.64.0 · source§

    impl<K, V, A> UnwindSafe for BTreeMap<K, V, A>

    ","UnwindSafe","massa_db_exports::db_batch::DBBatch"]], -"massa_models":[["
    source§

    impl<K, V> BTreeMap<K, V>

    1.0.0 (const: 1.66.0) · source

    pub const fn new() -> BTreeMap<K, V>

    Makes a new, empty BTreeMap.

    \n

    Does not allocate anything on its own.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_models::datastore::Datastore"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    Gets an iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"c\");\nmap.insert(2, \"b\");\nmap.insert(1, \"a\");\n\nfor (key, value) in map.iter() {\n    println!(\"{key}: {value}\");\n}\n\nlet (first_key, first_value) = map.iter().next().unwrap();\nassert_eq!((*first_key, *first_value), (1, \"a\"));
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    Gets a mutable iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::from([\n   (\"a\", 1),\n   (\"b\", 2),\n   (\"c\", 3),\n]);\n\n// add 10 to the value if the key isn't \"a\"\nfor (key, value) in map.iter_mut() {\n    if key != &\"a\" {\n        *value += 10;\n    }\n}
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    Gets an iterator over the keys of the map, in sorted order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<_> = a.keys().cloned().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    Gets an iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.values().cloned().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    Gets a mutable iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, String::from(\"hello\"));\na.insert(2, String::from(\"goodbye\"));\n\nfor value in a.values_mut() {\n    value.push_str(\"!\");\n}\n\nlet values: Vec<String> = a.values().cloned().collect();\nassert_eq!(values, [String::from(\"hello!\"),\n                    String::from(\"goodbye!\")]);
    \n
    1.0.0 (const: unstable) · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 (const: unstable) · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    source

    pub fn lower_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.lower_bound(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &\"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &\"b\")));\n\nlet cursor = map.lower_bound(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.lower_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &\"a\")));
    \n
    source

    pub fn lower_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.lower_bound_mut(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &mut \"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &mut \"b\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &mut \"a\")));
    \n
    source

    pub fn upper_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.upper_bound(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &\"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &\"d\")));\n\nlet cursor = map.upper_bound(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.upper_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &\"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    source

    pub fn upper_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.upper_bound_mut(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &mut \"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &mut \"d\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &mut \"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    ",0,"massa_models::datastore::Datastore"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    source

    pub const fn new_in(alloc: A) -> BTreeMap<K, V, A>

    🔬This is a nightly-only experimental API. (btreemap_alloc)

    Makes a new empty BTreeMap with a reasonable choice for B.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::alloc::Global;\n\nlet mut map = BTreeMap::new_in(Global);\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_models::datastore::Datastore"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn get<Q>(&self, key: &Q) -> Option<&V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    1.66.0 · source

    pub fn first_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the first key-value pair in the map.\nThe key in this pair is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.first_key_value(), None);\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.first_key_value(), Some((&1, &\"b\")));
    \n
    1.66.0 · source

    pub fn first_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the first entry in the map for in-place manipulation.\nThe key of this entry is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.first_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"first\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"first\");\nassert_eq!(*map.get(&2).unwrap(), \"b\");
    \n
    1.66.0 · source

    pub fn pop_first(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the first element in the map.\nThe key of this element is the minimum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in ascending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_first() {\n    assert!(map.iter().all(|(k, _v)| *k > key));\n}\nassert!(map.is_empty());
    \n
    1.66.0 · source

    pub fn last_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the last key-value pair in the map.\nThe key in this pair is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.last_key_value(), Some((&2, &\"a\")));
    \n
    1.66.0 · source

    pub fn last_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the last entry in the map for in-place manipulation.\nThe key of this entry is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.last_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"last\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"a\");\nassert_eq!(*map.get(&2).unwrap(), \"last\");
    \n
    1.66.0 · source

    pub fn pop_last(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the last element in the map.\nThe key of this element is the maximum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in descending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_last() {\n    assert!(map.iter().all(|(k, _v)| *k < key));\n}\nassert!(map.is_empty());
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, key: &Q) -> bool
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, key: &Q) -> Option<&mut V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, key: K, value: V) -> Option<V>
    where\n K: Ord,

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V, A>>
    where\n K: Ord,

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n
    #![feature(map_try_insert)]\n\nuse std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, key: &Q) -> Option<V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.45.0 · source

    pub fn remove_entry<Q>(&mut self, key: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the stored key and value if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove_entry(&1), None);
    \n
    1.53.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in ascending key order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\n// Keep only the elements with even-numbered keys.\nmap.retain(|&k, _| k % 2 == 0);\nassert!(map.into_iter().eq(vec![(0, 0), (2, 20), (4, 40), (6, 60)]));
    \n
    1.11.0 · source

    pub fn append(&mut self, other: &mut BTreeMap<K, V, A>)
    where\n K: Ord,\n A: Clone,

    Moves all elements from other into self, leaving other empty.

    \n

    If a key from other is already present in self, the respective\nvalue from self will be overwritten with the respective value from other.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\"); // Note: Key (3) also present in b.\n\nlet mut b = BTreeMap::new();\nb.insert(3, \"d\"); // Note: Key (3) also present in a.\nb.insert(4, \"e\");\nb.insert(5, \"f\");\n\na.append(&mut b);\n\nassert_eq!(a.len(), 5);\nassert_eq!(b.len(), 0);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\nassert_eq!(a[&3], \"d\"); // Note: \"c\" has been overwritten.\nassert_eq!(a[&4], \"e\");\nassert_eq!(a[&5], \"f\");
    \n
    1.17.0 · source

    pub fn range<T, R>(&self, range: R) -> Range<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::ops::Bound::Included;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"a\");\nmap.insert(5, \"b\");\nmap.insert(8, \"c\");\nfor (&key, &value) in map.range((Included(&4), Included(&8))) {\n    println!(\"{key}: {value}\");\n}\nassert_eq!(Some((&5, &\"b\")), map.range(4..).next());
    \n
    1.17.0 · source

    pub fn range_mut<T, R>(&mut self, range: R) -> RangeMut<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a mutable double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<&str, i32> =\n    [(\"Alice\", 0), (\"Bob\", 0), (\"Carol\", 0), (\"Cheryl\", 0)].into();\nfor (_, balance) in map.range_mut(\"B\"..\"Cheryl\") {\n    *balance += 100;\n}\nfor (name, balance) in &map {\n    println!(\"{name} => {balance}\");\n}
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V, A>
    where\n K: Ord,

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut count: BTreeMap<&str, usize> = BTreeMap::new();\n\n// count the number of occurrences of letters in the vec\nfor x in [\"a\", \"b\", \"a\", \"c\", \"a\", \"b\"] {\n    count.entry(x).and_modify(|curr| *curr += 1).or_insert(1);\n}\n\nassert_eq!(count[\"a\"], 3);\nassert_eq!(count[\"b\"], 2);\nassert_eq!(count[\"c\"], 1);
    \n
    1.11.0 · source

    pub fn split_off<Q>(&mut self, key: &Q) -> BTreeMap<K, V, A>
    where\n Q: Ord + ?Sized,\n K: Borrow<Q> + Ord,\n A: Clone,

    Splits the collection into two at the given key. Returns everything after the given key,\nincluding the key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\");\na.insert(17, \"d\");\na.insert(41, \"e\");\n\nlet b = a.split_off(&3);\n\nassert_eq!(a.len(), 2);\nassert_eq!(b.len(), 3);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\n\nassert_eq!(b[&3], \"c\");\nassert_eq!(b[&17], \"d\");\nassert_eq!(b[&41], \"e\");
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F, A>
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (btree_extract_if)

    Creates an iterator that visits all elements (key-value pairs) in\nascending key order and uses a closure to determine if an element should\nbe removed. If the closure returns true, the element is removed from\nthe map and yielded. If the closure returns false, or panics, the\nelement remains in the map and will not be yielded.

    \n

    The iterator also lets you mutate the value of each element in the\nclosure, regardless of whether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(btree_extract_if)]\nuse std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet evens: BTreeMap<_, _> = map.extract_if(|k, _v| k % 2 == 0).collect();\nlet odds = map;\nassert_eq!(evens.keys().copied().collect::<Vec<_>>(), [0, 2, 4, 6]);\nassert_eq!(odds.keys().copied().collect::<Vec<_>>(), [1, 3, 5, 7]);
    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V, A>

    Creates a consuming iterator visiting all the keys, in sorted order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<i32> = a.into_keys().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V, A>

    Creates a consuming iterator visiting all the values, in order by key.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.into_values().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    ",0,"massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Clone for BTreeMap<K, V, A>
    where\n K: Clone,\n V: Clone,\n A: Allocator + Clone,

    source§

    fn clone(&self) -> BTreeMap<K, V, A>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Debug for BTreeMap<K, V, A>
    where\n K: Debug,\n V: Debug,\n A: Allocator + Clone,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V> Default for BTreeMap<K, V>

    source§

    fn default() -> BTreeMap<K, V>

    Creates an empty BTreeMap.

    \n
    ","Default","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, V> Deserialize<'de> for BTreeMap<K, V>
    where\n K: Deserialize<'de> + Ord,\n V: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs, const N: usize> DeserializeAs<'de, [(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<[(K, V); N], <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, [(K, V); N]>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, V, KU, VU> DeserializeAs<'de, BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeMap>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeSet<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeSet<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BinaryHeap<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BinaryHeap<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Box<[(K, V)]>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Box<[(K, V)]>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs, S> DeserializeAs<'de, HashSet<(K, V), S>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<(K, V), S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet<(K, V), S>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<LinkedList<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, LinkedList<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Option<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Option<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<VecDeque<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, VecDeque<(K, V)>>","massa_models::datastore::Datastore"],["
    1.7.0 · source§

    impl<K, V, A> Drop for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_models::datastore::Datastore"],["
    1.2.0 · source§

    impl<'a, K, V, A> Extend<(&'a K, &'a V)> for BTreeMap<K, V, A>
    where\n K: Ord + Copy,\n V: Copy,\n A: Allocator + Clone,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Extend<(K, V)> for BTreeMap<K, V, A>
    where\n K: Ord,\n A: Allocator + Clone,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_models::datastore::Datastore"],["
    1.56.0 · source§

    impl<K, V, const N: usize> From<[(K, V); N]> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from(arr: [(K, V); N]) -> BTreeMap<K, V>

    Converts a [(K, V); N] into a BTreeMap<(K, V)>.

    \n\n
    use std::collections::BTreeMap;\n\nlet map1 = BTreeMap::from([(1, 2), (3, 4)]);\nlet map2: BTreeMap<_, _> = [(1, 2), (3, 4)].into();\nassert_eq!(map1, map2);
    \n
    ","From<[(K, V); N]>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V> FromIterator<(K, V)> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from_iter<T>(iter: T) -> BTreeMap<K, V>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Hash for BTreeMap<K, V, A>
    where\n K: Hash,\n V: Hash,\n A: Allocator + Clone,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, Q, V, A> Index<&Q> for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the BTreeMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, V, E> IntoDeserializer<'de, E> for BTreeMap<K, V>
    where\n K: IntoDeserializer<'de, E> + Eq + Ord,\n V: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <BTreeMap<K, V> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <BTreeMap<K, V> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn into_iter(self) -> IntoIter<K, V, A>

    Gets an owning iterator over the entries of the map, sorted by key.

    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Ord for BTreeMap<K, V, A>
    where\n K: Ord,\n V: Ord,\n A: Allocator + Clone,

    source§

    fn cmp(&self, other: &BTreeMap<K, V, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> PartialEq for BTreeMap<K, V, A>
    where\n K: PartialEq,\n V: PartialEq,\n A: Allocator + Clone,

    source§

    fn eq(&self, other: &BTreeMap<K, V, A>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> PartialOrd for BTreeMap<K, V, A>
    where\n K: PartialOrd,\n V: PartialOrd,\n A: Allocator + Clone,

    source§

    fn partial_cmp(&self, other: &BTreeMap<K, V, A>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_models::datastore::Datastore"],["
    source§

    impl<K, V> Serialize for BTreeMap<K, V>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<[(K, V)]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V)],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V)]>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs, const N: usize> SerializeAs<[(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V); N],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V); N]>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KU, V, VU> SerializeAs<BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeMap<K, V>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeSet<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BinaryHeap<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Box<[(K, V)]>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs, H> SerializeAs<HashSet<(K, V), H>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashSet<(K, V), H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &LinkedList<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Option<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Vec<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &VecDeque<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Eq for BTreeMap<K, V, A>
    where\n K: Eq,\n V: Eq,\n A: Allocator + Clone,

    ","Eq","massa_models::datastore::Datastore"],["
    1.64.0 · source§

    impl<K, V, A> UnwindSafe for BTreeMap<K, V, A>

    ","UnwindSafe","massa_models::datastore::Datastore"]] +"massa_db_exports":[["
    source§

    impl<K, V> BTreeMap<K, V>

    1.0.0 (const: 1.66.0) · source

    pub const fn new() -> BTreeMap<K, V>

    Makes a new, empty BTreeMap.

    \n

    Does not allocate anything on its own.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    Gets an iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"c\");\nmap.insert(2, \"b\");\nmap.insert(1, \"a\");\n\nfor (key, value) in map.iter() {\n    println!(\"{key}: {value}\");\n}\n\nlet (first_key, first_value) = map.iter().next().unwrap();\nassert_eq!((*first_key, *first_value), (1, \"a\"));
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    Gets a mutable iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::from([\n   (\"a\", 1),\n   (\"b\", 2),\n   (\"c\", 3),\n]);\n\n// add 10 to the value if the key isn't \"a\"\nfor (key, value) in map.iter_mut() {\n    if key != &\"a\" {\n        *value += 10;\n    }\n}
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    Gets an iterator over the keys of the map, in sorted order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<_> = a.keys().cloned().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    Gets an iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.values().cloned().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    Gets a mutable iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, String::from(\"hello\"));\na.insert(2, String::from(\"goodbye\"));\n\nfor value in a.values_mut() {\n    value.push_str(\"!\");\n}\n\nlet values: Vec<String> = a.values().cloned().collect();\nassert_eq!(values, [String::from(\"hello!\"),\n                    String::from(\"goodbye!\")]);
    \n
    1.0.0 (const: unstable) · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 (const: unstable) · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    source

    pub fn lower_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.lower_bound(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &\"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &\"b\")));\n\nlet cursor = map.lower_bound(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.lower_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &\"a\")));
    \n
    source

    pub fn lower_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.lower_bound_mut(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &mut \"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &mut \"b\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &mut \"a\")));
    \n
    source

    pub fn upper_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.upper_bound(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &\"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &\"d\")));\n\nlet cursor = map.upper_bound(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.upper_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &\"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    source

    pub fn upper_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.upper_bound_mut(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &mut \"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &mut \"d\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &mut \"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    source

    pub const fn new_in(alloc: A) -> BTreeMap<K, V, A>

    🔬This is a nightly-only experimental API. (btreemap_alloc)

    Makes a new empty BTreeMap with a reasonable choice for B.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::alloc::Global;\n\nlet mut map = BTreeMap::new_in(Global);\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn get<Q>(&self, key: &Q) -> Option<&V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    1.66.0 · source

    pub fn first_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the first key-value pair in the map.\nThe key in this pair is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.first_key_value(), None);\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.first_key_value(), Some((&1, &\"b\")));
    \n
    1.66.0 · source

    pub fn first_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the first entry in the map for in-place manipulation.\nThe key of this entry is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.first_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"first\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"first\");\nassert_eq!(*map.get(&2).unwrap(), \"b\");
    \n
    1.66.0 · source

    pub fn pop_first(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the first element in the map.\nThe key of this element is the minimum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in ascending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_first() {\n    assert!(map.iter().all(|(k, _v)| *k > key));\n}\nassert!(map.is_empty());
    \n
    1.66.0 · source

    pub fn last_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the last key-value pair in the map.\nThe key in this pair is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.last_key_value(), Some((&2, &\"a\")));
    \n
    1.66.0 · source

    pub fn last_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the last entry in the map for in-place manipulation.\nThe key of this entry is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.last_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"last\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"a\");\nassert_eq!(*map.get(&2).unwrap(), \"last\");
    \n
    1.66.0 · source

    pub fn pop_last(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the last element in the map.\nThe key of this element is the maximum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in descending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_last() {\n    assert!(map.iter().all(|(k, _v)| *k < key));\n}\nassert!(map.is_empty());
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, key: &Q) -> bool
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, key: &Q) -> Option<&mut V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, key: K, value: V) -> Option<V>
    where\n K: Ord,

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V, A>>
    where\n K: Ord,

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n
    #![feature(map_try_insert)]\n\nuse std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, key: &Q) -> Option<V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.45.0 · source

    pub fn remove_entry<Q>(&mut self, key: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the stored key and value if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove_entry(&1), None);
    \n
    1.53.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in ascending key order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\n// Keep only the elements with even-numbered keys.\nmap.retain(|&k, _| k % 2 == 0);\nassert!(map.into_iter().eq(vec![(0, 0), (2, 20), (4, 40), (6, 60)]));
    \n
    1.11.0 · source

    pub fn append(&mut self, other: &mut BTreeMap<K, V, A>)
    where\n K: Ord,\n A: Clone,

    Moves all elements from other into self, leaving other empty.

    \n

    If a key from other is already present in self, the respective\nvalue from self will be overwritten with the respective value from other.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\"); // Note: Key (3) also present in b.\n\nlet mut b = BTreeMap::new();\nb.insert(3, \"d\"); // Note: Key (3) also present in a.\nb.insert(4, \"e\");\nb.insert(5, \"f\");\n\na.append(&mut b);\n\nassert_eq!(a.len(), 5);\nassert_eq!(b.len(), 0);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\nassert_eq!(a[&3], \"d\"); // Note: \"c\" has been overwritten.\nassert_eq!(a[&4], \"e\");\nassert_eq!(a[&5], \"f\");
    \n
    1.17.0 · source

    pub fn range<T, R>(&self, range: R) -> Range<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::ops::Bound::Included;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"a\");\nmap.insert(5, \"b\");\nmap.insert(8, \"c\");\nfor (&key, &value) in map.range((Included(&4), Included(&8))) {\n    println!(\"{key}: {value}\");\n}\nassert_eq!(Some((&5, &\"b\")), map.range(4..).next());
    \n
    1.17.0 · source

    pub fn range_mut<T, R>(&mut self, range: R) -> RangeMut<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a mutable double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<&str, i32> =\n    [(\"Alice\", 0), (\"Bob\", 0), (\"Carol\", 0), (\"Cheryl\", 0)].into();\nfor (_, balance) in map.range_mut(\"B\"..\"Cheryl\") {\n    *balance += 100;\n}\nfor (name, balance) in &map {\n    println!(\"{name} => {balance}\");\n}
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V, A>
    where\n K: Ord,

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut count: BTreeMap<&str, usize> = BTreeMap::new();\n\n// count the number of occurrences of letters in the vec\nfor x in [\"a\", \"b\", \"a\", \"c\", \"a\", \"b\"] {\n    count.entry(x).and_modify(|curr| *curr += 1).or_insert(1);\n}\n\nassert_eq!(count[\"a\"], 3);\nassert_eq!(count[\"b\"], 2);\nassert_eq!(count[\"c\"], 1);
    \n
    1.11.0 · source

    pub fn split_off<Q>(&mut self, key: &Q) -> BTreeMap<K, V, A>
    where\n Q: Ord + ?Sized,\n K: Borrow<Q> + Ord,\n A: Clone,

    Splits the collection into two at the given key. Returns everything after the given key,\nincluding the key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\");\na.insert(17, \"d\");\na.insert(41, \"e\");\n\nlet b = a.split_off(&3);\n\nassert_eq!(a.len(), 2);\nassert_eq!(b.len(), 3);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\n\nassert_eq!(b[&3], \"c\");\nassert_eq!(b[&17], \"d\");\nassert_eq!(b[&41], \"e\");
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F, A>
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (btree_extract_if)

    Creates an iterator that visits all elements (key-value pairs) in\nascending key order and uses a closure to determine if an element should\nbe removed. If the closure returns true, the element is removed from\nthe map and yielded. If the closure returns false, or panics, the\nelement remains in the map and will not be yielded.

    \n

    The iterator also lets you mutate the value of each element in the\nclosure, regardless of whether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(btree_extract_if)]\nuse std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet evens: BTreeMap<_, _> = map.extract_if(|k, _v| k % 2 == 0).collect();\nlet odds = map;\nassert_eq!(evens.keys().copied().collect::<Vec<_>>(), [0, 2, 4, 6]);\nassert_eq!(odds.keys().copied().collect::<Vec<_>>(), [1, 3, 5, 7]);
    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V, A>

    Creates a consuming iterator visiting all the keys, in sorted order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<i32> = a.into_keys().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V, A>

    Creates a consuming iterator visiting all the values, in order by key.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.into_values().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    ",0,"massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Clone for BTreeMap<K, V, A>
    where\n K: Clone,\n V: Clone,\n A: Allocator + Clone,

    source§

    fn clone(&self) -> BTreeMap<K, V, A>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Debug for BTreeMap<K, V, A>
    where\n K: Debug,\n V: Debug,\n A: Allocator + Clone,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V> Default for BTreeMap<K, V>

    source§

    fn default() -> BTreeMap<K, V>

    Creates an empty BTreeMap.

    \n
    ","Default","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, V> Deserialize<'de> for BTreeMap<K, V>
    where\n K: Deserialize<'de> + Ord,\n V: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs, const N: usize> DeserializeAs<'de, [(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<[(K, V); N], <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, [(K, V); N]>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, V, KU, VU> DeserializeAs<'de, BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeMap>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeSet<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeSet<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BinaryHeap<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BinaryHeap<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Box<[(K, V)]>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Box<[(K, V)]>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs, S> DeserializeAs<'de, HashSet<(K, V), S>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<(K, V), S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet<(K, V), S>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<LinkedList<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, LinkedList<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Option<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Option<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<VecDeque<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, VecDeque<(K, V)>>","massa_db_exports::db_batch::DBBatch"],["
    1.7.0 · source§

    impl<K, V, A> Drop for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_db_exports::db_batch::DBBatch"],["
    1.2.0 · source§

    impl<'a, K, V, A> Extend<(&'a K, &'a V)> for BTreeMap<K, V, A>
    where\n K: Ord + Copy,\n V: Copy,\n A: Allocator + Clone,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Extend<(K, V)> for BTreeMap<K, V, A>
    where\n K: Ord,\n A: Allocator + Clone,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_db_exports::db_batch::DBBatch"],["
    1.56.0 · source§

    impl<K, V, const N: usize> From<[(K, V); N]> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from(arr: [(K, V); N]) -> BTreeMap<K, V>

    Converts a [(K, V); N] into a BTreeMap<(K, V)>.

    \n\n
    use std::collections::BTreeMap;\n\nlet map1 = BTreeMap::from([(1, 2), (3, 4)]);\nlet map2: BTreeMap<_, _> = [(1, 2), (3, 4)].into();\nassert_eq!(map1, map2);
    \n
    ","From<[(K, V); N]>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V> FromIterator<(K, V)> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from_iter<T>(iter: T) -> BTreeMap<K, V>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Hash for BTreeMap<K, V, A>
    where\n K: Hash,\n V: Hash,\n A: Allocator + Clone,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, Q, V, A> Index<&Q> for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the BTreeMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<'de, K, V, E> IntoDeserializer<'de, E> for BTreeMap<K, V>
    where\n K: IntoDeserializer<'de, E> + Eq + Ord,\n V: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <BTreeMap<K, V> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <BTreeMap<K, V> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn into_iter(self) -> IntoIter<K, V, A>

    Gets an owning iterator over the entries of the map, sorted by key.

    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Ord for BTreeMap<K, V, A>
    where\n K: Ord,\n V: Ord,\n A: Allocator + Clone,

    source§

    fn cmp(&self, other: &BTreeMap<K, V, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> PartialEq for BTreeMap<K, V, A>
    where\n K: PartialEq,\n V: PartialEq,\n A: Allocator + Clone,

    source§

    fn eq(&self, other: &BTreeMap<K, V, A>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> PartialOrd for BTreeMap<K, V, A>
    where\n K: PartialOrd,\n V: PartialOrd,\n A: Allocator + Clone,

    source§

    fn partial_cmp(&self, other: &BTreeMap<K, V, A>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, V> Serialize for BTreeMap<K, V>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<[(K, V)]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V)],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V)]>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs, const N: usize> SerializeAs<[(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V); N],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V); N]>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KU, V, VU> SerializeAs<BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeMap<K, V>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeSet<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BinaryHeap<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Box<[(K, V)]>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs, H> SerializeAs<HashSet<(K, V), H>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashSet<(K, V), H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &LinkedList<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Option<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Vec<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &VecDeque<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::DBBatch"],["
    1.0.0 · source§

    impl<K, V, A> Eq for BTreeMap<K, V, A>
    where\n K: Eq,\n V: Eq,\n A: Allocator + Clone,

    ","Eq","massa_db_exports::db_batch::DBBatch"],["
    1.64.0 · source§

    impl<K, V, A> UnwindSafe for BTreeMap<K, V, A>

    ","UnwindSafe","massa_db_exports::db_batch::DBBatch"]], +"massa_models":[["
    source§

    impl<K, V> BTreeMap<K, V>

    1.0.0 (const: 1.66.0) · source

    pub const fn new() -> BTreeMap<K, V>

    Makes a new, empty BTreeMap.

    \n

    Does not allocate anything on its own.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_models::datastore::Datastore"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    Gets an iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"c\");\nmap.insert(2, \"b\");\nmap.insert(1, \"a\");\n\nfor (key, value) in map.iter() {\n    println!(\"{key}: {value}\");\n}\n\nlet (first_key, first_value) = map.iter().next().unwrap();\nassert_eq!((*first_key, *first_value), (1, \"a\"));
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    Gets a mutable iterator over the entries of the map, sorted by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::from([\n   (\"a\", 1),\n   (\"b\", 2),\n   (\"c\", 3),\n]);\n\n// add 10 to the value if the key isn't \"a\"\nfor (key, value) in map.iter_mut() {\n    if key != &\"a\" {\n        *value += 10;\n    }\n}
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    Gets an iterator over the keys of the map, in sorted order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<_> = a.keys().cloned().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    Gets an iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.values().cloned().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    Gets a mutable iterator over the values of the map, in order by key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, String::from(\"hello\"));\na.insert(2, String::from(\"goodbye\"));\n\nfor value in a.values_mut() {\n    value.push_str(\"!\");\n}\n\nlet values: Vec<String> = a.values().cloned().collect();\nassert_eq!(values, [String::from(\"hello!\"),\n                    String::from(\"goodbye!\")]);
    \n
    1.0.0 (const: unstable) · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 (const: unstable) · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    source

    pub fn lower_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.lower_bound(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &\"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &\"b\")));\n\nlet cursor = map.lower_bound(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.lower_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &\"a\")));
    \n
    source

    pub fn lower_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap before the smallest key\ngreater than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap before the smallest key greater than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap before the smallest key greater than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap before the smallest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.lower_bound_mut(Bound::Included(&2));\nassert_eq!(cursor.peek_prev(), Some((&1, &mut \"a\")));\nassert_eq!(cursor.peek_next(), Some((&2, &mut \"b\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Excluded(&2));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.lower_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), None);\nassert_eq!(cursor.peek_next(), Some((&1, &mut \"a\")));
    \n
    source

    pub fn upper_bound<Q>(&self, bound: Bound<&Q>) -> Cursor<'_, K, V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a Cursor pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet cursor = map.upper_bound(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &\"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &\"d\")));\n\nlet cursor = map.upper_bound(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &\"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &\"c\")));\n\nlet cursor = map.upper_bound(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &\"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    source

    pub fn upper_bound_mut<Q>(&mut self, bound: Bound<&Q>) -> CursorMut<'_, K, V, A>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    🔬This is a nightly-only experimental API. (btree_cursors)

    Returns a CursorMut pointing at the gap after the greatest key\nsmaller than the given bound.

    \n

    Passing Bound::Included(x) will return a cursor pointing to the\ngap after the greatest key smaller than or equal to x.

    \n

    Passing Bound::Excluded(x) will return a cursor pointing to the\ngap after the greatest key smaller than x.

    \n

    Passing Bound::Unbounded will return a cursor pointing to the\ngap after the greatest key in the map.

    \n
    §Examples
    \n
    #![feature(btree_cursors)]\n\nuse std::collections::BTreeMap;\nuse std::ops::Bound;\n\nlet mut map = BTreeMap::from([\n    (1, \"a\"),\n    (2, \"b\"),\n    (3, \"c\"),\n    (4, \"d\"),\n]);\n\nlet mut cursor = map.upper_bound_mut(Bound::Included(&3));\nassert_eq!(cursor.peek_prev(), Some((&3, &mut \"c\")));\nassert_eq!(cursor.peek_next(), Some((&4, &mut \"d\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Excluded(&3));\nassert_eq!(cursor.peek_prev(), Some((&2, &mut \"b\")));\nassert_eq!(cursor.peek_next(), Some((&3, &mut \"c\")));\n\nlet mut cursor = map.upper_bound_mut(Bound::Unbounded);\nassert_eq!(cursor.peek_prev(), Some((&4, &mut \"d\")));\nassert_eq!(cursor.peek_next(), None);
    \n
    ",0,"massa_models::datastore::Datastore"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all elements.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    source

    pub const fn new_in(alloc: A) -> BTreeMap<K, V, A>

    🔬This is a nightly-only experimental API. (btreemap_alloc)

    Makes a new empty BTreeMap with a reasonable choice for B.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::alloc::Global;\n\nlet mut map = BTreeMap::new_in(Global);\n\n// entries can now be inserted into the empty map\nmap.insert(1, \"a\");
    \n
    ",0,"massa_models::datastore::Datastore"],["
    source§

    impl<K, V, A> BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    1.0.0 · source

    pub fn get<Q>(&self, key: &Q) -> Option<&V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    1.66.0 · source

    pub fn first_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the first key-value pair in the map.\nThe key in this pair is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.first_key_value(), None);\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.first_key_value(), Some((&1, &\"b\")));
    \n
    1.66.0 · source

    pub fn first_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the first entry in the map for in-place manipulation.\nThe key of this entry is the minimum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.first_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"first\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"first\");\nassert_eq!(*map.get(&2).unwrap(), \"b\");
    \n
    1.66.0 · source

    pub fn pop_first(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the first element in the map.\nThe key of this element is the minimum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in ascending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_first() {\n    assert!(map.iter().all(|(k, _v)| *k > key));\n}\nassert!(map.is_empty());
    \n
    1.66.0 · source

    pub fn last_key_value(&self) -> Option<(&K, &V)>
    where\n K: Ord,

    Returns the last key-value pair in the map.\nThe key in this pair is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"b\");\nmap.insert(2, \"a\");\nassert_eq!(map.last_key_value(), Some((&2, &\"a\")));
    \n
    1.66.0 · source

    pub fn last_entry(&mut self) -> Option<OccupiedEntry<'_, K, V, A>>
    where\n K: Ord,

    Returns the last entry in the map for in-place manipulation.\nThe key of this entry is the maximum key in the map.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nif let Some(mut entry) = map.last_entry() {\n    if *entry.key() > 0 {\n        entry.insert(\"last\");\n    }\n}\nassert_eq!(*map.get(&1).unwrap(), \"a\");\nassert_eq!(*map.get(&2).unwrap(), \"last\");
    \n
    1.66.0 · source

    pub fn pop_last(&mut self) -> Option<(K, V)>
    where\n K: Ord,

    Removes and returns the last element in the map.\nThe key of this element is the maximum key that was in the map.

    \n
    §Examples
    \n

    Draining elements in descending order, while keeping a usable map each iteration.

    \n\n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nmap.insert(2, \"b\");\nwhile let Some((key, _val)) = map.pop_last() {\n    assert!(map.iter().all(|(k, _v)| *k < key));\n}\nassert!(map.is_empty());
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, key: &Q) -> bool
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, key: &Q) -> Option<&mut V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, key: K, value: V) -> Option<V>
    where\n K: Ord,

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V, A>>
    where\n K: Ord,

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n
    #![feature(map_try_insert)]\n\nuse std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, key: &Q) -> Option<V>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.45.0 · source

    pub fn remove_entry<Q>(&mut self, key: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    Removes a key from the map, returning the stored key and value if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but the ordering\non the borrowed form must match the ordering on the key type.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map = BTreeMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove_entry(&1), None);
    \n
    1.53.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in ascending key order.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\n// Keep only the elements with even-numbered keys.\nmap.retain(|&k, _| k % 2 == 0);\nassert!(map.into_iter().eq(vec![(0, 0), (2, 20), (4, 40), (6, 60)]));
    \n
    1.11.0 · source

    pub fn append(&mut self, other: &mut BTreeMap<K, V, A>)
    where\n K: Ord,\n A: Clone,

    Moves all elements from other into self, leaving other empty.

    \n

    If a key from other is already present in self, the respective\nvalue from self will be overwritten with the respective value from other.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\"); // Note: Key (3) also present in b.\n\nlet mut b = BTreeMap::new();\nb.insert(3, \"d\"); // Note: Key (3) also present in a.\nb.insert(4, \"e\");\nb.insert(5, \"f\");\n\na.append(&mut b);\n\nassert_eq!(a.len(), 5);\nassert_eq!(b.len(), 0);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\nassert_eq!(a[&3], \"d\"); // Note: \"c\" has been overwritten.\nassert_eq!(a[&4], \"e\");\nassert_eq!(a[&5], \"f\");
    \n
    1.17.0 · source

    pub fn range<T, R>(&self, range: R) -> Range<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\nuse std::ops::Bound::Included;\n\nlet mut map = BTreeMap::new();\nmap.insert(3, \"a\");\nmap.insert(5, \"b\");\nmap.insert(8, \"c\");\nfor (&key, &value) in map.range((Included(&4), Included(&8))) {\n    println!(\"{key}: {value}\");\n}\nassert_eq!(Some((&5, &\"b\")), map.range(4..).next());
    \n
    1.17.0 · source

    pub fn range_mut<T, R>(&mut self, range: R) -> RangeMut<'_, K, V>
    where\n T: Ord + ?Sized,\n K: Borrow<T> + Ord,\n R: RangeBounds<T>,

    Constructs a mutable double-ended iterator over a sub-range of elements in the map.\nThe simplest way is to use the range syntax min..max, thus range(min..max) will\nyield elements from min (inclusive) to max (exclusive).\nThe range may also be entered as (Bound<T>, Bound<T>), so for example\nrange((Excluded(4), Included(10))) will yield a left-exclusive, right-inclusive\nrange from 4 to 10.

    \n
    §Panics
    \n

    Panics if range start > end.\nPanics if range start == end and both bounds are Excluded.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut map: BTreeMap<&str, i32> =\n    [(\"Alice\", 0), (\"Bob\", 0), (\"Carol\", 0), (\"Cheryl\", 0)].into();\nfor (_, balance) in map.range_mut(\"B\"..\"Cheryl\") {\n    *balance += 100;\n}\nfor (name, balance) in &map {\n    println!(\"{name} => {balance}\");\n}
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V, A>
    where\n K: Ord,

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut count: BTreeMap<&str, usize> = BTreeMap::new();\n\n// count the number of occurrences of letters in the vec\nfor x in [\"a\", \"b\", \"a\", \"c\", \"a\", \"b\"] {\n    count.entry(x).and_modify(|curr| *curr += 1).or_insert(1);\n}\n\nassert_eq!(count[\"a\"], 3);\nassert_eq!(count[\"b\"], 2);\nassert_eq!(count[\"c\"], 1);
    \n
    1.11.0 · source

    pub fn split_off<Q>(&mut self, key: &Q) -> BTreeMap<K, V, A>
    where\n Q: Ord + ?Sized,\n K: Borrow<Q> + Ord,\n A: Clone,

    Splits the collection into two at the given key. Returns everything after the given key,\nincluding the key.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\na.insert(3, \"c\");\na.insert(17, \"d\");\na.insert(41, \"e\");\n\nlet b = a.split_off(&3);\n\nassert_eq!(a.len(), 2);\nassert_eq!(b.len(), 3);\n\nassert_eq!(a[&1], \"a\");\nassert_eq!(a[&2], \"b\");\n\nassert_eq!(b[&3], \"c\");\nassert_eq!(b[&17], \"d\");\nassert_eq!(b[&41], \"e\");
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F, A>
    where\n K: Ord,\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (btree_extract_if)

    Creates an iterator that visits all elements (key-value pairs) in\nascending key order and uses a closure to determine if an element should\nbe removed. If the closure returns true, the element is removed from\nthe map and yielded. If the closure returns false, or panics, the\nelement remains in the map and will not be yielded.

    \n

    The iterator also lets you mutate the value of each element in the\nclosure, regardless of whether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(btree_extract_if)]\nuse std::collections::BTreeMap;\n\nlet mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet evens: BTreeMap<_, _> = map.extract_if(|k, _v| k % 2 == 0).collect();\nlet odds = map;\nassert_eq!(evens.keys().copied().collect::<Vec<_>>(), [0, 2, 4, 6]);\nassert_eq!(odds.keys().copied().collect::<Vec<_>>(), [1, 3, 5, 7]);
    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V, A>

    Creates a consuming iterator visiting all the keys, in sorted order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(2, \"b\");\na.insert(1, \"a\");\n\nlet keys: Vec<i32> = a.into_keys().collect();\nassert_eq!(keys, [1, 2]);
    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V, A>

    Creates a consuming iterator visiting all the values, in order by key.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::BTreeMap;\n\nlet mut a = BTreeMap::new();\na.insert(1, \"hello\");\na.insert(2, \"goodbye\");\n\nlet values: Vec<&str> = a.into_values().collect();\nassert_eq!(values, [\"hello\", \"goodbye\"]);
    \n
    ",0,"massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Clone for BTreeMap<K, V, A>
    where\n K: Clone,\n V: Clone,\n A: Allocator + Clone,

    source§

    fn clone(&self) -> BTreeMap<K, V, A>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Debug for BTreeMap<K, V, A>
    where\n K: Debug,\n V: Debug,\n A: Allocator + Clone,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V> Default for BTreeMap<K, V>

    source§

    fn default() -> BTreeMap<K, V>

    Creates an empty BTreeMap.

    \n
    ","Default","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, V> Deserialize<'de> for BTreeMap<K, V>
    where\n K: Deserialize<'de> + Ord,\n V: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs, const N: usize> DeserializeAs<'de, [(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<[(K, V); N], <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, [(K, V); N]>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, V, KU, VU> DeserializeAs<'de, BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeMap<K, V>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeMap>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeSet<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeSet<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BinaryHeap<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BinaryHeap<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Box<[(K, V)]>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Box<[(K, V)]>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs, S> DeserializeAs<'de, HashSet<(K, V), S>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<(K, V), S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet<(K, V), S>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<LinkedList<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, LinkedList<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Option<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Option<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec<(K, V)>>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<VecDeque<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, VecDeque<(K, V)>>","massa_models::datastore::Datastore"],["
    1.7.0 · source§

    impl<K, V, A> Drop for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_models::datastore::Datastore"],["
    1.2.0 · source§

    impl<'a, K, V, A> Extend<(&'a K, &'a V)> for BTreeMap<K, V, A>
    where\n K: Ord + Copy,\n V: Copy,\n A: Allocator + Clone,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Extend<(K, V)> for BTreeMap<K, V, A>
    where\n K: Ord,\n A: Allocator + Clone,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_models::datastore::Datastore"],["
    1.56.0 · source§

    impl<K, V, const N: usize> From<[(K, V); N]> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from(arr: [(K, V); N]) -> BTreeMap<K, V>

    Converts a [(K, V); N] into a BTreeMap<(K, V)>.

    \n\n
    use std::collections::BTreeMap;\n\nlet map1 = BTreeMap::from([(1, 2), (3, 4)]);\nlet map2: BTreeMap<_, _> = [(1, 2), (3, 4)].into();\nassert_eq!(map1, map2);
    \n
    ","From<[(K, V); N]>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V> FromIterator<(K, V)> for BTreeMap<K, V>
    where\n K: Ord,

    source§

    fn from_iter<T>(iter: T) -> BTreeMap<K, V>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Hash for BTreeMap<K, V, A>
    where\n K: Hash,\n V: Hash,\n A: Allocator + Clone,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, Q, V, A> Index<&Q> for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,\n K: Borrow<Q> + Ord,\n Q: Ord + ?Sized,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the BTreeMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_models::datastore::Datastore"],["
    source§

    impl<'de, K, V, E> IntoDeserializer<'de, E> for BTreeMap<K, V>
    where\n K: IntoDeserializer<'de, E> + Eq + Ord,\n V: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <BTreeMap<K, V> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <BTreeMap<K, V> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
    where\n A: Allocator + Clone,

    source§

    fn into_iter(self) -> IntoIter<K, V, A>

    Gets an owning iterator over the entries of the map, sorted by key.

    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Ord for BTreeMap<K, V, A>
    where\n K: Ord,\n V: Ord,\n A: Allocator + Clone,

    source§

    fn cmp(&self, other: &BTreeMap<K, V, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> PartialEq for BTreeMap<K, V, A>
    where\n K: PartialEq,\n V: PartialEq,\n A: Allocator + Clone,

    source§

    fn eq(&self, other: &BTreeMap<K, V, A>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> PartialOrd for BTreeMap<K, V, A>
    where\n K: PartialOrd,\n V: PartialOrd,\n A: Allocator + Clone,

    source§

    fn partial_cmp(&self, other: &BTreeMap<K, V, A>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_models::datastore::Datastore"],["
    source§

    impl<K, V> Serialize for BTreeMap<K, V>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<[(K, V)]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V)],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V)]>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs, const N: usize> SerializeAs<[(K, V); N]> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V); N],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V); N]>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KU, V, VU> SerializeAs<BTreeMap<K, V>> for BTreeMap<KU, VU>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeMap<K, V>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BTreeSet<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeSet<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BinaryHeap<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BinaryHeap<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Box<[(K, V)]>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Box<[(K, V)]>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs, H> SerializeAs<HashSet<(K, V), H>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashSet<(K, V), H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<LinkedList<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &LinkedList<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Option<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Option<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Vec<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Vec<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<VecDeque<(K, V)>> for BTreeMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &VecDeque<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::datastore::Datastore"],["
    1.0.0 · source§

    impl<K, V, A> Eq for BTreeMap<K, V, A>
    where\n K: Eq,\n V: Eq,\n A: Allocator + Clone,

    ","Eq","massa_models::datastore::Datastore"],["
    1.64.0 · source§

    impl<K, V, A> UnwindSafe for BTreeMap<K, V, A>

    ","UnwindSafe","massa_models::datastore::Datastore"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/alloc/sync/struct.Arc.js b/type.impl/alloc/sync/struct.Arc.js index 39488fcccd6..4a9d7146628 100644 --- a/type.impl/alloc/sync/struct.Arc.js +++ b/type.impl/alloc/sync/struct.Arc.js @@ -1,5 +1,5 @@ (function() {var type_impls = { -"massa_db_exports":[["
    source§

    impl<T> Arc<T>
    where\n T: ?Sized,

    1.17.0 · source

    pub unsafe fn from_raw(ptr: *const T) -> Arc<T>

    Constructs an Arc<T> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to\nArc<U>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw(x_ptr);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    use std::sync::Arc;\n\nlet x: Arc<[u32]> = Arc::new([1, 2, 3]);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3]> = Arc::from_raw(x_ptr.cast::<[u32; 3]>());\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.51.0 · source

    pub unsafe fn increment_strong_count(ptr: *const T)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    1.51.0 · source

    pub unsafe fn decrement_strong_count(ptr: *const T)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count(ptr);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T> Arc<T>

    1.0.0 · source

    pub fn new(data: T) -> Arc<T>

    Constructs a new Arc<T>.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);
    \n
    1.60.0 · source

    pub fn new_cyclic<F>(data_fn: F) -> Arc<T>
    where\n F: FnOnce(&Weak<T>) -> T,

    Constructs a new Arc<T> while giving you a Weak<T> to the allocation,\nto allow you to construct a T which holds a weak pointer to itself.

    \n

    Generally, a structure circularly referencing itself, either directly or\nindirectly, should not hold a strong reference to itself to prevent a memory leak.\nUsing this function, you get access to the weak pointer during the\ninitialization of T, before the Arc<T> is created, such that you can\nclone and store it inside the T.

    \n

    new_cyclic first allocates the managed allocation for the Arc<T>,\nthen calls your closure, giving it a Weak<T> to this allocation,\nand only afterwards completes the construction of the Arc<T> by placing\nthe T returned from your closure into the allocation.

    \n

    Since the new Arc<T> is not fully-constructed until Arc<T>::new_cyclic\nreturns, calling upgrade on the weak reference inside your closure will\nfail and result in a None value.

    \n
    §Panics
    \n

    If data_fn panics, the panic is propagated to the caller, and the\ntemporary Weak<T> is dropped normally.

    \n
    §Example
    \n
    use std::sync::{Arc, Weak};\n\nstruct Gadget {\n    me: Weak<Gadget>,\n}\n\nimpl Gadget {\n    /// Construct a reference counted Gadget.\n    fn new() -> Arc<Self> {\n        // `me` is a `Weak<Gadget>` pointing at the new allocation of the\n        // `Arc` we're constructing.\n        Arc::new_cyclic(|me| {\n            // Create the actual struct here.\n            Gadget { me: me.clone() }\n        })\n    }\n\n    /// Return a reference counted pointer to Self.\n    fn me(&self) -> Arc<Self> {\n        self.me.upgrade().unwrap()\n    }\n}
    \n
    source

    pub fn new_uninit() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::new_uninit();\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::new_zeroed();\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    1.33.0 · source

    pub fn pin(data: T) -> Pin<Arc<T>>

    Constructs a new Pin<Arc<T>>. If T does not implement Unpin, then\ndata will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin(data: T) -> Result<Pin<Arc<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T>>, return an error if allocation fails.

    \n
    source

    pub fn try_new(data: T) -> Result<Arc<T>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T>, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\n\nlet five = Arc::try_new(5)?;
    \n
    source

    pub fn try_new_uninit() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, returning an error\nif allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::try_new_uninit()?;\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, returning an error if allocation fails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::try_new_zeroed()?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source

    pub fn allocator(this: &Arc<T, A>) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n

    Note: this is an associated function, which means that you have\nto call it as Arc::allocator(&a) instead of a.allocator(). This\nis so that there is no conflict with a method on the inner type.

    \n
    1.17.0 · source

    pub fn into_raw(this: Arc<T, A>) -> *const T

    Consumes the Arc, returning the wrapped pointer.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub fn into_raw_with_allocator(this: Arc<T, A>) -> (*const T, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Consumes the Arc, returning the wrapped pointer and allocator.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw_in.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet (ptr, alloc) = Arc::into_raw_with_allocator(x);\nassert_eq!(unsafe { &*ptr }, \"hello\");\nlet x = unsafe { Arc::from_raw_in(ptr, alloc) };\nassert_eq!(&*x, \"hello\");
    \n
    1.45.0 · source

    pub fn as_ptr(this: &Arc<T, A>) -> *const T

    Provides a raw pointer to the data.

    \n

    The counts are not affected in any way and the Arc is not consumed. The pointer is valid for\nas long as there are strong counts in the Arc.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet y = Arc::clone(&x);\nlet x_ptr = Arc::as_ptr(&x);\nassert_eq!(x_ptr, Arc::as_ptr(&y));\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub unsafe fn from_raw_in(ptr: *const T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs an Arc<T, A> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to Arc<U, A>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The raw pointer must point to a block of memory allocated by alloc

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw_in(x_ptr, System);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x: Arc<[u32], _> = Arc::new_in([1, 2, 3], System);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3], _> = Arc::from_raw_in(x_ptr.cast::<[u32; 3]>(), System);\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.4.0 · source

    pub fn downgrade(this: &Arc<T, A>) -> Weak<T, A>
    where\n A: Clone,

    Creates a new Weak pointer to this allocation.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet weak_five = Arc::downgrade(&five);
    \n
    1.15.0 · source

    pub fn weak_count(this: &Arc<T, A>) -> usize

    Gets the number of Weak pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the weak count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _weak_five = Arc::downgrade(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` or `Weak` between threads.\nassert_eq!(1, Arc::weak_count(&five));
    \n
    1.15.0 · source

    pub fn strong_count(this: &Arc<T, A>) -> usize

    Gets the number of strong (Arc) pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the strong count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _also_five = Arc::clone(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` between threads.\nassert_eq!(2, Arc::strong_count(&five));
    \n
    source

    pub unsafe fn increment_strong_count_in(ptr: *const T, alloc: A)
    where\n A: Clone,

    🔬This is a nightly-only experimental API. (allocator_api)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method,, and ptr must point to a block of memory\nallocated by alloc.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    source

    pub unsafe fn decrement_strong_count_in(ptr: *const T, alloc: A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method, and ptr must point to a block of memory\nallocated by alloc. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count_in(ptr, System);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    1.17.0 · source

    pub fn ptr_eq(this: &Arc<T, A>, other: &Arc<T, A>) -> bool

    Returns true if the two Arcs point to the same allocation in a vein similar to\nptr::eq. This function ignores the metadata of dyn Trait pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet same_five = Arc::clone(&five);\nlet other_five = Arc::new(5);\n\nassert!(Arc::ptr_eq(&five, &same_five));\nassert!(!Arc::ptr_eq(&five, &other_five));
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: CloneToUninit + ?Sized,\n A: Allocator + Clone,

    1.4.0 · source

    pub fn make_mut(this: &mut Arc<T, A>) -> &mut T

    Makes a mutable reference into the given Arc.

    \n

    If there are other Arc pointers to the same allocation, then make_mut will\nclone the inner value to a new allocation to ensure unique ownership. This is also\nreferred to as clone-on-write.

    \n

    However, if there are no other Arc pointers to this allocation, but some Weak\npointers, then the Weak pointers will be dissociated and the inner value will not\nbe cloned.

    \n

    See also get_mut, which will fail rather than cloning the inner value\nor dissociating Weak pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut data = Arc::new(5);\n\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\nlet mut other_data = Arc::clone(&data); // Won't clone inner data\n*Arc::make_mut(&mut data) += 1;         // Clones inner data\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\n*Arc::make_mut(&mut other_data) *= 2;   // Won't clone anything\n\n// Now `data` and `other_data` point to different allocations.\nassert_eq!(*data, 8);\nassert_eq!(*other_data, 12);
    \n

    Weak pointers will be dissociated:

    \n\n
    use std::sync::Arc;\n\nlet mut data = Arc::new(75);\nlet weak = Arc::downgrade(&data);\n\nassert!(75 == *data);\nassert!(75 == *weak.upgrade().unwrap());\n\n*Arc::make_mut(&mut data) += 1;\n\nassert!(76 == *data);\nassert!(weak.upgrade().is_none());
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: Clone,\n A: Allocator,

    1.76.0 · source

    pub fn unwrap_or_clone(this: Arc<T, A>) -> T

    If we have the only reference to T then unwrap it. Otherwise, clone T and return the\nclone.

    \n

    Assuming arc_t is of type Arc<T>, this function is functionally equivalent to\n(*arc_t).clone(), but will avoid cloning the inner value where possible.

    \n
    §Examples
    \n
    let inner = String::from(\"test\");\nlet ptr = inner.as_ptr();\n\nlet arc = Arc::new(inner);\nlet inner = Arc::unwrap_or_clone(arc);\n// The inner value was not cloned\nassert!(ptr::eq(ptr, inner.as_ptr()));\n\nlet arc = Arc::new(inner);\nlet arc2 = arc.clone();\nlet inner = Arc::unwrap_or_clone(arc);\n// Because there were 2 references, we had to clone the inner value.\nassert!(!ptr::eq(ptr, inner.as_ptr()));\n// `arc2` is the last reference, so when we unwrap it we get back\n// the original `String`.\nlet inner = Arc::unwrap_or_clone(arc2);\nassert!(ptr::eq(ptr, inner.as_ptr()));
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    1.4.0 · source

    pub fn get_mut(this: &mut Arc<T, A>) -> Option<&mut T>

    Returns a mutable reference into the given Arc, if there are\nno other Arc or Weak pointers to the same allocation.

    \n

    Returns None otherwise, because it is not safe to\nmutate a shared value.

    \n

    See also make_mut, which will clone\nthe inner value when there are other Arc pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut x = Arc::new(3);\n*Arc::get_mut(&mut x).unwrap() = 4;\nassert_eq!(*x, 4);\n\nlet _y = Arc::clone(&x);\nassert!(Arc::get_mut(&mut x).is_none());
    \n
    source

    pub unsafe fn get_mut_unchecked(this: &mut Arc<T, A>) -> &mut T

    🔬This is a nightly-only experimental API. (get_mut_unchecked)

    Returns a mutable reference into the given Arc,\nwithout any check.

    \n

    See also get_mut, which is safe and does appropriate checks.

    \n
    §Safety
    \n

    If any other Arc or Weak pointers to the same allocation exist, then\nthey must not be dereferenced or have active borrows for the duration\nof the returned borrow, and their inner type must be exactly the same as the\ninner type of this Rc (including lifetimes). This is trivially the case if no\nsuch pointers exist, for example immediately after Arc::new.

    \n
    §Examples
    \n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut x = Arc::new(String::new());\nunsafe {\n    Arc::get_mut_unchecked(&mut x).push_str(\"foo\")\n}\nassert_eq!(*x, \"foo\");
    \n

    Other Arc pointers to the same allocation must be to the same type.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<str> = Arc::from(\"Hello, world!\");\nlet mut y: Arc<[u8]> = x.clone().into();\nunsafe {\n    // this is Undefined Behavior, because x's inner type is str, not [u8]\n    Arc::get_mut_unchecked(&mut y).fill(0xff); // 0xff is invalid in UTF-8\n}\nprintln!(\"{}\", &*x); // Invalid UTF-8 in a str
    \n

    Other Arc pointers to the same allocation must be to the exact same type, including lifetimes.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<&str> = Arc::new(\"Hello, world!\");\n{\n    let s = String::from(\"Oh, no!\");\n    let mut y: Arc<&str> = x.clone().into();\n    unsafe {\n        // this is Undefined Behavior, because x's inner type\n        // is &'long str, not &'short str\n        *Arc::get_mut_unchecked(&mut y) = &s;\n    }\n}\nprintln!(\"{}\", &*x); // Use-after-free
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,

    source

    pub fn new_in(data: T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T> in the provided allocator.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);
    \n
    source

    pub fn new_uninit_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents in the provided allocator.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::new_uninit_in(System);\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::new_zeroed_in(System);\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    source

    pub fn pin_in(data: T, alloc: A) -> Pin<Arc<T, A>>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator. If T does not implement Unpin,\nthen data will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin_in(data: T, alloc: A) -> Result<Pin<Arc<T, A>>, AllocError>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator, return an error if allocation\nfails.

    \n
    source

    pub fn try_new_in(data: T, alloc: A) -> Result<Arc<T, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T, A> in the provided allocator, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::try_new_in(5, System)?;
    \n
    source

    pub fn try_new_uninit_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, in the provided allocator, returning an\nerror if allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::try_new_uninit_in(System)?;\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator, returning an error if allocation\nfails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::try_new_zeroed_in(System)?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    1.4.0 · source

    pub fn try_unwrap(this: Arc<T, A>) -> Result<T, Arc<T, A>>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, an Err is returned with the same Arc that was\npassed in.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    It is strongly recommended to use Arc::into_inner instead if you don’t\nkeep the Arc in the Err case.\nImmediately dropping the Err-value, as the expression\nArc::try_unwrap(this).ok() does, can cause the strong count to\ndrop to zero and the inner value of the Arc to be dropped.\nFor instance, if two threads execute such an expression in parallel,\nthere is a race condition without the possibility of unsafety:\nThe threads could first both check whether they own the last instance\nin Arc::try_unwrap, determine that they both do not, and then both\ndiscard and drop their instance in the call to ok.\nIn this scenario, the value inside the Arc is safely destroyed\nby exactly one of the threads, but neither thread will ever be able\nto use the value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nassert_eq!(Arc::try_unwrap(x), Ok(3));\n\nlet x = Arc::new(4);\nlet _y = Arc::clone(&x);\nassert_eq!(*Arc::try_unwrap(x).unwrap_err(), 4);
    \n
    1.70.0 · source

    pub fn into_inner(this: Arc<T, A>) -> Option<T>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, None is returned and the Arc is dropped.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    If Arc::into_inner is called on every clone of this Arc,\nit is guaranteed that exactly one of the calls returns the inner value.\nThis means in particular that the inner value is not dropped.

    \n

    Arc::try_unwrap is conceptually similar to Arc::into_inner, but it\nis meant for different use-cases. If used as a direct replacement\nfor Arc::into_inner anyway, such as with the expression\nArc::try_unwrap(this).ok(), then it does\nnot give the same guarantee as described in the previous paragraph.\nFor more information, see the examples below and read the documentation\nof Arc::try_unwrap.

    \n
    §Examples
    \n

    Minimal example demonstrating the guarantee that Arc::into_inner gives.

    \n\n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nlet y = Arc::clone(&x);\n\n// Two threads calling `Arc::into_inner` on both clones of an `Arc`:\nlet x_thread = std::thread::spawn(|| Arc::into_inner(x));\nlet y_thread = std::thread::spawn(|| Arc::into_inner(y));\n\nlet x_inner_value = x_thread.join().unwrap();\nlet y_inner_value = y_thread.join().unwrap();\n\n// One of the threads is guaranteed to receive the inner value:\nassert!(matches!(\n    (x_inner_value, y_inner_value),\n    (None, Some(3)) | (Some(3), None)\n));\n// The result could also be `(None, None)` if the threads called\n// `Arc::try_unwrap(x).ok()` and `Arc::try_unwrap(y).ok()` instead.
    \n

    A more practical example demonstrating the need for Arc::into_inner:

    \n\n
    use std::sync::Arc;\n\n// Definition of a simple singly linked list using `Arc`:\n#[derive(Clone)]\nstruct LinkedList<T>(Option<Arc<Node<T>>>);\nstruct Node<T>(T, Option<Arc<Node<T>>>);\n\n// Dropping a long `LinkedList<T>` relying on the destructor of `Arc`\n// can cause a stack overflow. To prevent this, we can provide a\n// manual `Drop` implementation that does the destruction in a loop:\nimpl<T> Drop for LinkedList<T> {\n    fn drop(&mut self) {\n        let mut link = self.0.take();\n        while let Some(arc_node) = link.take() {\n            if let Some(Node(_value, next)) = Arc::into_inner(arc_node) {\n                link = next;\n            }\n        }\n    }\n}\n\n// Implementation of `new` and `push` omitted\nimpl<T> LinkedList<T> {\n    /* ... */\n}\n\n// The following code could have still caused a stack overflow\n// despite the manual `Drop` impl if that `Drop` impl had used\n// `Arc::try_unwrap(arc).ok()` instead of `Arc::into_inner(arc)`.\n\n// Create a long list and clone it\nlet mut x = LinkedList::new();\nlet size = 100000;\nfor i in 0..size {\n    x.push(i); // Adds i to the front of x\n}\nlet y = x.clone();\n\n// Drop the clones in parallel\nlet x_thread = std::thread::spawn(|| drop(x));\nlet y_thread = std::thread::spawn(|| drop(y));\nx_thread.join().unwrap();\ny_thread.join().unwrap();
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    1.64.0 · source§

    impl<T> AsFd for Arc<T>
    where\n T: AsFd + ?Sized,

    This impl allows implementing traits that require AsFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\n\ntrait MyTrait: AsFd {}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_fd(&self) -> BorrowedFd<'_>

    Borrows the file descriptor. Read more
    ","AsFd","massa_db_exports::controller::ShareableMassaDBController"],["
    1.63.0 · source§

    impl<T> AsRawFd for Arc<T>
    where\n T: AsRawFd,

    This impl allows implementing traits that require AsRawFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\ntrait MyTrait: AsRawFd {\n}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_raw_fd(&self) -> i32

    Extracts the raw file descriptor. Read more
    ","AsRawFd","massa_db_exports::controller::ShareableMassaDBController"],["
    1.5.0 · source§

    impl<T, A> AsRef<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn as_ref(&self) -> &T

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Borrow<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    ","Borrow","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Clone for Arc<T, A>
    where\n A: Allocator + Clone,\n T: ?Sized,

    source§

    fn clone(&self) -> Arc<T, A>

    Makes a clone of the Arc pointer.

    \n

    This creates another pointer to the same allocation, increasing the\nstrong reference count.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet _ = Arc::clone(&five);
    \n
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Debug for Arc<T, A>
    where\n T: Debug + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T> Default for Arc<T>
    where\n T: Default,

    source§

    fn default() -> Arc<T>

    Creates a new Arc<T>, with the Default value for T.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x: Arc<i32> = Default::default();\nassert_eq!(*x, 0);
    \n
    ","Default","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Deref for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    §

    type Target = T

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &T

    Dereferences the value.
    ","Deref","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Arc<T>> for Arc<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Arc<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Arc>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Display for Arc<T, A>
    where\n T: Display + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Drop for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn drop(&mut self)

    Drops the Arc.

    \n

    This will decrement the strong reference count. If the strong reference\ncount reaches zero then the only other references (if any) are\nWeak, so we drop the inner value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nstruct Foo;\n\nimpl Drop for Foo {\n    fn drop(&mut self) {\n        println!(\"dropped!\");\n    }\n}\n\nlet foo  = Arc::new(Foo);\nlet foo2 = Arc::clone(&foo);\n\ndrop(foo);    // Doesn't print anything\ndrop(foo2);   // Prints \"dropped!\"
    \n
    ","Drop","massa_db_exports::controller::ShareableMassaDBController"],["
    1.52.0 · source§

    impl<T> Error for Arc<T>
    where\n T: Error + ?Sized,

    source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    source§

    fn provide<'a>(&'a self, req: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    ","Error","massa_db_exports::controller::ShareableMassaDBController"],["
    1.21.0 · source§

    impl<T, A> From<Box<T, A>> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn from(v: Box<T, A>) -> Arc<T, A>

    Move a boxed object to a new, reference-counted allocation.

    \n
    §Example
    \n
    let unique: Box<str> = Box::from(\"eggplant\");\nlet shared: Arc<str> = Arc::from(unique);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.45.0 · source§

    impl<'a, B> From<Cow<'a, B>> for Arc<B>
    where\n B: ToOwned + ?Sized,\n Arc<B>: From<&'a B> + From<<B as ToOwned>::Owned>,

    source§

    fn from(cow: Cow<'a, B>) -> Arc<B>

    Create an atomically reference-counted pointer from\na clone-on-write pointer by copying its content.

    \n
    §Example
    \n
    let cow: Cow<'_, str> = Cow::Borrowed(\"eggplant\");\nlet shared: Arc<str> = Arc::from(cow);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.6.0 · source§

    impl<T> From<T> for Arc<T>

    source§

    fn from(t: T) -> Arc<T>

    Converts a T into an Arc<T>

    \n

    The conversion moves the value into a\nnewly allocated Arc. It is equivalent to\ncalling Arc::new(t).

    \n
    §Example
    \n
    let x = 5;\nlet arc = Arc::new(5);\n\nassert_eq!(Arc::from(x), arc);
    \n
    ","From","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Hash for Arc<T, A>
    where\n T: Hash + ?Sized,\n A: Allocator,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<Sp> LocalSpawn for Arc<Sp>
    where\n Sp: LocalSpawn + ?Sized,

    §

    fn spawn_local_obj(\n &self,\n future: LocalFutureObj<'static, ()>,\n) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status_local(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","LocalSpawn","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T> Log for Arc<T>
    where\n T: Log + ?Sized,

    source§

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Determines if a log message with the specified metadata would be\nlogged. Read more
    source§

    fn log(&self, record: &Record<'_>)

    Logs the Record. Read more
    source§

    fn flush(&self)

    Flushes any buffered records. Read more
    ","Log","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Ord for Arc<T, A>
    where\n T: Ord + ?Sized,\n A: Allocator,

    source§

    fn cmp(&self, other: &Arc<T, A>) -> Ordering

    Comparison for two Arcs.

    \n

    The two are compared by calling cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Ordering::Less, five.cmp(&Arc::new(6)));
    \n
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> PartialEq for Arc<T, A>
    where\n T: PartialEq + ?Sized,\n A: Allocator,

    source§

    fn eq(&self, other: &Arc<T, A>) -> bool

    Equality for two Arcs.

    \n

    Two Arcs are equal if their inner values are equal, even if they are\nstored in different allocation.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same allocation are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five == Arc::new(5));
    \n
    source§

    fn ne(&self, other: &Arc<T, A>) -> bool

    Inequality for two Arcs.

    \n

    Two Arcs are not equal if their inner values are not equal.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same value are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five != Arc::new(6));
    \n
    ","PartialEq","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> PartialOrd for Arc<T, A>
    where\n T: PartialOrd + ?Sized,\n A: Allocator,

    source§

    fn partial_cmp(&self, other: &Arc<T, A>) -> Option<Ordering>

    Partial comparison for two Arcs.

    \n

    The two are compared by calling partial_cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Some(Ordering::Less), five.partial_cmp(&Arc::new(6)));
    \n
    source§

    fn lt(&self, other: &Arc<T, A>) -> bool

    Less-than comparison for two Arcs.

    \n

    The two are compared by calling < on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five < Arc::new(6));
    \n
    source§

    fn le(&self, other: &Arc<T, A>) -> bool

    ‘Less than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling <= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five <= Arc::new(5));
    \n
    source§

    fn gt(&self, other: &Arc<T, A>) -> bool

    Greater-than comparison for two Arcs.

    \n

    The two are compared by calling > on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five > Arc::new(4));
    \n
    source§

    fn ge(&self, other: &Arc<T, A>) -> bool

    ‘Greater than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling >= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five >= Arc::new(5));
    \n
    ","PartialOrd","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Pointer for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, U> SerializeAs<Arc<T>> for Arc<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Arc<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<Request, S> Service<Request> for Arc<S>
    where\n S: Service<Request> + ?Sized,

    §

    type Response = <S as Service<Request>>::Response

    Responses given by the service.
    §

    type Error = <S as Service<Request>>::Error

    Errors produced by the service. Read more
    §

    type Future = <S as Service<Request>>::Future

    The future response value.
    §

    fn call(&self, req: Request) -> <Arc<S> as Service<Request>>::Future

    Process the request and return the response asynchronously.\ncall takes &self instead of mut &self because: Read more
    ","Service","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<Sp> Spawn for Arc<Sp>
    where\n Sp: Spawn + ?Sized,

    §

    fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","Spawn","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<S> Subscriber for Arc<S>
    where\n S: Subscriber + ?Sized,

    §

    fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

    Registers a new callsite with this subscriber, returning whether or not\nthe subscriber is interested in being notified about the callsite. Read more
    §

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Returns true if a span or event with the specified metadata would be\nrecorded. Read more
    §

    fn max_level_hint(&self) -> Option<LevelFilter>

    Returns the highest verbosity level that this Subscriber will\nenable, or None, if the subscriber does not implement level-based\nfiltering or chooses not to implement this method. Read more
    §

    fn new_span(&self, span: &Attributes<'_>) -> Id

    Visit the construction of a new span, returning a new span ID for the\nspan being constructed. Read more
    §

    fn record(&self, span: &Id, values: &Record<'_>)

    Record a set of values on a span. Read more
    §

    fn record_follows_from(&self, span: &Id, follows: &Id)

    Adds an indication that span follows from the span with the id\nfollows. Read more
    §

    fn event_enabled(&self, event: &Event<'_>) -> bool

    Determine if an [Event] should be recorded. Read more
    §

    fn event(&self, event: &Event<'_>)

    Records that an Event has occurred. Read more
    §

    fn enter(&self, span: &Id)

    Records that a span has been entered. Read more
    §

    fn exit(&self, span: &Id)

    Records that a span has been exited. Read more
    §

    fn clone_span(&self, id: &Id) -> Id

    Notifies the subscriber that a span ID has been cloned. Read more
    §

    fn try_close(&self, id: Id) -> bool

    Notifies the subscriber that a span ID has been dropped, and returns\ntrue if there are now 0 IDs that refer to that span. Read more
    §

    fn drop_span(&self, id: Id)

    👎Deprecated since 0.1.2: use Subscriber::try_close instead
    This method is deprecated. Read more
    §

    fn current_span(&self) -> Current

    Returns a type representing this subscriber’s view of the current span. Read more
    §

    unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>

    If self is the same type as the provided TypeId, returns an untyped\n*const pointer to that type. Otherwise, returns None. Read more
    §

    fn on_register_dispatch(&self, subscriber: &Dispatch)

    Invoked when this subscriber becomes a [Dispatch]. Read more
    ","Subscriber","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, U, A> CoerceUnsized<Arc<U, A>> for Arc<T, A>
    where\n T: Unsize<U> + ?Sized,\n A: Allocator,\n U: ?Sized,

    ","CoerceUnsized>","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> DerefPure for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","DerefPure","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T>
    where\n T: Unsize<U> + ?Sized,\n U: ?Sized,

    ","DispatchFromDyn>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Eq for Arc<T, A>
    where\n T: Eq + ?Sized,\n A: Allocator,

    ","Eq","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Send for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Send,

    ","Send","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Sync for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Sync,

    ","Sync","massa_db_exports::controller::ShareableMassaDBController"],["
    1.33.0 · source§

    impl<T, A> Unpin for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","Unpin","massa_db_exports::controller::ShareableMassaDBController"],["
    1.9.0 · source§

    impl<T, A> UnwindSafe for Arc<T, A>
    where\n T: RefUnwindSafe + ?Sized,\n A: Allocator + UnwindSafe,

    ","UnwindSafe","massa_db_exports::controller::ShareableMassaDBController"]], -"massa_pos_worker":[["
    source§

    impl<T> Arc<T>
    where\n T: ?Sized,

    1.17.0 · source

    pub unsafe fn from_raw(ptr: *const T) -> Arc<T>

    Constructs an Arc<T> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to\nArc<U>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw(x_ptr);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    use std::sync::Arc;\n\nlet x: Arc<[u32]> = Arc::new([1, 2, 3]);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3]> = Arc::from_raw(x_ptr.cast::<[u32; 3]>());\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.51.0 · source

    pub unsafe fn increment_strong_count(ptr: *const T)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    1.51.0 · source

    pub unsafe fn decrement_strong_count(ptr: *const T)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count(ptr);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T> Arc<T>

    1.0.0 · source

    pub fn new(data: T) -> Arc<T>

    Constructs a new Arc<T>.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);
    \n
    1.60.0 · source

    pub fn new_cyclic<F>(data_fn: F) -> Arc<T>
    where\n F: FnOnce(&Weak<T>) -> T,

    Constructs a new Arc<T> while giving you a Weak<T> to the allocation,\nto allow you to construct a T which holds a weak pointer to itself.

    \n

    Generally, a structure circularly referencing itself, either directly or\nindirectly, should not hold a strong reference to itself to prevent a memory leak.\nUsing this function, you get access to the weak pointer during the\ninitialization of T, before the Arc<T> is created, such that you can\nclone and store it inside the T.

    \n

    new_cyclic first allocates the managed allocation for the Arc<T>,\nthen calls your closure, giving it a Weak<T> to this allocation,\nand only afterwards completes the construction of the Arc<T> by placing\nthe T returned from your closure into the allocation.

    \n

    Since the new Arc<T> is not fully-constructed until Arc<T>::new_cyclic\nreturns, calling upgrade on the weak reference inside your closure will\nfail and result in a None value.

    \n
    §Panics
    \n

    If data_fn panics, the panic is propagated to the caller, and the\ntemporary Weak<T> is dropped normally.

    \n
    §Example
    \n
    use std::sync::{Arc, Weak};\n\nstruct Gadget {\n    me: Weak<Gadget>,\n}\n\nimpl Gadget {\n    /// Construct a reference counted Gadget.\n    fn new() -> Arc<Self> {\n        // `me` is a `Weak<Gadget>` pointing at the new allocation of the\n        // `Arc` we're constructing.\n        Arc::new_cyclic(|me| {\n            // Create the actual struct here.\n            Gadget { me: me.clone() }\n        })\n    }\n\n    /// Return a reference counted pointer to Self.\n    fn me(&self) -> Arc<Self> {\n        self.me.upgrade().unwrap()\n    }\n}
    \n
    source

    pub fn new_uninit() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::new_uninit();\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::new_zeroed();\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    1.33.0 · source

    pub fn pin(data: T) -> Pin<Arc<T>>

    Constructs a new Pin<Arc<T>>. If T does not implement Unpin, then\ndata will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin(data: T) -> Result<Pin<Arc<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T>>, return an error if allocation fails.

    \n
    source

    pub fn try_new(data: T) -> Result<Arc<T>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T>, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\n\nlet five = Arc::try_new(5)?;
    \n
    source

    pub fn try_new_uninit() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, returning an error\nif allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::try_new_uninit()?;\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, returning an error if allocation fails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::try_new_zeroed()?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source

    pub fn allocator(this: &Arc<T, A>) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n

    Note: this is an associated function, which means that you have\nto call it as Arc::allocator(&a) instead of a.allocator(). This\nis so that there is no conflict with a method on the inner type.

    \n
    1.17.0 · source

    pub fn into_raw(this: Arc<T, A>) -> *const T

    Consumes the Arc, returning the wrapped pointer.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub fn into_raw_with_allocator(this: Arc<T, A>) -> (*const T, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Consumes the Arc, returning the wrapped pointer and allocator.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw_in.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet (ptr, alloc) = Arc::into_raw_with_allocator(x);\nassert_eq!(unsafe { &*ptr }, \"hello\");\nlet x = unsafe { Arc::from_raw_in(ptr, alloc) };\nassert_eq!(&*x, \"hello\");
    \n
    1.45.0 · source

    pub fn as_ptr(this: &Arc<T, A>) -> *const T

    Provides a raw pointer to the data.

    \n

    The counts are not affected in any way and the Arc is not consumed. The pointer is valid for\nas long as there are strong counts in the Arc.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet y = Arc::clone(&x);\nlet x_ptr = Arc::as_ptr(&x);\nassert_eq!(x_ptr, Arc::as_ptr(&y));\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub unsafe fn from_raw_in(ptr: *const T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs an Arc<T, A> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to Arc<U, A>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The raw pointer must point to a block of memory allocated by alloc

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw_in(x_ptr, System);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x: Arc<[u32], _> = Arc::new_in([1, 2, 3], System);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3], _> = Arc::from_raw_in(x_ptr.cast::<[u32; 3]>(), System);\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.4.0 · source

    pub fn downgrade(this: &Arc<T, A>) -> Weak<T, A>
    where\n A: Clone,

    Creates a new Weak pointer to this allocation.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet weak_five = Arc::downgrade(&five);
    \n
    1.15.0 · source

    pub fn weak_count(this: &Arc<T, A>) -> usize

    Gets the number of Weak pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the weak count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _weak_five = Arc::downgrade(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` or `Weak` between threads.\nassert_eq!(1, Arc::weak_count(&five));
    \n
    1.15.0 · source

    pub fn strong_count(this: &Arc<T, A>) -> usize

    Gets the number of strong (Arc) pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the strong count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _also_five = Arc::clone(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` between threads.\nassert_eq!(2, Arc::strong_count(&five));
    \n
    source

    pub unsafe fn increment_strong_count_in(ptr: *const T, alloc: A)
    where\n A: Clone,

    🔬This is a nightly-only experimental API. (allocator_api)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method,, and ptr must point to a block of memory\nallocated by alloc.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    source

    pub unsafe fn decrement_strong_count_in(ptr: *const T, alloc: A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method, and ptr must point to a block of memory\nallocated by alloc. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count_in(ptr, System);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    1.17.0 · source

    pub fn ptr_eq(this: &Arc<T, A>, other: &Arc<T, A>) -> bool

    Returns true if the two Arcs point to the same allocation in a vein similar to\nptr::eq. This function ignores the metadata of dyn Trait pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet same_five = Arc::clone(&five);\nlet other_five = Arc::new(5);\n\nassert!(Arc::ptr_eq(&five, &same_five));\nassert!(!Arc::ptr_eq(&five, &other_five));
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: CloneToUninit + ?Sized,\n A: Allocator + Clone,

    1.4.0 · source

    pub fn make_mut(this: &mut Arc<T, A>) -> &mut T

    Makes a mutable reference into the given Arc.

    \n

    If there are other Arc pointers to the same allocation, then make_mut will\nclone the inner value to a new allocation to ensure unique ownership. This is also\nreferred to as clone-on-write.

    \n

    However, if there are no other Arc pointers to this allocation, but some Weak\npointers, then the Weak pointers will be dissociated and the inner value will not\nbe cloned.

    \n

    See also get_mut, which will fail rather than cloning the inner value\nor dissociating Weak pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut data = Arc::new(5);\n\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\nlet mut other_data = Arc::clone(&data); // Won't clone inner data\n*Arc::make_mut(&mut data) += 1;         // Clones inner data\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\n*Arc::make_mut(&mut other_data) *= 2;   // Won't clone anything\n\n// Now `data` and `other_data` point to different allocations.\nassert_eq!(*data, 8);\nassert_eq!(*other_data, 12);
    \n

    Weak pointers will be dissociated:

    \n\n
    use std::sync::Arc;\n\nlet mut data = Arc::new(75);\nlet weak = Arc::downgrade(&data);\n\nassert!(75 == *data);\nassert!(75 == *weak.upgrade().unwrap());\n\n*Arc::make_mut(&mut data) += 1;\n\nassert!(76 == *data);\nassert!(weak.upgrade().is_none());
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: Clone,\n A: Allocator,

    1.76.0 · source

    pub fn unwrap_or_clone(this: Arc<T, A>) -> T

    If we have the only reference to T then unwrap it. Otherwise, clone T and return the\nclone.

    \n

    Assuming arc_t is of type Arc<T>, this function is functionally equivalent to\n(*arc_t).clone(), but will avoid cloning the inner value where possible.

    \n
    §Examples
    \n
    let inner = String::from(\"test\");\nlet ptr = inner.as_ptr();\n\nlet arc = Arc::new(inner);\nlet inner = Arc::unwrap_or_clone(arc);\n// The inner value was not cloned\nassert!(ptr::eq(ptr, inner.as_ptr()));\n\nlet arc = Arc::new(inner);\nlet arc2 = arc.clone();\nlet inner = Arc::unwrap_or_clone(arc);\n// Because there were 2 references, we had to clone the inner value.\nassert!(!ptr::eq(ptr, inner.as_ptr()));\n// `arc2` is the last reference, so when we unwrap it we get back\n// the original `String`.\nlet inner = Arc::unwrap_or_clone(arc2);\nassert!(ptr::eq(ptr, inner.as_ptr()));
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    1.4.0 · source

    pub fn get_mut(this: &mut Arc<T, A>) -> Option<&mut T>

    Returns a mutable reference into the given Arc, if there are\nno other Arc or Weak pointers to the same allocation.

    \n

    Returns None otherwise, because it is not safe to\nmutate a shared value.

    \n

    See also make_mut, which will clone\nthe inner value when there are other Arc pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut x = Arc::new(3);\n*Arc::get_mut(&mut x).unwrap() = 4;\nassert_eq!(*x, 4);\n\nlet _y = Arc::clone(&x);\nassert!(Arc::get_mut(&mut x).is_none());
    \n
    source

    pub unsafe fn get_mut_unchecked(this: &mut Arc<T, A>) -> &mut T

    🔬This is a nightly-only experimental API. (get_mut_unchecked)

    Returns a mutable reference into the given Arc,\nwithout any check.

    \n

    See also get_mut, which is safe and does appropriate checks.

    \n
    §Safety
    \n

    If any other Arc or Weak pointers to the same allocation exist, then\nthey must not be dereferenced or have active borrows for the duration\nof the returned borrow, and their inner type must be exactly the same as the\ninner type of this Rc (including lifetimes). This is trivially the case if no\nsuch pointers exist, for example immediately after Arc::new.

    \n
    §Examples
    \n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut x = Arc::new(String::new());\nunsafe {\n    Arc::get_mut_unchecked(&mut x).push_str(\"foo\")\n}\nassert_eq!(*x, \"foo\");
    \n

    Other Arc pointers to the same allocation must be to the same type.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<str> = Arc::from(\"Hello, world!\");\nlet mut y: Arc<[u8]> = x.clone().into();\nunsafe {\n    // this is Undefined Behavior, because x's inner type is str, not [u8]\n    Arc::get_mut_unchecked(&mut y).fill(0xff); // 0xff is invalid in UTF-8\n}\nprintln!(\"{}\", &*x); // Invalid UTF-8 in a str
    \n

    Other Arc pointers to the same allocation must be to the exact same type, including lifetimes.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<&str> = Arc::new(\"Hello, world!\");\n{\n    let s = String::from(\"Oh, no!\");\n    let mut y: Arc<&str> = x.clone().into();\n    unsafe {\n        // this is Undefined Behavior, because x's inner type\n        // is &'long str, not &'short str\n        *Arc::get_mut_unchecked(&mut y) = &s;\n    }\n}\nprintln!(\"{}\", &*x); // Use-after-free
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,

    source

    pub fn new_in(data: T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T> in the provided allocator.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);
    \n
    source

    pub fn new_uninit_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents in the provided allocator.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::new_uninit_in(System);\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::new_zeroed_in(System);\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    source

    pub fn pin_in(data: T, alloc: A) -> Pin<Arc<T, A>>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator. If T does not implement Unpin,\nthen data will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin_in(data: T, alloc: A) -> Result<Pin<Arc<T, A>>, AllocError>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator, return an error if allocation\nfails.

    \n
    source

    pub fn try_new_in(data: T, alloc: A) -> Result<Arc<T, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T, A> in the provided allocator, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::try_new_in(5, System)?;
    \n
    source

    pub fn try_new_uninit_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, in the provided allocator, returning an\nerror if allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::try_new_uninit_in(System)?;\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator, returning an error if allocation\nfails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::try_new_zeroed_in(System)?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    1.4.0 · source

    pub fn try_unwrap(this: Arc<T, A>) -> Result<T, Arc<T, A>>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, an Err is returned with the same Arc that was\npassed in.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    It is strongly recommended to use Arc::into_inner instead if you don’t\nkeep the Arc in the Err case.\nImmediately dropping the Err-value, as the expression\nArc::try_unwrap(this).ok() does, can cause the strong count to\ndrop to zero and the inner value of the Arc to be dropped.\nFor instance, if two threads execute such an expression in parallel,\nthere is a race condition without the possibility of unsafety:\nThe threads could first both check whether they own the last instance\nin Arc::try_unwrap, determine that they both do not, and then both\ndiscard and drop their instance in the call to ok.\nIn this scenario, the value inside the Arc is safely destroyed\nby exactly one of the threads, but neither thread will ever be able\nto use the value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nassert_eq!(Arc::try_unwrap(x), Ok(3));\n\nlet x = Arc::new(4);\nlet _y = Arc::clone(&x);\nassert_eq!(*Arc::try_unwrap(x).unwrap_err(), 4);
    \n
    1.70.0 · source

    pub fn into_inner(this: Arc<T, A>) -> Option<T>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, None is returned and the Arc is dropped.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    If Arc::into_inner is called on every clone of this Arc,\nit is guaranteed that exactly one of the calls returns the inner value.\nThis means in particular that the inner value is not dropped.

    \n

    Arc::try_unwrap is conceptually similar to Arc::into_inner, but it\nis meant for different use-cases. If used as a direct replacement\nfor Arc::into_inner anyway, such as with the expression\nArc::try_unwrap(this).ok(), then it does\nnot give the same guarantee as described in the previous paragraph.\nFor more information, see the examples below and read the documentation\nof Arc::try_unwrap.

    \n
    §Examples
    \n

    Minimal example demonstrating the guarantee that Arc::into_inner gives.

    \n\n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nlet y = Arc::clone(&x);\n\n// Two threads calling `Arc::into_inner` on both clones of an `Arc`:\nlet x_thread = std::thread::spawn(|| Arc::into_inner(x));\nlet y_thread = std::thread::spawn(|| Arc::into_inner(y));\n\nlet x_inner_value = x_thread.join().unwrap();\nlet y_inner_value = y_thread.join().unwrap();\n\n// One of the threads is guaranteed to receive the inner value:\nassert!(matches!(\n    (x_inner_value, y_inner_value),\n    (None, Some(3)) | (Some(3), None)\n));\n// The result could also be `(None, None)` if the threads called\n// `Arc::try_unwrap(x).ok()` and `Arc::try_unwrap(y).ok()` instead.
    \n

    A more practical example demonstrating the need for Arc::into_inner:

    \n\n
    use std::sync::Arc;\n\n// Definition of a simple singly linked list using `Arc`:\n#[derive(Clone)]\nstruct LinkedList<T>(Option<Arc<Node<T>>>);\nstruct Node<T>(T, Option<Arc<Node<T>>>);\n\n// Dropping a long `LinkedList<T>` relying on the destructor of `Arc`\n// can cause a stack overflow. To prevent this, we can provide a\n// manual `Drop` implementation that does the destruction in a loop:\nimpl<T> Drop for LinkedList<T> {\n    fn drop(&mut self) {\n        let mut link = self.0.take();\n        while let Some(arc_node) = link.take() {\n            if let Some(Node(_value, next)) = Arc::into_inner(arc_node) {\n                link = next;\n            }\n        }\n    }\n}\n\n// Implementation of `new` and `push` omitted\nimpl<T> LinkedList<T> {\n    /* ... */\n}\n\n// The following code could have still caused a stack overflow\n// despite the manual `Drop` impl if that `Drop` impl had used\n// `Arc::try_unwrap(arc).ok()` instead of `Arc::into_inner(arc)`.\n\n// Create a long list and clone it\nlet mut x = LinkedList::new();\nlet size = 100000;\nfor i in 0..size {\n    x.push(i); // Adds i to the front of x\n}\nlet y = x.clone();\n\n// Drop the clones in parallel\nlet x_thread = std::thread::spawn(|| drop(x));\nlet y_thread = std::thread::spawn(|| drop(y));\nx_thread.join().unwrap();\ny_thread.join().unwrap();
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    1.64.0 · source§

    impl<T> AsFd for Arc<T>
    where\n T: AsFd + ?Sized,

    This impl allows implementing traits that require AsFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\n\ntrait MyTrait: AsFd {}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_fd(&self) -> BorrowedFd<'_>

    Borrows the file descriptor. Read more
    ","AsFd","massa_pos_worker::DrawCachePtr"],["
    1.63.0 · source§

    impl<T> AsRawFd for Arc<T>
    where\n T: AsRawFd,

    This impl allows implementing traits that require AsRawFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\ntrait MyTrait: AsRawFd {\n}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_raw_fd(&self) -> i32

    Extracts the raw file descriptor. Read more
    ","AsRawFd","massa_pos_worker::DrawCachePtr"],["
    1.5.0 · source§

    impl<T, A> AsRef<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn as_ref(&self) -> &T

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Borrow<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    ","Borrow","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Clone for Arc<T, A>
    where\n A: Allocator + Clone,\n T: ?Sized,

    source§

    fn clone(&self) -> Arc<T, A>

    Makes a clone of the Arc pointer.

    \n

    This creates another pointer to the same allocation, increasing the\nstrong reference count.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet _ = Arc::clone(&five);
    \n
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Debug for Arc<T, A>
    where\n T: Debug + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T> Default for Arc<T>
    where\n T: Default,

    source§

    fn default() -> Arc<T>

    Creates a new Arc<T>, with the Default value for T.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x: Arc<i32> = Default::default();\nassert_eq!(*x, 0);
    \n
    ","Default","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Deref for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    §

    type Target = T

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &T

    Dereferences the value.
    ","Deref","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Arc<T>> for Arc<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Arc<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Arc>","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Display for Arc<T, A>
    where\n T: Display + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Drop for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn drop(&mut self)

    Drops the Arc.

    \n

    This will decrement the strong reference count. If the strong reference\ncount reaches zero then the only other references (if any) are\nWeak, so we drop the inner value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nstruct Foo;\n\nimpl Drop for Foo {\n    fn drop(&mut self) {\n        println!(\"dropped!\");\n    }\n}\n\nlet foo  = Arc::new(Foo);\nlet foo2 = Arc::clone(&foo);\n\ndrop(foo);    // Doesn't print anything\ndrop(foo2);   // Prints \"dropped!\"
    \n
    ","Drop","massa_pos_worker::DrawCachePtr"],["
    1.52.0 · source§

    impl<T> Error for Arc<T>
    where\n T: Error + ?Sized,

    source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    source§

    fn provide<'a>(&'a self, req: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    ","Error","massa_pos_worker::DrawCachePtr"],["
    1.21.0 · source§

    impl<T, A> From<Box<T, A>> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn from(v: Box<T, A>) -> Arc<T, A>

    Move a boxed object to a new, reference-counted allocation.

    \n
    §Example
    \n
    let unique: Box<str> = Box::from(\"eggplant\");\nlet shared: Arc<str> = Arc::from(unique);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_pos_worker::DrawCachePtr"],["
    1.45.0 · source§

    impl<'a, B> From<Cow<'a, B>> for Arc<B>
    where\n B: ToOwned + ?Sized,\n Arc<B>: From<&'a B> + From<<B as ToOwned>::Owned>,

    source§

    fn from(cow: Cow<'a, B>) -> Arc<B>

    Create an atomically reference-counted pointer from\na clone-on-write pointer by copying its content.

    \n
    §Example
    \n
    let cow: Cow<'_, str> = Cow::Borrowed(\"eggplant\");\nlet shared: Arc<str> = Arc::from(cow);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_pos_worker::DrawCachePtr"],["
    1.6.0 · source§

    impl<T> From<T> for Arc<T>

    source§

    fn from(t: T) -> Arc<T>

    Converts a T into an Arc<T>

    \n

    The conversion moves the value into a\nnewly allocated Arc. It is equivalent to\ncalling Arc::new(t).

    \n
    §Example
    \n
    let x = 5;\nlet arc = Arc::new(5);\n\nassert_eq!(Arc::from(x), arc);
    \n
    ","From","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Hash for Arc<T, A>
    where\n T: Hash + ?Sized,\n A: Allocator,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_pos_worker::DrawCachePtr"],["
    §

    impl<Sp> LocalSpawn for Arc<Sp>
    where\n Sp: LocalSpawn + ?Sized,

    §

    fn spawn_local_obj(\n &self,\n future: LocalFutureObj<'static, ()>,\n) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status_local(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","LocalSpawn","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T> Log for Arc<T>
    where\n T: Log + ?Sized,

    source§

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Determines if a log message with the specified metadata would be\nlogged. Read more
    source§

    fn log(&self, record: &Record<'_>)

    Logs the Record. Read more
    source§

    fn flush(&self)

    Flushes any buffered records. Read more
    ","Log","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Ord for Arc<T, A>
    where\n T: Ord + ?Sized,\n A: Allocator,

    source§

    fn cmp(&self, other: &Arc<T, A>) -> Ordering

    Comparison for two Arcs.

    \n

    The two are compared by calling cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Ordering::Less, five.cmp(&Arc::new(6)));
    \n
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> PartialEq for Arc<T, A>
    where\n T: PartialEq + ?Sized,\n A: Allocator,

    source§

    fn eq(&self, other: &Arc<T, A>) -> bool

    Equality for two Arcs.

    \n

    Two Arcs are equal if their inner values are equal, even if they are\nstored in different allocation.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same allocation are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five == Arc::new(5));
    \n
    source§

    fn ne(&self, other: &Arc<T, A>) -> bool

    Inequality for two Arcs.

    \n

    Two Arcs are not equal if their inner values are not equal.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same value are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five != Arc::new(6));
    \n
    ","PartialEq","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> PartialOrd for Arc<T, A>
    where\n T: PartialOrd + ?Sized,\n A: Allocator,

    source§

    fn partial_cmp(&self, other: &Arc<T, A>) -> Option<Ordering>

    Partial comparison for two Arcs.

    \n

    The two are compared by calling partial_cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Some(Ordering::Less), five.partial_cmp(&Arc::new(6)));
    \n
    source§

    fn lt(&self, other: &Arc<T, A>) -> bool

    Less-than comparison for two Arcs.

    \n

    The two are compared by calling < on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five < Arc::new(6));
    \n
    source§

    fn le(&self, other: &Arc<T, A>) -> bool

    ‘Less than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling <= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five <= Arc::new(5));
    \n
    source§

    fn gt(&self, other: &Arc<T, A>) -> bool

    Greater-than comparison for two Arcs.

    \n

    The two are compared by calling > on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five > Arc::new(4));
    \n
    source§

    fn ge(&self, other: &Arc<T, A>) -> bool

    ‘Greater than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling >= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five >= Arc::new(5));
    \n
    ","PartialOrd","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Pointer for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, U> SerializeAs<Arc<T>> for Arc<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Arc<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_pos_worker::DrawCachePtr"],["
    §

    impl<Request, S> Service<Request> for Arc<S>
    where\n S: Service<Request> + ?Sized,

    §

    type Response = <S as Service<Request>>::Response

    Responses given by the service.
    §

    type Error = <S as Service<Request>>::Error

    Errors produced by the service. Read more
    §

    type Future = <S as Service<Request>>::Future

    The future response value.
    §

    fn call(&self, req: Request) -> <Arc<S> as Service<Request>>::Future

    Process the request and return the response asynchronously.\ncall takes &self instead of mut &self because: Read more
    ","Service","massa_pos_worker::DrawCachePtr"],["
    §

    impl<Sp> Spawn for Arc<Sp>
    where\n Sp: Spawn + ?Sized,

    §

    fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","Spawn","massa_pos_worker::DrawCachePtr"],["
    §

    impl<S> Subscriber for Arc<S>
    where\n S: Subscriber + ?Sized,

    §

    fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

    Registers a new callsite with this subscriber, returning whether or not\nthe subscriber is interested in being notified about the callsite. Read more
    §

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Returns true if a span or event with the specified metadata would be\nrecorded. Read more
    §

    fn max_level_hint(&self) -> Option<LevelFilter>

    Returns the highest verbosity level that this Subscriber will\nenable, or None, if the subscriber does not implement level-based\nfiltering or chooses not to implement this method. Read more
    §

    fn new_span(&self, span: &Attributes<'_>) -> Id

    Visit the construction of a new span, returning a new span ID for the\nspan being constructed. Read more
    §

    fn record(&self, span: &Id, values: &Record<'_>)

    Record a set of values on a span. Read more
    §

    fn record_follows_from(&self, span: &Id, follows: &Id)

    Adds an indication that span follows from the span with the id\nfollows. Read more
    §

    fn event_enabled(&self, event: &Event<'_>) -> bool

    Determine if an [Event] should be recorded. Read more
    §

    fn event(&self, event: &Event<'_>)

    Records that an Event has occurred. Read more
    §

    fn enter(&self, span: &Id)

    Records that a span has been entered. Read more
    §

    fn exit(&self, span: &Id)

    Records that a span has been exited. Read more
    §

    fn clone_span(&self, id: &Id) -> Id

    Notifies the subscriber that a span ID has been cloned. Read more
    §

    fn try_close(&self, id: Id) -> bool

    Notifies the subscriber that a span ID has been dropped, and returns\ntrue if there are now 0 IDs that refer to that span. Read more
    §

    fn drop_span(&self, id: Id)

    👎Deprecated since 0.1.2: use Subscriber::try_close instead
    This method is deprecated. Read more
    §

    fn current_span(&self) -> Current

    Returns a type representing this subscriber’s view of the current span. Read more
    §

    unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>

    If self is the same type as the provided TypeId, returns an untyped\n*const pointer to that type. Otherwise, returns None. Read more
    §

    fn on_register_dispatch(&self, subscriber: &Dispatch)

    Invoked when this subscriber becomes a [Dispatch]. Read more
    ","Subscriber","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, U, A> CoerceUnsized<Arc<U, A>> for Arc<T, A>
    where\n T: Unsize<U> + ?Sized,\n A: Allocator,\n U: ?Sized,

    ","CoerceUnsized>","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> DerefPure for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","DerefPure","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T>
    where\n T: Unsize<U> + ?Sized,\n U: ?Sized,

    ","DispatchFromDyn>","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Eq for Arc<T, A>
    where\n T: Eq + ?Sized,\n A: Allocator,

    ","Eq","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Send for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Send,

    ","Send","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Sync for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Sync,

    ","Sync","massa_pos_worker::DrawCachePtr"],["
    1.33.0 · source§

    impl<T, A> Unpin for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","Unpin","massa_pos_worker::DrawCachePtr"],["
    1.9.0 · source§

    impl<T, A> UnwindSafe for Arc<T, A>
    where\n T: RefUnwindSafe + ?Sized,\n A: Allocator + UnwindSafe,

    ","UnwindSafe","massa_pos_worker::DrawCachePtr"]], -"massa_protocol_worker":[["
    source§

    impl<T> Arc<T>
    where\n T: ?Sized,

    1.17.0 · source

    pub unsafe fn from_raw(ptr: *const T) -> Arc<T>

    Constructs an Arc<T> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to\nArc<U>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw(x_ptr);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    use std::sync::Arc;\n\nlet x: Arc<[u32]> = Arc::new([1, 2, 3]);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3]> = Arc::from_raw(x_ptr.cast::<[u32; 3]>());\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.51.0 · source

    pub unsafe fn increment_strong_count(ptr: *const T)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    1.51.0 · source

    pub unsafe fn decrement_strong_count(ptr: *const T)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count(ptr);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T> Arc<T>

    1.0.0 · source

    pub fn new(data: T) -> Arc<T>

    Constructs a new Arc<T>.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);
    \n
    1.60.0 · source

    pub fn new_cyclic<F>(data_fn: F) -> Arc<T>
    where\n F: FnOnce(&Weak<T>) -> T,

    Constructs a new Arc<T> while giving you a Weak<T> to the allocation,\nto allow you to construct a T which holds a weak pointer to itself.

    \n

    Generally, a structure circularly referencing itself, either directly or\nindirectly, should not hold a strong reference to itself to prevent a memory leak.\nUsing this function, you get access to the weak pointer during the\ninitialization of T, before the Arc<T> is created, such that you can\nclone and store it inside the T.

    \n

    new_cyclic first allocates the managed allocation for the Arc<T>,\nthen calls your closure, giving it a Weak<T> to this allocation,\nand only afterwards completes the construction of the Arc<T> by placing\nthe T returned from your closure into the allocation.

    \n

    Since the new Arc<T> is not fully-constructed until Arc<T>::new_cyclic\nreturns, calling upgrade on the weak reference inside your closure will\nfail and result in a None value.

    \n
    §Panics
    \n

    If data_fn panics, the panic is propagated to the caller, and the\ntemporary Weak<T> is dropped normally.

    \n
    §Example
    \n
    use std::sync::{Arc, Weak};\n\nstruct Gadget {\n    me: Weak<Gadget>,\n}\n\nimpl Gadget {\n    /// Construct a reference counted Gadget.\n    fn new() -> Arc<Self> {\n        // `me` is a `Weak<Gadget>` pointing at the new allocation of the\n        // `Arc` we're constructing.\n        Arc::new_cyclic(|me| {\n            // Create the actual struct here.\n            Gadget { me: me.clone() }\n        })\n    }\n\n    /// Return a reference counted pointer to Self.\n    fn me(&self) -> Arc<Self> {\n        self.me.upgrade().unwrap()\n    }\n}
    \n
    source

    pub fn new_uninit() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::new_uninit();\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::new_zeroed();\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    1.33.0 · source

    pub fn pin(data: T) -> Pin<Arc<T>>

    Constructs a new Pin<Arc<T>>. If T does not implement Unpin, then\ndata will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin(data: T) -> Result<Pin<Arc<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T>>, return an error if allocation fails.

    \n
    source

    pub fn try_new(data: T) -> Result<Arc<T>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T>, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\n\nlet five = Arc::try_new(5)?;
    \n
    source

    pub fn try_new_uninit() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, returning an error\nif allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::try_new_uninit()?;\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, returning an error if allocation fails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::try_new_zeroed()?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source

    pub fn allocator(this: &Arc<T, A>) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n

    Note: this is an associated function, which means that you have\nto call it as Arc::allocator(&a) instead of a.allocator(). This\nis so that there is no conflict with a method on the inner type.

    \n
    1.17.0 · source

    pub fn into_raw(this: Arc<T, A>) -> *const T

    Consumes the Arc, returning the wrapped pointer.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub fn into_raw_with_allocator(this: Arc<T, A>) -> (*const T, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Consumes the Arc, returning the wrapped pointer and allocator.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw_in.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet (ptr, alloc) = Arc::into_raw_with_allocator(x);\nassert_eq!(unsafe { &*ptr }, \"hello\");\nlet x = unsafe { Arc::from_raw_in(ptr, alloc) };\nassert_eq!(&*x, \"hello\");
    \n
    1.45.0 · source

    pub fn as_ptr(this: &Arc<T, A>) -> *const T

    Provides a raw pointer to the data.

    \n

    The counts are not affected in any way and the Arc is not consumed. The pointer is valid for\nas long as there are strong counts in the Arc.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet y = Arc::clone(&x);\nlet x_ptr = Arc::as_ptr(&x);\nassert_eq!(x_ptr, Arc::as_ptr(&y));\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub unsafe fn from_raw_in(ptr: *const T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs an Arc<T, A> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to Arc<U, A>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The raw pointer must point to a block of memory allocated by alloc

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw_in(x_ptr, System);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x: Arc<[u32], _> = Arc::new_in([1, 2, 3], System);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3], _> = Arc::from_raw_in(x_ptr.cast::<[u32; 3]>(), System);\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.4.0 · source

    pub fn downgrade(this: &Arc<T, A>) -> Weak<T, A>
    where\n A: Clone,

    Creates a new Weak pointer to this allocation.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet weak_five = Arc::downgrade(&five);
    \n
    1.15.0 · source

    pub fn weak_count(this: &Arc<T, A>) -> usize

    Gets the number of Weak pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the weak count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _weak_five = Arc::downgrade(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` or `Weak` between threads.\nassert_eq!(1, Arc::weak_count(&five));
    \n
    1.15.0 · source

    pub fn strong_count(this: &Arc<T, A>) -> usize

    Gets the number of strong (Arc) pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the strong count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _also_five = Arc::clone(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` between threads.\nassert_eq!(2, Arc::strong_count(&five));
    \n
    source

    pub unsafe fn increment_strong_count_in(ptr: *const T, alloc: A)
    where\n A: Clone,

    🔬This is a nightly-only experimental API. (allocator_api)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method,, and ptr must point to a block of memory\nallocated by alloc.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    source

    pub unsafe fn decrement_strong_count_in(ptr: *const T, alloc: A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method, and ptr must point to a block of memory\nallocated by alloc. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count_in(ptr, System);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    1.17.0 · source

    pub fn ptr_eq(this: &Arc<T, A>, other: &Arc<T, A>) -> bool

    Returns true if the two Arcs point to the same allocation in a vein similar to\nptr::eq. This function ignores the metadata of dyn Trait pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet same_five = Arc::clone(&five);\nlet other_five = Arc::new(5);\n\nassert!(Arc::ptr_eq(&five, &same_five));\nassert!(!Arc::ptr_eq(&five, &other_five));
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: CloneToUninit + ?Sized,\n A: Allocator + Clone,

    1.4.0 · source

    pub fn make_mut(this: &mut Arc<T, A>) -> &mut T

    Makes a mutable reference into the given Arc.

    \n

    If there are other Arc pointers to the same allocation, then make_mut will\nclone the inner value to a new allocation to ensure unique ownership. This is also\nreferred to as clone-on-write.

    \n

    However, if there are no other Arc pointers to this allocation, but some Weak\npointers, then the Weak pointers will be dissociated and the inner value will not\nbe cloned.

    \n

    See also get_mut, which will fail rather than cloning the inner value\nor dissociating Weak pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut data = Arc::new(5);\n\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\nlet mut other_data = Arc::clone(&data); // Won't clone inner data\n*Arc::make_mut(&mut data) += 1;         // Clones inner data\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\n*Arc::make_mut(&mut other_data) *= 2;   // Won't clone anything\n\n// Now `data` and `other_data` point to different allocations.\nassert_eq!(*data, 8);\nassert_eq!(*other_data, 12);
    \n

    Weak pointers will be dissociated:

    \n\n
    use std::sync::Arc;\n\nlet mut data = Arc::new(75);\nlet weak = Arc::downgrade(&data);\n\nassert!(75 == *data);\nassert!(75 == *weak.upgrade().unwrap());\n\n*Arc::make_mut(&mut data) += 1;\n\nassert!(76 == *data);\nassert!(weak.upgrade().is_none());
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: Clone,\n A: Allocator,

    1.76.0 · source

    pub fn unwrap_or_clone(this: Arc<T, A>) -> T

    If we have the only reference to T then unwrap it. Otherwise, clone T and return the\nclone.

    \n

    Assuming arc_t is of type Arc<T>, this function is functionally equivalent to\n(*arc_t).clone(), but will avoid cloning the inner value where possible.

    \n
    §Examples
    \n
    let inner = String::from(\"test\");\nlet ptr = inner.as_ptr();\n\nlet arc = Arc::new(inner);\nlet inner = Arc::unwrap_or_clone(arc);\n// The inner value was not cloned\nassert!(ptr::eq(ptr, inner.as_ptr()));\n\nlet arc = Arc::new(inner);\nlet arc2 = arc.clone();\nlet inner = Arc::unwrap_or_clone(arc);\n// Because there were 2 references, we had to clone the inner value.\nassert!(!ptr::eq(ptr, inner.as_ptr()));\n// `arc2` is the last reference, so when we unwrap it we get back\n// the original `String`.\nlet inner = Arc::unwrap_or_clone(arc2);\nassert!(ptr::eq(ptr, inner.as_ptr()));
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    1.4.0 · source

    pub fn get_mut(this: &mut Arc<T, A>) -> Option<&mut T>

    Returns a mutable reference into the given Arc, if there are\nno other Arc or Weak pointers to the same allocation.

    \n

    Returns None otherwise, because it is not safe to\nmutate a shared value.

    \n

    See also make_mut, which will clone\nthe inner value when there are other Arc pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut x = Arc::new(3);\n*Arc::get_mut(&mut x).unwrap() = 4;\nassert_eq!(*x, 4);\n\nlet _y = Arc::clone(&x);\nassert!(Arc::get_mut(&mut x).is_none());
    \n
    source

    pub unsafe fn get_mut_unchecked(this: &mut Arc<T, A>) -> &mut T

    🔬This is a nightly-only experimental API. (get_mut_unchecked)

    Returns a mutable reference into the given Arc,\nwithout any check.

    \n

    See also get_mut, which is safe and does appropriate checks.

    \n
    §Safety
    \n

    If any other Arc or Weak pointers to the same allocation exist, then\nthey must not be dereferenced or have active borrows for the duration\nof the returned borrow, and their inner type must be exactly the same as the\ninner type of this Rc (including lifetimes). This is trivially the case if no\nsuch pointers exist, for example immediately after Arc::new.

    \n
    §Examples
    \n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut x = Arc::new(String::new());\nunsafe {\n    Arc::get_mut_unchecked(&mut x).push_str(\"foo\")\n}\nassert_eq!(*x, \"foo\");
    \n

    Other Arc pointers to the same allocation must be to the same type.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<str> = Arc::from(\"Hello, world!\");\nlet mut y: Arc<[u8]> = x.clone().into();\nunsafe {\n    // this is Undefined Behavior, because x's inner type is str, not [u8]\n    Arc::get_mut_unchecked(&mut y).fill(0xff); // 0xff is invalid in UTF-8\n}\nprintln!(\"{}\", &*x); // Invalid UTF-8 in a str
    \n

    Other Arc pointers to the same allocation must be to the exact same type, including lifetimes.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<&str> = Arc::new(\"Hello, world!\");\n{\n    let s = String::from(\"Oh, no!\");\n    let mut y: Arc<&str> = x.clone().into();\n    unsafe {\n        // this is Undefined Behavior, because x's inner type\n        // is &'long str, not &'short str\n        *Arc::get_mut_unchecked(&mut y) = &s;\n    }\n}\nprintln!(\"{}\", &*x); // Use-after-free
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,

    source

    pub fn new_in(data: T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T> in the provided allocator.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);
    \n
    source

    pub fn new_uninit_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents in the provided allocator.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::new_uninit_in(System);\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::new_zeroed_in(System);\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    source

    pub fn pin_in(data: T, alloc: A) -> Pin<Arc<T, A>>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator. If T does not implement Unpin,\nthen data will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin_in(data: T, alloc: A) -> Result<Pin<Arc<T, A>>, AllocError>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator, return an error if allocation\nfails.

    \n
    source

    pub fn try_new_in(data: T, alloc: A) -> Result<Arc<T, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T, A> in the provided allocator, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::try_new_in(5, System)?;
    \n
    source

    pub fn try_new_uninit_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, in the provided allocator, returning an\nerror if allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::try_new_uninit_in(System)?;\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator, returning an error if allocation\nfails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::try_new_zeroed_in(System)?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    1.4.0 · source

    pub fn try_unwrap(this: Arc<T, A>) -> Result<T, Arc<T, A>>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, an Err is returned with the same Arc that was\npassed in.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    It is strongly recommended to use Arc::into_inner instead if you don’t\nkeep the Arc in the Err case.\nImmediately dropping the Err-value, as the expression\nArc::try_unwrap(this).ok() does, can cause the strong count to\ndrop to zero and the inner value of the Arc to be dropped.\nFor instance, if two threads execute such an expression in parallel,\nthere is a race condition without the possibility of unsafety:\nThe threads could first both check whether they own the last instance\nin Arc::try_unwrap, determine that they both do not, and then both\ndiscard and drop their instance in the call to ok.\nIn this scenario, the value inside the Arc is safely destroyed\nby exactly one of the threads, but neither thread will ever be able\nto use the value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nassert_eq!(Arc::try_unwrap(x), Ok(3));\n\nlet x = Arc::new(4);\nlet _y = Arc::clone(&x);\nassert_eq!(*Arc::try_unwrap(x).unwrap_err(), 4);
    \n
    1.70.0 · source

    pub fn into_inner(this: Arc<T, A>) -> Option<T>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, None is returned and the Arc is dropped.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    If Arc::into_inner is called on every clone of this Arc,\nit is guaranteed that exactly one of the calls returns the inner value.\nThis means in particular that the inner value is not dropped.

    \n

    Arc::try_unwrap is conceptually similar to Arc::into_inner, but it\nis meant for different use-cases. If used as a direct replacement\nfor Arc::into_inner anyway, such as with the expression\nArc::try_unwrap(this).ok(), then it does\nnot give the same guarantee as described in the previous paragraph.\nFor more information, see the examples below and read the documentation\nof Arc::try_unwrap.

    \n
    §Examples
    \n

    Minimal example demonstrating the guarantee that Arc::into_inner gives.

    \n\n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nlet y = Arc::clone(&x);\n\n// Two threads calling `Arc::into_inner` on both clones of an `Arc`:\nlet x_thread = std::thread::spawn(|| Arc::into_inner(x));\nlet y_thread = std::thread::spawn(|| Arc::into_inner(y));\n\nlet x_inner_value = x_thread.join().unwrap();\nlet y_inner_value = y_thread.join().unwrap();\n\n// One of the threads is guaranteed to receive the inner value:\nassert!(matches!(\n    (x_inner_value, y_inner_value),\n    (None, Some(3)) | (Some(3), None)\n));\n// The result could also be `(None, None)` if the threads called\n// `Arc::try_unwrap(x).ok()` and `Arc::try_unwrap(y).ok()` instead.
    \n

    A more practical example demonstrating the need for Arc::into_inner:

    \n\n
    use std::sync::Arc;\n\n// Definition of a simple singly linked list using `Arc`:\n#[derive(Clone)]\nstruct LinkedList<T>(Option<Arc<Node<T>>>);\nstruct Node<T>(T, Option<Arc<Node<T>>>);\n\n// Dropping a long `LinkedList<T>` relying on the destructor of `Arc`\n// can cause a stack overflow. To prevent this, we can provide a\n// manual `Drop` implementation that does the destruction in a loop:\nimpl<T> Drop for LinkedList<T> {\n    fn drop(&mut self) {\n        let mut link = self.0.take();\n        while let Some(arc_node) = link.take() {\n            if let Some(Node(_value, next)) = Arc::into_inner(arc_node) {\n                link = next;\n            }\n        }\n    }\n}\n\n// Implementation of `new` and `push` omitted\nimpl<T> LinkedList<T> {\n    /* ... */\n}\n\n// The following code could have still caused a stack overflow\n// despite the manual `Drop` impl if that `Drop` impl had used\n// `Arc::try_unwrap(arc).ok()` instead of `Arc::into_inner(arc)`.\n\n// Create a long list and clone it\nlet mut x = LinkedList::new();\nlet size = 100000;\nfor i in 0..size {\n    x.push(i); // Adds i to the front of x\n}\nlet y = x.clone();\n\n// Drop the clones in parallel\nlet x_thread = std::thread::spawn(|| drop(x));\nlet y_thread = std::thread::spawn(|| drop(y));\nx_thread.join().unwrap();\ny_thread.join().unwrap();
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> Archive for Arc<T>
    where\n T: ArchiveUnsized + ?Sized,

    §

    type Archived = ArchivedRc<<T as ArchiveUnsized>::Archived, ArcFlavor>

    The archived representation of this type. Read more
    §

    type Resolver = RcResolver<<T as ArchiveUnsized>::MetadataResolver>

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Arc<T> as Archive>::Resolver,\n out: *mut <Arc<T> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.64.0 · source§

    impl<T> AsFd for Arc<T>
    where\n T: AsFd + ?Sized,

    This impl allows implementing traits that require AsFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\n\ntrait MyTrait: AsFd {}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_fd(&self) -> BorrowedFd<'_>

    Borrows the file descriptor. Read more
    ","AsFd","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.63.0 · source§

    impl<T> AsRawFd for Arc<T>
    where\n T: AsRawFd,

    This impl allows implementing traits that require AsRawFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\ntrait MyTrait: AsRawFd {\n}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_raw_fd(&self) -> i32

    Extracts the raw file descriptor. Read more
    ","AsRawFd","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.5.0 · source§

    impl<T, A> AsRef<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn as_ref(&self) -> &T

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Borrow<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    ","Borrow","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Clone for Arc<T, A>
    where\n A: Allocator + Clone,\n T: ?Sized,

    source§

    fn clone(&self) -> Arc<T, A>

    Makes a clone of the Arc pointer.

    \n

    This creates another pointer to the same allocation, increasing the\nstrong reference count.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet _ = Arc::clone(&five);
    \n
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Debug for Arc<T, A>
    where\n T: Debug + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T> Default for Arc<T>
    where\n T: Default,

    source§

    fn default() -> Arc<T>

    Creates a new Arc<T>, with the Default value for T.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x: Arc<i32> = Default::default();\nassert_eq!(*x, 0);
    \n
    ","Default","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Deref for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    §

    type Target = T

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &T

    Dereferences the value.
    ","Deref","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Arc<T>> for Arc<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Arc<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Arc>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Display for Arc<T, A>
    where\n T: Display + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Drop for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn drop(&mut self)

    Drops the Arc.

    \n

    This will decrement the strong reference count. If the strong reference\ncount reaches zero then the only other references (if any) are\nWeak, so we drop the inner value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nstruct Foo;\n\nimpl Drop for Foo {\n    fn drop(&mut self) {\n        println!(\"dropped!\");\n    }\n}\n\nlet foo  = Arc::new(Foo);\nlet foo2 = Arc::clone(&foo);\n\ndrop(foo);    // Doesn't print anything\ndrop(foo2);   // Prints \"dropped!\"
    \n
    ","Drop","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.52.0 · source§

    impl<T> Error for Arc<T>
    where\n T: Error + ?Sized,

    source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    source§

    fn provide<'a>(&'a self, req: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    ","Error","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.21.0 · source§

    impl<T, A> From<Box<T, A>> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn from(v: Box<T, A>) -> Arc<T, A>

    Move a boxed object to a new, reference-counted allocation.

    \n
    §Example
    \n
    let unique: Box<str> = Box::from(\"eggplant\");\nlet shared: Arc<str> = Arc::from(unique);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.45.0 · source§

    impl<'a, B> From<Cow<'a, B>> for Arc<B>
    where\n B: ToOwned + ?Sized,\n Arc<B>: From<&'a B> + From<<B as ToOwned>::Owned>,

    source§

    fn from(cow: Cow<'a, B>) -> Arc<B>

    Create an atomically reference-counted pointer from\na clone-on-write pointer by copying its content.

    \n
    §Example
    \n
    let cow: Cow<'_, str> = Cow::Borrowed(\"eggplant\");\nlet shared: Arc<str> = Arc::from(cow);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.6.0 · source§

    impl<T> From<T> for Arc<T>

    source§

    fn from(t: T) -> Arc<T>

    Converts a T into an Arc<T>

    \n

    The conversion moves the value into a\nnewly allocated Arc. It is equivalent to\ncalling Arc::new(t).

    \n
    §Example
    \n
    let x = 5;\nlet arc = Arc::new(5);\n\nassert_eq!(Arc::from(x), arc);
    \n
    ","From","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Hash for Arc<T, A>
    where\n T: Hash + ?Sized,\n A: Allocator,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> JsonSchema for Arc<T>
    where\n T: JsonSchema + ?Sized,

    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    ","JsonSchema","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<Sp> LocalSpawn for Arc<Sp>
    where\n Sp: LocalSpawn + ?Sized,

    §

    fn spawn_local_obj(\n &self,\n future: LocalFutureObj<'static, ()>,\n) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status_local(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","LocalSpawn","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T> Log for Arc<T>
    where\n T: Log + ?Sized,

    source§

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Determines if a log message with the specified metadata would be\nlogged. Read more
    source§

    fn log(&self, record: &Record<'_>)

    Logs the Record. Read more
    source§

    fn flush(&self)

    Flushes any buffered records. Read more
    ","Log","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Ord for Arc<T, A>
    where\n T: Ord + ?Sized,\n A: Allocator,

    source§

    fn cmp(&self, other: &Arc<T, A>) -> Ordering

    Comparison for two Arcs.

    \n

    The two are compared by calling cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Ordering::Less, five.cmp(&Arc::new(6)));
    \n
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> PartialEq for Arc<T, A>
    where\n T: PartialEq + ?Sized,\n A: Allocator,

    source§

    fn eq(&self, other: &Arc<T, A>) -> bool

    Equality for two Arcs.

    \n

    Two Arcs are equal if their inner values are equal, even if they are\nstored in different allocation.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same allocation are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five == Arc::new(5));
    \n
    source§

    fn ne(&self, other: &Arc<T, A>) -> bool

    Inequality for two Arcs.

    \n

    Two Arcs are not equal if their inner values are not equal.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same value are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five != Arc::new(6));
    \n
    ","PartialEq","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> PartialOrd for Arc<T, A>
    where\n T: PartialOrd + ?Sized,\n A: Allocator,

    source§

    fn partial_cmp(&self, other: &Arc<T, A>) -> Option<Ordering>

    Partial comparison for two Arcs.

    \n

    The two are compared by calling partial_cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Some(Ordering::Less), five.partial_cmp(&Arc::new(6)));
    \n
    source§

    fn lt(&self, other: &Arc<T, A>) -> bool

    Less-than comparison for two Arcs.

    \n

    The two are compared by calling < on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five < Arc::new(6));
    \n
    source§

    fn le(&self, other: &Arc<T, A>) -> bool

    ‘Less than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling <= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five <= Arc::new(5));
    \n
    source§

    fn gt(&self, other: &Arc<T, A>) -> bool

    Greater-than comparison for two Arcs.

    \n

    The two are compared by calling > on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five > Arc::new(4));
    \n
    source§

    fn ge(&self, other: &Arc<T, A>) -> bool

    ‘Greater than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling >= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five >= Arc::new(5));
    \n
    ","PartialOrd","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Pointer for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T, S> Serialize<S> for Arc<T>
    where\n T: SerializeUnsized<S> + 'static + ?Sized,\n S: Serializer + SharedSerializeRegistry + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<Arc<T> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, U> SerializeAs<Arc<T>> for Arc<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Arc<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<Request, S> Service<Request> for Arc<S>
    where\n S: Service<Request> + ?Sized,

    §

    type Response = <S as Service<Request>>::Response

    Responses given by the service.
    §

    type Error = <S as Service<Request>>::Error

    Errors produced by the service. Read more
    §

    type Future = <S as Service<Request>>::Future

    The future response value.
    §

    fn call(&self, req: Request) -> <Arc<S> as Service<Request>>::Future

    Process the request and return the response asynchronously.\ncall takes &self instead of mut &self because: Read more
    ","Service","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> SharedPointer for Arc<T>
    where\n T: ?Sized,

    §

    fn data_address(&self) -> *const ()

    Returns the data address for this shared pointer.
    ","SharedPointer","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<Sp> Spawn for Arc<Sp>
    where\n Sp: Spawn + ?Sized,

    §

    fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","Spawn","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<S> Subscriber for Arc<S>
    where\n S: Subscriber + ?Sized,

    §

    fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

    Registers a new callsite with this subscriber, returning whether or not\nthe subscriber is interested in being notified about the callsite. Read more
    §

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Returns true if a span or event with the specified metadata would be\nrecorded. Read more
    §

    fn max_level_hint(&self) -> Option<LevelFilter>

    Returns the highest verbosity level that this Subscriber will\nenable, or None, if the subscriber does not implement level-based\nfiltering or chooses not to implement this method. Read more
    §

    fn new_span(&self, span: &Attributes<'_>) -> Id

    Visit the construction of a new span, returning a new span ID for the\nspan being constructed. Read more
    §

    fn record(&self, span: &Id, values: &Record<'_>)

    Record a set of values on a span. Read more
    §

    fn record_follows_from(&self, span: &Id, follows: &Id)

    Adds an indication that span follows from the span with the id\nfollows. Read more
    §

    fn event_enabled(&self, event: &Event<'_>) -> bool

    Determine if an [Event] should be recorded. Read more
    §

    fn event(&self, event: &Event<'_>)

    Records that an Event has occurred. Read more
    §

    fn enter(&self, span: &Id)

    Records that a span has been entered. Read more
    §

    fn exit(&self, span: &Id)

    Records that a span has been exited. Read more
    §

    fn clone_span(&self, id: &Id) -> Id

    Notifies the subscriber that a span ID has been cloned. Read more
    §

    fn try_close(&self, id: Id) -> bool

    Notifies the subscriber that a span ID has been dropped, and returns\ntrue if there are now 0 IDs that refer to that span. Read more
    §

    fn drop_span(&self, id: Id)

    👎Deprecated since 0.1.2: use Subscriber::try_close instead
    This method is deprecated. Read more
    §

    fn current_span(&self) -> Current

    Returns a type representing this subscriber’s view of the current span. Read more
    §

    unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>

    If self is the same type as the provided TypeId, returns an untyped\n*const pointer to that type. Otherwise, returns None. Read more
    §

    fn on_register_dispatch(&self, subscriber: &Dispatch)

    Invoked when this subscriber becomes a [Dispatch]. Read more
    ","Subscriber","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> ToPathSegments for Arc<T>
    where\n T: ToPathSegments + ?Sized,

    §

    fn to_path_segments(&self) -> Result<PathSegments, PathSegmentError>

    Convert to [PathSegments].
    ","ToPathSegments","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> WasmModuleResources for Arc<T>
    where\n T: WasmModuleResources,

    §

    fn table_at(&self, at: u32) -> Option<TableType>

    Returns the table at given index if any. Read more
    §

    fn memory_at(&self, at: u32) -> Option<MemoryType>

    Returns the linear memory at given index.
    §

    fn tag_at(&self, at: u32) -> Option<&FuncType>

    Returns the tag at given index. Read more
    §

    fn global_at(&self, at: u32) -> Option<GlobalType>

    Returns the global variable at given index. Read more
    §

    fn sub_type_at(&self, type_idx: u32) -> Option<&SubType>

    Returns the SubType associated with the given type index. Read more
    §

    fn type_id_of_function(&self, func_idx: u32) -> Option<CoreTypeId>

    Returns the type id associated with the given function\nindex.
    §

    fn type_of_function(&self, func_idx: u32) -> Option<&FuncType>

    Returns the FuncType associated with the given function index. Read more
    §

    fn check_heap_type(\n &self,\n t: &mut HeapType,\n offset: usize,\n) -> Result<(), BinaryReaderError>

    Checks that a HeapType is valid and then additionally place it in its\ncanonical form. Read more
    §

    fn top_type(&self, heap_type: &HeapType) -> HeapType

    Get the top type for the given heap type.
    §

    fn element_type_at(&self, at: u32) -> Option<RefType>

    Returns the element type at the given index. Read more
    §

    fn is_subtype(&self, a: ValType, b: ValType) -> bool

    Is a a subtype of b?
    §

    fn element_count(&self) -> u32

    Returns the number of elements.
    §

    fn data_count(&self) -> Option<u32>

    Returns the number of bytes in the Wasm data section.
    §

    fn is_function_referenced(&self, idx: u32) -> bool

    Returns whether the function index is referenced in the module anywhere\noutside of the start/function sections.
    §

    fn check_value_type(\n &self,\n t: &mut ValType,\n features: &WasmFeatures,\n offset: usize,\n) -> Result<(), BinaryReaderError>

    Check and canonicalize a value type. Read more
    §

    fn check_ref_type(\n &self,\n ref_type: &mut RefType,\n offset: usize,\n) -> Result<(), BinaryReaderError>

    Check and canonicalize a reference type.
    ","WasmModuleResources","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> CloneStableDeref for Arc<T>
    where\n T: ?Sized,

    ","CloneStableDeref","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, U, A> CoerceUnsized<Arc<U, A>> for Arc<T, A>
    where\n T: Unsize<U> + ?Sized,\n A: Allocator,\n U: ?Sized,

    ","CoerceUnsized>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> DerefPure for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","DerefPure","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T>
    where\n T: Unsize<U> + ?Sized,\n U: ?Sized,

    ","DispatchFromDyn>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Eq for Arc<T, A>
    where\n T: Eq + ?Sized,\n A: Allocator,

    ","Eq","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Send for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Send,

    ","Send","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> StableDeref for Arc<T>
    where\n T: ?Sized,

    ","StableDeref","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Sync for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Sync,

    ","Sync","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.33.0 · source§

    impl<T, A> Unpin for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","Unpin","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.9.0 · source§

    impl<T, A> UnwindSafe for Arc<T, A>
    where\n T: RefUnwindSafe + ?Sized,\n A: Allocator + UnwindSafe,

    ","UnwindSafe","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"]] +"massa_db_exports":[["
    source§

    impl<T> Arc<T>
    where\n T: ?Sized,

    1.17.0 · source

    pub unsafe fn from_raw(ptr: *const T) -> Arc<T>

    Constructs an Arc<T> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to\nArc<U>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw(x_ptr);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    use std::sync::Arc;\n\nlet x: Arc<[u32]> = Arc::new([1, 2, 3]);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3]> = Arc::from_raw(x_ptr.cast::<[u32; 3]>());\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.51.0 · source

    pub unsafe fn increment_strong_count(ptr: *const T)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    1.51.0 · source

    pub unsafe fn decrement_strong_count(ptr: *const T)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count(ptr);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T> Arc<T>

    1.0.0 · source

    pub fn new(data: T) -> Arc<T>

    Constructs a new Arc<T>.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);
    \n
    1.60.0 · source

    pub fn new_cyclic<F>(data_fn: F) -> Arc<T>
    where\n F: FnOnce(&Weak<T>) -> T,

    Constructs a new Arc<T> while giving you a Weak<T> to the allocation,\nto allow you to construct a T which holds a weak pointer to itself.

    \n

    Generally, a structure circularly referencing itself, either directly or\nindirectly, should not hold a strong reference to itself to prevent a memory leak.\nUsing this function, you get access to the weak pointer during the\ninitialization of T, before the Arc<T> is created, such that you can\nclone and store it inside the T.

    \n

    new_cyclic first allocates the managed allocation for the Arc<T>,\nthen calls your closure, giving it a Weak<T> to this allocation,\nand only afterwards completes the construction of the Arc<T> by placing\nthe T returned from your closure into the allocation.

    \n

    Since the new Arc<T> is not fully-constructed until Arc<T>::new_cyclic\nreturns, calling upgrade on the weak reference inside your closure will\nfail and result in a None value.

    \n
    §Panics
    \n

    If data_fn panics, the panic is propagated to the caller, and the\ntemporary Weak<T> is dropped normally.

    \n
    §Example
    \n
    use std::sync::{Arc, Weak};\n\nstruct Gadget {\n    me: Weak<Gadget>,\n}\n\nimpl Gadget {\n    /// Construct a reference counted Gadget.\n    fn new() -> Arc<Self> {\n        // `me` is a `Weak<Gadget>` pointing at the new allocation of the\n        // `Arc` we're constructing.\n        Arc::new_cyclic(|me| {\n            // Create the actual struct here.\n            Gadget { me: me.clone() }\n        })\n    }\n\n    /// Return a reference counted pointer to Self.\n    fn me(&self) -> Arc<Self> {\n        self.me.upgrade().unwrap()\n    }\n}
    \n
    source

    pub fn new_uninit() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::new_uninit();\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::new_zeroed();\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    1.33.0 · source

    pub fn pin(data: T) -> Pin<Arc<T>>

    Constructs a new Pin<Arc<T>>. If T does not implement Unpin, then\ndata will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin(data: T) -> Result<Pin<Arc<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T>>, return an error if allocation fails.

    \n
    source

    pub fn try_new(data: T) -> Result<Arc<T>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T>, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\n\nlet five = Arc::try_new(5)?;
    \n
    source

    pub fn try_new_uninit() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, returning an error\nif allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::try_new_uninit()?;\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, returning an error if allocation fails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::try_new_zeroed()?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source

    pub fn allocator(this: &Arc<T, A>) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n

    Note: this is an associated function, which means that you have\nto call it as Arc::allocator(&a) instead of a.allocator(). This\nis so that there is no conflict with a method on the inner type.

    \n
    1.17.0 · source

    pub fn into_raw(this: Arc<T, A>) -> *const T

    Consumes the Arc, returning the wrapped pointer.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub fn into_raw_with_allocator(this: Arc<T, A>) -> (*const T, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Consumes the Arc, returning the wrapped pointer and allocator.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw_in.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet (ptr, alloc) = Arc::into_raw_with_allocator(x);\nassert_eq!(unsafe { &*ptr }, \"hello\");\nlet x = unsafe { Arc::from_raw_in(ptr, alloc) };\nassert_eq!(&*x, \"hello\");
    \n
    1.45.0 · source

    pub fn as_ptr(this: &Arc<T, A>) -> *const T

    Provides a raw pointer to the data.

    \n

    The counts are not affected in any way and the Arc is not consumed. The pointer is valid for\nas long as there are strong counts in the Arc.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet y = Arc::clone(&x);\nlet x_ptr = Arc::as_ptr(&x);\nassert_eq!(x_ptr, Arc::as_ptr(&y));\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub unsafe fn from_raw_in(ptr: *const T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs an Arc<T, A> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to Arc<U, A>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The raw pointer must point to a block of memory allocated by alloc

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw_in(x_ptr, System);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x: Arc<[u32], _> = Arc::new_in([1, 2, 3], System);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3], _> = Arc::from_raw_in(x_ptr.cast::<[u32; 3]>(), System);\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.4.0 · source

    pub fn downgrade(this: &Arc<T, A>) -> Weak<T, A>
    where\n A: Clone,

    Creates a new Weak pointer to this allocation.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet weak_five = Arc::downgrade(&five);
    \n
    1.15.0 · source

    pub fn weak_count(this: &Arc<T, A>) -> usize

    Gets the number of Weak pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the weak count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _weak_five = Arc::downgrade(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` or `Weak` between threads.\nassert_eq!(1, Arc::weak_count(&five));
    \n
    1.15.0 · source

    pub fn strong_count(this: &Arc<T, A>) -> usize

    Gets the number of strong (Arc) pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the strong count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _also_five = Arc::clone(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` between threads.\nassert_eq!(2, Arc::strong_count(&five));
    \n
    source

    pub unsafe fn increment_strong_count_in(ptr: *const T, alloc: A)
    where\n A: Clone,

    🔬This is a nightly-only experimental API. (allocator_api)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method,, and ptr must point to a block of memory\nallocated by alloc.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    source

    pub unsafe fn decrement_strong_count_in(ptr: *const T, alloc: A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method, and ptr must point to a block of memory\nallocated by alloc. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count_in(ptr, System);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    1.17.0 · source

    pub fn ptr_eq(this: &Arc<T, A>, other: &Arc<T, A>) -> bool

    Returns true if the two Arcs point to the same allocation in a vein similar to\nptr::eq. This function ignores the metadata of dyn Trait pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet same_five = Arc::clone(&five);\nlet other_five = Arc::new(5);\n\nassert!(Arc::ptr_eq(&five, &same_five));\nassert!(!Arc::ptr_eq(&five, &other_five));
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: CloneToUninit + ?Sized,\n A: Allocator + Clone,

    1.4.0 · source

    pub fn make_mut(this: &mut Arc<T, A>) -> &mut T

    Makes a mutable reference into the given Arc.

    \n

    If there are other Arc pointers to the same allocation, then make_mut will\nclone the inner value to a new allocation to ensure unique ownership. This is also\nreferred to as clone-on-write.

    \n

    However, if there are no other Arc pointers to this allocation, but some Weak\npointers, then the Weak pointers will be dissociated and the inner value will not\nbe cloned.

    \n

    See also get_mut, which will fail rather than cloning the inner value\nor dissociating Weak pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut data = Arc::new(5);\n\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\nlet mut other_data = Arc::clone(&data); // Won't clone inner data\n*Arc::make_mut(&mut data) += 1;         // Clones inner data\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\n*Arc::make_mut(&mut other_data) *= 2;   // Won't clone anything\n\n// Now `data` and `other_data` point to different allocations.\nassert_eq!(*data, 8);\nassert_eq!(*other_data, 12);
    \n

    Weak pointers will be dissociated:

    \n\n
    use std::sync::Arc;\n\nlet mut data = Arc::new(75);\nlet weak = Arc::downgrade(&data);\n\nassert!(75 == *data);\nassert!(75 == *weak.upgrade().unwrap());\n\n*Arc::make_mut(&mut data) += 1;\n\nassert!(76 == *data);\nassert!(weak.upgrade().is_none());
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: Clone,\n A: Allocator,

    1.76.0 · source

    pub fn unwrap_or_clone(this: Arc<T, A>) -> T

    If we have the only reference to T then unwrap it. Otherwise, clone T and return the\nclone.

    \n

    Assuming arc_t is of type Arc<T>, this function is functionally equivalent to\n(*arc_t).clone(), but will avoid cloning the inner value where possible.

    \n
    §Examples
    \n
    let inner = String::from(\"test\");\nlet ptr = inner.as_ptr();\n\nlet arc = Arc::new(inner);\nlet inner = Arc::unwrap_or_clone(arc);\n// The inner value was not cloned\nassert!(ptr::eq(ptr, inner.as_ptr()));\n\nlet arc = Arc::new(inner);\nlet arc2 = arc.clone();\nlet inner = Arc::unwrap_or_clone(arc);\n// Because there were 2 references, we had to clone the inner value.\nassert!(!ptr::eq(ptr, inner.as_ptr()));\n// `arc2` is the last reference, so when we unwrap it we get back\n// the original `String`.\nlet inner = Arc::unwrap_or_clone(arc2);\nassert!(ptr::eq(ptr, inner.as_ptr()));
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    1.4.0 · source

    pub fn get_mut(this: &mut Arc<T, A>) -> Option<&mut T>

    Returns a mutable reference into the given Arc, if there are\nno other Arc or Weak pointers to the same allocation.

    \n

    Returns None otherwise, because it is not safe to\nmutate a shared value.

    \n

    See also make_mut, which will clone\nthe inner value when there are other Arc pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut x = Arc::new(3);\n*Arc::get_mut(&mut x).unwrap() = 4;\nassert_eq!(*x, 4);\n\nlet _y = Arc::clone(&x);\nassert!(Arc::get_mut(&mut x).is_none());
    \n
    source

    pub unsafe fn get_mut_unchecked(this: &mut Arc<T, A>) -> &mut T

    🔬This is a nightly-only experimental API. (get_mut_unchecked)

    Returns a mutable reference into the given Arc,\nwithout any check.

    \n

    See also get_mut, which is safe and does appropriate checks.

    \n
    §Safety
    \n

    If any other Arc or Weak pointers to the same allocation exist, then\nthey must not be dereferenced or have active borrows for the duration\nof the returned borrow, and their inner type must be exactly the same as the\ninner type of this Rc (including lifetimes). This is trivially the case if no\nsuch pointers exist, for example immediately after Arc::new.

    \n
    §Examples
    \n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut x = Arc::new(String::new());\nunsafe {\n    Arc::get_mut_unchecked(&mut x).push_str(\"foo\")\n}\nassert_eq!(*x, \"foo\");
    \n

    Other Arc pointers to the same allocation must be to the same type.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<str> = Arc::from(\"Hello, world!\");\nlet mut y: Arc<[u8]> = x.clone().into();\nunsafe {\n    // this is Undefined Behavior, because x's inner type is str, not [u8]\n    Arc::get_mut_unchecked(&mut y).fill(0xff); // 0xff is invalid in UTF-8\n}\nprintln!(\"{}\", &*x); // Invalid UTF-8 in a str
    \n

    Other Arc pointers to the same allocation must be to the exact same type, including lifetimes.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<&str> = Arc::new(\"Hello, world!\");\n{\n    let s = String::from(\"Oh, no!\");\n    let mut y: Arc<&str> = x.clone().into();\n    unsafe {\n        // this is Undefined Behavior, because x's inner type\n        // is &'long str, not &'short str\n        *Arc::get_mut_unchecked(&mut y) = &s;\n    }\n}\nprintln!(\"{}\", &*x); // Use-after-free
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,

    source

    pub fn new_in(data: T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T> in the provided allocator.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);
    \n
    source

    pub fn new_uninit_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents in the provided allocator.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::new_uninit_in(System);\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::new_zeroed_in(System);\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    source

    pub fn pin_in(data: T, alloc: A) -> Pin<Arc<T, A>>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator. If T does not implement Unpin,\nthen data will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin_in(data: T, alloc: A) -> Result<Pin<Arc<T, A>>, AllocError>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator, return an error if allocation\nfails.

    \n
    source

    pub fn try_new_in(data: T, alloc: A) -> Result<Arc<T, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T, A> in the provided allocator, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::try_new_in(5, System)?;
    \n
    source

    pub fn try_new_uninit_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, in the provided allocator, returning an\nerror if allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::try_new_uninit_in(System)?;\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator, returning an error if allocation\nfails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::try_new_zeroed_in(System)?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    1.4.0 · source

    pub fn try_unwrap(this: Arc<T, A>) -> Result<T, Arc<T, A>>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, an Err is returned with the same Arc that was\npassed in.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    It is strongly recommended to use Arc::into_inner instead if you don’t\nkeep the Arc in the Err case.\nImmediately dropping the Err-value, as the expression\nArc::try_unwrap(this).ok() does, can cause the strong count to\ndrop to zero and the inner value of the Arc to be dropped.\nFor instance, if two threads execute such an expression in parallel,\nthere is a race condition without the possibility of unsafety:\nThe threads could first both check whether they own the last instance\nin Arc::try_unwrap, determine that they both do not, and then both\ndiscard and drop their instance in the call to ok.\nIn this scenario, the value inside the Arc is safely destroyed\nby exactly one of the threads, but neither thread will ever be able\nto use the value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nassert_eq!(Arc::try_unwrap(x), Ok(3));\n\nlet x = Arc::new(4);\nlet _y = Arc::clone(&x);\nassert_eq!(*Arc::try_unwrap(x).unwrap_err(), 4);
    \n
    1.70.0 · source

    pub fn into_inner(this: Arc<T, A>) -> Option<T>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, None is returned and the Arc is dropped.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    If Arc::into_inner is called on every clone of this Arc,\nit is guaranteed that exactly one of the calls returns the inner value.\nThis means in particular that the inner value is not dropped.

    \n

    Arc::try_unwrap is conceptually similar to Arc::into_inner, but it\nis meant for different use-cases. If used as a direct replacement\nfor Arc::into_inner anyway, such as with the expression\nArc::try_unwrap(this).ok(), then it does\nnot give the same guarantee as described in the previous paragraph.\nFor more information, see the examples below and read the documentation\nof Arc::try_unwrap.

    \n
    §Examples
    \n

    Minimal example demonstrating the guarantee that Arc::into_inner gives.

    \n\n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nlet y = Arc::clone(&x);\n\n// Two threads calling `Arc::into_inner` on both clones of an `Arc`:\nlet x_thread = std::thread::spawn(|| Arc::into_inner(x));\nlet y_thread = std::thread::spawn(|| Arc::into_inner(y));\n\nlet x_inner_value = x_thread.join().unwrap();\nlet y_inner_value = y_thread.join().unwrap();\n\n// One of the threads is guaranteed to receive the inner value:\nassert!(matches!(\n    (x_inner_value, y_inner_value),\n    (None, Some(3)) | (Some(3), None)\n));\n// The result could also be `(None, None)` if the threads called\n// `Arc::try_unwrap(x).ok()` and `Arc::try_unwrap(y).ok()` instead.
    \n

    A more practical example demonstrating the need for Arc::into_inner:

    \n\n
    use std::sync::Arc;\n\n// Definition of a simple singly linked list using `Arc`:\n#[derive(Clone)]\nstruct LinkedList<T>(Option<Arc<Node<T>>>);\nstruct Node<T>(T, Option<Arc<Node<T>>>);\n\n// Dropping a long `LinkedList<T>` relying on the destructor of `Arc`\n// can cause a stack overflow. To prevent this, we can provide a\n// manual `Drop` implementation that does the destruction in a loop:\nimpl<T> Drop for LinkedList<T> {\n    fn drop(&mut self) {\n        let mut link = self.0.take();\n        while let Some(arc_node) = link.take() {\n            if let Some(Node(_value, next)) = Arc::into_inner(arc_node) {\n                link = next;\n            }\n        }\n    }\n}\n\n// Implementation of `new` and `push` omitted\nimpl<T> LinkedList<T> {\n    /* ... */\n}\n\n// The following code could have still caused a stack overflow\n// despite the manual `Drop` impl if that `Drop` impl had used\n// `Arc::try_unwrap(arc).ok()` instead of `Arc::into_inner(arc)`.\n\n// Create a long list and clone it\nlet mut x = LinkedList::new();\nlet size = 100000;\nfor i in 0..size {\n    x.push(i); // Adds i to the front of x\n}\nlet y = x.clone();\n\n// Drop the clones in parallel\nlet x_thread = std::thread::spawn(|| drop(x));\nlet y_thread = std::thread::spawn(|| drop(y));\nx_thread.join().unwrap();\ny_thread.join().unwrap();
    \n
    ",0,"massa_db_exports::controller::ShareableMassaDBController"],["
    1.64.0 · source§

    impl<T> AsFd for Arc<T>
    where\n T: AsFd + ?Sized,

    This impl allows implementing traits that require AsFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\n\ntrait MyTrait: AsFd {}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_fd(&self) -> BorrowedFd<'_>

    Borrows the file descriptor. Read more
    ","AsFd","massa_db_exports::controller::ShareableMassaDBController"],["
    1.63.0 · source§

    impl<T> AsRawFd for Arc<T>
    where\n T: AsRawFd,

    This impl allows implementing traits that require AsRawFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\ntrait MyTrait: AsRawFd {\n}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_raw_fd(&self) -> i32

    Extracts the raw file descriptor. Read more
    ","AsRawFd","massa_db_exports::controller::ShareableMassaDBController"],["
    1.5.0 · source§

    impl<T, A> AsRef<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn as_ref(&self) -> &T

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Borrow<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    ","Borrow","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Clone for Arc<T, A>
    where\n A: Allocator + Clone,\n T: ?Sized,

    source§

    fn clone(&self) -> Arc<T, A>

    Makes a clone of the Arc pointer.

    \n

    This creates another pointer to the same allocation, increasing the\nstrong reference count.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet _ = Arc::clone(&five);
    \n
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Debug for Arc<T, A>
    where\n T: Debug + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T> Default for Arc<T>
    where\n T: Default,

    source§

    fn default() -> Arc<T>

    Creates a new Arc<T>, with the Default value for T.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x: Arc<i32> = Default::default();\nassert_eq!(*x, 0);
    \n
    ","Default","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Deref for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    §

    type Target = T

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &T

    Dereferences the value.
    ","Deref","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Arc<T>> for Arc<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Arc<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Arc>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Display for Arc<T, A>
    where\n T: Display + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Drop for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn drop(&mut self)

    Drops the Arc.

    \n

    This will decrement the strong reference count. If the strong reference\ncount reaches zero then the only other references (if any) are\nWeak, so we drop the inner value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nstruct Foo;\n\nimpl Drop for Foo {\n    fn drop(&mut self) {\n        println!(\"dropped!\");\n    }\n}\n\nlet foo  = Arc::new(Foo);\nlet foo2 = Arc::clone(&foo);\n\ndrop(foo);    // Doesn't print anything\ndrop(foo2);   // Prints \"dropped!\"
    \n
    ","Drop","massa_db_exports::controller::ShareableMassaDBController"],["
    1.52.0 · source§

    impl<T> Error for Arc<T>
    where\n T: Error + ?Sized,

    source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    source§

    fn provide<'a>(&'a self, req: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    ","Error","massa_db_exports::controller::ShareableMassaDBController"],["
    1.21.0 · source§

    impl<T, A> From<Box<T, A>> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn from(v: Box<T, A>) -> Arc<T, A>

    Move a boxed object to a new, reference-counted allocation.

    \n
    §Example
    \n
    let unique: Box<str> = Box::from(\"eggplant\");\nlet shared: Arc<str> = Arc::from(unique);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.45.0 · source§

    impl<'a, B> From<Cow<'a, B>> for Arc<B>
    where\n B: ToOwned + ?Sized,\n Arc<B>: From<&'a B> + From<<B as ToOwned>::Owned>,

    source§

    fn from(cow: Cow<'a, B>) -> Arc<B>

    Create an atomically reference-counted pointer from\na clone-on-write pointer by copying its content.

    \n
    §Example
    \n
    let cow: Cow<'_, str> = Cow::Borrowed(\"eggplant\");\nlet shared: Arc<str> = Arc::from(cow);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.6.0 · source§

    impl<T> From<T> for Arc<T>

    source§

    fn from(t: T) -> Arc<T>

    Converts a T into an Arc<T>

    \n

    The conversion moves the value into a\nnewly allocated Arc. It is equivalent to\ncalling Arc::new(t).

    \n
    §Example
    \n
    let x = 5;\nlet arc = Arc::new(5);\n\nassert_eq!(Arc::from(x), arc);
    \n
    ","From","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Hash for Arc<T, A>
    where\n T: Hash + ?Sized,\n A: Allocator,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<Sp> LocalSpawn for Arc<Sp>
    where\n Sp: LocalSpawn + ?Sized,

    §

    fn spawn_local_obj(\n &self,\n future: LocalFutureObj<'static, ()>,\n) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status_local(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","LocalSpawn","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T> Log for Arc<T>
    where\n T: Log + ?Sized,

    source§

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Determines if a log message with the specified metadata would be\nlogged. Read more
    source§

    fn log(&self, record: &Record<'_>)

    Logs the Record. Read more
    source§

    fn flush(&self)

    Flushes any buffered records. Read more
    ","Log","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Ord for Arc<T, A>
    where\n T: Ord + ?Sized,\n A: Allocator,

    source§

    fn cmp(&self, other: &Arc<T, A>) -> Ordering

    Comparison for two Arcs.

    \n

    The two are compared by calling cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Ordering::Less, five.cmp(&Arc::new(6)));
    \n
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> PartialEq for Arc<T, A>
    where\n T: PartialEq + ?Sized,\n A: Allocator,

    source§

    fn eq(&self, other: &Arc<T, A>) -> bool

    Equality for two Arcs.

    \n

    Two Arcs are equal if their inner values are equal, even if they are\nstored in different allocation.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same allocation are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five == Arc::new(5));
    \n
    source§

    fn ne(&self, other: &Arc<T, A>) -> bool

    Inequality for two Arcs.

    \n

    Two Arcs are not equal if their inner values are not equal.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same value are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five != Arc::new(6));
    \n
    ","PartialEq","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> PartialOrd for Arc<T, A>
    where\n T: PartialOrd + ?Sized,\n A: Allocator,

    source§

    fn partial_cmp(&self, other: &Arc<T, A>) -> Option<Ordering>

    Partial comparison for two Arcs.

    \n

    The two are compared by calling partial_cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Some(Ordering::Less), five.partial_cmp(&Arc::new(6)));
    \n
    source§

    fn lt(&self, other: &Arc<T, A>) -> bool

    Less-than comparison for two Arcs.

    \n

    The two are compared by calling < on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five < Arc::new(6));
    \n
    source§

    fn le(&self, other: &Arc<T, A>) -> bool

    ‘Less than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling <= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five <= Arc::new(5));
    \n
    source§

    fn gt(&self, other: &Arc<T, A>) -> bool

    Greater-than comparison for two Arcs.

    \n

    The two are compared by calling > on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five > Arc::new(4));
    \n
    source§

    fn ge(&self, other: &Arc<T, A>) -> bool

    ‘Greater than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling >= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five >= Arc::new(5));
    \n
    ","PartialOrd","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Pointer for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, U> SerializeAs<Arc<T>> for Arc<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Arc<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<Request, S> Service<Request> for Arc<S>
    where\n S: Service<Request> + ?Sized,

    §

    type Response = <S as Service<Request>>::Response

    Responses given by the service.
    §

    type Error = <S as Service<Request>>::Error

    Errors produced by the service. Read more
    §

    type Future = <S as Service<Request>>::Future

    The future response value.
    §

    fn call(&self, req: Request) -> <Arc<S> as Service<Request>>::Future

    Process the request and return the response asynchronously.\ncall takes &self instead of mut &self because: Read more
    ","Service","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<Sp> Spawn for Arc<Sp>
    where\n Sp: Spawn + ?Sized,

    §

    fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","Spawn","massa_db_exports::controller::ShareableMassaDBController"],["
    §

    impl<S> Subscriber for Arc<S>
    where\n S: Subscriber + ?Sized,

    §

    fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

    Registers a new callsite with this subscriber, returning whether or not\nthe subscriber is interested in being notified about the callsite. Read more
    §

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Returns true if a span or event with the specified metadata would be\nrecorded. Read more
    §

    fn max_level_hint(&self) -> Option<LevelFilter>

    Returns the highest verbosity level that this Subscriber will\nenable, or None, if the subscriber does not implement level-based\nfiltering or chooses not to implement this method. Read more
    §

    fn new_span(&self, span: &Attributes<'_>) -> Id

    Visit the construction of a new span, returning a new span ID for the\nspan being constructed. Read more
    §

    fn record(&self, span: &Id, values: &Record<'_>)

    Record a set of values on a span. Read more
    §

    fn record_follows_from(&self, span: &Id, follows: &Id)

    Adds an indication that span follows from the span with the id\nfollows. Read more
    §

    fn event_enabled(&self, event: &Event<'_>) -> bool

    Determine if an [Event] should be recorded. Read more
    §

    fn event(&self, event: &Event<'_>)

    Records that an Event has occurred. Read more
    §

    fn enter(&self, span: &Id)

    Records that a span has been entered. Read more
    §

    fn exit(&self, span: &Id)

    Records that a span has been exited. Read more
    §

    fn clone_span(&self, id: &Id) -> Id

    Notifies the subscriber that a span ID has been cloned. Read more
    §

    fn try_close(&self, id: Id) -> bool

    Notifies the subscriber that a span ID has been dropped, and returns\ntrue if there are now 0 IDs that refer to that span. Read more
    §

    fn drop_span(&self, id: Id)

    👎Deprecated since 0.1.2: use Subscriber::try_close instead
    This method is deprecated. Read more
    §

    fn current_span(&self) -> Current

    Returns a type representing this subscriber’s view of the current span. Read more
    §

    unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>

    If self is the same type as the provided TypeId, returns an untyped\n*const pointer to that type. Otherwise, returns None. Read more
    §

    fn on_register_dispatch(&self, subscriber: &Dispatch)

    Invoked when this subscriber becomes a [Dispatch]. Read more
    ","Subscriber","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, U, A> CoerceUnsized<Arc<U, A>> for Arc<T, A>
    where\n T: Unsize<U> + ?Sized,\n A: Allocator,\n U: ?Sized,

    ","CoerceUnsized>","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, A> DerefPure for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","DerefPure","massa_db_exports::controller::ShareableMassaDBController"],["
    source§

    impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T>
    where\n T: Unsize<U> + ?Sized,\n U: ?Sized,

    ","DispatchFromDyn>","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Eq for Arc<T, A>
    where\n T: Eq + ?Sized,\n A: Allocator,

    ","Eq","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Send for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Send,

    ","Send","massa_db_exports::controller::ShareableMassaDBController"],["
    1.0.0 · source§

    impl<T, A> Sync for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Sync,

    ","Sync","massa_db_exports::controller::ShareableMassaDBController"],["
    1.33.0 · source§

    impl<T, A> Unpin for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","Unpin","massa_db_exports::controller::ShareableMassaDBController"],["
    1.9.0 · source§

    impl<T, A> UnwindSafe for Arc<T, A>
    where\n T: RefUnwindSafe + ?Sized,\n A: Allocator + UnwindSafe,

    ","UnwindSafe","massa_db_exports::controller::ShareableMassaDBController"]], +"massa_pos_worker":[["
    source§

    impl<T> Arc<T>
    where\n T: ?Sized,

    1.17.0 · source

    pub unsafe fn from_raw(ptr: *const T) -> Arc<T>

    Constructs an Arc<T> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to\nArc<U>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw(x_ptr);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    use std::sync::Arc;\n\nlet x: Arc<[u32]> = Arc::new([1, 2, 3]);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3]> = Arc::from_raw(x_ptr.cast::<[u32; 3]>());\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.51.0 · source

    pub unsafe fn increment_strong_count(ptr: *const T)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    1.51.0 · source

    pub unsafe fn decrement_strong_count(ptr: *const T)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count(ptr);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T> Arc<T>

    1.0.0 · source

    pub fn new(data: T) -> Arc<T>

    Constructs a new Arc<T>.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);
    \n
    1.60.0 · source

    pub fn new_cyclic<F>(data_fn: F) -> Arc<T>
    where\n F: FnOnce(&Weak<T>) -> T,

    Constructs a new Arc<T> while giving you a Weak<T> to the allocation,\nto allow you to construct a T which holds a weak pointer to itself.

    \n

    Generally, a structure circularly referencing itself, either directly or\nindirectly, should not hold a strong reference to itself to prevent a memory leak.\nUsing this function, you get access to the weak pointer during the\ninitialization of T, before the Arc<T> is created, such that you can\nclone and store it inside the T.

    \n

    new_cyclic first allocates the managed allocation for the Arc<T>,\nthen calls your closure, giving it a Weak<T> to this allocation,\nand only afterwards completes the construction of the Arc<T> by placing\nthe T returned from your closure into the allocation.

    \n

    Since the new Arc<T> is not fully-constructed until Arc<T>::new_cyclic\nreturns, calling upgrade on the weak reference inside your closure will\nfail and result in a None value.

    \n
    §Panics
    \n

    If data_fn panics, the panic is propagated to the caller, and the\ntemporary Weak<T> is dropped normally.

    \n
    §Example
    \n
    use std::sync::{Arc, Weak};\n\nstruct Gadget {\n    me: Weak<Gadget>,\n}\n\nimpl Gadget {\n    /// Construct a reference counted Gadget.\n    fn new() -> Arc<Self> {\n        // `me` is a `Weak<Gadget>` pointing at the new allocation of the\n        // `Arc` we're constructing.\n        Arc::new_cyclic(|me| {\n            // Create the actual struct here.\n            Gadget { me: me.clone() }\n        })\n    }\n\n    /// Return a reference counted pointer to Self.\n    fn me(&self) -> Arc<Self> {\n        self.me.upgrade().unwrap()\n    }\n}
    \n
    source

    pub fn new_uninit() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::new_uninit();\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::new_zeroed();\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    1.33.0 · source

    pub fn pin(data: T) -> Pin<Arc<T>>

    Constructs a new Pin<Arc<T>>. If T does not implement Unpin, then\ndata will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin(data: T) -> Result<Pin<Arc<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T>>, return an error if allocation fails.

    \n
    source

    pub fn try_new(data: T) -> Result<Arc<T>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T>, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\n\nlet five = Arc::try_new(5)?;
    \n
    source

    pub fn try_new_uninit() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, returning an error\nif allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::try_new_uninit()?;\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, returning an error if allocation fails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::try_new_zeroed()?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source

    pub fn allocator(this: &Arc<T, A>) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n

    Note: this is an associated function, which means that you have\nto call it as Arc::allocator(&a) instead of a.allocator(). This\nis so that there is no conflict with a method on the inner type.

    \n
    1.17.0 · source

    pub fn into_raw(this: Arc<T, A>) -> *const T

    Consumes the Arc, returning the wrapped pointer.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub fn into_raw_with_allocator(this: Arc<T, A>) -> (*const T, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Consumes the Arc, returning the wrapped pointer and allocator.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw_in.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet (ptr, alloc) = Arc::into_raw_with_allocator(x);\nassert_eq!(unsafe { &*ptr }, \"hello\");\nlet x = unsafe { Arc::from_raw_in(ptr, alloc) };\nassert_eq!(&*x, \"hello\");
    \n
    1.45.0 · source

    pub fn as_ptr(this: &Arc<T, A>) -> *const T

    Provides a raw pointer to the data.

    \n

    The counts are not affected in any way and the Arc is not consumed. The pointer is valid for\nas long as there are strong counts in the Arc.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet y = Arc::clone(&x);\nlet x_ptr = Arc::as_ptr(&x);\nassert_eq!(x_ptr, Arc::as_ptr(&y));\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub unsafe fn from_raw_in(ptr: *const T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs an Arc<T, A> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to Arc<U, A>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The raw pointer must point to a block of memory allocated by alloc

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw_in(x_ptr, System);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x: Arc<[u32], _> = Arc::new_in([1, 2, 3], System);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3], _> = Arc::from_raw_in(x_ptr.cast::<[u32; 3]>(), System);\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.4.0 · source

    pub fn downgrade(this: &Arc<T, A>) -> Weak<T, A>
    where\n A: Clone,

    Creates a new Weak pointer to this allocation.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet weak_five = Arc::downgrade(&five);
    \n
    1.15.0 · source

    pub fn weak_count(this: &Arc<T, A>) -> usize

    Gets the number of Weak pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the weak count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _weak_five = Arc::downgrade(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` or `Weak` between threads.\nassert_eq!(1, Arc::weak_count(&five));
    \n
    1.15.0 · source

    pub fn strong_count(this: &Arc<T, A>) -> usize

    Gets the number of strong (Arc) pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the strong count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _also_five = Arc::clone(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` between threads.\nassert_eq!(2, Arc::strong_count(&five));
    \n
    source

    pub unsafe fn increment_strong_count_in(ptr: *const T, alloc: A)
    where\n A: Clone,

    🔬This is a nightly-only experimental API. (allocator_api)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method,, and ptr must point to a block of memory\nallocated by alloc.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    source

    pub unsafe fn decrement_strong_count_in(ptr: *const T, alloc: A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method, and ptr must point to a block of memory\nallocated by alloc. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count_in(ptr, System);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    1.17.0 · source

    pub fn ptr_eq(this: &Arc<T, A>, other: &Arc<T, A>) -> bool

    Returns true if the two Arcs point to the same allocation in a vein similar to\nptr::eq. This function ignores the metadata of dyn Trait pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet same_five = Arc::clone(&five);\nlet other_five = Arc::new(5);\n\nassert!(Arc::ptr_eq(&five, &same_five));\nassert!(!Arc::ptr_eq(&five, &other_five));
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: CloneToUninit + ?Sized,\n A: Allocator + Clone,

    1.4.0 · source

    pub fn make_mut(this: &mut Arc<T, A>) -> &mut T

    Makes a mutable reference into the given Arc.

    \n

    If there are other Arc pointers to the same allocation, then make_mut will\nclone the inner value to a new allocation to ensure unique ownership. This is also\nreferred to as clone-on-write.

    \n

    However, if there are no other Arc pointers to this allocation, but some Weak\npointers, then the Weak pointers will be dissociated and the inner value will not\nbe cloned.

    \n

    See also get_mut, which will fail rather than cloning the inner value\nor dissociating Weak pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut data = Arc::new(5);\n\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\nlet mut other_data = Arc::clone(&data); // Won't clone inner data\n*Arc::make_mut(&mut data) += 1;         // Clones inner data\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\n*Arc::make_mut(&mut other_data) *= 2;   // Won't clone anything\n\n// Now `data` and `other_data` point to different allocations.\nassert_eq!(*data, 8);\nassert_eq!(*other_data, 12);
    \n

    Weak pointers will be dissociated:

    \n\n
    use std::sync::Arc;\n\nlet mut data = Arc::new(75);\nlet weak = Arc::downgrade(&data);\n\nassert!(75 == *data);\nassert!(75 == *weak.upgrade().unwrap());\n\n*Arc::make_mut(&mut data) += 1;\n\nassert!(76 == *data);\nassert!(weak.upgrade().is_none());
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: Clone,\n A: Allocator,

    1.76.0 · source

    pub fn unwrap_or_clone(this: Arc<T, A>) -> T

    If we have the only reference to T then unwrap it. Otherwise, clone T and return the\nclone.

    \n

    Assuming arc_t is of type Arc<T>, this function is functionally equivalent to\n(*arc_t).clone(), but will avoid cloning the inner value where possible.

    \n
    §Examples
    \n
    let inner = String::from(\"test\");\nlet ptr = inner.as_ptr();\n\nlet arc = Arc::new(inner);\nlet inner = Arc::unwrap_or_clone(arc);\n// The inner value was not cloned\nassert!(ptr::eq(ptr, inner.as_ptr()));\n\nlet arc = Arc::new(inner);\nlet arc2 = arc.clone();\nlet inner = Arc::unwrap_or_clone(arc);\n// Because there were 2 references, we had to clone the inner value.\nassert!(!ptr::eq(ptr, inner.as_ptr()));\n// `arc2` is the last reference, so when we unwrap it we get back\n// the original `String`.\nlet inner = Arc::unwrap_or_clone(arc2);\nassert!(ptr::eq(ptr, inner.as_ptr()));
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    1.4.0 · source

    pub fn get_mut(this: &mut Arc<T, A>) -> Option<&mut T>

    Returns a mutable reference into the given Arc, if there are\nno other Arc or Weak pointers to the same allocation.

    \n

    Returns None otherwise, because it is not safe to\nmutate a shared value.

    \n

    See also make_mut, which will clone\nthe inner value when there are other Arc pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut x = Arc::new(3);\n*Arc::get_mut(&mut x).unwrap() = 4;\nassert_eq!(*x, 4);\n\nlet _y = Arc::clone(&x);\nassert!(Arc::get_mut(&mut x).is_none());
    \n
    source

    pub unsafe fn get_mut_unchecked(this: &mut Arc<T, A>) -> &mut T

    🔬This is a nightly-only experimental API. (get_mut_unchecked)

    Returns a mutable reference into the given Arc,\nwithout any check.

    \n

    See also get_mut, which is safe and does appropriate checks.

    \n
    §Safety
    \n

    If any other Arc or Weak pointers to the same allocation exist, then\nthey must not be dereferenced or have active borrows for the duration\nof the returned borrow, and their inner type must be exactly the same as the\ninner type of this Rc (including lifetimes). This is trivially the case if no\nsuch pointers exist, for example immediately after Arc::new.

    \n
    §Examples
    \n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut x = Arc::new(String::new());\nunsafe {\n    Arc::get_mut_unchecked(&mut x).push_str(\"foo\")\n}\nassert_eq!(*x, \"foo\");
    \n

    Other Arc pointers to the same allocation must be to the same type.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<str> = Arc::from(\"Hello, world!\");\nlet mut y: Arc<[u8]> = x.clone().into();\nunsafe {\n    // this is Undefined Behavior, because x's inner type is str, not [u8]\n    Arc::get_mut_unchecked(&mut y).fill(0xff); // 0xff is invalid in UTF-8\n}\nprintln!(\"{}\", &*x); // Invalid UTF-8 in a str
    \n

    Other Arc pointers to the same allocation must be to the exact same type, including lifetimes.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<&str> = Arc::new(\"Hello, world!\");\n{\n    let s = String::from(\"Oh, no!\");\n    let mut y: Arc<&str> = x.clone().into();\n    unsafe {\n        // this is Undefined Behavior, because x's inner type\n        // is &'long str, not &'short str\n        *Arc::get_mut_unchecked(&mut y) = &s;\n    }\n}\nprintln!(\"{}\", &*x); // Use-after-free
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,

    source

    pub fn new_in(data: T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T> in the provided allocator.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);
    \n
    source

    pub fn new_uninit_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents in the provided allocator.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::new_uninit_in(System);\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::new_zeroed_in(System);\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    source

    pub fn pin_in(data: T, alloc: A) -> Pin<Arc<T, A>>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator. If T does not implement Unpin,\nthen data will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin_in(data: T, alloc: A) -> Result<Pin<Arc<T, A>>, AllocError>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator, return an error if allocation\nfails.

    \n
    source

    pub fn try_new_in(data: T, alloc: A) -> Result<Arc<T, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T, A> in the provided allocator, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::try_new_in(5, System)?;
    \n
    source

    pub fn try_new_uninit_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, in the provided allocator, returning an\nerror if allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::try_new_uninit_in(System)?;\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator, returning an error if allocation\nfails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::try_new_zeroed_in(System)?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    1.4.0 · source

    pub fn try_unwrap(this: Arc<T, A>) -> Result<T, Arc<T, A>>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, an Err is returned with the same Arc that was\npassed in.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    It is strongly recommended to use Arc::into_inner instead if you don’t\nkeep the Arc in the Err case.\nImmediately dropping the Err-value, as the expression\nArc::try_unwrap(this).ok() does, can cause the strong count to\ndrop to zero and the inner value of the Arc to be dropped.\nFor instance, if two threads execute such an expression in parallel,\nthere is a race condition without the possibility of unsafety:\nThe threads could first both check whether they own the last instance\nin Arc::try_unwrap, determine that they both do not, and then both\ndiscard and drop their instance in the call to ok.\nIn this scenario, the value inside the Arc is safely destroyed\nby exactly one of the threads, but neither thread will ever be able\nto use the value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nassert_eq!(Arc::try_unwrap(x), Ok(3));\n\nlet x = Arc::new(4);\nlet _y = Arc::clone(&x);\nassert_eq!(*Arc::try_unwrap(x).unwrap_err(), 4);
    \n
    1.70.0 · source

    pub fn into_inner(this: Arc<T, A>) -> Option<T>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, None is returned and the Arc is dropped.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    If Arc::into_inner is called on every clone of this Arc,\nit is guaranteed that exactly one of the calls returns the inner value.\nThis means in particular that the inner value is not dropped.

    \n

    Arc::try_unwrap is conceptually similar to Arc::into_inner, but it\nis meant for different use-cases. If used as a direct replacement\nfor Arc::into_inner anyway, such as with the expression\nArc::try_unwrap(this).ok(), then it does\nnot give the same guarantee as described in the previous paragraph.\nFor more information, see the examples below and read the documentation\nof Arc::try_unwrap.

    \n
    §Examples
    \n

    Minimal example demonstrating the guarantee that Arc::into_inner gives.

    \n\n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nlet y = Arc::clone(&x);\n\n// Two threads calling `Arc::into_inner` on both clones of an `Arc`:\nlet x_thread = std::thread::spawn(|| Arc::into_inner(x));\nlet y_thread = std::thread::spawn(|| Arc::into_inner(y));\n\nlet x_inner_value = x_thread.join().unwrap();\nlet y_inner_value = y_thread.join().unwrap();\n\n// One of the threads is guaranteed to receive the inner value:\nassert!(matches!(\n    (x_inner_value, y_inner_value),\n    (None, Some(3)) | (Some(3), None)\n));\n// The result could also be `(None, None)` if the threads called\n// `Arc::try_unwrap(x).ok()` and `Arc::try_unwrap(y).ok()` instead.
    \n

    A more practical example demonstrating the need for Arc::into_inner:

    \n\n
    use std::sync::Arc;\n\n// Definition of a simple singly linked list using `Arc`:\n#[derive(Clone)]\nstruct LinkedList<T>(Option<Arc<Node<T>>>);\nstruct Node<T>(T, Option<Arc<Node<T>>>);\n\n// Dropping a long `LinkedList<T>` relying on the destructor of `Arc`\n// can cause a stack overflow. To prevent this, we can provide a\n// manual `Drop` implementation that does the destruction in a loop:\nimpl<T> Drop for LinkedList<T> {\n    fn drop(&mut self) {\n        let mut link = self.0.take();\n        while let Some(arc_node) = link.take() {\n            if let Some(Node(_value, next)) = Arc::into_inner(arc_node) {\n                link = next;\n            }\n        }\n    }\n}\n\n// Implementation of `new` and `push` omitted\nimpl<T> LinkedList<T> {\n    /* ... */\n}\n\n// The following code could have still caused a stack overflow\n// despite the manual `Drop` impl if that `Drop` impl had used\n// `Arc::try_unwrap(arc).ok()` instead of `Arc::into_inner(arc)`.\n\n// Create a long list and clone it\nlet mut x = LinkedList::new();\nlet size = 100000;\nfor i in 0..size {\n    x.push(i); // Adds i to the front of x\n}\nlet y = x.clone();\n\n// Drop the clones in parallel\nlet x_thread = std::thread::spawn(|| drop(x));\nlet y_thread = std::thread::spawn(|| drop(y));\nx_thread.join().unwrap();\ny_thread.join().unwrap();
    \n
    ",0,"massa_pos_worker::DrawCachePtr"],["
    1.64.0 · source§

    impl<T> AsFd for Arc<T>
    where\n T: AsFd + ?Sized,

    This impl allows implementing traits that require AsFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\n\ntrait MyTrait: AsFd {}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_fd(&self) -> BorrowedFd<'_>

    Borrows the file descriptor. Read more
    ","AsFd","massa_pos_worker::DrawCachePtr"],["
    1.63.0 · source§

    impl<T> AsRawFd for Arc<T>
    where\n T: AsRawFd,

    This impl allows implementing traits that require AsRawFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\ntrait MyTrait: AsRawFd {\n}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_raw_fd(&self) -> i32

    Extracts the raw file descriptor. Read more
    ","AsRawFd","massa_pos_worker::DrawCachePtr"],["
    1.5.0 · source§

    impl<T, A> AsRef<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn as_ref(&self) -> &T

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Borrow<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    ","Borrow","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Clone for Arc<T, A>
    where\n A: Allocator + Clone,\n T: ?Sized,

    source§

    fn clone(&self) -> Arc<T, A>

    Makes a clone of the Arc pointer.

    \n

    This creates another pointer to the same allocation, increasing the\nstrong reference count.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet _ = Arc::clone(&five);
    \n
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Debug for Arc<T, A>
    where\n T: Debug + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T> Default for Arc<T>
    where\n T: Default,

    source§

    fn default() -> Arc<T>

    Creates a new Arc<T>, with the Default value for T.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x: Arc<i32> = Default::default();\nassert_eq!(*x, 0);
    \n
    ","Default","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Deref for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    §

    type Target = T

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &T

    Dereferences the value.
    ","Deref","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Arc<T>> for Arc<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Arc<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Arc>","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Display for Arc<T, A>
    where\n T: Display + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Drop for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn drop(&mut self)

    Drops the Arc.

    \n

    This will decrement the strong reference count. If the strong reference\ncount reaches zero then the only other references (if any) are\nWeak, so we drop the inner value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nstruct Foo;\n\nimpl Drop for Foo {\n    fn drop(&mut self) {\n        println!(\"dropped!\");\n    }\n}\n\nlet foo  = Arc::new(Foo);\nlet foo2 = Arc::clone(&foo);\n\ndrop(foo);    // Doesn't print anything\ndrop(foo2);   // Prints \"dropped!\"
    \n
    ","Drop","massa_pos_worker::DrawCachePtr"],["
    1.52.0 · source§

    impl<T> Error for Arc<T>
    where\n T: Error + ?Sized,

    source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    source§

    fn provide<'a>(&'a self, req: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    ","Error","massa_pos_worker::DrawCachePtr"],["
    1.21.0 · source§

    impl<T, A> From<Box<T, A>> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn from(v: Box<T, A>) -> Arc<T, A>

    Move a boxed object to a new, reference-counted allocation.

    \n
    §Example
    \n
    let unique: Box<str> = Box::from(\"eggplant\");\nlet shared: Arc<str> = Arc::from(unique);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_pos_worker::DrawCachePtr"],["
    1.45.0 · source§

    impl<'a, B> From<Cow<'a, B>> for Arc<B>
    where\n B: ToOwned + ?Sized,\n Arc<B>: From<&'a B> + From<<B as ToOwned>::Owned>,

    source§

    fn from(cow: Cow<'a, B>) -> Arc<B>

    Create an atomically reference-counted pointer from\na clone-on-write pointer by copying its content.

    \n
    §Example
    \n
    let cow: Cow<'_, str> = Cow::Borrowed(\"eggplant\");\nlet shared: Arc<str> = Arc::from(cow);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_pos_worker::DrawCachePtr"],["
    1.6.0 · source§

    impl<T> From<T> for Arc<T>

    source§

    fn from(t: T) -> Arc<T>

    Converts a T into an Arc<T>

    \n

    The conversion moves the value into a\nnewly allocated Arc. It is equivalent to\ncalling Arc::new(t).

    \n
    §Example
    \n
    let x = 5;\nlet arc = Arc::new(5);\n\nassert_eq!(Arc::from(x), arc);
    \n
    ","From","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Hash for Arc<T, A>
    where\n T: Hash + ?Sized,\n A: Allocator,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_pos_worker::DrawCachePtr"],["
    §

    impl<Sp> LocalSpawn for Arc<Sp>
    where\n Sp: LocalSpawn + ?Sized,

    §

    fn spawn_local_obj(\n &self,\n future: LocalFutureObj<'static, ()>,\n) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status_local(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","LocalSpawn","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T> Log for Arc<T>
    where\n T: Log + ?Sized,

    source§

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Determines if a log message with the specified metadata would be\nlogged. Read more
    source§

    fn log(&self, record: &Record<'_>)

    Logs the Record. Read more
    source§

    fn flush(&self)

    Flushes any buffered records. Read more
    ","Log","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Ord for Arc<T, A>
    where\n T: Ord + ?Sized,\n A: Allocator,

    source§

    fn cmp(&self, other: &Arc<T, A>) -> Ordering

    Comparison for two Arcs.

    \n

    The two are compared by calling cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Ordering::Less, five.cmp(&Arc::new(6)));
    \n
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> PartialEq for Arc<T, A>
    where\n T: PartialEq + ?Sized,\n A: Allocator,

    source§

    fn eq(&self, other: &Arc<T, A>) -> bool

    Equality for two Arcs.

    \n

    Two Arcs are equal if their inner values are equal, even if they are\nstored in different allocation.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same allocation are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five == Arc::new(5));
    \n
    source§

    fn ne(&self, other: &Arc<T, A>) -> bool

    Inequality for two Arcs.

    \n

    Two Arcs are not equal if their inner values are not equal.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same value are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five != Arc::new(6));
    \n
    ","PartialEq","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> PartialOrd for Arc<T, A>
    where\n T: PartialOrd + ?Sized,\n A: Allocator,

    source§

    fn partial_cmp(&self, other: &Arc<T, A>) -> Option<Ordering>

    Partial comparison for two Arcs.

    \n

    The two are compared by calling partial_cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Some(Ordering::Less), five.partial_cmp(&Arc::new(6)));
    \n
    source§

    fn lt(&self, other: &Arc<T, A>) -> bool

    Less-than comparison for two Arcs.

    \n

    The two are compared by calling < on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five < Arc::new(6));
    \n
    source§

    fn le(&self, other: &Arc<T, A>) -> bool

    ‘Less than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling <= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five <= Arc::new(5));
    \n
    source§

    fn gt(&self, other: &Arc<T, A>) -> bool

    Greater-than comparison for two Arcs.

    \n

    The two are compared by calling > on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five > Arc::new(4));
    \n
    source§

    fn ge(&self, other: &Arc<T, A>) -> bool

    ‘Greater than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling >= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five >= Arc::new(5));
    \n
    ","PartialOrd","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Pointer for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, U> SerializeAs<Arc<T>> for Arc<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Arc<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_pos_worker::DrawCachePtr"],["
    §

    impl<Request, S> Service<Request> for Arc<S>
    where\n S: Service<Request> + ?Sized,

    §

    type Response = <S as Service<Request>>::Response

    Responses given by the service.
    §

    type Error = <S as Service<Request>>::Error

    Errors produced by the service. Read more
    §

    type Future = <S as Service<Request>>::Future

    The future response value.
    §

    fn call(&self, req: Request) -> <Arc<S> as Service<Request>>::Future

    Process the request and return the response asynchronously.\ncall takes &self instead of mut &self because: Read more
    ","Service","massa_pos_worker::DrawCachePtr"],["
    §

    impl<Sp> Spawn for Arc<Sp>
    where\n Sp: Spawn + ?Sized,

    §

    fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","Spawn","massa_pos_worker::DrawCachePtr"],["
    §

    impl<S> Subscriber for Arc<S>
    where\n S: Subscriber + ?Sized,

    §

    fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

    Registers a new callsite with this subscriber, returning whether or not\nthe subscriber is interested in being notified about the callsite. Read more
    §

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Returns true if a span or event with the specified metadata would be\nrecorded. Read more
    §

    fn max_level_hint(&self) -> Option<LevelFilter>

    Returns the highest verbosity level that this Subscriber will\nenable, or None, if the subscriber does not implement level-based\nfiltering or chooses not to implement this method. Read more
    §

    fn new_span(&self, span: &Attributes<'_>) -> Id

    Visit the construction of a new span, returning a new span ID for the\nspan being constructed. Read more
    §

    fn record(&self, span: &Id, values: &Record<'_>)

    Record a set of values on a span. Read more
    §

    fn record_follows_from(&self, span: &Id, follows: &Id)

    Adds an indication that span follows from the span with the id\nfollows. Read more
    §

    fn event_enabled(&self, event: &Event<'_>) -> bool

    Determine if an [Event] should be recorded. Read more
    §

    fn event(&self, event: &Event<'_>)

    Records that an Event has occurred. Read more
    §

    fn enter(&self, span: &Id)

    Records that a span has been entered. Read more
    §

    fn exit(&self, span: &Id)

    Records that a span has been exited. Read more
    §

    fn clone_span(&self, id: &Id) -> Id

    Notifies the subscriber that a span ID has been cloned. Read more
    §

    fn try_close(&self, id: Id) -> bool

    Notifies the subscriber that a span ID has been dropped, and returns\ntrue if there are now 0 IDs that refer to that span. Read more
    §

    fn drop_span(&self, id: Id)

    👎Deprecated since 0.1.2: use Subscriber::try_close instead
    This method is deprecated. Read more
    §

    fn current_span(&self) -> Current

    Returns a type representing this subscriber’s view of the current span. Read more
    §

    unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>

    If self is the same type as the provided TypeId, returns an untyped\n*const pointer to that type. Otherwise, returns None. Read more
    §

    fn on_register_dispatch(&self, subscriber: &Dispatch)

    Invoked when this subscriber becomes a [Dispatch]. Read more
    ","Subscriber","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, U, A> CoerceUnsized<Arc<U, A>> for Arc<T, A>
    where\n T: Unsize<U> + ?Sized,\n A: Allocator,\n U: ?Sized,

    ","CoerceUnsized>","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, A> DerefPure for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","DerefPure","massa_pos_worker::DrawCachePtr"],["
    source§

    impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T>
    where\n T: Unsize<U> + ?Sized,\n U: ?Sized,

    ","DispatchFromDyn>","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Eq for Arc<T, A>
    where\n T: Eq + ?Sized,\n A: Allocator,

    ","Eq","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Send for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Send,

    ","Send","massa_pos_worker::DrawCachePtr"],["
    1.0.0 · source§

    impl<T, A> Sync for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Sync,

    ","Sync","massa_pos_worker::DrawCachePtr"],["
    1.33.0 · source§

    impl<T, A> Unpin for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","Unpin","massa_pos_worker::DrawCachePtr"],["
    1.9.0 · source§

    impl<T, A> UnwindSafe for Arc<T, A>
    where\n T: RefUnwindSafe + ?Sized,\n A: Allocator + UnwindSafe,

    ","UnwindSafe","massa_pos_worker::DrawCachePtr"]], +"massa_protocol_worker":[["
    §

    impl<T> AnyProvider for Arc<T>
    where\n T: AnyProvider + ?Sized,

    §

    fn load_any(\n &self,\n key: DataKey,\n req: DataRequest<'_>,\n) -> Result<AnyResponse, DataError>

    Loads an [AnyPayload] according to the key and request.
    ","AnyProvider","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T> Arc<T>
    where\n T: ?Sized,

    1.17.0 · source

    pub unsafe fn from_raw(ptr: *const T) -> Arc<T>

    Constructs an Arc<T> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to\nArc<U>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw(x_ptr);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    use std::sync::Arc;\n\nlet x: Arc<[u32]> = Arc::new([1, 2, 3]);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3]> = Arc::from_raw(x_ptr.cast::<[u32; 3]>());\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.51.0 · source

    pub unsafe fn increment_strong_count(ptr: *const T)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    1.51.0 · source

    pub unsafe fn decrement_strong_count(ptr: *const T)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count(ptr);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw(ptr);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count(ptr);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T> Arc<T>

    1.0.0 · source

    pub fn new(data: T) -> Arc<T>

    Constructs a new Arc<T>.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);
    \n
    1.60.0 · source

    pub fn new_cyclic<F>(data_fn: F) -> Arc<T>
    where\n F: FnOnce(&Weak<T>) -> T,

    Constructs a new Arc<T> while giving you a Weak<T> to the allocation,\nto allow you to construct a T which holds a weak pointer to itself.

    \n

    Generally, a structure circularly referencing itself, either directly or\nindirectly, should not hold a strong reference to itself to prevent a memory leak.\nUsing this function, you get access to the weak pointer during the\ninitialization of T, before the Arc<T> is created, such that you can\nclone and store it inside the T.

    \n

    new_cyclic first allocates the managed allocation for the Arc<T>,\nthen calls your closure, giving it a Weak<T> to this allocation,\nand only afterwards completes the construction of the Arc<T> by placing\nthe T returned from your closure into the allocation.

    \n

    Since the new Arc<T> is not fully-constructed until Arc<T>::new_cyclic\nreturns, calling upgrade on the weak reference inside your closure will\nfail and result in a None value.

    \n
    §Panics
    \n

    If data_fn panics, the panic is propagated to the caller, and the\ntemporary Weak<T> is dropped normally.

    \n
    §Example
    \n
    use std::sync::{Arc, Weak};\n\nstruct Gadget {\n    me: Weak<Gadget>,\n}\n\nimpl Gadget {\n    /// Construct a reference counted Gadget.\n    fn new() -> Arc<Self> {\n        // `me` is a `Weak<Gadget>` pointing at the new allocation of the\n        // `Arc` we're constructing.\n        Arc::new_cyclic(|me| {\n            // Create the actual struct here.\n            Gadget { me: me.clone() }\n        })\n    }\n\n    /// Return a reference counted pointer to Self.\n    fn me(&self) -> Arc<Self> {\n        self.me.upgrade().unwrap()\n    }\n}
    \n
    source

    pub fn new_uninit() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::new_uninit();\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed() -> Arc<MaybeUninit<T>>

    🔬This is a nightly-only experimental API. (new_uninit)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::new_zeroed();\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    1.33.0 · source

    pub fn pin(data: T) -> Pin<Arc<T>>

    Constructs a new Pin<Arc<T>>. If T does not implement Unpin, then\ndata will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin(data: T) -> Result<Pin<Arc<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T>>, return an error if allocation fails.

    \n
    source

    pub fn try_new(data: T) -> Result<Arc<T>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T>, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\n\nlet five = Arc::try_new(5)?;
    \n
    source

    pub fn try_new_uninit() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, returning an error\nif allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut five = Arc::<u32>::try_new_uninit()?;\n\n// Deferred initialization:\nArc::get_mut(&mut five).unwrap().write(5);\n\nlet five = unsafe { five.assume_init() };\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed() -> Result<Arc<MaybeUninit<T>>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, returning an error if allocation fails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\n\nlet zero = Arc::<u32>::try_new_zeroed()?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source

    pub fn allocator(this: &Arc<T, A>) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n

    Note: this is an associated function, which means that you have\nto call it as Arc::allocator(&a) instead of a.allocator(). This\nis so that there is no conflict with a method on the inner type.

    \n
    1.17.0 · source

    pub fn into_raw(this: Arc<T, A>) -> *const T

    Consumes the Arc, returning the wrapped pointer.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet x_ptr = Arc::into_raw(x);\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub fn into_raw_with_allocator(this: Arc<T, A>) -> (*const T, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Consumes the Arc, returning the wrapped pointer and allocator.

    \n

    To avoid a memory leak the pointer must be converted back to an Arc using\nArc::from_raw_in.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet (ptr, alloc) = Arc::into_raw_with_allocator(x);\nassert_eq!(unsafe { &*ptr }, \"hello\");\nlet x = unsafe { Arc::from_raw_in(ptr, alloc) };\nassert_eq!(&*x, \"hello\");
    \n
    1.45.0 · source

    pub fn as_ptr(this: &Arc<T, A>) -> *const T

    Provides a raw pointer to the data.

    \n

    The counts are not affected in any way and the Arc is not consumed. The pointer is valid for\nas long as there are strong counts in the Arc.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(\"hello\".to_owned());\nlet y = Arc::clone(&x);\nlet x_ptr = Arc::as_ptr(&x);\nassert_eq!(x_ptr, Arc::as_ptr(&y));\nassert_eq!(unsafe { &*x_ptr }, \"hello\");
    \n
    source

    pub unsafe fn from_raw_in(ptr: *const T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs an Arc<T, A> from a raw pointer.

    \n

    The raw pointer must have been previously returned by a call to Arc<U, A>::into_raw with the following requirements:

    \n
      \n
    • If U is sized, it must have the same size and alignment as T. This\nis trivially true if U is T.
    • \n
    • If U is unsized, its data pointer must have the same size and\nalignment as T. This is trivially true if Arc<U> was constructed\nthrough Arc<T> and then converted to Arc<U> through an unsized\ncoercion.
    • \n
    \n

    Note that if U or U’s data pointer is not T but has the same size\nand alignment, this is basically like transmuting references of\ndifferent types. See mem::transmute for more information\non what restrictions apply in this case.

    \n

    The raw pointer must point to a block of memory allocated by alloc

    \n

    The user of from_raw has to make sure a specific value of T is only\ndropped once.

    \n

    This function is unsafe because improper use may lead to memory unsafety,\neven if the returned Arc<T> is never accessed.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x = Arc::new_in(\"hello\".to_owned(), System);\nlet x_ptr = Arc::into_raw(x);\n\nunsafe {\n    // Convert back to an `Arc` to prevent leak.\n    let x = Arc::from_raw_in(x_ptr, System);\n    assert_eq!(&*x, \"hello\");\n\n    // Further calls to `Arc::from_raw(x_ptr)` would be memory-unsafe.\n}\n\n// The memory was freed when `x` went out of scope above, so `x_ptr` is now dangling!
    \n

    Convert a slice back into its original array:

    \n\n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet x: Arc<[u32], _> = Arc::new_in([1, 2, 3], System);\nlet x_ptr: *const [u32] = Arc::into_raw(x);\n\nunsafe {\n    let x: Arc<[u32; 3], _> = Arc::from_raw_in(x_ptr.cast::<[u32; 3]>(), System);\n    assert_eq!(&*x, &[1, 2, 3]);\n}
    \n
    1.4.0 · source

    pub fn downgrade(this: &Arc<T, A>) -> Weak<T, A>
    where\n A: Clone,

    Creates a new Weak pointer to this allocation.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet weak_five = Arc::downgrade(&five);
    \n
    1.15.0 · source

    pub fn weak_count(this: &Arc<T, A>) -> usize

    Gets the number of Weak pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the weak count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _weak_five = Arc::downgrade(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` or `Weak` between threads.\nassert_eq!(1, Arc::weak_count(&five));
    \n
    1.15.0 · source

    pub fn strong_count(this: &Arc<T, A>) -> usize

    Gets the number of strong (Arc) pointers to this allocation.

    \n
    §Safety
    \n

    This method by itself is safe, but using it correctly requires extra care.\nAnother thread can change the strong count at any time,\nincluding potentially between calling this method and acting on the result.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet _also_five = Arc::clone(&five);\n\n// This assertion is deterministic because we haven't shared\n// the `Arc` between threads.\nassert_eq!(2, Arc::strong_count(&five));
    \n
    source

    pub unsafe fn increment_strong_count_in(ptr: *const T, alloc: A)
    where\n A: Clone,

    🔬This is a nightly-only experimental API. (allocator_api)

    Increments the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, and the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) for the duration of this method,, and ptr must point to a block of memory\nallocated by alloc.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // This assertion is deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n}
    \n
    source

    pub unsafe fn decrement_strong_count_in(ptr: *const T, alloc: A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decrements the strong reference count on the Arc<T> associated with the\nprovided pointer by one.

    \n
    §Safety
    \n

    The pointer must have been obtained through Arc::into_raw, the\nassociated Arc instance must be valid (i.e. the strong count must be at\nleast 1) when invoking this method, and ptr must point to a block of memory\nallocated by alloc. This method can be used to release the final\nArc and backing storage, but should not be called after the final Arc has been\nreleased.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);\n\nunsafe {\n    let ptr = Arc::into_raw(five);\n    Arc::increment_strong_count_in(ptr, System);\n\n    // Those assertions are deterministic because we haven't shared\n    // the `Arc` between threads.\n    let five = Arc::from_raw_in(ptr, System);\n    assert_eq!(2, Arc::strong_count(&five));\n    Arc::decrement_strong_count_in(ptr, System);\n    assert_eq!(1, Arc::strong_count(&five));\n}
    \n
    1.17.0 · source

    pub fn ptr_eq(this: &Arc<T, A>, other: &Arc<T, A>) -> bool

    Returns true if the two Arcs point to the same allocation in a vein similar to\nptr::eq. This function ignores the metadata of dyn Trait pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\nlet same_five = Arc::clone(&five);\nlet other_five = Arc::new(5);\n\nassert!(Arc::ptr_eq(&five, &same_five));\nassert!(!Arc::ptr_eq(&five, &other_five));
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: CloneToUninit + ?Sized,\n A: Allocator + Clone,

    1.4.0 · source

    pub fn make_mut(this: &mut Arc<T, A>) -> &mut T

    Makes a mutable reference into the given Arc.

    \n

    If there are other Arc pointers to the same allocation, then make_mut will\nclone the inner value to a new allocation to ensure unique ownership. This is also\nreferred to as clone-on-write.

    \n

    However, if there are no other Arc pointers to this allocation, but some Weak\npointers, then the Weak pointers will be dissociated and the inner value will not\nbe cloned.

    \n

    See also get_mut, which will fail rather than cloning the inner value\nor dissociating Weak pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut data = Arc::new(5);\n\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\nlet mut other_data = Arc::clone(&data); // Won't clone inner data\n*Arc::make_mut(&mut data) += 1;         // Clones inner data\n*Arc::make_mut(&mut data) += 1;         // Won't clone anything\n*Arc::make_mut(&mut other_data) *= 2;   // Won't clone anything\n\n// Now `data` and `other_data` point to different allocations.\nassert_eq!(*data, 8);\nassert_eq!(*other_data, 12);
    \n

    Weak pointers will be dissociated:

    \n\n
    use std::sync::Arc;\n\nlet mut data = Arc::new(75);\nlet weak = Arc::downgrade(&data);\n\nassert!(75 == *data);\nassert!(75 == *weak.upgrade().unwrap());\n\n*Arc::make_mut(&mut data) += 1;\n\nassert!(76 == *data);\nassert!(weak.upgrade().is_none());
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n T: Clone,\n A: Allocator,

    1.76.0 · source

    pub fn unwrap_or_clone(this: Arc<T, A>) -> T

    If we have the only reference to T then unwrap it. Otherwise, clone T and return the\nclone.

    \n

    Assuming arc_t is of type Arc<T>, this function is functionally equivalent to\n(*arc_t).clone(), but will avoid cloning the inner value where possible.

    \n
    §Examples
    \n
    let inner = String::from(\"test\");\nlet ptr = inner.as_ptr();\n\nlet arc = Arc::new(inner);\nlet inner = Arc::unwrap_or_clone(arc);\n// The inner value was not cloned\nassert!(ptr::eq(ptr, inner.as_ptr()));\n\nlet arc = Arc::new(inner);\nlet arc2 = arc.clone();\nlet inner = Arc::unwrap_or_clone(arc);\n// Because there were 2 references, we had to clone the inner value.\nassert!(!ptr::eq(ptr, inner.as_ptr()));\n// `arc2` is the last reference, so when we unwrap it we get back\n// the original `String`.\nlet inner = Arc::unwrap_or_clone(arc2);\nassert!(ptr::eq(ptr, inner.as_ptr()));
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    1.4.0 · source

    pub fn get_mut(this: &mut Arc<T, A>) -> Option<&mut T>

    Returns a mutable reference into the given Arc, if there are\nno other Arc or Weak pointers to the same allocation.

    \n

    Returns None otherwise, because it is not safe to\nmutate a shared value.

    \n

    See also make_mut, which will clone\nthe inner value when there are other Arc pointers.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet mut x = Arc::new(3);\n*Arc::get_mut(&mut x).unwrap() = 4;\nassert_eq!(*x, 4);\n\nlet _y = Arc::clone(&x);\nassert!(Arc::get_mut(&mut x).is_none());
    \n
    source

    pub unsafe fn get_mut_unchecked(this: &mut Arc<T, A>) -> &mut T

    🔬This is a nightly-only experimental API. (get_mut_unchecked)

    Returns a mutable reference into the given Arc,\nwithout any check.

    \n

    See also get_mut, which is safe and does appropriate checks.

    \n
    §Safety
    \n

    If any other Arc or Weak pointers to the same allocation exist, then\nthey must not be dereferenced or have active borrows for the duration\nof the returned borrow, and their inner type must be exactly the same as the\ninner type of this Rc (including lifetimes). This is trivially the case if no\nsuch pointers exist, for example immediately after Arc::new.

    \n
    §Examples
    \n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet mut x = Arc::new(String::new());\nunsafe {\n    Arc::get_mut_unchecked(&mut x).push_str(\"foo\")\n}\nassert_eq!(*x, \"foo\");
    \n

    Other Arc pointers to the same allocation must be to the same type.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<str> = Arc::from(\"Hello, world!\");\nlet mut y: Arc<[u8]> = x.clone().into();\nunsafe {\n    // this is Undefined Behavior, because x's inner type is str, not [u8]\n    Arc::get_mut_unchecked(&mut y).fill(0xff); // 0xff is invalid in UTF-8\n}\nprintln!(\"{}\", &*x); // Invalid UTF-8 in a str
    \n

    Other Arc pointers to the same allocation must be to the exact same type, including lifetimes.

    \n\n
    #![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\n\nlet x: Arc<&str> = Arc::new(\"Hello, world!\");\n{\n    let s = String::from(\"Oh, no!\");\n    let mut y: Arc<&str> = x.clone().into();\n    unsafe {\n        // this is Undefined Behavior, because x's inner type\n        // is &'long str, not &'short str\n        *Arc::get_mut_unchecked(&mut y) = &s;\n    }\n}\nprintln!(\"{}\", &*x); // Use-after-free
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> Arc<T, A>
    where\n A: Allocator,

    source

    pub fn new_in(data: T, alloc: A) -> Arc<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T> in the provided allocator.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::new_in(5, System);
    \n
    source

    pub fn new_uninit_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents in the provided allocator.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(get_mut_unchecked)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::new_uninit_in(System);\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5)
    \n
    source

    pub fn new_zeroed_in(alloc: A) -> Arc<MaybeUninit<T>, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit)]\n#![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::new_zeroed_in(System);\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0)
    \n
    source

    pub fn pin_in(data: T, alloc: A) -> Pin<Arc<T, A>>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator. If T does not implement Unpin,\nthen data will be pinned in memory and unable to be moved.

    \n
    source

    pub fn try_pin_in(data: T, alloc: A) -> Result<Pin<Arc<T, A>>, AllocError>
    where\n A: 'static,

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Pin<Arc<T, A>> in the provided allocator, return an error if allocation\nfails.

    \n
    source

    pub fn try_new_in(data: T, alloc: A) -> Result<Arc<T, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc<T, A> in the provided allocator, returning an error if allocation fails.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet five = Arc::try_new_in(5, System)?;
    \n
    source

    pub fn try_new_uninit_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, in the provided allocator, returning an\nerror if allocation fails.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n#![feature(get_mut_unchecked)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet mut five = Arc::<u32, _>::try_new_uninit_in(System)?;\n\nlet five = unsafe {\n    // Deferred initialization:\n    Arc::get_mut_unchecked(&mut five).as_mut_ptr().write(5);\n\n    five.assume_init()\n};\n\nassert_eq!(*five, 5);
    \n
    source

    pub fn try_new_zeroed_in(alloc: A) -> Result<Arc<MaybeUninit<T>, A>, AllocError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new Arc with uninitialized contents, with the memory\nbeing filled with 0 bytes, in the provided allocator, returning an error if allocation\nfails.

    \n

    See MaybeUninit::zeroed for examples of correct and incorrect usage\nof this method.

    \n
    §Examples
    \n
    #![feature(new_uninit, allocator_api)]\n\nuse std::sync::Arc;\nuse std::alloc::System;\n\nlet zero = Arc::<u32, _>::try_new_zeroed_in(System)?;\nlet zero = unsafe { zero.assume_init() };\n\nassert_eq!(*zero, 0);
    \n
    1.4.0 · source

    pub fn try_unwrap(this: Arc<T, A>) -> Result<T, Arc<T, A>>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, an Err is returned with the same Arc that was\npassed in.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    It is strongly recommended to use Arc::into_inner instead if you don’t\nkeep the Arc in the Err case.\nImmediately dropping the Err-value, as the expression\nArc::try_unwrap(this).ok() does, can cause the strong count to\ndrop to zero and the inner value of the Arc to be dropped.\nFor instance, if two threads execute such an expression in parallel,\nthere is a race condition without the possibility of unsafety:\nThe threads could first both check whether they own the last instance\nin Arc::try_unwrap, determine that they both do not, and then both\ndiscard and drop their instance in the call to ok.\nIn this scenario, the value inside the Arc is safely destroyed\nby exactly one of the threads, but neither thread will ever be able\nto use the value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nassert_eq!(Arc::try_unwrap(x), Ok(3));\n\nlet x = Arc::new(4);\nlet _y = Arc::clone(&x);\nassert_eq!(*Arc::try_unwrap(x).unwrap_err(), 4);
    \n
    1.70.0 · source

    pub fn into_inner(this: Arc<T, A>) -> Option<T>

    Returns the inner value, if the Arc has exactly one strong reference.

    \n

    Otherwise, None is returned and the Arc is dropped.

    \n

    This will succeed even if there are outstanding weak references.

    \n

    If Arc::into_inner is called on every clone of this Arc,\nit is guaranteed that exactly one of the calls returns the inner value.\nThis means in particular that the inner value is not dropped.

    \n

    Arc::try_unwrap is conceptually similar to Arc::into_inner, but it\nis meant for different use-cases. If used as a direct replacement\nfor Arc::into_inner anyway, such as with the expression\nArc::try_unwrap(this).ok(), then it does\nnot give the same guarantee as described in the previous paragraph.\nFor more information, see the examples below and read the documentation\nof Arc::try_unwrap.

    \n
    §Examples
    \n

    Minimal example demonstrating the guarantee that Arc::into_inner gives.

    \n\n
    use std::sync::Arc;\n\nlet x = Arc::new(3);\nlet y = Arc::clone(&x);\n\n// Two threads calling `Arc::into_inner` on both clones of an `Arc`:\nlet x_thread = std::thread::spawn(|| Arc::into_inner(x));\nlet y_thread = std::thread::spawn(|| Arc::into_inner(y));\n\nlet x_inner_value = x_thread.join().unwrap();\nlet y_inner_value = y_thread.join().unwrap();\n\n// One of the threads is guaranteed to receive the inner value:\nassert!(matches!(\n    (x_inner_value, y_inner_value),\n    (None, Some(3)) | (Some(3), None)\n));\n// The result could also be `(None, None)` if the threads called\n// `Arc::try_unwrap(x).ok()` and `Arc::try_unwrap(y).ok()` instead.
    \n

    A more practical example demonstrating the need for Arc::into_inner:

    \n\n
    use std::sync::Arc;\n\n// Definition of a simple singly linked list using `Arc`:\n#[derive(Clone)]\nstruct LinkedList<T>(Option<Arc<Node<T>>>);\nstruct Node<T>(T, Option<Arc<Node<T>>>);\n\n// Dropping a long `LinkedList<T>` relying on the destructor of `Arc`\n// can cause a stack overflow. To prevent this, we can provide a\n// manual `Drop` implementation that does the destruction in a loop:\nimpl<T> Drop for LinkedList<T> {\n    fn drop(&mut self) {\n        let mut link = self.0.take();\n        while let Some(arc_node) = link.take() {\n            if let Some(Node(_value, next)) = Arc::into_inner(arc_node) {\n                link = next;\n            }\n        }\n    }\n}\n\n// Implementation of `new` and `push` omitted\nimpl<T> LinkedList<T> {\n    /* ... */\n}\n\n// The following code could have still caused a stack overflow\n// despite the manual `Drop` impl if that `Drop` impl had used\n// `Arc::try_unwrap(arc).ok()` instead of `Arc::into_inner(arc)`.\n\n// Create a long list and clone it\nlet mut x = LinkedList::new();\nlet size = 100000;\nfor i in 0..size {\n    x.push(i); // Adds i to the front of x\n}\nlet y = x.clone();\n\n// Drop the clones in parallel\nlet x_thread = std::thread::spawn(|| drop(x));\nlet y_thread = std::thread::spawn(|| drop(y));\nx_thread.join().unwrap();\ny_thread.join().unwrap();
    \n
    ",0,"massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> Archive for Arc<T>
    where\n T: ArchiveUnsized + ?Sized,

    §

    type Archived = ArchivedRc<<T as ArchiveUnsized>::Archived, ArcFlavor>

    The archived representation of this type. Read more
    §

    type Resolver = RcResolver<<T as ArchiveUnsized>::MetadataResolver>

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Arc<T> as Archive>::Resolver,\n out: *mut <Arc<T> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.64.0 · source§

    impl<T> AsFd for Arc<T>
    where\n T: AsFd + ?Sized,

    This impl allows implementing traits that require AsFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\n\ntrait MyTrait: AsFd {}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_fd(&self) -> BorrowedFd<'_>

    Borrows the file descriptor. Read more
    ","AsFd","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.63.0 · source§

    impl<T> AsRawFd for Arc<T>
    where\n T: AsRawFd,

    This impl allows implementing traits that require AsRawFd on Arc.

    \n\n
    use std::net::UdpSocket;\nuse std::sync::Arc;\ntrait MyTrait: AsRawFd {\n}\nimpl MyTrait for Arc<UdpSocket> {}\nimpl MyTrait for Box<UdpSocket> {}
    \n
    source§

    fn as_raw_fd(&self) -> i32

    Extracts the raw file descriptor. Read more
    ","AsRawFd","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.5.0 · source§

    impl<T, A> AsRef<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn as_ref(&self) -> &T

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Borrow<T> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    ","Borrow","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<M, P> BoundDataProvider<M> for Arc<P>
    where\n M: DataMarker,\n P: BoundDataProvider<M> + ?Sized,

    §

    fn load_bound(&self, req: DataRequest<'_>) -> Result<DataResponse<M>, DataError>

    Query the provider for data, returning the result. Read more
    §

    fn bound_key(&self) -> DataKey

    Returns the [DataKey] that this provider uses for loading data.
    ","BoundDataProvider","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> BufferProvider for Arc<T>
    where\n T: BufferProvider + ?Sized,

    §

    fn load_buffer(\n &self,\n key: DataKey,\n req: DataRequest<'_>,\n) -> Result<DataResponse<BufferMarker>, DataError>

    Loads a [DataPayload]<[BufferMarker]> according to the key and request.
    ","BufferProvider","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Clone for Arc<T, A>
    where\n A: Allocator + Clone,\n T: ?Sized,

    source§

    fn clone(&self) -> Arc<T, A>

    Makes a clone of the Arc pointer.

    \n

    This creates another pointer to the same allocation, increasing the\nstrong reference count.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nlet _ = Arc::clone(&five);
    \n
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<M, P> DataProvider<M> for Arc<P>
    where\n M: KeyedDataMarker,\n P: DataProvider<M> + ?Sized,

    §

    fn load(&self, req: DataRequest<'_>) -> Result<DataResponse<M>, DataError>

    Query the provider for data, returning the result. Read more
    ","DataProvider","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Debug for Arc<T, A>
    where\n T: Debug + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T> Default for Arc<T>
    where\n T: Default,

    source§

    fn default() -> Arc<T>

    Creates a new Arc<T>, with the Default value for T.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet x: Arc<i32> = Default::default();\nassert_eq!(*x, 0);
    \n
    ","Default","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Deref for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    §

    type Target = T

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &T

    Dereferences the value.
    ","Deref","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Arc<T>> for Arc<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Arc<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Arc>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Display for Arc<T, A>
    where\n T: Display + ?Sized,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Drop for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn drop(&mut self)

    Drops the Arc.

    \n

    This will decrement the strong reference count. If the strong reference\ncount reaches zero then the only other references (if any) are\nWeak, so we drop the inner value.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nstruct Foo;\n\nimpl Drop for Foo {\n    fn drop(&mut self) {\n        println!(\"dropped!\");\n    }\n}\n\nlet foo  = Arc::new(Foo);\nlet foo2 = Arc::clone(&foo);\n\ndrop(foo);    // Doesn't print anything\ndrop(foo2);   // Prints \"dropped!\"
    \n
    ","Drop","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<M, P> DynamicDataProvider<M> for Arc<P>
    where\n M: DataMarker,\n P: DynamicDataProvider<M> + ?Sized,

    §

    fn load_data(\n &self,\n key: DataKey,\n req: DataRequest<'_>,\n) -> Result<DataResponse<M>, DataError>

    Query the provider for data, returning the result. Read more
    ","DynamicDataProvider","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.52.0 · source§

    impl<T> Error for Arc<T>
    where\n T: Error + ?Sized,

    source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    source§

    fn provide<'a>(&'a self, req: &mut Request<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    ","Error","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.21.0 · source§

    impl<T, A> From<Box<T, A>> for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn from(v: Box<T, A>) -> Arc<T, A>

    Move a boxed object to a new, reference-counted allocation.

    \n
    §Example
    \n
    let unique: Box<str> = Box::from(\"eggplant\");\nlet shared: Arc<str> = Arc::from(unique);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.45.0 · source§

    impl<'a, B> From<Cow<'a, B>> for Arc<B>
    where\n B: ToOwned + ?Sized,\n Arc<B>: From<&'a B> + From<<B as ToOwned>::Owned>,

    source§

    fn from(cow: Cow<'a, B>) -> Arc<B>

    Create an atomically reference-counted pointer from\na clone-on-write pointer by copying its content.

    \n
    §Example
    \n
    let cow: Cow<'_, str> = Cow::Borrowed(\"eggplant\");\nlet shared: Arc<str> = Arc::from(cow);\nassert_eq!(\"eggplant\", &shared[..]);
    \n
    ","From>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.6.0 · source§

    impl<T> From<T> for Arc<T>

    source§

    fn from(t: T) -> Arc<T>

    Converts a T into an Arc<T>

    \n

    The conversion moves the value into a\nnewly allocated Arc. It is equivalent to\ncalling Arc::new(t).

    \n
    §Example
    \n
    let x = 5;\nlet arc = Arc::new(5);\n\nassert_eq!(Arc::from(x), arc);
    \n
    ","From","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Hash for Arc<T, A>
    where\n T: Hash + ?Sized,\n A: Allocator,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> JsonSchema for Arc<T>
    where\n T: JsonSchema + ?Sized,

    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    ","JsonSchema","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<Sp> LocalSpawn for Arc<Sp>
    where\n Sp: LocalSpawn + ?Sized,

    §

    fn spawn_local_obj(\n &self,\n future: LocalFutureObj<'static, ()>,\n) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status_local(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","LocalSpawn","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T> Log for Arc<T>
    where\n T: Log + ?Sized,

    source§

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Determines if a log message with the specified metadata would be\nlogged. Read more
    source§

    fn log(&self, record: &Record<'_>)

    Logs the Record. Read more
    source§

    fn flush(&self)

    Flushes any buffered records. Read more
    ","Log","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Ord for Arc<T, A>
    where\n T: Ord + ?Sized,\n A: Allocator,

    source§

    fn cmp(&self, other: &Arc<T, A>) -> Ordering

    Comparison for two Arcs.

    \n

    The two are compared by calling cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Ordering::Less, five.cmp(&Arc::new(6)));
    \n
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> PartialEq for Arc<T, A>
    where\n T: PartialEq + ?Sized,\n A: Allocator,

    source§

    fn eq(&self, other: &Arc<T, A>) -> bool

    Equality for two Arcs.

    \n

    Two Arcs are equal if their inner values are equal, even if they are\nstored in different allocation.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same allocation are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five == Arc::new(5));
    \n
    source§

    fn ne(&self, other: &Arc<T, A>) -> bool

    Inequality for two Arcs.

    \n

    Two Arcs are not equal if their inner values are not equal.

    \n

    If T also implements Eq (implying reflexivity of equality),\ntwo Arcs that point to the same value are always equal.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five != Arc::new(6));
    \n
    ","PartialEq","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> PartialOrd for Arc<T, A>
    where\n T: PartialOrd + ?Sized,\n A: Allocator,

    source§

    fn partial_cmp(&self, other: &Arc<T, A>) -> Option<Ordering>

    Partial comparison for two Arcs.

    \n

    The two are compared by calling partial_cmp() on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\nuse std::cmp::Ordering;\n\nlet five = Arc::new(5);\n\nassert_eq!(Some(Ordering::Less), five.partial_cmp(&Arc::new(6)));
    \n
    source§

    fn lt(&self, other: &Arc<T, A>) -> bool

    Less-than comparison for two Arcs.

    \n

    The two are compared by calling < on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five < Arc::new(6));
    \n
    source§

    fn le(&self, other: &Arc<T, A>) -> bool

    ‘Less than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling <= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five <= Arc::new(5));
    \n
    source§

    fn gt(&self, other: &Arc<T, A>) -> bool

    Greater-than comparison for two Arcs.

    \n

    The two are compared by calling > on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five > Arc::new(4));
    \n
    source§

    fn ge(&self, other: &Arc<T, A>) -> bool

    ‘Greater than or equal to’ comparison for two Arcs.

    \n

    The two are compared by calling >= on their inner values.

    \n
    §Examples
    \n
    use std::sync::Arc;\n\nlet five = Arc::new(5);\n\nassert!(five >= Arc::new(5));
    \n
    ","PartialOrd","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Pointer for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T, S> Serialize<S> for Arc<T>
    where\n T: SerializeUnsized<S> + 'static + ?Sized,\n S: Serializer + SharedSerializeRegistry + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<Arc<T> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, U> SerializeAs<Arc<T>> for Arc<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Arc<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<Request, S> Service<Request> for Arc<S>
    where\n S: Service<Request> + ?Sized,

    §

    type Response = <S as Service<Request>>::Response

    Responses given by the service.
    §

    type Error = <S as Service<Request>>::Error

    Errors produced by the service. Read more
    §

    type Future = <S as Service<Request>>::Future

    The future response value.
    §

    fn call(&self, req: Request) -> <Arc<S> as Service<Request>>::Future

    Process the request and return the response asynchronously.\ncall takes &self instead of mut &self because: Read more
    ","Service","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> SharedPointer for Arc<T>
    where\n T: ?Sized,

    §

    fn data_address(&self) -> *const ()

    Returns the data address for this shared pointer.
    ","SharedPointer","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<Sp> Spawn for Arc<Sp>
    where\n Sp: Spawn + ?Sized,

    §

    fn spawn_obj(&self, future: FutureObj<'static, ()>) -> Result<(), SpawnError>

    Spawns a future that will be run to completion. Read more
    §

    fn status(&self) -> Result<(), SpawnError>

    Determines whether the executor is able to spawn new tasks. Read more
    ","Spawn","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<S> Subscriber for Arc<S>
    where\n S: Subscriber + ?Sized,

    §

    fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

    Registers a new callsite with this subscriber, returning whether or not\nthe subscriber is interested in being notified about the callsite. Read more
    §

    fn enabled(&self, metadata: &Metadata<'_>) -> bool

    Returns true if a span or event with the specified metadata would be\nrecorded. Read more
    §

    fn max_level_hint(&self) -> Option<LevelFilter>

    Returns the highest verbosity level that this Subscriber will\nenable, or None, if the subscriber does not implement level-based\nfiltering or chooses not to implement this method. Read more
    §

    fn new_span(&self, span: &Attributes<'_>) -> Id

    Visit the construction of a new span, returning a new span ID for the\nspan being constructed. Read more
    §

    fn record(&self, span: &Id, values: &Record<'_>)

    Record a set of values on a span. Read more
    §

    fn record_follows_from(&self, span: &Id, follows: &Id)

    Adds an indication that span follows from the span with the id\nfollows. Read more
    §

    fn event_enabled(&self, event: &Event<'_>) -> bool

    Determine if an [Event] should be recorded. Read more
    §

    fn event(&self, event: &Event<'_>)

    Records that an Event has occurred. Read more
    §

    fn enter(&self, span: &Id)

    Records that a span has been entered. Read more
    §

    fn exit(&self, span: &Id)

    Records that a span has been exited. Read more
    §

    fn clone_span(&self, id: &Id) -> Id

    Notifies the subscriber that a span ID has been cloned. Read more
    §

    fn try_close(&self, id: Id) -> bool

    Notifies the subscriber that a span ID has been dropped, and returns\ntrue if there are now 0 IDs that refer to that span. Read more
    §

    fn drop_span(&self, id: Id)

    👎Deprecated since 0.1.2: use Subscriber::try_close instead
    This method is deprecated. Read more
    §

    fn current_span(&self) -> Current

    Returns a type representing this subscriber’s view of the current span. Read more
    §

    unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>

    If self is the same type as the provided TypeId, returns an untyped\n*const pointer to that type. Otherwise, returns None. Read more
    §

    fn on_register_dispatch(&self, subscriber: &Dispatch)

    Invoked when this subscriber becomes a [Dispatch]. Read more
    ","Subscriber","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> ToPathSegments for Arc<T>
    where\n T: ToPathSegments + ?Sized,

    §

    fn to_path_segments(&self) -> Result<PathSegments, PathSegmentError>

    Convert to [PathSegments].
    ","ToPathSegments","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> WasmModuleResources for Arc<T>
    where\n T: WasmModuleResources,

    §

    fn table_at(&self, at: u32) -> Option<TableType>

    Returns the table at given index if any. Read more
    §

    fn memory_at(&self, at: u32) -> Option<MemoryType>

    Returns the linear memory at given index.
    §

    fn tag_at(&self, at: u32) -> Option<&FuncType>

    Returns the tag at given index. Read more
    §

    fn global_at(&self, at: u32) -> Option<GlobalType>

    Returns the global variable at given index. Read more
    §

    fn sub_type_at(&self, type_idx: u32) -> Option<&SubType>

    Returns the SubType associated with the given type index. Read more
    §

    fn type_id_of_function(&self, func_idx: u32) -> Option<CoreTypeId>

    Returns the type id associated with the given function\nindex.
    §

    fn type_of_function(&self, func_idx: u32) -> Option<&FuncType>

    Returns the FuncType associated with the given function index. Read more
    §

    fn check_heap_type(\n &self,\n t: &mut HeapType,\n offset: usize,\n) -> Result<(), BinaryReaderError>

    Checks that a HeapType is valid and then additionally place it in its\ncanonical form. Read more
    §

    fn top_type(&self, heap_type: &HeapType) -> HeapType

    Get the top type for the given heap type.
    §

    fn element_type_at(&self, at: u32) -> Option<RefType>

    Returns the element type at the given index. Read more
    §

    fn is_subtype(&self, a: ValType, b: ValType) -> bool

    Is a a subtype of b?
    §

    fn element_count(&self) -> u32

    Returns the number of elements.
    §

    fn data_count(&self) -> Option<u32>

    Returns the number of bytes in the Wasm data section.
    §

    fn is_function_referenced(&self, idx: u32) -> bool

    Returns whether the function index is referenced in the module anywhere\noutside of the start/function sections.
    §

    fn check_value_type(\n &self,\n t: &mut ValType,\n features: &WasmFeatures,\n offset: usize,\n) -> Result<(), BinaryReaderError>

    Check and canonicalize a value type. Read more
    §

    fn check_ref_type(\n &self,\n ref_type: &mut RefType,\n offset: usize,\n) -> Result<(), BinaryReaderError>

    Check and canonicalize a reference type.
    ","WasmModuleResources","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<'a, T> Writeable for Arc<T>
    where\n T: Writeable + ?Sized,

    §

    fn write_to<W>(&self, sink: &mut W) -> Result<(), Error>
    where\n W: Write + ?Sized,

    Writes a string to the given sink. Errors from the sink are bubbled up.\nThe default implementation delegates to write_to_parts, and discards any\nPart annotations.
    §

    fn write_to_parts<W>(&self, sink: &mut W) -> Result<(), Error>
    where\n W: PartsWrite + ?Sized,

    Write bytes and Part annotations to the given sink. Errors from the\nsink are bubbled up. The default implementation delegates to write_to,\nand doesn’t produce any Part annotations.
    §

    fn writeable_length_hint(&self) -> LengthHint

    Returns a hint for the number of UTF-8 bytes that will be written to the sink. Read more
    §

    fn write_to_string(&self) -> Cow<'_, str>

    Creates a new String with the data from this Writeable. Like ToString,\nbut smaller and faster. Read more
    §

    fn writeable_cmp_bytes(&self, other: &[u8]) -> Ordering

    Compares the contents of this Writeable to the given bytes\nwithout allocating a String to hold the Writeable contents. Read more
    ","Writeable","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> CartablePointerLike for Arc<T>

    ","CartablePointerLike","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> CloneStableDeref for Arc<T>
    where\n T: ?Sized,

    ","CloneStableDeref","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> CloneableCart for Arc<T>
    where\n T: ?Sized,

    ","CloneableCart","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> CloneableCartablePointerLike for Arc<T>

    ","CloneableCartablePointerLike","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, U, A> CoerceUnsized<Arc<U, A>> for Arc<T, A>
    where\n T: Unsize<U> + ?Sized,\n A: Allocator,\n U: ?Sized,

    ","CoerceUnsized>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, A> DerefPure for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","DerefPure","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    source§

    impl<T, U> DispatchFromDyn<Arc<U>> for Arc<T>
    where\n T: Unsize<U> + ?Sized,\n U: ?Sized,

    ","DispatchFromDyn>","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Eq for Arc<T, A>
    where\n T: Eq + ?Sized,\n A: Allocator,

    ","Eq","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Send for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Send,

    ","Send","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    §

    impl<T> StableDeref for Arc<T>
    where\n T: ?Sized,

    ","StableDeref","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.0.0 · source§

    impl<T, A> Sync for Arc<T, A>
    where\n T: Sync + Send + ?Sized,\n A: Allocator + Sync,

    ","Sync","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.33.0 · source§

    impl<T, A> Unpin for Arc<T, A>
    where\n A: Allocator,\n T: ?Sized,

    ","Unpin","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"],["
    1.9.0 · source§

    impl<T, A> UnwindSafe for Arc<T, A>
    where\n T: RefUnwindSafe + ?Sized,\n A: Allocator + UnwindSafe,

    ","UnwindSafe","massa_protocol_worker::handlers::block_handler::cache::SharedBlockCache","massa_protocol_worker::handlers::endorsement_handler::cache::SharedEndorsementCache","massa_protocol_worker::handlers::operation_handler::cache::SharedOperationCache","massa_protocol_worker::handlers::peer_handler::models::SharedPeerDB"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/alloc/vec/struct.Vec.js b/type.impl/alloc/vec/struct.Vec.js index 53b00212055..d1c5612b85b 100644 --- a/type.impl/alloc/vec/struct.Vec.js +++ b/type.impl/alloc/vec/struct.Vec.js @@ -1,4 +1,4 @@ (function() {var type_impls = { -"massa_db_exports":[["
    §

    impl<T> ArrayLike for Vec<T>

    §

    type Item = T

    Type of the elements being stored.
    ","ArrayLike","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.5.0 · source§

    impl<T, A> AsMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut [T]

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.5.0 · source§

    impl<T, A> AsMut<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut Vec<T, A>

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> AsRef<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &[T]

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> AsRef<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &Vec<T, A>

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl AsyncWrite for Vec<u8>

    §

    fn poll_write(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from bufs into the object using vectored\nIO operations. Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_close(\n self: Pin<&mut Vec<u8>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to close the object. Read more
    ","AsyncWrite","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl AsyncWrite for Vec<u8>

    §

    fn poll_write(\n self: Pin<&mut Vec<u8>>,\n _cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Like poll_write, except that it writes from a slice of buffers. Read more
    §

    fn is_write_vectored(&self) -> bool

    Determines if this writer has an efficient poll_write_vectored\nimplementation. Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<u8>>,\n _cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_shutdown(\n self: Pin<&mut Vec<u8>>,\n _cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Initiates or attempts to shut down this writer, returning success when\nthe I/O connection has completely shut down. Read more
    ","AsyncWrite","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Borrow<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow(&self) -> &[T]

    Immutably borrows from an owned value. Read more
    ","Borrow<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> BorrowMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow_mut(&mut self) -> &mut [T]

    Mutably borrows from an owned value. Read more
    ","BorrowMut<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl BufMut for Vec<u8>

    §

    fn remaining_mut(&self) -> usize

    Returns the number of bytes that can be written from the current\nposition until the end of the buffer is reached. Read more
    §

    unsafe fn advance_mut(&mut self, cnt: usize)

    Advance the internal cursor of the BufMut Read more
    §

    fn chunk_mut(&mut self) -> &mut UninitSlice

    Returns a mutable slice starting at the current BufMut position and of\nlength between 0 and BufMut::remaining_mut(). Note that this can be shorter than the\nwhole remainder of the buffer (this allows non-continuous implementation). Read more
    §

    fn put<T>(&mut self, src: T)
    where\n T: Buf,\n Vec<u8>: Sized,

    Transfer bytes into self from src and advance the cursor by the\nnumber of bytes written. Read more
    §

    fn put_slice(&mut self, src: &[u8])

    Transfer bytes into self from src and advance the cursor by the\nnumber of bytes written. Read more
    §

    fn put_bytes(&mut self, val: u8, cnt: usize)

    Put cnt bytes val into self. Read more
    §

    fn has_remaining_mut(&self) -> bool

    Returns true if there is space in self for more bytes. Read more
    §

    fn put_u8(&mut self, n: u8)

    Writes an unsigned 8 bit integer to self. Read more
    §

    fn put_i8(&mut self, n: i8)

    Writes a signed 8 bit integer to self. Read more
    §

    fn put_u16(&mut self, n: u16)

    Writes an unsigned 16 bit integer to self in big-endian byte order. Read more
    §

    fn put_u16_le(&mut self, n: u16)

    Writes an unsigned 16 bit integer to self in little-endian byte order. Read more
    §

    fn put_u16_ne(&mut self, n: u16)

    Writes an unsigned 16 bit integer to self in native-endian byte order. Read more
    §

    fn put_i16(&mut self, n: i16)

    Writes a signed 16 bit integer to self in big-endian byte order. Read more
    §

    fn put_i16_le(&mut self, n: i16)

    Writes a signed 16 bit integer to self in little-endian byte order. Read more
    §

    fn put_i16_ne(&mut self, n: i16)

    Writes a signed 16 bit integer to self in native-endian byte order. Read more
    §

    fn put_u32(&mut self, n: u32)

    Writes an unsigned 32 bit integer to self in big-endian byte order. Read more
    §

    fn put_u32_le(&mut self, n: u32)

    Writes an unsigned 32 bit integer to self in little-endian byte order. Read more
    §

    fn put_u32_ne(&mut self, n: u32)

    Writes an unsigned 32 bit integer to self in native-endian byte order. Read more
    §

    fn put_i32(&mut self, n: i32)

    Writes a signed 32 bit integer to self in big-endian byte order. Read more
    §

    fn put_i32_le(&mut self, n: i32)

    Writes a signed 32 bit integer to self in little-endian byte order. Read more
    §

    fn put_i32_ne(&mut self, n: i32)

    Writes a signed 32 bit integer to self in native-endian byte order. Read more
    §

    fn put_u64(&mut self, n: u64)

    Writes an unsigned 64 bit integer to self in the big-endian byte order. Read more
    §

    fn put_u64_le(&mut self, n: u64)

    Writes an unsigned 64 bit integer to self in little-endian byte order. Read more
    §

    fn put_u64_ne(&mut self, n: u64)

    Writes an unsigned 64 bit integer to self in native-endian byte order. Read more
    §

    fn put_i64(&mut self, n: i64)

    Writes a signed 64 bit integer to self in the big-endian byte order. Read more
    §

    fn put_i64_le(&mut self, n: i64)

    Writes a signed 64 bit integer to self in little-endian byte order. Read more
    §

    fn put_i64_ne(&mut self, n: i64)

    Writes a signed 64 bit integer to self in native-endian byte order. Read more
    §

    fn put_u128(&mut self, n: u128)

    Writes an unsigned 128 bit integer to self in the big-endian byte order. Read more
    §

    fn put_u128_le(&mut self, n: u128)

    Writes an unsigned 128 bit integer to self in little-endian byte order. Read more
    §

    fn put_u128_ne(&mut self, n: u128)

    Writes an unsigned 128 bit integer to self in native-endian byte order. Read more
    §

    fn put_i128(&mut self, n: i128)

    Writes a signed 128 bit integer to self in the big-endian byte order. Read more
    §

    fn put_i128_le(&mut self, n: i128)

    Writes a signed 128 bit integer to self in little-endian byte order. Read more
    §

    fn put_i128_ne(&mut self, n: i128)

    Writes a signed 128 bit integer to self in native-endian byte order. Read more
    §

    fn put_uint(&mut self, n: u64, nbytes: usize)

    Writes an unsigned n-byte integer to self in big-endian byte order. Read more
    §

    fn put_uint_le(&mut self, n: u64, nbytes: usize)

    Writes an unsigned n-byte integer to self in the little-endian byte order. Read more
    §

    fn put_uint_ne(&mut self, n: u64, nbytes: usize)

    Writes an unsigned n-byte integer to self in the native-endian byte order. Read more
    §

    fn put_int(&mut self, n: i64, nbytes: usize)

    Writes low nbytes of a signed integer to self in big-endian byte order. Read more
    §

    fn put_int_le(&mut self, n: i64, nbytes: usize)

    Writes low nbytes of a signed integer to self in little-endian byte order. Read more
    §

    fn put_int_ne(&mut self, n: i64, nbytes: usize)

    Writes low nbytes of a signed integer to self in native-endian byte order. Read more
    §

    fn put_f32(&mut self, n: f32)

    Writes an IEEE754 single-precision (4 bytes) floating point number to\nself in big-endian byte order. Read more
    §

    fn put_f32_le(&mut self, n: f32)

    Writes an IEEE754 single-precision (4 bytes) floating point number to\nself in little-endian byte order. Read more
    §

    fn put_f32_ne(&mut self, n: f32)

    Writes an IEEE754 single-precision (4 bytes) floating point number to\nself in native-endian byte order. Read more
    §

    fn put_f64(&mut self, n: f64)

    Writes an IEEE754 double-precision (8 bytes) floating point number to\nself in big-endian byte order. Read more
    §

    fn put_f64_le(&mut self, n: f64)

    Writes an IEEE754 double-precision (8 bytes) floating point number to\nself in little-endian byte order. Read more
    §

    fn put_f64_ne(&mut self, n: f64)

    Writes an IEEE754 double-precision (8 bytes) floating point number to\nself in native-endian byte order. Read more
    §

    fn limit(self, limit: usize) -> Limit<Self>
    where\n Self: Sized,

    Creates an adaptor which can write at most limit bytes to self. Read more
    §

    fn writer(self) -> Writer<Self>
    where\n Self: Sized,

    Creates an adaptor which implements the Write trait for self. Read more
    §

    fn chain_mut<U>(self, next: U) -> Chain<Self, U>
    where\n U: BufMut,\n Self: Sized,

    Creates an adapter which will chain this buffer with another. Read more
    ","BufMut","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Clone for Vec<T, A>
    where\n T: Clone,\n A: Allocator + Clone,

    source§

    fn clone_from(&mut self, source: &Vec<T, A>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible. Additionally, if the element type\nT overrides clone_from(), this will reuse the resources of self’s\nelements as well.

    \n
    §Examples
    \n
    let x = vec![5, 6, 7];\nlet mut y = vec![8, 9, 10];\nlet yp: *const i32 = y.as_ptr();\n\ny.clone_from(&x);\n\n// The value is the same\nassert_eq!(x, y);\n\n// And no reallocation occurred\nassert_eq!(yp, y.as_ptr());
    \n
    source§

    fn clone(&self) -> Vec<T, A>

    Returns a copy of the value. Read more
    ","Clone","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Debug for Vec<T, A>
    where\n T: Debug,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl DecodeTarget for Vec<u8>

    §

    fn decode_with(\n &mut self,\n max_len: usize,\n f: impl for<'a> FnOnce(&'a mut [u8]) -> Result<usize, Error>,\n) -> Result<usize, Error>

    Decodes into this buffer, provides the maximum length for implementations that wish to\npreallocate space, along with a function that will write bytes into the buffer and return\nthe length written to it.
    ","DecodeTarget","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T> Default for Vec<T>

    source§

    fn default() -> Vec<T>

    Creates an empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    ","Default","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Deref for Vec<T, A>
    where\n A: Allocator,

    §

    type Target = [T]

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &[T]

    Dereferences the value.
    ","Deref","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> DerefMut for Vec<T, A>
    where\n A: Allocator,

    source§

    fn deref_mut(&mut self) -> &mut [T]

    Mutably dereferences the value.
    ","DerefMut","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<'de, T> Deserialize<'de> for Vec<T>
    where\n T: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Vec<T>> for Vec<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Drop for Vec<T, A>
    where\n A: Allocator,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl EncodeTarget for Vec<u8>

    §

    fn encode_with(\n &mut self,\n max_len: usize,\n f: impl for<'a> FnOnce(&'a mut [u8]) -> Result<usize, Error>,\n) -> Result<usize, Error>

    Encodes into this buffer, provides the maximum length for implementations that wish to\npreallocate space, along with a function that will encode ASCII bytes into the buffer and\nreturn the length written to it.
    ","EncodeTarget","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.2.0 · source§

    impl<'a, T, A> Extend<&'a T> for Vec<T, A>
    where\n T: Copy + 'a,\n A: Allocator,

    Extend implementation that copies elements out of references before pushing them onto the Vec.

    \n

    This implementation is specialized for slice iterators, where it uses copy_from_slice to\nappend the entire slice at once.

    \n
    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Extend<T> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T> From<&[T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&[T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&[T; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl From<&OperationPrefixId> for Vec<u8>

    §

    fn from(prefix: &OperationPrefixId) -> Vec<u8>

    Converts to this type from the input type.
    ","From<&OperationPrefixId>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.19.0 · source§

    impl<T> From<&mut [T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&mut [T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&mut [T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&mut [T; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl From<&str> for Vec<u8>

    source§

    fn from(s: &str) -> Vec<u8>

    Allocate a Vec<u8> and fill it with a UTF-8 string.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(\"123\"), vec![b'1', b'2', b'3']);
    \n
    ","From<&str>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.44.0 · source§

    impl<T, const N: usize> From<[T; N]> for Vec<T>

    source§

    fn from(s: [T; N]) -> Vec<T>

    Allocate a Vec<T> and move s’s items into it.

    \n
    §Examples
    \n
    assert_eq!(Vec::from([1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<[T; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.5.0 · source§

    impl<T, A> From<BinaryHeap<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(heap: BinaryHeap<T, A>) -> Vec<T, A>

    Converts a BinaryHeap<T> into a Vec<T>.

    \n

    This conversion requires no data movement or allocation, and has\nconstant time complexity.

    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T, O> From<BitVec<T, O>> for Vec<T>
    where\n T: BitStore,\n O: BitOrder,

    §

    fn from(bv: BitVec<T, O>) -> Vec<T>

    Converts to this type from the input type.
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.18.0 · source§

    impl<T, A> From<Box<[T], A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(s: Box<[T], A>) -> Vec<T, A>

    Convert a boxed slice into a vector by transferring ownership of\nthe existing heap allocation.

    \n
    §Examples
    \n
    let b: Box<[i32]> = vec![1, 2, 3].into_boxed_slice();\nassert_eq!(Vec::from(b), vec![1, 2, 3]);
    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl From<Bytes> for Vec<u8>

    §

    fn from(bytes: Bytes) -> Vec<u8>

    Converts to this type from the input type.
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl From<BytesMut> for Vec<u8>

    §

    fn from(bytes: BytesMut) -> Vec<u8>

    Converts to this type from the input type.
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.7.0 · source§

    impl From<CString> for Vec<u8>

    source§

    fn from(s: CString) -> Vec<u8>

    Converts a CString into a Vec<u8>.

    \n

    The conversion consumes the CString, and removes the terminating NUL byte.

    \n
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.14.0 · source§

    impl<'a, T> From<Cow<'a, [T]>> for Vec<T>
    where\n [T]: ToOwned<Owned = Vec<T>>,

    source§

    fn from(s: Cow<'a, [T]>) -> Vec<T>

    Convert a clone-on-write slice into a vector.

    \n

    If s already owns a Vec<T>, it will be returned directly.\nIf s is borrowing a slice, a new Vec<T> will be allocated and\nfilled by cloning s’s items into it.

    \n
    §Examples
    \n
    let o: Cow<'_, [i32]> = Cow::Owned(vec![1, 2, 3]);\nlet b: Cow<'_, [i32]> = Cow::Borrowed(&[1, 2, 3]);\nassert_eq!(Vec::from(o), Vec::from(b));
    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.14.0 · source§

    impl From<String> for Vec<u8>

    source§

    fn from(string: String) -> Vec<u8>

    Converts the given String to a vector Vec that holds values of type u8.

    \n
    §Examples
    \n
    let s1 = String::from(\"hello world\");\nlet v1 = Vec::from(s1);\n\nfor b in v1 {\n    println!(\"{b}\");\n}
    \n
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.10.0 · source§

    impl<T, A> From<VecDeque<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(other: VecDeque<T, A>) -> Vec<T, A>

    Turn a VecDeque<T> into a Vec<T>.

    \n

    This never needs to re-allocate, but does need to do O(n) data movement if\nthe circular buffer doesn’t happen to be at the beginning of the allocation.

    \n
    §Examples
    \n
    use std::collections::VecDeque;\n\n// This one is *O*(1).\nlet deque: VecDeque<_> = (1..5).collect();\nlet ptr = deque.as_slices().0.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);\n\n// This one needs data rearranging.\nlet mut deque: VecDeque<_> = (1..5).collect();\ndeque.push_front(9);\ndeque.push_front(8);\nlet ptr = deque.as_slices().1.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [8, 9, 1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);
    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T> FromIterator<T> for Vec<T>

    Collects an iterator into a Vec, commonly called via Iterator::collect()

    \n

    §Allocation behavior

    \n

    In general Vec does not guarantee any particular growth or allocation strategy.\nThat also applies to this trait impl.

    \n

    Note: This section covers implementation details and is therefore exempt from\nstability guarantees.

    \n

    Vec may use any or none of the following strategies,\ndepending on the supplied iterator:

    \n
      \n
    • preallocate based on Iterator::size_hint()\n
        \n
      • and panic if the number of items is outside the provided lower/upper bounds
      • \n
      \n
    • \n
    • use an amortized growth strategy similar to pushing one item at a time
    • \n
    • perform the iteration in-place on the original allocation backing the iterator
    • \n
    \n

    The last case warrants some attention. It is an optimization that in many cases reduces peak memory\nconsumption and improves cache locality. But when big, short-lived allocations are created,\nonly a small fraction of their items get collected, no further use is made of the spare capacity\nand the resulting Vec is moved into a longer-lived structure, then this can lead to the large\nallocations having their lifetimes unnecessarily extended which can result in increased memory\nfootprint.

    \n

    In cases where this is an issue, the excess capacity can be discarded with Vec::shrink_to(),\nVec::shrink_to_fit() or by collecting into Box<[T]> instead, which additionally reduces\nthe size of the long-lived struct.

    \n\n
    static LONG_LIVED: Mutex<Vec<Vec<u16>>> = Mutex::new(Vec::new());\n\nfor i in 0..10 {\n    let big_temporary: Vec<u16> = (0..1024).collect();\n    // discard most items\n    let mut result: Vec<_> = big_temporary.into_iter().filter(|i| i % 100 == 0).collect();\n    // without this a lot of unused capacity might be moved into the global\n    result.shrink_to_fit();\n    LONG_LIVED.lock().unwrap().push(result);\n}
    \n
    source§

    fn from_iter<I>(iter: I) -> Vec<T>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Hash for Vec<T, A>
    where\n T: Hash,\n A: Allocator,

    The hash of a vector is the same as that of the corresponding slice,\nas required by the core::borrow::Borrow implementation.

    \n\n
    use std::hash::BuildHasher;\n\nlet b = std::hash::RandomState::new();\nlet v: Vec<u8> = vec![0xa8, 0x3c, 0x09];\nlet s: &[u8] = &[0xa8, 0x3c, 0x09];\nassert_eq!(b.hash_one(v), b.hash_one(s));
    \n
    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, I, A> Index<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    §

    type Output = <I as SliceIndex<[T]>>::Output

    The returned type after indexing.
    source§

    fn index(&self, index: I) -> &<Vec<T, A> as Index<I>>::Output

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, I, A> IndexMut<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    source§

    fn index_mut(&mut self, index: I) -> &mut <Vec<T, A> as Index<I>>::Output

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<'de, T, E> IntoDeserializer<'de, E> for Vec<T>
    where\n T: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<Vec<T> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(self) -> <Vec<T> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> IntoIterator for Vec<T, A>
    where\n A: Allocator,

    source§

    fn into_iter(self) -> <Vec<T, A> as IntoIterator>::IntoIter

    Creates a consuming iterator, that is, one that moves each value out of\nthe vector (from start to end). The vector cannot be used after calling\nthis.

    \n
    §Examples
    \n
    let v = vec![\"a\".to_string(), \"b\".to_string()];\nlet mut v_iter = v.into_iter();\n\nlet first_element: Option<String> = v_iter.next();\n\nassert_eq!(first_element, Some(\"a\".to_string()));\nassert_eq!(v_iter.next(), Some(\"b\".to_string()));\nassert_eq!(v_iter.next(), None);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl IntoResponse for Vec<u8>

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl Message for Vec<u8>

    google.protobuf.BytesValue

    \n
    source§

    fn encoded_len(&self) -> usize

    Returns the encoded length of the message without a length delimiter.
    source§

    fn clear(&mut self)

    Clears the message, resetting all fields to their default.
    source§

    fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
    where\n Self: Sized,

    Encodes the message to a buffer. Read more
    source§

    fn encode_to_vec(&self) -> Vec<u8>
    where\n Self: Sized,

    Encodes the message to a newly allocated buffer.
    source§

    fn encode_length_delimited(\n &self,\n buf: &mut impl BufMut,\n) -> Result<(), EncodeError>
    where\n Self: Sized,

    Encodes the message with a length-delimiter to a buffer. Read more
    source§

    fn encode_length_delimited_to_vec(&self) -> Vec<u8>
    where\n Self: Sized,

    Encodes the message with a length-delimiter to a newly allocated buffer.
    source§

    fn decode(buf: impl Buf) -> Result<Self, DecodeError>
    where\n Self: Default,

    Decodes an instance of the message from a buffer. Read more
    source§

    fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
    where\n Self: Default,

    Decodes a length-delimited instance of the message from the buffer.
    source§

    fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
    where\n Self: Sized,

    Decodes an instance of the message from a buffer, and merges it into self. Read more
    source§

    fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>
    where\n Self: Sized,

    Decodes a length-delimited instance of the message from buffer, and\nmerges it into self.
    ","Message","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Ord for Vec<T, A>
    where\n T: Ord,\n A: Allocator,

    Implements ordering of vectors, lexicographically.

    \n
    source§

    fn cmp(&self, other: &Vec<T, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<&[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&mut [U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&mut [U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&mut [U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&mut [U]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.48.0 · source§

    impl<T, U, A> PartialEq<[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialEq<Bytes> for Vec<u8>

    §

    fn eq(&self, other: &Bytes) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialEq<BytesMut> for Vec<u8>

    §

    fn eq(&self, other: &BytesMut) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A1, A2> PartialEq<Vec<U, A2>> for Vec<T, A1>
    where\n A1: Allocator,\n A2: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &Vec<U, A2>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &Vec<U, A2>) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialOrd<Bytes> for Vec<u8>

    §

    fn partial_cmp(&self, other: &Bytes) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialOrd<BytesMut> for Vec<u8>

    §

    fn partial_cmp(&self, other: &BytesMut) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A1, A2> PartialOrd<Vec<T, A2>> for Vec<T, A1>
    where\n T: PartialOrd,\n A1: Allocator,\n A2: Allocator,

    Implements comparison of vectors, lexicographically.

    \n
    source§

    fn partial_cmp(&self, other: &Vec<T, A2>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T> Serialize for Vec<T>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, U> SerializeAs<Vec<T>> for Vec<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Vec<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T> Sink<T> for Vec<T>

    §

    type Error = Infallible

    The type of value produced by the sink when an error occurs.
    §

    fn poll_ready(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Attempts to prepare the Sink to receive a value. Read more
    §

    fn start_send(\n self: Pin<&mut Vec<T>>,\n item: T,\n) -> Result<(), <Vec<T> as Sink<T>>::Error>

    Begin the process of sending a value to the sink.\nEach call to this function must be preceded by a successful call to\npoll_ready which returned Poll::Ready(Ok(())). Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output from this sink. Read more
    §

    fn poll_close(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output and close this sink, if necessary. Read more
    ","Sink","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T> Source for Vec<T>
    where\n T: Source + Sync + Send + Clone + 'static,

    §

    fn clone_into_box(&self) -> Box<dyn Source + Send + Sync>

    §

    fn collect(&self) -> Result<HashMap<String, Value>, ConfigError>

    Collect all configuration properties available from this source and return\na Map.
    §

    fn collect_to(&self, cache: &mut Value) -> Result<(), ConfigError>

    Collects all configuration properties to a provided cache.
    ","Source","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T> Vec<T>

    1.0.0 (const: 1.39.0) · source

    pub const fn new() -> Vec<T>

    Constructs a new, empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> Vec<T>

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<()>::with_capacity(10);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity(capacity: usize) -> Result<Vec<T>, TryReserveError>

    🔬This is a nightly-only experimental API. (try_with_capacity)

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    1.0.0 · source

    pub unsafe fn from_raw_parts(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n) -> Vec<T>

    Creates a Vec<T> directly from a pointer, a length, and a capacity.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must have been allocated using the global allocator, such as via\nthe alloc::alloc function.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to be the capacity that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is normally not safe\nto build a Vec<u8> from a pointer to a C char array with length\nsize_t, doing so is only safe if the array was initially allocated by\na Vec or String.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1. To avoid\nthese issues, it is often preferable to do casting/transmuting using\nslice::from_raw_parts instead.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    use std::ptr;\nuse std::mem;\n\nlet v = vec![1, 2, 3];\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts(p, len, cap);\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    use std::alloc::{alloc, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = alloc(layout).cast::<u32>();\n        if mem.is_null() {\n            return;\n        }\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts(mem, 1, 16)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: Clone,\n A: Allocator,

    1.5.0 · source

    pub fn resize(&mut self, new_len: usize, value: T)

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with value.\nIf new_len is less than len, the Vec is simply truncated.

    \n

    This method requires T to implement Clone,\nin order to be able to clone the passed value.\nIf you need more flexibility (or want to rely on Default instead of\nClone), use Vec::resize_with.\nIf you only need to resize to a smaller size, use Vec::truncate.

    \n
    §Examples
    \n
    let mut vec = vec![\"hello\"];\nvec.resize(3, \"world\");\nassert_eq!(vec, [\"hello\", \"world\", \"world\"]);\n\nlet mut vec = vec![1, 2, 3, 4];\nvec.resize(2, 0);\nassert_eq!(vec, [1, 2]);
    \n
    1.6.0 · source

    pub fn extend_from_slice(&mut self, other: &[T])

    Clones and appends all elements in a slice to the Vec.

    \n

    Iterates over the slice other, clones each element, and then appends\nit to this Vec. The other slice is traversed in-order.

    \n

    Note that this function is same as extend except that it is\nspecialized to work with slices instead. If and when Rust gets\nspecialization this function will likely be deprecated (but still\navailable).

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.extend_from_slice(&[2, 3, 4]);\nassert_eq!(vec, [1, 2, 3, 4]);
    \n
    1.53.0 · source

    pub fn extend_from_within<R>(&mut self, src: R)
    where\n R: RangeBounds<usize>,

    Copies elements from src range to the end of the vector.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut vec = vec![0, 1, 2, 3, 4];\n\nvec.extend_from_within(2..);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4]);\n\nvec.extend_from_within(..2);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1]);\n\nvec.extend_from_within(4..8);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1, 4, 2, 3, 4]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: PartialEq,\n A: Allocator,

    1.0.0 · source

    pub fn dedup(&mut self)

    Removes consecutive repeated elements in the vector according to the\nPartialEq trait implementation.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 2, 3, 2];\n\nvec.dedup();\n\nassert_eq!(vec, [1, 2, 3, 2]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    1.21.0 · source

    pub fn splice<R, I>(\n &mut self,\n range: R,\n replace_with: I,\n) -> Splice<'_, <I as IntoIterator>::IntoIter, A>
    where\n R: RangeBounds<usize>,\n I: IntoIterator<Item = T>,

    Creates a splicing iterator that replaces the specified range in the vector\nwith the given replace_with iterator and yields the removed items.\nreplace_with does not need to be the same length as range.

    \n

    range is removed even if the iterator is not consumed until the end.

    \n

    It is unspecified how many elements are removed from the vector\nif the Splice value is leaked.

    \n

    The input iterator replace_with is only consumed when the Splice value is dropped.

    \n

    This is optimal if:

    \n
      \n
    • The tail (elements in the vector after range) is empty,
    • \n
    • or replace_with yields fewer or equal elements than range’s length
    • \n
    • or the lower bound of its size_hint() is exact.
    • \n
    \n

    Otherwise, a temporary vector is allocated and the tail is moved twice.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3, 4];\nlet new = [7, 8, 9];\nlet u: Vec<_> = v.splice(1..3, new).collect();\nassert_eq!(v, &[1, 7, 8, 9, 4]);\nassert_eq!(u, &[2, 3]);
    \n
    source

    pub fn extract_if<F>(&mut self, filter: F) -> ExtractIf<'_, T, F, A>
    where\n F: FnMut(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, then the element is removed and yielded.\nIf the closure returns false, the element will remain in the vector and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n

    Using this method is equivalent to the following code:

    \n\n
    let mut i = 0;\nwhile i < vec.len() {\n    if some_predicate(&mut vec[i]) {\n        let val = vec.remove(i);\n        // your code here\n    } else {\n        i += 1;\n    }\n}\n
    \n

    But extract_if is easier to use. extract_if is also more efficient,\nbecause it can backshift the elements of the array in bulk.

    \n

    Note that extract_if also lets you mutate every element in the filter closure,\nregardless of whether you choose to keep or remove it.

    \n
    §Examples
    \n

    Splitting an array into evens and odds, reusing the original allocation:

    \n\n
    #![feature(extract_if)]\nlet mut numbers = vec![1, 2, 3, 4, 5, 6, 8, 9, 11, 13, 14, 15];\n\nlet evens = numbers.extract_if(|x| *x % 2 == 0).collect::<Vec<_>>();\nlet odds = numbers;\n\nassert_eq!(evens, vec![2, 4, 6, 8, 14]);\nassert_eq!(odds, vec![1, 3, 5, 9, 11, 13, 15]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    source

    pub const fn new_in(alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec: Vec<i32, _> = Vec::new_in(System);
    \n
    source

    pub fn with_capacity_in(capacity: usize, alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T, A> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec = Vec::with_capacity_in(10, System);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<(), System>::with_capacity_in(10, System);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity_in(\n capacity: usize,\n alloc: A,\n) -> Result<Vec<T, A>, TryReserveError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    source

    pub unsafe fn from_raw_parts_in(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n alloc: A,\n) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Creates a Vec<T, A> directly from a pointer, a length, a capacity,\nand an allocator.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must be currently allocated via the given allocator alloc.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to fit the layout size that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T, A>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is not safe\nto build a Vec<u8> from a pointer to a C char array with length size_t.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nuse std::ptr;\nuse std::mem;\n\nlet mut v = Vec::with_capacity_in(3, System);\nv.push(1);\nv.push(2);\nv.push(3);\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\nlet alloc = v.allocator();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts_in(p, len, cap, alloc.clone());\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    #![feature(allocator_api)]\n\nuse std::alloc::{AllocError, Allocator, Global, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = match Global.allocate(layout) {\n            Ok(mem) => mem.cast::<u32>().as_ptr(),\n            Err(AllocError) => return,\n        };\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts_in(mem, 1, 16, Global)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    source

    pub fn into_raw_parts(self) -> (*mut T, usize, usize)

    🔬This is a nightly-only experimental API. (vec_into_raw_parts)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity).

    \n

    Returns the raw pointer to the underlying data, the length of\nthe vector (in elements), and the allocated capacity of the\ndata (in elements). These are the same arguments in the same\norder as the arguments to from_raw_parts.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(vec_into_raw_parts)]\nlet v: Vec<i32> = vec![-1, 0, 1];\n\nlet (ptr, len, cap) = v.into_raw_parts();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts(ptr, len, cap)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    source

    pub fn into_raw_parts_with_alloc(self) -> (*mut T, usize, usize, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity, allocator).

    \n

    Returns the raw pointer to the underlying data, the length of the vector (in elements),\nthe allocated capacity of the data (in elements), and the allocator. These are the same\narguments in the same order as the arguments to from_raw_parts_in.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts_in function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(allocator_api, vec_into_raw_parts)]\n\nuse std::alloc::System;\n\nlet mut v: Vec<i32, System> = Vec::new_in(System);\nv.push(-1);\nv.push(0);\nv.push(1);\n\nlet (ptr, len, cap, alloc) = v.into_raw_parts_with_alloc();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts_in(ptr, len, cap, alloc)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the total number of elements the vector can hold without\nreallocating.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::with_capacity(10);\nvec.push(42);\nassert!(vec.capacity() >= 10);
    \n
    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to\nspeculatively avoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve(10);\nassert!(vec.capacity() >= 11);
    \n
    1.0.0 · source

    pub fn reserve_exact(&mut self, additional: usize)

    Reserves the minimum capacity for at least additional more elements to\nbe inserted in the given Vec<T>. Unlike reserve, this will not\ndeliberately over-allocate to speculatively avoid frequent allocations.\nAfter calling reserve_exact, capacity will be greater than or equal to\nself.len() + additional. Does nothing if the capacity is already\nsufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer reserve if future insertions are expected.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve_exact(10);\nassert!(vec.capacity() >= 11);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to speculatively avoid\nfrequent reallocations. After calling try_reserve, capacity will be\ngreater than or equal to self.len() + additional if it returns\nOk(()). Does nothing if capacity is already sufficient. This method\npreserves the contents even if an error occurs.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.57.0 · source

    pub fn try_reserve_exact(\n &mut self,\n additional: usize,\n) -> Result<(), TryReserveError>

    Tries to reserve the minimum capacity for at least additional\nelements to be inserted in the given Vec<T>. Unlike try_reserve,\nthis will not deliberately over-allocate to speculatively avoid frequent\nallocations. After calling try_reserve_exact, capacity will be greater\nthan or equal to self.len() + additional if it returns Ok(()).\nDoes nothing if the capacity is already sufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer try_reserve if future insertions are expected.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve_exact(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the vector as much as possible.

    \n

    The behavior of this method depends on the allocator, which may either shrink the vector\nin-place or reallocate. The resulting vector might still have some excess capacity, just as\nis the case for with_capacity. See Allocator::shrink for more details.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to_fit();\nassert!(vec.capacity() >= 3);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the vector with a lower bound.

    \n

    The capacity will remain at least as large as both the length\nand the supplied value.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to(4);\nassert!(vec.capacity() >= 4);\nvec.shrink_to(0);\nassert!(vec.capacity() >= 3);
    \n
    1.0.0 · source

    pub fn into_boxed_slice(self) -> Box<[T], A>

    Converts the vector into Box<[T]>.

    \n

    Before doing the conversion, this method discards excess capacity like shrink_to_fit.

    \n
    §Examples
    \n
    let v = vec![1, 2, 3];\n\nlet slice = v.into_boxed_slice();
    \n

    Any excess capacity is removed:

    \n\n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\n\nassert!(vec.capacity() >= 10);\nlet slice = vec.into_boxed_slice();\nassert_eq!(slice.into_vec().capacity(), 3);
    \n
    1.0.0 · source

    pub fn truncate(&mut self, len: usize)

    Shortens the vector, keeping the first len elements and dropping\nthe rest.

    \n

    If len is greater or equal to the vector’s current length, this has\nno effect.

    \n

    The drain method can emulate truncate, but causes the excess\nelements to be returned instead of dropped.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n

    Truncating a five element vector to two elements:

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nvec.truncate(2);\nassert_eq!(vec, [1, 2]);
    \n

    No truncation occurs when len is greater than the vector’s current\nlength:

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(8);\nassert_eq!(vec, [1, 2, 3]);
    \n

    Truncating when len == 0 is equivalent to calling the clear\nmethod.

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(0);\nassert_eq!(vec, []);
    \n
    1.7.0 · source

    pub fn as_slice(&self) -> &[T]

    Extracts a slice containing the entire vector.

    \n

    Equivalent to &s[..].

    \n
    §Examples
    \n
    use std::io::{self, Write};\nlet buffer = vec![1, 2, 3, 5, 8];\nio::sink().write(buffer.as_slice()).unwrap();
    \n
    1.7.0 · source

    pub fn as_mut_slice(&mut self) -> &mut [T]

    Extracts a mutable slice of the entire vector.

    \n

    Equivalent to &mut s[..].

    \n
    §Examples
    \n
    use std::io::{self, Read};\nlet mut buffer = vec![0; 3];\nio::repeat(0b101).read_exact(buffer.as_mut_slice()).unwrap();
    \n
    1.37.0 · source

    pub fn as_ptr(&self) -> *const T

    Returns a raw pointer to the vector’s buffer, or a dangling raw pointer\nvalid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    The caller must also ensure that the memory the pointer (non-transitively) points to\nis never written to (except inside an UnsafeCell) using this pointer or any pointer\nderived from it. If you need to mutate the contents of the slice, use as_mut_ptr.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize mutable references to the slice,\nor mutable references to specific elements you are planning on accessing through this pointer,\nas well as writing to those elements, may still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    let x = vec![1, 2, 4];\nlet x_ptr = x.as_ptr();\n\nunsafe {\n    for i in 0..x.len() {\n        assert_eq!(*x_ptr.add(i), 1 << i);\n    }\n}
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0, 1, 2];\n    let ptr1 = v.as_ptr();\n    let _ = ptr1.read();\n    let ptr2 = v.as_mut_ptr().offset(2);\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`\n    // because it mutated a different element:\n    let _ = ptr1.read();\n}
    \n
    1.37.0 · source

    pub fn as_mut_ptr(&mut self) -> *mut T

    Returns an unsafe mutable pointer to the vector’s buffer, or a dangling\nraw pointer valid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize references to the slice,\nor references to specific elements you are planning on accessing through this pointer,\nmay still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    // Allocate vector big enough for 4 elements.\nlet size = 4;\nlet mut x: Vec<i32> = Vec::with_capacity(size);\nlet x_ptr = x.as_mut_ptr();\n\n// Initialize elements via raw pointer writes, then set length.\nunsafe {\n    for i in 0..size {\n        *x_ptr.add(i) = i as i32;\n    }\n    x.set_len(size);\n}\nassert_eq!(&*x, &[0, 1, 2, 3]);
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0];\n    let ptr1 = v.as_mut_ptr();\n    ptr1.write(1);\n    let ptr2 = v.as_mut_ptr();\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`:\n    ptr1.write(3);\n}
    \n
    source

    pub fn allocator(&self) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n
    1.0.0 · source

    pub unsafe fn set_len(&mut self, new_len: usize)

    Forces the length of the vector to new_len.

    \n

    This is a low-level operation that maintains none of the normal\ninvariants of the type. Normally changing the length of a vector\nis done using one of the safe operations instead, such as\ntruncate, resize, extend, or clear.

    \n
    §Safety
    \n
      \n
    • new_len must be less than or equal to capacity().
    • \n
    • The elements at old_len..new_len must be initialized.
    • \n
    \n
    §Examples
    \n

    This method can be useful for situations in which the vector\nis serving as a buffer for other code, particularly over FFI:

    \n\n
    pub fn get_dictionary(&self) -> Option<Vec<u8>> {\n    // Per the FFI method's docs, \"32768 bytes is always enough\".\n    let mut dict = Vec::with_capacity(32_768);\n    let mut dict_length = 0;\n    // SAFETY: When `deflateGetDictionary` returns `Z_OK`, it holds that:\n    // 1. `dict_length` elements were initialized.\n    // 2. `dict_length` <= the capacity (32_768)\n    // which makes `set_len` safe to call.\n    unsafe {\n        // Make the FFI call...\n        let r = deflateGetDictionary(self.strm, dict.as_mut_ptr(), &mut dict_length);\n        if r == Z_OK {\n            // ...and update the length to what was initialized.\n            dict.set_len(dict_length);\n            Some(dict)\n        } else {\n            None\n        }\n    }\n}
    \n

    While the following example is sound, there is a memory leak since\nthe inner vectors were not freed prior to the set_len call:

    \n\n
    let mut vec = vec![vec![1, 0, 0],\n                   vec![0, 1, 0],\n                   vec![0, 0, 1]];\n// SAFETY:\n// 1. `old_len..0` is empty so no elements need to be initialized.\n// 2. `0 <= capacity` always holds whatever `capacity` is.\nunsafe {\n    vec.set_len(0);\n}
    \n

    Normally, here, one would use clear instead to correctly drop\nthe contents and thus not leak memory.

    \n
    1.0.0 · source

    pub fn swap_remove(&mut self, index: usize) -> T

    Removes an element from the vector and returns it.

    \n

    The removed element is replaced by the last element of the vector.

    \n

    This does not preserve ordering of the remaining elements, but is O(1).\nIf you need to preserve the element order, use remove instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![\"foo\", \"bar\", \"baz\", \"qux\"];\n\nassert_eq!(v.swap_remove(1), \"bar\");\nassert_eq!(v, [\"foo\", \"qux\", \"baz\"]);\n\nassert_eq!(v.swap_remove(0), \"foo\");\nassert_eq!(v, [\"baz\", \"qux\"]);
    \n
    1.0.0 · source

    pub fn insert(&mut self, index: usize, element: T)

    Inserts an element at position index within the vector, shifting all\nelements after it to the right.

    \n
    §Panics
    \n

    Panics if index > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.insert(1, 4);\nassert_eq!(vec, [1, 4, 2, 3]);\nvec.insert(4, 5);\nassert_eq!(vec, [1, 4, 2, 3, 5]);
    \n
    §Time complexity
    \n

    Takes O(Vec::len) time. All items after the insertion index must be\nshifted to the right. In the worst case, all elements are shifted when\nthe insertion index is 0.

    \n
    1.0.0 · source

    pub fn remove(&mut self, index: usize) -> T

    Removes and returns the element at position index within the vector,\nshifting all elements after it to the left.

    \n

    Note: Because this shifts over the remaining elements, it has a\nworst-case performance of O(n). If you don’t need the order of elements\nto be preserved, use swap_remove instead. If you’d like to remove\nelements from the beginning of the Vec, consider using\nVecDeque::pop_front instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nassert_eq!(v.remove(1), 2);\nassert_eq!(v, [1, 3]);
    \n
    1.0.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain(|&x| x % 2 == 0);\nassert_eq!(vec, [2, 4]);
    \n

    Because the elements are visited exactly once in the original order,\nexternal state may be used to decide which elements to keep.

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nlet keep = [false, true, true, false, true];\nlet mut iter = keep.iter();\nvec.retain(|_| *iter.next().unwrap());\nassert_eq!(vec, [2, 3, 5]);
    \n
    1.61.0 · source

    pub fn retain_mut<F>(&mut self, f: F)
    where\n F: FnMut(&mut T) -> bool,

    Retains only the elements specified by the predicate, passing a mutable reference to it.

    \n

    In other words, remove all elements e such that f(&mut e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain_mut(|x| if *x <= 3 {\n    *x += 1;\n    true\n} else {\n    false\n});\nassert_eq!(vec, [2, 3, 4]);
    \n
    1.16.0 · source

    pub fn dedup_by_key<F, K>(&mut self, key: F)
    where\n F: FnMut(&mut T) -> K,\n K: PartialEq,

    Removes all but the first of consecutive elements in the vector that resolve to the same\nkey.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![10, 20, 21, 30, 20];\n\nvec.dedup_by_key(|i| *i / 10);\n\nassert_eq!(vec, [10, 20, 30, 20]);
    \n
    1.16.0 · source

    pub fn dedup_by<F>(&mut self, same_bucket: F)
    where\n F: FnMut(&mut T, &mut T) -> bool,

    Removes all but the first of consecutive elements in the vector satisfying a given equality\nrelation.

    \n

    The same_bucket function is passed references to two elements from the vector and\nmust determine if the elements compare equal. The elements are passed in opposite order\nfrom their order in the slice, so if same_bucket(a, b) returns true, a is removed.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![\"foo\", \"bar\", \"Bar\", \"baz\", \"bar\"];\n\nvec.dedup_by(|a, b| a.eq_ignore_ascii_case(b));\n\nassert_eq!(vec, [\"foo\", \"bar\", \"baz\", \"bar\"]);
    \n
    1.0.0 · source

    pub fn push(&mut self, value: T)

    Appends an element to the back of a collection.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2];\nvec.push(3);\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Time complexity
    \n

    Takes amortized O(1) time. If the vector’s length would exceed its\ncapacity after the push, O(capacity) time is taken to copy the\nvector’s elements to a larger allocation. This expensive operation is\noffset by the capacity O(1) insertions it allows.

    \n
    source

    pub fn push_within_capacity(&mut self, value: T) -> Result<(), T>

    🔬This is a nightly-only experimental API. (vec_push_within_capacity)

    Appends an element if there is sufficient spare capacity, otherwise an error is returned\nwith the element.

    \n

    Unlike push this method will not reallocate when there’s insufficient capacity.\nThe caller should use reserve or try_reserve to ensure that there is enough capacity.

    \n
    §Examples
    \n

    A manual, panic-free alternative to FromIterator:

    \n\n
    #![feature(vec_push_within_capacity)]\n\nuse std::collections::TryReserveError;\nfn from_iter_fallible<T>(iter: impl Iterator<Item=T>) -> Result<Vec<T>, TryReserveError> {\n    let mut vec = Vec::new();\n    for value in iter {\n        if let Err(value) = vec.push_within_capacity(value) {\n            vec.try_reserve(1)?;\n            // this cannot fail, the previous line either returned or added at least 1 free slot\n            let _ = vec.push_within_capacity(value);\n        }\n    }\n    Ok(vec)\n}\nassert_eq!(from_iter_fallible(0..100), Ok(Vec::from_iter(0..100)));
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    1.0.0 · source

    pub fn pop(&mut self) -> Option<T>

    Removes the last element from a vector and returns it, or None if it\nis empty.

    \n

    If you’d like to pop the first element, consider using\nVecDeque::pop_front instead.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nassert_eq!(vec.pop(), Some(3));\nassert_eq!(vec, [1, 2]);
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    source

    pub fn pop_if<F>(&mut self, f: F) -> Option<T>
    where\n F: FnOnce(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (vec_pop_if)

    Removes and returns the last element in a vector if the predicate\nreturns true, or None if the predicate returns false or the vector\nis empty.

    \n
    §Examples
    \n
    #![feature(vec_pop_if)]\n\nlet mut vec = vec![1, 2, 3, 4];\nlet pred = |x: &mut i32| *x % 2 == 0;\n\nassert_eq!(vec.pop_if(pred), Some(4));\nassert_eq!(vec, [1, 2, 3]);\nassert_eq!(vec.pop_if(pred), None);
    \n
    1.4.0 · source

    pub fn append(&mut self, other: &mut Vec<T, A>)

    Moves all the elements of other into self, leaving other empty.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet mut vec2 = vec![4, 5, 6];\nvec.append(&mut vec2);\nassert_eq!(vec, [1, 2, 3, 4, 5, 6]);\nassert_eq!(vec2, []);
    \n
    1.6.0 · source

    pub fn drain<R>(&mut self, range: R) -> Drain<'_, T, A>
    where\n R: RangeBounds<usize>,

    Removes the specified range from the vector in bulk, returning all\nremoved elements as an iterator. If the iterator is dropped before\nbeing fully consumed, it drops the remaining removed elements.

    \n

    The returned iterator keeps a mutable borrow on the vector to optimize\nits implementation.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Leaking
    \n

    If the returned iterator goes out of scope without being dropped (due to\nmem::forget, for example), the vector may have lost and leaked\nelements arbitrarily, including elements outside the range.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nlet u: Vec<_> = v.drain(1..).collect();\nassert_eq!(v, &[1]);\nassert_eq!(u, &[2, 3]);\n\n// A full range clears the vector, like `clear()` does\nv.drain(..);\nassert_eq!(v, &[]);
    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the vector, removing all values.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\n\nv.clear();\n\nassert!(v.is_empty());
    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the vector, also referred to\nas its ‘length’.

    \n
    §Examples
    \n
    let a = vec![1, 2, 3];\nassert_eq!(a.len(), 3);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the vector contains no elements.

    \n
    §Examples
    \n
    let mut v = Vec::new();\nassert!(v.is_empty());\n\nv.push(1);\nassert!(!v.is_empty());
    \n
    1.4.0 · source

    pub fn split_off(&mut self, at: usize) -> Vec<T, A>
    where\n A: Clone,

    Splits the collection into two at the given index.

    \n

    Returns a newly allocated vector containing the elements in the range\n[at, len). After the call, the original vector will be left containing\nthe elements [0, at) with its previous capacity unchanged.

    \n
      \n
    • If you want to take ownership of the entire contents and capacity of\nthe vector, see mem::take or mem::replace.
    • \n
    • If you don’t need the returned vector at all, see Vec::truncate.
    • \n
    • If you want to take ownership of an arbitrary subslice, or you don’t\nnecessarily want to store the removed items in a vector, see Vec::drain.
    • \n
    \n
    §Panics
    \n

    Panics if at > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet vec2 = vec.split_off(1);\nassert_eq!(vec, [1]);\nassert_eq!(vec2, [2, 3]);
    \n
    1.33.0 · source

    pub fn resize_with<F>(&mut self, new_len: usize, f: F)
    where\n F: FnMut() -> T,

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with the result of\ncalling the closure f. The return values from f will end up\nin the Vec in the order they have been generated.

    \n

    If new_len is less than len, the Vec is simply truncated.

    \n

    This method uses a closure to create new values on every push. If\nyou’d rather Clone a given value, use Vec::resize. If you\nwant to use the Default trait to generate values, you can\npass Default::default as the second argument.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.resize_with(5, Default::default);\nassert_eq!(vec, [1, 2, 3, 0, 0]);\n\nlet mut vec = vec![];\nlet mut p = 1;\nvec.resize_with(4, || { p *= 2; p });\nassert_eq!(vec, [2, 4, 8, 16]);
    \n
    1.47.0 · source

    pub fn leak<'a>(self) -> &'a mut [T]
    where\n A: 'a,

    Consumes and leaks the Vec, returning a mutable reference to the contents,\n&'a mut [T]. Note that the type T must outlive the chosen lifetime\n'a. If the type has only static references, or none at all, then this\nmay be chosen to be 'static.

    \n

    As of Rust 1.57, this method does not reallocate or shrink the Vec,\nso the leaked allocation may include unused capacity that is not part\nof the returned slice.

    \n

    This function is mainly useful for data that lives for the remainder of\nthe program’s life. Dropping the returned reference will cause a memory\nleak.

    \n
    §Examples
    \n

    Simple usage:

    \n\n
    let x = vec![1, 2, 3];\nlet static_ref: &'static mut [usize] = x.leak();\nstatic_ref[0] += 1;\nassert_eq!(static_ref, &[2, 2, 3]);
    \n
    1.60.0 · source

    pub fn spare_capacity_mut(&mut self) -> &mut [MaybeUninit<T>]

    Returns the remaining spare capacity of the vector as a slice of\nMaybeUninit<T>.

    \n

    The returned slice can be used to fill the vector with data (e.g. by\nreading from a file) before marking the data as initialized using the\nset_len method.

    \n
    §Examples
    \n
    // Allocate vector big enough for 10 elements.\nlet mut v = Vec::with_capacity(10);\n\n// Fill in the first 3 elements.\nlet uninit = v.spare_capacity_mut();\nuninit[0].write(0);\nuninit[1].write(1);\nuninit[2].write(2);\n\n// Mark the first 3 elements of the vector as being initialized.\nunsafe {\n    v.set_len(3);\n}\n\nassert_eq!(&v, &[0, 1, 2]);
    \n
    source

    pub fn split_at_spare_mut(&mut self) -> (&mut [T], &mut [MaybeUninit<T>])

    🔬This is a nightly-only experimental API. (vec_split_at_spare)

    Returns vector content as a slice of T, along with the remaining spare\ncapacity of the vector as a slice of MaybeUninit<T>.

    \n

    The returned spare capacity slice can be used to fill the vector with data\n(e.g. by reading from a file) before marking the data as initialized using\nthe set_len method.

    \n

    Note that this is a low-level API, which should be used with care for\noptimization purposes. If you need to append data to a Vec\nyou can use push, extend, extend_from_slice,\nextend_from_within, insert, append, resize or\nresize_with, depending on your exact needs.

    \n
    §Examples
    \n
    #![feature(vec_split_at_spare)]\n\nlet mut v = vec![1, 1, 2];\n\n// Reserve additional space big enough for 10 elements.\nv.reserve(10);\n\nlet (init, uninit) = v.split_at_spare_mut();\nlet sum = init.iter().copied().sum::<u32>();\n\n// Fill in the next 4 elements.\nuninit[0].write(sum);\nuninit[1].write(sum * 2);\nuninit[2].write(sum * 3);\nuninit[3].write(sum * 4);\n\n// Mark the 4 elements of the vector as being initialized.\nunsafe {\n    let len = v.len();\n    v.set_len(len + 4);\n}\n\nassert_eq!(&v, &[1, 1, 2, 4, 8, 12, 16]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<A> Write for Vec<u8, A>
    where\n A: Allocator,

    Write is implemented for Vec<u8> by appending to the vector.\nThe vector will grow as needed.

    \n
    source§

    fn write(&mut self, buf: &[u8]) -> Result<usize, Error>

    Write a buffer into this writer, returning how many bytes were written. Read more
    source§

    fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>

    Like write, except that it writes from a slice of buffers. Read more
    source§

    fn is_write_vectored(&self) -> bool

    🔬This is a nightly-only experimental API. (can_vector)
    Determines if this Writer has an efficient write_vectored\nimplementation. Read more
    source§

    fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>

    Attempts to write an entire buffer into this writer. Read more
    source§

    fn flush(&mut self) -> Result<(), Error>

    Flush this output stream, ensuring that all intermediately buffered\ncontents reach their destination. Read more
    source§

    fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>

    🔬This is a nightly-only experimental API. (write_all_vectored)
    Attempts to write multiple buffers into this writer. Read more
    1.0.0 · source§

    fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>

    Writes a formatted string into this writer, returning any error\nencountered. Read more
    1.0.0 · source§

    fn by_ref(&mut self) -> &mut Self
    where\n Self: Sized,

    Creates a “by reference” adapter for this instance of Write. Read more
    ","Write","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<Z> Zeroize for Vec<Z>
    where\n Z: Zeroize,

    §

    fn zeroize(&mut self)

    “Best effort” zeroization for Vec.

    \n

    Ensures the entire capacity of the Vec is zeroed. Cannot ensure that\nprevious reallocations did not leave values on the heap.

    \n
    ","Zeroize","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> DerefPure for Vec<T, A>
    where\n A: Allocator,

    ","DerefPure","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Eq for Vec<T, A>
    where\n T: Eq,\n A: Allocator,

    ","Eq","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T> FromStream<T> for Vec<T>

    ","FromStream","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<Z> ZeroizeOnDrop for Vec<Z>
    where\n Z: ZeroizeOnDrop,

    ","ZeroizeOnDrop","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"]], -"massa_factory_exports":[["
    §

    impl<'i, T> Accumulate<&'i [T]> for Vec<T>
    where\n T: Clone,

    §

    fn initial(capacity: Option<usize>) -> Vec<T>

    Create a new Extend of the correct type
    §

    fn accumulate(&mut self, acc: &'i [T])

    Accumulate the input into an accumulator
    ","Accumulate<&'i [T]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Accumulate<T> for Vec<T>

    §

    fn initial(capacity: Option<usize>) -> Vec<T>

    Create a new Extend of the correct type
    §

    fn accumulate(&mut self, acc: T)

    Accumulate the input into an accumulator
    ","Accumulate","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Archive for Vec<T>
    where\n T: Archive,

    §

    type Archived = ArchivedVec<<T as Archive>::Archived>

    The archived representation of this type. Read more
    §

    type Resolver = VecResolver

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Vec<T> as Archive>::Resolver,\n out: *mut <Vec<T> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> ArrayLike for Vec<T>

    §

    type Item = T

    Type of the elements being stored.
    ","ArrayLike","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> ArrayLike for Vec<T>

    §

    type Item = T

    Type of the elements being stored.
    ","ArrayLike","massa_factory_exports::types::ProductionHistory"],["
    1.5.0 · source§

    impl<T, A> AsMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut [T]

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut<[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.5.0 · source§

    impl<T, A> AsMut<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut Vec<T, A>

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> AsRef<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &[T]

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef<[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> AsRef<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &Vec<T, A>

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Borrow<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow(&self) -> &[T]

    Immutably borrows from an owned value. Read more
    ","Borrow<[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> BorrowMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow_mut(&mut self) -> &mut [T]

    Mutably borrows from an owned value. Read more
    ","BorrowMut<[T]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Clear for Vec<T>

    §

    fn clear(&mut self)

    Clear this make, make it equivalent to newly created object.
    ","Clear","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Clone for Vec<T, A>
    where\n T: Clone,\n A: Allocator + Clone,

    source§

    fn clone_from(&mut self, source: &Vec<T, A>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible. Additionally, if the element type\nT overrides clone_from(), this will reuse the resources of self’s\nelements as well.

    \n
    §Examples
    \n
    let x = vec![5, 6, 7];\nlet mut y = vec![8, 9, 10];\nlet yp: *const i32 = y.as_ptr();\n\ny.clone_from(&x);\n\n// The value is the same\nassert_eq!(x, y);\n\n// And no reallocation occurred\nassert_eq!(yp, y.as_ptr());
    \n
    source§

    fn clone(&self) -> Vec<T, A>

    Returns a copy of the value. Read more
    ","Clone","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Debug for Vec<T, A>
    where\n T: Debug,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T> Default for Vec<T>

    source§

    fn default() -> Vec<T>

    Creates an empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    ","Default","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Deref for Vec<T, A>
    where\n A: Allocator,

    §

    type Target = [T]

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &[T]

    Dereferences the value.
    ","Deref","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> DerefMut for Vec<T, A>
    where\n A: Allocator,

    source§

    fn deref_mut(&mut self) -> &mut [T]

    Mutably dereferences the value.
    ","DerefMut","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<'de, T> Deserialize<'de> for Vec<T>
    where\n T: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Vec<T>> for Vec<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Drop for Vec<T, A>
    where\n A: Allocator,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_factory_exports::types::ProductionHistory"],["
    1.2.0 · source§

    impl<'a, T, A> Extend<&'a T> for Vec<T, A>
    where\n T: Copy + 'a,\n A: Allocator,

    Extend implementation that copies elements out of references before pushing them onto the Vec.

    \n

    This implementation is specialized for slice iterators, where it uses copy_from_slice to\nappend the entire slice at once.

    \n
    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Extend<T> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T> From<&[T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&[T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&[T; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.19.0 · source§

    impl<T> From<&mut [T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&mut [T]>","massa_factory_exports::types::ProductionHistory"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&mut [T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&mut [T; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.44.0 · source§

    impl<T, const N: usize> From<[T; N]> for Vec<T>

    source§

    fn from(s: [T; N]) -> Vec<T>

    Allocate a Vec<T> and move s’s items into it.

    \n
    §Examples
    \n
    assert_eq!(Vec::from([1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<[T; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.5.0 · source§

    impl<T, A> From<BinaryHeap<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(heap: BinaryHeap<T, A>) -> Vec<T, A>

    Converts a BinaryHeap<T> into a Vec<T>.

    \n

    This conversion requires no data movement or allocation, and has\nconstant time complexity.

    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, O> From<BitVec<T, O>> for Vec<T>
    where\n T: BitStore,\n O: BitOrder,

    §

    fn from(bv: BitVec<T, O>) -> Vec<T>

    Converts to this type from the input type.
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    1.18.0 · source§

    impl<T, A> From<Box<[T], A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(s: Box<[T], A>) -> Vec<T, A>

    Convert a boxed slice into a vector by transferring ownership of\nthe existing heap allocation.

    \n
    §Examples
    \n
    let b: Box<[i32]> = vec![1, 2, 3].into_boxed_slice();\nassert_eq!(Vec::from(b), vec![1, 2, 3]);
    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    1.14.0 · source§

    impl<'a, T> From<Cow<'a, [T]>> for Vec<T>
    where\n [T]: ToOwned<Owned = Vec<T>>,

    source§

    fn from(s: Cow<'a, [T]>) -> Vec<T>

    Convert a clone-on-write slice into a vector.

    \n

    If s already owns a Vec<T>, it will be returned directly.\nIf s is borrowing a slice, a new Vec<T> will be allocated and\nfilled by cloning s’s items into it.

    \n
    §Examples
    \n
    let o: Cow<'_, [i32]> = Cow::Owned(vec![1, 2, 3]);\nlet b: Cow<'_, [i32]> = Cow::Borrowed(&[1, 2, 3]);\nassert_eq!(Vec::from(o), Vec::from(b));
    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    1.10.0 · source§

    impl<T, A> From<VecDeque<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(other: VecDeque<T, A>) -> Vec<T, A>

    Turn a VecDeque<T> into a Vec<T>.

    \n

    This never needs to re-allocate, but does need to do O(n) data movement if\nthe circular buffer doesn’t happen to be at the beginning of the allocation.

    \n
    §Examples
    \n
    use std::collections::VecDeque;\n\n// This one is *O*(1).\nlet deque: VecDeque<_> = (1..5).collect();\nlet ptr = deque.as_slices().0.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);\n\n// This one needs data rearranging.\nlet mut deque: VecDeque<_> = (1..5).collect();\ndeque.push_front(9);\ndeque.push_front(8);\nlet ptr = deque.as_slices().1.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [8, 9, 1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);
    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T> FromFallibleIterator<T> for Vec<T>

    source§

    fn from_fallible_iter<I>(\n it: I,\n) -> Result<Vec<T>, <I as IntoFallibleIterator>::Error>
    where\n I: IntoFallibleIterator<Item = T>,

    Creates a value from a fallible iterator.
    ","FromFallibleIterator","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T> FromIterator<T> for Vec<T>

    Collects an iterator into a Vec, commonly called via Iterator::collect()

    \n

    §Allocation behavior

    \n

    In general Vec does not guarantee any particular growth or allocation strategy.\nThat also applies to this trait impl.

    \n

    Note: This section covers implementation details and is therefore exempt from\nstability guarantees.

    \n

    Vec may use any or none of the following strategies,\ndepending on the supplied iterator:

    \n
      \n
    • preallocate based on Iterator::size_hint()\n
        \n
      • and panic if the number of items is outside the provided lower/upper bounds
      • \n
      \n
    • \n
    • use an amortized growth strategy similar to pushing one item at a time
    • \n
    • perform the iteration in-place on the original allocation backing the iterator
    • \n
    \n

    The last case warrants some attention. It is an optimization that in many cases reduces peak memory\nconsumption and improves cache locality. But when big, short-lived allocations are created,\nonly a small fraction of their items get collected, no further use is made of the spare capacity\nand the resulting Vec is moved into a longer-lived structure, then this can lead to the large\nallocations having their lifetimes unnecessarily extended which can result in increased memory\nfootprint.

    \n

    In cases where this is an issue, the excess capacity can be discarded with Vec::shrink_to(),\nVec::shrink_to_fit() or by collecting into Box<[T]> instead, which additionally reduces\nthe size of the long-lived struct.

    \n\n
    static LONG_LIVED: Mutex<Vec<Vec<u16>>> = Mutex::new(Vec::new());\n\nfor i in 0..10 {\n    let big_temporary: Vec<u16> = (0..1024).collect();\n    // discard most items\n    let mut result: Vec<_> = big_temporary.into_iter().filter(|i| i % 100 == 0).collect();\n    // without this a lot of unused capacity might be moved into the global\n    result.shrink_to_fit();\n    LONG_LIVED.lock().unwrap().push(result);\n}
    \n
    source§

    fn from_iter<I>(iter: I) -> Vec<T>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> FromParallelIterator<T> for Vec<T>
    where\n T: Send,

    Collects items from a parallel iterator into a vector.

    \n
    §

    fn from_par_iter<I>(par_iter: I) -> Vec<T>
    where\n I: IntoParallelIterator<Item = T>,

    Creates an instance of the collection from the parallel iterator par_iter. Read more
    ","FromParallelIterator","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Hash for Vec<T, A>
    where\n T: Hash,\n A: Allocator,

    The hash of a vector is the same as that of the corresponding slice,\nas required by the core::borrow::Borrow implementation.

    \n\n
    use std::hash::BuildHasher;\n\nlet b = std::hash::RandomState::new();\nlet v: Vec<u8> = vec![0xa8, 0x3c, 0x09];\nlet s: &[u8] = &[0xa8, 0x3c, 0x09];\nassert_eq!(b.hash_one(v), b.hash_one(s));
    \n
    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, I, A> Index<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    §

    type Output = <I as SliceIndex<[T]>>::Output

    The returned type after indexing.
    source§

    fn index(&self, index: I) -> &<Vec<T, A> as Index<I>>::Output

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<PatternID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: PatternID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<PatternID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: PatternID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<SmallIndex> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: SmallIndex) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<SmallIndex> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: SmallIndex) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<StateID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: StateID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<StateID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: StateID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, I, A> IndexMut<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    source§

    fn index_mut(&mut self, index: I) -> &mut <Vec<T, A> as Index<I>>::Output

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<PatternID> for Vec<T>

    §

    fn index_mut(&mut self, index: PatternID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<PatternID> for Vec<T>

    §

    fn index_mut(&mut self, index: PatternID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<SmallIndex> for Vec<T>

    §

    fn index_mut(&mut self, index: SmallIndex) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<SmallIndex> for Vec<T>

    §

    fn index_mut(&mut self, index: SmallIndex) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<StateID> for Vec<T>

    §

    fn index_mut(&mut self, index: StateID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<StateID> for Vec<T>

    §

    fn index_mut(&mut self, index: StateID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<'de, T, E> IntoDeserializer<'de, E> for Vec<T>
    where\n T: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<Vec<T> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(self) -> <Vec<T> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> IntoIterator for Vec<T, A>
    where\n A: Allocator,

    source§

    fn into_iter(self) -> <Vec<T, A> as IntoIterator>::IntoIter

    Creates a consuming iterator, that is, one that moves each value out of\nthe vector (from start to end). The vector cannot be used after calling\nthis.

    \n
    §Examples
    \n
    let v = vec![\"a\".to_string(), \"b\".to_string()];\nlet mut v_iter = v.into_iter();\n\nlet first_element: Option<String> = v_iter.next();\n\nassert_eq!(first_element, Some(\"a\".to_string()));\nassert_eq!(v_iter.next(), Some(\"b\".to_string()));\nassert_eq!(v_iter.next(), None);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IntoParallelIterator for Vec<T>
    where\n T: Send,

    §

    type Item = T

    The type of item that the parallel iterator will produce.
    §

    type Iter = IntoIter<T>

    The parallel iterator type that will be created.
    §

    fn into_par_iter(self) -> <Vec<T> as IntoParallelIterator>::Iter

    Converts self into a parallel iterator. Read more
    ","IntoParallelIterator","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> JsonSchema for Vec<T>
    where\n T: JsonSchema,

    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    ","JsonSchema","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Ord for Vec<T, A>
    where\n T: Ord,\n A: Allocator,

    Implements ordering of vectors, lexicographically.

    \n
    source§

    fn cmp(&self, other: &Vec<T, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<'a, T> ParallelExtend<&'a T> for Vec<T>
    where\n T: 'a + Copy + Send + Sync,

    Extends a vector with copied items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = &'a T>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend<&'a T>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> ParallelExtend<T> for Vec<T>
    where\n T: Send,

    Extends a vector with items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = T>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<&[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&mut [U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&mut [U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&mut [U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&mut [U]>","massa_factory_exports::types::ProductionHistory"],["
    1.48.0 · source§

    impl<T, U, A> PartialEq<[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U; N]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, U> PartialEq<ArchivedVec<U>> for Vec<T>
    where\n T: PartialEq<U>,

    §

    fn eq(&self, other: &ArchivedVec<U>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A1, A2> PartialEq<Vec<U, A2>> for Vec<T, A1>
    where\n A1: Allocator,\n A2: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &Vec<U, A2>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &Vec<U, A2>) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> PartialOrd<ArchivedVec<T>> for Vec<T>
    where\n T: PartialOrd,

    §

    fn partial_cmp(&self, other: &ArchivedVec<T>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A1, A2> PartialOrd<Vec<T, A2>> for Vec<T, A1>
    where\n T: PartialOrd,\n A1: Allocator,\n A2: Allocator,

    Implements comparison of vectors, lexicographically.

    \n
    source§

    fn partial_cmp(&self, other: &Vec<T, A2>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, S> Serialize<S> for Vec<T>
    where\n T: Serialize<S>,\n S: ScratchSpace + Serializer + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<Vec<T> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T> Serialize for Vec<T>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, U> SerializeAs<Vec<T>> for Vec<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Vec<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Sink<T> for Vec<T>

    §

    type Error = Infallible

    The type of value produced by the sink when an error occurs.
    §

    fn poll_ready(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Attempts to prepare the Sink to receive a value. Read more
    §

    fn start_send(\n self: Pin<&mut Vec<T>>,\n item: T,\n) -> Result<(), <Vec<T> as Sink<T>>::Error>

    Begin the process of sending a value to the sink.\nEach call to this function must be preceded by a successful call to\npoll_ready which returned Poll::Ready(Ok(())). Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output from this sink. Read more
    §

    fn poll_close(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output and close this sink, if necessary. Read more
    ","Sink","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Source for Vec<T>
    where\n T: Source + Sync + Send + Clone + 'static,

    §

    fn clone_into_box(&self) -> Box<dyn Source + Send + Sync>

    §

    fn collect(&self) -> Result<HashMap<String, Value>, ConfigError>

    Collect all configuration properties available from this source and return\na Map.
    §

    fn collect_to(&self, cache: &mut Value) -> Result<(), ConfigError>

    Collects all configuration properties to a provided cache.
    ","Source","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T> Vec<T>

    1.0.0 (const: 1.39.0) · source

    pub const fn new() -> Vec<T>

    Constructs a new, empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> Vec<T>

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<()>::with_capacity(10);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity(capacity: usize) -> Result<Vec<T>, TryReserveError>

    🔬This is a nightly-only experimental API. (try_with_capacity)

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    1.0.0 · source

    pub unsafe fn from_raw_parts(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n) -> Vec<T>

    Creates a Vec<T> directly from a pointer, a length, and a capacity.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must have been allocated using the global allocator, such as via\nthe alloc::alloc function.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to be the capacity that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is normally not safe\nto build a Vec<u8> from a pointer to a C char array with length\nsize_t, doing so is only safe if the array was initially allocated by\na Vec or String.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1. To avoid\nthese issues, it is often preferable to do casting/transmuting using\nslice::from_raw_parts instead.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    use std::ptr;\nuse std::mem;\n\nlet v = vec![1, 2, 3];\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts(p, len, cap);\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    use std::alloc::{alloc, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = alloc(layout).cast::<u32>();\n        if mem.is_null() {\n            return;\n        }\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts(mem, 1, 16)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: Clone,\n A: Allocator,

    1.5.0 · source

    pub fn resize(&mut self, new_len: usize, value: T)

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with value.\nIf new_len is less than len, the Vec is simply truncated.

    \n

    This method requires T to implement Clone,\nin order to be able to clone the passed value.\nIf you need more flexibility (or want to rely on Default instead of\nClone), use Vec::resize_with.\nIf you only need to resize to a smaller size, use Vec::truncate.

    \n
    §Examples
    \n
    let mut vec = vec![\"hello\"];\nvec.resize(3, \"world\");\nassert_eq!(vec, [\"hello\", \"world\", \"world\"]);\n\nlet mut vec = vec![1, 2, 3, 4];\nvec.resize(2, 0);\nassert_eq!(vec, [1, 2]);
    \n
    1.6.0 · source

    pub fn extend_from_slice(&mut self, other: &[T])

    Clones and appends all elements in a slice to the Vec.

    \n

    Iterates over the slice other, clones each element, and then appends\nit to this Vec. The other slice is traversed in-order.

    \n

    Note that this function is same as extend except that it is\nspecialized to work with slices instead. If and when Rust gets\nspecialization this function will likely be deprecated (but still\navailable).

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.extend_from_slice(&[2, 3, 4]);\nassert_eq!(vec, [1, 2, 3, 4]);
    \n
    1.53.0 · source

    pub fn extend_from_within<R>(&mut self, src: R)
    where\n R: RangeBounds<usize>,

    Copies elements from src range to the end of the vector.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut vec = vec![0, 1, 2, 3, 4];\n\nvec.extend_from_within(2..);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4]);\n\nvec.extend_from_within(..2);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1]);\n\nvec.extend_from_within(4..8);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1, 4, 2, 3, 4]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: PartialEq,\n A: Allocator,

    1.0.0 · source

    pub fn dedup(&mut self)

    Removes consecutive repeated elements in the vector according to the\nPartialEq trait implementation.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 2, 3, 2];\n\nvec.dedup();\n\nassert_eq!(vec, [1, 2, 3, 2]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    1.21.0 · source

    pub fn splice<R, I>(\n &mut self,\n range: R,\n replace_with: I,\n) -> Splice<'_, <I as IntoIterator>::IntoIter, A>
    where\n R: RangeBounds<usize>,\n I: IntoIterator<Item = T>,

    Creates a splicing iterator that replaces the specified range in the vector\nwith the given replace_with iterator and yields the removed items.\nreplace_with does not need to be the same length as range.

    \n

    range is removed even if the iterator is not consumed until the end.

    \n

    It is unspecified how many elements are removed from the vector\nif the Splice value is leaked.

    \n

    The input iterator replace_with is only consumed when the Splice value is dropped.

    \n

    This is optimal if:

    \n
      \n
    • The tail (elements in the vector after range) is empty,
    • \n
    • or replace_with yields fewer or equal elements than range’s length
    • \n
    • or the lower bound of its size_hint() is exact.
    • \n
    \n

    Otherwise, a temporary vector is allocated and the tail is moved twice.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3, 4];\nlet new = [7, 8, 9];\nlet u: Vec<_> = v.splice(1..3, new).collect();\nassert_eq!(v, &[1, 7, 8, 9, 4]);\nassert_eq!(u, &[2, 3]);
    \n
    source

    pub fn extract_if<F>(&mut self, filter: F) -> ExtractIf<'_, T, F, A>
    where\n F: FnMut(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, then the element is removed and yielded.\nIf the closure returns false, the element will remain in the vector and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n

    Using this method is equivalent to the following code:

    \n\n
    let mut i = 0;\nwhile i < vec.len() {\n    if some_predicate(&mut vec[i]) {\n        let val = vec.remove(i);\n        // your code here\n    } else {\n        i += 1;\n    }\n}\n
    \n

    But extract_if is easier to use. extract_if is also more efficient,\nbecause it can backshift the elements of the array in bulk.

    \n

    Note that extract_if also lets you mutate every element in the filter closure,\nregardless of whether you choose to keep or remove it.

    \n
    §Examples
    \n

    Splitting an array into evens and odds, reusing the original allocation:

    \n\n
    #![feature(extract_if)]\nlet mut numbers = vec![1, 2, 3, 4, 5, 6, 8, 9, 11, 13, 14, 15];\n\nlet evens = numbers.extract_if(|x| *x % 2 == 0).collect::<Vec<_>>();\nlet odds = numbers;\n\nassert_eq!(evens, vec![2, 4, 6, 8, 14]);\nassert_eq!(odds, vec![1, 3, 5, 9, 11, 13, 15]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    source

    pub const fn new_in(alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec: Vec<i32, _> = Vec::new_in(System);
    \n
    source

    pub fn with_capacity_in(capacity: usize, alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T, A> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec = Vec::with_capacity_in(10, System);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<(), System>::with_capacity_in(10, System);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity_in(\n capacity: usize,\n alloc: A,\n) -> Result<Vec<T, A>, TryReserveError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    source

    pub unsafe fn from_raw_parts_in(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n alloc: A,\n) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Creates a Vec<T, A> directly from a pointer, a length, a capacity,\nand an allocator.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must be currently allocated via the given allocator alloc.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to fit the layout size that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T, A>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is not safe\nto build a Vec<u8> from a pointer to a C char array with length size_t.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nuse std::ptr;\nuse std::mem;\n\nlet mut v = Vec::with_capacity_in(3, System);\nv.push(1);\nv.push(2);\nv.push(3);\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\nlet alloc = v.allocator();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts_in(p, len, cap, alloc.clone());\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    #![feature(allocator_api)]\n\nuse std::alloc::{AllocError, Allocator, Global, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = match Global.allocate(layout) {\n            Ok(mem) => mem.cast::<u32>().as_ptr(),\n            Err(AllocError) => return,\n        };\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts_in(mem, 1, 16, Global)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    source

    pub fn into_raw_parts(self) -> (*mut T, usize, usize)

    🔬This is a nightly-only experimental API. (vec_into_raw_parts)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity).

    \n

    Returns the raw pointer to the underlying data, the length of\nthe vector (in elements), and the allocated capacity of the\ndata (in elements). These are the same arguments in the same\norder as the arguments to from_raw_parts.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(vec_into_raw_parts)]\nlet v: Vec<i32> = vec![-1, 0, 1];\n\nlet (ptr, len, cap) = v.into_raw_parts();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts(ptr, len, cap)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    source

    pub fn into_raw_parts_with_alloc(self) -> (*mut T, usize, usize, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity, allocator).

    \n

    Returns the raw pointer to the underlying data, the length of the vector (in elements),\nthe allocated capacity of the data (in elements), and the allocator. These are the same\narguments in the same order as the arguments to from_raw_parts_in.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts_in function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(allocator_api, vec_into_raw_parts)]\n\nuse std::alloc::System;\n\nlet mut v: Vec<i32, System> = Vec::new_in(System);\nv.push(-1);\nv.push(0);\nv.push(1);\n\nlet (ptr, len, cap, alloc) = v.into_raw_parts_with_alloc();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts_in(ptr, len, cap, alloc)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the total number of elements the vector can hold without\nreallocating.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::with_capacity(10);\nvec.push(42);\nassert!(vec.capacity() >= 10);
    \n
    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to\nspeculatively avoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve(10);\nassert!(vec.capacity() >= 11);
    \n
    1.0.0 · source

    pub fn reserve_exact(&mut self, additional: usize)

    Reserves the minimum capacity for at least additional more elements to\nbe inserted in the given Vec<T>. Unlike reserve, this will not\ndeliberately over-allocate to speculatively avoid frequent allocations.\nAfter calling reserve_exact, capacity will be greater than or equal to\nself.len() + additional. Does nothing if the capacity is already\nsufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer reserve if future insertions are expected.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve_exact(10);\nassert!(vec.capacity() >= 11);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to speculatively avoid\nfrequent reallocations. After calling try_reserve, capacity will be\ngreater than or equal to self.len() + additional if it returns\nOk(()). Does nothing if capacity is already sufficient. This method\npreserves the contents even if an error occurs.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.57.0 · source

    pub fn try_reserve_exact(\n &mut self,\n additional: usize,\n) -> Result<(), TryReserveError>

    Tries to reserve the minimum capacity for at least additional\nelements to be inserted in the given Vec<T>. Unlike try_reserve,\nthis will not deliberately over-allocate to speculatively avoid frequent\nallocations. After calling try_reserve_exact, capacity will be greater\nthan or equal to self.len() + additional if it returns Ok(()).\nDoes nothing if the capacity is already sufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer try_reserve if future insertions are expected.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve_exact(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the vector as much as possible.

    \n

    The behavior of this method depends on the allocator, which may either shrink the vector\nin-place or reallocate. The resulting vector might still have some excess capacity, just as\nis the case for with_capacity. See Allocator::shrink for more details.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to_fit();\nassert!(vec.capacity() >= 3);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the vector with a lower bound.

    \n

    The capacity will remain at least as large as both the length\nand the supplied value.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to(4);\nassert!(vec.capacity() >= 4);\nvec.shrink_to(0);\nassert!(vec.capacity() >= 3);
    \n
    1.0.0 · source

    pub fn into_boxed_slice(self) -> Box<[T], A>

    Converts the vector into Box<[T]>.

    \n

    Before doing the conversion, this method discards excess capacity like shrink_to_fit.

    \n
    §Examples
    \n
    let v = vec![1, 2, 3];\n\nlet slice = v.into_boxed_slice();
    \n

    Any excess capacity is removed:

    \n\n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\n\nassert!(vec.capacity() >= 10);\nlet slice = vec.into_boxed_slice();\nassert_eq!(slice.into_vec().capacity(), 3);
    \n
    1.0.0 · source

    pub fn truncate(&mut self, len: usize)

    Shortens the vector, keeping the first len elements and dropping\nthe rest.

    \n

    If len is greater or equal to the vector’s current length, this has\nno effect.

    \n

    The drain method can emulate truncate, but causes the excess\nelements to be returned instead of dropped.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n

    Truncating a five element vector to two elements:

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nvec.truncate(2);\nassert_eq!(vec, [1, 2]);
    \n

    No truncation occurs when len is greater than the vector’s current\nlength:

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(8);\nassert_eq!(vec, [1, 2, 3]);
    \n

    Truncating when len == 0 is equivalent to calling the clear\nmethod.

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(0);\nassert_eq!(vec, []);
    \n
    1.7.0 · source

    pub fn as_slice(&self) -> &[T]

    Extracts a slice containing the entire vector.

    \n

    Equivalent to &s[..].

    \n
    §Examples
    \n
    use std::io::{self, Write};\nlet buffer = vec![1, 2, 3, 5, 8];\nio::sink().write(buffer.as_slice()).unwrap();
    \n
    1.7.0 · source

    pub fn as_mut_slice(&mut self) -> &mut [T]

    Extracts a mutable slice of the entire vector.

    \n

    Equivalent to &mut s[..].

    \n
    §Examples
    \n
    use std::io::{self, Read};\nlet mut buffer = vec![0; 3];\nio::repeat(0b101).read_exact(buffer.as_mut_slice()).unwrap();
    \n
    1.37.0 · source

    pub fn as_ptr(&self) -> *const T

    Returns a raw pointer to the vector’s buffer, or a dangling raw pointer\nvalid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    The caller must also ensure that the memory the pointer (non-transitively) points to\nis never written to (except inside an UnsafeCell) using this pointer or any pointer\nderived from it. If you need to mutate the contents of the slice, use as_mut_ptr.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize mutable references to the slice,\nor mutable references to specific elements you are planning on accessing through this pointer,\nas well as writing to those elements, may still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    let x = vec![1, 2, 4];\nlet x_ptr = x.as_ptr();\n\nunsafe {\n    for i in 0..x.len() {\n        assert_eq!(*x_ptr.add(i), 1 << i);\n    }\n}
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0, 1, 2];\n    let ptr1 = v.as_ptr();\n    let _ = ptr1.read();\n    let ptr2 = v.as_mut_ptr().offset(2);\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`\n    // because it mutated a different element:\n    let _ = ptr1.read();\n}
    \n
    1.37.0 · source

    pub fn as_mut_ptr(&mut self) -> *mut T

    Returns an unsafe mutable pointer to the vector’s buffer, or a dangling\nraw pointer valid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize references to the slice,\nor references to specific elements you are planning on accessing through this pointer,\nmay still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    // Allocate vector big enough for 4 elements.\nlet size = 4;\nlet mut x: Vec<i32> = Vec::with_capacity(size);\nlet x_ptr = x.as_mut_ptr();\n\n// Initialize elements via raw pointer writes, then set length.\nunsafe {\n    for i in 0..size {\n        *x_ptr.add(i) = i as i32;\n    }\n    x.set_len(size);\n}\nassert_eq!(&*x, &[0, 1, 2, 3]);
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0];\n    let ptr1 = v.as_mut_ptr();\n    ptr1.write(1);\n    let ptr2 = v.as_mut_ptr();\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`:\n    ptr1.write(3);\n}
    \n
    source

    pub fn allocator(&self) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n
    1.0.0 · source

    pub unsafe fn set_len(&mut self, new_len: usize)

    Forces the length of the vector to new_len.

    \n

    This is a low-level operation that maintains none of the normal\ninvariants of the type. Normally changing the length of a vector\nis done using one of the safe operations instead, such as\ntruncate, resize, extend, or clear.

    \n
    §Safety
    \n
      \n
    • new_len must be less than or equal to capacity().
    • \n
    • The elements at old_len..new_len must be initialized.
    • \n
    \n
    §Examples
    \n

    This method can be useful for situations in which the vector\nis serving as a buffer for other code, particularly over FFI:

    \n\n
    pub fn get_dictionary(&self) -> Option<Vec<u8>> {\n    // Per the FFI method's docs, \"32768 bytes is always enough\".\n    let mut dict = Vec::with_capacity(32_768);\n    let mut dict_length = 0;\n    // SAFETY: When `deflateGetDictionary` returns `Z_OK`, it holds that:\n    // 1. `dict_length` elements were initialized.\n    // 2. `dict_length` <= the capacity (32_768)\n    // which makes `set_len` safe to call.\n    unsafe {\n        // Make the FFI call...\n        let r = deflateGetDictionary(self.strm, dict.as_mut_ptr(), &mut dict_length);\n        if r == Z_OK {\n            // ...and update the length to what was initialized.\n            dict.set_len(dict_length);\n            Some(dict)\n        } else {\n            None\n        }\n    }\n}
    \n

    While the following example is sound, there is a memory leak since\nthe inner vectors were not freed prior to the set_len call:

    \n\n
    let mut vec = vec![vec![1, 0, 0],\n                   vec![0, 1, 0],\n                   vec![0, 0, 1]];\n// SAFETY:\n// 1. `old_len..0` is empty so no elements need to be initialized.\n// 2. `0 <= capacity` always holds whatever `capacity` is.\nunsafe {\n    vec.set_len(0);\n}
    \n

    Normally, here, one would use clear instead to correctly drop\nthe contents and thus not leak memory.

    \n
    1.0.0 · source

    pub fn swap_remove(&mut self, index: usize) -> T

    Removes an element from the vector and returns it.

    \n

    The removed element is replaced by the last element of the vector.

    \n

    This does not preserve ordering of the remaining elements, but is O(1).\nIf you need to preserve the element order, use remove instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![\"foo\", \"bar\", \"baz\", \"qux\"];\n\nassert_eq!(v.swap_remove(1), \"bar\");\nassert_eq!(v, [\"foo\", \"qux\", \"baz\"]);\n\nassert_eq!(v.swap_remove(0), \"foo\");\nassert_eq!(v, [\"baz\", \"qux\"]);
    \n
    1.0.0 · source

    pub fn insert(&mut self, index: usize, element: T)

    Inserts an element at position index within the vector, shifting all\nelements after it to the right.

    \n
    §Panics
    \n

    Panics if index > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.insert(1, 4);\nassert_eq!(vec, [1, 4, 2, 3]);\nvec.insert(4, 5);\nassert_eq!(vec, [1, 4, 2, 3, 5]);
    \n
    §Time complexity
    \n

    Takes O(Vec::len) time. All items after the insertion index must be\nshifted to the right. In the worst case, all elements are shifted when\nthe insertion index is 0.

    \n
    1.0.0 · source

    pub fn remove(&mut self, index: usize) -> T

    Removes and returns the element at position index within the vector,\nshifting all elements after it to the left.

    \n

    Note: Because this shifts over the remaining elements, it has a\nworst-case performance of O(n). If you don’t need the order of elements\nto be preserved, use swap_remove instead. If you’d like to remove\nelements from the beginning of the Vec, consider using\nVecDeque::pop_front instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nassert_eq!(v.remove(1), 2);\nassert_eq!(v, [1, 3]);
    \n
    1.0.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain(|&x| x % 2 == 0);\nassert_eq!(vec, [2, 4]);
    \n

    Because the elements are visited exactly once in the original order,\nexternal state may be used to decide which elements to keep.

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nlet keep = [false, true, true, false, true];\nlet mut iter = keep.iter();\nvec.retain(|_| *iter.next().unwrap());\nassert_eq!(vec, [2, 3, 5]);
    \n
    1.61.0 · source

    pub fn retain_mut<F>(&mut self, f: F)
    where\n F: FnMut(&mut T) -> bool,

    Retains only the elements specified by the predicate, passing a mutable reference to it.

    \n

    In other words, remove all elements e such that f(&mut e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain_mut(|x| if *x <= 3 {\n    *x += 1;\n    true\n} else {\n    false\n});\nassert_eq!(vec, [2, 3, 4]);
    \n
    1.16.0 · source

    pub fn dedup_by_key<F, K>(&mut self, key: F)
    where\n F: FnMut(&mut T) -> K,\n K: PartialEq,

    Removes all but the first of consecutive elements in the vector that resolve to the same\nkey.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![10, 20, 21, 30, 20];\n\nvec.dedup_by_key(|i| *i / 10);\n\nassert_eq!(vec, [10, 20, 30, 20]);
    \n
    1.16.0 · source

    pub fn dedup_by<F>(&mut self, same_bucket: F)
    where\n F: FnMut(&mut T, &mut T) -> bool,

    Removes all but the first of consecutive elements in the vector satisfying a given equality\nrelation.

    \n

    The same_bucket function is passed references to two elements from the vector and\nmust determine if the elements compare equal. The elements are passed in opposite order\nfrom their order in the slice, so if same_bucket(a, b) returns true, a is removed.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![\"foo\", \"bar\", \"Bar\", \"baz\", \"bar\"];\n\nvec.dedup_by(|a, b| a.eq_ignore_ascii_case(b));\n\nassert_eq!(vec, [\"foo\", \"bar\", \"baz\", \"bar\"]);
    \n
    1.0.0 · source

    pub fn push(&mut self, value: T)

    Appends an element to the back of a collection.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2];\nvec.push(3);\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Time complexity
    \n

    Takes amortized O(1) time. If the vector’s length would exceed its\ncapacity after the push, O(capacity) time is taken to copy the\nvector’s elements to a larger allocation. This expensive operation is\noffset by the capacity O(1) insertions it allows.

    \n
    source

    pub fn push_within_capacity(&mut self, value: T) -> Result<(), T>

    🔬This is a nightly-only experimental API. (vec_push_within_capacity)

    Appends an element if there is sufficient spare capacity, otherwise an error is returned\nwith the element.

    \n

    Unlike push this method will not reallocate when there’s insufficient capacity.\nThe caller should use reserve or try_reserve to ensure that there is enough capacity.

    \n
    §Examples
    \n

    A manual, panic-free alternative to FromIterator:

    \n\n
    #![feature(vec_push_within_capacity)]\n\nuse std::collections::TryReserveError;\nfn from_iter_fallible<T>(iter: impl Iterator<Item=T>) -> Result<Vec<T>, TryReserveError> {\n    let mut vec = Vec::new();\n    for value in iter {\n        if let Err(value) = vec.push_within_capacity(value) {\n            vec.try_reserve(1)?;\n            // this cannot fail, the previous line either returned or added at least 1 free slot\n            let _ = vec.push_within_capacity(value);\n        }\n    }\n    Ok(vec)\n}\nassert_eq!(from_iter_fallible(0..100), Ok(Vec::from_iter(0..100)));
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    1.0.0 · source

    pub fn pop(&mut self) -> Option<T>

    Removes the last element from a vector and returns it, or None if it\nis empty.

    \n

    If you’d like to pop the first element, consider using\nVecDeque::pop_front instead.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nassert_eq!(vec.pop(), Some(3));\nassert_eq!(vec, [1, 2]);
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    source

    pub fn pop_if<F>(&mut self, f: F) -> Option<T>
    where\n F: FnOnce(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (vec_pop_if)

    Removes and returns the last element in a vector if the predicate\nreturns true, or None if the predicate returns false or the vector\nis empty.

    \n
    §Examples
    \n
    #![feature(vec_pop_if)]\n\nlet mut vec = vec![1, 2, 3, 4];\nlet pred = |x: &mut i32| *x % 2 == 0;\n\nassert_eq!(vec.pop_if(pred), Some(4));\nassert_eq!(vec, [1, 2, 3]);\nassert_eq!(vec.pop_if(pred), None);
    \n
    1.4.0 · source

    pub fn append(&mut self, other: &mut Vec<T, A>)

    Moves all the elements of other into self, leaving other empty.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet mut vec2 = vec![4, 5, 6];\nvec.append(&mut vec2);\nassert_eq!(vec, [1, 2, 3, 4, 5, 6]);\nassert_eq!(vec2, []);
    \n
    1.6.0 · source

    pub fn drain<R>(&mut self, range: R) -> Drain<'_, T, A>
    where\n R: RangeBounds<usize>,

    Removes the specified range from the vector in bulk, returning all\nremoved elements as an iterator. If the iterator is dropped before\nbeing fully consumed, it drops the remaining removed elements.

    \n

    The returned iterator keeps a mutable borrow on the vector to optimize\nits implementation.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Leaking
    \n

    If the returned iterator goes out of scope without being dropped (due to\nmem::forget, for example), the vector may have lost and leaked\nelements arbitrarily, including elements outside the range.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nlet u: Vec<_> = v.drain(1..).collect();\nassert_eq!(v, &[1]);\nassert_eq!(u, &[2, 3]);\n\n// A full range clears the vector, like `clear()` does\nv.drain(..);\nassert_eq!(v, &[]);
    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the vector, removing all values.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\n\nv.clear();\n\nassert!(v.is_empty());
    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the vector, also referred to\nas its ‘length’.

    \n
    §Examples
    \n
    let a = vec![1, 2, 3];\nassert_eq!(a.len(), 3);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the vector contains no elements.

    \n
    §Examples
    \n
    let mut v = Vec::new();\nassert!(v.is_empty());\n\nv.push(1);\nassert!(!v.is_empty());
    \n
    1.4.0 · source

    pub fn split_off(&mut self, at: usize) -> Vec<T, A>
    where\n A: Clone,

    Splits the collection into two at the given index.

    \n

    Returns a newly allocated vector containing the elements in the range\n[at, len). After the call, the original vector will be left containing\nthe elements [0, at) with its previous capacity unchanged.

    \n
      \n
    • If you want to take ownership of the entire contents and capacity of\nthe vector, see mem::take or mem::replace.
    • \n
    • If you don’t need the returned vector at all, see Vec::truncate.
    • \n
    • If you want to take ownership of an arbitrary subslice, or you don’t\nnecessarily want to store the removed items in a vector, see Vec::drain.
    • \n
    \n
    §Panics
    \n

    Panics if at > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet vec2 = vec.split_off(1);\nassert_eq!(vec, [1]);\nassert_eq!(vec2, [2, 3]);
    \n
    1.33.0 · source

    pub fn resize_with<F>(&mut self, new_len: usize, f: F)
    where\n F: FnMut() -> T,

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with the result of\ncalling the closure f. The return values from f will end up\nin the Vec in the order they have been generated.

    \n

    If new_len is less than len, the Vec is simply truncated.

    \n

    This method uses a closure to create new values on every push. If\nyou’d rather Clone a given value, use Vec::resize. If you\nwant to use the Default trait to generate values, you can\npass Default::default as the second argument.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.resize_with(5, Default::default);\nassert_eq!(vec, [1, 2, 3, 0, 0]);\n\nlet mut vec = vec![];\nlet mut p = 1;\nvec.resize_with(4, || { p *= 2; p });\nassert_eq!(vec, [2, 4, 8, 16]);
    \n
    1.47.0 · source

    pub fn leak<'a>(self) -> &'a mut [T]
    where\n A: 'a,

    Consumes and leaks the Vec, returning a mutable reference to the contents,\n&'a mut [T]. Note that the type T must outlive the chosen lifetime\n'a. If the type has only static references, or none at all, then this\nmay be chosen to be 'static.

    \n

    As of Rust 1.57, this method does not reallocate or shrink the Vec,\nso the leaked allocation may include unused capacity that is not part\nof the returned slice.

    \n

    This function is mainly useful for data that lives for the remainder of\nthe program’s life. Dropping the returned reference will cause a memory\nleak.

    \n
    §Examples
    \n

    Simple usage:

    \n\n
    let x = vec![1, 2, 3];\nlet static_ref: &'static mut [usize] = x.leak();\nstatic_ref[0] += 1;\nassert_eq!(static_ref, &[2, 2, 3]);
    \n
    1.60.0 · source

    pub fn spare_capacity_mut(&mut self) -> &mut [MaybeUninit<T>]

    Returns the remaining spare capacity of the vector as a slice of\nMaybeUninit<T>.

    \n

    The returned slice can be used to fill the vector with data (e.g. by\nreading from a file) before marking the data as initialized using the\nset_len method.

    \n
    §Examples
    \n
    // Allocate vector big enough for 10 elements.\nlet mut v = Vec::with_capacity(10);\n\n// Fill in the first 3 elements.\nlet uninit = v.spare_capacity_mut();\nuninit[0].write(0);\nuninit[1].write(1);\nuninit[2].write(2);\n\n// Mark the first 3 elements of the vector as being initialized.\nunsafe {\n    v.set_len(3);\n}\n\nassert_eq!(&v, &[0, 1, 2]);
    \n
    source

    pub fn split_at_spare_mut(&mut self) -> (&mut [T], &mut [MaybeUninit<T>])

    🔬This is a nightly-only experimental API. (vec_split_at_spare)

    Returns vector content as a slice of T, along with the remaining spare\ncapacity of the vector as a slice of MaybeUninit<T>.

    \n

    The returned spare capacity slice can be used to fill the vector with data\n(e.g. by reading from a file) before marking the data as initialized using\nthe set_len method.

    \n

    Note that this is a low-level API, which should be used with care for\noptimization purposes. If you need to append data to a Vec\nyou can use push, extend, extend_from_slice,\nextend_from_within, insert, append, resize or\nresize_with, depending on your exact needs.

    \n
    §Examples
    \n
    #![feature(vec_split_at_spare)]\n\nlet mut v = vec![1, 1, 2];\n\n// Reserve additional space big enough for 10 elements.\nv.reserve(10);\n\nlet (init, uninit) = v.split_at_spare_mut();\nlet sum = init.iter().copied().sum::<u32>();\n\n// Fill in the next 4 elements.\nuninit[0].write(sum);\nuninit[1].write(sum * 2);\nuninit[2].write(sum * 3);\nuninit[3].write(sum * 4);\n\n// Mark the 4 elements of the vector as being initialized.\nunsafe {\n    let len = v.len();\n    v.set_len(len + 4);\n}\n\nassert_eq!(&v, &[1, 1, 2, 4, 8, 12, 16]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    §

    impl<Z> Zeroize for Vec<Z>
    where\n Z: Zeroize,

    §

    fn zeroize(&mut self)

    “Best effort” zeroization for Vec.

    \n

    Ensures the entire capacity of the Vec is zeroed. Cannot ensure that\nprevious reallocations did not leave values on the heap.

    \n
    ","Zeroize","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> DerefPure for Vec<T, A>
    where\n A: Allocator,

    ","DerefPure","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Eq for Vec<T, A>
    where\n T: Eq,\n A: Allocator,

    ","Eq","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> FromStream<T> for Vec<T>

    ","FromStream","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> StableDeref for Vec<T>

    ","StableDeref","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<Z> ZeroizeOnDrop for Vec<Z>
    where\n Z: ZeroizeOnDrop,

    ","ZeroizeOnDrop","massa_factory_exports::types::ProductionHistory"]] +"massa_db_exports":[["
    §

    impl<T> ArrayLike for Vec<T>

    §

    type Item = T

    Type of the elements being stored.
    ","ArrayLike","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.5.0 · source§

    impl<T, A> AsMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut [T]

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.5.0 · source§

    impl<T, A> AsMut<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut Vec<T, A>

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> AsRef<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &[T]

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> AsRef<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &Vec<T, A>

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl AsyncWrite for Vec<u8>

    §

    fn poll_write(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from bufs into the object using vectored\nIO operations. Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_close(\n self: Pin<&mut Vec<u8>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to close the object. Read more
    ","AsyncWrite","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl AsyncWrite for Vec<u8>

    §

    fn poll_write(\n self: Pin<&mut Vec<u8>>,\n _cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Vec<u8>>,\n _: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Like poll_write, except that it writes from a slice of buffers. Read more
    §

    fn is_write_vectored(&self) -> bool

    Determines if this writer has an efficient poll_write_vectored\nimplementation. Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<u8>>,\n _cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_shutdown(\n self: Pin<&mut Vec<u8>>,\n _cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Initiates or attempts to shut down this writer, returning success when\nthe I/O connection has completely shut down. Read more
    ","AsyncWrite","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Borrow<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow(&self) -> &[T]

    Immutably borrows from an owned value. Read more
    ","Borrow<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> BorrowMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow_mut(&mut self) -> &mut [T]

    Mutably borrows from an owned value. Read more
    ","BorrowMut<[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl BufMut for Vec<u8>

    §

    fn remaining_mut(&self) -> usize

    Returns the number of bytes that can be written from the current\nposition until the end of the buffer is reached. Read more
    §

    unsafe fn advance_mut(&mut self, cnt: usize)

    Advance the internal cursor of the BufMut Read more
    §

    fn chunk_mut(&mut self) -> &mut UninitSlice

    Returns a mutable slice starting at the current BufMut position and of\nlength between 0 and BufMut::remaining_mut(). Note that this can be shorter than the\nwhole remainder of the buffer (this allows non-continuous implementation). Read more
    §

    fn put<T>(&mut self, src: T)
    where\n T: Buf,\n Vec<u8>: Sized,

    Transfer bytes into self from src and advance the cursor by the\nnumber of bytes written. Read more
    §

    fn put_slice(&mut self, src: &[u8])

    Transfer bytes into self from src and advance the cursor by the\nnumber of bytes written. Read more
    §

    fn put_bytes(&mut self, val: u8, cnt: usize)

    Put cnt bytes val into self. Read more
    §

    fn has_remaining_mut(&self) -> bool

    Returns true if there is space in self for more bytes. Read more
    §

    fn put_u8(&mut self, n: u8)

    Writes an unsigned 8 bit integer to self. Read more
    §

    fn put_i8(&mut self, n: i8)

    Writes a signed 8 bit integer to self. Read more
    §

    fn put_u16(&mut self, n: u16)

    Writes an unsigned 16 bit integer to self in big-endian byte order. Read more
    §

    fn put_u16_le(&mut self, n: u16)

    Writes an unsigned 16 bit integer to self in little-endian byte order. Read more
    §

    fn put_u16_ne(&mut self, n: u16)

    Writes an unsigned 16 bit integer to self in native-endian byte order. Read more
    §

    fn put_i16(&mut self, n: i16)

    Writes a signed 16 bit integer to self in big-endian byte order. Read more
    §

    fn put_i16_le(&mut self, n: i16)

    Writes a signed 16 bit integer to self in little-endian byte order. Read more
    §

    fn put_i16_ne(&mut self, n: i16)

    Writes a signed 16 bit integer to self in native-endian byte order. Read more
    §

    fn put_u32(&mut self, n: u32)

    Writes an unsigned 32 bit integer to self in big-endian byte order. Read more
    §

    fn put_u32_le(&mut self, n: u32)

    Writes an unsigned 32 bit integer to self in little-endian byte order. Read more
    §

    fn put_u32_ne(&mut self, n: u32)

    Writes an unsigned 32 bit integer to self in native-endian byte order. Read more
    §

    fn put_i32(&mut self, n: i32)

    Writes a signed 32 bit integer to self in big-endian byte order. Read more
    §

    fn put_i32_le(&mut self, n: i32)

    Writes a signed 32 bit integer to self in little-endian byte order. Read more
    §

    fn put_i32_ne(&mut self, n: i32)

    Writes a signed 32 bit integer to self in native-endian byte order. Read more
    §

    fn put_u64(&mut self, n: u64)

    Writes an unsigned 64 bit integer to self in the big-endian byte order. Read more
    §

    fn put_u64_le(&mut self, n: u64)

    Writes an unsigned 64 bit integer to self in little-endian byte order. Read more
    §

    fn put_u64_ne(&mut self, n: u64)

    Writes an unsigned 64 bit integer to self in native-endian byte order. Read more
    §

    fn put_i64(&mut self, n: i64)

    Writes a signed 64 bit integer to self in the big-endian byte order. Read more
    §

    fn put_i64_le(&mut self, n: i64)

    Writes a signed 64 bit integer to self in little-endian byte order. Read more
    §

    fn put_i64_ne(&mut self, n: i64)

    Writes a signed 64 bit integer to self in native-endian byte order. Read more
    §

    fn put_u128(&mut self, n: u128)

    Writes an unsigned 128 bit integer to self in the big-endian byte order. Read more
    §

    fn put_u128_le(&mut self, n: u128)

    Writes an unsigned 128 bit integer to self in little-endian byte order. Read more
    §

    fn put_u128_ne(&mut self, n: u128)

    Writes an unsigned 128 bit integer to self in native-endian byte order. Read more
    §

    fn put_i128(&mut self, n: i128)

    Writes a signed 128 bit integer to self in the big-endian byte order. Read more
    §

    fn put_i128_le(&mut self, n: i128)

    Writes a signed 128 bit integer to self in little-endian byte order. Read more
    §

    fn put_i128_ne(&mut self, n: i128)

    Writes a signed 128 bit integer to self in native-endian byte order. Read more
    §

    fn put_uint(&mut self, n: u64, nbytes: usize)

    Writes an unsigned n-byte integer to self in big-endian byte order. Read more
    §

    fn put_uint_le(&mut self, n: u64, nbytes: usize)

    Writes an unsigned n-byte integer to self in the little-endian byte order. Read more
    §

    fn put_uint_ne(&mut self, n: u64, nbytes: usize)

    Writes an unsigned n-byte integer to self in the native-endian byte order. Read more
    §

    fn put_int(&mut self, n: i64, nbytes: usize)

    Writes low nbytes of a signed integer to self in big-endian byte order. Read more
    §

    fn put_int_le(&mut self, n: i64, nbytes: usize)

    Writes low nbytes of a signed integer to self in little-endian byte order. Read more
    §

    fn put_int_ne(&mut self, n: i64, nbytes: usize)

    Writes low nbytes of a signed integer to self in native-endian byte order. Read more
    §

    fn put_f32(&mut self, n: f32)

    Writes an IEEE754 single-precision (4 bytes) floating point number to\nself in big-endian byte order. Read more
    §

    fn put_f32_le(&mut self, n: f32)

    Writes an IEEE754 single-precision (4 bytes) floating point number to\nself in little-endian byte order. Read more
    §

    fn put_f32_ne(&mut self, n: f32)

    Writes an IEEE754 single-precision (4 bytes) floating point number to\nself in native-endian byte order. Read more
    §

    fn put_f64(&mut self, n: f64)

    Writes an IEEE754 double-precision (8 bytes) floating point number to\nself in big-endian byte order. Read more
    §

    fn put_f64_le(&mut self, n: f64)

    Writes an IEEE754 double-precision (8 bytes) floating point number to\nself in little-endian byte order. Read more
    §

    fn put_f64_ne(&mut self, n: f64)

    Writes an IEEE754 double-precision (8 bytes) floating point number to\nself in native-endian byte order. Read more
    §

    fn limit(self, limit: usize) -> Limit<Self>
    where\n Self: Sized,

    Creates an adaptor which can write at most limit bytes to self. Read more
    §

    fn writer(self) -> Writer<Self>
    where\n Self: Sized,

    Creates an adaptor which implements the Write trait for self. Read more
    §

    fn chain_mut<U>(self, next: U) -> Chain<Self, U>
    where\n U: BufMut,\n Self: Sized,

    Creates an adapter which will chain this buffer with another. Read more
    ","BufMut","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Clone for Vec<T, A>
    where\n T: Clone,\n A: Allocator + Clone,

    source§

    fn clone_from(&mut self, source: &Vec<T, A>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible. Additionally, if the element type\nT overrides clone_from(), this will reuse the resources of self’s\nelements as well.

    \n
    §Examples
    \n
    let x = vec![5, 6, 7];\nlet mut y = vec![8, 9, 10];\nlet yp: *const i32 = y.as_ptr();\n\ny.clone_from(&x);\n\n// The value is the same\nassert_eq!(x, y);\n\n// And no reallocation occurred\nassert_eq!(yp, y.as_ptr());
    \n
    source§

    fn clone(&self) -> Vec<T, A>

    Returns a copy of the value. Read more
    ","Clone","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Debug for Vec<T, A>
    where\n T: Debug,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl DecodeTarget for Vec<u8>

    §

    fn decode_with(\n &mut self,\n max_len: usize,\n f: impl for<'a> FnOnce(&'a mut [u8]) -> Result<usize, Error>,\n) -> Result<usize, Error>

    Decodes into this buffer, provides the maximum length for implementations that wish to\npreallocate space, along with a function that will write bytes into the buffer and return\nthe length written to it.
    ","DecodeTarget","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T> Default for Vec<T>

    source§

    fn default() -> Vec<T>

    Creates an empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    ","Default","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Deref for Vec<T, A>
    where\n A: Allocator,

    §

    type Target = [T]

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &[T]

    Dereferences the value.
    ","Deref","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> DerefMut for Vec<T, A>
    where\n A: Allocator,

    source§

    fn deref_mut(&mut self) -> &mut [T]

    Mutably dereferences the value.
    ","DerefMut","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<'de, T> Deserialize<'de> for Vec<T>
    where\n T: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Vec<T>> for Vec<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Drop for Vec<T, A>
    where\n A: Allocator,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl EncodeTarget for Vec<u8>

    §

    fn encode_with(\n &mut self,\n max_len: usize,\n f: impl for<'a> FnOnce(&'a mut [u8]) -> Result<usize, Error>,\n) -> Result<usize, Error>

    Encodes into this buffer, provides the maximum length for implementations that wish to\npreallocate space, along with a function that will encode ASCII bytes into the buffer and\nreturn the length written to it.
    ","EncodeTarget","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.2.0 · source§

    impl<'a, T, A> Extend<&'a T> for Vec<T, A>
    where\n T: Copy + 'a,\n A: Allocator,

    Extend implementation that copies elements out of references before pushing them onto the Vec.

    \n

    This implementation is specialized for slice iterators, where it uses copy_from_slice to\nappend the entire slice at once.

    \n
    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Extend<T> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T> From<&[T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&[T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&[T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&[T; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl From<&OperationPrefixId> for Vec<u8>

    §

    fn from(prefix: &OperationPrefixId) -> Vec<u8>

    Converts to this type from the input type.
    ","From<&OperationPrefixId>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.19.0 · source§

    impl<T> From<&mut [T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&mut [T]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&mut [T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&mut [T; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl From<&str> for Vec<u8>

    source§

    fn from(s: &str) -> Vec<u8>

    Allocate a Vec<u8> and fill it with a UTF-8 string.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(\"123\"), vec![b'1', b'2', b'3']);
    \n
    ","From<&str>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.44.0 · source§

    impl<T, const N: usize> From<[T; N]> for Vec<T>

    source§

    fn from(s: [T; N]) -> Vec<T>

    Allocate a Vec<T> and move s’s items into it.

    \n
    §Examples
    \n
    assert_eq!(Vec::from([1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<[T; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.5.0 · source§

    impl<T, A> From<BinaryHeap<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(heap: BinaryHeap<T, A>) -> Vec<T, A>

    Converts a BinaryHeap<T> into a Vec<T>.

    \n

    This conversion requires no data movement or allocation, and has\nconstant time complexity.

    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T, O> From<BitVec<T, O>> for Vec<T>
    where\n T: BitStore,\n O: BitOrder,

    §

    fn from(bv: BitVec<T, O>) -> Vec<T>

    Converts to this type from the input type.
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.18.0 · source§

    impl<T, A> From<Box<[T], A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(s: Box<[T], A>) -> Vec<T, A>

    Convert a boxed slice into a vector by transferring ownership of\nthe existing heap allocation.

    \n
    §Examples
    \n
    let b: Box<[i32]> = vec![1, 2, 3].into_boxed_slice();\nassert_eq!(Vec::from(b), vec![1, 2, 3]);
    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl From<Bytes> for Vec<u8>

    §

    fn from(bytes: Bytes) -> Vec<u8>

    Converts to this type from the input type.
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl From<BytesMut> for Vec<u8>

    §

    fn from(bytes: BytesMut) -> Vec<u8>

    Converts to this type from the input type.
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.7.0 · source§

    impl From<CString> for Vec<u8>

    source§

    fn from(s: CString) -> Vec<u8>

    Converts a CString into a Vec<u8>.

    \n

    The conversion consumes the CString, and removes the terminating NUL byte.

    \n
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.14.0 · source§

    impl<'a, T> From<Cow<'a, [T]>> for Vec<T>
    where\n [T]: ToOwned<Owned = Vec<T>>,

    source§

    fn from(s: Cow<'a, [T]>) -> Vec<T>

    Convert a clone-on-write slice into a vector.

    \n

    If s already owns a Vec<T>, it will be returned directly.\nIf s is borrowing a slice, a new Vec<T> will be allocated and\nfilled by cloning s’s items into it.

    \n
    §Examples
    \n
    let o: Cow<'_, [i32]> = Cow::Owned(vec![1, 2, 3]);\nlet b: Cow<'_, [i32]> = Cow::Borrowed(&[1, 2, 3]);\nassert_eq!(Vec::from(o), Vec::from(b));
    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.14.0 · source§

    impl From<String> for Vec<u8>

    source§

    fn from(string: String) -> Vec<u8>

    Converts the given String to a vector Vec that holds values of type u8.

    \n
    §Examples
    \n
    let s1 = String::from(\"hello world\");\nlet v1 = Vec::from(s1);\n\nfor b in v1 {\n    println!(\"{b}\");\n}
    \n
    ","From","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.10.0 · source§

    impl<T, A> From<VecDeque<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(other: VecDeque<T, A>) -> Vec<T, A>

    Turn a VecDeque<T> into a Vec<T>.

    \n

    This never needs to re-allocate, but does need to do O(n) data movement if\nthe circular buffer doesn’t happen to be at the beginning of the allocation.

    \n
    §Examples
    \n
    use std::collections::VecDeque;\n\n// This one is *O*(1).\nlet deque: VecDeque<_> = (1..5).collect();\nlet ptr = deque.as_slices().0.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);\n\n// This one needs data rearranging.\nlet mut deque: VecDeque<_> = (1..5).collect();\ndeque.push_front(9);\ndeque.push_front(8);\nlet ptr = deque.as_slices().1.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [8, 9, 1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);
    \n
    ","From>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T> FromIterator<T> for Vec<T>

    Collects an iterator into a Vec, commonly called via Iterator::collect()

    \n

    §Allocation behavior

    \n

    In general Vec does not guarantee any particular growth or allocation strategy.\nThat also applies to this trait impl.

    \n

    Note: This section covers implementation details and is therefore exempt from\nstability guarantees.

    \n

    Vec may use any or none of the following strategies,\ndepending on the supplied iterator:

    \n
      \n
    • preallocate based on Iterator::size_hint()\n
        \n
      • and panic if the number of items is outside the provided lower/upper bounds
      • \n
      \n
    • \n
    • use an amortized growth strategy similar to pushing one item at a time
    • \n
    • perform the iteration in-place on the original allocation backing the iterator
    • \n
    \n

    The last case warrants some attention. It is an optimization that in many cases reduces peak memory\nconsumption and improves cache locality. But when big, short-lived allocations are created,\nonly a small fraction of their items get collected, no further use is made of the spare capacity\nand the resulting Vec is moved into a longer-lived structure, then this can lead to the large\nallocations having their lifetimes unnecessarily extended which can result in increased memory\nfootprint.

    \n

    In cases where this is an issue, the excess capacity can be discarded with Vec::shrink_to(),\nVec::shrink_to_fit() or by collecting into Box<[T]> instead, which additionally reduces\nthe size of the long-lived struct.

    \n\n
    static LONG_LIVED: Mutex<Vec<Vec<u16>>> = Mutex::new(Vec::new());\n\nfor i in 0..10 {\n    let big_temporary: Vec<u16> = (0..1024).collect();\n    // discard most items\n    let mut result: Vec<_> = big_temporary.into_iter().filter(|i| i % 100 == 0).collect();\n    // without this a lot of unused capacity might be moved into the global\n    result.shrink_to_fit();\n    LONG_LIVED.lock().unwrap().push(result);\n}
    \n
    source§

    fn from_iter<I>(iter: I) -> Vec<T>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Hash for Vec<T, A>
    where\n T: Hash,\n A: Allocator,

    The hash of a vector is the same as that of the corresponding slice,\nas required by the core::borrow::Borrow implementation.

    \n\n
    use std::hash::BuildHasher;\n\nlet b = std::hash::RandomState::new();\nlet v: Vec<u8> = vec![0xa8, 0x3c, 0x09];\nlet s: &[u8] = &[0xa8, 0x3c, 0x09];\nassert_eq!(b.hash_one(v), b.hash_one(s));
    \n
    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, I, A> Index<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    §

    type Output = <I as SliceIndex<[T]>>::Output

    The returned type after indexing.
    source§

    fn index(&self, index: I) -> &<Vec<T, A> as Index<I>>::Output

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, I, A> IndexMut<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    source§

    fn index_mut(&mut self, index: I) -> &mut <Vec<T, A> as Index<I>>::Output

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<'de, T, E> IntoDeserializer<'de, E> for Vec<T>
    where\n T: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<Vec<T> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(self) -> <Vec<T> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> IntoIterator for Vec<T, A>
    where\n A: Allocator,

    source§

    fn into_iter(self) -> <Vec<T, A> as IntoIterator>::IntoIter

    Creates a consuming iterator, that is, one that moves each value out of\nthe vector (from start to end). The vector cannot be used after calling\nthis.

    \n
    §Examples
    \n
    let v = vec![\"a\".to_string(), \"b\".to_string()];\nlet mut v_iter = v.into_iter();\n\nlet first_element: Option<String> = v_iter.next();\n\nassert_eq!(first_element, Some(\"a\".to_string()));\nassert_eq!(v_iter.next(), Some(\"b\".to_string()));\nassert_eq!(v_iter.next(), None);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl IntoResponse for Vec<u8>

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl Message for Vec<u8>

    google.protobuf.BytesValue

    \n
    source§

    fn encoded_len(&self) -> usize

    Returns the encoded length of the message without a length delimiter.
    source§

    fn clear(&mut self)

    Clears the message, resetting all fields to their default.
    source§

    fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
    where\n Self: Sized,

    Encodes the message to a buffer. Read more
    source§

    fn encode_to_vec(&self) -> Vec<u8>
    where\n Self: Sized,

    Encodes the message to a newly allocated buffer.
    source§

    fn encode_length_delimited(\n &self,\n buf: &mut impl BufMut,\n) -> Result<(), EncodeError>
    where\n Self: Sized,

    Encodes the message with a length-delimiter to a buffer. Read more
    source§

    fn encode_length_delimited_to_vec(&self) -> Vec<u8>
    where\n Self: Sized,

    Encodes the message with a length-delimiter to a newly allocated buffer.
    source§

    fn decode(buf: impl Buf) -> Result<Self, DecodeError>
    where\n Self: Default,

    Decodes an instance of the message from a buffer. Read more
    source§

    fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
    where\n Self: Default,

    Decodes a length-delimited instance of the message from the buffer.
    source§

    fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
    where\n Self: Sized,

    Decodes an instance of the message from a buffer, and merges it into self. Read more
    source§

    fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>
    where\n Self: Sized,

    Decodes a length-delimited instance of the message from buffer, and\nmerges it into self.
    ","Message","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl Name for Vec<u8>

    google.protobuf.BytesValue

    \n
    source§

    const NAME: &'static str = "BytesValue"

    Simple name for this Message.\nThis name is the same as it appears in the source .proto file, e.g. FooBar.
    source§

    const PACKAGE: &'static str = "google.protobuf"

    Package name this message type is contained in. They are domain-like\nand delimited by ., e.g. google.protobuf.
    source§

    fn type_url() -> String

    Type URL for this Message, which by default is the full name with a\nleading slash, but may also include a leading domain name, e.g.\ntype.googleapis.com/google.profile.Person.\nThis can be used when serializing into the google.protobuf.Any type.
    source§

    fn full_name() -> String

    Fully-qualified unique name for this Message.\nIt’s prefixed with the package name and names of any parent messages,\ne.g. google.rpc.BadRequest.FieldViolation.\nBy default, this is the package name followed by the message name.\nFully-qualified names must be unique within a domain of Type URLs.
    ","Name","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Ord for Vec<T, A>
    where\n T: Ord,\n A: Allocator,

    Implements ordering of vectors, lexicographically.

    \n
    source§

    fn cmp(&self, other: &Vec<T, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<&[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&mut [U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&mut [U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&mut [U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&mut [U]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.48.0 · source§

    impl<T, U, A> PartialEq<[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U; N]>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialEq<Bytes> for Vec<u8>

    §

    fn eq(&self, other: &Bytes) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialEq<BytesMut> for Vec<u8>

    §

    fn eq(&self, other: &BytesMut) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, U, A1, A2> PartialEq<Vec<U, A2>> for Vec<T, A1>
    where\n A1: Allocator,\n A2: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &Vec<U, A2>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &Vec<U, A2>) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialOrd<Bytes> for Vec<u8>

    §

    fn partial_cmp(&self, other: &Bytes) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl PartialOrd<BytesMut> for Vec<u8>

    §

    fn partial_cmp(&self, other: &BytesMut) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A1, A2> PartialOrd<Vec<T, A2>> for Vec<T, A1>
    where\n T: PartialOrd,\n A1: Allocator,\n A2: Allocator,

    Implements comparison of vectors, lexicographically.

    \n
    source§

    fn partial_cmp(&self, other: &Vec<T, A2>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T> Serialize for Vec<T>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, U> SerializeAs<Vec<T>> for Vec<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Vec<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T> Sink<T> for Vec<T>

    §

    type Error = Infallible

    The type of value produced by the sink when an error occurs.
    §

    fn poll_ready(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Attempts to prepare the Sink to receive a value. Read more
    §

    fn start_send(\n self: Pin<&mut Vec<T>>,\n item: T,\n) -> Result<(), <Vec<T> as Sink<T>>::Error>

    Begin the process of sending a value to the sink.\nEach call to this function must be preceded by a successful call to\npoll_ready which returned Poll::Ready(Ok(())). Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output from this sink. Read more
    §

    fn poll_close(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output and close this sink, if necessary. Read more
    ","Sink","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T> Source for Vec<T>
    where\n T: Source + Sync + Send + Clone + 'static,

    §

    fn clone_into_box(&self) -> Box<dyn Source + Send + Sync>

    §

    fn collect(&self) -> Result<HashMap<String, Value>, ConfigError>

    Collect all configuration properties available from this source and return\na Map.
    §

    fn collect_to(&self, cache: &mut Value) -> Result<(), ConfigError>

    Collects all configuration properties to a provided cache.
    ","Source","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T> Vec<T>

    1.0.0 (const: 1.39.0) · source

    pub const fn new() -> Vec<T>

    Constructs a new, empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> Vec<T>

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<()>::with_capacity(10);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity(capacity: usize) -> Result<Vec<T>, TryReserveError>

    🔬This is a nightly-only experimental API. (try_with_capacity)

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    1.0.0 · source

    pub unsafe fn from_raw_parts(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n) -> Vec<T>

    Creates a Vec<T> directly from a pointer, a length, and a capacity.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must have been allocated using the global allocator, such as via\nthe alloc::alloc function.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to be the capacity that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is normally not safe\nto build a Vec<u8> from a pointer to a C char array with length\nsize_t, doing so is only safe if the array was initially allocated by\na Vec or String.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1. To avoid\nthese issues, it is often preferable to do casting/transmuting using\nslice::from_raw_parts instead.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    use std::ptr;\nuse std::mem;\n\nlet v = vec![1, 2, 3];\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts(p, len, cap);\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    use std::alloc::{alloc, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = alloc(layout).cast::<u32>();\n        if mem.is_null() {\n            return;\n        }\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts(mem, 1, 16)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: Clone,\n A: Allocator,

    1.5.0 · source

    pub fn resize(&mut self, new_len: usize, value: T)

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with value.\nIf new_len is less than len, the Vec is simply truncated.

    \n

    This method requires T to implement Clone,\nin order to be able to clone the passed value.\nIf you need more flexibility (or want to rely on Default instead of\nClone), use Vec::resize_with.\nIf you only need to resize to a smaller size, use Vec::truncate.

    \n
    §Examples
    \n
    let mut vec = vec![\"hello\"];\nvec.resize(3, \"world\");\nassert_eq!(vec, [\"hello\", \"world\", \"world\"]);\n\nlet mut vec = vec![1, 2, 3, 4];\nvec.resize(2, 0);\nassert_eq!(vec, [1, 2]);
    \n
    1.6.0 · source

    pub fn extend_from_slice(&mut self, other: &[T])

    Clones and appends all elements in a slice to the Vec.

    \n

    Iterates over the slice other, clones each element, and then appends\nit to this Vec. The other slice is traversed in-order.

    \n

    Note that this function is same as extend except that it is\nspecialized to work with slices instead. If and when Rust gets\nspecialization this function will likely be deprecated (but still\navailable).

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.extend_from_slice(&[2, 3, 4]);\nassert_eq!(vec, [1, 2, 3, 4]);
    \n
    1.53.0 · source

    pub fn extend_from_within<R>(&mut self, src: R)
    where\n R: RangeBounds<usize>,

    Copies elements from src range to the end of the vector.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut vec = vec![0, 1, 2, 3, 4];\n\nvec.extend_from_within(2..);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4]);\n\nvec.extend_from_within(..2);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1]);\n\nvec.extend_from_within(4..8);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1, 4, 2, 3, 4]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: PartialEq,\n A: Allocator,

    1.0.0 · source

    pub fn dedup(&mut self)

    Removes consecutive repeated elements in the vector according to the\nPartialEq trait implementation.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 2, 3, 2];\n\nvec.dedup();\n\nassert_eq!(vec, [1, 2, 3, 2]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    1.21.0 · source

    pub fn splice<R, I>(\n &mut self,\n range: R,\n replace_with: I,\n) -> Splice<'_, <I as IntoIterator>::IntoIter, A>
    where\n R: RangeBounds<usize>,\n I: IntoIterator<Item = T>,

    Creates a splicing iterator that replaces the specified range in the vector\nwith the given replace_with iterator and yields the removed items.\nreplace_with does not need to be the same length as range.

    \n

    range is removed even if the iterator is not consumed until the end.

    \n

    It is unspecified how many elements are removed from the vector\nif the Splice value is leaked.

    \n

    The input iterator replace_with is only consumed when the Splice value is dropped.

    \n

    This is optimal if:

    \n
      \n
    • The tail (elements in the vector after range) is empty,
    • \n
    • or replace_with yields fewer or equal elements than range’s length
    • \n
    • or the lower bound of its size_hint() is exact.
    • \n
    \n

    Otherwise, a temporary vector is allocated and the tail is moved twice.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3, 4];\nlet new = [7, 8, 9];\nlet u: Vec<_> = v.splice(1..3, new).collect();\nassert_eq!(v, &[1, 7, 8, 9, 4]);\nassert_eq!(u, &[2, 3]);
    \n
    source

    pub fn extract_if<F>(&mut self, filter: F) -> ExtractIf<'_, T, F, A>
    where\n F: FnMut(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, then the element is removed and yielded.\nIf the closure returns false, the element will remain in the vector and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n

    Using this method is equivalent to the following code:

    \n\n
    let mut i = 0;\nwhile i < vec.len() {\n    if some_predicate(&mut vec[i]) {\n        let val = vec.remove(i);\n        // your code here\n    } else {\n        i += 1;\n    }\n}\n
    \n

    But extract_if is easier to use. extract_if is also more efficient,\nbecause it can backshift the elements of the array in bulk.

    \n

    Note that extract_if also lets you mutate every element in the filter closure,\nregardless of whether you choose to keep or remove it.

    \n
    §Examples
    \n

    Splitting an array into evens and odds, reusing the original allocation:

    \n\n
    #![feature(extract_if)]\nlet mut numbers = vec![1, 2, 3, 4, 5, 6, 8, 9, 11, 13, 14, 15];\n\nlet evens = numbers.extract_if(|x| *x % 2 == 0).collect::<Vec<_>>();\nlet odds = numbers;\n\nassert_eq!(evens, vec![2, 4, 6, 8, 14]);\nassert_eq!(odds, vec![1, 3, 5, 9, 11, 13, 15]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    source

    pub const fn new_in(alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec: Vec<i32, _> = Vec::new_in(System);
    \n
    source

    pub fn with_capacity_in(capacity: usize, alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T, A> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec = Vec::with_capacity_in(10, System);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<(), System>::with_capacity_in(10, System);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity_in(\n capacity: usize,\n alloc: A,\n) -> Result<Vec<T, A>, TryReserveError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    source

    pub unsafe fn from_raw_parts_in(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n alloc: A,\n) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Creates a Vec<T, A> directly from a pointer, a length, a capacity,\nand an allocator.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must be currently allocated via the given allocator alloc.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to fit the layout size that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T, A>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is not safe\nto build a Vec<u8> from a pointer to a C char array with length size_t.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nuse std::ptr;\nuse std::mem;\n\nlet mut v = Vec::with_capacity_in(3, System);\nv.push(1);\nv.push(2);\nv.push(3);\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\nlet alloc = v.allocator();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts_in(p, len, cap, alloc.clone());\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    #![feature(allocator_api)]\n\nuse std::alloc::{AllocError, Allocator, Global, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = match Global.allocate(layout) {\n            Ok(mem) => mem.cast::<u32>().as_ptr(),\n            Err(AllocError) => return,\n        };\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts_in(mem, 1, 16, Global)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    source

    pub fn into_raw_parts(self) -> (*mut T, usize, usize)

    🔬This is a nightly-only experimental API. (vec_into_raw_parts)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity).

    \n

    Returns the raw pointer to the underlying data, the length of\nthe vector (in elements), and the allocated capacity of the\ndata (in elements). These are the same arguments in the same\norder as the arguments to from_raw_parts.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(vec_into_raw_parts)]\nlet v: Vec<i32> = vec![-1, 0, 1];\n\nlet (ptr, len, cap) = v.into_raw_parts();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts(ptr, len, cap)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    source

    pub fn into_raw_parts_with_alloc(self) -> (*mut T, usize, usize, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity, allocator).

    \n

    Returns the raw pointer to the underlying data, the length of the vector (in elements),\nthe allocated capacity of the data (in elements), and the allocator. These are the same\narguments in the same order as the arguments to from_raw_parts_in.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts_in function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(allocator_api, vec_into_raw_parts)]\n\nuse std::alloc::System;\n\nlet mut v: Vec<i32, System> = Vec::new_in(System);\nv.push(-1);\nv.push(0);\nv.push(1);\n\nlet (ptr, len, cap, alloc) = v.into_raw_parts_with_alloc();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts_in(ptr, len, cap, alloc)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the total number of elements the vector can hold without\nreallocating.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::with_capacity(10);\nvec.push(42);\nassert!(vec.capacity() >= 10);
    \n
    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to\nspeculatively avoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve(10);\nassert!(vec.capacity() >= 11);
    \n
    1.0.0 · source

    pub fn reserve_exact(&mut self, additional: usize)

    Reserves the minimum capacity for at least additional more elements to\nbe inserted in the given Vec<T>. Unlike reserve, this will not\ndeliberately over-allocate to speculatively avoid frequent allocations.\nAfter calling reserve_exact, capacity will be greater than or equal to\nself.len() + additional. Does nothing if the capacity is already\nsufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer reserve if future insertions are expected.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve_exact(10);\nassert!(vec.capacity() >= 11);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to speculatively avoid\nfrequent reallocations. After calling try_reserve, capacity will be\ngreater than or equal to self.len() + additional if it returns\nOk(()). Does nothing if capacity is already sufficient. This method\npreserves the contents even if an error occurs.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.57.0 · source

    pub fn try_reserve_exact(\n &mut self,\n additional: usize,\n) -> Result<(), TryReserveError>

    Tries to reserve the minimum capacity for at least additional\nelements to be inserted in the given Vec<T>. Unlike try_reserve,\nthis will not deliberately over-allocate to speculatively avoid frequent\nallocations. After calling try_reserve_exact, capacity will be greater\nthan or equal to self.len() + additional if it returns Ok(()).\nDoes nothing if the capacity is already sufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer try_reserve if future insertions are expected.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve_exact(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the vector as much as possible.

    \n

    The behavior of this method depends on the allocator, which may either shrink the vector\nin-place or reallocate. The resulting vector might still have some excess capacity, just as\nis the case for with_capacity. See Allocator::shrink for more details.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to_fit();\nassert!(vec.capacity() >= 3);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the vector with a lower bound.

    \n

    The capacity will remain at least as large as both the length\nand the supplied value.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to(4);\nassert!(vec.capacity() >= 4);\nvec.shrink_to(0);\nassert!(vec.capacity() >= 3);
    \n
    1.0.0 · source

    pub fn into_boxed_slice(self) -> Box<[T], A>

    Converts the vector into Box<[T]>.

    \n

    Before doing the conversion, this method discards excess capacity like shrink_to_fit.

    \n
    §Examples
    \n
    let v = vec![1, 2, 3];\n\nlet slice = v.into_boxed_slice();
    \n

    Any excess capacity is removed:

    \n\n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\n\nassert!(vec.capacity() >= 10);\nlet slice = vec.into_boxed_slice();\nassert_eq!(slice.into_vec().capacity(), 3);
    \n
    1.0.0 · source

    pub fn truncate(&mut self, len: usize)

    Shortens the vector, keeping the first len elements and dropping\nthe rest.

    \n

    If len is greater or equal to the vector’s current length, this has\nno effect.

    \n

    The drain method can emulate truncate, but causes the excess\nelements to be returned instead of dropped.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n

    Truncating a five element vector to two elements:

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nvec.truncate(2);\nassert_eq!(vec, [1, 2]);
    \n

    No truncation occurs when len is greater than the vector’s current\nlength:

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(8);\nassert_eq!(vec, [1, 2, 3]);
    \n

    Truncating when len == 0 is equivalent to calling the clear\nmethod.

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(0);\nassert_eq!(vec, []);
    \n
    1.7.0 · source

    pub fn as_slice(&self) -> &[T]

    Extracts a slice containing the entire vector.

    \n

    Equivalent to &s[..].

    \n
    §Examples
    \n
    use std::io::{self, Write};\nlet buffer = vec![1, 2, 3, 5, 8];\nio::sink().write(buffer.as_slice()).unwrap();
    \n
    1.7.0 · source

    pub fn as_mut_slice(&mut self) -> &mut [T]

    Extracts a mutable slice of the entire vector.

    \n

    Equivalent to &mut s[..].

    \n
    §Examples
    \n
    use std::io::{self, Read};\nlet mut buffer = vec![0; 3];\nio::repeat(0b101).read_exact(buffer.as_mut_slice()).unwrap();
    \n
    1.37.0 · source

    pub fn as_ptr(&self) -> *const T

    Returns a raw pointer to the vector’s buffer, or a dangling raw pointer\nvalid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    The caller must also ensure that the memory the pointer (non-transitively) points to\nis never written to (except inside an UnsafeCell) using this pointer or any pointer\nderived from it. If you need to mutate the contents of the slice, use as_mut_ptr.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize mutable references to the slice,\nor mutable references to specific elements you are planning on accessing through this pointer,\nas well as writing to those elements, may still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    let x = vec![1, 2, 4];\nlet x_ptr = x.as_ptr();\n\nunsafe {\n    for i in 0..x.len() {\n        assert_eq!(*x_ptr.add(i), 1 << i);\n    }\n}
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0, 1, 2];\n    let ptr1 = v.as_ptr();\n    let _ = ptr1.read();\n    let ptr2 = v.as_mut_ptr().offset(2);\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`\n    // because it mutated a different element:\n    let _ = ptr1.read();\n}
    \n
    1.37.0 · source

    pub fn as_mut_ptr(&mut self) -> *mut T

    Returns an unsafe mutable pointer to the vector’s buffer, or a dangling\nraw pointer valid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize references to the slice,\nor references to specific elements you are planning on accessing through this pointer,\nmay still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    // Allocate vector big enough for 4 elements.\nlet size = 4;\nlet mut x: Vec<i32> = Vec::with_capacity(size);\nlet x_ptr = x.as_mut_ptr();\n\n// Initialize elements via raw pointer writes, then set length.\nunsafe {\n    for i in 0..size {\n        *x_ptr.add(i) = i as i32;\n    }\n    x.set_len(size);\n}\nassert_eq!(&*x, &[0, 1, 2, 3]);
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0];\n    let ptr1 = v.as_mut_ptr();\n    ptr1.write(1);\n    let ptr2 = v.as_mut_ptr();\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`:\n    ptr1.write(3);\n}
    \n
    source

    pub fn allocator(&self) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n
    1.0.0 · source

    pub unsafe fn set_len(&mut self, new_len: usize)

    Forces the length of the vector to new_len.

    \n

    This is a low-level operation that maintains none of the normal\ninvariants of the type. Normally changing the length of a vector\nis done using one of the safe operations instead, such as\ntruncate, resize, extend, or clear.

    \n
    §Safety
    \n
      \n
    • new_len must be less than or equal to capacity().
    • \n
    • The elements at old_len..new_len must be initialized.
    • \n
    \n
    §Examples
    \n

    This method can be useful for situations in which the vector\nis serving as a buffer for other code, particularly over FFI:

    \n\n
    pub fn get_dictionary(&self) -> Option<Vec<u8>> {\n    // Per the FFI method's docs, \"32768 bytes is always enough\".\n    let mut dict = Vec::with_capacity(32_768);\n    let mut dict_length = 0;\n    // SAFETY: When `deflateGetDictionary` returns `Z_OK`, it holds that:\n    // 1. `dict_length` elements were initialized.\n    // 2. `dict_length` <= the capacity (32_768)\n    // which makes `set_len` safe to call.\n    unsafe {\n        // Make the FFI call...\n        let r = deflateGetDictionary(self.strm, dict.as_mut_ptr(), &mut dict_length);\n        if r == Z_OK {\n            // ...and update the length to what was initialized.\n            dict.set_len(dict_length);\n            Some(dict)\n        } else {\n            None\n        }\n    }\n}
    \n

    While the following example is sound, there is a memory leak since\nthe inner vectors were not freed prior to the set_len call:

    \n\n
    let mut vec = vec![vec![1, 0, 0],\n                   vec![0, 1, 0],\n                   vec![0, 0, 1]];\n// SAFETY:\n// 1. `old_len..0` is empty so no elements need to be initialized.\n// 2. `0 <= capacity` always holds whatever `capacity` is.\nunsafe {\n    vec.set_len(0);\n}
    \n

    Normally, here, one would use clear instead to correctly drop\nthe contents and thus not leak memory.

    \n
    1.0.0 · source

    pub fn swap_remove(&mut self, index: usize) -> T

    Removes an element from the vector and returns it.

    \n

    The removed element is replaced by the last element of the vector.

    \n

    This does not preserve ordering of the remaining elements, but is O(1).\nIf you need to preserve the element order, use remove instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![\"foo\", \"bar\", \"baz\", \"qux\"];\n\nassert_eq!(v.swap_remove(1), \"bar\");\nassert_eq!(v, [\"foo\", \"qux\", \"baz\"]);\n\nassert_eq!(v.swap_remove(0), \"foo\");\nassert_eq!(v, [\"baz\", \"qux\"]);
    \n
    1.0.0 · source

    pub fn insert(&mut self, index: usize, element: T)

    Inserts an element at position index within the vector, shifting all\nelements after it to the right.

    \n
    §Panics
    \n

    Panics if index > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.insert(1, 4);\nassert_eq!(vec, [1, 4, 2, 3]);\nvec.insert(4, 5);\nassert_eq!(vec, [1, 4, 2, 3, 5]);
    \n
    §Time complexity
    \n

    Takes O(Vec::len) time. All items after the insertion index must be\nshifted to the right. In the worst case, all elements are shifted when\nthe insertion index is 0.

    \n
    1.0.0 · source

    pub fn remove(&mut self, index: usize) -> T

    Removes and returns the element at position index within the vector,\nshifting all elements after it to the left.

    \n

    Note: Because this shifts over the remaining elements, it has a\nworst-case performance of O(n). If you don’t need the order of elements\nto be preserved, use swap_remove instead. If you’d like to remove\nelements from the beginning of the Vec, consider using\nVecDeque::pop_front instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nassert_eq!(v.remove(1), 2);\nassert_eq!(v, [1, 3]);
    \n
    1.0.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain(|&x| x % 2 == 0);\nassert_eq!(vec, [2, 4]);
    \n

    Because the elements are visited exactly once in the original order,\nexternal state may be used to decide which elements to keep.

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nlet keep = [false, true, true, false, true];\nlet mut iter = keep.iter();\nvec.retain(|_| *iter.next().unwrap());\nassert_eq!(vec, [2, 3, 5]);
    \n
    1.61.0 · source

    pub fn retain_mut<F>(&mut self, f: F)
    where\n F: FnMut(&mut T) -> bool,

    Retains only the elements specified by the predicate, passing a mutable reference to it.

    \n

    In other words, remove all elements e such that f(&mut e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain_mut(|x| if *x <= 3 {\n    *x += 1;\n    true\n} else {\n    false\n});\nassert_eq!(vec, [2, 3, 4]);
    \n
    1.16.0 · source

    pub fn dedup_by_key<F, K>(&mut self, key: F)
    where\n F: FnMut(&mut T) -> K,\n K: PartialEq,

    Removes all but the first of consecutive elements in the vector that resolve to the same\nkey.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![10, 20, 21, 30, 20];\n\nvec.dedup_by_key(|i| *i / 10);\n\nassert_eq!(vec, [10, 20, 30, 20]);
    \n
    1.16.0 · source

    pub fn dedup_by<F>(&mut self, same_bucket: F)
    where\n F: FnMut(&mut T, &mut T) -> bool,

    Removes all but the first of consecutive elements in the vector satisfying a given equality\nrelation.

    \n

    The same_bucket function is passed references to two elements from the vector and\nmust determine if the elements compare equal. The elements are passed in opposite order\nfrom their order in the slice, so if same_bucket(a, b) returns true, a is removed.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![\"foo\", \"bar\", \"Bar\", \"baz\", \"bar\"];\n\nvec.dedup_by(|a, b| a.eq_ignore_ascii_case(b));\n\nassert_eq!(vec, [\"foo\", \"bar\", \"baz\", \"bar\"]);
    \n
    1.0.0 · source

    pub fn push(&mut self, value: T)

    Appends an element to the back of a collection.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2];\nvec.push(3);\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Time complexity
    \n

    Takes amortized O(1) time. If the vector’s length would exceed its\ncapacity after the push, O(capacity) time is taken to copy the\nvector’s elements to a larger allocation. This expensive operation is\noffset by the capacity O(1) insertions it allows.

    \n
    source

    pub fn push_within_capacity(&mut self, value: T) -> Result<(), T>

    🔬This is a nightly-only experimental API. (vec_push_within_capacity)

    Appends an element if there is sufficient spare capacity, otherwise an error is returned\nwith the element.

    \n

    Unlike push this method will not reallocate when there’s insufficient capacity.\nThe caller should use reserve or try_reserve to ensure that there is enough capacity.

    \n
    §Examples
    \n

    A manual, panic-free alternative to FromIterator:

    \n\n
    #![feature(vec_push_within_capacity)]\n\nuse std::collections::TryReserveError;\nfn from_iter_fallible<T>(iter: impl Iterator<Item=T>) -> Result<Vec<T>, TryReserveError> {\n    let mut vec = Vec::new();\n    for value in iter {\n        if let Err(value) = vec.push_within_capacity(value) {\n            vec.try_reserve(1)?;\n            // this cannot fail, the previous line either returned or added at least 1 free slot\n            let _ = vec.push_within_capacity(value);\n        }\n    }\n    Ok(vec)\n}\nassert_eq!(from_iter_fallible(0..100), Ok(Vec::from_iter(0..100)));
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    1.0.0 · source

    pub fn pop(&mut self) -> Option<T>

    Removes the last element from a vector and returns it, or None if it\nis empty.

    \n

    If you’d like to pop the first element, consider using\nVecDeque::pop_front instead.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nassert_eq!(vec.pop(), Some(3));\nassert_eq!(vec, [1, 2]);
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    source

    pub fn pop_if<F>(&mut self, f: F) -> Option<T>
    where\n F: FnOnce(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (vec_pop_if)

    Removes and returns the last element in a vector if the predicate\nreturns true, or None if the predicate returns false or the vector\nis empty.

    \n
    §Examples
    \n
    #![feature(vec_pop_if)]\n\nlet mut vec = vec![1, 2, 3, 4];\nlet pred = |x: &mut i32| *x % 2 == 0;\n\nassert_eq!(vec.pop_if(pred), Some(4));\nassert_eq!(vec, [1, 2, 3]);\nassert_eq!(vec.pop_if(pred), None);
    \n
    1.4.0 · source

    pub fn append(&mut self, other: &mut Vec<T, A>)

    Moves all the elements of other into self, leaving other empty.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet mut vec2 = vec![4, 5, 6];\nvec.append(&mut vec2);\nassert_eq!(vec, [1, 2, 3, 4, 5, 6]);\nassert_eq!(vec2, []);
    \n
    1.6.0 · source

    pub fn drain<R>(&mut self, range: R) -> Drain<'_, T, A>
    where\n R: RangeBounds<usize>,

    Removes the specified range from the vector in bulk, returning all\nremoved elements as an iterator. If the iterator is dropped before\nbeing fully consumed, it drops the remaining removed elements.

    \n

    The returned iterator keeps a mutable borrow on the vector to optimize\nits implementation.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Leaking
    \n

    If the returned iterator goes out of scope without being dropped (due to\nmem::forget, for example), the vector may have lost and leaked\nelements arbitrarily, including elements outside the range.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nlet u: Vec<_> = v.drain(1..).collect();\nassert_eq!(v, &[1]);\nassert_eq!(u, &[2, 3]);\n\n// A full range clears the vector, like `clear()` does\nv.drain(..);\nassert_eq!(v, &[]);
    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the vector, removing all values.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\n\nv.clear();\n\nassert!(v.is_empty());
    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the vector, also referred to\nas its ‘length’.

    \n
    §Examples
    \n
    let a = vec![1, 2, 3];\nassert_eq!(a.len(), 3);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the vector contains no elements.

    \n
    §Examples
    \n
    let mut v = Vec::new();\nassert!(v.is_empty());\n\nv.push(1);\nassert!(!v.is_empty());
    \n
    1.4.0 · source

    pub fn split_off(&mut self, at: usize) -> Vec<T, A>
    where\n A: Clone,

    Splits the collection into two at the given index.

    \n

    Returns a newly allocated vector containing the elements in the range\n[at, len). After the call, the original vector will be left containing\nthe elements [0, at) with its previous capacity unchanged.

    \n
      \n
    • If you want to take ownership of the entire contents and capacity of\nthe vector, see mem::take or mem::replace.
    • \n
    • If you don’t need the returned vector at all, see Vec::truncate.
    • \n
    • If you want to take ownership of an arbitrary subslice, or you don’t\nnecessarily want to store the removed items in a vector, see Vec::drain.
    • \n
    \n
    §Panics
    \n

    Panics if at > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet vec2 = vec.split_off(1);\nassert_eq!(vec, [1]);\nassert_eq!(vec2, [2, 3]);
    \n
    1.33.0 · source

    pub fn resize_with<F>(&mut self, new_len: usize, f: F)
    where\n F: FnMut() -> T,

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with the result of\ncalling the closure f. The return values from f will end up\nin the Vec in the order they have been generated.

    \n

    If new_len is less than len, the Vec is simply truncated.

    \n

    This method uses a closure to create new values on every push. If\nyou’d rather Clone a given value, use Vec::resize. If you\nwant to use the Default trait to generate values, you can\npass Default::default as the second argument.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.resize_with(5, Default::default);\nassert_eq!(vec, [1, 2, 3, 0, 0]);\n\nlet mut vec = vec![];\nlet mut p = 1;\nvec.resize_with(4, || { p *= 2; p });\nassert_eq!(vec, [2, 4, 8, 16]);
    \n
    1.47.0 · source

    pub fn leak<'a>(self) -> &'a mut [T]
    where\n A: 'a,

    Consumes and leaks the Vec, returning a mutable reference to the contents,\n&'a mut [T]. Note that the type T must outlive the chosen lifetime\n'a. If the type has only static references, or none at all, then this\nmay be chosen to be 'static.

    \n

    As of Rust 1.57, this method does not reallocate or shrink the Vec,\nso the leaked allocation may include unused capacity that is not part\nof the returned slice.

    \n

    This function is mainly useful for data that lives for the remainder of\nthe program’s life. Dropping the returned reference will cause a memory\nleak.

    \n
    §Examples
    \n

    Simple usage:

    \n\n
    let x = vec![1, 2, 3];\nlet static_ref: &'static mut [usize] = x.leak();\nstatic_ref[0] += 1;\nassert_eq!(static_ref, &[2, 2, 3]);
    \n
    1.60.0 · source

    pub fn spare_capacity_mut(&mut self) -> &mut [MaybeUninit<T>]

    Returns the remaining spare capacity of the vector as a slice of\nMaybeUninit<T>.

    \n

    The returned slice can be used to fill the vector with data (e.g. by\nreading from a file) before marking the data as initialized using the\nset_len method.

    \n
    §Examples
    \n
    // Allocate vector big enough for 10 elements.\nlet mut v = Vec::with_capacity(10);\n\n// Fill in the first 3 elements.\nlet uninit = v.spare_capacity_mut();\nuninit[0].write(0);\nuninit[1].write(1);\nuninit[2].write(2);\n\n// Mark the first 3 elements of the vector as being initialized.\nunsafe {\n    v.set_len(3);\n}\n\nassert_eq!(&v, &[0, 1, 2]);
    \n
    source

    pub fn split_at_spare_mut(&mut self) -> (&mut [T], &mut [MaybeUninit<T>])

    🔬This is a nightly-only experimental API. (vec_split_at_spare)

    Returns vector content as a slice of T, along with the remaining spare\ncapacity of the vector as a slice of MaybeUninit<T>.

    \n

    The returned spare capacity slice can be used to fill the vector with data\n(e.g. by reading from a file) before marking the data as initialized using\nthe set_len method.

    \n

    Note that this is a low-level API, which should be used with care for\noptimization purposes. If you need to append data to a Vec\nyou can use push, extend, extend_from_slice,\nextend_from_within, insert, append, resize or\nresize_with, depending on your exact needs.

    \n
    §Examples
    \n
    #![feature(vec_split_at_spare)]\n\nlet mut v = vec![1, 1, 2];\n\n// Reserve additional space big enough for 10 elements.\nv.reserve(10);\n\nlet (init, uninit) = v.split_at_spare_mut();\nlet sum = init.iter().copied().sum::<u32>();\n\n// Fill in the next 4 elements.\nuninit[0].write(sum);\nuninit[1].write(sum * 2);\nuninit[2].write(sum * 3);\nuninit[3].write(sum * 4);\n\n// Mark the 4 elements of the vector as being initialized.\nunsafe {\n    let len = v.len();\n    v.set_len(len + 4);\n}\n\nassert_eq!(&v, &[1, 1, 2, 4, 8, 12, 16]);
    \n
    ",0,"massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<A> Write for Vec<u8, A>
    where\n A: Allocator,

    Write is implemented for Vec<u8> by appending to the vector.\nThe vector will grow as needed.

    \n
    source§

    fn write(&mut self, buf: &[u8]) -> Result<usize, Error>

    Write a buffer into this writer, returning how many bytes were written. Read more
    source§

    fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>

    Like write, except that it writes from a slice of buffers. Read more
    source§

    fn is_write_vectored(&self) -> bool

    🔬This is a nightly-only experimental API. (can_vector)
    Determines if this Writer has an efficient write_vectored\nimplementation. Read more
    source§

    fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>

    Attempts to write an entire buffer into this writer. Read more
    source§

    fn flush(&mut self) -> Result<(), Error>

    Flush this output stream, ensuring that all intermediately buffered\ncontents reach their destination. Read more
    source§

    fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>

    🔬This is a nightly-only experimental API. (write_all_vectored)
    Attempts to write multiple buffers into this writer. Read more
    1.0.0 · source§

    fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>

    Writes a formatted string into this writer, returning any error\nencountered. Read more
    1.0.0 · source§

    fn by_ref(&mut self) -> &mut Self
    where\n Self: Sized,

    Creates a “by reference” adapter for this instance of Write. Read more
    ","Write","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<Z> Zeroize for Vec<Z>
    where\n Z: Zeroize,

    §

    fn zeroize(&mut self)

    “Best effort” zeroization for Vec.

    \n

    Ensures the entire capacity of the Vec is zeroed. Cannot ensure that\nprevious reallocations did not leave values on the heap.

    \n
    ","Zeroize","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    source§

    impl<T, A> DerefPure for Vec<T, A>
    where\n A: Allocator,

    ","DerefPure","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    1.0.0 · source§

    impl<T, A> Eq for Vec<T, A>
    where\n T: Eq,\n A: Allocator,

    ","Eq","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<T> FromStream<T> for Vec<T>

    ","FromStream","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"],["
    §

    impl<Z> ZeroizeOnDrop for Vec<Z>
    where\n Z: ZeroizeOnDrop,

    ","ZeroizeOnDrop","massa_db_exports::db_batch::Key","massa_db_exports::db_batch::Value"]], +"massa_factory_exports":[["
    §

    impl<'i, T> Accumulate<&'i [T]> for Vec<T>
    where\n T: Clone,

    §

    fn initial(capacity: Option<usize>) -> Vec<T>

    Create a new Extend of the correct type
    §

    fn accumulate(&mut self, acc: &'i [T])

    Accumulate the input into an accumulator
    ","Accumulate<&'i [T]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Accumulate<T> for Vec<T>

    §

    fn initial(capacity: Option<usize>) -> Vec<T>

    Create a new Extend of the correct type
    §

    fn accumulate(&mut self, acc: T)

    Accumulate the input into an accumulator
    ","Accumulate","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Archive for Vec<T>
    where\n T: Archive,

    §

    type Archived = ArchivedVec<<T as Archive>::Archived>

    The archived representation of this type. Read more
    §

    type Resolver = VecResolver

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Vec<T> as Archive>::Resolver,\n out: *mut <Vec<T> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> ArrayLike for Vec<T>

    §

    type Item = T

    Type of the elements being stored.
    ","ArrayLike","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> ArrayLike for Vec<T>

    §

    type Item = T

    Type of the elements being stored.
    ","ArrayLike","massa_factory_exports::types::ProductionHistory"],["
    1.5.0 · source§

    impl<T, A> AsMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut [T]

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut<[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.5.0 · source§

    impl<T, A> AsMut<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_mut(&mut self) -> &mut Vec<T, A>

    Converts this type into a mutable reference of the (usually inferred) input type.
    ","AsMut>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> AsRef<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &[T]

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef<[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> AsRef<Vec<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn as_ref(&self) -> &Vec<T, A>

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> AsRef<ZeroSlice<T>> for Vec<<T as AsULE>::ULE>
    where\n T: AsULE,

    §

    fn as_ref(&self) -> &ZeroSlice<T>

    Converts this type into a shared reference of the (usually inferred) input type.
    ","AsRef>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Borrow<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow(&self) -> &[T]

    Immutably borrows from an owned value. Read more
    ","Borrow<[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> BorrowMut<[T]> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn borrow_mut(&mut self) -> &mut [T]

    Mutably borrows from an owned value. Read more
    ","BorrowMut<[T]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Clear for Vec<T>

    §

    fn clear(&mut self)

    Clear this make, make it equivalent to newly created object.
    ","Clear","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Clone for Vec<T, A>
    where\n T: Clone,\n A: Allocator + Clone,

    source§

    fn clone_from(&mut self, source: &Vec<T, A>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible. Additionally, if the element type\nT overrides clone_from(), this will reuse the resources of self’s\nelements as well.

    \n
    §Examples
    \n
    let x = vec![5, 6, 7];\nlet mut y = vec![8, 9, 10];\nlet yp: *const i32 = y.as_ptr();\n\ny.clone_from(&x);\n\n// The value is the same\nassert_eq!(x, y);\n\n// And no reallocation occurred\nassert_eq!(yp, y.as_ptr());
    \n
    source§

    fn clone(&self) -> Vec<T, A>

    Returns a copy of the value. Read more
    ","Clone","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Debug for Vec<T, A>
    where\n T: Debug,\n A: Allocator,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T> Default for Vec<T>

    source§

    fn default() -> Vec<T>

    Creates an empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    ","Default","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Deref for Vec<T, A>
    where\n A: Allocator,

    §

    type Target = [T]

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &[T]

    Dereferences the value.
    ","Deref","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> DerefMut for Vec<T, A>
    where\n A: Allocator,

    source§

    fn deref_mut(&mut self) -> &mut [T]

    Mutably dereferences the value.
    ","DerefMut","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<'de, T> Deserialize<'de> for Vec<T>
    where\n T: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Vec<T>> for Vec<U>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<T>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Drop for Vec<T, A>
    where\n A: Allocator,

    source§

    fn drop(&mut self)

    Executes the destructor for this type. Read more
    ","Drop","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> EncodeAsVarULE<[T]> for Vec<T>
    where\n T: ULE,

    §

    fn encode_var_ule_as_slices<R>(&self, cb: impl FnOnce(&[&[u8]]) -> R) -> R

    Calls cb with a piecewise list of byte slices that when concatenated\nproduce the memory pattern of the corresponding instance of T. Read more
    §

    fn encode_var_ule_len(&self) -> usize

    Return the length, in bytes, of the corresponding [VarULE] type
    §

    fn encode_var_ule_write(&self, dst: &mut [u8])

    Write the corresponding [VarULE] type to the dst buffer. dst should\nbe the size of [Self::encode_var_ule_len()]
    ","EncodeAsVarULE<[T]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, E, F> EncodeAsVarULE<VarZeroSlice<T, F>> for Vec<E>
    where\n T: VarULE + ?Sized,\n E: EncodeAsVarULE<T>,\n F: VarZeroVecFormat,

    §

    fn encode_var_ule_as_slices<R>(&self, _: impl FnOnce(&[&[u8]]) -> R) -> R

    Calls cb with a piecewise list of byte slices that when concatenated\nproduce the memory pattern of the corresponding instance of T. Read more
    §

    fn encode_var_ule_len(&self) -> usize

    Return the length, in bytes, of the corresponding [VarULE] type
    §

    fn encode_var_ule_write(&self, dst: &mut [u8])

    Write the corresponding [VarULE] type to the dst buffer. dst should\nbe the size of [Self::encode_var_ule_len()]
    ","EncodeAsVarULE>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> EncodeAsVarULE<ZeroSlice<T>> for Vec<T>
    where\n T: AsULE + 'static,

    §

    fn encode_var_ule_as_slices<R>(&self, _: impl FnOnce(&[&[u8]]) -> R) -> R

    Calls cb with a piecewise list of byte slices that when concatenated\nproduce the memory pattern of the corresponding instance of T. Read more
    §

    fn encode_var_ule_len(&self) -> usize

    Return the length, in bytes, of the corresponding [VarULE] type
    §

    fn encode_var_ule_write(&self, dst: &mut [u8])

    Write the corresponding [VarULE] type to the dst buffer. dst should\nbe the size of [Self::encode_var_ule_len()]
    ","EncodeAsVarULE>","massa_factory_exports::types::ProductionHistory"],["
    1.2.0 · source§

    impl<'a, T, A> Extend<&'a T> for Vec<T, A>
    where\n T: Copy + 'a,\n A: Allocator,

    Extend implementation that copies elements out of references before pushing them onto the Vec.

    \n

    This implementation is specialized for slice iterators, where it uses copy_from_slice to\nappend the entire slice at once.

    \n
    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Extend<T> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T> From<&[T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&[T]>","massa_factory_exports::types::ProductionHistory"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&[T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &[T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&[1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&[T; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.19.0 · source§

    impl<T> From<&mut [T]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3][..]), vec![1, 2, 3]);
    \n
    ","From<&mut [T]>","massa_factory_exports::types::ProductionHistory"],["
    1.74.0 · source§

    impl<T, const N: usize> From<&mut [T; N]> for Vec<T>
    where\n T: Clone,

    source§

    fn from(s: &mut [T; N]) -> Vec<T>

    Allocate a Vec<T> and fill it by cloning s’s items.

    \n
    §Examples
    \n
    assert_eq!(Vec::from(&mut [1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<&mut [T; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.44.0 · source§

    impl<T, const N: usize> From<[T; N]> for Vec<T>

    source§

    fn from(s: [T; N]) -> Vec<T>

    Allocate a Vec<T> and move s’s items into it.

    \n
    §Examples
    \n
    assert_eq!(Vec::from([1, 2, 3]), vec![1, 2, 3]);
    \n
    ","From<[T; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.5.0 · source§

    impl<T, A> From<BinaryHeap<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(heap: BinaryHeap<T, A>) -> Vec<T, A>

    Converts a BinaryHeap<T> into a Vec<T>.

    \n

    This conversion requires no data movement or allocation, and has\nconstant time complexity.

    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, O> From<BitVec<T, O>> for Vec<T>
    where\n T: BitStore,\n O: BitOrder,

    §

    fn from(bv: BitVec<T, O>) -> Vec<T>

    Converts to this type from the input type.
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    1.18.0 · source§

    impl<T, A> From<Box<[T], A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(s: Box<[T], A>) -> Vec<T, A>

    Convert a boxed slice into a vector by transferring ownership of\nthe existing heap allocation.

    \n
    §Examples
    \n
    let b: Box<[i32]> = vec![1, 2, 3].into_boxed_slice();\nassert_eq!(Vec::from(b), vec![1, 2, 3]);
    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    1.14.0 · source§

    impl<'a, T> From<Cow<'a, [T]>> for Vec<T>
    where\n [T]: ToOwned<Owned = Vec<T>>,

    source§

    fn from(s: Cow<'a, [T]>) -> Vec<T>

    Convert a clone-on-write slice into a vector.

    \n

    If s already owns a Vec<T>, it will be returned directly.\nIf s is borrowing a slice, a new Vec<T> will be allocated and\nfilled by cloning s’s items into it.

    \n
    §Examples
    \n
    let o: Cow<'_, [i32]> = Cow::Owned(vec![1, 2, 3]);\nlet b: Cow<'_, [i32]> = Cow::Borrowed(&[1, 2, 3]);\nassert_eq!(Vec::from(o), Vec::from(b));
    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    1.10.0 · source§

    impl<T, A> From<VecDeque<T, A>> for Vec<T, A>
    where\n A: Allocator,

    source§

    fn from(other: VecDeque<T, A>) -> Vec<T, A>

    Turn a VecDeque<T> into a Vec<T>.

    \n

    This never needs to re-allocate, but does need to do O(n) data movement if\nthe circular buffer doesn’t happen to be at the beginning of the allocation.

    \n
    §Examples
    \n
    use std::collections::VecDeque;\n\n// This one is *O*(1).\nlet deque: VecDeque<_> = (1..5).collect();\nlet ptr = deque.as_slices().0.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);\n\n// This one needs data rearranging.\nlet mut deque: VecDeque<_> = (1..5).collect();\ndeque.push_front(9);\ndeque.push_front(8);\nlet ptr = deque.as_slices().1.as_ptr();\nlet vec = Vec::from(deque);\nassert_eq!(vec, [8, 9, 1, 2, 3, 4]);\nassert_eq!(vec.as_ptr(), ptr);
    \n
    ","From>","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T> FromFallibleIterator<T> for Vec<T>

    source§

    fn from_fallible_iter<I>(\n it: I,\n) -> Result<Vec<T>, <I as IntoFallibleIterator>::Error>
    where\n I: IntoFallibleIterator<Item = T>,

    Creates a value from a fallible iterator.
    ","FromFallibleIterator","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T> FromIterator<T> for Vec<T>

    Collects an iterator into a Vec, commonly called via Iterator::collect()

    \n

    §Allocation behavior

    \n

    In general Vec does not guarantee any particular growth or allocation strategy.\nThat also applies to this trait impl.

    \n

    Note: This section covers implementation details and is therefore exempt from\nstability guarantees.

    \n

    Vec may use any or none of the following strategies,\ndepending on the supplied iterator:

    \n
      \n
    • preallocate based on Iterator::size_hint()\n
        \n
      • and panic if the number of items is outside the provided lower/upper bounds
      • \n
      \n
    • \n
    • use an amortized growth strategy similar to pushing one item at a time
    • \n
    • perform the iteration in-place on the original allocation backing the iterator
    • \n
    \n

    The last case warrants some attention. It is an optimization that in many cases reduces peak memory\nconsumption and improves cache locality. But when big, short-lived allocations are created,\nonly a small fraction of their items get collected, no further use is made of the spare capacity\nand the resulting Vec is moved into a longer-lived structure, then this can lead to the large\nallocations having their lifetimes unnecessarily extended which can result in increased memory\nfootprint.

    \n

    In cases where this is an issue, the excess capacity can be discarded with Vec::shrink_to(),\nVec::shrink_to_fit() or by collecting into Box<[T]> instead, which additionally reduces\nthe size of the long-lived struct.

    \n\n
    static LONG_LIVED: Mutex<Vec<Vec<u16>>> = Mutex::new(Vec::new());\n\nfor i in 0..10 {\n    let big_temporary: Vec<u16> = (0..1024).collect();\n    // discard most items\n    let mut result: Vec<_> = big_temporary.into_iter().filter(|i| i % 100 == 0).collect();\n    // without this a lot of unused capacity might be moved into the global\n    result.shrink_to_fit();\n    LONG_LIVED.lock().unwrap().push(result);\n}
    \n
    source§

    fn from_iter<I>(iter: I) -> Vec<T>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> FromParallelIterator<T> for Vec<T>
    where\n T: Send,

    Collects items from a parallel iterator into a vector.

    \n
    §

    fn from_par_iter<I>(par_iter: I) -> Vec<T>
    where\n I: IntoParallelIterator<Item = T>,

    Creates an instance of the collection from the parallel iterator par_iter. Read more
    ","FromParallelIterator","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Hash for Vec<T, A>
    where\n T: Hash,\n A: Allocator,

    The hash of a vector is the same as that of the corresponding slice,\nas required by the core::borrow::Borrow implementation.

    \n\n
    use std::hash::BuildHasher;\n\nlet b = std::hash::RandomState::new();\nlet v: Vec<u8> = vec![0xa8, 0x3c, 0x09];\nlet s: &[u8] = &[0xa8, 0x3c, 0x09];\nassert_eq!(b.hash_one(v), b.hash_one(s));
    \n
    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, I, A> Index<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    §

    type Output = <I as SliceIndex<[T]>>::Output

    The returned type after indexing.
    source§

    fn index(&self, index: I) -> &<Vec<T, A> as Index<I>>::Output

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<PatternID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: PatternID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<PatternID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: PatternID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<SmallIndex> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: SmallIndex) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<SmallIndex> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: SmallIndex) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<StateID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: StateID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Index<StateID> for Vec<T>

    §

    type Output = T

    The returned type after indexing.
    §

    fn index(&self, index: StateID) -> &T

    Performs the indexing (container[index]) operation. Read more
    ","Index","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, I, A> IndexMut<I> for Vec<T, A>
    where\n I: SliceIndex<[T]>,\n A: Allocator,

    source§

    fn index_mut(&mut self, index: I) -> &mut <Vec<T, A> as Index<I>>::Output

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<PatternID> for Vec<T>

    §

    fn index_mut(&mut self, index: PatternID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<PatternID> for Vec<T>

    §

    fn index_mut(&mut self, index: PatternID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<SmallIndex> for Vec<T>

    §

    fn index_mut(&mut self, index: SmallIndex) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<SmallIndex> for Vec<T>

    §

    fn index_mut(&mut self, index: SmallIndex) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<StateID> for Vec<T>

    §

    fn index_mut(&mut self, index: StateID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IndexMut<StateID> for Vec<T>

    §

    fn index_mut(&mut self, index: StateID) -> &mut T

    Performs the mutable indexing (container[index]) operation. Read more
    ","IndexMut","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<'de, T, E> IntoDeserializer<'de, E> for Vec<T>
    where\n T: IntoDeserializer<'de, E>,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<Vec<T> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(self) -> <Vec<T> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> IntoIterator for Vec<T, A>
    where\n A: Allocator,

    source§

    fn into_iter(self) -> <Vec<T, A> as IntoIterator>::IntoIter

    Creates a consuming iterator, that is, one that moves each value out of\nthe vector (from start to end). The vector cannot be used after calling\nthis.

    \n
    §Examples
    \n
    let v = vec![\"a\".to_string(), \"b\".to_string()];\nlet mut v_iter = v.into_iter();\n\nlet first_element: Option<String> = v_iter.next();\n\nassert_eq!(first_element, Some(\"a\".to_string()));\nassert_eq!(v_iter.next(), Some(\"b\".to_string()));\nassert_eq!(v_iter.next(), None);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T, A>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> IntoParallelIterator for Vec<T>
    where\n T: Send,

    §

    type Item = T

    The type of item that the parallel iterator will produce.
    §

    type Iter = IntoIter<T>

    The parallel iterator type that will be created.
    §

    fn into_par_iter(self) -> <Vec<T> as IntoParallelIterator>::Iter

    Converts self into a parallel iterator. Read more
    ","IntoParallelIterator","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> JsonSchema for Vec<T>
    where\n T: JsonSchema,

    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    ","JsonSchema","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Ord for Vec<T, A>
    where\n T: Ord,\n A: Allocator,

    Implements ordering of vectors, lexicographically.

    \n
    source§

    fn cmp(&self, other: &Vec<T, A>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<'a, T> ParallelExtend<&'a T> for Vec<T>
    where\n T: 'a + Copy + Send + Sync,

    Extends a vector with copied items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = &'a T>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend<&'a T>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> ParallelExtend<T> for Vec<T>
    where\n T: Send,

    Extends a vector with items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = T>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<&[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&[U; N]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A> PartialEq<&mut [U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &&mut [U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &&mut [U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<&mut [U]>","massa_factory_exports::types::ProductionHistory"],["
    1.48.0 · source§

    impl<T, U, A> PartialEq<[U]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U]>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A, const N: usize> PartialEq<[U; N]> for Vec<T, A>
    where\n A: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &[U; N]) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &[U; N]) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq<[U; N]>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, U> PartialEq<ArchivedVec<U>> for Vec<T>
    where\n T: PartialEq<U>,

    §

    fn eq(&self, other: &ArchivedVec<U>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, U, A1, A2> PartialEq<Vec<U, A2>> for Vec<T, A1>
    where\n A1: Allocator,\n A2: Allocator,\n T: PartialEq<U>,

    source§

    fn eq(&self, other: &Vec<U, A2>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &Vec<U, A2>) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> PartialOrd<ArchivedVec<T>> for Vec<T>
    where\n T: PartialOrd,

    §

    fn partial_cmp(&self, other: &ArchivedVec<T>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A1, A2> PartialOrd<Vec<T, A2>> for Vec<T, A1>
    where\n T: PartialOrd,\n A1: Allocator,\n A2: Allocator,

    Implements comparison of vectors, lexicographically.

    \n
    source§

    fn partial_cmp(&self, other: &Vec<T, A2>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T, S> Serialize<S> for Vec<T>
    where\n T: Serialize<S>,\n S: ScratchSpace + Serializer + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<Vec<T> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T> Serialize for Vec<T>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, U> SerializeAs<Vec<T>> for Vec<U>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Vec<T>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Sink<T> for Vec<T>

    §

    type Error = Infallible

    The type of value produced by the sink when an error occurs.
    §

    fn poll_ready(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Attempts to prepare the Sink to receive a value. Read more
    §

    fn start_send(\n self: Pin<&mut Vec<T>>,\n item: T,\n) -> Result<(), <Vec<T> as Sink<T>>::Error>

    Begin the process of sending a value to the sink.\nEach call to this function must be preceded by a successful call to\npoll_ready which returned Poll::Ready(Ok(())). Read more
    §

    fn poll_flush(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output from this sink. Read more
    §

    fn poll_close(\n self: Pin<&mut Vec<T>>,\n _: &mut Context<'_>,\n) -> Poll<Result<(), <Vec<T> as Sink<T>>::Error>>

    Flush any remaining output and close this sink, if necessary. Read more
    ","Sink","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> Source for Vec<T>
    where\n T: Source + Sync + Send + Clone + 'static,

    §

    fn clone_into_box(&self) -> Box<dyn Source + Send + Sync>

    §

    fn collect(&self) -> Result<HashMap<String, Value>, ConfigError>

    Collect all configuration properties available from this source and return\na Map.
    §

    fn collect_to(&self, cache: &mut Value) -> Result<(), ConfigError>

    Collects all configuration properties to a provided cache.
    ","Source","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T> Vec<T>

    1.0.0 (const: 1.39.0) · source

    pub const fn new() -> Vec<T>

    Constructs a new, empty Vec<T>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> Vec<T>

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<()>::with_capacity(10);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity(capacity: usize) -> Result<Vec<T>, TryReserveError>

    🔬This is a nightly-only experimental API. (try_with_capacity)

    Constructs a new, empty Vec<T> with at least the specified capacity.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    1.0.0 · source

    pub unsafe fn from_raw_parts(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n) -> Vec<T>

    Creates a Vec<T> directly from a pointer, a length, and a capacity.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must have been allocated using the global allocator, such as via\nthe alloc::alloc function.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to be the capacity that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is normally not safe\nto build a Vec<u8> from a pointer to a C char array with length\nsize_t, doing so is only safe if the array was initially allocated by\na Vec or String.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1. To avoid\nthese issues, it is often preferable to do casting/transmuting using\nslice::from_raw_parts instead.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    use std::ptr;\nuse std::mem;\n\nlet v = vec![1, 2, 3];\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts(p, len, cap);\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    use std::alloc::{alloc, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = alloc(layout).cast::<u32>();\n        if mem.is_null() {\n            return;\n        }\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts(mem, 1, 16)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: Clone,\n A: Allocator,

    1.5.0 · source

    pub fn resize(&mut self, new_len: usize, value: T)

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with value.\nIf new_len is less than len, the Vec is simply truncated.

    \n

    This method requires T to implement Clone,\nin order to be able to clone the passed value.\nIf you need more flexibility (or want to rely on Default instead of\nClone), use Vec::resize_with.\nIf you only need to resize to a smaller size, use Vec::truncate.

    \n
    §Examples
    \n
    let mut vec = vec![\"hello\"];\nvec.resize(3, \"world\");\nassert_eq!(vec, [\"hello\", \"world\", \"world\"]);\n\nlet mut vec = vec![1, 2, 3, 4];\nvec.resize(2, 0);\nassert_eq!(vec, [1, 2]);
    \n
    1.6.0 · source

    pub fn extend_from_slice(&mut self, other: &[T])

    Clones and appends all elements in a slice to the Vec.

    \n

    Iterates over the slice other, clones each element, and then appends\nit to this Vec. The other slice is traversed in-order.

    \n

    Note that this function is same as extend except that it is\nspecialized to work with slices instead. If and when Rust gets\nspecialization this function will likely be deprecated (but still\navailable).

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.extend_from_slice(&[2, 3, 4]);\nassert_eq!(vec, [1, 2, 3, 4]);
    \n
    1.53.0 · source

    pub fn extend_from_within<R>(&mut self, src: R)
    where\n R: RangeBounds<usize>,

    Copies elements from src range to the end of the vector.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut vec = vec![0, 1, 2, 3, 4];\n\nvec.extend_from_within(2..);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4]);\n\nvec.extend_from_within(..2);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1]);\n\nvec.extend_from_within(4..8);\nassert_eq!(vec, [0, 1, 2, 3, 4, 2, 3, 4, 0, 1, 4, 2, 3, 4]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n T: PartialEq,\n A: Allocator,

    1.0.0 · source

    pub fn dedup(&mut self)

    Removes consecutive repeated elements in the vector according to the\nPartialEq trait implementation.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 2, 3, 2];\n\nvec.dedup();\n\nassert_eq!(vec, [1, 2, 3, 2]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    1.21.0 · source

    pub fn splice<R, I>(\n &mut self,\n range: R,\n replace_with: I,\n) -> Splice<'_, <I as IntoIterator>::IntoIter, A>
    where\n R: RangeBounds<usize>,\n I: IntoIterator<Item = T>,

    Creates a splicing iterator that replaces the specified range in the vector\nwith the given replace_with iterator and yields the removed items.\nreplace_with does not need to be the same length as range.

    \n

    range is removed even if the iterator is not consumed until the end.

    \n

    It is unspecified how many elements are removed from the vector\nif the Splice value is leaked.

    \n

    The input iterator replace_with is only consumed when the Splice value is dropped.

    \n

    This is optimal if:

    \n
      \n
    • The tail (elements in the vector after range) is empty,
    • \n
    • or replace_with yields fewer or equal elements than range’s length
    • \n
    • or the lower bound of its size_hint() is exact.
    • \n
    \n

    Otherwise, a temporary vector is allocated and the tail is moved twice.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3, 4];\nlet new = [7, 8, 9];\nlet u: Vec<_> = v.splice(1..3, new).collect();\nassert_eq!(v, &[1, 7, 8, 9, 4]);\nassert_eq!(u, &[2, 3]);
    \n
    source

    pub fn extract_if<F>(&mut self, filter: F) -> ExtractIf<'_, T, F, A>
    where\n F: FnMut(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, then the element is removed and yielded.\nIf the closure returns false, the element will remain in the vector and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n

    Using this method is equivalent to the following code:

    \n\n
    let mut i = 0;\nwhile i < vec.len() {\n    if some_predicate(&mut vec[i]) {\n        let val = vec.remove(i);\n        // your code here\n    } else {\n        i += 1;\n    }\n}\n
    \n

    But extract_if is easier to use. extract_if is also more efficient,\nbecause it can backshift the elements of the array in bulk.

    \n

    Note that extract_if also lets you mutate every element in the filter closure,\nregardless of whether you choose to keep or remove it.

    \n
    §Examples
    \n

    Splitting an array into evens and odds, reusing the original allocation:

    \n\n
    #![feature(extract_if)]\nlet mut numbers = vec![1, 2, 3, 4, 5, 6, 8, 9, 11, 13, 14, 15];\n\nlet evens = numbers.extract_if(|x| *x % 2 == 0).collect::<Vec<_>>();\nlet odds = numbers;\n\nassert_eq!(evens, vec![2, 4, 6, 8, 14]);\nassert_eq!(odds, vec![1, 3, 5, 9, 11, 13, 15]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> Vec<T, A>
    where\n A: Allocator,

    source

    pub const fn new_in(alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A>.

    \n

    The vector will not allocate until elements are pushed onto it.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec: Vec<i32, _> = Vec::new_in(System);
    \n
    source

    pub fn with_capacity_in(capacity: usize, alloc: A) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n

    It is important to note that although the returned vector has the\nminimum capacity specified, the vector will have a zero length. For\nan explanation of the difference between length and capacity, see\nCapacity and reallocation.

    \n

    If it is important to know the exact allocated capacity of a Vec,\nalways use the capacity method after construction.

    \n

    For Vec<T, A> where T is a zero-sized type, there will be no allocation\nand the capacity will always be usize::MAX.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nlet mut vec = Vec::with_capacity_in(10, System);\n\n// The vector contains no items, even though it has capacity for more\nassert_eq!(vec.len(), 0);\nassert!(vec.capacity() >= 10);\n\n// These are all done without reallocating...\nfor i in 0..10 {\n    vec.push(i);\n}\nassert_eq!(vec.len(), 10);\nassert!(vec.capacity() >= 10);\n\n// ...but this may make the vector reallocate\nvec.push(11);\nassert_eq!(vec.len(), 11);\nassert!(vec.capacity() >= 11);\n\n// A vector of a zero-sized type will always over-allocate, since no\n// allocation is necessary\nlet vec_units = Vec::<(), System>::with_capacity_in(10, System);\nassert_eq!(vec_units.capacity(), usize::MAX);
    \n
    source

    pub fn try_with_capacity_in(\n capacity: usize,\n alloc: A,\n) -> Result<Vec<T, A>, TryReserveError>

    🔬This is a nightly-only experimental API. (allocator_api)

    Constructs a new, empty Vec<T, A> with at least the specified capacity\nwith the provided allocator.

    \n

    The vector will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the vector will not allocate.

    \n
    §Errors
    \n

    Returns an error if the capacity exceeds isize::MAX bytes,\nor if the allocator reports allocation failure.

    \n
    source

    pub unsafe fn from_raw_parts_in(\n ptr: *mut T,\n length: usize,\n capacity: usize,\n alloc: A,\n) -> Vec<T, A>

    🔬This is a nightly-only experimental API. (allocator_api)

    Creates a Vec<T, A> directly from a pointer, a length, a capacity,\nand an allocator.

    \n
    §Safety
    \n

    This is highly unsafe, due to the number of invariants that aren’t\nchecked:

    \n
      \n
    • ptr must be currently allocated via the given allocator alloc.
    • \n
    • T needs to have the same alignment as what ptr was allocated with.\n(T having a less strict alignment is not sufficient, the alignment really\nneeds to be equal to satisfy the dealloc requirement that memory must be\nallocated and deallocated with the same layout.)
    • \n
    • The size of T times the capacity (ie. the allocated size in bytes) needs\nto be the same size as the pointer was allocated with. (Because similar to\nalignment, dealloc must be called with the same layout size.)
    • \n
    • length needs to be less than or equal to capacity.
    • \n
    • The first length values must be properly initialized values of type T.
    • \n
    • capacity needs to fit the layout size that the pointer was allocated with.
    • \n
    • The allocated size in bytes must be no larger than isize::MAX.\nSee the safety documentation of pointer::offset.
    • \n
    \n

    These requirements are always upheld by any ptr that has been allocated\nvia Vec<T, A>. Other allocation sources are allowed if the invariants are\nupheld.

    \n

    Violating these may cause problems like corrupting the allocator’s\ninternal data structures. For example it is not safe\nto build a Vec<u8> from a pointer to a C char array with length size_t.\nIt’s also not safe to build one from a Vec<u16> and its length, because\nthe allocator cares about the alignment, and these two types have different\nalignments. The buffer was allocated with alignment 2 (for u16), but after\nturning it into a Vec<u8> it’ll be deallocated with alignment 1.

    \n

    The ownership of ptr is effectively transferred to the\nVec<T> which may then deallocate, reallocate or change the\ncontents of memory pointed to by the pointer at will. Ensure\nthat nothing else uses the pointer after calling this\nfunction.

    \n
    §Examples
    \n
    #![feature(allocator_api)]\n\nuse std::alloc::System;\n\nuse std::ptr;\nuse std::mem;\n\nlet mut v = Vec::with_capacity_in(3, System);\nv.push(1);\nv.push(2);\nv.push(3);\n\n// Prevent running `v`'s destructor so we are in complete control\n// of the allocation.\nlet mut v = mem::ManuallyDrop::new(v);\n\n// Pull out the various important pieces of information about `v`\nlet p = v.as_mut_ptr();\nlet len = v.len();\nlet cap = v.capacity();\nlet alloc = v.allocator();\n\nunsafe {\n    // Overwrite memory with 4, 5, 6\n    for i in 0..len {\n        ptr::write(p.add(i), 4 + i);\n    }\n\n    // Put everything back together into a Vec\n    let rebuilt = Vec::from_raw_parts_in(p, len, cap, alloc.clone());\n    assert_eq!(rebuilt, [4, 5, 6]);\n}
    \n

    Using memory that was allocated elsewhere:

    \n\n
    #![feature(allocator_api)]\n\nuse std::alloc::{AllocError, Allocator, Global, Layout};\n\nfn main() {\n    let layout = Layout::array::<u32>(16).expect(\"overflow cannot happen\");\n\n    let vec = unsafe {\n        let mem = match Global.allocate(layout) {\n            Ok(mem) => mem.cast::<u32>().as_ptr(),\n            Err(AllocError) => return,\n        };\n\n        mem.write(1_000_000);\n\n        Vec::from_raw_parts_in(mem, 1, 16, Global)\n    };\n\n    assert_eq!(vec, &[1_000_000]);\n    assert_eq!(vec.capacity(), 16);\n}
    \n
    source

    pub fn into_raw_parts(self) -> (*mut T, usize, usize)

    🔬This is a nightly-only experimental API. (vec_into_raw_parts)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity).

    \n

    Returns the raw pointer to the underlying data, the length of\nthe vector (in elements), and the allocated capacity of the\ndata (in elements). These are the same arguments in the same\norder as the arguments to from_raw_parts.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(vec_into_raw_parts)]\nlet v: Vec<i32> = vec![-1, 0, 1];\n\nlet (ptr, len, cap) = v.into_raw_parts();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts(ptr, len, cap)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    source

    pub fn into_raw_parts_with_alloc(self) -> (*mut T, usize, usize, A)

    🔬This is a nightly-only experimental API. (allocator_api)

    Decomposes a Vec<T> into its raw components: (pointer, length, capacity, allocator).

    \n

    Returns the raw pointer to the underlying data, the length of the vector (in elements),\nthe allocated capacity of the data (in elements), and the allocator. These are the same\narguments in the same order as the arguments to from_raw_parts_in.

    \n

    After calling this function, the caller is responsible for the\nmemory previously managed by the Vec. The only way to do\nthis is to convert the raw pointer, length, and capacity back\ninto a Vec with the from_raw_parts_in function, allowing\nthe destructor to perform the cleanup.

    \n
    §Examples
    \n
    #![feature(allocator_api, vec_into_raw_parts)]\n\nuse std::alloc::System;\n\nlet mut v: Vec<i32, System> = Vec::new_in(System);\nv.push(-1);\nv.push(0);\nv.push(1);\n\nlet (ptr, len, cap, alloc) = v.into_raw_parts_with_alloc();\n\nlet rebuilt = unsafe {\n    // We can now make changes to the components, such as\n    // transmuting the raw pointer to a compatible type.\n    let ptr = ptr as *mut u32;\n\n    Vec::from_raw_parts_in(ptr, len, cap, alloc)\n};\nassert_eq!(rebuilt, [4294967295, 0, 1]);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the total number of elements the vector can hold without\nreallocating.

    \n
    §Examples
    \n
    let mut vec: Vec<i32> = Vec::with_capacity(10);\nvec.push(42);\nassert!(vec.capacity() >= 10);
    \n
    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to\nspeculatively avoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve(10);\nassert!(vec.capacity() >= 11);
    \n
    1.0.0 · source

    pub fn reserve_exact(&mut self, additional: usize)

    Reserves the minimum capacity for at least additional more elements to\nbe inserted in the given Vec<T>. Unlike reserve, this will not\ndeliberately over-allocate to speculatively avoid frequent allocations.\nAfter calling reserve_exact, capacity will be greater than or equal to\nself.len() + additional. Does nothing if the capacity is already\nsufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer reserve if future insertions are expected.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1];\nvec.reserve_exact(10);\nassert!(vec.capacity() >= 11);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the given Vec<T>. The collection may reserve more space to speculatively avoid\nfrequent reallocations. After calling try_reserve, capacity will be\ngreater than or equal to self.len() + additional if it returns\nOk(()). Does nothing if capacity is already sufficient. This method\npreserves the contents even if an error occurs.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.57.0 · source

    pub fn try_reserve_exact(\n &mut self,\n additional: usize,\n) -> Result<(), TryReserveError>

    Tries to reserve the minimum capacity for at least additional\nelements to be inserted in the given Vec<T>. Unlike try_reserve,\nthis will not deliberately over-allocate to speculatively avoid frequent\nallocations. After calling try_reserve_exact, capacity will be greater\nthan or equal to self.len() + additional if it returns Ok(()).\nDoes nothing if the capacity is already sufficient.

    \n

    Note that the allocator may give the collection more space than it\nrequests. Therefore, capacity can not be relied upon to be precisely\nminimal. Prefer try_reserve if future insertions are expected.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::TryReserveError;\n\nfn process_data(data: &[u32]) -> Result<Vec<u32>, TryReserveError> {\n    let mut output = Vec::new();\n\n    // Pre-reserve the memory, exiting if we can't\n    output.try_reserve_exact(data.len())?;\n\n    // Now we know this can't OOM in the middle of our complex work\n    output.extend(data.iter().map(|&val| {\n        val * 2 + 5 // very complicated\n    }));\n\n    Ok(output)\n}
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the vector as much as possible.

    \n

    The behavior of this method depends on the allocator, which may either shrink the vector\nin-place or reallocate. The resulting vector might still have some excess capacity, just as\nis the case for with_capacity. See Allocator::shrink for more details.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to_fit();\nassert!(vec.capacity() >= 3);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the vector with a lower bound.

    \n

    The capacity will remain at least as large as both the length\nand the supplied value.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\nassert!(vec.capacity() >= 10);\nvec.shrink_to(4);\nassert!(vec.capacity() >= 4);\nvec.shrink_to(0);\nassert!(vec.capacity() >= 3);
    \n
    1.0.0 · source

    pub fn into_boxed_slice(self) -> Box<[T], A>

    Converts the vector into Box<[T]>.

    \n

    Before doing the conversion, this method discards excess capacity like shrink_to_fit.

    \n
    §Examples
    \n
    let v = vec![1, 2, 3];\n\nlet slice = v.into_boxed_slice();
    \n

    Any excess capacity is removed:

    \n\n
    let mut vec = Vec::with_capacity(10);\nvec.extend([1, 2, 3]);\n\nassert!(vec.capacity() >= 10);\nlet slice = vec.into_boxed_slice();\nassert_eq!(slice.into_vec().capacity(), 3);
    \n
    1.0.0 · source

    pub fn truncate(&mut self, len: usize)

    Shortens the vector, keeping the first len elements and dropping\nthe rest.

    \n

    If len is greater or equal to the vector’s current length, this has\nno effect.

    \n

    The drain method can emulate truncate, but causes the excess\nelements to be returned instead of dropped.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n

    Truncating a five element vector to two elements:

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nvec.truncate(2);\nassert_eq!(vec, [1, 2]);
    \n

    No truncation occurs when len is greater than the vector’s current\nlength:

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(8);\nassert_eq!(vec, [1, 2, 3]);
    \n

    Truncating when len == 0 is equivalent to calling the clear\nmethod.

    \n\n
    let mut vec = vec![1, 2, 3];\nvec.truncate(0);\nassert_eq!(vec, []);
    \n
    1.7.0 · source

    pub fn as_slice(&self) -> &[T]

    Extracts a slice containing the entire vector.

    \n

    Equivalent to &s[..].

    \n
    §Examples
    \n
    use std::io::{self, Write};\nlet buffer = vec![1, 2, 3, 5, 8];\nio::sink().write(buffer.as_slice()).unwrap();
    \n
    1.7.0 · source

    pub fn as_mut_slice(&mut self) -> &mut [T]

    Extracts a mutable slice of the entire vector.

    \n

    Equivalent to &mut s[..].

    \n
    §Examples
    \n
    use std::io::{self, Read};\nlet mut buffer = vec![0; 3];\nio::repeat(0b101).read_exact(buffer.as_mut_slice()).unwrap();
    \n
    1.37.0 · source

    pub fn as_ptr(&self) -> *const T

    Returns a raw pointer to the vector’s buffer, or a dangling raw pointer\nvalid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    The caller must also ensure that the memory the pointer (non-transitively) points to\nis never written to (except inside an UnsafeCell) using this pointer or any pointer\nderived from it. If you need to mutate the contents of the slice, use as_mut_ptr.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize mutable references to the slice,\nor mutable references to specific elements you are planning on accessing through this pointer,\nas well as writing to those elements, may still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    let x = vec![1, 2, 4];\nlet x_ptr = x.as_ptr();\n\nunsafe {\n    for i in 0..x.len() {\n        assert_eq!(*x_ptr.add(i), 1 << i);\n    }\n}
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0, 1, 2];\n    let ptr1 = v.as_ptr();\n    let _ = ptr1.read();\n    let ptr2 = v.as_mut_ptr().offset(2);\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`\n    // because it mutated a different element:\n    let _ = ptr1.read();\n}
    \n
    1.37.0 · source

    pub fn as_mut_ptr(&mut self) -> *mut T

    Returns an unsafe mutable pointer to the vector’s buffer, or a dangling\nraw pointer valid for zero sized reads if the vector didn’t allocate.

    \n

    The caller must ensure that the vector outlives the pointer this\nfunction returns, or else it will end up pointing to garbage.\nModifying the vector may cause its buffer to be reallocated,\nwhich would also make any pointers to it invalid.

    \n

    This method guarantees that for the purpose of the aliasing model, this method\ndoes not materialize a reference to the underlying slice, and thus the returned pointer\nwill remain valid when mixed with other calls to as_ptr and as_mut_ptr.\nNote that calling other methods that materialize references to the slice,\nor references to specific elements you are planning on accessing through this pointer,\nmay still invalidate this pointer.\nSee the second example below for how this guarantee can be used.

    \n
    §Examples
    \n
    // Allocate vector big enough for 4 elements.\nlet size = 4;\nlet mut x: Vec<i32> = Vec::with_capacity(size);\nlet x_ptr = x.as_mut_ptr();\n\n// Initialize elements via raw pointer writes, then set length.\nunsafe {\n    for i in 0..size {\n        *x_ptr.add(i) = i as i32;\n    }\n    x.set_len(size);\n}\nassert_eq!(&*x, &[0, 1, 2, 3]);
    \n

    Due to the aliasing guarantee, the following code is legal:

    \n\n
    unsafe {\n    let mut v = vec![0];\n    let ptr1 = v.as_mut_ptr();\n    ptr1.write(1);\n    let ptr2 = v.as_mut_ptr();\n    ptr2.write(2);\n    // Notably, the write to `ptr2` did *not* invalidate `ptr1`:\n    ptr1.write(3);\n}
    \n
    source

    pub fn allocator(&self) -> &A

    🔬This is a nightly-only experimental API. (allocator_api)

    Returns a reference to the underlying allocator.

    \n
    1.0.0 · source

    pub unsafe fn set_len(&mut self, new_len: usize)

    Forces the length of the vector to new_len.

    \n

    This is a low-level operation that maintains none of the normal\ninvariants of the type. Normally changing the length of a vector\nis done using one of the safe operations instead, such as\ntruncate, resize, extend, or clear.

    \n
    §Safety
    \n
      \n
    • new_len must be less than or equal to capacity().
    • \n
    • The elements at old_len..new_len must be initialized.
    • \n
    \n
    §Examples
    \n

    This method can be useful for situations in which the vector\nis serving as a buffer for other code, particularly over FFI:

    \n\n
    pub fn get_dictionary(&self) -> Option<Vec<u8>> {\n    // Per the FFI method's docs, \"32768 bytes is always enough\".\n    let mut dict = Vec::with_capacity(32_768);\n    let mut dict_length = 0;\n    // SAFETY: When `deflateGetDictionary` returns `Z_OK`, it holds that:\n    // 1. `dict_length` elements were initialized.\n    // 2. `dict_length` <= the capacity (32_768)\n    // which makes `set_len` safe to call.\n    unsafe {\n        // Make the FFI call...\n        let r = deflateGetDictionary(self.strm, dict.as_mut_ptr(), &mut dict_length);\n        if r == Z_OK {\n            // ...and update the length to what was initialized.\n            dict.set_len(dict_length);\n            Some(dict)\n        } else {\n            None\n        }\n    }\n}
    \n

    While the following example is sound, there is a memory leak since\nthe inner vectors were not freed prior to the set_len call:

    \n\n
    let mut vec = vec![vec![1, 0, 0],\n                   vec![0, 1, 0],\n                   vec![0, 0, 1]];\n// SAFETY:\n// 1. `old_len..0` is empty so no elements need to be initialized.\n// 2. `0 <= capacity` always holds whatever `capacity` is.\nunsafe {\n    vec.set_len(0);\n}
    \n

    Normally, here, one would use clear instead to correctly drop\nthe contents and thus not leak memory.

    \n
    1.0.0 · source

    pub fn swap_remove(&mut self, index: usize) -> T

    Removes an element from the vector and returns it.

    \n

    The removed element is replaced by the last element of the vector.

    \n

    This does not preserve ordering of the remaining elements, but is O(1).\nIf you need to preserve the element order, use remove instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![\"foo\", \"bar\", \"baz\", \"qux\"];\n\nassert_eq!(v.swap_remove(1), \"bar\");\nassert_eq!(v, [\"foo\", \"qux\", \"baz\"]);\n\nassert_eq!(v.swap_remove(0), \"foo\");\nassert_eq!(v, [\"baz\", \"qux\"]);
    \n
    1.0.0 · source

    pub fn insert(&mut self, index: usize, element: T)

    Inserts an element at position index within the vector, shifting all\nelements after it to the right.

    \n
    §Panics
    \n

    Panics if index > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.insert(1, 4);\nassert_eq!(vec, [1, 4, 2, 3]);\nvec.insert(4, 5);\nassert_eq!(vec, [1, 4, 2, 3, 5]);
    \n
    §Time complexity
    \n

    Takes O(Vec::len) time. All items after the insertion index must be\nshifted to the right. In the worst case, all elements are shifted when\nthe insertion index is 0.

    \n
    1.0.0 · source

    pub fn remove(&mut self, index: usize) -> T

    Removes and returns the element at position index within the vector,\nshifting all elements after it to the left.

    \n

    Note: Because this shifts over the remaining elements, it has a\nworst-case performance of O(n). If you don’t need the order of elements\nto be preserved, use swap_remove instead. If you’d like to remove\nelements from the beginning of the Vec, consider using\nVecDeque::pop_front instead.

    \n
    §Panics
    \n

    Panics if index is out of bounds.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nassert_eq!(v.remove(1), 2);\nassert_eq!(v, [1, 3]);
    \n
    1.0.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain(|&x| x % 2 == 0);\nassert_eq!(vec, [2, 4]);
    \n

    Because the elements are visited exactly once in the original order,\nexternal state may be used to decide which elements to keep.

    \n\n
    let mut vec = vec![1, 2, 3, 4, 5];\nlet keep = [false, true, true, false, true];\nlet mut iter = keep.iter();\nvec.retain(|_| *iter.next().unwrap());\nassert_eq!(vec, [2, 3, 5]);
    \n
    1.61.0 · source

    pub fn retain_mut<F>(&mut self, f: F)
    where\n F: FnMut(&mut T) -> bool,

    Retains only the elements specified by the predicate, passing a mutable reference to it.

    \n

    In other words, remove all elements e such that f(&mut e) returns false.\nThis method operates in place, visiting each element exactly once in the\noriginal order, and preserves the order of the retained elements.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3, 4];\nvec.retain_mut(|x| if *x <= 3 {\n    *x += 1;\n    true\n} else {\n    false\n});\nassert_eq!(vec, [2, 3, 4]);
    \n
    1.16.0 · source

    pub fn dedup_by_key<F, K>(&mut self, key: F)
    where\n F: FnMut(&mut T) -> K,\n K: PartialEq,

    Removes all but the first of consecutive elements in the vector that resolve to the same\nkey.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![10, 20, 21, 30, 20];\n\nvec.dedup_by_key(|i| *i / 10);\n\nassert_eq!(vec, [10, 20, 30, 20]);
    \n
    1.16.0 · source

    pub fn dedup_by<F>(&mut self, same_bucket: F)
    where\n F: FnMut(&mut T, &mut T) -> bool,

    Removes all but the first of consecutive elements in the vector satisfying a given equality\nrelation.

    \n

    The same_bucket function is passed references to two elements from the vector and\nmust determine if the elements compare equal. The elements are passed in opposite order\nfrom their order in the slice, so if same_bucket(a, b) returns true, a is removed.

    \n

    If the vector is sorted, this removes all duplicates.

    \n
    §Examples
    \n
    let mut vec = vec![\"foo\", \"bar\", \"Bar\", \"baz\", \"bar\"];\n\nvec.dedup_by(|a, b| a.eq_ignore_ascii_case(b));\n\nassert_eq!(vec, [\"foo\", \"bar\", \"baz\", \"bar\"]);
    \n
    1.0.0 · source

    pub fn push(&mut self, value: T)

    Appends an element to the back of a collection.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2];\nvec.push(3);\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Time complexity
    \n

    Takes amortized O(1) time. If the vector’s length would exceed its\ncapacity after the push, O(capacity) time is taken to copy the\nvector’s elements to a larger allocation. This expensive operation is\noffset by the capacity O(1) insertions it allows.

    \n
    source

    pub fn push_within_capacity(&mut self, value: T) -> Result<(), T>

    🔬This is a nightly-only experimental API. (vec_push_within_capacity)

    Appends an element if there is sufficient spare capacity, otherwise an error is returned\nwith the element.

    \n

    Unlike push this method will not reallocate when there’s insufficient capacity.\nThe caller should use reserve or try_reserve to ensure that there is enough capacity.

    \n
    §Examples
    \n

    A manual, panic-free alternative to FromIterator:

    \n\n
    #![feature(vec_push_within_capacity)]\n\nuse std::collections::TryReserveError;\nfn from_iter_fallible<T>(iter: impl Iterator<Item=T>) -> Result<Vec<T>, TryReserveError> {\n    let mut vec = Vec::new();\n    for value in iter {\n        if let Err(value) = vec.push_within_capacity(value) {\n            vec.try_reserve(1)?;\n            // this cannot fail, the previous line either returned or added at least 1 free slot\n            let _ = vec.push_within_capacity(value);\n        }\n    }\n    Ok(vec)\n}\nassert_eq!(from_iter_fallible(0..100), Ok(Vec::from_iter(0..100)));
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    1.0.0 · source

    pub fn pop(&mut self) -> Option<T>

    Removes the last element from a vector and returns it, or None if it\nis empty.

    \n

    If you’d like to pop the first element, consider using\nVecDeque::pop_front instead.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nassert_eq!(vec.pop(), Some(3));\nassert_eq!(vec, [1, 2]);
    \n
    §Time complexity
    \n

    Takes O(1) time.

    \n
    source

    pub fn pop_if<F>(&mut self, f: F) -> Option<T>
    where\n F: FnOnce(&mut T) -> bool,

    🔬This is a nightly-only experimental API. (vec_pop_if)

    Removes and returns the last element in a vector if the predicate\nreturns true, or None if the predicate returns false or the vector\nis empty.

    \n
    §Examples
    \n
    #![feature(vec_pop_if)]\n\nlet mut vec = vec![1, 2, 3, 4];\nlet pred = |x: &mut i32| *x % 2 == 0;\n\nassert_eq!(vec.pop_if(pred), Some(4));\nassert_eq!(vec, [1, 2, 3]);\nassert_eq!(vec.pop_if(pred), None);
    \n
    1.4.0 · source

    pub fn append(&mut self, other: &mut Vec<T, A>)

    Moves all the elements of other into self, leaving other empty.

    \n
    §Panics
    \n

    Panics if the new capacity exceeds isize::MAX bytes.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet mut vec2 = vec![4, 5, 6];\nvec.append(&mut vec2);\nassert_eq!(vec, [1, 2, 3, 4, 5, 6]);\nassert_eq!(vec2, []);
    \n
    1.6.0 · source

    pub fn drain<R>(&mut self, range: R) -> Drain<'_, T, A>
    where\n R: RangeBounds<usize>,

    Removes the specified range from the vector in bulk, returning all\nremoved elements as an iterator. If the iterator is dropped before\nbeing fully consumed, it drops the remaining removed elements.

    \n

    The returned iterator keeps a mutable borrow on the vector to optimize\nits implementation.

    \n
    §Panics
    \n

    Panics if the starting point is greater than the end point or if\nthe end point is greater than the length of the vector.

    \n
    §Leaking
    \n

    If the returned iterator goes out of scope without being dropped (due to\nmem::forget, for example), the vector may have lost and leaked\nelements arbitrarily, including elements outside the range.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\nlet u: Vec<_> = v.drain(1..).collect();\nassert_eq!(v, &[1]);\nassert_eq!(u, &[2, 3]);\n\n// A full range clears the vector, like `clear()` does\nv.drain(..);\nassert_eq!(v, &[]);
    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the vector, removing all values.

    \n

    Note that this method has no effect on the allocated capacity\nof the vector.

    \n
    §Examples
    \n
    let mut v = vec![1, 2, 3];\n\nv.clear();\n\nassert!(v.is_empty());
    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the vector, also referred to\nas its ‘length’.

    \n
    §Examples
    \n
    let a = vec![1, 2, 3];\nassert_eq!(a.len(), 3);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the vector contains no elements.

    \n
    §Examples
    \n
    let mut v = Vec::new();\nassert!(v.is_empty());\n\nv.push(1);\nassert!(!v.is_empty());
    \n
    1.4.0 · source

    pub fn split_off(&mut self, at: usize) -> Vec<T, A>
    where\n A: Clone,

    Splits the collection into two at the given index.

    \n

    Returns a newly allocated vector containing the elements in the range\n[at, len). After the call, the original vector will be left containing\nthe elements [0, at) with its previous capacity unchanged.

    \n
      \n
    • If you want to take ownership of the entire contents and capacity of\nthe vector, see mem::take or mem::replace.
    • \n
    • If you don’t need the returned vector at all, see Vec::truncate.
    • \n
    • If you want to take ownership of an arbitrary subslice, or you don’t\nnecessarily want to store the removed items in a vector, see Vec::drain.
    • \n
    \n
    §Panics
    \n

    Panics if at > len.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nlet vec2 = vec.split_off(1);\nassert_eq!(vec, [1]);\nassert_eq!(vec2, [2, 3]);
    \n
    1.33.0 · source

    pub fn resize_with<F>(&mut self, new_len: usize, f: F)
    where\n F: FnMut() -> T,

    Resizes the Vec in-place so that len is equal to new_len.

    \n

    If new_len is greater than len, the Vec is extended by the\ndifference, with each additional slot filled with the result of\ncalling the closure f. The return values from f will end up\nin the Vec in the order they have been generated.

    \n

    If new_len is less than len, the Vec is simply truncated.

    \n

    This method uses a closure to create new values on every push. If\nyou’d rather Clone a given value, use Vec::resize. If you\nwant to use the Default trait to generate values, you can\npass Default::default as the second argument.

    \n
    §Examples
    \n
    let mut vec = vec![1, 2, 3];\nvec.resize_with(5, Default::default);\nassert_eq!(vec, [1, 2, 3, 0, 0]);\n\nlet mut vec = vec![];\nlet mut p = 1;\nvec.resize_with(4, || { p *= 2; p });\nassert_eq!(vec, [2, 4, 8, 16]);
    \n
    1.47.0 · source

    pub fn leak<'a>(self) -> &'a mut [T]
    where\n A: 'a,

    Consumes and leaks the Vec, returning a mutable reference to the contents,\n&'a mut [T]. Note that the type T must outlive the chosen lifetime\n'a. If the type has only static references, or none at all, then this\nmay be chosen to be 'static.

    \n

    As of Rust 1.57, this method does not reallocate or shrink the Vec,\nso the leaked allocation may include unused capacity that is not part\nof the returned slice.

    \n

    This function is mainly useful for data that lives for the remainder of\nthe program’s life. Dropping the returned reference will cause a memory\nleak.

    \n
    §Examples
    \n

    Simple usage:

    \n\n
    let x = vec![1, 2, 3];\nlet static_ref: &'static mut [usize] = x.leak();\nstatic_ref[0] += 1;\nassert_eq!(static_ref, &[2, 2, 3]);
    \n
    1.60.0 · source

    pub fn spare_capacity_mut(&mut self) -> &mut [MaybeUninit<T>]

    Returns the remaining spare capacity of the vector as a slice of\nMaybeUninit<T>.

    \n

    The returned slice can be used to fill the vector with data (e.g. by\nreading from a file) before marking the data as initialized using the\nset_len method.

    \n
    §Examples
    \n
    // Allocate vector big enough for 10 elements.\nlet mut v = Vec::with_capacity(10);\n\n// Fill in the first 3 elements.\nlet uninit = v.spare_capacity_mut();\nuninit[0].write(0);\nuninit[1].write(1);\nuninit[2].write(2);\n\n// Mark the first 3 elements of the vector as being initialized.\nunsafe {\n    v.set_len(3);\n}\n\nassert_eq!(&v, &[0, 1, 2]);
    \n
    source

    pub fn split_at_spare_mut(&mut self) -> (&mut [T], &mut [MaybeUninit<T>])

    🔬This is a nightly-only experimental API. (vec_split_at_spare)

    Returns vector content as a slice of T, along with the remaining spare\ncapacity of the vector as a slice of MaybeUninit<T>.

    \n

    The returned spare capacity slice can be used to fill the vector with data\n(e.g. by reading from a file) before marking the data as initialized using\nthe set_len method.

    \n

    Note that this is a low-level API, which should be used with care for\noptimization purposes. If you need to append data to a Vec\nyou can use push, extend, extend_from_slice,\nextend_from_within, insert, append, resize or\nresize_with, depending on your exact needs.

    \n
    §Examples
    \n
    #![feature(vec_split_at_spare)]\n\nlet mut v = vec![1, 1, 2];\n\n// Reserve additional space big enough for 10 elements.\nv.reserve(10);\n\nlet (init, uninit) = v.split_at_spare_mut();\nlet sum = init.iter().copied().sum::<u32>();\n\n// Fill in the next 4 elements.\nuninit[0].write(sum);\nuninit[1].write(sum * 2);\nuninit[2].write(sum * 3);\nuninit[3].write(sum * 4);\n\n// Mark the 4 elements of the vector as being initialized.\nunsafe {\n    let len = v.len();\n    v.set_len(len + 4);\n}\n\nassert_eq!(&v, &[1, 1, 2, 4, 8, 12, 16]);
    \n
    ",0,"massa_factory_exports::types::ProductionHistory"],["
    §

    impl<'a, T> Yokeable<'a> for Vec<T>
    where\n T: 'static,

    §

    type Output = Vec<T>

    This type MUST be Self with the 'static replaced with 'a, i.e. Self<'a>
    §

    fn transform(&'a self) -> &'a Vec<T>

    This method must cast self between &'a Self<'static> and &'a Self<'a>. Read more
    §

    fn transform_owned(self) -> Vec<T>

    This method must cast self between Self<'static> and Self<'a>. Read more
    §

    unsafe fn make(from: Vec<T>) -> Vec<T>

    This method can be used to cast away Self<'a>’s lifetime. Read more
    §

    fn transform_mut<F>(&'a mut self, f: F)
    where\n F: 'static + for<'b> FnOnce(&'b mut <Vec<T> as Yokeable<'a>>::Output),

    This method must cast self between &'a mut Self<'static> and &'a mut Self<'a>,\nand pass it to f. Read more
    ","Yokeable<'a>","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<Z> Zeroize for Vec<Z>
    where\n Z: Zeroize,

    §

    fn zeroize(&mut self)

    “Best effort” zeroization for Vec.

    \n

    Ensures the entire capacity of the Vec is zeroed. Cannot ensure that\nprevious reallocations did not leave values on the heap.

    \n
    ","Zeroize","massa_factory_exports::types::ProductionHistory"],["
    source§

    impl<T, A> DerefPure for Vec<T, A>
    where\n A: Allocator,

    ","DerefPure","massa_factory_exports::types::ProductionHistory"],["
    1.0.0 · source§

    impl<T, A> Eq for Vec<T, A>
    where\n T: Eq,\n A: Allocator,

    ","Eq","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> FromStream<T> for Vec<T>

    ","FromStream","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<T> StableDeref for Vec<T>

    ","StableDeref","massa_factory_exports::types::ProductionHistory"],["
    §

    impl<Z> ZeroizeOnDrop for Vec<Z>
    where\n Z: ZeroizeOnDrop,

    ","ZeroizeOnDrop","massa_factory_exports::types::ProductionHistory"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/core/pin/struct.Pin.js b/type.impl/core/pin/struct.Pin.js index 36f71639b14..c57a36bfcf4 100644 --- a/type.impl/core/pin/struct.Pin.js +++ b/type.impl/core/pin/struct.Pin.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"massa_grpc":[["
    §

    impl<P> AsyncBufRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncBufRead,

    §

    fn poll_fill_buf(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<&[u8], Error>>

    Attempt to return the contents of the internal buffer, filling it with more data\nfrom the inner reader if it is empty. Read more
    §

    fn consume(self: Pin<&mut Pin<P>>, amt: usize)

    Tells this buffer that amt bytes have been consumed from the buffer,\nso they should no longer be returned in calls to poll_read. Read more
    ","AsyncBufRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncBufRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncBufRead,

    §

    fn poll_fill_buf(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<&[u8], Error>>

    Attempts to return the contents of the internal buffer, filling it with more data\nfrom the inner reader if it is empty. Read more
    §

    fn consume(self: Pin<&mut Pin<P>>, amt: usize)

    Tells this buffer that amt bytes have been consumed from the buffer,\nso they should no longer be returned in calls to poll_read. Read more
    ","AsyncBufRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<P> AsyncIterator for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: AsyncIterator,

    §

    type Item = <<P as Deref>::Target as AsyncIterator>::Item

    🔬This is a nightly-only experimental API. (async_iterator)
    The type of items yielded by the async iterator.
    source§

    fn poll_next(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<<Pin<P> as AsyncIterator>::Item>>

    🔬This is a nightly-only experimental API. (async_iterator)
    Attempt to pull out the next value of this async iterator, registering the\ncurrent task for wakeup if the value is not yet available, and returning\nNone if the async iterator is exhausted. Read more
    source§

    fn size_hint(&self) -> (usize, Option<usize>)

    🔬This is a nightly-only experimental API. (async_iterator)
    Returns the bounds on the remaining length of the async iterator. Read more
    ","AsyncIterator","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncRead,

    §

    fn poll_read(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &mut ReadBuf<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to read from the AsyncRead into buf. Read more
    ","AsyncRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncRead,

    §

    fn poll_read(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &mut [u8],\n) -> Poll<Result<usize, Error>>

    Attempt to read from the AsyncRead into buf. Read more
    §

    fn poll_read_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &mut [IoSliceMut<'_>],\n) -> Poll<Result<usize, Error>>

    Attempt to read from the AsyncRead into bufs using vectored\nIO operations. Read more
    ","AsyncRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncSeek for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncSeek,

    §

    fn poll_seek(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n pos: SeekFrom,\n) -> Poll<Result<u64, Error>>

    Attempt to seek to an offset, in bytes, in a stream. Read more
    ","AsyncSeek","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncSeek for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncSeek,

    §

    fn start_seek(self: Pin<&mut Pin<P>>, pos: SeekFrom) -> Result<(), Error>

    Attempts to seek to an offset, in bytes, in a stream. Read more
    §

    fn poll_complete(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<u64, Error>>

    Waits for a seek operation to complete. Read more
    ","AsyncSeek","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncWrite for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncWrite,

    §

    fn poll_write(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from bufs into the object using vectored\nIO operations. Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_close(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to close the object. Read more
    ","AsyncWrite","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncWrite for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncWrite,

    §

    fn poll_write(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Like poll_write, except that it writes from a slice of buffers. Read more
    §

    fn is_write_vectored(&self) -> bool

    Determines if this writer has an efficient poll_write_vectored\nimplementation. Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_shutdown(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Initiates or attempts to shut down this writer, returning success when\nthe I/O connection has completely shut down. Read more
    ","AsyncWrite","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<P> Body for Pin<P>
    where\n P: Unpin + DerefMut,\n <P as Deref>::Target: Body,

    §

    type Data = <<P as Deref>::Target as Body>::Data

    Values yielded by the Body.
    §

    type Error = <<P as Deref>::Target as Body>::Error

    The error type this Body might generate.
    source§

    fn poll_data(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<Result<<Pin<P> as Body>::Data, <Pin<P> as Body>::Error>>>

    Attempt to pull out the next data buffer of this stream.
    source§

    fn poll_trailers(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<Option<HeaderMap>, <Pin<P> as Body>::Error>>

    Poll for an optional single HeaderMap of trailers. Read more
    source§

    fn is_end_stream(&self) -> bool

    Returns true when the end of stream has been reached. Read more
    source§

    fn size_hint(&self) -> SizeHint

    Returns the bounds on the remaining length of the stream. Read more
    source§

    fn data(&mut self) -> Data<'_, Self>
    where\n Self: Sized + Unpin,

    Returns future that resolves to next data chunk, if any.
    source§

    fn trailers(&mut self) -> Trailers<'_, Self>
    where\n Self: Sized + Unpin,

    Returns future that resolves to trailers, if any.
    source§

    fn map_data<F, B>(self, f: F) -> MapData<Self, F>
    where\n Self: Sized,\n F: FnMut(Self::Data) -> B,\n B: Buf,

    Maps this body’s data value to a different value.
    source§

    fn map_err<F, E>(self, f: F) -> MapErr<Self, F>
    where\n Self: Sized,\n F: FnMut(Self::Error) -> E,

    Maps this body’s error value to a different value.
    source§

    fn collect(self) -> Collect<Self>
    where\n Self: Sized,

    Turn this body into Collected body which will collect all the DATA frames\nand trailers.
    ","Body","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Body for Pin<P>
    where\n P: Unpin + DerefMut,\n <P as Deref>::Target: Body,

    §

    type Data = <<P as Deref>::Target as Body>::Data

    Values yielded by the Body.
    §

    type Error = <<P as Deref>::Target as Body>::Error

    The error type this Body might generate.
    §

    fn poll_frame(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<Result<Frame<<Pin<P> as Body>::Data>, <Pin<P> as Body>::Error>>>

    Attempt to pull out the next data buffer of this stream.
    §

    fn is_end_stream(&self) -> bool

    Returns true when the end of stream has been reached. Read more
    §

    fn size_hint(&self) -> SizeHint

    Returns the bounds on the remaining length of the stream. Read more
    ","Body","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Clone for Pin<Ptr>
    where\n Ptr: Clone,

    source§

    fn clone(&self) -> Pin<Ptr>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<G, R, A> Coroutine<R> for Pin<Box<G, A>>
    where\n G: Coroutine<R> + ?Sized,\n A: Allocator + 'static,

    §

    type Yield = <G as Coroutine<R>>::Yield

    🔬This is a nightly-only experimental API. (coroutine_trait)
    The type of value this coroutine yields. Read more
    §

    type Return = <G as Coroutine<R>>::Return

    🔬This is a nightly-only experimental API. (coroutine_trait)
    The type of value this coroutine returns. Read more
    source§

    fn resume(\n self: Pin<&mut Pin<Box<G, A>>>,\n arg: R,\n) -> CoroutineState<<Pin<Box<G, A>> as Coroutine<R>>::Yield, <Pin<Box<G, A>> as Coroutine<R>>::Return>

    🔬This is a nightly-only experimental API. (coroutine_trait)
    Resumes the execution of this coroutine. Read more
    ","Coroutine","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Debug for Pin<Ptr>
    where\n Ptr: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Deref for Pin<Ptr>
    where\n Ptr: Deref,

    §

    type Target = <Ptr as Deref>::Target

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &<Ptr as Deref>::Target

    Dereferences the value.
    ","Deref","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> DerefMut for Pin<Ptr>
    where\n Ptr: DerefMut,\n <Ptr as Deref>::Target: Unpin,

    source§

    fn deref_mut(&mut self) -> &mut <Ptr as Deref>::Target

    Mutably dereferences the value.
    ","DerefMut","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Pin<Box<T>>> for Pin<Box<U>>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Pin<Box<T>>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Pin>>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Display for Pin<Ptr>
    where\n Ptr: Display,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<T, A> From<Box<T, A>> for Pin<Box<T, A>>
    where\n A: Allocator + 'static,\n T: ?Sized,

    source§

    fn from(boxed: Box<T, A>) -> Pin<Box<T, A>>

    Converts a Box<T> into a Pin<Box<T>>. If T does not implement Unpin, then\n*boxed will be pinned in memory and unable to be moved.

    \n

    This conversion does not allocate on the heap and happens in place.

    \n

    This is also available via Box::into_pin.

    \n

    Constructing and pinning a Box with <Pin<Box<T>>>::from(Box::new(x))\ncan also be written more concisely using Box::pin(x).\nThis From implementation is useful if you already have a Box<T>, or you are\nconstructing a (pinned) Box in a different way than with Box::new.

    \n
    ","From>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> FusedFuture for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: FusedFuture,

    §

    fn is_terminated(&self) -> bool

    Returns true if the underlying future should no longer be polled.
    ","FusedFuture","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> FusedStream for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: FusedStream,

    §

    fn is_terminated(&self) -> bool

    Returns true if the stream should no longer be polled.
    ","FusedStream","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.36.0 · source§

    impl<P> Future for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: Future,

    §

    type Output = <<P as Deref>::Target as Future>::Output

    The type of value produced on completion.
    source§

    fn poll(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<<Pin<P> as Future>::Output>

    Attempt to resolve the future to a final value, registering\nthe current task for wakeup if the value is not yet available. Read more
    ","Future","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr> Hash for Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Hash,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr> Ord for Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Ord,

    source§

    fn cmp(&self, other: &Pin<Ptr>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr, Q> PartialEq<Pin<Q>> for Pin<Ptr>
    where\n Ptr: Deref,\n Q: Deref,\n <Ptr as Deref>::Target: PartialEq<<Q as Deref>::Target>,

    source§

    fn eq(&self, other: &Pin<Q>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &Pin<Q>) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr, Q> PartialOrd<Pin<Q>> for Pin<Ptr>
    where\n Ptr: Deref,\n Q: Deref,\n <Ptr as Deref>::Target: PartialOrd<<Q as Deref>::Target>,

    source§

    fn partial_cmp(&self, other: &Pin<Q>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    source§

    fn lt(&self, other: &Pin<Q>) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    source§

    fn le(&self, other: &Pin<Q>) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    source§

    fn gt(&self, other: &Pin<Q>) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    source§

    fn ge(&self, other: &Pin<Q>) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Unpin,

    1.33.0 (const: unstable) · source

    pub fn new(pointer: Ptr) -> Pin<Ptr>

    Construct a new Pin<Ptr> around a pointer to some data of a type that\nimplements Unpin.

    \n

    Unlike Pin::new_unchecked, this method is safe because the pointer\nPtr dereferences to an Unpin type, which cancels the pinning guarantees.

    \n
    §Examples
    \n
    use std::pin::Pin;\n\nlet mut val: u8 = 5;\n\n// Since `val` doesn't care about being moved, we can safely create a \"facade\" `Pin`\n// which will allow `val` to participate in `Pin`-bound apis  without checking that\n// pinning guarantees are actually upheld.\nlet mut pinned: Pin<&mut u8> = Pin::new(&mut val);
    \n
    1.39.0 (const: unstable) · source

    pub fn into_inner(pin: Pin<Ptr>) -> Ptr

    Unwraps this Pin<Ptr>, returning the underlying pointer.

    \n

    Doing this operation safely requires that the data pointed at by this pinning pointer\nimplements Unpin so that we can ignore the pinning invariants when unwrapping it.

    \n
    §Examples
    \n
    use std::pin::Pin;\n\nlet mut val: u8 = 5;\nlet pinned: Pin<&mut u8> = Pin::new(&mut val);\n\n// Unwrap the pin to get the underlying mutable reference to the value. We can do\n// this because `val` doesn't care about being moved, so the `Pin` was just\n// a \"facade\" anyway.\nlet r = Pin::into_inner(pinned);\nassert_eq!(*r, 5);
    \n
    ",0,"massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> Pin<Ptr>
    where\n Ptr: Deref,

    1.33.0 (const: unstable) · source

    pub unsafe fn new_unchecked(pointer: Ptr) -> Pin<Ptr>

    Construct a new Pin<Ptr> around a reference to some data of a type that\nmay or may not implement Unpin.

    \n

    If pointer dereferences to an Unpin type, Pin::new should be used\ninstead.

    \n
    §Safety
    \n

    This constructor is unsafe because we cannot guarantee that the data\npointed to by pointer is pinned. At its core, pinning a value means making the\nguarantee that the value’s data will not be moved nor have its storage invalidated until\nit gets dropped. For a more thorough explanation of pinning, see the pin module docs.

    \n

    If the caller that is constructing this Pin<Ptr> does not ensure that the data Ptr\npoints to is pinned, that is a violation of the API contract and may lead to undefined\nbehavior in later (even safe) operations.

    \n

    By using this method, you are also making a promise about the Deref and\nDerefMut implementations of Ptr, if they exist. Most importantly, they\nmust not move out of their self arguments: Pin::as_mut and Pin::as_ref\nwill call DerefMut::deref_mut and Deref::deref on the pointer type Ptr\nand expect these methods to uphold the pinning invariants.\nMoreover, by calling this method you promise that the reference Ptr\ndereferences to will not be moved out of again; in particular, it\nmust not be possible to obtain a &mut Ptr::Target and then\nmove out of that reference (using, for example mem::swap).

    \n

    For example, calling Pin::new_unchecked on an &'a mut T is unsafe because\nwhile you are able to pin it for the given lifetime 'a, you have no control\nover whether it is kept pinned once 'a ends, and therefore cannot uphold the\nguarantee that a value, once pinned, remains pinned until it is dropped:

    \n\n
    use std::mem;\nuse std::pin::Pin;\n\nfn move_pinned_ref<T>(mut a: T, mut b: T) {\n    unsafe {\n        let p: Pin<&mut T> = Pin::new_unchecked(&mut a);\n        // This should mean the pointee `a` can never move again.\n    }\n    mem::swap(&mut a, &mut b); // Potential UB down the road ⚠️\n    // The address of `a` changed to `b`'s stack slot, so `a` got moved even\n    // though we have previously pinned it! We have violated the pinning API contract.\n}
    \n

    A value, once pinned, must remain pinned until it is dropped (unless its type implements\nUnpin). Because Pin<&mut T> does not own the value, dropping the Pin will not drop\nthe value and will not end the pinning contract. So moving the value after dropping the\nPin<&mut T> is still a violation of the API contract.

    \n

    Similarly, calling Pin::new_unchecked on an Rc<T> is unsafe because there could be\naliases to the same data that are not subject to the pinning restrictions:

    \n\n
    use std::rc::Rc;\nuse std::pin::Pin;\n\nfn move_pinned_rc<T>(mut x: Rc<T>) {\n    // This should mean the pointee can never move again.\n    let pin = unsafe { Pin::new_unchecked(Rc::clone(&x)) };\n    {\n        let p: Pin<&T> = pin.as_ref();\n        // ...\n    }\n    drop(pin);\n\n    let content = Rc::get_mut(&mut x).unwrap(); // Potential UB down the road ⚠️\n    // Now, if `x` was the only reference, we have a mutable reference to\n    // data that we pinned above, which we could use to move it as we have\n    // seen in the previous example. We have violated the pinning API contract.\n }
    \n
    §Pinning of closure captures
    \n

    Particular care is required when using Pin::new_unchecked in a closure:\nPin::new_unchecked(&mut var) where var is a by-value (moved) closure capture\nimplicitly makes the promise that the closure itself is pinned, and that all uses\nof this closure capture respect that pinning.

    \n\n
    use std::pin::Pin;\nuse std::task::Context;\nuse std::future::Future;\n\nfn move_pinned_closure(mut x: impl Future, cx: &mut Context<'_>) {\n    // Create a closure that moves `x`, and then internally uses it in a pinned way.\n    let mut closure = move || unsafe {\n        let _ignore = Pin::new_unchecked(&mut x).poll(cx);\n    };\n    // Call the closure, so the future can assume it has been pinned.\n    closure();\n    // Move the closure somewhere else. This also moves `x`!\n    let mut moved = closure;\n    // Calling it again means we polled the future from two different locations,\n    // violating the pinning API contract.\n    moved(); // Potential UB ⚠️\n}
    \n

    When passing a closure to another API, it might be moving the closure any time, so\nPin::new_unchecked on closure captures may only be used if the API explicitly documents\nthat the closure is pinned.

    \n

    The better alternative is to avoid all that trouble and do the pinning in the outer function\ninstead (here using the pin! macro):

    \n\n
    use std::pin::pin;\nuse std::task::Context;\nuse std::future::Future;\n\nfn move_pinned_closure(mut x: impl Future, cx: &mut Context<'_>) {\n    let mut x = pin!(x);\n    // Create a closure that captures `x: Pin<&mut _>`, which is safe to move.\n    let mut closure = move || {\n        let _ignore = x.as_mut().poll(cx);\n    };\n    // Call the closure, so the future can assume it has been pinned.\n    closure();\n    // Move the closure somewhere else.\n    let mut moved = closure;\n    // Calling it again here is fine (except that we might be polling a future that already\n    // returned `Poll::Ready`, but that is a separate problem).\n    moved();\n}
    \n
    1.33.0 · source

    pub fn as_ref(&self) -> Pin<&<Ptr as Deref>::Target>

    Gets a shared reference to the pinned value this Pin points to.

    \n

    This is a generic method to go from &Pin<Pointer<T>> to Pin<&T>.\nIt is safe because, as part of the contract of Pin::new_unchecked,\nthe pointee cannot move after Pin<Pointer<T>> got created.\n“Malicious” implementations of Pointer::Deref are likewise\nruled out by the contract of Pin::new_unchecked.

    \n
    1.39.0 (const: unstable) · source

    pub unsafe fn into_inner_unchecked(pin: Pin<Ptr>) -> Ptr

    Unwraps this Pin<Ptr>, returning the underlying Ptr.

    \n
    §Safety
    \n

    This function is unsafe. You must guarantee that you will continue to\ntreat the pointer Ptr as pinned after you call this function, so that\nthe invariants on the Pin type can be upheld. If the code using the\nresulting Ptr does not continue to maintain the pinning invariants that\nis a violation of the API contract and may lead to undefined behavior in\nlater (safe) operations.

    \n

    Note that you must be able to guarantee that the data pointed to by Ptr\nwill be treated as pinned all the way until its drop handler is complete!

    \n

    For more information, see the pin module docs

    \n

    If the underlying data is Unpin, Pin::into_inner should be used\ninstead.

    \n
    ",0,"massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> Pin<Ptr>
    where\n Ptr: DerefMut,

    1.33.0 · source

    pub fn as_mut(&mut self) -> Pin<&mut <Ptr as Deref>::Target>

    Gets a mutable reference to the pinned value this Pin<Ptr> points to.

    \n

    This is a generic method to go from &mut Pin<Pointer<T>> to Pin<&mut T>.\nIt is safe because, as part of the contract of Pin::new_unchecked,\nthe pointee cannot move after Pin<Pointer<T>> got created.\n“Malicious” implementations of Pointer::DerefMut are likewise\nruled out by the contract of Pin::new_unchecked.

    \n

    This method is useful when doing multiple calls to functions that consume the\npinning pointer.

    \n
    §Example
    \n
    use std::pin::Pin;\n\nimpl Type {\n    fn method(self: Pin<&mut Self>) {\n        // do something\n    }\n\n    fn call_method_twice(mut self: Pin<&mut Self>) {\n        // `method` consumes `self`, so reborrow the `Pin<&mut Self>` via `as_mut`.\n        self.as_mut().method();\n        self.as_mut().method();\n    }\n}
    \n
    1.33.0 · source

    pub fn set(&mut self, value: <Ptr as Deref>::Target)
    where\n <Ptr as Deref>::Target: Sized,

    Assigns a new value to the memory location pointed to by the Pin<Ptr>.

    \n

    This overwrites pinned data, but that is okay: the original pinned value’s destructor gets\nrun before being overwritten and the new value is also a valid value of the same type, so\nno pinning invariant is violated. See the pin module documentation\nfor more information on how this upholds the pinning invariants.

    \n
    §Example
    \n
    use std::pin::Pin;\n\nlet mut val: u8 = 5;\nlet mut pinned: Pin<&mut u8> = Pin::new(&mut val);\nprintln!(\"{}\", pinned); // 5\npinned.set(10);\nprintln!(\"{}\", pinned); // 10
    \n
    ",0,"massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Pointer for Pin<Ptr>
    where\n Ptr: Pointer,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Read for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: Read,

    §

    fn poll_read(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: ReadBufCursor<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to read bytes into the buf. Read more
    ","Read","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<T, U> SerializeAs<Pin<Box<T>>> for Pin<Box<U>>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Pin<Box<T>>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P, Item> Sink<Item> for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: Sink<Item>,

    §

    type Error = <<P as Deref>::Target as Sink<Item>>::Error

    The type of value produced by the sink when an error occurs.
    §

    fn poll_ready(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), <Pin<P> as Sink<Item>>::Error>>

    Attempts to prepare the Sink to receive a value. Read more
    §

    fn start_send(\n self: Pin<&mut Pin<P>>,\n item: Item,\n) -> Result<(), <Pin<P> as Sink<Item>>::Error>

    Begin the process of sending a value to the sink.\nEach call to this function must be preceded by a successful call to\npoll_ready which returned Poll::Ready(Ok(())). Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), <Pin<P> as Sink<Item>>::Error>>

    Flush any remaining output from this sink. Read more
    §

    fn poll_close(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), <Pin<P> as Sink<Item>>::Error>>

    Flush any remaining output and close this sink, if necessary. Read more
    ","Sink","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Stream for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: Stream,

    §

    type Item = <<P as Deref>::Target as Stream>::Item

    Values yielded by the stream.
    §

    fn poll_next(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<<Pin<P> as Stream>::Item>>

    Attempt to pull out the next value of this stream, registering the\ncurrent task for wakeup if the value is not yet available, and returning\nNone if the stream is exhausted. Read more
    §

    fn size_hint(&self) -> (usize, Option<usize>)

    Returns the bounds on the remaining length of the stream. Read more
    ","Stream","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<'a, T, F> UnsafeFutureObj<'a, T> for Pin<Box<F>>
    where\n F: Future<Output = T> + 'a,

    §

    fn into_raw(self) -> *mut dyn Future<Output = T> + 'a

    Convert an owned instance into a (conceptually owned) fat pointer. Read more
    §

    unsafe fn drop(ptr: *mut dyn Future<Output = T> + 'a)

    Drops the future represented by the given fat pointer. Read more
    ","UnsafeFutureObj<'a, T>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Write for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: Write,

    §

    fn poll_write(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the destination. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Like poll_write, except that it writes from a slice of buffers.
    §

    fn is_write_vectored(&self) -> bool

    Returns whether this writer has an efficient poll_write_vectored\nimplementation. Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to flush the object. Read more
    §

    fn poll_shutdown(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to shut down this writer.
    ","Write","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr, U> CoerceUnsized<Pin<U>> for Pin<Ptr>
    where\n Ptr: CoerceUnsized<U>,

    ","CoerceUnsized>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Copy for Pin<Ptr>
    where\n Ptr: Copy,

    ","Copy","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> DerefPure for Pin<Ptr>
    where\n Ptr: DerefPure,

    ","DerefPure","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr, U> DispatchFromDyn<Pin<U>> for Pin<Ptr>
    where\n Ptr: DispatchFromDyn<U>,

    ","DispatchFromDyn>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr> Eq for Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Eq,

    ","Eq","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"]] +"massa_grpc":[["
    §

    impl<P> AsyncBufRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncBufRead,

    §

    fn poll_fill_buf(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<&[u8], Error>>

    Attempt to return the contents of the internal buffer, filling it with more data\nfrom the inner reader if it is empty. Read more
    §

    fn consume(self: Pin<&mut Pin<P>>, amt: usize)

    Tells this buffer that amt bytes have been consumed from the buffer,\nso they should no longer be returned in calls to poll_read. Read more
    ","AsyncBufRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncBufRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncBufRead,

    §

    fn poll_fill_buf(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<&[u8], Error>>

    Attempts to return the contents of the internal buffer, filling it with more data\nfrom the inner reader if it is empty. Read more
    §

    fn consume(self: Pin<&mut Pin<P>>, amt: usize)

    Tells this buffer that amt bytes have been consumed from the buffer,\nso they should no longer be returned in calls to poll_read. Read more
    ","AsyncBufRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<P> AsyncIterator for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: AsyncIterator,

    §

    type Item = <<P as Deref>::Target as AsyncIterator>::Item

    🔬This is a nightly-only experimental API. (async_iterator)
    The type of items yielded by the async iterator.
    source§

    fn poll_next(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<<Pin<P> as AsyncIterator>::Item>>

    🔬This is a nightly-only experimental API. (async_iterator)
    Attempt to pull out the next value of this async iterator, registering the\ncurrent task for wakeup if the value is not yet available, and returning\nNone if the async iterator is exhausted. Read more
    source§

    fn size_hint(&self) -> (usize, Option<usize>)

    🔬This is a nightly-only experimental API. (async_iterator)
    Returns the bounds on the remaining length of the async iterator. Read more
    ","AsyncIterator","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncRead,

    §

    fn poll_read(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &mut ReadBuf<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to read from the AsyncRead into buf. Read more
    ","AsyncRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncRead for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncRead,

    §

    fn poll_read(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &mut [u8],\n) -> Poll<Result<usize, Error>>

    Attempt to read from the AsyncRead into buf. Read more
    §

    fn poll_read_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &mut [IoSliceMut<'_>],\n) -> Poll<Result<usize, Error>>

    Attempt to read from the AsyncRead into bufs using vectored\nIO operations. Read more
    ","AsyncRead","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncSeek for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncSeek,

    §

    fn poll_seek(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n pos: SeekFrom,\n) -> Poll<Result<u64, Error>>

    Attempt to seek to an offset, in bytes, in a stream. Read more
    ","AsyncSeek","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncSeek for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncSeek,

    §

    fn start_seek(self: Pin<&mut Pin<P>>, pos: SeekFrom) -> Result<(), Error>

    Attempts to seek to an offset, in bytes, in a stream. Read more
    §

    fn poll_complete(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<u64, Error>>

    Waits for a seek operation to complete. Read more
    ","AsyncSeek","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncWrite for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncWrite,

    §

    fn poll_write(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from bufs into the object using vectored\nIO operations. Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_close(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempt to close the object. Read more
    ","AsyncWrite","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> AsyncWrite for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: AsyncWrite,

    §

    fn poll_write(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the object. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Like poll_write, except that it writes from a slice of buffers. Read more
    §

    fn is_write_vectored(&self) -> bool

    Determines if this writer has an efficient poll_write_vectored\nimplementation. Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to flush the object, ensuring that any buffered data reach\ntheir destination. Read more
    §

    fn poll_shutdown(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Initiates or attempts to shut down this writer, returning success when\nthe I/O connection has completely shut down. Read more
    ","AsyncWrite","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<P> Body for Pin<P>
    where\n P: Unpin + DerefMut,\n <P as Deref>::Target: Body,

    §

    type Data = <<P as Deref>::Target as Body>::Data

    Values yielded by the Body.
    §

    type Error = <<P as Deref>::Target as Body>::Error

    The error type this Body might generate.
    source§

    fn poll_data(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<Result<<Pin<P> as Body>::Data, <Pin<P> as Body>::Error>>>

    Attempt to pull out the next data buffer of this stream.
    source§

    fn poll_trailers(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<Option<HeaderMap>, <Pin<P> as Body>::Error>>

    Poll for an optional single HeaderMap of trailers. Read more
    source§

    fn is_end_stream(&self) -> bool

    Returns true when the end of stream has been reached. Read more
    source§

    fn size_hint(&self) -> SizeHint

    Returns the bounds on the remaining length of the stream. Read more
    source§

    fn data(&mut self) -> Data<'_, Self>
    where\n Self: Sized + Unpin,

    Returns future that resolves to next data chunk, if any.
    source§

    fn trailers(&mut self) -> Trailers<'_, Self>
    where\n Self: Sized + Unpin,

    Returns future that resolves to trailers, if any.
    source§

    fn map_data<F, B>(self, f: F) -> MapData<Self, F>
    where\n Self: Sized,\n F: FnMut(Self::Data) -> B,\n B: Buf,

    Maps this body’s data value to a different value.
    source§

    fn map_err<F, E>(self, f: F) -> MapErr<Self, F>
    where\n Self: Sized,\n F: FnMut(Self::Error) -> E,

    Maps this body’s error value to a different value.
    source§

    fn collect(self) -> Collect<Self>
    where\n Self: Sized,

    Turn this body into Collected body which will collect all the DATA frames\nand trailers.
    ","Body","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Body for Pin<P>
    where\n P: Unpin + DerefMut,\n <P as Deref>::Target: Body,

    §

    type Data = <<P as Deref>::Target as Body>::Data

    Values yielded by the Body.
    §

    type Error = <<P as Deref>::Target as Body>::Error

    The error type this Body might generate.
    §

    fn poll_frame(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<Result<Frame<<Pin<P> as Body>::Data>, <Pin<P> as Body>::Error>>>

    Attempt to pull out the next data buffer of this stream.
    §

    fn is_end_stream(&self) -> bool

    Returns true when the end of stream has been reached. Read more
    §

    fn size_hint(&self) -> SizeHint

    Returns the bounds on the remaining length of the stream. Read more
    ","Body","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Clone for Pin<Ptr>
    where\n Ptr: Clone,

    source§

    fn clone(&self) -> Pin<Ptr>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<G, R, A> Coroutine<R> for Pin<Box<G, A>>
    where\n G: Coroutine<R> + ?Sized,\n A: Allocator + 'static,

    §

    type Yield = <G as Coroutine<R>>::Yield

    🔬This is a nightly-only experimental API. (coroutine_trait)
    The type of value this coroutine yields. Read more
    §

    type Return = <G as Coroutine<R>>::Return

    🔬This is a nightly-only experimental API. (coroutine_trait)
    The type of value this coroutine returns. Read more
    source§

    fn resume(\n self: Pin<&mut Pin<Box<G, A>>>,\n arg: R,\n) -> CoroutineState<<Pin<Box<G, A>> as Coroutine<R>>::Yield, <Pin<Box<G, A>> as Coroutine<R>>::Return>

    🔬This is a nightly-only experimental API. (coroutine_trait)
    Resumes the execution of this coroutine. Read more
    ","Coroutine","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Debug for Pin<Ptr>
    where\n Ptr: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Deref for Pin<Ptr>
    where\n Ptr: Deref,

    §

    type Target = <Ptr as Deref>::Target

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &<Ptr as Deref>::Target

    Dereferences the value.
    ","Deref","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> DerefMut for Pin<Ptr>
    where\n Ptr: DerefMut,\n <Ptr as Deref>::Target: Unpin,

    source§

    fn deref_mut(&mut self) -> &mut <Ptr as Deref>::Target

    Mutably dereferences the value.
    ","DerefMut","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<'de, T, U> DeserializeAs<'de, Pin<Box<T>>> for Pin<Box<U>>
    where\n U: DeserializeAs<'de, T>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Pin<Box<T>>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Pin>>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Display for Pin<Ptr>
    where\n Ptr: Display,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Display","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<T, A> From<Box<T, A>> for Pin<Box<T, A>>
    where\n A: Allocator + 'static,\n T: ?Sized,

    source§

    fn from(boxed: Box<T, A>) -> Pin<Box<T, A>>

    Converts a Box<T> into a Pin<Box<T>>. If T does not implement Unpin, then\n*boxed will be pinned in memory and unable to be moved.

    \n

    This conversion does not allocate on the heap and happens in place.

    \n

    This is also available via Box::into_pin.

    \n

    Constructing and pinning a Box with <Pin<Box<T>>>::from(Box::new(x))\ncan also be written more concisely using Box::pin(x).\nThis From implementation is useful if you already have a Box<T>, or you are\nconstructing a (pinned) Box in a different way than with Box::new.

    \n
    ","From>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> FusedFuture for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: FusedFuture,

    §

    fn is_terminated(&self) -> bool

    Returns true if the underlying future should no longer be polled.
    ","FusedFuture","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> FusedStream for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: FusedStream,

    §

    fn is_terminated(&self) -> bool

    Returns true if the stream should no longer be polled.
    ","FusedStream","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.36.0 · source§

    impl<P> Future for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: Future,

    §

    type Output = <<P as Deref>::Target as Future>::Output

    The type of value produced on completion.
    source§

    fn poll(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<<Pin<P> as Future>::Output>

    Attempt to resolve the future to a final value, registering\nthe current task for wakeup if the value is not yet available. Read more
    ","Future","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr> Hash for Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Hash,

    source§

    fn hash<H>(&self, state: &mut H)
    where\n H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr> Ord for Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Ord,

    source§

    fn cmp(&self, other: &Pin<Ptr>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr, Q> PartialEq<Pin<Q>> for Pin<Ptr>
    where\n Ptr: Deref,\n Q: Deref,\n <Ptr as Deref>::Target: PartialEq<<Q as Deref>::Target>,

    source§

    fn eq(&self, other: &Pin<Q>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    source§

    fn ne(&self, other: &Pin<Q>) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr, Q> PartialOrd<Pin<Q>> for Pin<Ptr>
    where\n Ptr: Deref,\n Q: Deref,\n <Ptr as Deref>::Target: PartialOrd<<Q as Deref>::Target>,

    source§

    fn partial_cmp(&self, other: &Pin<Q>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    source§

    fn lt(&self, other: &Pin<Q>) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    source§

    fn le(&self, other: &Pin<Q>) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    source§

    fn gt(&self, other: &Pin<Q>) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    source§

    fn ge(&self, other: &Pin<Q>) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Unpin,

    1.33.0 (const: unstable) · source

    pub fn new(pointer: Ptr) -> Pin<Ptr>

    Construct a new Pin<Ptr> around a pointer to some data of a type that\nimplements Unpin.

    \n

    Unlike Pin::new_unchecked, this method is safe because the pointer\nPtr dereferences to an Unpin type, which cancels the pinning guarantees.

    \n
    §Examples
    \n
    use std::pin::Pin;\n\nlet mut val: u8 = 5;\n\n// Since `val` doesn't care about being moved, we can safely create a \"facade\" `Pin`\n// which will allow `val` to participate in `Pin`-bound apis  without checking that\n// pinning guarantees are actually upheld.\nlet mut pinned: Pin<&mut u8> = Pin::new(&mut val);
    \n
    1.39.0 (const: unstable) · source

    pub fn into_inner(pin: Pin<Ptr>) -> Ptr

    Unwraps this Pin<Ptr>, returning the underlying pointer.

    \n

    Doing this operation safely requires that the data pointed at by this pinning pointer\nimplements Unpin so that we can ignore the pinning invariants when unwrapping it.

    \n
    §Examples
    \n
    use std::pin::Pin;\n\nlet mut val: u8 = 5;\nlet pinned: Pin<&mut u8> = Pin::new(&mut val);\n\n// Unwrap the pin to get the underlying mutable reference to the value. We can do\n// this because `val` doesn't care about being moved, so the `Pin` was just\n// a \"facade\" anyway.\nlet r = Pin::into_inner(pinned);\nassert_eq!(*r, 5);
    \n
    ",0,"massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> Pin<Ptr>
    where\n Ptr: Deref,

    1.33.0 (const: unstable) · source

    pub unsafe fn new_unchecked(pointer: Ptr) -> Pin<Ptr>

    Construct a new Pin<Ptr> around a reference to some data of a type that\nmay or may not implement Unpin.

    \n

    If pointer dereferences to an Unpin type, Pin::new should be used\ninstead.

    \n
    §Safety
    \n

    This constructor is unsafe because we cannot guarantee that the data\npointed to by pointer is pinned. At its core, pinning a value means making the\nguarantee that the value’s data will not be moved nor have its storage invalidated until\nit gets dropped. For a more thorough explanation of pinning, see the pin module docs.

    \n

    If the caller that is constructing this Pin<Ptr> does not ensure that the data Ptr\npoints to is pinned, that is a violation of the API contract and may lead to undefined\nbehavior in later (even safe) operations.

    \n

    By using this method, you are also making a promise about the Deref and\nDerefMut implementations of Ptr, if they exist. Most importantly, they\nmust not move out of their self arguments: Pin::as_mut and Pin::as_ref\nwill call DerefMut::deref_mut and Deref::deref on the pointer type Ptr\nand expect these methods to uphold the pinning invariants.\nMoreover, by calling this method you promise that the reference Ptr\ndereferences to will not be moved out of again; in particular, it\nmust not be possible to obtain a &mut Ptr::Target and then\nmove out of that reference (using, for example mem::swap).

    \n

    For example, calling Pin::new_unchecked on an &'a mut T is unsafe because\nwhile you are able to pin it for the given lifetime 'a, you have no control\nover whether it is kept pinned once 'a ends, and therefore cannot uphold the\nguarantee that a value, once pinned, remains pinned until it is dropped:

    \n\n
    use std::mem;\nuse std::pin::Pin;\n\nfn move_pinned_ref<T>(mut a: T, mut b: T) {\n    unsafe {\n        let p: Pin<&mut T> = Pin::new_unchecked(&mut a);\n        // This should mean the pointee `a` can never move again.\n    }\n    mem::swap(&mut a, &mut b); // Potential UB down the road ⚠️\n    // The address of `a` changed to `b`'s stack slot, so `a` got moved even\n    // though we have previously pinned it! We have violated the pinning API contract.\n}
    \n

    A value, once pinned, must remain pinned until it is dropped (unless its type implements\nUnpin). Because Pin<&mut T> does not own the value, dropping the Pin will not drop\nthe value and will not end the pinning contract. So moving the value after dropping the\nPin<&mut T> is still a violation of the API contract.

    \n

    Similarly, calling Pin::new_unchecked on an Rc<T> is unsafe because there could be\naliases to the same data that are not subject to the pinning restrictions:

    \n\n
    use std::rc::Rc;\nuse std::pin::Pin;\n\nfn move_pinned_rc<T>(mut x: Rc<T>) {\n    // This should mean the pointee can never move again.\n    let pin = unsafe { Pin::new_unchecked(Rc::clone(&x)) };\n    {\n        let p: Pin<&T> = pin.as_ref();\n        // ...\n    }\n    drop(pin);\n\n    let content = Rc::get_mut(&mut x).unwrap(); // Potential UB down the road ⚠️\n    // Now, if `x` was the only reference, we have a mutable reference to\n    // data that we pinned above, which we could use to move it as we have\n    // seen in the previous example. We have violated the pinning API contract.\n }
    \n
    §Pinning of closure captures
    \n

    Particular care is required when using Pin::new_unchecked in a closure:\nPin::new_unchecked(&mut var) where var is a by-value (moved) closure capture\nimplicitly makes the promise that the closure itself is pinned, and that all uses\nof this closure capture respect that pinning.

    \n\n
    use std::pin::Pin;\nuse std::task::Context;\nuse std::future::Future;\n\nfn move_pinned_closure(mut x: impl Future, cx: &mut Context<'_>) {\n    // Create a closure that moves `x`, and then internally uses it in a pinned way.\n    let mut closure = move || unsafe {\n        let _ignore = Pin::new_unchecked(&mut x).poll(cx);\n    };\n    // Call the closure, so the future can assume it has been pinned.\n    closure();\n    // Move the closure somewhere else. This also moves `x`!\n    let mut moved = closure;\n    // Calling it again means we polled the future from two different locations,\n    // violating the pinning API contract.\n    moved(); // Potential UB ⚠️\n}
    \n

    When passing a closure to another API, it might be moving the closure any time, so\nPin::new_unchecked on closure captures may only be used if the API explicitly documents\nthat the closure is pinned.

    \n

    The better alternative is to avoid all that trouble and do the pinning in the outer function\ninstead (here using the pin! macro):

    \n\n
    use std::pin::pin;\nuse std::task::Context;\nuse std::future::Future;\n\nfn move_pinned_closure(mut x: impl Future, cx: &mut Context<'_>) {\n    let mut x = pin!(x);\n    // Create a closure that captures `x: Pin<&mut _>`, which is safe to move.\n    let mut closure = move || {\n        let _ignore = x.as_mut().poll(cx);\n    };\n    // Call the closure, so the future can assume it has been pinned.\n    closure();\n    // Move the closure somewhere else.\n    let mut moved = closure;\n    // Calling it again here is fine (except that we might be polling a future that already\n    // returned `Poll::Ready`, but that is a separate problem).\n    moved();\n}
    \n
    1.33.0 · source

    pub fn as_ref(&self) -> Pin<&<Ptr as Deref>::Target>

    Gets a shared reference to the pinned value this Pin points to.

    \n

    This is a generic method to go from &Pin<Pointer<T>> to Pin<&T>.\nIt is safe because, as part of the contract of Pin::new_unchecked,\nthe pointee cannot move after Pin<Pointer<T>> got created.\n“Malicious” implementations of Pointer::Deref are likewise\nruled out by the contract of Pin::new_unchecked.

    \n
    1.39.0 (const: unstable) · source

    pub unsafe fn into_inner_unchecked(pin: Pin<Ptr>) -> Ptr

    Unwraps this Pin<Ptr>, returning the underlying Ptr.

    \n
    §Safety
    \n

    This function is unsafe. You must guarantee that you will continue to\ntreat the pointer Ptr as pinned after you call this function, so that\nthe invariants on the Pin type can be upheld. If the code using the\nresulting Ptr does not continue to maintain the pinning invariants that\nis a violation of the API contract and may lead to undefined behavior in\nlater (safe) operations.

    \n

    Note that you must be able to guarantee that the data pointed to by Ptr\nwill be treated as pinned all the way until its drop handler is complete!

    \n

    For more information, see the pin module docs

    \n

    If the underlying data is Unpin, Pin::into_inner should be used\ninstead.

    \n
    ",0,"massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> Pin<Ptr>
    where\n Ptr: DerefMut,

    1.33.0 · source

    pub fn as_mut(&mut self) -> Pin<&mut <Ptr as Deref>::Target>

    Gets a mutable reference to the pinned value this Pin<Ptr> points to.

    \n

    This is a generic method to go from &mut Pin<Pointer<T>> to Pin<&mut T>.\nIt is safe because, as part of the contract of Pin::new_unchecked,\nthe pointee cannot move after Pin<Pointer<T>> got created.\n“Malicious” implementations of Pointer::DerefMut are likewise\nruled out by the contract of Pin::new_unchecked.

    \n

    This method is useful when doing multiple calls to functions that consume the\npinning pointer.

    \n
    §Example
    \n
    use std::pin::Pin;\n\nimpl Type {\n    fn method(self: Pin<&mut Self>) {\n        // do something\n    }\n\n    fn call_method_twice(mut self: Pin<&mut Self>) {\n        // `method` consumes `self`, so reborrow the `Pin<&mut Self>` via `as_mut`.\n        self.as_mut().method();\n        self.as_mut().method();\n    }\n}
    \n
    1.33.0 · source

    pub fn set(&mut self, value: <Ptr as Deref>::Target)
    where\n <Ptr as Deref>::Target: Sized,

    Assigns a new value to the memory location pointed to by the Pin<Ptr>.

    \n

    This overwrites pinned data, but that is okay: the original pinned value’s destructor gets\nrun before being overwritten and the new value is also a valid value of the same type, so\nno pinning invariant is violated. See the pin module documentation\nfor more information on how this upholds the pinning invariants.

    \n
    §Example
    \n
    use std::pin::Pin;\n\nlet mut val: u8 = 5;\nlet mut pinned: Pin<&mut u8> = Pin::new(&mut val);\nprintln!(\"{}\", pinned); // 5\npinned.set(10);\nprintln!(\"{}\", pinned); // 10
    \n
    ",0,"massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Pointer for Pin<Ptr>
    where\n Ptr: Pointer,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Pointer","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Read for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: Read,

    §

    fn poll_read(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: ReadBufCursor<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to read bytes into the buf. Read more
    ","Read","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<T, U> SerializeAs<Pin<Box<T>>> for Pin<Box<U>>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &Pin<Box<T>>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P, Item> Sink<Item> for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: Sink<Item>,

    §

    type Error = <<P as Deref>::Target as Sink<Item>>::Error

    The type of value produced by the sink when an error occurs.
    §

    fn poll_ready(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), <Pin<P> as Sink<Item>>::Error>>

    Attempts to prepare the Sink to receive a value. Read more
    §

    fn start_send(\n self: Pin<&mut Pin<P>>,\n item: Item,\n) -> Result<(), <Pin<P> as Sink<Item>>::Error>

    Begin the process of sending a value to the sink.\nEach call to this function must be preceded by a successful call to\npoll_ready which returned Poll::Ready(Ok(())). Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), <Pin<P> as Sink<Item>>::Error>>

    Flush any remaining output from this sink. Read more
    §

    fn poll_close(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), <Pin<P> as Sink<Item>>::Error>>

    Flush any remaining output and close this sink, if necessary. Read more
    ","Sink","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Stream for Pin<P>
    where\n P: DerefMut + Unpin,\n <P as Deref>::Target: Stream,

    §

    type Item = <<P as Deref>::Target as Stream>::Item

    Values yielded by the stream.
    §

    fn poll_next(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Option<<Pin<P> as Stream>::Item>>

    Attempt to pull out the next value of this stream, registering the\ncurrent task for wakeup if the value is not yet available, and returning\nNone if the stream is exhausted. Read more
    §

    fn size_hint(&self) -> (usize, Option<usize>)

    Returns the bounds on the remaining length of the stream. Read more
    ","Stream","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<'a, T, F> UnsafeFutureObj<'a, T> for Pin<Box<F>>
    where\n F: Future<Output = T> + 'a,

    §

    fn into_raw(self) -> *mut dyn Future<Output = T> + 'a

    Convert an owned instance into a (conceptually owned) fat pointer. Read more
    §

    unsafe fn drop(ptr: *mut dyn Future<Output = T> + 'a)

    Drops the future represented by the given fat pointer. Read more
    ","UnsafeFutureObj<'a, T>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    §

    impl<P> Write for Pin<P>
    where\n P: DerefMut,\n <P as Deref>::Target: Write,

    §

    fn poll_write(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n buf: &[u8],\n) -> Poll<Result<usize, Error>>

    Attempt to write bytes from buf into the destination. Read more
    §

    fn poll_write_vectored(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n bufs: &[IoSlice<'_>],\n) -> Poll<Result<usize, Error>>

    Like poll_write, except that it writes from a slice of buffers.
    §

    fn is_write_vectored(&self) -> bool

    Returns whether this writer has an efficient poll_write_vectored\nimplementation. Read more
    §

    fn poll_flush(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to flush the object. Read more
    §

    fn poll_shutdown(\n self: Pin<&mut Pin<P>>,\n cx: &mut Context<'_>,\n) -> Poll<Result<(), Error>>

    Attempts to shut down this writer.
    ","Write","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr, U> CoerceUnsized<Pin<U>> for Pin<Ptr>
    where\n Ptr: CoerceUnsized<U>,

    ","CoerceUnsized>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr> Copy for Pin<Ptr>
    where\n Ptr: Copy,

    ","Copy","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    source§

    impl<Ptr> DerefPure for Pin<Ptr>
    where\n Ptr: DerefPure,

    ","DerefPure","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.33.0 · source§

    impl<Ptr, U> DispatchFromDyn<Pin<U>> for Pin<Ptr>
    where\n Ptr: DispatchFromDyn<U>,

    ","DispatchFromDyn>","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"],["
    1.41.0 · source§

    impl<Ptr> Eq for Pin<Ptr>
    where\n Ptr: Deref,\n <Ptr as Deref>::Target: Eq,

    ","Eq","massa_grpc::stream::new_blocks::NewBlocksStreamType","massa_grpc::stream::new_endorsements::NewEndorsementsStreamType","massa_grpc::stream::new_filled_blocks::NewFilledBlocksStreamType","massa_grpc::stream::new_operations::NewOperationsStreamType","massa_grpc::stream::new_slot_abi_call_stacks::NewSlotABICallStacksStreamType","massa_grpc::stream::new_slot_execution_outputs::NewSlotExecutionOutputsStreamType","massa_grpc::stream::new_slot_transfers::NewSlotTransfersStreamType","massa_grpc::stream::send_blocks::SendBlocksStreamType","massa_grpc::stream::send_endorsements::SendEndorsementsStreamType","massa_grpc::stream::send_operations::SendOperationsStreamType","massa_grpc::stream::tx_throughput::TransactionsThroughputStreamType"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/core/result/enum.Result.js b/type.impl/core/result/enum.Result.js index f64ee181e82..56b5fb22b27 100644 --- a/type.impl/core/result/enum.Result.js +++ b/type.impl/core/result/enum.Result.js @@ -1,5 +1,5 @@ (function() {var type_impls = { -"massa_factory_exports":[["
    §

    impl<T, E> Archive for Result<T, E>
    where\n T: Archive,\n E: Archive,

    §

    type Archived = ArchivedResult<<T as Archive>::Archived, <E as Archive>::Archived>

    The archived representation of this type. Read more
    §

    type Resolver = Result<<T as Archive>::Resolver, <E as Archive>::Resolver>

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Result<T, E> as Archive>::Resolver,\n out: *mut <Result<T, E> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Clone for Result<T, E>
    where\n T: Clone,\n E: Clone,

    source§

    fn clone(&self) -> Result<T, E>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &Result<T, E>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Context<T, E> for Result<T, E>
    where\n E: StdError + Send + Sync + 'static,

    source§

    fn context<C>(self, context: C) -> Result<T, Error>
    where\n C: Display + Send + Sync + 'static,

    Wrap the error value with additional context.
    source§

    fn with_context<C, F>(self, context: F) -> Result<T, Error>
    where\n C: Display + Send + Sync + 'static,\n F: FnOnce() -> C,

    Wrap the error value with additional context that is evaluated lazily\nonly once an error does occur.
    ","Context","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<C, E> ControlFlow for Result<C, E>
    where\n C: ControlFlow,

    ","ControlFlow","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Debug for Result<T, E>
    where\n T: Debug,\n E: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<'de, T, E> Deserialize<'de> for Result<T, E>
    where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
    where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Result>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<I, O, E> Finish<I, O, E> for Result<(I, O), Err<E>>

    §

    fn finish(self) -> Result<(I, O), E>

    converts the parser’s result to a type that is more consumable by error\nmanagement libraries. It keeps the same Ok branch, and merges Err::Error\nand Err::Failure into the Err side. Read more
    ","Finish","massa_factory_exports::error::FactoryResult"],["
    source§

    impl From<&StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<&StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<Errors> for Result<(), Errors>

    §

    fn from(e: Errors) -> Result<(), Errors>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<Result> for Result<(), Unspecified>

    §

    fn from(ret: Result) -> Result<(), Unspecified>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    source§

    impl From<StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
    where\n V: FromIterator<A>,

    source§

    fn from_iter<I>(iter: I) -> Result<V, E>
    where\n I: IntoIterator<Item = Result<A, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

    \n

    Here is an example which increments every integer in a vector,\nchecking for overflow:

    \n\n
    let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
    \n

    Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

    \n\n
    let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
    \n

    Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

    \n\n
    let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
    \n

    Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

    \n
    ","FromIterator>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<C, T, E> FromParallelIterator<Result<T, E>> for Result<C, E>
    where\n C: FromParallelIterator<T>,\n T: Send,\n E: Send,

    Collect an arbitrary Result-wrapped collection.

    \n

    If any item is Err, then all previous Ok items collected are\ndiscarded, and it returns that error. If there are multiple errors, the\none returned is not deterministic.

    \n
    §

    fn from_par_iter<I>(par_iter: I) -> Result<C, E>
    where\n I: IntoParallelIterator<Item = Result<T, E>>,

    Creates an instance of the collection from the parallel iterator par_iter. Read more
    ","FromParallelIterator>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<S, T> FromRequest<S> for Result<T, <T as FromRequest<S>>::Rejection>
    where\n T: FromRequest<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request<'life0, 'async_trait>(\n req: Request<Body>,\n state: &'life0 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequest<S>>::Rejection>, <Result<T, <T as FromRequest<S>>::Rejection> as FromRequest<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n Result<T, <T as FromRequest<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequest","massa_factory_exports::error::FactoryResult"],["
    §

    impl<S, T> FromRequestParts<S> for Result<T, <T as FromRequestParts<S>>::Rejection>
    where\n T: FromRequestParts<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request_parts<'life0, 'life1, 'async_trait>(\n parts: &'life0 mut Parts,\n state: &'life1 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequestParts<S>>::Rejection>, <Result<T, <T as FromRequestParts<S>>::Rejection> as FromRequestParts<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n Result<T, <T as FromRequestParts<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequestParts","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(_: Yeet<E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Hash for Result<T, E>
    where\n T: Hash,\n E: Hash,

    source§

    fn hash<__H>(&self, state: &mut __H)
    where\n __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> IntoIterator for Result<T, E>

    source§

    fn into_iter(self) -> IntoIter<T>

    Returns a consuming iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_factory_exports::error::FactoryResult"],["
    §

    impl<B, E> IntoMapRequestResult<B> for Result<Request<B>, E>
    where\n E: IntoResponse,

    §

    fn into_map_request_result(self) -> Result<Request<B>, Response<Body>>

    Perform the conversion.
    ","IntoMapRequestResult","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> IntoParallelIterator for Result<T, E>
    where\n T: Send,

    §

    type Item = T

    The type of item that the parallel iterator will produce.
    §

    type Iter = IntoIter<T>

    The parallel iterator type that will be created.
    §

    fn into_par_iter(self) -> <Result<T, E> as IntoParallelIterator>::Iter

    Converts self into a parallel iterator. Read more
    ","IntoParallelIterator","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> IntoResponse for Result<T, E>
    where\n T: IntoResponse,\n E: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T> IntoResponse for Result<T, ErrorResponse>
    where\n T: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> JsonSchema for Result<T, E>
    where\n T: JsonSchema,\n E: JsonSchema,

    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    ","JsonSchema","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Ord for Result<T, E>
    where\n T: Ord,\n E: Ord,

    source§

    fn cmp(&self, other: &Result<T, E>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, U, E, F> PartialEq<ArchivedResult<T, E>> for Result<U, F>
    where\n T: PartialEq<U>,\n E: PartialEq<F>,

    §

    fn eq(&self, other: &ArchivedResult<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> PartialEq for Result<T, E>
    where\n T: PartialEq,\n E: PartialEq,

    source§

    fn eq(&self, other: &Result<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> PartialOrd for Result<T, E>
    where\n T: PartialOrd,\n E: PartialOrd,

    source§

    fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T> ProcErrorExt for Result<T, ProcError>

    §

    fn error_path(self, path: &Path) -> Result<T, ProcError>

    Add path information to the error.
    ","ProcErrorExt","massa_factory_exports::error::FactoryResult"],["
    1.16.0 · source§

    impl<T, U, E> Product<Result<U, E>> for Result<T, E>
    where\n T: Product<U>,

    source§

    fn product<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

    \n
    §Examples
    \n

    This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

    \n\n
    let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
    \n
    ","Product>","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Residual<T> for Result<Infallible, E>

    §

    type TryType = Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2_residual)
    The “return” type of this meta-function.
    ","Residual","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<&T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<&mut T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<Option<T>, E>

    1.33.0 (const: unstable) · source

    pub fn transpose(self) -> Option<Result<T, E>>

    Transposes a Result of an Option into an Option of a Result.

    \n

    Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

    \n
    §Examples
    \n
    #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<Result<T, E>, E>

    source

    pub fn flatten(self) -> Result<T, E>

    🔬This is a nightly-only experimental API. (result_flattening)

    Converts from Result<Result<T, E>, E> to Result<T, E>

    \n
    §Examples
    \n
    #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
    \n

    Flattening only removes one level of nesting at a time:

    \n\n
    #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<T, E>

    1.0.0 (const: 1.48.0) · source

    pub const fn is_ok(&self) -> bool

    Returns true if the result is Ok.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
    \n
    1.70.0 · source

    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

    Returns true if the result is Ok and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn is_err(&self) -> bool

    Returns true if the result is Err.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
    \n
    1.70.0 · source

    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

    Returns true if the result is Err and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
    \n
    1.0.0 · source

    pub fn ok(self) -> Option<T>

    Converts from Result<T, E> to Option<T>.

    \n

    Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
    \n
    1.0.0 · source

    pub fn err(self) -> Option<E>

    Converts from Result<T, E> to Option<E>.

    \n

    Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn as_ref(&self) -> Result<&T, &E>

    Converts from &Result<T, E> to Result<&T, &E>.

    \n

    Produces a new Result, containing a reference\ninto the original, leaving the original in place.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
    \n
    1.0.0 (const: unstable) · source

    pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

    Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

    \n
    §Examples
    \n
    fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
    \n
    1.0.0 · source

    pub fn map<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

    \n

    This function can be used to compose the results of two functions.

    \n
    §Examples
    \n

    Print the numbers on each line of a string multiplied by two.

    \n\n
    let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
    \n
    1.41.0 · source

    pub fn map_or<U, F>(self, default: U, f: F) -> U
    where\n F: FnOnce(T) -> U,

    Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

    \n

    Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
    \n
    1.41.0 · source

    pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
    where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

    \n

    This function can be used to unpack a successful result\nwhile handling an error.

    \n
    §Examples
    \n
    let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
    \n
    1.0.0 · source

    pub fn map_err<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> F,

    Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

    \n

    This function can be used to pass through a successful result while handling\nan error.

    \n
    §Examples
    \n
    fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
    \n
    1.76.0 · source

    pub fn inspect<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&T),

    Calls a function with a reference to the contained value if Ok.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
    \n
    1.76.0 · source

    pub fn inspect_err<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&E),

    Calls a function with a reference to the contained value if Err.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
    \n
    1.47.0 · source

    pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
    where\n T: Deref,

    Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

    \n

    Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

    \n
    §Examples
    \n
    let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
    \n
    1.47.0 · source

    pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
    where\n T: DerefMut,

    Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

    \n

    Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

    \n
    §Examples
    \n
    let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    Returns an iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, T>

    Returns a mutable iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
    \n
    1.4.0 · source

    pub fn expect(self, msg: &str) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
    \n
    §Recommended Message Style
    \n

    We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

    \n\n
    let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
    \n

    Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

    \n

    For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

    \n
    1.0.0 · source

    pub fn unwrap(self) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message provided by the\nErr’s value.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
    \n
    1.16.0 · source

    pub fn unwrap_or_default(self) -> T
    where\n T: Default,

    Returns the contained Ok value or a default

    \n

    Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

    \n
    §Examples
    \n

    Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

    \n\n
    let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
    \n
    1.17.0 · source

    pub fn expect_err(self, msg: &str) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
    \n
    1.0.0 · source

    pub fn unwrap_err(self) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
    \n
    source

    pub fn into_ok(self) -> T
    where\n E: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Ok value, but never panics.

    \n

    Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

    \n
    §Examples
    \n
    \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
    \n
    source

    pub fn into_err(self) -> E
    where\n T: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Err value, but never panics.

    \n

    Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

    \n
    §Examples
    \n
    \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
    \n
    1.0.0 · source

    pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

    Returns res if the result is Ok, otherwise returns the Err value of self.

    \n

    Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
    \n
    1.0.0 · source

    pub fn and_then<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> Result<U, E>,

    Calls op if the result is Ok, otherwise returns the Err value of self.

    \n

    This function can be used for control flow based on Result values.

    \n
    §Examples
    \n
    fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
    \n

    Often used to chain fallible operations that may return Err.

    \n\n
    use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
    \n
    1.0.0 · source

    pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

    Returns res if the result is Err, otherwise returns the Ok value of self.

    \n

    Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
    \n
    1.0.0 · source

    pub fn or_else<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> Result<T, F>,

    Calls op if the result is Err, otherwise returns the Ok value of self.

    \n

    This function can be used for control flow based on result values.

    \n
    §Examples
    \n
    fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
    \n
    1.0.0 · source

    pub fn unwrap_or(self, default: T) -> T

    Returns the contained Ok value or a provided default.

    \n

    Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
    \n
    1.0.0 · source

    pub fn unwrap_or_else<F>(self, op: F) -> T
    where\n F: FnOnce(E) -> T,

    Returns the contained Ok value or computes it from a closure.

    \n
    §Examples
    \n
    fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
    \n
    1.58.0 · source

    pub unsafe fn unwrap_unchecked(self) -> T

    Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

    \n
    §Safety
    \n

    Calling this method on an Err is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
    \n
    1.58.0 · source

    pub unsafe fn unwrap_err_unchecked(self) -> E

    Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

    \n
    §Safety
    \n

    Calling this method on an Ok is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E, S> Serialize<S> for Result<T, E>
    where\n T: Serialize<S>,\n E: Serialize<S>,\n S: Fallible + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<Result<T, E> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Serialize for Result<T, E>
    where\n T: Serialize,\n E: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
    where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

    source§

    fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_factory_exports::error::FactoryResult"],["
    1.16.0 · source§

    impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
    where\n T: Sum<U>,

    source§

    fn sum<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

    \n
    §Examples
    \n

    This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

    \n\n
    let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
    \n
    ","Sum>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> TapFallible for Result<T, E>

    §

    type Ok = T

    The interior type used to indicate a successful construction.
    §

    type Err = E

    The interior type used to indicate a failed construction.
    §

    fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

    Immutably accesses an interior success value. Read more
    §

    fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

    Mutably accesses an interior success value. Read more
    §

    fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

    Immutably accesses an interior failure value. Read more
    §

    fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

    Mutably accesses an interior failure value. Read more
    §

    fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

    Calls .tap_ok() only in debug builds, and is erased in release builds.
    §

    fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

    Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

    Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

    Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
    ","TapFallible","massa_factory_exports::error::FactoryResult"],["
    1.61.0 · source§

    impl<T, E> Termination for Result<T, E>
    where\n T: Termination,\n E: Debug,

    source§

    fn report(self) -> ExitCode

    Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
    ","Termination","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Try for Result<T, E>

    §

    type Output = T

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value produced by ? when not short-circuiting.
    §

    type Residual = Result<Infallible, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
    source§

    fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from its Output type. Read more
    source§

    fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
    ","Try","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Copy for Result<T, E>
    where\n T: Copy,\n E: Copy,

    ","Copy","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Eq for Result<T, E>
    where\n T: Eq,\n E: Eq,

    ","Eq","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, U, E> FromStream<Result<T, E>> for Result<U, E>
    where\n U: FromStream<T>,

    ","FromStream>","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> StructuralPartialEq for Result<T, E>

    ","StructuralPartialEq","massa_factory_exports::error::FactoryResult"]], -"massa_models":[["
    1.0.0 · source§

    impl<T, E> Clone for Result<T, E>
    where\n T: Clone,\n E: Clone,

    source§

    fn clone(&self) -> Result<T, E>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &Result<T, E>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::error::ModelsResult"],["
    source§

    impl<C, E> ControlFlow for Result<C, E>
    where\n C: ControlFlow,

    ","ControlFlow","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Debug for Result<T, E>
    where\n T: Debug,\n E: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::error::ModelsResult"],["
    source§

    impl<'de, T, E> Deserialize<'de> for Result<T, E>
    where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::error::ModelsResult"],["
    source§

    impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
    where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Result>","massa_models::error::ModelsResult"],["
    §

    impl<I, O, E> Finish<I, O, E> for Result<(I, O), Err<E>>

    §

    fn finish(self) -> Result<(I, O), E>

    converts the parser’s result to a type that is more consumable by error\nmanagement libraries. It keeps the same Ok branch, and merges Err::Error\nand Err::Failure into the Err side. Read more
    ","Finish","massa_models::error::ModelsResult"],["
    source§

    impl From<&StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_models::error::ModelsResult"],["
    §

    impl From<&StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_models::error::ModelsResult"],["
    §

    impl From<Result> for Result<(), Unspecified>

    §

    fn from(ret: Result) -> Result<(), Unspecified>

    Converts to this type from the input type.
    ","From","massa_models::error::ModelsResult"],["
    source§

    impl From<StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_models::error::ModelsResult"],["
    §

    impl From<StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
    where\n V: FromIterator<A>,

    source§

    fn from_iter<I>(iter: I) -> Result<V, E>
    where\n I: IntoIterator<Item = Result<A, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

    \n

    Here is an example which increments every integer in a vector,\nchecking for overflow:

    \n\n
    let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
    \n

    Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

    \n\n
    let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
    \n

    Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

    \n\n
    let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
    \n

    Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

    \n
    ","FromIterator>","massa_models::error::ModelsResult"],["
    §

    impl<S, T> FromRequest<S> for Result<T, <T as FromRequest<S>>::Rejection>
    where\n T: FromRequest<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request<'life0, 'async_trait>(\n req: Request<Body>,\n state: &'life0 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequest<S>>::Rejection>, <Result<T, <T as FromRequest<S>>::Rejection> as FromRequest<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n Result<T, <T as FromRequest<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequest","massa_models::error::ModelsResult"],["
    §

    impl<S, T> FromRequestParts<S> for Result<T, <T as FromRequestParts<S>>::Rejection>
    where\n T: FromRequestParts<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request_parts<'life0, 'life1, 'async_trait>(\n parts: &'life0 mut Parts,\n state: &'life1 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequestParts<S>>::Rejection>, <Result<T, <T as FromRequestParts<S>>::Rejection> as FromRequestParts<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n Result<T, <T as FromRequestParts<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequestParts","massa_models::error::ModelsResult"],["
    source§

    impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_models::error::ModelsResult"],["
    source§

    impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(_: Yeet<E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Hash for Result<T, E>
    where\n T: Hash,\n E: Hash,

    source§

    fn hash<__H>(&self, state: &mut __H)
    where\n __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> IntoIterator for Result<T, E>

    source§

    fn into_iter(self) -> IntoIter<T>

    Returns a consuming iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::error::ModelsResult"],["
    §

    impl<B, E> IntoMapRequestResult<B> for Result<Request<B>, E>
    where\n E: IntoResponse,

    §

    fn into_map_request_result(self) -> Result<Request<B>, Response<Body>>

    Perform the conversion.
    ","IntoMapRequestResult","massa_models::error::ModelsResult"],["
    §

    impl<T, E> IntoResponse for Result<T, E>
    where\n T: IntoResponse,\n E: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_models::error::ModelsResult"],["
    §

    impl<T> IntoResponse for Result<T, ErrorResponse>
    where\n T: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Ord for Result<T, E>
    where\n T: Ord,\n E: Ord,

    source§

    fn cmp(&self, other: &Result<T, E>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> PartialEq for Result<T, E>
    where\n T: PartialEq,\n E: PartialEq,

    source§

    fn eq(&self, other: &Result<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> PartialOrd for Result<T, E>
    where\n T: PartialOrd,\n E: PartialOrd,

    source§

    fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_models::error::ModelsResult"],["
    1.16.0 · source§

    impl<T, U, E> Product<Result<U, E>> for Result<T, E>
    where\n T: Product<U>,

    source§

    fn product<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

    \n
    §Examples
    \n

    This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

    \n\n
    let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
    \n
    ","Product>","massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Residual<T> for Result<Infallible, E>

    §

    type TryType = Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2_residual)
    The “return” type of this meta-function.
    ","Residual","massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<&T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<&mut T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<Option<T>, E>

    1.33.0 (const: unstable) · source

    pub fn transpose(self) -> Option<Result<T, E>>

    Transposes a Result of an Option into an Option of a Result.

    \n

    Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

    \n
    §Examples
    \n
    #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<Result<T, E>, E>

    source

    pub fn flatten(self) -> Result<T, E>

    🔬This is a nightly-only experimental API. (result_flattening)

    Converts from Result<Result<T, E>, E> to Result<T, E>

    \n
    §Examples
    \n
    #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
    \n

    Flattening only removes one level of nesting at a time:

    \n\n
    #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<T, E>

    1.0.0 (const: 1.48.0) · source

    pub const fn is_ok(&self) -> bool

    Returns true if the result is Ok.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
    \n
    1.70.0 · source

    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

    Returns true if the result is Ok and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn is_err(&self) -> bool

    Returns true if the result is Err.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
    \n
    1.70.0 · source

    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

    Returns true if the result is Err and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
    \n
    1.0.0 · source

    pub fn ok(self) -> Option<T>

    Converts from Result<T, E> to Option<T>.

    \n

    Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
    \n
    1.0.0 · source

    pub fn err(self) -> Option<E>

    Converts from Result<T, E> to Option<E>.

    \n

    Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn as_ref(&self) -> Result<&T, &E>

    Converts from &Result<T, E> to Result<&T, &E>.

    \n

    Produces a new Result, containing a reference\ninto the original, leaving the original in place.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
    \n
    1.0.0 (const: unstable) · source

    pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

    Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

    \n
    §Examples
    \n
    fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
    \n
    1.0.0 · source

    pub fn map<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

    \n

    This function can be used to compose the results of two functions.

    \n
    §Examples
    \n

    Print the numbers on each line of a string multiplied by two.

    \n\n
    let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
    \n
    1.41.0 · source

    pub fn map_or<U, F>(self, default: U, f: F) -> U
    where\n F: FnOnce(T) -> U,

    Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

    \n

    Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
    \n
    1.41.0 · source

    pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
    where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

    \n

    This function can be used to unpack a successful result\nwhile handling an error.

    \n
    §Examples
    \n
    let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
    \n
    1.0.0 · source

    pub fn map_err<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> F,

    Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

    \n

    This function can be used to pass through a successful result while handling\nan error.

    \n
    §Examples
    \n
    fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
    \n
    1.76.0 · source

    pub fn inspect<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&T),

    Calls a function with a reference to the contained value if Ok.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
    \n
    1.76.0 · source

    pub fn inspect_err<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&E),

    Calls a function with a reference to the contained value if Err.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
    \n
    1.47.0 · source

    pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
    where\n T: Deref,

    Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

    \n

    Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

    \n
    §Examples
    \n
    let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
    \n
    1.47.0 · source

    pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
    where\n T: DerefMut,

    Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

    \n

    Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

    \n
    §Examples
    \n
    let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    Returns an iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, T>

    Returns a mutable iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
    \n
    1.4.0 · source

    pub fn expect(self, msg: &str) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
    \n
    §Recommended Message Style
    \n

    We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

    \n\n
    let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
    \n

    Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

    \n

    For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

    \n
    1.0.0 · source

    pub fn unwrap(self) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message provided by the\nErr’s value.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
    \n
    1.16.0 · source

    pub fn unwrap_or_default(self) -> T
    where\n T: Default,

    Returns the contained Ok value or a default

    \n

    Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

    \n
    §Examples
    \n

    Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

    \n\n
    let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
    \n
    1.17.0 · source

    pub fn expect_err(self, msg: &str) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
    \n
    1.0.0 · source

    pub fn unwrap_err(self) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
    \n
    source

    pub fn into_ok(self) -> T
    where\n E: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Ok value, but never panics.

    \n

    Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

    \n
    §Examples
    \n
    \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
    \n
    source

    pub fn into_err(self) -> E
    where\n T: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Err value, but never panics.

    \n

    Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

    \n
    §Examples
    \n
    \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
    \n
    1.0.0 · source

    pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

    Returns res if the result is Ok, otherwise returns the Err value of self.

    \n

    Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
    \n
    1.0.0 · source

    pub fn and_then<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> Result<U, E>,

    Calls op if the result is Ok, otherwise returns the Err value of self.

    \n

    This function can be used for control flow based on Result values.

    \n
    §Examples
    \n
    fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
    \n

    Often used to chain fallible operations that may return Err.

    \n\n
    use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
    \n
    1.0.0 · source

    pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

    Returns res if the result is Err, otherwise returns the Ok value of self.

    \n

    Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
    \n
    1.0.0 · source

    pub fn or_else<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> Result<T, F>,

    Calls op if the result is Err, otherwise returns the Ok value of self.

    \n

    This function can be used for control flow based on result values.

    \n
    §Examples
    \n
    fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
    \n
    1.0.0 · source

    pub fn unwrap_or(self, default: T) -> T

    Returns the contained Ok value or a provided default.

    \n

    Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
    \n
    1.0.0 · source

    pub fn unwrap_or_else<F>(self, op: F) -> T
    where\n F: FnOnce(E) -> T,

    Returns the contained Ok value or computes it from a closure.

    \n
    §Examples
    \n
    fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
    \n
    1.58.0 · source

    pub unsafe fn unwrap_unchecked(self) -> T

    Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

    \n
    §Safety
    \n

    Calling this method on an Err is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
    \n
    1.58.0 · source

    pub unsafe fn unwrap_err_unchecked(self) -> E

    Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

    \n
    §Safety
    \n

    Calling this method on an Ok is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Serialize for Result<T, E>
    where\n T: Serialize,\n E: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::error::ModelsResult"],["
    source§

    impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
    where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

    source§

    fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::error::ModelsResult"],["
    1.16.0 · source§

    impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
    where\n T: Sum<U>,

    source§

    fn sum<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

    \n
    §Examples
    \n

    This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

    \n\n
    let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
    \n
    ","Sum>","massa_models::error::ModelsResult"],["
    §

    impl<T, E> TapFallible for Result<T, E>

    §

    type Ok = T

    The interior type used to indicate a successful construction.
    §

    type Err = E

    The interior type used to indicate a failed construction.
    §

    fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

    Immutably accesses an interior success value. Read more
    §

    fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

    Mutably accesses an interior success value. Read more
    §

    fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

    Immutably accesses an interior failure value. Read more
    §

    fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

    Mutably accesses an interior failure value. Read more
    §

    fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

    Calls .tap_ok() only in debug builds, and is erased in release builds.
    §

    fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

    Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

    Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

    Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
    ","TapFallible","massa_models::error::ModelsResult"],["
    1.61.0 · source§

    impl<T, E> Termination for Result<T, E>
    where\n T: Termination,\n E: Debug,

    source§

    fn report(self) -> ExitCode

    Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
    ","Termination","massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Try for Result<T, E>

    §

    type Output = T

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value produced by ? when not short-circuiting.
    §

    type Residual = Result<Infallible, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
    source§

    fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from its Output type. Read more
    source§

    fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
    ","Try","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Copy for Result<T, E>
    where\n T: Copy,\n E: Copy,

    ","Copy","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Eq for Result<T, E>
    where\n T: Eq,\n E: Eq,

    ","Eq","massa_models::error::ModelsResult"],["
    §

    impl<T, U, E> FromStream<Result<T, E>> for Result<U, E>
    where\n U: FromStream<T>,

    ","FromStream>","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> StructuralPartialEq for Result<T, E>

    ","StructuralPartialEq","massa_models::error::ModelsResult"]], -"massa_pos_exports":[["
    1.0.0 · source§

    impl<T, E> Clone for Result<T, E>
    where\n T: Clone,\n E: Clone,

    source§

    fn clone(&self) -> Result<T, E>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &Result<T, E>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_pos_exports::error::PosResult"],["
    source§

    impl<C, E> ControlFlow for Result<C, E>
    where\n C: ControlFlow,

    ","ControlFlow","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Debug for Result<T, E>
    where\n T: Debug,\n E: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_pos_exports::error::PosResult"],["
    source§

    impl<'de, T, E> Deserialize<'de> for Result<T, E>
    where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_pos_exports::error::PosResult"],["
    source§

    impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
    where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Result>","massa_pos_exports::error::PosResult"],["
    §

    impl<I, O, E> Finish<I, O, E> for Result<(I, O), Err<E>>

    §

    fn finish(self) -> Result<(I, O), E>

    converts the parser’s result to a type that is more consumable by error\nmanagement libraries. It keeps the same Ok branch, and merges Err::Error\nand Err::Failure into the Err side. Read more
    ","Finish","massa_pos_exports::error::PosResult"],["
    source§

    impl From<&StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_pos_exports::error::PosResult"],["
    §

    impl From<&StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_pos_exports::error::PosResult"],["
    §

    impl From<Result> for Result<(), Unspecified>

    §

    fn from(ret: Result) -> Result<(), Unspecified>

    Converts to this type from the input type.
    ","From","massa_pos_exports::error::PosResult"],["
    source§

    impl From<StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_pos_exports::error::PosResult"],["
    §

    impl From<StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
    where\n V: FromIterator<A>,

    source§

    fn from_iter<I>(iter: I) -> Result<V, E>
    where\n I: IntoIterator<Item = Result<A, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

    \n

    Here is an example which increments every integer in a vector,\nchecking for overflow:

    \n\n
    let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
    \n

    Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

    \n\n
    let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
    \n

    Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

    \n\n
    let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
    \n

    Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

    \n
    ","FromIterator>","massa_pos_exports::error::PosResult"],["
    §

    impl<S, T> FromRequest<S> for Result<T, <T as FromRequest<S>>::Rejection>
    where\n T: FromRequest<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request<'life0, 'async_trait>(\n req: Request<Body>,\n state: &'life0 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequest<S>>::Rejection>, <Result<T, <T as FromRequest<S>>::Rejection> as FromRequest<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n Result<T, <T as FromRequest<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequest","massa_pos_exports::error::PosResult"],["
    §

    impl<S, T> FromRequestParts<S> for Result<T, <T as FromRequestParts<S>>::Rejection>
    where\n T: FromRequestParts<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request_parts<'life0, 'life1, 'async_trait>(\n parts: &'life0 mut Parts,\n state: &'life1 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequestParts<S>>::Rejection>, <Result<T, <T as FromRequestParts<S>>::Rejection> as FromRequestParts<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n Result<T, <T as FromRequestParts<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequestParts","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(_: Yeet<E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Hash for Result<T, E>
    where\n T: Hash,\n E: Hash,

    source§

    fn hash<__H>(&self, state: &mut __H)
    where\n __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> IntoIterator for Result<T, E>

    source§

    fn into_iter(self) -> IntoIter<T>

    Returns a consuming iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_pos_exports::error::PosResult"],["
    §

    impl<B, E> IntoMapRequestResult<B> for Result<Request<B>, E>
    where\n E: IntoResponse,

    §

    fn into_map_request_result(self) -> Result<Request<B>, Response<Body>>

    Perform the conversion.
    ","IntoMapRequestResult","massa_pos_exports::error::PosResult"],["
    §

    impl<T, E> IntoResponse for Result<T, E>
    where\n T: IntoResponse,\n E: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_pos_exports::error::PosResult"],["
    §

    impl<T> IntoResponse for Result<T, ErrorResponse>
    where\n T: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Ord for Result<T, E>
    where\n T: Ord,\n E: Ord,

    source§

    fn cmp(&self, other: &Result<T, E>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> PartialEq for Result<T, E>
    where\n T: PartialEq,\n E: PartialEq,

    source§

    fn eq(&self, other: &Result<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> PartialOrd for Result<T, E>
    where\n T: PartialOrd,\n E: PartialOrd,

    source§

    fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_pos_exports::error::PosResult"],["
    1.16.0 · source§

    impl<T, U, E> Product<Result<U, E>> for Result<T, E>
    where\n T: Product<U>,

    source§

    fn product<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

    \n
    §Examples
    \n

    This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

    \n\n
    let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
    \n
    ","Product>","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Residual<T> for Result<Infallible, E>

    §

    type TryType = Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2_residual)
    The “return” type of this meta-function.
    ","Residual","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<&T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<&mut T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<Option<T>, E>

    1.33.0 (const: unstable) · source

    pub fn transpose(self) -> Option<Result<T, E>>

    Transposes a Result of an Option into an Option of a Result.

    \n

    Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

    \n
    §Examples
    \n
    #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<Result<T, E>, E>

    source

    pub fn flatten(self) -> Result<T, E>

    🔬This is a nightly-only experimental API. (result_flattening)

    Converts from Result<Result<T, E>, E> to Result<T, E>

    \n
    §Examples
    \n
    #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
    \n

    Flattening only removes one level of nesting at a time:

    \n\n
    #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<T, E>

    1.0.0 (const: 1.48.0) · source

    pub const fn is_ok(&self) -> bool

    Returns true if the result is Ok.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
    \n
    1.70.0 · source

    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

    Returns true if the result is Ok and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn is_err(&self) -> bool

    Returns true if the result is Err.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
    \n
    1.70.0 · source

    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

    Returns true if the result is Err and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
    \n
    1.0.0 · source

    pub fn ok(self) -> Option<T>

    Converts from Result<T, E> to Option<T>.

    \n

    Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
    \n
    1.0.0 · source

    pub fn err(self) -> Option<E>

    Converts from Result<T, E> to Option<E>.

    \n

    Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn as_ref(&self) -> Result<&T, &E>

    Converts from &Result<T, E> to Result<&T, &E>.

    \n

    Produces a new Result, containing a reference\ninto the original, leaving the original in place.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
    \n
    1.0.0 (const: unstable) · source

    pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

    Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

    \n
    §Examples
    \n
    fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
    \n
    1.0.0 · source

    pub fn map<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

    \n

    This function can be used to compose the results of two functions.

    \n
    §Examples
    \n

    Print the numbers on each line of a string multiplied by two.

    \n\n
    let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
    \n
    1.41.0 · source

    pub fn map_or<U, F>(self, default: U, f: F) -> U
    where\n F: FnOnce(T) -> U,

    Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

    \n

    Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
    \n
    1.41.0 · source

    pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
    where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

    \n

    This function can be used to unpack a successful result\nwhile handling an error.

    \n
    §Examples
    \n
    let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
    \n
    1.0.0 · source

    pub fn map_err<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> F,

    Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

    \n

    This function can be used to pass through a successful result while handling\nan error.

    \n
    §Examples
    \n
    fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
    \n
    1.76.0 · source

    pub fn inspect<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&T),

    Calls a function with a reference to the contained value if Ok.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
    \n
    1.76.0 · source

    pub fn inspect_err<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&E),

    Calls a function with a reference to the contained value if Err.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
    \n
    1.47.0 · source

    pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
    where\n T: Deref,

    Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

    \n

    Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

    \n
    §Examples
    \n
    let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
    \n
    1.47.0 · source

    pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
    where\n T: DerefMut,

    Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

    \n

    Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

    \n
    §Examples
    \n
    let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    Returns an iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, T>

    Returns a mutable iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
    \n
    1.4.0 · source

    pub fn expect(self, msg: &str) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
    \n
    §Recommended Message Style
    \n

    We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

    \n\n
    let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
    \n

    Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

    \n

    For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

    \n
    1.0.0 · source

    pub fn unwrap(self) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message provided by the\nErr’s value.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
    \n
    1.16.0 · source

    pub fn unwrap_or_default(self) -> T
    where\n T: Default,

    Returns the contained Ok value or a default

    \n

    Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

    \n
    §Examples
    \n

    Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

    \n\n
    let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
    \n
    1.17.0 · source

    pub fn expect_err(self, msg: &str) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
    \n
    1.0.0 · source

    pub fn unwrap_err(self) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
    \n
    source

    pub fn into_ok(self) -> T
    where\n E: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Ok value, but never panics.

    \n

    Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

    \n
    §Examples
    \n
    \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
    \n
    source

    pub fn into_err(self) -> E
    where\n T: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Err value, but never panics.

    \n

    Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

    \n
    §Examples
    \n
    \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
    \n
    1.0.0 · source

    pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

    Returns res if the result is Ok, otherwise returns the Err value of self.

    \n

    Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
    \n
    1.0.0 · source

    pub fn and_then<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> Result<U, E>,

    Calls op if the result is Ok, otherwise returns the Err value of self.

    \n

    This function can be used for control flow based on Result values.

    \n
    §Examples
    \n
    fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
    \n

    Often used to chain fallible operations that may return Err.

    \n\n
    use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
    \n
    1.0.0 · source

    pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

    Returns res if the result is Err, otherwise returns the Ok value of self.

    \n

    Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
    \n
    1.0.0 · source

    pub fn or_else<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> Result<T, F>,

    Calls op if the result is Err, otherwise returns the Ok value of self.

    \n

    This function can be used for control flow based on result values.

    \n
    §Examples
    \n
    fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
    \n
    1.0.0 · source

    pub fn unwrap_or(self, default: T) -> T

    Returns the contained Ok value or a provided default.

    \n

    Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
    \n
    1.0.0 · source

    pub fn unwrap_or_else<F>(self, op: F) -> T
    where\n F: FnOnce(E) -> T,

    Returns the contained Ok value or computes it from a closure.

    \n
    §Examples
    \n
    fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
    \n
    1.58.0 · source

    pub unsafe fn unwrap_unchecked(self) -> T

    Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

    \n
    §Safety
    \n

    Calling this method on an Err is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
    \n
    1.58.0 · source

    pub unsafe fn unwrap_err_unchecked(self) -> E

    Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

    \n
    §Safety
    \n

    Calling this method on an Ok is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Serialize for Result<T, E>
    where\n T: Serialize,\n E: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
    where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

    source§

    fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_pos_exports::error::PosResult"],["
    1.16.0 · source§

    impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
    where\n T: Sum<U>,

    source§

    fn sum<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

    \n
    §Examples
    \n

    This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

    \n\n
    let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
    \n
    ","Sum>","massa_pos_exports::error::PosResult"],["
    §

    impl<T, E> TapFallible for Result<T, E>

    §

    type Ok = T

    The interior type used to indicate a successful construction.
    §

    type Err = E

    The interior type used to indicate a failed construction.
    §

    fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

    Immutably accesses an interior success value. Read more
    §

    fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

    Mutably accesses an interior success value. Read more
    §

    fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

    Immutably accesses an interior failure value. Read more
    §

    fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

    Mutably accesses an interior failure value. Read more
    §

    fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

    Calls .tap_ok() only in debug builds, and is erased in release builds.
    §

    fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

    Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

    Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

    Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
    ","TapFallible","massa_pos_exports::error::PosResult"],["
    1.61.0 · source§

    impl<T, E> Termination for Result<T, E>
    where\n T: Termination,\n E: Debug,

    source§

    fn report(self) -> ExitCode

    Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
    ","Termination","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Try for Result<T, E>

    §

    type Output = T

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value produced by ? when not short-circuiting.
    §

    type Residual = Result<Infallible, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
    source§

    fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from its Output type. Read more
    source§

    fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
    ","Try","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Copy for Result<T, E>
    where\n T: Copy,\n E: Copy,

    ","Copy","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Eq for Result<T, E>
    where\n T: Eq,\n E: Eq,

    ","Eq","massa_pos_exports::error::PosResult"],["
    §

    impl<T, U, E> FromStream<Result<T, E>> for Result<U, E>
    where\n U: FromStream<T>,

    ","FromStream>","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> StructuralPartialEq for Result<T, E>

    ","StructuralPartialEq","massa_pos_exports::error::PosResult"]] +"massa_factory_exports":[["
    §

    impl<T, E> Archive for Result<T, E>
    where\n T: Archive,\n E: Archive,

    §

    type Archived = ArchivedResult<<T as Archive>::Archived, <E as Archive>::Archived>

    The archived representation of this type. Read more
    §

    type Resolver = Result<<T as Archive>::Resolver, <E as Archive>::Resolver>

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <Result<T, E> as Archive>::Resolver,\n out: *mut <Result<T, E> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Clone for Result<T, E>
    where\n T: Clone,\n E: Clone,

    source§

    fn clone(&self) -> Result<T, E>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &Result<T, E>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Context<T, E> for Result<T, E>
    where\n E: StdError + Send + Sync + 'static,

    source§

    fn context<C>(self, context: C) -> Result<T, Error>
    where\n C: Display + Send + Sync + 'static,

    Wrap the error value with additional context.
    source§

    fn with_context<C, F>(self, context: F) -> Result<T, Error>
    where\n C: Display + Send + Sync + 'static,\n F: FnOnce() -> C,

    Wrap the error value with additional context that is evaluated lazily\nonly once an error does occur.
    ","Context","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<C, E> ControlFlow for Result<C, E>
    where\n C: ControlFlow,

    ","ControlFlow","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Debug for Result<T, E>
    where\n T: Debug,\n E: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<'de, T, E> Deserialize<'de> for Result<T, E>
    where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
    where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Result>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<I, O, E> Finish<I, O, E> for Result<(I, O), Err<E>>

    §

    fn finish(self) -> Result<(I, O), E>

    converts the parser’s result to a type that is more consumable by error\nmanagement libraries. It keeps the same Ok branch, and merges Err::Error\nand Err::Failure into the Err side. Read more
    ","Finish","massa_factory_exports::error::FactoryResult"],["
    source§

    impl From<&StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<&StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<Errors> for Result<(), Errors>

    §

    fn from(e: Errors) -> Result<(), Errors>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<Result> for Result<(), Unspecified>

    §

    fn from(ret: Result) -> Result<(), Unspecified>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    source§

    impl From<StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    §

    impl From<StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
    where\n V: FromIterator<A>,

    source§

    fn from_iter<I>(iter: I) -> Result<V, E>
    where\n I: IntoIterator<Item = Result<A, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

    \n

    Here is an example which increments every integer in a vector,\nchecking for overflow:

    \n\n
    let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
    \n

    Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

    \n\n
    let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
    \n

    Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

    \n\n
    let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
    \n

    Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

    \n
    ","FromIterator>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<C, T, E> FromParallelIterator<Result<T, E>> for Result<C, E>
    where\n C: FromParallelIterator<T>,\n T: Send,\n E: Send,

    Collect an arbitrary Result-wrapped collection.

    \n

    If any item is Err, then all previous Ok items collected are\ndiscarded, and it returns that error. If there are multiple errors, the\none returned is not deterministic.

    \n
    §

    fn from_par_iter<I>(par_iter: I) -> Result<C, E>
    where\n I: IntoParallelIterator<Item = Result<T, E>>,

    Creates an instance of the collection from the parallel iterator par_iter. Read more
    ","FromParallelIterator>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<S, T> FromRequest<S> for Result<T, <T as FromRequest<S>>::Rejection>
    where\n T: FromRequest<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request<'life0, 'async_trait>(\n req: Request<Body>,\n state: &'life0 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequest<S>>::Rejection>, <Result<T, <T as FromRequest<S>>::Rejection> as FromRequest<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n Result<T, <T as FromRequest<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequest","massa_factory_exports::error::FactoryResult"],["
    §

    impl<S, T> FromRequestParts<S> for Result<T, <T as FromRequestParts<S>>::Rejection>
    where\n T: FromRequestParts<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request_parts<'life0, 'life1, 'async_trait>(\n parts: &'life0 mut Parts,\n state: &'life1 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequestParts<S>>::Rejection>, <Result<T, <T as FromRequestParts<S>>::Rejection> as FromRequestParts<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n Result<T, <T as FromRequestParts<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequestParts","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(_: Yeet<E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Hash for Result<T, E>
    where\n T: Hash,\n E: Hash,

    source§

    fn hash<__H>(&self, state: &mut __H)
    where\n __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> IntoIterator for Result<T, E>

    source§

    fn into_iter(self) -> IntoIter<T>

    Returns a consuming iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_factory_exports::error::FactoryResult"],["
    §

    impl<B, E> IntoMapRequestResult<B> for Result<Request<B>, E>
    where\n E: IntoResponse,

    §

    fn into_map_request_result(self) -> Result<Request<B>, Response<Body>>

    Perform the conversion.
    ","IntoMapRequestResult","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> IntoParallelIterator for Result<T, E>
    where\n T: Send,

    §

    type Item = T

    The type of item that the parallel iterator will produce.
    §

    type Iter = IntoIter<T>

    The parallel iterator type that will be created.
    §

    fn into_par_iter(self) -> <Result<T, E> as IntoParallelIterator>::Iter

    Converts self into a parallel iterator. Read more
    ","IntoParallelIterator","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> IntoResponse for Result<T, E>
    where\n T: IntoResponse,\n E: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T> IntoResponse for Result<T, ErrorResponse>
    where\n T: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> JsonSchema for Result<T, E>
    where\n T: JsonSchema,\n E: JsonSchema,

    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    ","JsonSchema","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Ord for Result<T, E>
    where\n T: Ord,\n E: Ord,

    source§

    fn cmp(&self, other: &Result<T, E>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, U, E, F> PartialEq<ArchivedResult<T, E>> for Result<U, F>
    where\n T: PartialEq<U>,\n E: PartialEq<F>,

    §

    fn eq(&self, other: &ArchivedResult<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> PartialEq for Result<T, E>
    where\n T: PartialEq,\n E: PartialEq,

    source§

    fn eq(&self, other: &Result<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> PartialOrd for Result<T, E>
    where\n T: PartialOrd,\n E: PartialOrd,

    source§

    fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T> ProcErrorExt for Result<T, ProcError>

    §

    fn error_path(self, path: &Path) -> Result<T, ProcError>

    Add path information to the error.
    ","ProcErrorExt","massa_factory_exports::error::FactoryResult"],["
    1.16.0 · source§

    impl<T, U, E> Product<Result<U, E>> for Result<T, E>
    where\n T: Product<U>,

    source§

    fn product<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

    \n
    §Examples
    \n

    This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

    \n\n
    let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
    \n
    ","Product>","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Residual<T> for Result<Infallible, E>

    §

    type TryType = Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2_residual)
    The “return” type of this meta-function.
    ","Residual","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<&T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<&mut T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<Option<T>, E>

    1.33.0 (const: unstable) · source

    pub fn transpose(self) -> Option<Result<T, E>>

    Transposes a Result of an Option into an Option of a Result.

    \n

    Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

    \n
    §Examples
    \n
    #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<Result<T, E>, E>

    source

    pub fn flatten(self) -> Result<T, E>

    🔬This is a nightly-only experimental API. (result_flattening)

    Converts from Result<Result<T, E>, E> to Result<T, E>

    \n
    §Examples
    \n
    #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
    \n

    Flattening only removes one level of nesting at a time:

    \n\n
    #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Result<T, E>

    1.0.0 (const: 1.48.0) · source

    pub const fn is_ok(&self) -> bool

    Returns true if the result is Ok.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
    \n
    1.70.0 · source

    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

    Returns true if the result is Ok and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn is_err(&self) -> bool

    Returns true if the result is Err.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
    \n
    1.70.0 · source

    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

    Returns true if the result is Err and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
    \n
    1.0.0 · source

    pub fn ok(self) -> Option<T>

    Converts from Result<T, E> to Option<T>.

    \n

    Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
    \n
    1.0.0 · source

    pub fn err(self) -> Option<E>

    Converts from Result<T, E> to Option<E>.

    \n

    Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn as_ref(&self) -> Result<&T, &E>

    Converts from &Result<T, E> to Result<&T, &E>.

    \n

    Produces a new Result, containing a reference\ninto the original, leaving the original in place.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
    \n
    1.0.0 (const: unstable) · source

    pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

    Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

    \n
    §Examples
    \n
    fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
    \n
    1.0.0 · source

    pub fn map<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

    \n

    This function can be used to compose the results of two functions.

    \n
    §Examples
    \n

    Print the numbers on each line of a string multiplied by two.

    \n\n
    let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
    \n
    1.41.0 · source

    pub fn map_or<U, F>(self, default: U, f: F) -> U
    where\n F: FnOnce(T) -> U,

    Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

    \n

    Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
    \n
    1.41.0 · source

    pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
    where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

    \n

    This function can be used to unpack a successful result\nwhile handling an error.

    \n
    §Examples
    \n
    let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
    \n
    1.0.0 · source

    pub fn map_err<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> F,

    Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

    \n

    This function can be used to pass through a successful result while handling\nan error.

    \n
    §Examples
    \n
    fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
    \n
    1.76.0 · source

    pub fn inspect<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&T),

    Calls a function with a reference to the contained value if Ok.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
    \n
    1.76.0 · source

    pub fn inspect_err<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&E),

    Calls a function with a reference to the contained value if Err.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
    \n
    1.47.0 · source

    pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
    where\n T: Deref,

    Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

    \n

    Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

    \n
    §Examples
    \n
    let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
    \n
    1.47.0 · source

    pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
    where\n T: DerefMut,

    Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

    \n

    Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

    \n
    §Examples
    \n
    let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    Returns an iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, T>

    Returns a mutable iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
    \n
    1.4.0 · source

    pub fn expect(self, msg: &str) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
    \n
    §Recommended Message Style
    \n

    We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

    \n\n
    let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
    \n

    Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

    \n

    For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

    \n
    1.0.0 · source

    pub fn unwrap(self) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message provided by the\nErr’s value.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
    \n
    1.16.0 · source

    pub fn unwrap_or_default(self) -> T
    where\n T: Default,

    Returns the contained Ok value or a default

    \n

    Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

    \n
    §Examples
    \n

    Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

    \n\n
    let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
    \n
    1.17.0 · source

    pub fn expect_err(self, msg: &str) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
    \n
    1.0.0 · source

    pub fn unwrap_err(self) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
    \n
    source

    pub fn into_ok(self) -> T
    where\n E: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Ok value, but never panics.

    \n

    Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

    \n
    §Examples
    \n
    \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
    \n
    source

    pub fn into_err(self) -> E
    where\n T: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Err value, but never panics.

    \n

    Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

    \n
    §Examples
    \n
    \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
    \n
    1.0.0 · source

    pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

    Returns res if the result is Ok, otherwise returns the Err value of self.

    \n

    Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
    \n
    1.0.0 · source

    pub fn and_then<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> Result<U, E>,

    Calls op if the result is Ok, otherwise returns the Err value of self.

    \n

    This function can be used for control flow based on Result values.

    \n
    §Examples
    \n
    fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
    \n

    Often used to chain fallible operations that may return Err.

    \n\n
    use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
    \n
    1.0.0 · source

    pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

    Returns res if the result is Err, otherwise returns the Ok value of self.

    \n

    Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
    \n
    1.0.0 · source

    pub fn or_else<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> Result<T, F>,

    Calls op if the result is Err, otherwise returns the Ok value of self.

    \n

    This function can be used for control flow based on result values.

    \n
    §Examples
    \n
    fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
    \n
    1.0.0 · source

    pub fn unwrap_or(self, default: T) -> T

    Returns the contained Ok value or a provided default.

    \n

    Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
    \n
    1.0.0 · source

    pub fn unwrap_or_else<F>(self, op: F) -> T
    where\n F: FnOnce(E) -> T,

    Returns the contained Ok value or computes it from a closure.

    \n
    §Examples
    \n
    fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
    \n
    1.58.0 · source

    pub unsafe fn unwrap_unchecked(self) -> T

    Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

    \n
    §Safety
    \n

    Calling this method on an Err is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
    \n
    1.58.0 · source

    pub unsafe fn unwrap_err_unchecked(self) -> E

    Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

    \n
    §Safety
    \n

    Calling this method on an Ok is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
    \n
    ",0,"massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E, S> Serialize<S> for Result<T, E>
    where\n T: Serialize<S>,\n E: Serialize<S>,\n S: Fallible + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<Result<T, E> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Serialize for Result<T, E>
    where\n T: Serialize,\n E: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
    where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

    source§

    fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_factory_exports::error::FactoryResult"],["
    1.16.0 · source§

    impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
    where\n T: Sum<U>,

    source§

    fn sum<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

    \n
    §Examples
    \n

    This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

    \n\n
    let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
    \n
    ","Sum>","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> TapFallible for Result<T, E>

    §

    type Ok = T

    The interior type used to indicate a successful construction.
    §

    type Err = E

    The interior type used to indicate a failed construction.
    §

    fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

    Immutably accesses an interior success value. Read more
    §

    fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

    Mutably accesses an interior success value. Read more
    §

    fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

    Immutably accesses an interior failure value. Read more
    §

    fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

    Mutably accesses an interior failure value. Read more
    §

    fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

    Calls .tap_ok() only in debug builds, and is erased in release builds.
    §

    fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

    Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

    Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

    Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
    ","TapFallible","massa_factory_exports::error::FactoryResult"],["
    1.61.0 · source§

    impl<T, E> Termination for Result<T, E>
    where\n T: Termination,\n E: Debug,

    source§

    fn report(self) -> ExitCode

    Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
    ","Termination","massa_factory_exports::error::FactoryResult"],["
    source§

    impl<T, E> Try for Result<T, E>

    §

    type Output = T

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value produced by ? when not short-circuiting.
    §

    type Residual = Result<Infallible, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
    source§

    fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from its Output type. Read more
    source§

    fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
    ","Try","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, E> TryWriteable for Result<T, E>
    where\n T: Writeable,\n E: Writeable + Clone,

    §

    type Error = E

    §

    fn try_write_to<W>(\n &self,\n sink: &mut W,\n) -> Result<Result<(), <Result<T, E> as TryWriteable>::Error>, Error>
    where\n W: Write + ?Sized,

    Writes the content of this writeable to a sink. Read more
    §

    fn try_write_to_parts<S>(\n &self,\n sink: &mut S,\n) -> Result<Result<(), <Result<T, E> as TryWriteable>::Error>, Error>
    where\n S: PartsWrite + ?Sized,

    Writes the content of this writeable to a sink with parts (annotations). Read more
    §

    fn writeable_length_hint(&self) -> LengthHint

    Returns a hint for the number of UTF-8 bytes that will be written to the sink. Read more
    §

    fn try_write_to_string(\n &self,\n) -> Result<Cow<'_, str>, (<Result<T, E> as TryWriteable>::Error, Cow<'_, str>)>

    Writes the content of this writeable to a string. Read more
    §

    fn writeable_cmp_bytes(&self, other: &[u8]) -> Ordering

    Compares the content of this writeable to a byte slice. Read more
    ","TryWriteable","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Copy for Result<T, E>
    where\n T: Copy,\n E: Copy,

    ","Copy","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> Eq for Result<T, E>
    where\n T: Eq,\n E: Eq,

    ","Eq","massa_factory_exports::error::FactoryResult"],["
    §

    impl<T, U, E> FromStream<Result<T, E>> for Result<U, E>
    where\n U: FromStream<T>,

    ","FromStream>","massa_factory_exports::error::FactoryResult"],["
    1.0.0 · source§

    impl<T, E> StructuralPartialEq for Result<T, E>

    ","StructuralPartialEq","massa_factory_exports::error::FactoryResult"]], +"massa_models":[["
    1.0.0 · source§

    impl<T, E> Clone for Result<T, E>
    where\n T: Clone,\n E: Clone,

    source§

    fn clone(&self) -> Result<T, E>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &Result<T, E>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::error::ModelsResult"],["
    source§

    impl<C, E> ControlFlow for Result<C, E>
    where\n C: ControlFlow,

    ","ControlFlow","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Debug for Result<T, E>
    where\n T: Debug,\n E: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::error::ModelsResult"],["
    source§

    impl<'de, T, E> Deserialize<'de> for Result<T, E>
    where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::error::ModelsResult"],["
    source§

    impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
    where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Result>","massa_models::error::ModelsResult"],["
    §

    impl<I, O, E> Finish<I, O, E> for Result<(I, O), Err<E>>

    §

    fn finish(self) -> Result<(I, O), E>

    converts the parser’s result to a type that is more consumable by error\nmanagement libraries. It keeps the same Ok branch, and merges Err::Error\nand Err::Failure into the Err side. Read more
    ","Finish","massa_models::error::ModelsResult"],["
    source§

    impl From<&StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_models::error::ModelsResult"],["
    §

    impl From<&StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_models::error::ModelsResult"],["
    §

    impl From<Result> for Result<(), Unspecified>

    §

    fn from(ret: Result) -> Result<(), Unspecified>

    Converts to this type from the input type.
    ","From","massa_models::error::ModelsResult"],["
    source§

    impl From<StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_models::error::ModelsResult"],["
    §

    impl From<StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
    where\n V: FromIterator<A>,

    source§

    fn from_iter<I>(iter: I) -> Result<V, E>
    where\n I: IntoIterator<Item = Result<A, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

    \n

    Here is an example which increments every integer in a vector,\nchecking for overflow:

    \n\n
    let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
    \n

    Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

    \n\n
    let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
    \n

    Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

    \n\n
    let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
    \n

    Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

    \n
    ","FromIterator>","massa_models::error::ModelsResult"],["
    §

    impl<S, T> FromRequest<S> for Result<T, <T as FromRequest<S>>::Rejection>
    where\n T: FromRequest<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request<'life0, 'async_trait>(\n req: Request<Body>,\n state: &'life0 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequest<S>>::Rejection>, <Result<T, <T as FromRequest<S>>::Rejection> as FromRequest<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n Result<T, <T as FromRequest<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequest","massa_models::error::ModelsResult"],["
    §

    impl<S, T> FromRequestParts<S> for Result<T, <T as FromRequestParts<S>>::Rejection>
    where\n T: FromRequestParts<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request_parts<'life0, 'life1, 'async_trait>(\n parts: &'life0 mut Parts,\n state: &'life1 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequestParts<S>>::Rejection>, <Result<T, <T as FromRequestParts<S>>::Rejection> as FromRequestParts<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n Result<T, <T as FromRequestParts<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequestParts","massa_models::error::ModelsResult"],["
    source§

    impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_models::error::ModelsResult"],["
    source§

    impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(_: Yeet<E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Hash for Result<T, E>
    where\n T: Hash,\n E: Hash,

    source§

    fn hash<__H>(&self, state: &mut __H)
    where\n __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> IntoIterator for Result<T, E>

    source§

    fn into_iter(self) -> IntoIter<T>

    Returns a consuming iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::error::ModelsResult"],["
    §

    impl<B, E> IntoMapRequestResult<B> for Result<Request<B>, E>
    where\n E: IntoResponse,

    §

    fn into_map_request_result(self) -> Result<Request<B>, Response<Body>>

    Perform the conversion.
    ","IntoMapRequestResult","massa_models::error::ModelsResult"],["
    §

    impl<T, E> IntoResponse for Result<T, E>
    where\n T: IntoResponse,\n E: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_models::error::ModelsResult"],["
    §

    impl<T> IntoResponse for Result<T, ErrorResponse>
    where\n T: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Ord for Result<T, E>
    where\n T: Ord,\n E: Ord,

    source§

    fn cmp(&self, other: &Result<T, E>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> PartialEq for Result<T, E>
    where\n T: PartialEq,\n E: PartialEq,

    source§

    fn eq(&self, other: &Result<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> PartialOrd for Result<T, E>
    where\n T: PartialOrd,\n E: PartialOrd,

    source§

    fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_models::error::ModelsResult"],["
    1.16.0 · source§

    impl<T, U, E> Product<Result<U, E>> for Result<T, E>
    where\n T: Product<U>,

    source§

    fn product<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

    \n
    §Examples
    \n

    This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

    \n\n
    let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
    \n
    ","Product>","massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Residual<T> for Result<Infallible, E>

    §

    type TryType = Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2_residual)
    The “return” type of this meta-function.
    ","Residual","massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<&T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<&mut T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<Option<T>, E>

    1.33.0 (const: unstable) · source

    pub fn transpose(self) -> Option<Result<T, E>>

    Transposes a Result of an Option into an Option of a Result.

    \n

    Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

    \n
    §Examples
    \n
    #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<Result<T, E>, E>

    source

    pub fn flatten(self) -> Result<T, E>

    🔬This is a nightly-only experimental API. (result_flattening)

    Converts from Result<Result<T, E>, E> to Result<T, E>

    \n
    §Examples
    \n
    #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
    \n

    Flattening only removes one level of nesting at a time:

    \n\n
    #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Result<T, E>

    1.0.0 (const: 1.48.0) · source

    pub const fn is_ok(&self) -> bool

    Returns true if the result is Ok.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
    \n
    1.70.0 · source

    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

    Returns true if the result is Ok and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn is_err(&self) -> bool

    Returns true if the result is Err.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
    \n
    1.70.0 · source

    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

    Returns true if the result is Err and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
    \n
    1.0.0 · source

    pub fn ok(self) -> Option<T>

    Converts from Result<T, E> to Option<T>.

    \n

    Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
    \n
    1.0.0 · source

    pub fn err(self) -> Option<E>

    Converts from Result<T, E> to Option<E>.

    \n

    Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn as_ref(&self) -> Result<&T, &E>

    Converts from &Result<T, E> to Result<&T, &E>.

    \n

    Produces a new Result, containing a reference\ninto the original, leaving the original in place.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
    \n
    1.0.0 (const: unstable) · source

    pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

    Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

    \n
    §Examples
    \n
    fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
    \n
    1.0.0 · source

    pub fn map<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

    \n

    This function can be used to compose the results of two functions.

    \n
    §Examples
    \n

    Print the numbers on each line of a string multiplied by two.

    \n\n
    let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
    \n
    1.41.0 · source

    pub fn map_or<U, F>(self, default: U, f: F) -> U
    where\n F: FnOnce(T) -> U,

    Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

    \n

    Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
    \n
    1.41.0 · source

    pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
    where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

    \n

    This function can be used to unpack a successful result\nwhile handling an error.

    \n
    §Examples
    \n
    let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
    \n
    1.0.0 · source

    pub fn map_err<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> F,

    Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

    \n

    This function can be used to pass through a successful result while handling\nan error.

    \n
    §Examples
    \n
    fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
    \n
    1.76.0 · source

    pub fn inspect<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&T),

    Calls a function with a reference to the contained value if Ok.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
    \n
    1.76.0 · source

    pub fn inspect_err<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&E),

    Calls a function with a reference to the contained value if Err.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
    \n
    1.47.0 · source

    pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
    where\n T: Deref,

    Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

    \n

    Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

    \n
    §Examples
    \n
    let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
    \n
    1.47.0 · source

    pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
    where\n T: DerefMut,

    Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

    \n

    Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

    \n
    §Examples
    \n
    let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    Returns an iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, T>

    Returns a mutable iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
    \n
    1.4.0 · source

    pub fn expect(self, msg: &str) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
    \n
    §Recommended Message Style
    \n

    We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

    \n\n
    let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
    \n

    Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

    \n

    For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

    \n
    1.0.0 · source

    pub fn unwrap(self) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message provided by the\nErr’s value.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
    \n
    1.16.0 · source

    pub fn unwrap_or_default(self) -> T
    where\n T: Default,

    Returns the contained Ok value or a default

    \n

    Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

    \n
    §Examples
    \n

    Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

    \n\n
    let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
    \n
    1.17.0 · source

    pub fn expect_err(self, msg: &str) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
    \n
    1.0.0 · source

    pub fn unwrap_err(self) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
    \n
    source

    pub fn into_ok(self) -> T
    where\n E: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Ok value, but never panics.

    \n

    Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

    \n
    §Examples
    \n
    \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
    \n
    source

    pub fn into_err(self) -> E
    where\n T: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Err value, but never panics.

    \n

    Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

    \n
    §Examples
    \n
    \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
    \n
    1.0.0 · source

    pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

    Returns res if the result is Ok, otherwise returns the Err value of self.

    \n

    Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
    \n
    1.0.0 · source

    pub fn and_then<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> Result<U, E>,

    Calls op if the result is Ok, otherwise returns the Err value of self.

    \n

    This function can be used for control flow based on Result values.

    \n
    §Examples
    \n
    fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
    \n

    Often used to chain fallible operations that may return Err.

    \n\n
    use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
    \n
    1.0.0 · source

    pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

    Returns res if the result is Err, otherwise returns the Ok value of self.

    \n

    Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
    \n
    1.0.0 · source

    pub fn or_else<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> Result<T, F>,

    Calls op if the result is Err, otherwise returns the Ok value of self.

    \n

    This function can be used for control flow based on result values.

    \n
    §Examples
    \n
    fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
    \n
    1.0.0 · source

    pub fn unwrap_or(self, default: T) -> T

    Returns the contained Ok value or a provided default.

    \n

    Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
    \n
    1.0.0 · source

    pub fn unwrap_or_else<F>(self, op: F) -> T
    where\n F: FnOnce(E) -> T,

    Returns the contained Ok value or computes it from a closure.

    \n
    §Examples
    \n
    fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
    \n
    1.58.0 · source

    pub unsafe fn unwrap_unchecked(self) -> T

    Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

    \n
    §Safety
    \n

    Calling this method on an Err is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
    \n
    1.58.0 · source

    pub unsafe fn unwrap_err_unchecked(self) -> E

    Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

    \n
    §Safety
    \n

    Calling this method on an Ok is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
    \n
    ",0,"massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Serialize for Result<T, E>
    where\n T: Serialize,\n E: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::error::ModelsResult"],["
    source§

    impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
    where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

    source§

    fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::error::ModelsResult"],["
    1.16.0 · source§

    impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
    where\n T: Sum<U>,

    source§

    fn sum<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

    \n
    §Examples
    \n

    This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

    \n\n
    let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
    \n
    ","Sum>","massa_models::error::ModelsResult"],["
    §

    impl<T, E> TapFallible for Result<T, E>

    §

    type Ok = T

    The interior type used to indicate a successful construction.
    §

    type Err = E

    The interior type used to indicate a failed construction.
    §

    fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

    Immutably accesses an interior success value. Read more
    §

    fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

    Mutably accesses an interior success value. Read more
    §

    fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

    Immutably accesses an interior failure value. Read more
    §

    fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

    Mutably accesses an interior failure value. Read more
    §

    fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

    Calls .tap_ok() only in debug builds, and is erased in release builds.
    §

    fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

    Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

    Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

    Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
    ","TapFallible","massa_models::error::ModelsResult"],["
    1.61.0 · source§

    impl<T, E> Termination for Result<T, E>
    where\n T: Termination,\n E: Debug,

    source§

    fn report(self) -> ExitCode

    Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
    ","Termination","massa_models::error::ModelsResult"],["
    source§

    impl<T, E> Try for Result<T, E>

    §

    type Output = T

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value produced by ? when not short-circuiting.
    §

    type Residual = Result<Infallible, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
    source§

    fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from its Output type. Read more
    source§

    fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
    ","Try","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Copy for Result<T, E>
    where\n T: Copy,\n E: Copy,

    ","Copy","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> Eq for Result<T, E>
    where\n T: Eq,\n E: Eq,

    ","Eq","massa_models::error::ModelsResult"],["
    §

    impl<T, U, E> FromStream<Result<T, E>> for Result<U, E>
    where\n U: FromStream<T>,

    ","FromStream>","massa_models::error::ModelsResult"],["
    1.0.0 · source§

    impl<T, E> StructuralPartialEq for Result<T, E>

    ","StructuralPartialEq","massa_models::error::ModelsResult"]], +"massa_pos_exports":[["
    1.0.0 · source§

    impl<T, E> Clone for Result<T, E>
    where\n T: Clone,\n E: Clone,

    source§

    fn clone(&self) -> Result<T, E>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &Result<T, E>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_pos_exports::error::PosResult"],["
    source§

    impl<C, E> ControlFlow for Result<C, E>
    where\n C: ControlFlow,

    ","ControlFlow","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Debug for Result<T, E>
    where\n T: Debug,\n E: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_pos_exports::error::PosResult"],["
    source§

    impl<'de, T, E> Deserialize<'de> for Result<T, E>
    where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_pos_exports::error::PosResult"],["
    source§

    impl<'de, T, TAs, E, EAs> DeserializeAs<'de, Result<T, E>> for Result<TAs, EAs>
    where\n TAs: DeserializeAs<'de, T>,\n EAs: DeserializeAs<'de, E>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Result>","massa_pos_exports::error::PosResult"],["
    §

    impl<I, O, E> Finish<I, O, E> for Result<(I, O), Err<E>>

    §

    fn finish(self) -> Result<(I, O), E>

    converts the parser’s result to a type that is more consumable by error\nmanagement libraries. It keeps the same Ok branch, and merges Err::Error\nand Err::Failure into the Err side. Read more
    ","Finish","massa_pos_exports::error::PosResult"],["
    source§

    impl From<&StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_pos_exports::error::PosResult"],["
    §

    impl From<&StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: &StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From<&StreamResult>","massa_pos_exports::error::PosResult"],["
    §

    impl From<Result> for Result<(), Unspecified>

    §

    fn from(ret: Result) -> Result<(), Unspecified>

    Converts to this type from the input type.
    ","From","massa_pos_exports::error::PosResult"],["
    source§

    impl From<StreamResult> for Result<MZStatus, MZError>

    source§

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_pos_exports::error::PosResult"],["
    §

    impl From<StreamResult> for Result<MZStatus, MZError>

    §

    fn from(res: StreamResult) -> Result<MZStatus, MZError>

    Converts to this type from the input type.
    ","From","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
    where\n V: FromIterator<A>,

    source§

    fn from_iter<I>(iter: I) -> Result<V, E>
    where\n I: IntoIterator<Item = Result<A, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

    \n

    Here is an example which increments every integer in a vector,\nchecking for overflow:

    \n\n
    let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
    \n

    Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

    \n\n
    let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
    \n

    Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

    \n\n
    let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
    \n

    Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

    \n
    ","FromIterator>","massa_pos_exports::error::PosResult"],["
    §

    impl<S, T> FromRequest<S> for Result<T, <T as FromRequest<S>>::Rejection>
    where\n T: FromRequest<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request<'life0, 'async_trait>(\n req: Request<Body>,\n state: &'life0 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequest<S>>::Rejection>, <Result<T, <T as FromRequest<S>>::Rejection> as FromRequest<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n Result<T, <T as FromRequest<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequest","massa_pos_exports::error::PosResult"],["
    §

    impl<S, T> FromRequestParts<S> for Result<T, <T as FromRequestParts<S>>::Rejection>
    where\n T: FromRequestParts<S>,\n S: Send + Sync,

    §

    type Rejection = Infallible

    If the extractor fails it’ll use this “rejection” type. A rejection is\na kind of error that can be converted into a response.
    §

    fn from_request_parts<'life0, 'life1, 'async_trait>(\n parts: &'life0 mut Parts,\n state: &'life1 S,\n) -> Pin<Box<dyn Future<Output = Result<Result<T, <T as FromRequestParts<S>>::Rejection>, <Result<T, <T as FromRequestParts<S>>::Rejection> as FromRequestParts<S>>::Rejection>> + Send + 'async_trait>>
    where\n 'life0: 'async_trait,\n 'life1: 'async_trait,\n Result<T, <T as FromRequestParts<S>>::Rejection>: 'async_trait,

    Perform the extraction.
    ","FromRequestParts","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
    where\n F: From<E>,

    source§

    fn from_residual(_: Yeet<E>) -> Result<T, F>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from a compatible Residual type. Read more
    ","FromResidual>","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Hash for Result<T, E>
    where\n T: Hash,\n E: Hash,

    source§

    fn hash<__H>(&self, state: &mut __H)
    where\n __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)
    where\n H: Hasher,\n Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    ","Hash","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> IntoIterator for Result<T, E>

    source§

    fn into_iter(self) -> IntoIter<T>

    Returns a consuming iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_pos_exports::error::PosResult"],["
    §

    impl<B, E> IntoMapRequestResult<B> for Result<Request<B>, E>
    where\n E: IntoResponse,

    §

    fn into_map_request_result(self) -> Result<Request<B>, Response<Body>>

    Perform the conversion.
    ","IntoMapRequestResult","massa_pos_exports::error::PosResult"],["
    §

    impl<T, E> IntoResponse for Result<T, E>
    where\n T: IntoResponse,\n E: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_pos_exports::error::PosResult"],["
    §

    impl<T> IntoResponse for Result<T, ErrorResponse>
    where\n T: IntoResponse,

    §

    fn into_response(self) -> Response<Body>

    Create a response.
    ","IntoResponse","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Ord for Result<T, E>
    where\n T: Ord,\n E: Ord,

    source§

    fn cmp(&self, other: &Result<T, E>) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the maximum of two values. Read more
    1.21.0 · source§

    fn min(self, other: Self) -> Self
    where\n Self: Sized,

    Compares and returns the minimum of two values. Read more
    1.50.0 · source§

    fn clamp(self, min: Self, max: Self) -> Self
    where\n Self: Sized + PartialOrd,

    Restrict a value to a certain interval. Read more
    ","Ord","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> PartialEq for Result<T, E>
    where\n T: PartialEq,\n E: PartialEq,

    source§

    fn eq(&self, other: &Result<T, E>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> PartialOrd for Result<T, E>
    where\n T: PartialOrd,\n E: PartialOrd,

    source§

    fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

    This method returns an ordering between self and other values if one exists. Read more
    1.0.0 · source§

    fn lt(&self, other: &Rhs) -> bool

    This method tests less than (for self and other) and is used by the < operator. Read more
    1.0.0 · source§

    fn le(&self, other: &Rhs) -> bool

    This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
    1.0.0 · source§

    fn gt(&self, other: &Rhs) -> bool

    This method tests greater than (for self and other) and is used by the > operator. Read more
    1.0.0 · source§

    fn ge(&self, other: &Rhs) -> bool

    This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
    ","PartialOrd","massa_pos_exports::error::PosResult"],["
    1.16.0 · source§

    impl<T, U, E> Product<Result<U, E>> for Result<T, E>
    where\n T: Product<U>,

    source§

    fn product<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

    \n
    §Examples
    \n

    This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

    \n\n
    let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
    \n
    ","Product>","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Residual<T> for Result<Infallible, E>

    §

    type TryType = Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2_residual)
    The “return” type of this meta-function.
    ","Residual","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<&T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<&mut T, E>

    1.59.0 · source

    pub fn copied(self) -> Result<T, E>
    where\n T: Copy,

    Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
    \n
    1.59.0 · source

    pub fn cloned(self) -> Result<T, E>
    where\n T: Clone,

    Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

    \n
    §Examples
    \n
    let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<Option<T>, E>

    1.33.0 (const: unstable) · source

    pub fn transpose(self) -> Option<Result<T, E>>

    Transposes a Result of an Option into an Option of a Result.

    \n

    Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

    \n
    §Examples
    \n
    #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<Result<T, E>, E>

    source

    pub fn flatten(self) -> Result<T, E>

    🔬This is a nightly-only experimental API. (result_flattening)

    Converts from Result<Result<T, E>, E> to Result<T, E>

    \n
    §Examples
    \n
    #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
    \n

    Flattening only removes one level of nesting at a time:

    \n\n
    #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Result<T, E>

    1.0.0 (const: 1.48.0) · source

    pub const fn is_ok(&self) -> bool

    Returns true if the result is Ok.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
    \n
    1.70.0 · source

    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

    Returns true if the result is Ok and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn is_err(&self) -> bool

    Returns true if the result is Err.

    \n
    §Examples
    \n
    let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
    \n
    1.70.0 · source

    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

    Returns true if the result is Err and the value inside of it matches a predicate.

    \n
    §Examples
    \n
    use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
    \n
    1.0.0 · source

    pub fn ok(self) -> Option<T>

    Converts from Result<T, E> to Option<T>.

    \n

    Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
    \n
    1.0.0 · source

    pub fn err(self) -> Option<E>

    Converts from Result<T, E> to Option<E>.

    \n

    Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
    \n
    1.0.0 (const: 1.48.0) · source

    pub const fn as_ref(&self) -> Result<&T, &E>

    Converts from &Result<T, E> to Result<&T, &E>.

    \n

    Produces a new Result, containing a reference\ninto the original, leaving the original in place.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
    \n
    1.0.0 (const: unstable) · source

    pub fn as_mut(&mut self) -> Result<&mut T, &mut E>

    Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

    \n
    §Examples
    \n
    fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
    \n
    1.0.0 · source

    pub fn map<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

    \n

    This function can be used to compose the results of two functions.

    \n
    §Examples
    \n

    Print the numbers on each line of a string multiplied by two.

    \n\n
    let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
    \n
    1.41.0 · source

    pub fn map_or<U, F>(self, default: U, f: F) -> U
    where\n F: FnOnce(T) -> U,

    Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

    \n

    Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
    \n
    1.41.0 · source

    pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
    where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

    Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

    \n

    This function can be used to unpack a successful result\nwhile handling an error.

    \n
    §Examples
    \n
    let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
    \n
    1.0.0 · source

    pub fn map_err<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> F,

    Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

    \n

    This function can be used to pass through a successful result while handling\nan error.

    \n
    §Examples
    \n
    fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
    \n
    1.76.0 · source

    pub fn inspect<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&T),

    Calls a function with a reference to the contained value if Ok.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
    \n
    1.76.0 · source

    pub fn inspect_err<F>(self, f: F) -> Result<T, E>
    where\n F: FnOnce(&E),

    Calls a function with a reference to the contained value if Err.

    \n

    Returns the original result.

    \n
    §Examples
    \n
    use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
    \n
    1.47.0 · source

    pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
    where\n T: Deref,

    Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

    \n

    Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

    \n
    §Examples
    \n
    let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
    \n
    1.47.0 · source

    pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
    where\n T: DerefMut,

    Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

    \n

    Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

    \n
    §Examples
    \n
    let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    Returns an iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, T>

    Returns a mutable iterator over the possibly contained value.

    \n

    The iterator yields one value if the result is Result::Ok, otherwise none.

    \n
    §Examples
    \n
    let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
    \n
    1.4.0 · source

    pub fn expect(self, msg: &str) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
    \n
    §Recommended Message Style
    \n

    We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

    \n\n
    let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
    \n

    Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

    \n

    For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

    \n
    1.0.0 · source

    pub fn unwrap(self) -> T
    where\n E: Debug,

    Returns the contained Ok value, consuming the self value.

    \n

    Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

    \n
    §Panics
    \n

    Panics if the value is an Err, with a panic message provided by the\nErr’s value.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
    \n
    1.16.0 · source

    pub fn unwrap_or_default(self) -> T
    where\n T: Default,

    Returns the contained Ok value or a default

    \n

    Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

    \n
    §Examples
    \n

    Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

    \n\n
    let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
    \n
    1.17.0 · source

    pub fn expect_err(self, msg: &str) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
    \n
    1.0.0 · source

    pub fn unwrap_err(self) -> E
    where\n T: Debug,

    Returns the contained Err value, consuming the self value.

    \n
    §Panics
    \n

    Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
    \n
    source

    pub fn into_ok(self) -> T
    where\n E: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Ok value, but never panics.

    \n

    Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

    \n
    §Examples
    \n
    \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
    \n
    source

    pub fn into_err(self) -> E
    where\n T: Into<!>,

    🔬This is a nightly-only experimental API. (unwrap_infallible)

    Returns the contained Err value, but never panics.

    \n

    Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

    \n
    §Examples
    \n
    \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
    \n
    1.0.0 · source

    pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

    Returns res if the result is Ok, otherwise returns the Err value of self.

    \n

    Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
    \n
    1.0.0 · source

    pub fn and_then<U, F>(self, op: F) -> Result<U, E>
    where\n F: FnOnce(T) -> Result<U, E>,

    Calls op if the result is Ok, otherwise returns the Err value of self.

    \n

    This function can be used for control flow based on Result values.

    \n
    §Examples
    \n
    fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
    \n

    Often used to chain fallible operations that may return Err.

    \n\n
    use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
    \n
    1.0.0 · source

    pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

    Returns res if the result is Err, otherwise returns the Ok value of self.

    \n

    Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
    \n
    1.0.0 · source

    pub fn or_else<F, O>(self, op: O) -> Result<T, F>
    where\n O: FnOnce(E) -> Result<T, F>,

    Calls op if the result is Err, otherwise returns the Ok value of self.

    \n

    This function can be used for control flow based on result values.

    \n
    §Examples
    \n
    fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
    \n
    1.0.0 · source

    pub fn unwrap_or(self, default: T) -> T

    Returns the contained Ok value or a provided default.

    \n

    Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

    \n
    §Examples
    \n
    let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
    \n
    1.0.0 · source

    pub fn unwrap_or_else<F>(self, op: F) -> T
    where\n F: FnOnce(E) -> T,

    Returns the contained Ok value or computes it from a closure.

    \n
    §Examples
    \n
    fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
    \n
    1.58.0 · source

    pub unsafe fn unwrap_unchecked(self) -> T

    Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

    \n
    §Safety
    \n

    Calling this method on an Err is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
    \n
    1.58.0 · source

    pub unsafe fn unwrap_err_unchecked(self) -> E

    Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

    \n
    §Safety
    \n

    Calling this method on an Ok is undefined behavior.

    \n
    §Examples
    \n
    let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
    \n\n
    let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
    \n
    ",0,"massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Serialize for Result<T, E>
    where\n T: Serialize,\n E: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, TAs, E, EAs> SerializeAs<Result<T, E>> for Result<TAs, EAs>
    where\n TAs: SerializeAs<T>,\n EAs: SerializeAs<E>,

    source§

    fn serialize_as<S>(\n source: &Result<T, E>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_pos_exports::error::PosResult"],["
    1.16.0 · source§

    impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
    where\n T: Sum<U>,

    source§

    fn sum<I>(iter: I) -> Result<T, E>
    where\n I: Iterator<Item = Result<U, E>>,

    Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

    \n
    §Examples
    \n

    This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

    \n\n
    let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
    \n
    ","Sum>","massa_pos_exports::error::PosResult"],["
    §

    impl<T, E> TapFallible for Result<T, E>

    §

    type Ok = T

    The interior type used to indicate a successful construction.
    §

    type Err = E

    The interior type used to indicate a failed construction.
    §

    fn tap_ok(self, func: impl FnOnce(&T)) -> Result<T, E>

    Immutably accesses an interior success value. Read more
    §

    fn tap_ok_mut(self, func: impl FnOnce(&mut T)) -> Result<T, E>

    Mutably accesses an interior success value. Read more
    §

    fn tap_err(self, func: impl FnOnce(&E)) -> Result<T, E>

    Immutably accesses an interior failure value. Read more
    §

    fn tap_err_mut(self, func: impl FnOnce(&mut E)) -> Result<T, E>

    Mutably accesses an interior failure value. Read more
    §

    fn tap_ok_dbg(self, func: impl FnOnce(&Self::Ok)) -> Self

    Calls .tap_ok() only in debug builds, and is erased in release builds.
    §

    fn tap_ok_mut_dbg(self, func: impl FnOnce(&mut Self::Ok)) -> Self

    Calls .tap_ok_mut() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_dbg(self, func: impl FnOnce(&Self::Err)) -> Self

    Calls .tap_err() only in debug builds, and is erased in release\nbuilds.
    §

    fn tap_err_mut_dbg(self, func: impl FnOnce(&mut Self::Err)) -> Self

    Calls .tap_err_mut() only in debug builds, and is erased in release\nbuilds.
    ","TapFallible","massa_pos_exports::error::PosResult"],["
    1.61.0 · source§

    impl<T, E> Termination for Result<T, E>
    where\n T: Termination,\n E: Debug,

    source§

    fn report(self) -> ExitCode

    Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
    ","Termination","massa_pos_exports::error::PosResult"],["
    source§

    impl<T, E> Try for Result<T, E>

    §

    type Output = T

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value produced by ? when not short-circuiting.
    §

    type Residual = Result<Infallible, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
    source§

    fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Constructs the type from its Output type. Read more
    source§

    fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

    🔬This is a nightly-only experimental API. (try_trait_v2)
    Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
    ","Try","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Copy for Result<T, E>
    where\n T: Copy,\n E: Copy,

    ","Copy","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> Eq for Result<T, E>
    where\n T: Eq,\n E: Eq,

    ","Eq","massa_pos_exports::error::PosResult"],["
    §

    impl<T, U, E> FromStream<Result<T, E>> for Result<U, E>
    where\n U: FromStream<T>,

    ","FromStream>","massa_pos_exports::error::PosResult"],["
    1.0.0 · source§

    impl<T, E> StructuralPartialEq for Result<T, E>

    ","StructuralPartialEq","massa_pos_exports::error::PosResult"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/massa_models/secure_share/struct.SecureShare.js b/type.impl/massa_models/secure_share/struct.SecureShare.js index d2ba240c8e1..1dc741e45f4 100644 --- a/type.impl/massa_models/secure_share/struct.SecureShare.js +++ b/type.impl/massa_models/secure_share/struct.SecureShare.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"massa_models":[["
    source§

    impl<T, ID> Clone for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Clone,\n ID: Id + Clone,

    source§

    fn clone(&self) -> SecureShare<T, ID>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Debug for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Debug,\n ID: Id + Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<'de, T, ID> Deserialize<'de> for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Deserialize<'de>,\n ID: Id + Deserialize<'de>,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where\n __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Display for SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Display","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> PartialEq for SecureShare<T, ID>

    source§

    fn eq(&self, other: &SecureShare<T, ID>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,

    source

    pub fn sign(\n keypair: &KeyPair,\n content_hash: &Hash,\n _content: &T,\n) -> Result<Signature, ModelsError>

    Sign the SecureShare given the content

    \n
    source

    pub fn verify_signature(&self) -> Result<(), ModelsError>

    check if self has been signed by public key

    \n
    source

    pub fn compute_signed_hash(&self) -> Hash

    Compute the signed hash

    \n
    source

    pub fn serialized_size(&self) -> usize

    get full serialized size

    \n
    ",0,"massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Serialize for SecureShare<T, ID>

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where\n __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Eq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Eq,\n ID: Id + Eq,

    ","Eq","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> StructuralPartialEq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,

    ","StructuralPartialEq","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"]] +"massa_models":[["
    source§

    impl<T, ID> Clone for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Clone,\n ID: Id + Clone,

    source§

    fn clone(&self) -> SecureShare<T, ID>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Debug for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Debug,\n ID: Id + Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<'de, T, ID> Deserialize<'de> for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Deserialize<'de>,\n ID: Id + Deserialize<'de>,

    source§

    fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
    where\n __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Display for SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    ","Display","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> PartialEq for SecureShare<T, ID>

    source§

    fn eq(&self, other: &SecureShare<T, ID>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,

    source

    pub fn sign(\n keypair: &KeyPair,\n content_hash: &Hash,\n _content: &T,\n) -> Result<Signature, ModelsError>

    Sign the SecureShare given the content

    \n
    source

    pub fn verify_signature(&self) -> Result<(), ModelsError>

    check if self has been signed by public key

    \n
    source

    pub fn compute_signed_hash(&self) -> Hash

    Compute the signed hash

    \n
    source

    pub fn serialized_size(&self) -> usize

    get full serialized size

    \n
    ",0,"massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Serialize for SecureShare<T, ID>

    source§

    fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
    where\n __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> Eq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent + Eq,\n ID: Id + Eq,

    ","Eq","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"],["
    source§

    impl<T, ID> StructuralPartialEq for SecureShare<T, ID>
    where\n T: Display + SecureShareContent,\n ID: Id,

    ","StructuralPartialEq","massa_models::block::SecureShareBlock","massa_models::block_header::SecuredHeader","massa_models::endorsement::SecureShareEndorsement","massa_models::operation::SecureShareOperation"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/massa_models/types/enum.SetOrDelete.js b/type.impl/massa_models/types/enum.SetOrDelete.js index 4ca5f00e850..cc017be9553 100644 --- a/type.impl/massa_models/types/enum.SetOrDelete.js +++ b/type.impl/massa_models/types/enum.SetOrDelete.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"massa_deferred_calls":[["
    §

    impl<T> Applicable<SetOrDelete<T>> for SetOrDelete<T>
    where\n T: Clone,

    allows applying another SetOrDelete to the current one

    \n
    §

    fn apply(&mut self, other: SetOrDelete<T>)

    apply changes from other to mutable self
    ","Applicable>","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Clone for SetOrDelete<T>
    where\n T: Clone,

    §

    fn clone(&self) -> SetOrDelete<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Debug for SetOrDelete<T>
    where\n T: Debug + Clone,

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<'de, T> Deserialize<'de> for SetOrDelete<T>
    where\n T: Clone + Deserialize<'de>,

    §

    fn deserialize<__D>(\n __deserializer: __D,\n) -> Result<SetOrDelete<T>, <__D as Deserializer<'de>>::Error>
    where\n __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> PartialEq for SetOrDelete<T>
    where\n T: PartialEq + Clone,

    §

    fn eq(&self, other: &SetOrDelete<T>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Serialize for SetOrDelete<T>
    where\n T: Clone + Serialize,

    §

    fn serialize<__S>(\n &self,\n __serializer: __S,\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
    where\n __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Eq for SetOrDelete<T>
    where\n T: Eq + Clone,

    ","Eq","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> StructuralPartialEq for SetOrDelete<T>
    where\n T: Clone,

    ","StructuralPartialEq","massa_deferred_calls::DeferredRegistryCallChange"]] +"massa_deferred_calls":[["
    §

    impl<T> Applicable<SetOrDelete<T>> for SetOrDelete<T>
    where\n T: Clone,

    allows applying another SetOrDelete to the current one

    \n
    §

    fn apply(&mut self, other: SetOrDelete<T>)

    apply changes from other to mutable self
    ","Applicable>","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Clone for SetOrDelete<T>
    where\n T: Clone,

    §

    fn clone(&self) -> SetOrDelete<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Debug for SetOrDelete<T>
    where\n T: Debug + Clone,

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<'de, T> Deserialize<'de> for SetOrDelete<T>
    where\n T: Clone + Deserialize<'de>,

    §

    fn deserialize<__D>(\n __deserializer: __D,\n) -> Result<SetOrDelete<T>, <__D as Deserializer<'de>>::Error>
    where\n __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> PartialEq for SetOrDelete<T>
    where\n T: PartialEq + Clone,

    §

    fn eq(&self, other: &SetOrDelete<T>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Serialize for SetOrDelete<T>
    where\n T: Clone + Serialize,

    §

    fn serialize<__S>(\n &self,\n __serializer: __S,\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
    where\n __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> Eq for SetOrDelete<T>
    where\n T: Eq + Clone,

    ","Eq","massa_deferred_calls::DeferredRegistryCallChange"],["
    §

    impl<T> StructuralPartialEq for SetOrDelete<T>
    where\n T: Clone,

    ","StructuralPartialEq","massa_deferred_calls::DeferredRegistryCallChange"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/massa_models/types/enum.SetOrKeep.js b/type.impl/massa_models/types/enum.SetOrKeep.js index 610c28fa6da..9be34b1629f 100644 --- a/type.impl/massa_models/types/enum.SetOrKeep.js +++ b/type.impl/massa_models/types/enum.SetOrKeep.js @@ -1,3 +1,3 @@ (function() {var type_impls = { -"massa_deferred_calls":[["
    §

    impl<T> Applicable<SetOrKeep<T>> for SetOrKeep<T>
    where\n T: Clone,

    allows applying another SetOrKeep to the current one

    \n
    §

    fn apply(&mut self, other: SetOrKeep<T>)

    apply changes from other to mutable self
    ","Applicable>","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Clone for SetOrKeep<T>
    where\n T: Clone,

    §

    fn clone(&self) -> SetOrKeep<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Debug for SetOrKeep<T>
    where\n T: Debug + Clone,

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Default for SetOrKeep<T>
    where\n T: Clone,

    By default, SetOrKeep keeps the existing value

    \n
    §

    fn default() -> SetOrKeep<T>

    Returns the “default value” for a type. Read more
    ","Default","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<'de, T> Deserialize<'de> for SetOrKeep<T>
    where\n T: Clone + Deserialize<'de>,

    §

    fn deserialize<__D>(\n __deserializer: __D,\n) -> Result<SetOrKeep<T>, <__D as Deserializer<'de>>::Error>
    where\n __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> PartialEq for SetOrKeep<T>
    where\n T: PartialEq + Clone,

    §

    fn eq(&self, other: &SetOrKeep<T>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Serialize for SetOrKeep<T>
    where\n T: Clone + Serialize,

    §

    fn serialize<__S>(\n &self,\n __serializer: __S,\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
    where\n __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> SetOrKeep<T>
    where\n T: Clone,

    pub fn apply_to(self, val: &mut T)

    applies the current SetOrKeep to a target mutable value

    \n
    ",0,"massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Eq for SetOrKeep<T>
    where\n T: Eq + Clone,

    ","Eq","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> StructuralPartialEq for SetOrKeep<T>
    where\n T: Clone,

    ","StructuralPartialEq","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"]] +"massa_deferred_calls":[["
    §

    impl<T> Applicable<SetOrKeep<T>> for SetOrKeep<T>
    where\n T: Clone,

    allows applying another SetOrKeep to the current one

    \n
    §

    fn apply(&mut self, other: SetOrKeep<T>)

    apply changes from other to mutable self
    ","Applicable>","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Clone for SetOrKeep<T>
    where\n T: Clone,

    §

    fn clone(&self) -> SetOrKeep<T>

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    ","Clone","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Debug for SetOrKeep<T>
    where\n T: Debug + Clone,

    §

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Default for SetOrKeep<T>
    where\n T: Clone,

    By default, SetOrKeep keeps the existing value

    \n
    §

    fn default() -> SetOrKeep<T>

    Returns the “default value” for a type. Read more
    ","Default","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<'de, T> Deserialize<'de> for SetOrKeep<T>
    where\n T: Clone + Deserialize<'de>,

    §

    fn deserialize<__D>(\n __deserializer: __D,\n) -> Result<SetOrKeep<T>, <__D as Deserializer<'de>>::Error>
    where\n __D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> PartialEq for SetOrKeep<T>
    where\n T: PartialEq + Clone,

    §

    fn eq(&self, other: &SetOrKeep<T>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Serialize for SetOrKeep<T>
    where\n T: Clone + Serialize,

    §

    fn serialize<__S>(\n &self,\n __serializer: __S,\n) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
    where\n __S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> SetOrKeep<T>
    where\n T: Clone,

    pub fn apply_to(self, val: &mut T)

    applies the current SetOrKeep to a target mutable value

    \n
    ",0,"massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> Eq for SetOrKeep<T>
    where\n T: Eq + Clone,

    ","Eq","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"],["
    §

    impl<T> StructuralPartialEq for SetOrKeep<T>
    where\n T: Clone,

    ","StructuralPartialEq","massa_deferred_calls::DeferredRegistryGasChange","massa_deferred_calls::DeferredRegistryBaseFeeChange"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/std/collections/hash/map/struct.HashMap.js b/type.impl/std/collections/hash/map/struct.HashMap.js index bb1bfcc9dc7..244bfcf31e3 100644 --- a/type.impl/std/collections/hash/map/struct.HashMap.js +++ b/type.impl/std/collections/hash/map/struct.HashMap.js @@ -1,4 +1,4 @@ (function() {var type_impls = { -"massa_models":[["
    1.0.0 · source§

    impl<K, V, S> Clone for HashMap<K, V, S>
    where\n K: Clone,\n V: Clone,\n S: Clone,

    source§

    fn clone(&self) -> HashMap<K, V, S>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &HashMap<K, V, S>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Debug for HashMap<K, V, S>
    where\n K: Debug,\n V: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Default for HashMap<K, V, S>
    where\n S: Default,

    source§

    fn default() -> HashMap<K, V, S>

    Creates an empty HashMap<K, V, S>, with the Default value for the hasher.

    \n
    ","Default","massa_models::prehash::PreHashMap"],["
    source§

    impl<'de, K, V, S> Deserialize<'de> for HashMap<K, V, S>
    where\n K: Deserialize<'de> + Eq + Hash,\n V: Deserialize<'de>,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::prehash::PreHashMap"],["
    source§

    impl<'de, K, V, KU, VU, S> DeserializeAs<'de, HashMap<K, V, S>> for HashMap<KU, VU, S>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashMap>","massa_models::prehash::PreHashMap"],["
    1.4.0 · source§

    impl<'a, K, V, S> Extend<(&'a K, &'a V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Copy,\n V: Copy,\n S: BuildHasher,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Extend<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    Inserts all new key-values from the iterator and replaces values with existing\nkeys with new values returned from the iterator.

    \n
    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> FromIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<T>(iter: T) -> HashMap<K, V, S>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n S: BuildHasher,

    source

    pub fn raw_entry_mut(&mut self) -> RawEntryBuilderMut<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched. After this, insertions into a vacant entry\nstill require an owned key to be provided.

    \n

    Raw entries are useful for such exotic situations as:

    \n
      \n
    • Hash memoization
    • \n
    • Deferring the creation of an owned key until it is known to be required
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Because raw entries provide much more low-level control, it’s much easier\nto put the HashMap into an inconsistent state which, while memory-safe,\nwill cause the map to produce seemingly random results. Higher-level and\nmore foolproof APIs like entry should be preferred when possible.

    \n

    In particular, the hash used to initialize the raw entry must still be\nconsistent with the hash of the key that is ultimately stored in the entry.\nThis is because implementations of HashMap may need to recompute hashes\nwhen resizing, at which point only the keys are available.

    \n

    Raw entries give mutable access to the keys. This must not be used\nto modify how the key would compare or hash, as the map will not re-evaluate\nwhere the key should go, meaning the keys may become “lost” if their\nlocation does not reflect their state. For instance, if you change a key\nso that the map now contains keys which compare equal, search may start\nacting erratically, with two keys randomly masking each other. Implementations\nare free to assume this doesn’t happen (within the limits of memory-safety).

    \n
    source

    pub fn raw_entry(&self) -> RawEntryBuilder<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw immutable entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched.

    \n

    This is useful for

    \n
      \n
    • Hash memoization
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Unless you are in such a situation, higher-level and more foolproof APIs like\nget should be preferred.

    \n

    Immutable raw entries have very limited use; you might instead want raw_entry_mut.

    \n
    ",0,"massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, S> HashMap<K, V, S>

    1.7.0 (const: unstable) · source

    pub fn with_hasher(hash_builder: S) -> HashMap<K, V, S>

    Creates an empty HashMap which will use the given hash builder to hash\nkeys.

    \n

    The created map has the default initial capacity.

    \n

    Warning: hash_builder is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_hasher(s);\nmap.insert(1, 2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashMap<K, V, S>

    Creates an empty HashMap with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash map will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash map will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hasher passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_capacity_and_hasher(10, s);\nmap.insert(1, 2);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the map can hold without reallocating.

    \n

    This number is a lower bound; the HashMap<K, V> might be able to hold\nmore, but is guaranteed to be able to hold at least this many.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet map: HashMap<i32, i32> = HashMap::with_capacity(100);\nassert!(map.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    An iterator visiting all keys in arbitrary order.\nThe iterator element type is &'a K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor key in map.keys() {\n    println!(\"{key}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V>

    Creates a consuming iterator visiting all the keys in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<&str> = map.into_keys().collect();\n// The `IntoKeys` iterator produces keys in arbitrary order, so the\n// keys must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [\"a\", \"b\", \"c\"]);
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    An iterator visiting all values in arbitrary order.\nThe iterator element type is &'a V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    An iterator visiting all values mutably in arbitrary order.\nThe iterator element type is &'a mut V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values_mut() {\n    *val = *val + 10;\n}\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V>

    Creates a consuming iterator visiting all the values in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<i32> = map.into_values().collect();\n// The `IntoValues` iterator produces values in arbitrary order, so\n// the values must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order.\nThe iterator element type is (&'a K, &'a V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor (key, val) in map.iter() {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order,\nwith mutable references to the values.\nThe iterator element type is (&'a K, &'a mut V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Update all values\nfor (_, val) in map.iter_mut() {\n    *val *= 2;\n}\n\nfor (key, val) in &map {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, K, V>

    Clears the map, returning all key-value pairs as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining key-value pairs. The returned iterator keeps a\nmutable borrow on the map to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\n\nfor (k, v) in a.drain().take(1) {\n    assert!(k == 1 || k == 2);\n    assert!(v == \"a\" || v == \"b\");\n}\n\nassert!(a.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F>
    where\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, the element is removed from the map and yielded.\nIf the closure returns false, or panics, the element remains in the map and will not be\nyielded.

    \n

    Note that extract_if lets you mutate every value in the filter closure, regardless of\nwhether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet extracted: HashMap<i32, i32> = map.extract_if(|k, _v| k % 2 == 0).collect();\n\nlet mut evens = extracted.keys().copied().collect::<Vec<_>>();\nlet mut odds = map.keys().copied().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\nmap.retain(|&k, _| k % 2 == 0);\nassert_eq!(map.len(), 4);
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all key-value pairs. Keeps the allocated memory\nfor reuse.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the map’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet map: HashMap<i32, i32> = HashMap::with_hasher(hasher);\nlet hasher: &RandomState = map.hasher();
    \n
    ",0,"massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::new();\nmap.reserve(10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<&str, isize> = HashMap::new();\nmap.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the map as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to_fit();\nassert!(map.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the map with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to(10);\nassert!(map.capacity() >= 10);\nmap.shrink_to(0);\nassert!(map.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V>

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut letters = HashMap::new();\n\nfor ch in \"a short treatise on fungi\".chars() {\n    letters.entry(ch).and_modify(|counter| *counter += 1).or_insert(1);\n}\n\nassert_eq!(letters[&'s'], 2);\nassert_eq!(letters[&'t'], 3);\nassert_eq!(letters[&'u'], 1);\nassert_eq!(letters.get(&'y'), None);
    \n
    1.0.0 · source

    pub fn get<Q>(&self, k: &Q) -> Option<&V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    source

    pub fn get_many_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once.

    \n

    Returns an array of length N with the results of each query. For soundness, at most one\nmutable reference will be returned to any value. None will be returned if any of the\nkeys are duplicates or missing.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);\n\n// Duplicate keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Athenæum\",\n]);\nassert_eq!(got, None);
    \n
    source

    pub unsafe fn get_many_unchecked_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once, without validating that\nthe values are unique.

    \n

    Returns an array of length N with the results of each query. None will be returned if\nany of the keys are missing.

    \n

    For a safe alternative see get_many_mut.

    \n
    §Safety
    \n

    Calling this method with overlapping keys is undefined behavior even if the resulting\nreferences are not used.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, k: &Q) -> bool
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, k: K, v: V) -> Option<V>

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V>>

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    #![feature(map_try_insert)]\n\nuse std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, k: &Q) -> Option<V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.27.0 · source

    pub fn remove_entry<Q>(&mut self, k: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the stored key and value if the\nkey was previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove(&1), None);
    \n
    ",0,"massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, Q, V, S> Index<&Q> for HashMap<K, V, S>
    where\n K: Eq + Hash + Borrow<Q>,\n Q: Eq + Hash + ?Sized,\n S: BuildHasher,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the HashMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_models::prehash::PreHashMap"],["
    source§

    impl<'de, K, V, S, E> IntoDeserializer<'de, E> for HashMap<K, V, S>
    where\n K: IntoDeserializer<'de, E> + Eq + Hash,\n V: IntoDeserializer<'de, E>,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <HashMap<K, V, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashMap<K, V, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> IntoIterator for HashMap<K, V, S>

    source§

    fn into_iter(self) -> IntoIter<K, V>

    Creates a consuming iterator, that is, one that moves each key-value\npair out of the map in arbitrary order. The map cannot be used after\ncalling this.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Not possible with .iter()\nlet vec: Vec<(&str, i32)> = map.into_iter().collect();
    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> PartialEq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: PartialEq,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashMap<K, V, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, H> Serialize for HashMap<K, V, H>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::prehash::PreHashMap"],["
    source§

    impl<K, KU, V, VU, H> SerializeAs<HashMap<K, V, H>> for HashMap<KU, VU, H>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashMap<K, V, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Eq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: Eq,\n S: BuildHasher,

    ","Eq","massa_models::prehash::PreHashMap"],["
    1.36.0 · source§

    impl<K, V, S> UnwindSafe for HashMap<K, V, S>
    where\n K: UnwindSafe,\n V: UnwindSafe,\n S: UnwindSafe,

    ","UnwindSafe","massa_models::prehash::PreHashMap"]], -"massa_protocol_worker":[["
    §

    impl<K, V, S> Accumulate<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher + Default,

    §

    fn initial(capacity: Option<usize>) -> HashMap<K, V, S>

    Create a new Extend of the correct type
    §

    fn accumulate(&mut self, _: (K, V))

    Accumulate the input into an accumulator
    ","Accumulate<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> Archive for HashMap<K, V, S>
    where\n K: Archive + Hash + Eq,\n V: Archive,\n <K as Archive>::Archived: Hash + Eq,

    §

    type Archived = ArchivedHashMap<<K as Archive>::Archived, <V as Archive>::Archived>

    The archived representation of this type. Read more
    §

    type Resolver = HashMapResolver

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <HashMap<K, V, S> as Archive>::Resolver,\n out: *mut <HashMap<K, V, S> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Clone for HashMap<K, V, S>
    where\n K: Clone,\n V: Clone,\n S: Clone,

    source§

    fn clone(&self) -> HashMap<K, V, S>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &HashMap<K, V, S>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Debug for HashMap<K, V, S>
    where\n K: Debug,\n V: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Default for HashMap<K, V, S>
    where\n S: Default,

    source§

    fn default() -> HashMap<K, V, S>

    Creates an empty HashMap<K, V, S>, with the Default value for the hasher.

    \n
    ","Default","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, V, S> Deserialize<'de> for HashMap<K, V, S>
    where\n K: Deserialize<'de> + Eq + Hash,\n V: Deserialize<'de>,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs, const N: usize> DeserializeAs<'de, [(K, V); N]> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<[(K, V); N], <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, [(K, V); N]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BTreeSet<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeSet<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeSet<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BinaryHeap<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BinaryHeap<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BinaryHeap<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Box<[(K, V)]>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Box<[(K, V)]>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Box<[(K, V)]>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, V, KU, VU, S> DeserializeAs<'de, HashMap<K, V, S>> for HashMap<KU, VU, S>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashMap>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs, S> DeserializeAs<'de, HashSet<(K, V), S>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<(K, V), S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet<(K, V), S>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, LinkedList<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<LinkedList<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, LinkedList<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Option<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Option<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Option<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Vec<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, VecDeque<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<VecDeque<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, VecDeque<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.4.0 · source§

    impl<'a, K, V, S> Extend<(&'a K, &'a V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Copy,\n V: Copy,\n S: BuildHasher,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Extend<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    Inserts all new key-values from the iterator and replaces values with existing\nkeys with new values returned from the iterator.

    \n
    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.56.0 · source§

    impl<K, V, const N: usize> From<[(K, V); N]> for HashMap<K, V>
    where\n K: Eq + Hash,

    source§

    fn from(arr: [(K, V); N]) -> HashMap<K, V>

    §Examples
    \n
    use std::collections::HashMap;\n\nlet map1 = HashMap::from([(1, 2), (3, 4)]);\nlet map2: HashMap<_, _> = [(1, 2), (3, 4)].into();\nassert_eq!(map1, map2);
    \n
    ","From<[(K, V); N]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> FromFallibleIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Hash + Eq,\n S: BuildHasher + Default,

    source§

    fn from_fallible_iter<I>(\n it: I,\n) -> Result<HashMap<K, V, S>, <I as IntoFallibleIterator>::Error>
    where\n I: IntoFallibleIterator<Item = (K, V)>,

    Creates a value from a fallible iterator.
    ","FromFallibleIterator<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> FromIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<T>(iter: T) -> HashMap<K, V, S>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> FromParallelIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Send,\n V: Send,\n S: BuildHasher + Default + Send,

    Collects (key, value) pairs from a parallel iterator into a\nhashmap. If multiple pairs correspond to the same key, then the\nones produced earlier in the parallel iterator will be\noverwritten, just as with a sequential iterator.

    \n
    §

    fn from_par_iter<I>(par_iter: I) -> HashMap<K, V, S>
    where\n I: IntoParallelIterator<Item = (K, V)>,

    Creates an instance of the collection from the parallel iterator par_iter. Read more
    ","FromParallelIterator<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V> HashMap<K, V>

    1.0.0 · source

    pub fn new() -> HashMap<K, V>

    Creates an empty HashMap.

    \n

    The hash map is initially created with a capacity of 0, so it will not allocate until it\nis first inserted into.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> HashMap<K, V>

    Creates an empty HashMap with at least the specified capacity.

    \n

    The hash map will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash map will not allocate.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::with_capacity(10);
    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n S: BuildHasher,

    source

    pub fn raw_entry_mut(&mut self) -> RawEntryBuilderMut<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched. After this, insertions into a vacant entry\nstill require an owned key to be provided.

    \n

    Raw entries are useful for such exotic situations as:

    \n
      \n
    • Hash memoization
    • \n
    • Deferring the creation of an owned key until it is known to be required
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Because raw entries provide much more low-level control, it’s much easier\nto put the HashMap into an inconsistent state which, while memory-safe,\nwill cause the map to produce seemingly random results. Higher-level and\nmore foolproof APIs like entry should be preferred when possible.

    \n

    In particular, the hash used to initialize the raw entry must still be\nconsistent with the hash of the key that is ultimately stored in the entry.\nThis is because implementations of HashMap may need to recompute hashes\nwhen resizing, at which point only the keys are available.

    \n

    Raw entries give mutable access to the keys. This must not be used\nto modify how the key would compare or hash, as the map will not re-evaluate\nwhere the key should go, meaning the keys may become “lost” if their\nlocation does not reflect their state. For instance, if you change a key\nso that the map now contains keys which compare equal, search may start\nacting erratically, with two keys randomly masking each other. Implementations\nare free to assume this doesn’t happen (within the limits of memory-safety).

    \n
    source

    pub fn raw_entry(&self) -> RawEntryBuilder<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw immutable entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched.

    \n

    This is useful for

    \n
      \n
    • Hash memoization
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Unless you are in such a situation, higher-level and more foolproof APIs like\nget should be preferred.

    \n

    Immutable raw entries have very limited use; you might instead want raw_entry_mut.

    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> HashMap<K, V, S>

    1.7.0 (const: unstable) · source

    pub fn with_hasher(hash_builder: S) -> HashMap<K, V, S>

    Creates an empty HashMap which will use the given hash builder to hash\nkeys.

    \n

    The created map has the default initial capacity.

    \n

    Warning: hash_builder is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_hasher(s);\nmap.insert(1, 2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashMap<K, V, S>

    Creates an empty HashMap with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash map will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash map will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hasher passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_capacity_and_hasher(10, s);\nmap.insert(1, 2);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the map can hold without reallocating.

    \n

    This number is a lower bound; the HashMap<K, V> might be able to hold\nmore, but is guaranteed to be able to hold at least this many.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet map: HashMap<i32, i32> = HashMap::with_capacity(100);\nassert!(map.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    An iterator visiting all keys in arbitrary order.\nThe iterator element type is &'a K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor key in map.keys() {\n    println!(\"{key}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V>

    Creates a consuming iterator visiting all the keys in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<&str> = map.into_keys().collect();\n// The `IntoKeys` iterator produces keys in arbitrary order, so the\n// keys must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [\"a\", \"b\", \"c\"]);
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    An iterator visiting all values in arbitrary order.\nThe iterator element type is &'a V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    An iterator visiting all values mutably in arbitrary order.\nThe iterator element type is &'a mut V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values_mut() {\n    *val = *val + 10;\n}\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V>

    Creates a consuming iterator visiting all the values in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<i32> = map.into_values().collect();\n// The `IntoValues` iterator produces values in arbitrary order, so\n// the values must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order.\nThe iterator element type is (&'a K, &'a V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor (key, val) in map.iter() {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order,\nwith mutable references to the values.\nThe iterator element type is (&'a K, &'a mut V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Update all values\nfor (_, val) in map.iter_mut() {\n    *val *= 2;\n}\n\nfor (key, val) in &map {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, K, V>

    Clears the map, returning all key-value pairs as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining key-value pairs. The returned iterator keeps a\nmutable borrow on the map to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\n\nfor (k, v) in a.drain().take(1) {\n    assert!(k == 1 || k == 2);\n    assert!(v == \"a\" || v == \"b\");\n}\n\nassert!(a.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F>
    where\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, the element is removed from the map and yielded.\nIf the closure returns false, or panics, the element remains in the map and will not be\nyielded.

    \n

    Note that extract_if lets you mutate every value in the filter closure, regardless of\nwhether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet extracted: HashMap<i32, i32> = map.extract_if(|k, _v| k % 2 == 0).collect();\n\nlet mut evens = extracted.keys().copied().collect::<Vec<_>>();\nlet mut odds = map.keys().copied().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\nmap.retain(|&k, _| k % 2 == 0);\nassert_eq!(map.len(), 4);
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all key-value pairs. Keeps the allocated memory\nfor reuse.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the map’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet map: HashMap<i32, i32> = HashMap::with_hasher(hasher);\nlet hasher: &RandomState = map.hasher();
    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::new();\nmap.reserve(10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<&str, isize> = HashMap::new();\nmap.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the map as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to_fit();\nassert!(map.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the map with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to(10);\nassert!(map.capacity() >= 10);\nmap.shrink_to(0);\nassert!(map.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V>

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut letters = HashMap::new();\n\nfor ch in \"a short treatise on fungi\".chars() {\n    letters.entry(ch).and_modify(|counter| *counter += 1).or_insert(1);\n}\n\nassert_eq!(letters[&'s'], 2);\nassert_eq!(letters[&'t'], 3);\nassert_eq!(letters[&'u'], 1);\nassert_eq!(letters.get(&'y'), None);
    \n
    1.0.0 · source

    pub fn get<Q>(&self, k: &Q) -> Option<&V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    source

    pub fn get_many_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once.

    \n

    Returns an array of length N with the results of each query. For soundness, at most one\nmutable reference will be returned to any value. None will be returned if any of the\nkeys are duplicates or missing.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);\n\n// Duplicate keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Athenæum\",\n]);\nassert_eq!(got, None);
    \n
    source

    pub unsafe fn get_many_unchecked_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once, without validating that\nthe values are unique.

    \n

    Returns an array of length N with the results of each query. None will be returned if\nany of the keys are missing.

    \n

    For a safe alternative see get_many_mut.

    \n
    §Safety
    \n

    Calling this method with overlapping keys is undefined behavior even if the resulting\nreferences are not used.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, k: &Q) -> bool
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, k: K, v: V) -> Option<V>

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V>>

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    #![feature(map_try_insert)]\n\nuse std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, k: &Q) -> Option<V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.27.0 · source

    pub fn remove_entry<Q>(&mut self, k: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the stored key and value if the\nkey was previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove(&1), None);
    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, Q, V, S> Index<&Q> for HashMap<K, V, S>
    where\n K: Eq + Hash + Borrow<Q>,\n Q: Eq + Hash + ?Sized,\n S: BuildHasher,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the HashMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, V, S, E> IntoDeserializer<'de, E> for HashMap<K, V, S>
    where\n K: IntoDeserializer<'de, E> + Eq + Hash,\n V: IntoDeserializer<'de, E>,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <HashMap<K, V, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashMap<K, V, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> IntoIterator for HashMap<K, V, S>

    source§

    fn into_iter(self) -> IntoIter<K, V>

    Creates a consuming iterator, that is, one that moves each key-value\npair out of the map in arbitrary order. The map cannot be used after\ncalling this.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Not possible with .iter()\nlet vec: Vec<(&str, i32)> = map.into_iter().collect();
    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> IntoParallelIterator for HashMap<K, V, S>
    where\n K: Hash + Eq + Send,\n V: Send,\n S: BuildHasher,

    §

    type Item = <HashMap<K, V, S> as IntoIterator>::Item

    The type of item that the parallel iterator will produce.
    §

    type Iter = IntoIter<K, V>

    The parallel iterator type that will be created.
    §

    fn into_par_iter(self) -> <HashMap<K, V, S> as IntoParallelIterator>::Iter

    Converts self into a parallel iterator. Read more
    ","IntoParallelIterator","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, H> JsonSchema for HashMap<K, V, H>
    where\n V: JsonSchema,

    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    ","JsonSchema","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<'a, K, V, S> ParallelExtend<(&'a K, &'a V)> for HashMap<K, V, S>
    where\n K: 'a + Copy + Eq + Hash + Send + Sync,\n V: 'a + Copy + Send + Sync,\n S: BuildHasher + Send,

    Extends a hash map with copied items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = (&'a K, &'a V)>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend<(&'a K, &'a V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> ParallelExtend<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Send,\n V: Send,\n S: BuildHasher + Send,

    Extends a hash map with items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = (K, V)>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, AK, AV> PartialEq<ArchivedHashMap<AK, AV>> for HashMap<K, V>
    where\n K: Hash + Eq + Borrow<AK>,\n AK: Hash + Eq,\n AV: PartialEq<V>,

    §

    fn eq(&self, other: &ArchivedHashMap<AK, AV>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> PartialEq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: PartialEq,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashMap<K, V, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S, RandomState> Serialize<S> for HashMap<K, V, RandomState>
    where\n K: Serialize<S> + Hash + Eq,\n <K as Archive>::Archived: Hash + Eq,\n V: Serialize<S>,\n S: Serializer + ScratchSpace + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<HashMap<K, V, RandomState> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, H> Serialize for HashMap<K, V, H>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<[(K, V)]> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V)],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V)]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs, const N: usize> SerializeAs<[(K, V); N]> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V); N],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V); N]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BTreeSet<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeSet<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BinaryHeap<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BinaryHeap<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Box<[(K, V)]>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Box<[(K, V)]>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KU, V, VU, H> SerializeAs<HashMap<K, V, H>> for HashMap<KU, VU, H>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashMap<K, V, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs, H> SerializeAs<HashSet<(K, V), H>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashSet<(K, V), H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<LinkedList<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &LinkedList<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Option<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Option<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Vec<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Vec<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<VecDeque<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &VecDeque<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Eq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: Eq,\n S: BuildHasher,

    ","Eq","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.36.0 · source§

    impl<K, V, S> UnwindSafe for HashMap<K, V, S>
    where\n K: UnwindSafe,\n V: UnwindSafe,\n S: UnwindSafe,

    ","UnwindSafe","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"]] +"massa_models":[["
    1.0.0 · source§

    impl<K, V, S> Clone for HashMap<K, V, S>
    where\n K: Clone,\n V: Clone,\n S: Clone,

    source§

    fn clone(&self) -> HashMap<K, V, S>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &HashMap<K, V, S>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Debug for HashMap<K, V, S>
    where\n K: Debug,\n V: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Default for HashMap<K, V, S>
    where\n S: Default,

    source§

    fn default() -> HashMap<K, V, S>

    Creates an empty HashMap<K, V, S>, with the Default value for the hasher.

    \n
    ","Default","massa_models::prehash::PreHashMap"],["
    source§

    impl<'de, K, V, S> Deserialize<'de> for HashMap<K, V, S>
    where\n K: Deserialize<'de> + Eq + Hash,\n V: Deserialize<'de>,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::prehash::PreHashMap"],["
    source§

    impl<'de, K, V, KU, VU, S> DeserializeAs<'de, HashMap<K, V, S>> for HashMap<KU, VU, S>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashMap>","massa_models::prehash::PreHashMap"],["
    1.4.0 · source§

    impl<'a, K, V, S> Extend<(&'a K, &'a V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Copy,\n V: Copy,\n S: BuildHasher,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Extend<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    Inserts all new key-values from the iterator and replaces values with existing\nkeys with new values returned from the iterator.

    \n
    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> FromIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<T>(iter: T) -> HashMap<K, V, S>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n S: BuildHasher,

    source

    pub fn raw_entry_mut(&mut self) -> RawEntryBuilderMut<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched. After this, insertions into a vacant entry\nstill require an owned key to be provided.

    \n

    Raw entries are useful for such exotic situations as:

    \n
      \n
    • Hash memoization
    • \n
    • Deferring the creation of an owned key until it is known to be required
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Because raw entries provide much more low-level control, it’s much easier\nto put the HashMap into an inconsistent state which, while memory-safe,\nwill cause the map to produce seemingly random results. Higher-level and\nmore foolproof APIs like entry should be preferred when possible.

    \n

    In particular, the hash used to initialize the raw entry must still be\nconsistent with the hash of the key that is ultimately stored in the entry.\nThis is because implementations of HashMap may need to recompute hashes\nwhen resizing, at which point only the keys are available.

    \n

    Raw entries give mutable access to the keys. This must not be used\nto modify how the key would compare or hash, as the map will not re-evaluate\nwhere the key should go, meaning the keys may become “lost” if their\nlocation does not reflect their state. For instance, if you change a key\nso that the map now contains keys which compare equal, search may start\nacting erratically, with two keys randomly masking each other. Implementations\nare free to assume this doesn’t happen (within the limits of memory-safety).

    \n
    source

    pub fn raw_entry(&self) -> RawEntryBuilder<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw immutable entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched.

    \n

    This is useful for

    \n
      \n
    • Hash memoization
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Unless you are in such a situation, higher-level and more foolproof APIs like\nget should be preferred.

    \n

    Immutable raw entries have very limited use; you might instead want raw_entry_mut.

    \n
    ",0,"massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, S> HashMap<K, V, S>

    1.7.0 (const: unstable) · source

    pub fn with_hasher(hash_builder: S) -> HashMap<K, V, S>

    Creates an empty HashMap which will use the given hash builder to hash\nkeys.

    \n

    The created map has the default initial capacity.

    \n

    Warning: hash_builder is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_hasher(s);\nmap.insert(1, 2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashMap<K, V, S>

    Creates an empty HashMap with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash map will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash map will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hasher passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_capacity_and_hasher(10, s);\nmap.insert(1, 2);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the map can hold without reallocating.

    \n

    This number is a lower bound; the HashMap<K, V> might be able to hold\nmore, but is guaranteed to be able to hold at least this many.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet map: HashMap<i32, i32> = HashMap::with_capacity(100);\nassert!(map.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    An iterator visiting all keys in arbitrary order.\nThe iterator element type is &'a K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor key in map.keys() {\n    println!(\"{key}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V>

    Creates a consuming iterator visiting all the keys in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<&str> = map.into_keys().collect();\n// The `IntoKeys` iterator produces keys in arbitrary order, so the\n// keys must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [\"a\", \"b\", \"c\"]);
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    An iterator visiting all values in arbitrary order.\nThe iterator element type is &'a V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    An iterator visiting all values mutably in arbitrary order.\nThe iterator element type is &'a mut V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values_mut() {\n    *val = *val + 10;\n}\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V>

    Creates a consuming iterator visiting all the values in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<i32> = map.into_values().collect();\n// The `IntoValues` iterator produces values in arbitrary order, so\n// the values must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order.\nThe iterator element type is (&'a K, &'a V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor (key, val) in map.iter() {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order,\nwith mutable references to the values.\nThe iterator element type is (&'a K, &'a mut V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Update all values\nfor (_, val) in map.iter_mut() {\n    *val *= 2;\n}\n\nfor (key, val) in &map {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, K, V>

    Clears the map, returning all key-value pairs as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining key-value pairs. The returned iterator keeps a\nmutable borrow on the map to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\n\nfor (k, v) in a.drain().take(1) {\n    assert!(k == 1 || k == 2);\n    assert!(v == \"a\" || v == \"b\");\n}\n\nassert!(a.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F>
    where\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, the element is removed from the map and yielded.\nIf the closure returns false, or panics, the element remains in the map and will not be\nyielded.

    \n

    Note that extract_if lets you mutate every value in the filter closure, regardless of\nwhether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet extracted: HashMap<i32, i32> = map.extract_if(|k, _v| k % 2 == 0).collect();\n\nlet mut evens = extracted.keys().copied().collect::<Vec<_>>();\nlet mut odds = map.keys().copied().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\nmap.retain(|&k, _| k % 2 == 0);\nassert_eq!(map.len(), 4);
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all key-value pairs. Keeps the allocated memory\nfor reuse.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the map’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet map: HashMap<i32, i32> = HashMap::with_hasher(hasher);\nlet hasher: &RandomState = map.hasher();
    \n
    ",0,"massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::new();\nmap.reserve(10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<&str, isize> = HashMap::new();\nmap.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the map as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to_fit();\nassert!(map.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the map with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to(10);\nassert!(map.capacity() >= 10);\nmap.shrink_to(0);\nassert!(map.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V>

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut letters = HashMap::new();\n\nfor ch in \"a short treatise on fungi\".chars() {\n    letters.entry(ch).and_modify(|counter| *counter += 1).or_insert(1);\n}\n\nassert_eq!(letters[&'s'], 2);\nassert_eq!(letters[&'t'], 3);\nassert_eq!(letters[&'u'], 1);\nassert_eq!(letters.get(&'y'), None);
    \n
    1.0.0 · source

    pub fn get<Q>(&self, k: &Q) -> Option<&V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    source

    pub fn get_many_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once.

    \n

    Returns an array of length N with the results of each query. For soundness, at most one\nmutable reference will be returned to any value. None will be returned if any of the\nkeys are duplicates or missing.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);\n\n// Duplicate keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Athenæum\",\n]);\nassert_eq!(got, None);
    \n
    source

    pub unsafe fn get_many_unchecked_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once, without validating that\nthe values are unique.

    \n

    Returns an array of length N with the results of each query. None will be returned if\nany of the keys are missing.

    \n

    For a safe alternative see get_many_mut.

    \n
    §Safety
    \n

    Calling this method with overlapping keys is undefined behavior even if the resulting\nreferences are not used.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, k: &Q) -> bool
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, k: K, v: V) -> Option<V>

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V>>

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    #![feature(map_try_insert)]\n\nuse std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, k: &Q) -> Option<V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.27.0 · source

    pub fn remove_entry<Q>(&mut self, k: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the stored key and value if the\nkey was previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove(&1), None);
    \n
    ",0,"massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, Q, V, S> Index<&Q> for HashMap<K, V, S>
    where\n K: Eq + Hash + Borrow<Q>,\n Q: Eq + Hash + ?Sized,\n S: BuildHasher,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the HashMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_models::prehash::PreHashMap"],["
    source§

    impl<'de, K, V, S, E> IntoDeserializer<'de, E> for HashMap<K, V, S>
    where\n K: IntoDeserializer<'de, E> + Eq + Hash,\n V: IntoDeserializer<'de, E>,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <HashMap<K, V, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashMap<K, V, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> IntoIterator for HashMap<K, V, S>

    source§

    fn into_iter(self) -> IntoIter<K, V>

    Creates a consuming iterator, that is, one that moves each key-value\npair out of the map in arbitrary order. The map cannot be used after\ncalling this.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Not possible with .iter()\nlet vec: Vec<(&str, i32)> = map.into_iter().collect();
    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> PartialEq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: PartialEq,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashMap<K, V, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::prehash::PreHashMap"],["
    source§

    impl<K, V, H> Serialize for HashMap<K, V, H>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::prehash::PreHashMap"],["
    source§

    impl<K, KU, V, VU, H> SerializeAs<HashMap<K, V, H>> for HashMap<KU, VU, H>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashMap<K, V, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::prehash::PreHashMap"],["
    1.0.0 · source§

    impl<K, V, S> Eq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: Eq,\n S: BuildHasher,

    ","Eq","massa_models::prehash::PreHashMap"],["
    1.36.0 · source§

    impl<K, V, S> UnwindSafe for HashMap<K, V, S>
    where\n K: UnwindSafe,\n V: UnwindSafe,\n S: UnwindSafe,

    ","UnwindSafe","massa_models::prehash::PreHashMap"]], +"massa_protocol_worker":[["
    §

    impl<K, V, S> Accumulate<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher + Default,

    §

    fn initial(capacity: Option<usize>) -> HashMap<K, V, S>

    Create a new Extend of the correct type
    §

    fn accumulate(&mut self, _: (K, V))

    Accumulate the input into an accumulator
    ","Accumulate<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> Archive for HashMap<K, V, S>
    where\n K: Archive + Hash + Eq,\n V: Archive,\n <K as Archive>::Archived: Hash + Eq,

    §

    type Archived = ArchivedHashMap<<K as Archive>::Archived, <V as Archive>::Archived>

    The archived representation of this type. Read more
    §

    type Resolver = HashMapResolver

    The resolver for this type. It must contain all the additional information from serializing\nneeded to make the archived type from the normal type.
    §

    unsafe fn resolve(\n &self,\n pos: usize,\n resolver: <HashMap<K, V, S> as Archive>::Resolver,\n out: *mut <HashMap<K, V, S> as Archive>::Archived,\n)

    Creates the archived version of this value at the given position and writes it to the given\noutput. Read more
    ","Archive","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Clone for HashMap<K, V, S>
    where\n K: Clone,\n V: Clone,\n S: Clone,

    source§

    fn clone(&self) -> HashMap<K, V, S>

    Returns a copy of the value. Read more
    source§

    fn clone_from(&mut self, source: &HashMap<K, V, S>)

    Performs copy-assignment from source. Read more
    ","Clone","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Debug for HashMap<K, V, S>
    where\n K: Debug,\n V: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Default for HashMap<K, V, S>
    where\n S: Default,

    source§

    fn default() -> HashMap<K, V, S>

    Creates an empty HashMap<K, V, S>, with the Default value for the hasher.

    \n
    ","Default","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, V, S> Deserialize<'de> for HashMap<K, V, S>
    where\n K: Deserialize<'de> + Eq + Hash,\n V: Deserialize<'de>,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs, const N: usize> DeserializeAs<'de, [(K, V); N]> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<[(K, V); N], <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, [(K, V); N]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BTreeSet<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BTreeSet<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BTreeSet<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, BinaryHeap<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Ord,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<BinaryHeap<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, BinaryHeap<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Box<[(K, V)]>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Box<[(K, V)]>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Box<[(K, V)]>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, V, KU, VU, S> DeserializeAs<'de, HashMap<K, V, S>> for HashMap<KU, VU, S>
    where\n KU: DeserializeAs<'de, K>,\n VU: DeserializeAs<'de, V>,\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashMap<K, V, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashMap>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs, S> DeserializeAs<'de, HashSet<(K, V), S>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,\n (K, V): Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<(K, V), S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet<(K, V), S>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, LinkedList<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<LinkedList<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, LinkedList<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Option<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Option<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Option<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, Vec<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<Vec<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, Vec<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, KAs, V, VAs> DeserializeAs<'de, VecDeque<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: DeserializeAs<'de, K>,\n VAs: DeserializeAs<'de, V>,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<VecDeque<(K, V)>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, VecDeque<(K, V)>>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.4.0 · source§

    impl<'a, K, V, S> Extend<(&'a K, &'a V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Copy,\n V: Copy,\n S: BuildHasher,

    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (&'a K, &'a V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (&'a K, &'a V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(&'a K, &'a V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Extend<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    Inserts all new key-values from the iterator and replaces values with existing\nkeys with new values returned from the iterator.

    \n
    source§

    fn extend<T>(&mut self, iter: T)
    where\n T: IntoIterator<Item = (K, V)>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: (K, V))

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.56.0 · source§

    impl<K, V, const N: usize> From<[(K, V); N]> for HashMap<K, V>
    where\n K: Eq + Hash,

    source§

    fn from(arr: [(K, V); N]) -> HashMap<K, V>

    §Examples
    \n
    use std::collections::HashMap;\n\nlet map1 = HashMap::from([(1, 2), (3, 4)]);\nlet map2: HashMap<_, _> = [(1, 2), (3, 4)].into();\nassert_eq!(map1, map2);
    \n
    ","From<[(K, V); N]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> FromFallibleIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Hash + Eq,\n S: BuildHasher + Default,

    source§

    fn from_fallible_iter<I>(\n it: I,\n) -> Result<HashMap<K, V, S>, <I as IntoFallibleIterator>::Error>
    where\n I: IntoFallibleIterator<Item = (K, V)>,

    Creates a value from a fallible iterator.
    ","FromFallibleIterator<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> FromIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<T>(iter: T) -> HashMap<K, V, S>
    where\n T: IntoIterator<Item = (K, V)>,

    Creates a value from an iterator. Read more
    ","FromIterator<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> FromParallelIterator<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Send,\n V: Send,\n S: BuildHasher + Default + Send,

    Collects (key, value) pairs from a parallel iterator into a\nhashmap. If multiple pairs correspond to the same key, then the\nones produced earlier in the parallel iterator will be\noverwritten, just as with a sequential iterator.

    \n
    §

    fn from_par_iter<I>(par_iter: I) -> HashMap<K, V, S>
    where\n I: IntoParallelIterator<Item = (K, V)>,

    Creates an instance of the collection from the parallel iterator par_iter. Read more
    ","FromParallelIterator<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V> HashMap<K, V>

    1.0.0 · source

    pub fn new() -> HashMap<K, V>

    Creates an empty HashMap.

    \n

    The hash map is initially created with a capacity of 0, so it will not allocate until it\nis first inserted into.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> HashMap<K, V>

    Creates an empty HashMap with at least the specified capacity.

    \n

    The hash map will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash map will not allocate.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::with_capacity(10);
    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n S: BuildHasher,

    source

    pub fn raw_entry_mut(&mut self) -> RawEntryBuilderMut<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched. After this, insertions into a vacant entry\nstill require an owned key to be provided.

    \n

    Raw entries are useful for such exotic situations as:

    \n
      \n
    • Hash memoization
    • \n
    • Deferring the creation of an owned key until it is known to be required
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Because raw entries provide much more low-level control, it’s much easier\nto put the HashMap into an inconsistent state which, while memory-safe,\nwill cause the map to produce seemingly random results. Higher-level and\nmore foolproof APIs like entry should be preferred when possible.

    \n

    In particular, the hash used to initialize the raw entry must still be\nconsistent with the hash of the key that is ultimately stored in the entry.\nThis is because implementations of HashMap may need to recompute hashes\nwhen resizing, at which point only the keys are available.

    \n

    Raw entries give mutable access to the keys. This must not be used\nto modify how the key would compare or hash, as the map will not re-evaluate\nwhere the key should go, meaning the keys may become “lost” if their\nlocation does not reflect their state. For instance, if you change a key\nso that the map now contains keys which compare equal, search may start\nacting erratically, with two keys randomly masking each other. Implementations\nare free to assume this doesn’t happen (within the limits of memory-safety).

    \n
    source

    pub fn raw_entry(&self) -> RawEntryBuilder<'_, K, V, S>

    🔬This is a nightly-only experimental API. (hash_raw_entry)

    Creates a raw immutable entry builder for the HashMap.

    \n

    Raw entries provide the lowest level of control for searching and\nmanipulating a map. They must be manually initialized with a hash and\nthen manually searched.

    \n

    This is useful for

    \n
      \n
    • Hash memoization
    • \n
    • Using a search key that doesn’t work with the Borrow trait
    • \n
    • Using custom comparison logic without newtype wrappers
    • \n
    \n

    Unless you are in such a situation, higher-level and more foolproof APIs like\nget should be preferred.

    \n

    Immutable raw entries have very limited use; you might instead want raw_entry_mut.

    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> HashMap<K, V, S>

    1.7.0 (const: unstable) · source

    pub fn with_hasher(hash_builder: S) -> HashMap<K, V, S>

    Creates an empty HashMap which will use the given hash builder to hash\nkeys.

    \n

    The created map has the default initial capacity.

    \n

    Warning: hash_builder is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_hasher(s);\nmap.insert(1, 2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashMap<K, V, S>

    Creates an empty HashMap with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash map will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash map will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashMaps to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hasher passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut map = HashMap::with_capacity_and_hasher(10, s);\nmap.insert(1, 2);
    \n
    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the map can hold without reallocating.

    \n

    This number is a lower bound; the HashMap<K, V> might be able to hold\nmore, but is guaranteed to be able to hold at least this many.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet map: HashMap<i32, i32> = HashMap::with_capacity(100);\nassert!(map.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn keys(&self) -> Keys<'_, K, V>

    An iterator visiting all keys in arbitrary order.\nThe iterator element type is &'a K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor key in map.keys() {\n    println!(\"{key}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_keys(self) -> IntoKeys<K, V>

    Creates a consuming iterator visiting all the keys in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is K.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<&str> = map.into_keys().collect();\n// The `IntoKeys` iterator produces keys in arbitrary order, so the\n// keys must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [\"a\", \"b\", \"c\"]);
    \n
    §Performance
    \n

    In the current implementation, iterating over keys takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn values(&self) -> Values<'_, K, V>

    An iterator visiting all values in arbitrary order.\nThe iterator element type is &'a V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.10.0 · source

    pub fn values_mut(&mut self) -> ValuesMut<'_, K, V>

    An iterator visiting all values mutably in arbitrary order.\nThe iterator element type is &'a mut V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor val in map.values_mut() {\n    *val = *val + 10;\n}\n\nfor val in map.values() {\n    println!(\"{val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.54.0 · source

    pub fn into_values(self) -> IntoValues<K, V>

    Creates a consuming iterator visiting all the values in arbitrary order.\nThe map cannot be used after calling this.\nThe iterator element type is V.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nlet mut vec: Vec<i32> = map.into_values().collect();\n// The `IntoValues` iterator produces values in arbitrary order, so\n// the values must be sorted to test them against a sorted array.\nvec.sort_unstable();\nassert_eq!(vec, [1, 2, 3]);
    \n
    §Performance
    \n

    In the current implementation, iterating over values takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order.\nThe iterator element type is (&'a K, &'a V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\nfor (key, val) in map.iter() {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn iter_mut(&mut self) -> IterMut<'_, K, V>

    An iterator visiting all key-value pairs in arbitrary order,\nwith mutable references to the values.\nThe iterator element type is (&'a K, &'a mut V).

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Update all values\nfor (_, val) in map.iter_mut() {\n    *val *= 2;\n}\n\nfor (key, val) in &map {\n    println!(\"key: {key} val: {val}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over map takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the map.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert_eq!(a.len(), 0);\na.insert(1, \"a\");\nassert_eq!(a.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the map contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\nassert!(a.is_empty());\na.insert(1, \"a\");\nassert!(!a.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, K, V>

    Clears the map, returning all key-value pairs as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining key-value pairs. The returned iterator keeps a\nmutable borrow on the map to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.insert(2, \"b\");\n\nfor (k, v) in a.drain().take(1) {\n    assert!(k == 1 || k == 2);\n    assert!(v == \"a\" || v == \"b\");\n}\n\nassert!(a.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, K, V, F>
    where\n F: FnMut(&K, &mut V) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if an element should be removed.

    \n

    If the closure returns true, the element is removed from the map and yielded.\nIf the closure returns false, or panics, the element remains in the map and will not be\nyielded.

    \n

    Note that extract_if lets you mutate every value in the filter closure, regardless of\nwhether you choose to keep or remove it.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a map into even and odd keys, reusing the original map:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x)).collect();\nlet extracted: HashMap<i32, i32> = map.extract_if(|k, _v| k % 2 == 0).collect();\n\nlet mut evens = extracted.keys().copied().collect::<Vec<_>>();\nlet mut odds = map.keys().copied().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&K, &mut V) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all pairs (k, v) for which f(&k, &mut v) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();\nmap.retain(|&k, _| k % 2 == 0);\nassert_eq!(map.len(), 4);
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the map, removing all key-value pairs. Keeps the allocated memory\nfor reuse.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut a = HashMap::new();\na.insert(1, \"a\");\na.clear();\nassert!(a.is_empty());
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the map’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet map: HashMap<i32, i32> = HashMap::with_hasher(hasher);\nlet hasher: &RandomState = map.hasher();
    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, S> HashMap<K, V, S>
    where\n K: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashMap;\nlet mut map: HashMap<&str, i32> = HashMap::new();\nmap.reserve(10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashMap. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<&str, isize> = HashMap::new();\nmap.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the map as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to_fit();\nassert!(map.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the map with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map: HashMap<i32, i32> = HashMap::with_capacity(100);\nmap.insert(1, 2);\nmap.insert(3, 4);\nassert!(map.capacity() >= 100);\nmap.shrink_to(10);\nassert!(map.capacity() >= 10);\nmap.shrink_to(0);\nassert!(map.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn entry(&mut self, key: K) -> Entry<'_, K, V>

    Gets the given key’s corresponding entry in the map for in-place manipulation.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut letters = HashMap::new();\n\nfor ch in \"a short treatise on fungi\".chars() {\n    letters.entry(ch).and_modify(|counter| *counter += 1).or_insert(1);\n}\n\nassert_eq!(letters[&'s'], 2);\nassert_eq!(letters[&'t'], 3);\nassert_eq!(letters[&'u'], 1);\nassert_eq!(letters.get(&'y'), None);
    \n
    1.0.0 · source

    pub fn get<Q>(&self, k: &Q) -> Option<&V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get(&1), Some(&\"a\"));\nassert_eq!(map.get(&2), None);
    \n
    1.40.0 · source

    pub fn get_key_value<Q>(&self, k: &Q) -> Option<(&K, &V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns the key-value pair corresponding to the supplied key.

    \n

    The supplied key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.get_key_value(&1), Some((&1, &\"a\")));\nassert_eq!(map.get_key_value(&2), None);
    \n
    source

    pub fn get_many_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once.

    \n

    Returns an array of length N with the results of each query. For soundness, at most one\nmutable reference will be returned to any value. None will be returned if any of the\nkeys are duplicates or missing.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);\n\n// Duplicate keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Athenæum\",\n]);\nassert_eq!(got, None);
    \n
    source

    pub unsafe fn get_many_unchecked_mut<Q, const N: usize>(\n &mut self,\n ks: [&Q; N],\n) -> Option<[&mut V; N]>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    🔬This is a nightly-only experimental API. (map_many_mut)

    Attempts to get mutable references to N values in the map at once, without validating that\nthe values are unique.

    \n

    Returns an array of length N with the results of each query. None will be returned if\nany of the keys are missing.

    \n

    For a safe alternative see get_many_mut.

    \n
    §Safety
    \n

    Calling this method with overlapping keys is undefined behavior even if the resulting\nreferences are not used.

    \n
    §Examples
    \n
    #![feature(map_many_mut)]\nuse std::collections::HashMap;\n\nlet mut libraries = HashMap::new();\nlibraries.insert(\"Bodleian Library\".to_string(), 1602);\nlibraries.insert(\"Athenæum\".to_string(), 1807);\nlibraries.insert(\"Herzogin-Anna-Amalia-Bibliothek\".to_string(), 1691);\nlibraries.insert(\"Library of Congress\".to_string(), 1800);\n\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"Library of Congress\",\n]);\nassert_eq!(\n    got,\n    Some([\n        &mut 1807,\n        &mut 1800,\n    ]),\n);\n\n// Missing keys result in None\nlet got = libraries.get_many_mut([\n    \"Athenæum\",\n    \"New York Public Library\",\n]);\nassert_eq!(got, None);
    \n
    1.0.0 · source

    pub fn contains_key<Q>(&self, k: &Q) -> bool
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the map contains a value for the specified key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.contains_key(&1), true);\nassert_eq!(map.contains_key(&2), false);
    \n
    1.0.0 · source

    pub fn get_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a mutable reference to the value corresponding to the key.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nif let Some(x) = map.get_mut(&1) {\n    *x = \"b\";\n}\nassert_eq!(map[&1], \"b\");
    \n
    1.0.0 · source

    pub fn insert(&mut self, k: K, v: V) -> Option<V>

    Inserts a key-value pair into the map.

    \n

    If the map did not have this key present, None is returned.

    \n

    If the map did have this key present, the value is updated, and the old\nvalue is returned. The key is not updated, though; this matters for\ntypes that can be == without being identical. See the module-level\ndocumentation for more.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.insert(37, \"a\"), None);\nassert_eq!(map.is_empty(), false);\n\nmap.insert(37, \"b\");\nassert_eq!(map.insert(37, \"c\"), Some(\"b\"));\nassert_eq!(map[&37], \"c\");
    \n
    source

    pub fn try_insert(\n &mut self,\n key: K,\n value: V,\n) -> Result<&mut V, OccupiedError<'_, K, V>>

    🔬This is a nightly-only experimental API. (map_try_insert)

    Tries to insert a key-value pair into the map, and returns\na mutable reference to the value in the entry.

    \n

    If the map already had this key present, nothing is updated, and\nan error containing the occupied entry and the value is returned.

    \n
    §Examples
    \n

    Basic usage:

    \n\n
    #![feature(map_try_insert)]\n\nuse std::collections::HashMap;\n\nlet mut map = HashMap::new();\nassert_eq!(map.try_insert(37, \"a\").unwrap(), &\"a\");\n\nlet err = map.try_insert(37, \"b\").unwrap_err();\nassert_eq!(err.entry.key(), &37);\nassert_eq!(err.entry.get(), &\"a\");\nassert_eq!(err.value, \"b\");
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, k: &Q) -> Option<V>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the value at the key if the key\nwas previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove(&1), Some(\"a\"));\nassert_eq!(map.remove(&1), None);
    \n
    1.27.0 · source

    pub fn remove_entry<Q>(&mut self, k: &Q) -> Option<(K, V)>
    where\n K: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a key from the map, returning the stored key and value if the\nkey was previously in the map.

    \n

    The key may be any borrowed form of the map’s key type, but\nHash and Eq on the borrowed form must match those for\nthe key type.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet mut map = HashMap::new();\nmap.insert(1, \"a\");\nassert_eq!(map.remove_entry(&1), Some((1, \"a\")));\nassert_eq!(map.remove(&1), None);
    \n
    ",0,"massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, Q, V, S> Index<&Q> for HashMap<K, V, S>
    where\n K: Eq + Hash + Borrow<Q>,\n Q: Eq + Hash + ?Sized,\n S: BuildHasher,

    source§

    fn index(&self, key: &Q) -> &V

    Returns a reference to the value corresponding to the supplied key.

    \n
    §Panics
    \n

    Panics if the key is not present in the HashMap.

    \n
    §

    type Output = V

    The returned type after indexing.
    ","Index<&Q>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<'de, K, V, S, E> IntoDeserializer<'de, E> for HashMap<K, V, S>
    where\n K: IntoDeserializer<'de, E> + Eq + Hash,\n V: IntoDeserializer<'de, E>,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = MapDeserializer<'de, <HashMap<K, V, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashMap<K, V, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> IntoIterator for HashMap<K, V, S>

    source§

    fn into_iter(self) -> IntoIter<K, V>

    Creates a consuming iterator, that is, one that moves each key-value\npair out of the map in arbitrary order. The map cannot be used after\ncalling this.

    \n
    §Examples
    \n
    use std::collections::HashMap;\n\nlet map = HashMap::from([\n    (\"a\", 1),\n    (\"b\", 2),\n    (\"c\", 3),\n]);\n\n// Not possible with .iter()\nlet vec: Vec<(&str, i32)> = map.into_iter().collect();
    \n
    §

    type Item = (K, V)

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<K, V>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> IntoParallelIterator for HashMap<K, V, S>
    where\n K: Hash + Eq + Send,\n V: Send,\n S: BuildHasher,

    §

    type Item = <HashMap<K, V, S> as IntoIterator>::Item

    The type of item that the parallel iterator will produce.
    §

    type Iter = IntoIter<K, V>

    The parallel iterator type that will be created.
    §

    fn into_par_iter(self) -> <HashMap<K, V, S> as IntoParallelIterator>::Iter

    Converts self into a parallel iterator. Read more
    ","IntoParallelIterator","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, H> JsonSchema for HashMap<K, V, H>
    where\n V: JsonSchema,

    §

    fn is_referenceable() -> bool

    Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
    §

    fn schema_name() -> String

    The name of the generated JSON Schema. Read more
    §

    fn schema_id() -> Cow<'static, str>

    Returns a string that uniquely identifies the schema produced by this type. Read more
    §

    fn json_schema(gen: &mut SchemaGenerator) -> Schema

    Generates a JSON Schema for this type. Read more
    ","JsonSchema","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<'a, K, V, S> ParallelExtend<(&'a K, &'a V)> for HashMap<K, V, S>
    where\n K: 'a + Copy + Eq + Hash + Send + Sync,\n V: 'a + Copy + Send + Sync,\n S: BuildHasher + Send,

    Extends a hash map with copied items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = (&'a K, &'a V)>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend<(&'a K, &'a V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S> ParallelExtend<(K, V)> for HashMap<K, V, S>
    where\n K: Eq + Hash + Send,\n V: Send,\n S: BuildHasher + Send,

    Extends a hash map with items from a parallel iterator.

    \n
    §

    fn par_extend<I>(&mut self, par_iter: I)
    where\n I: IntoParallelIterator<Item = (K, V)>,

    Extends an instance of the collection with the elements drawn\nfrom the parallel iterator par_iter. Read more
    ","ParallelExtend<(K, V)>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, AK, AV> PartialEq<ArchivedHashMap<AK, AV>> for HashMap<K, V>
    where\n K: Hash + Eq + Borrow<AK>,\n AK: Hash + Eq,\n AV: PartialEq<V>,

    §

    fn eq(&self, other: &ArchivedHashMap<AK, AV>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> PartialEq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: PartialEq,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashMap<K, V, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    §

    impl<K, V, S, RandomState> Serialize<S> for HashMap<K, V, RandomState>
    where\n K: Serialize<S> + Hash + Eq,\n <K as Archive>::Archived: Hash + Eq,\n V: Serialize<S>,\n S: Serializer + ScratchSpace + ?Sized,

    §

    fn serialize(\n &self,\n serializer: &mut S,\n) -> Result<<HashMap<K, V, RandomState> as Archive>::Resolver, <S as Fallible>::Error>

    Writes the dependencies for the object and returns a resolver that can create the archived\ntype.
    ","Serialize","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, V, H> Serialize for HashMap<K, V, H>
    where\n K: Serialize,\n V: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<[(K, V)]> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V)],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V)]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs, const N: usize> SerializeAs<[(K, V); N]> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &[(K, V); N],\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs<[(K, V); N]>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BTreeSet<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BTreeSet<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<BinaryHeap<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &BinaryHeap<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Box<[(K, V)]>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Box<[(K, V)]>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KU, V, VU, H> SerializeAs<HashMap<K, V, H>> for HashMap<KU, VU, H>
    where\n KU: SerializeAs<K>,\n VU: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashMap<K, V, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs, H> SerializeAs<HashSet<(K, V), H>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &HashSet<(K, V), H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<LinkedList<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &LinkedList<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Option<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Option<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<Vec<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &Vec<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    source§

    impl<K, KAs, V, VAs> SerializeAs<VecDeque<(K, V)>> for HashMap<KAs, VAs>
    where\n KAs: SerializeAs<K>,\n VAs: SerializeAs<V>,

    source§

    fn serialize_as<S>(\n source: &VecDeque<(K, V)>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.0.0 · source§

    impl<K, V, S> Eq for HashMap<K, V, S>
    where\n K: Eq + Hash,\n V: Eq,\n S: BuildHasher,

    ","Eq","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"],["
    1.36.0 · source§

    impl<K, V, S> UnwindSafe for HashMap<K, V, S>
    where\n K: UnwindSafe,\n V: UnwindSafe,\n S: UnwindSafe,

    ","UnwindSafe","massa_protocol_worker::handlers::peer_handler::models::InitialPeers"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file diff --git a/type.impl/std/collections/hash/set/struct.HashSet.js b/type.impl/std/collections/hash/set/struct.HashSet.js index 416527c66a9..f6bf84e91df 100644 --- a/type.impl/std/collections/hash/set/struct.HashSet.js +++ b/type.impl/std/collections/hash/set/struct.HashSet.js @@ -1,4 +1,4 @@ (function() {var type_impls = { -"massa_executed_ops":[["
    1.0.0 · source§

    impl<T, S> Clone for HashSet<T, S>
    where\n T: Clone,\n S: Clone,

    source§

    fn clone_from(&mut self, other: &HashSet<T, S>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible.

    \n
    source§

    fn clone(&self) -> HashSet<T, S>

    Returns a copy of the value. Read more
    ","Clone","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Debug for HashSet<T, S>
    where\n T: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Default for HashSet<T, S>
    where\n S: Default,

    source§

    fn default() -> HashSet<T, S>

    Creates an empty HashSet<T, S> with the Default value for the hasher.

    \n
    ","Default","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<'de, T, S> Deserialize<'de> for HashSet<T, S>
    where\n T: Deserialize<'de> + Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<'de, T, U, S> DeserializeAs<'de, HashSet<T, S>> for HashSet<U, S>
    where\n U: DeserializeAs<'de, T>,\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.4.0 · source§

    impl<'a, T, S> Extend<&'a T> for HashSet<T, S>
    where\n T: 'a + Eq + Hash + Copy,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Extend<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<N, S> FilterNode<N> for HashSet<N, S>
    where\n HashSet<N, S>: VisitMap<N>,

    This filter includes the nodes that are contained in the set.

    \n
    source§

    fn include_node(&self, n: N) -> bool

    Return true to have the node be part of the graph
    ","FilterNode","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.56.0 · source§

    impl<T, const N: usize> From<[T; N]> for HashSet<T>
    where\n T: Eq + Hash,

    source§

    fn from(arr: [T; N]) -> HashSet<T>

    §Examples
    \n
    use std::collections::HashSet;\n\nlet set1 = HashSet::from([1, 2, 3, 4]);\nlet set2: HashSet<_> = [1, 2, 3, 4].into();\nassert_eq!(set1, set2);
    \n
    ","From<[T; N]>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> FromIterator<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<I>(iter: I) -> HashSet<T, S>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T> HashSet<T>

    1.0.0 · source

    pub fn new() -> HashSet<T>

    Creates an empty HashSet.

    \n

    The hash set is initially created with a capacity of 0, so it will not allocate until it\nis first inserted into.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> HashSet<T>

    Creates an empty HashSet with at least the specified capacity.

    \n

    The hash set will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash set will not allocate.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::with_capacity(10);\nassert!(set.capacity() >= 10);
    \n
    ",0,"massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, S> HashSet<T, S>

    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the set can hold without reallocating.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::with_capacity(100);\nassert!(set.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    An iterator visiting all elements in arbitrary order.\nThe iterator element type is &'a T.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\");\nset.insert(\"b\");\n\n// Will print in an arbitrary order.\nfor x in set.iter() {\n    println!(\"{x}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over set takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the set.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert_eq!(v.len(), 0);\nv.insert(1);\nassert_eq!(v.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the set contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert!(v.is_empty());\nv.insert(1);\nassert!(!v.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, T>

    Clears the set, returning all elements as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining elements. The returned iterator keeps a mutable\nborrow on the set to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert!(!set.is_empty());\n\n// print 1, 2, 3 in an arbitrary order\nfor i in set.drain() {\n    println!(\"{i}\");\n}\n\nassert!(set.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, T, F>
    where\n F: FnMut(&T) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if a value should be removed.

    \n

    If the closure returns true, then the value is removed and yielded.\nIf the closure returns false, the value will remain in the list and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a set into even and odd values, reusing the original set:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashSet;\n\nlet mut set: HashSet<i32> = (0..8).collect();\nlet extracted: HashSet<i32> = set.extract_if(|v| v % 2 == 0).collect();\n\nlet mut evens = extracted.into_iter().collect::<Vec<_>>();\nlet mut odds = set.into_iter().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3, 4, 5, 6]);\nset.retain(|&k| k % 2 == 0);\nassert_eq!(set, HashSet::from([2, 4, 6]));
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the set, removing all values.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nv.insert(1);\nv.clear();\nassert!(v.is_empty());
    \n
    1.7.0 (const: unstable) · source

    pub fn with_hasher(hasher: S) -> HashSet<T, S>

    Creates a new empty hash set which will use the given hasher to hash\nkeys.

    \n

    The hash set is also created with the default initial capacity.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_hasher(s);\nset.insert(2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashSet<T, S>

    Creates an empty HashSet with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash set will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash set will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_capacity_and_hasher(10, s);\nset.insert(1);
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the set’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet set: HashSet<i32> = HashSet::with_hasher(hasher);\nlet hasher: &RandomState = set.hasher();
    \n
    ",0,"massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, S> HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.reserve(10);\nassert!(set.capacity() >= 10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the set as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to_fit();\nassert!(set.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the set with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to(10);\nassert!(set.capacity() >= 10);\nset.shrink_to(0);\nassert!(set.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Difference<'a, T, S>

    Visits the values representing the difference,\ni.e., the values that are in self but not in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Can be seen as `a - b`.\nfor x in a.difference(&b) {\n    println!(\"{x}\"); // Print 1\n}\n\nlet diff: HashSet<_> = a.difference(&b).collect();\nassert_eq!(diff, [1].iter().collect());\n\n// Note that difference is not symmetric,\n// and `b - a` means something else:\nlet diff: HashSet<_> = b.difference(&a).collect();\nassert_eq!(diff, [4].iter().collect());
    \n
    1.0.0 · source

    pub fn symmetric_difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> SymmetricDifference<'a, T, S>

    Visits the values representing the symmetric difference,\ni.e., the values that are in self or in other but not in both.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 4 in arbitrary order.\nfor x in a.symmetric_difference(&b) {\n    println!(\"{x}\");\n}\n\nlet diff1: HashSet<_> = a.symmetric_difference(&b).collect();\nlet diff2: HashSet<_> = b.symmetric_difference(&a).collect();\n\nassert_eq!(diff1, diff2);\nassert_eq!(diff1, [1, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn intersection<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Intersection<'a, T, S>

    Visits the values representing the intersection,\ni.e., the values that are both in self and other.

    \n

    When an equal element is present in self and other\nthen the resulting Intersection may yield references to\none or the other. This can be relevant if T contains fields which\nare not compared by its Eq implementation, and may hold different\nvalue between the two equal copies of T in the two sets.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 2, 3 in arbitrary order.\nfor x in a.intersection(&b) {\n    println!(\"{x}\");\n}\n\nlet intersection: HashSet<_> = a.intersection(&b).collect();\nassert_eq!(intersection, [2, 3].iter().collect());
    \n
    1.0.0 · source

    pub fn union<'a>(&'a self, other: &'a HashSet<T, S>) -> Union<'a, T, S>

    Visits the values representing the union,\ni.e., all the values in self or other, without duplicates.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 2, 3, 4 in arbitrary order.\nfor x in a.union(&b) {\n    println!(\"{x}\");\n}\n\nlet union: HashSet<_> = a.union(&b).collect();\nassert_eq!(union, [1, 2, 3, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn contains<Q>(&self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the set contains a value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.contains(&1), true);\nassert_eq!(set.contains(&4), false);
    \n
    1.9.0 · source

    pub fn get<Q>(&self, value: &Q) -> Option<&T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value in the set, if any, that is equal to the given value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.get(&2), Some(&2));\nassert_eq!(set.get(&4), None);
    \n
    source

    pub fn get_or_insert(&mut self, value: T) -> &T

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts the given value into the set if it is not present, then\nreturns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.len(), 3);\nassert_eq!(set.get_or_insert(2), &2);\nassert_eq!(set.get_or_insert(100), &100);\nassert_eq!(set.len(), 4); // 100 was inserted
    \n
    source

    pub fn get_or_insert_owned<Q>(&mut self, value: &Q) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ToOwned<Owned = T> + ?Sized,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts an owned copy of the given value into the set if it is not\npresent, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_owned(pet);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    source

    pub fn get_or_insert_with<Q, F>(&mut self, value: &Q, f: F) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,\n F: FnOnce(&Q) -> T,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts a value computed from f into the set if the given value is\nnot present, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_with(pet, str::to_owned);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    1.0.0 · source

    pub fn is_disjoint(&self, other: &HashSet<T, S>) -> bool

    Returns true if self has no elements in common with other.\nThis is equivalent to checking for an empty intersection.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet a = HashSet::from([1, 2, 3]);\nlet mut b = HashSet::new();\n\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(4);\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(1);\nassert_eq!(a.is_disjoint(&b), false);
    \n
    1.0.0 · source

    pub fn is_subset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a subset of another,\ni.e., other contains at least all the values in self.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sup = HashSet::from([1, 2, 3]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_subset(&sup), true);\nset.insert(2);\nassert_eq!(set.is_subset(&sup), true);\nset.insert(4);\nassert_eq!(set.is_subset(&sup), false);
    \n
    1.0.0 · source

    pub fn is_superset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a superset of another,\ni.e., self contains at least all the values in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sub = HashSet::from([1, 2]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(0);\nset.insert(1);\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(2);\nassert_eq!(set.is_superset(&sub), true);
    \n
    1.0.0 · source

    pub fn insert(&mut self, value: T) -> bool

    Adds a value to the set.

    \n

    Returns whether the value was newly inserted. That is:

    \n
      \n
    • If the set did not previously contain this value, true is returned.
    • \n
    • If the set already contained this value, false is returned,\nand the set is not modified: original value is not replaced,\nand the value passed as argument is dropped.
    • \n
    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nassert_eq!(set.insert(2), true);\nassert_eq!(set.insert(2), false);\nassert_eq!(set.len(), 1);
    \n
    1.9.0 · source

    pub fn replace(&mut self, value: T) -> Option<T>

    Adds a value to the set, replacing the existing value, if any, that is equal to the given\none. Returns the replaced value.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\nset.insert(Vec::<i32>::new());\n\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 0);\nset.replace(Vec::with_capacity(10));\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 10);
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a value from the set. Returns whether the value was\npresent in the set.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nset.insert(2);\nassert_eq!(set.remove(&2), true);\nassert_eq!(set.remove(&2), false);
    \n
    1.9.0 · source

    pub fn take<Q>(&mut self, value: &Q) -> Option<T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes and returns the value in the set, if any, that is equal to the given one.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.take(&2), Some(2));\nassert_eq!(set.take(&2), None);
    \n
    ",0,"massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<'de, T, S, E> IntoDeserializer<'de, E> for HashSet<T, S>
    where\n T: IntoDeserializer<'de, E> + Eq + Hash,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<HashSet<T, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashSet<T, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> IntoIterator for HashSet<T, S>

    source§

    fn into_iter(self) -> IntoIter<T>

    Creates a consuming iterator, that is, one that moves each value out\nof the set in arbitrary order. The set cannot be used after calling\nthis.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\".to_string());\nset.insert(\"b\".to_string());\n\n// Not possible to collect to a Vec<String> with a regular `.iter()`.\nlet v: Vec<String> = set.into_iter().collect();\n\n// Will print in an arbitrary order.\nfor x in &v {\n    println!(\"{x}\");\n}
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> PartialEq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashSet<T, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, H> Serialize for HashSet<T, H>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, U, H> SerializeAs<HashSet<T, H>> for HashSet<U, H>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &HashSet<T, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<N, S> VisitMap<N> for HashSet<N, S>
    where\n N: Hash + Eq,\n S: BuildHasher,

    source§

    fn visit(&mut self, x: N) -> bool

    Mark a as visited. Read more
    source§

    fn is_visited(&self, x: &N) -> bool

    Return whether a has been visited before.
    ","VisitMap","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Eq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    ","Eq","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"]], -"massa_models":[["
    1.0.0 · source§

    impl<T, S> Clone for HashSet<T, S>
    where\n T: Clone,\n S: Clone,

    source§

    fn clone_from(&mut self, other: &HashSet<T, S>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible.

    \n
    source§

    fn clone(&self) -> HashSet<T, S>

    Returns a copy of the value. Read more
    ","Clone","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Debug for HashSet<T, S>
    where\n T: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Default for HashSet<T, S>
    where\n S: Default,

    source§

    fn default() -> HashSet<T, S>

    Creates an empty HashSet<T, S> with the Default value for the hasher.

    \n
    ","Default","massa_models::prehash::PreHashSet"],["
    source§

    impl<'de, T, S> Deserialize<'de> for HashSet<T, S>
    where\n T: Deserialize<'de> + Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::prehash::PreHashSet"],["
    source§

    impl<'de, T, U, S> DeserializeAs<'de, HashSet<T, S>> for HashSet<U, S>
    where\n U: DeserializeAs<'de, T>,\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet>","massa_models::prehash::PreHashSet"],["
    1.4.0 · source§

    impl<'a, T, S> Extend<&'a T> for HashSet<T, S>
    where\n T: 'a + Eq + Hash + Copy,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Extend<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_models::prehash::PreHashSet"],["
    source§

    impl<N, S> FilterNode<N> for HashSet<N, S>
    where\n HashSet<N, S>: VisitMap<N>,

    This filter includes the nodes that are contained in the set.

    \n
    source§

    fn include_node(&self, n: N) -> bool

    Return true to have the node be part of the graph
    ","FilterNode","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> FromIterator<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<I>(iter: I) -> HashSet<T, S>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_models::prehash::PreHashSet"],["
    source§

    impl<T, S> HashSet<T, S>

    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the set can hold without reallocating.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::with_capacity(100);\nassert!(set.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    An iterator visiting all elements in arbitrary order.\nThe iterator element type is &'a T.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\");\nset.insert(\"b\");\n\n// Will print in an arbitrary order.\nfor x in set.iter() {\n    println!(\"{x}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over set takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the set.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert_eq!(v.len(), 0);\nv.insert(1);\nassert_eq!(v.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the set contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert!(v.is_empty());\nv.insert(1);\nassert!(!v.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, T>

    Clears the set, returning all elements as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining elements. The returned iterator keeps a mutable\nborrow on the set to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert!(!set.is_empty());\n\n// print 1, 2, 3 in an arbitrary order\nfor i in set.drain() {\n    println!(\"{i}\");\n}\n\nassert!(set.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, T, F>
    where\n F: FnMut(&T) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if a value should be removed.

    \n

    If the closure returns true, then the value is removed and yielded.\nIf the closure returns false, the value will remain in the list and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a set into even and odd values, reusing the original set:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashSet;\n\nlet mut set: HashSet<i32> = (0..8).collect();\nlet extracted: HashSet<i32> = set.extract_if(|v| v % 2 == 0).collect();\n\nlet mut evens = extracted.into_iter().collect::<Vec<_>>();\nlet mut odds = set.into_iter().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3, 4, 5, 6]);\nset.retain(|&k| k % 2 == 0);\nassert_eq!(set, HashSet::from([2, 4, 6]));
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the set, removing all values.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nv.insert(1);\nv.clear();\nassert!(v.is_empty());
    \n
    1.7.0 (const: unstable) · source

    pub fn with_hasher(hasher: S) -> HashSet<T, S>

    Creates a new empty hash set which will use the given hasher to hash\nkeys.

    \n

    The hash set is also created with the default initial capacity.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_hasher(s);\nset.insert(2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashSet<T, S>

    Creates an empty HashSet with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash set will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash set will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_capacity_and_hasher(10, s);\nset.insert(1);
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the set’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet set: HashSet<i32> = HashSet::with_hasher(hasher);\nlet hasher: &RandomState = set.hasher();
    \n
    ",0,"massa_models::prehash::PreHashSet"],["
    source§

    impl<T, S> HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.reserve(10);\nassert!(set.capacity() >= 10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the set as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to_fit();\nassert!(set.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the set with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to(10);\nassert!(set.capacity() >= 10);\nset.shrink_to(0);\nassert!(set.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Difference<'a, T, S>

    Visits the values representing the difference,\ni.e., the values that are in self but not in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Can be seen as `a - b`.\nfor x in a.difference(&b) {\n    println!(\"{x}\"); // Print 1\n}\n\nlet diff: HashSet<_> = a.difference(&b).collect();\nassert_eq!(diff, [1].iter().collect());\n\n// Note that difference is not symmetric,\n// and `b - a` means something else:\nlet diff: HashSet<_> = b.difference(&a).collect();\nassert_eq!(diff, [4].iter().collect());
    \n
    1.0.0 · source

    pub fn symmetric_difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> SymmetricDifference<'a, T, S>

    Visits the values representing the symmetric difference,\ni.e., the values that are in self or in other but not in both.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 4 in arbitrary order.\nfor x in a.symmetric_difference(&b) {\n    println!(\"{x}\");\n}\n\nlet diff1: HashSet<_> = a.symmetric_difference(&b).collect();\nlet diff2: HashSet<_> = b.symmetric_difference(&a).collect();\n\nassert_eq!(diff1, diff2);\nassert_eq!(diff1, [1, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn intersection<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Intersection<'a, T, S>

    Visits the values representing the intersection,\ni.e., the values that are both in self and other.

    \n

    When an equal element is present in self and other\nthen the resulting Intersection may yield references to\none or the other. This can be relevant if T contains fields which\nare not compared by its Eq implementation, and may hold different\nvalue between the two equal copies of T in the two sets.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 2, 3 in arbitrary order.\nfor x in a.intersection(&b) {\n    println!(\"{x}\");\n}\n\nlet intersection: HashSet<_> = a.intersection(&b).collect();\nassert_eq!(intersection, [2, 3].iter().collect());
    \n
    1.0.0 · source

    pub fn union<'a>(&'a self, other: &'a HashSet<T, S>) -> Union<'a, T, S>

    Visits the values representing the union,\ni.e., all the values in self or other, without duplicates.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 2, 3, 4 in arbitrary order.\nfor x in a.union(&b) {\n    println!(\"{x}\");\n}\n\nlet union: HashSet<_> = a.union(&b).collect();\nassert_eq!(union, [1, 2, 3, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn contains<Q>(&self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the set contains a value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.contains(&1), true);\nassert_eq!(set.contains(&4), false);
    \n
    1.9.0 · source

    pub fn get<Q>(&self, value: &Q) -> Option<&T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value in the set, if any, that is equal to the given value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.get(&2), Some(&2));\nassert_eq!(set.get(&4), None);
    \n
    source

    pub fn get_or_insert(&mut self, value: T) -> &T

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts the given value into the set if it is not present, then\nreturns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.len(), 3);\nassert_eq!(set.get_or_insert(2), &2);\nassert_eq!(set.get_or_insert(100), &100);\nassert_eq!(set.len(), 4); // 100 was inserted
    \n
    source

    pub fn get_or_insert_owned<Q>(&mut self, value: &Q) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ToOwned<Owned = T> + ?Sized,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts an owned copy of the given value into the set if it is not\npresent, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_owned(pet);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    source

    pub fn get_or_insert_with<Q, F>(&mut self, value: &Q, f: F) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,\n F: FnOnce(&Q) -> T,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts a value computed from f into the set if the given value is\nnot present, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_with(pet, str::to_owned);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    1.0.0 · source

    pub fn is_disjoint(&self, other: &HashSet<T, S>) -> bool

    Returns true if self has no elements in common with other.\nThis is equivalent to checking for an empty intersection.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet a = HashSet::from([1, 2, 3]);\nlet mut b = HashSet::new();\n\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(4);\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(1);\nassert_eq!(a.is_disjoint(&b), false);
    \n
    1.0.0 · source

    pub fn is_subset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a subset of another,\ni.e., other contains at least all the values in self.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sup = HashSet::from([1, 2, 3]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_subset(&sup), true);\nset.insert(2);\nassert_eq!(set.is_subset(&sup), true);\nset.insert(4);\nassert_eq!(set.is_subset(&sup), false);
    \n
    1.0.0 · source

    pub fn is_superset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a superset of another,\ni.e., self contains at least all the values in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sub = HashSet::from([1, 2]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(0);\nset.insert(1);\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(2);\nassert_eq!(set.is_superset(&sub), true);
    \n
    1.0.0 · source

    pub fn insert(&mut self, value: T) -> bool

    Adds a value to the set.

    \n

    Returns whether the value was newly inserted. That is:

    \n
      \n
    • If the set did not previously contain this value, true is returned.
    • \n
    • If the set already contained this value, false is returned,\nand the set is not modified: original value is not replaced,\nand the value passed as argument is dropped.
    • \n
    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nassert_eq!(set.insert(2), true);\nassert_eq!(set.insert(2), false);\nassert_eq!(set.len(), 1);
    \n
    1.9.0 · source

    pub fn replace(&mut self, value: T) -> Option<T>

    Adds a value to the set, replacing the existing value, if any, that is equal to the given\none. Returns the replaced value.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\nset.insert(Vec::<i32>::new());\n\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 0);\nset.replace(Vec::with_capacity(10));\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 10);
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a value from the set. Returns whether the value was\npresent in the set.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nset.insert(2);\nassert_eq!(set.remove(&2), true);\nassert_eq!(set.remove(&2), false);
    \n
    1.9.0 · source

    pub fn take<Q>(&mut self, value: &Q) -> Option<T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes and returns the value in the set, if any, that is equal to the given one.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.take(&2), Some(2));\nassert_eq!(set.take(&2), None);
    \n
    ",0,"massa_models::prehash::PreHashSet"],["
    source§

    impl<'de, T, S, E> IntoDeserializer<'de, E> for HashSet<T, S>
    where\n T: IntoDeserializer<'de, E> + Eq + Hash,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<HashSet<T, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashSet<T, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> IntoIterator for HashSet<T, S>

    source§

    fn into_iter(self) -> IntoIter<T>

    Creates a consuming iterator, that is, one that moves each value out\nof the set in arbitrary order. The set cannot be used after calling\nthis.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\".to_string());\nset.insert(\"b\".to_string());\n\n// Not possible to collect to a Vec<String> with a regular `.iter()`.\nlet v: Vec<String> = set.into_iter().collect();\n\n// Will print in an arbitrary order.\nfor x in &v {\n    println!(\"{x}\");\n}
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> PartialEq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashSet<T, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::prehash::PreHashSet"],["
    source§

    impl<T, H> Serialize for HashSet<T, H>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::prehash::PreHashSet"],["
    source§

    impl<T, U, H> SerializeAs<HashSet<T, H>> for HashSet<U, H>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &HashSet<T, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::prehash::PreHashSet"],["
    source§

    impl<N, S> VisitMap<N> for HashSet<N, S>
    where\n N: Hash + Eq,\n S: BuildHasher,

    source§

    fn visit(&mut self, x: N) -> bool

    Mark a as visited. Read more
    source§

    fn is_visited(&self, x: &N) -> bool

    Return whether a has been visited before.
    ","VisitMap","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Eq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    ","Eq","massa_models::prehash::PreHashSet"]] +"massa_executed_ops":[["
    1.0.0 · source§

    impl<T, S> Clone for HashSet<T, S>
    where\n T: Clone,\n S: Clone,

    source§

    fn clone_from(&mut self, other: &HashSet<T, S>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible.

    \n
    source§

    fn clone(&self) -> HashSet<T, S>

    Returns a copy of the value. Read more
    ","Clone","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Debug for HashSet<T, S>
    where\n T: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Default for HashSet<T, S>
    where\n S: Default,

    source§

    fn default() -> HashSet<T, S>

    Creates an empty HashSet<T, S> with the Default value for the hasher.

    \n
    ","Default","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<'de, T, S> Deserialize<'de> for HashSet<T, S>
    where\n T: Deserialize<'de> + Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<'de, T, U, S> DeserializeAs<'de, HashSet<T, S>> for HashSet<U, S>
    where\n U: DeserializeAs<'de, T>,\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.4.0 · source§

    impl<'a, T, S> Extend<&'a T> for HashSet<T, S>
    where\n T: 'a + Eq + Hash + Copy,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Extend<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<N, S> FilterNode<N> for HashSet<N, S>
    where\n HashSet<N, S>: VisitMap<N>,

    This filter includes the nodes that are contained in the set.

    \n
    source§

    fn include_node(&self, n: N) -> bool

    Return true to have the node be part of the graph
    ","FilterNode","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.56.0 · source§

    impl<T, const N: usize> From<[T; N]> for HashSet<T>
    where\n T: Eq + Hash,

    source§

    fn from(arr: [T; N]) -> HashSet<T>

    §Examples
    \n
    use std::collections::HashSet;\n\nlet set1 = HashSet::from([1, 2, 3, 4]);\nlet set2: HashSet<_> = [1, 2, 3, 4].into();\nassert_eq!(set1, set2);
    \n
    ","From<[T; N]>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> FromIterator<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<I>(iter: I) -> HashSet<T, S>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T> HashSet<T>

    1.0.0 · source

    pub fn new() -> HashSet<T>

    Creates an empty HashSet.

    \n

    The hash set is initially created with a capacity of 0, so it will not allocate until it\nis first inserted into.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::new();
    \n
    1.0.0 · source

    pub fn with_capacity(capacity: usize) -> HashSet<T>

    Creates an empty HashSet with at least the specified capacity.

    \n

    The hash set will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash set will not allocate.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::with_capacity(10);\nassert!(set.capacity() >= 10);
    \n
    ",0,"massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, S> HashSet<T, S>

    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the set can hold without reallocating.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::with_capacity(100);\nassert!(set.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    An iterator visiting all elements in arbitrary order.\nThe iterator element type is &'a T.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\");\nset.insert(\"b\");\n\n// Will print in an arbitrary order.\nfor x in set.iter() {\n    println!(\"{x}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over set takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the set.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert_eq!(v.len(), 0);\nv.insert(1);\nassert_eq!(v.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the set contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert!(v.is_empty());\nv.insert(1);\nassert!(!v.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, T>

    Clears the set, returning all elements as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining elements. The returned iterator keeps a mutable\nborrow on the set to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert!(!set.is_empty());\n\n// print 1, 2, 3 in an arbitrary order\nfor i in set.drain() {\n    println!(\"{i}\");\n}\n\nassert!(set.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, T, F>
    where\n F: FnMut(&T) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if a value should be removed.

    \n

    If the closure returns true, then the value is removed and yielded.\nIf the closure returns false, the value will remain in the list and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a set into even and odd values, reusing the original set:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashSet;\n\nlet mut set: HashSet<i32> = (0..8).collect();\nlet extracted: HashSet<i32> = set.extract_if(|v| v % 2 == 0).collect();\n\nlet mut evens = extracted.into_iter().collect::<Vec<_>>();\nlet mut odds = set.into_iter().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3, 4, 5, 6]);\nset.retain(|&k| k % 2 == 0);\nassert_eq!(set, HashSet::from([2, 4, 6]));
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the set, removing all values.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nv.insert(1);\nv.clear();\nassert!(v.is_empty());
    \n
    1.7.0 (const: unstable) · source

    pub fn with_hasher(hasher: S) -> HashSet<T, S>

    Creates a new empty hash set which will use the given hasher to hash\nkeys.

    \n

    The hash set is also created with the default initial capacity.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_hasher(s);\nset.insert(2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashSet<T, S>

    Creates an empty HashSet with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash set will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash set will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_capacity_and_hasher(10, s);\nset.insert(1);
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the set’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet set: HashSet<i32> = HashSet::with_hasher(hasher);\nlet hasher: &RandomState = set.hasher();
    \n
    ",0,"massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, S> HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.reserve(10);\nassert!(set.capacity() >= 10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the set as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to_fit();\nassert!(set.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the set with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to(10);\nassert!(set.capacity() >= 10);\nset.shrink_to(0);\nassert!(set.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Difference<'a, T, S>

    Visits the values representing the difference,\ni.e., the values that are in self but not in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Can be seen as `a - b`.\nfor x in a.difference(&b) {\n    println!(\"{x}\"); // Print 1\n}\n\nlet diff: HashSet<_> = a.difference(&b).collect();\nassert_eq!(diff, [1].iter().collect());\n\n// Note that difference is not symmetric,\n// and `b - a` means something else:\nlet diff: HashSet<_> = b.difference(&a).collect();\nassert_eq!(diff, [4].iter().collect());
    \n
    1.0.0 · source

    pub fn symmetric_difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> SymmetricDifference<'a, T, S>

    Visits the values representing the symmetric difference,\ni.e., the values that are in self or in other but not in both.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 4 in arbitrary order.\nfor x in a.symmetric_difference(&b) {\n    println!(\"{x}\");\n}\n\nlet diff1: HashSet<_> = a.symmetric_difference(&b).collect();\nlet diff2: HashSet<_> = b.symmetric_difference(&a).collect();\n\nassert_eq!(diff1, diff2);\nassert_eq!(diff1, [1, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn intersection<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Intersection<'a, T, S>

    Visits the values representing the intersection,\ni.e., the values that are both in self and other.

    \n

    When an equal element is present in self and other\nthen the resulting Intersection may yield references to\none or the other. This can be relevant if T contains fields which\nare not compared by its Eq implementation, and may hold different\nvalue between the two equal copies of T in the two sets.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 2, 3 in arbitrary order.\nfor x in a.intersection(&b) {\n    println!(\"{x}\");\n}\n\nlet intersection: HashSet<_> = a.intersection(&b).collect();\nassert_eq!(intersection, [2, 3].iter().collect());
    \n
    1.0.0 · source

    pub fn union<'a>(&'a self, other: &'a HashSet<T, S>) -> Union<'a, T, S>

    Visits the values representing the union,\ni.e., all the values in self or other, without duplicates.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 2, 3, 4 in arbitrary order.\nfor x in a.union(&b) {\n    println!(\"{x}\");\n}\n\nlet union: HashSet<_> = a.union(&b).collect();\nassert_eq!(union, [1, 2, 3, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn contains<Q>(&self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the set contains a value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.contains(&1), true);\nassert_eq!(set.contains(&4), false);
    \n
    1.9.0 · source

    pub fn get<Q>(&self, value: &Q) -> Option<&T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value in the set, if any, that is equal to the given value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.get(&2), Some(&2));\nassert_eq!(set.get(&4), None);
    \n
    source

    pub fn get_or_insert(&mut self, value: T) -> &T

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts the given value into the set if it is not present, then\nreturns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.len(), 3);\nassert_eq!(set.get_or_insert(2), &2);\nassert_eq!(set.get_or_insert(100), &100);\nassert_eq!(set.len(), 4); // 100 was inserted
    \n
    source

    pub fn get_or_insert_owned<Q>(&mut self, value: &Q) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ToOwned<Owned = T> + ?Sized,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts an owned copy of the given value into the set if it is not\npresent, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_owned(pet);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    source

    pub fn get_or_insert_with<Q, F>(&mut self, value: &Q, f: F) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,\n F: FnOnce(&Q) -> T,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts a value computed from f into the set if the given value is\nnot present, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_with(pet, str::to_owned);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    1.0.0 · source

    pub fn is_disjoint(&self, other: &HashSet<T, S>) -> bool

    Returns true if self has no elements in common with other.\nThis is equivalent to checking for an empty intersection.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet a = HashSet::from([1, 2, 3]);\nlet mut b = HashSet::new();\n\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(4);\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(1);\nassert_eq!(a.is_disjoint(&b), false);
    \n
    1.0.0 · source

    pub fn is_subset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a subset of another,\ni.e., other contains at least all the values in self.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sup = HashSet::from([1, 2, 3]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_subset(&sup), true);\nset.insert(2);\nassert_eq!(set.is_subset(&sup), true);\nset.insert(4);\nassert_eq!(set.is_subset(&sup), false);
    \n
    1.0.0 · source

    pub fn is_superset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a superset of another,\ni.e., self contains at least all the values in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sub = HashSet::from([1, 2]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(0);\nset.insert(1);\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(2);\nassert_eq!(set.is_superset(&sub), true);
    \n
    1.0.0 · source

    pub fn insert(&mut self, value: T) -> bool

    Adds a value to the set.

    \n

    Returns whether the value was newly inserted. That is:

    \n
      \n
    • If the set did not previously contain this value, true is returned.
    • \n
    • If the set already contained this value, false is returned,\nand the set is not modified: original value is not replaced,\nand the value passed as argument is dropped.
    • \n
    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nassert_eq!(set.insert(2), true);\nassert_eq!(set.insert(2), false);\nassert_eq!(set.len(), 1);
    \n
    1.9.0 · source

    pub fn replace(&mut self, value: T) -> Option<T>

    Adds a value to the set, replacing the existing value, if any, that is equal to the given\none. Returns the replaced value.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\nset.insert(Vec::<i32>::new());\n\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 0);\nset.replace(Vec::with_capacity(10));\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 10);
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a value from the set. Returns whether the value was\npresent in the set.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nset.insert(2);\nassert_eq!(set.remove(&2), true);\nassert_eq!(set.remove(&2), false);
    \n
    1.9.0 · source

    pub fn take<Q>(&mut self, value: &Q) -> Option<T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes and returns the value in the set, if any, that is equal to the given one.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.take(&2), Some(2));\nassert_eq!(set.take(&2), None);
    \n
    ",0,"massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<'de, T, S, E> IntoDeserializer<'de, E> for HashSet<T, S>
    where\n T: IntoDeserializer<'de, E> + Eq + Hash,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<HashSet<T, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashSet<T, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> IntoIterator for HashSet<T, S>

    source§

    fn into_iter(self) -> IntoIter<T>

    Creates a consuming iterator, that is, one that moves each value out\nof the set in arbitrary order. The set cannot be used after calling\nthis.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\".to_string());\nset.insert(\"b\".to_string());\n\n// Not possible to collect to a Vec<String> with a regular `.iter()`.\nlet v: Vec<String> = set.into_iter().collect();\n\n// Will print in an arbitrary order.\nfor x in &v {\n    println!(\"{x}\");\n}
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> PartialEq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashSet<T, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, H> Serialize for HashSet<T, H>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<T, U, H> SerializeAs<HashSet<T, H>> for HashSet<U, H>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &HashSet<T, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    source§

    impl<N, S> VisitMap<N> for HashSet<N, S>
    where\n N: Hash + Eq,\n S: BuildHasher,

    source§

    fn visit(&mut self, x: N) -> bool

    Mark a as visited. Read more
    source§

    fn is_visited(&self, x: &N) -> bool

    Return whether a has been visited before.
    ","VisitMap","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"],["
    1.0.0 · source§

    impl<T, S> Eq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    ","Eq","massa_executed_ops::denunciations_changes::ExecutedDenunciationsChanges"]], +"massa_models":[["
    1.0.0 · source§

    impl<T, S> Clone for HashSet<T, S>
    where\n T: Clone,\n S: Clone,

    source§

    fn clone_from(&mut self, other: &HashSet<T, S>)

    Overwrites the contents of self with a clone of the contents of source.

    \n

    This method is preferred over simply assigning source.clone() to self,\nas it avoids reallocation if possible.

    \n
    source§

    fn clone(&self) -> HashSet<T, S>

    Returns a copy of the value. Read more
    ","Clone","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Debug for HashSet<T, S>
    where\n T: Debug,

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

    Formats the value using the given formatter. Read more
    ","Debug","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Default for HashSet<T, S>
    where\n S: Default,

    source§

    fn default() -> HashSet<T, S>

    Creates an empty HashSet<T, S> with the Default value for the hasher.

    \n
    ","Default","massa_models::prehash::PreHashSet"],["
    source§

    impl<'de, T, S> Deserialize<'de> for HashSet<T, S>
    where\n T: Deserialize<'de> + Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer. Read more
    ","Deserialize<'de>","massa_models::prehash::PreHashSet"],["
    source§

    impl<'de, T, U, S> DeserializeAs<'de, HashSet<T, S>> for HashSet<U, S>
    where\n U: DeserializeAs<'de, T>,\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn deserialize_as<D>(\n deserializer: D,\n) -> Result<HashSet<T, S>, <D as Deserializer<'de>>::Error>
    where\n D: Deserializer<'de>,

    Deserialize this value from the given Serde deserializer.
    ","DeserializeAs<'de, HashSet>","massa_models::prehash::PreHashSet"],["
    1.4.0 · source§

    impl<'a, T, S> Extend<&'a T> for HashSet<T, S>
    where\n T: 'a + Eq + Hash + Copy,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = &'a T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, _: &'a T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend<&'a T>","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Extend<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn extend<I>(&mut self, iter: I)
    where\n I: IntoIterator<Item = T>,

    Extends a collection with the contents of an iterator. Read more
    source§

    fn extend_one(&mut self, item: T)

    🔬This is a nightly-only experimental API. (extend_one)
    Extends a collection with exactly one element.
    source§

    fn extend_reserve(&mut self, additional: usize)

    🔬This is a nightly-only experimental API. (extend_one)
    Reserves capacity in a collection for the given number of additional elements. Read more
    ","Extend","massa_models::prehash::PreHashSet"],["
    source§

    impl<N, S> FilterNode<N> for HashSet<N, S>
    where\n HashSet<N, S>: VisitMap<N>,

    This filter includes the nodes that are contained in the set.

    \n
    source§

    fn include_node(&self, n: N) -> bool

    Return true to have the node be part of the graph
    ","FilterNode","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> FromIterator<T> for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher + Default,

    source§

    fn from_iter<I>(iter: I) -> HashSet<T, S>
    where\n I: IntoIterator<Item = T>,

    Creates a value from an iterator. Read more
    ","FromIterator","massa_models::prehash::PreHashSet"],["
    source§

    impl<T, S> HashSet<T, S>

    1.0.0 · source

    pub fn capacity(&self) -> usize

    Returns the number of elements the set can hold without reallocating.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet set: HashSet<i32> = HashSet::with_capacity(100);\nassert!(set.capacity() >= 100);
    \n
    1.0.0 · source

    pub fn iter(&self) -> Iter<'_, T>

    An iterator visiting all elements in arbitrary order.\nThe iterator element type is &'a T.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\");\nset.insert(\"b\");\n\n// Will print in an arbitrary order.\nfor x in set.iter() {\n    println!(\"{x}\");\n}
    \n
    §Performance
    \n

    In the current implementation, iterating over set takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn len(&self) -> usize

    Returns the number of elements in the set.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert_eq!(v.len(), 0);\nv.insert(1);\nassert_eq!(v.len(), 1);
    \n
    1.0.0 · source

    pub fn is_empty(&self) -> bool

    Returns true if the set contains no elements.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nassert!(v.is_empty());\nv.insert(1);\nassert!(!v.is_empty());
    \n
    1.6.0 · source

    pub fn drain(&mut self) -> Drain<'_, T>

    Clears the set, returning all elements as an iterator. Keeps the\nallocated memory for reuse.

    \n

    If the returned iterator is dropped before being fully consumed, it\ndrops the remaining elements. The returned iterator keeps a mutable\nborrow on the set to optimize its implementation.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert!(!set.is_empty());\n\n// print 1, 2, 3 in an arbitrary order\nfor i in set.drain() {\n    println!(\"{i}\");\n}\n\nassert!(set.is_empty());
    \n
    source

    pub fn extract_if<F>(&mut self, pred: F) -> ExtractIf<'_, T, F>
    where\n F: FnMut(&T) -> bool,

    🔬This is a nightly-only experimental API. (hash_extract_if)

    Creates an iterator which uses a closure to determine if a value should be removed.

    \n

    If the closure returns true, then the value is removed and yielded.\nIf the closure returns false, the value will remain in the list and will not be yielded\nby the iterator.

    \n

    If the returned ExtractIf is not exhausted, e.g. because it is dropped without iterating\nor the iteration short-circuits, then the remaining elements will be retained.\nUse retain with a negated predicate if you do not need the returned iterator.

    \n
    §Examples
    \n

    Splitting a set into even and odd values, reusing the original set:

    \n\n
    #![feature(hash_extract_if)]\nuse std::collections::HashSet;\n\nlet mut set: HashSet<i32> = (0..8).collect();\nlet extracted: HashSet<i32> = set.extract_if(|v| v % 2 == 0).collect();\n\nlet mut evens = extracted.into_iter().collect::<Vec<_>>();\nlet mut odds = set.into_iter().collect::<Vec<_>>();\nevens.sort();\nodds.sort();\n\nassert_eq!(evens, vec![0, 2, 4, 6]);\nassert_eq!(odds, vec![1, 3, 5, 7]);
    \n
    1.18.0 · source

    pub fn retain<F>(&mut self, f: F)
    where\n F: FnMut(&T) -> bool,

    Retains only the elements specified by the predicate.

    \n

    In other words, remove all elements e for which f(&e) returns false.\nThe elements are visited in unsorted (and unspecified) order.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3, 4, 5, 6]);\nset.retain(|&k| k % 2 == 0);\nassert_eq!(set, HashSet::from([2, 4, 6]));
    \n
    §Performance
    \n

    In the current implementation, this operation takes O(capacity) time\ninstead of O(len) because it internally visits empty buckets too.

    \n
    1.0.0 · source

    pub fn clear(&mut self)

    Clears the set, removing all values.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut v = HashSet::new();\nv.insert(1);\nv.clear();\nassert!(v.is_empty());
    \n
    1.7.0 (const: unstable) · source

    pub fn with_hasher(hasher: S) -> HashSet<T, S>

    Creates a new empty hash set which will use the given hasher to hash\nkeys.

    \n

    The hash set is also created with the default initial capacity.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_hasher(s);\nset.insert(2);
    \n
    1.7.0 · source

    pub fn with_capacity_and_hasher(capacity: usize, hasher: S) -> HashSet<T, S>

    Creates an empty HashSet with at least the specified capacity, using\nhasher to hash the keys.

    \n

    The hash set will be able to hold at least capacity elements without\nreallocating. This method is allowed to allocate for more elements than\ncapacity. If capacity is 0, the hash set will not allocate.

    \n

    Warning: hasher is normally randomly generated, and\nis designed to allow HashSets to be resistant to attacks that\ncause many collisions and very poor performance. Setting it\nmanually using this function can expose a DoS attack vector.

    \n

    The hash_builder passed should implement the BuildHasher trait for\nthe HashMap to be useful, see its documentation for details.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet s = RandomState::new();\nlet mut set = HashSet::with_capacity_and_hasher(10, s);\nset.insert(1);
    \n
    1.9.0 · source

    pub fn hasher(&self) -> &S

    Returns a reference to the set’s BuildHasher.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nuse std::hash::RandomState;\n\nlet hasher = RandomState::new();\nlet set: HashSet<i32> = HashSet::with_hasher(hasher);\nlet hasher: &RandomState = set.hasher();
    \n
    ",0,"massa_models::prehash::PreHashSet"],["
    source§

    impl<T, S> HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    1.0.0 · source

    pub fn reserve(&mut self, additional: usize)

    Reserves capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling reserve,\ncapacity will be greater than or equal to self.len() + additional.\nDoes nothing if capacity is already sufficient.

    \n
    §Panics
    \n

    Panics if the new allocation size overflows usize.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.reserve(10);\nassert!(set.capacity() >= 10);
    \n
    1.57.0 · source

    pub fn try_reserve(&mut self, additional: usize) -> Result<(), TryReserveError>

    Tries to reserve capacity for at least additional more elements to be inserted\nin the HashSet. The collection may reserve more space to speculatively\navoid frequent reallocations. After calling try_reserve,\ncapacity will be greater than or equal to self.len() + additional if\nit returns Ok(()).\nDoes nothing if capacity is already sufficient.

    \n
    §Errors
    \n

    If the capacity overflows, or the allocator reports a failure, then an error\nis returned.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set: HashSet<i32> = HashSet::new();\nset.try_reserve(10).expect(\"why is the test harness OOMing on a handful of bytes?\");
    \n
    1.0.0 · source

    pub fn shrink_to_fit(&mut self)

    Shrinks the capacity of the set as much as possible. It will drop\ndown as much as possible while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to_fit();\nassert!(set.capacity() >= 2);
    \n
    1.56.0 · source

    pub fn shrink_to(&mut self, min_capacity: usize)

    Shrinks the capacity of the set with a lower limit. It will drop\ndown no lower than the supplied limit while maintaining the internal rules\nand possibly leaving some space in accordance with the resize policy.

    \n

    If the current capacity is less than the lower limit, this is a no-op.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::with_capacity(100);\nset.insert(1);\nset.insert(2);\nassert!(set.capacity() >= 100);\nset.shrink_to(10);\nassert!(set.capacity() >= 10);\nset.shrink_to(0);\nassert!(set.capacity() >= 2);
    \n
    1.0.0 · source

    pub fn difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Difference<'a, T, S>

    Visits the values representing the difference,\ni.e., the values that are in self but not in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Can be seen as `a - b`.\nfor x in a.difference(&b) {\n    println!(\"{x}\"); // Print 1\n}\n\nlet diff: HashSet<_> = a.difference(&b).collect();\nassert_eq!(diff, [1].iter().collect());\n\n// Note that difference is not symmetric,\n// and `b - a` means something else:\nlet diff: HashSet<_> = b.difference(&a).collect();\nassert_eq!(diff, [4].iter().collect());
    \n
    1.0.0 · source

    pub fn symmetric_difference<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> SymmetricDifference<'a, T, S>

    Visits the values representing the symmetric difference,\ni.e., the values that are in self or in other but not in both.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 4 in arbitrary order.\nfor x in a.symmetric_difference(&b) {\n    println!(\"{x}\");\n}\n\nlet diff1: HashSet<_> = a.symmetric_difference(&b).collect();\nlet diff2: HashSet<_> = b.symmetric_difference(&a).collect();\n\nassert_eq!(diff1, diff2);\nassert_eq!(diff1, [1, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn intersection<'a>(\n &'a self,\n other: &'a HashSet<T, S>,\n) -> Intersection<'a, T, S>

    Visits the values representing the intersection,\ni.e., the values that are both in self and other.

    \n

    When an equal element is present in self and other\nthen the resulting Intersection may yield references to\none or the other. This can be relevant if T contains fields which\nare not compared by its Eq implementation, and may hold different\nvalue between the two equal copies of T in the two sets.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 2, 3 in arbitrary order.\nfor x in a.intersection(&b) {\n    println!(\"{x}\");\n}\n\nlet intersection: HashSet<_> = a.intersection(&b).collect();\nassert_eq!(intersection, [2, 3].iter().collect());
    \n
    1.0.0 · source

    pub fn union<'a>(&'a self, other: &'a HashSet<T, S>) -> Union<'a, T, S>

    Visits the values representing the union,\ni.e., all the values in self or other, without duplicates.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet a = HashSet::from([1, 2, 3]);\nlet b = HashSet::from([4, 2, 3, 4]);\n\n// Print 1, 2, 3, 4 in arbitrary order.\nfor x in a.union(&b) {\n    println!(\"{x}\");\n}\n\nlet union: HashSet<_> = a.union(&b).collect();\nassert_eq!(union, [1, 2, 3, 4].iter().collect());
    \n
    1.0.0 · source

    pub fn contains<Q>(&self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns true if the set contains a value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.contains(&1), true);\nassert_eq!(set.contains(&4), false);
    \n
    1.9.0 · source

    pub fn get<Q>(&self, value: &Q) -> Option<&T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Returns a reference to the value in the set, if any, that is equal to the given value.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet set = HashSet::from([1, 2, 3]);\nassert_eq!(set.get(&2), Some(&2));\nassert_eq!(set.get(&4), None);
    \n
    source

    pub fn get_or_insert(&mut self, value: T) -> &T

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts the given value into the set if it is not present, then\nreturns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.len(), 3);\nassert_eq!(set.get_or_insert(2), &2);\nassert_eq!(set.get_or_insert(100), &100);\nassert_eq!(set.len(), 4); // 100 was inserted
    \n
    source

    pub fn get_or_insert_owned<Q>(&mut self, value: &Q) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ToOwned<Owned = T> + ?Sized,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts an owned copy of the given value into the set if it is not\npresent, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_owned(pet);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    source

    pub fn get_or_insert_with<Q, F>(&mut self, value: &Q, f: F) -> &T
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,\n F: FnOnce(&Q) -> T,

    🔬This is a nightly-only experimental API. (hash_set_entry)

    Inserts a value computed from f into the set if the given value is\nnot present, then returns a reference to the value in the set.

    \n
    §Examples
    \n
    #![feature(hash_set_entry)]\n\nuse std::collections::HashSet;\n\nlet mut set: HashSet<String> = [\"cat\", \"dog\", \"horse\"]\n    .iter().map(|&pet| pet.to_owned()).collect();\n\nassert_eq!(set.len(), 3);\nfor &pet in &[\"cat\", \"dog\", \"fish\"] {\n    let value = set.get_or_insert_with(pet, str::to_owned);\n    assert_eq!(value, pet);\n}\nassert_eq!(set.len(), 4); // a new \"fish\" was inserted
    \n
    1.0.0 · source

    pub fn is_disjoint(&self, other: &HashSet<T, S>) -> bool

    Returns true if self has no elements in common with other.\nThis is equivalent to checking for an empty intersection.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet a = HashSet::from([1, 2, 3]);\nlet mut b = HashSet::new();\n\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(4);\nassert_eq!(a.is_disjoint(&b), true);\nb.insert(1);\nassert_eq!(a.is_disjoint(&b), false);
    \n
    1.0.0 · source

    pub fn is_subset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a subset of another,\ni.e., other contains at least all the values in self.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sup = HashSet::from([1, 2, 3]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_subset(&sup), true);\nset.insert(2);\nassert_eq!(set.is_subset(&sup), true);\nset.insert(4);\nassert_eq!(set.is_subset(&sup), false);
    \n
    1.0.0 · source

    pub fn is_superset(&self, other: &HashSet<T, S>) -> bool

    Returns true if the set is a superset of another,\ni.e., self contains at least all the values in other.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet sub = HashSet::from([1, 2]);\nlet mut set = HashSet::new();\n\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(0);\nset.insert(1);\nassert_eq!(set.is_superset(&sub), false);\n\nset.insert(2);\nassert_eq!(set.is_superset(&sub), true);
    \n
    1.0.0 · source

    pub fn insert(&mut self, value: T) -> bool

    Adds a value to the set.

    \n

    Returns whether the value was newly inserted. That is:

    \n
      \n
    • If the set did not previously contain this value, true is returned.
    • \n
    • If the set already contained this value, false is returned,\nand the set is not modified: original value is not replaced,\nand the value passed as argument is dropped.
    • \n
    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nassert_eq!(set.insert(2), true);\nassert_eq!(set.insert(2), false);\nassert_eq!(set.len(), 1);
    \n
    1.9.0 · source

    pub fn replace(&mut self, value: T) -> Option<T>

    Adds a value to the set, replacing the existing value, if any, that is equal to the given\none. Returns the replaced value.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\nset.insert(Vec::<i32>::new());\n\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 0);\nset.replace(Vec::with_capacity(10));\nassert_eq!(set.get(&[][..]).unwrap().capacity(), 10);
    \n
    1.0.0 · source

    pub fn remove<Q>(&mut self, value: &Q) -> bool
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes a value from the set. Returns whether the value was\npresent in the set.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::new();\n\nset.insert(2);\nassert_eq!(set.remove(&2), true);\nassert_eq!(set.remove(&2), false);
    \n
    1.9.0 · source

    pub fn take<Q>(&mut self, value: &Q) -> Option<T>
    where\n T: Borrow<Q>,\n Q: Hash + Eq + ?Sized,

    Removes and returns the value in the set, if any, that is equal to the given one.

    \n

    The value may be any borrowed form of the set’s value type, but\nHash and Eq on the borrowed form must match those for\nthe value type.

    \n
    §Examples
    \n
    use std::collections::HashSet;\n\nlet mut set = HashSet::from([1, 2, 3]);\nassert_eq!(set.take(&2), Some(2));\nassert_eq!(set.take(&2), None);
    \n
    ",0,"massa_models::prehash::PreHashSet"],["
    source§

    impl<'de, T, S, E> IntoDeserializer<'de, E> for HashSet<T, S>
    where\n T: IntoDeserializer<'de, E> + Eq + Hash,\n S: BuildHasher,\n E: Error,

    §

    type Deserializer = SeqDeserializer<<HashSet<T, S> as IntoIterator>::IntoIter, E>

    The type of the deserializer being converted into.
    source§

    fn into_deserializer(\n self,\n) -> <HashSet<T, S> as IntoDeserializer<'de, E>>::Deserializer

    Convert this value into a deserializer.
    ","IntoDeserializer<'de, E>","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> IntoIterator for HashSet<T, S>

    source§

    fn into_iter(self) -> IntoIter<T>

    Creates a consuming iterator, that is, one that moves each value out\nof the set in arbitrary order. The set cannot be used after calling\nthis.

    \n
    §Examples
    \n
    use std::collections::HashSet;\nlet mut set = HashSet::new();\nset.insert(\"a\".to_string());\nset.insert(\"b\".to_string());\n\n// Not possible to collect to a Vec<String> with a regular `.iter()`.\nlet v: Vec<String> = set.into_iter().collect();\n\n// Will print in an arbitrary order.\nfor x in &v {\n    println!(\"{x}\");\n}
    \n
    §

    type Item = T

    The type of the elements being iterated over.
    §

    type IntoIter = IntoIter<T>

    Which kind of iterator are we turning this into?
    ","IntoIterator","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> PartialEq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    source§

    fn eq(&self, other: &HashSet<T, S>) -> bool

    This method tests for self and other values to be equal, and is used\nby ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
    ","PartialEq","massa_models::prehash::PreHashSet"],["
    source§

    impl<T, H> Serialize for HashSet<T, H>
    where\n T: Serialize,

    source§

    fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer. Read more
    ","Serialize","massa_models::prehash::PreHashSet"],["
    source§

    impl<T, U, H> SerializeAs<HashSet<T, H>> for HashSet<U, H>
    where\n U: SerializeAs<T>,

    source§

    fn serialize_as<S>(\n source: &HashSet<T, H>,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
    where\n S: Serializer,

    Serialize this value into the given Serde serializer.
    ","SerializeAs>","massa_models::prehash::PreHashSet"],["
    source§

    impl<N, S> VisitMap<N> for HashSet<N, S>
    where\n N: Hash + Eq,\n S: BuildHasher,

    source§

    fn visit(&mut self, x: N) -> bool

    Mark a as visited. Read more
    source§

    fn is_visited(&self, x: &N) -> bool

    Return whether a has been visited before.
    ","VisitMap","massa_models::prehash::PreHashSet"],["
    1.0.0 · source§

    impl<T, S> Eq for HashSet<T, S>
    where\n T: Eq + Hash,\n S: BuildHasher,

    ","Eq","massa_models::prehash::PreHashSet"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file