pub trait FromProof<Req> {
type Request;
type Response;
// Required method
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>
where Self: Sized + 'a;
// Provided methods
fn maybe_from_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<Option<Self>, Error>
where Self: Sized + 'a { ... }
fn from_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<Self, Error>
where Self: Sized + 'a { ... }
fn from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Self, ResponseMetadata), Error>
where Self: Sized + 'a { ... }
fn from_proof_with_metadata_and_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Self, ResponseMetadata, Proof), Error>
where Self: Sized + 'a { ... }
}Expand description
Parse and verify the received proof and retrieve the requested object, if any.
Use FromProof::maybe_from_proof() or FromProof::from_proof() to parse and verify proofs received
from the Dash Platform (including verification of grovedb-generated proofs and cryptographic proofs generated
by Tenderdash).
gRPC responses, received from the Dash Platform in response to requests containing prove: true, contain
GroveDB proof structure (including encapsulated objects) and metadata required to verify cryptographic proof
generated by the Tenderdash. This trait provides methods that parse and verify the proof and retrieve the requested
object (or information that the object does not exist) in one step.
This trait is implemented by several objects defined in Dash Platform Protocol, like [Identity], [DataContract], Documents, etc. It is also implemented by several helper objects from [types] module.
Required Associated Types§
Required Methods§
Sourcefn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Parse and verify the received proof and retrieve the requested object, if any.
§Arguments
request: The request sent to the server.response: The response received from the server.network: The network we are using, Mainnet/Testnet/Devnet or Regtestplatform_version: The platform version that should be used.provider: A callback implementing ContextProvider that provides quorum details required to verify the proof.
§Returns
Ok(Some((object, metadata)))when the requested object was found in the proof.Ok(None)when the requested object was not found in the proof; this can be interpreted as proof of non-existence. For collections, returns Ok(None) if none of the requested objects were found.Err(Error)when either the provided data is invalid or proof validation failed.
Provided Methods§
Sourcefn maybe_from_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<Option<Self>, Error>where
Self: Sized + 'a,
fn maybe_from_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<Option<Self>, Error>where
Self: Sized + 'a,
Parse and verify the received proof and retrieve the requested object, if any.
§Arguments
request: The request sent to the server.response: The response received from the server.network: The network we are using, Mainnet/Testnet/Devnet or Regtestplatform_version: The platform version that should be used.provider: A callback implementing ContextProvider that provides quorum details required to verify the proof.
§Returns
Ok(Some(object, metadata))when the requested object was found in the proof.Ok(None)when the requested object was not found in the proof; this can be interpreted as proof of non-existence. For collections, returns Ok(None) if none of the requested objects were found.Err(Error)when either the provided data is invalid or proof validation failed.
Sourcefn from_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<Self, Error>where
Self: Sized + 'a,
fn from_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<Self, Error>where
Self: Sized + 'a,
Retrieve the requested object from the proof.
Runs full verification of the proof and retrieves enclosed objects.
This method uses FromProof::maybe_from_proof() internally and throws an error
if the requested object does not exist in the proof.
§Arguments
request: The request sent to the server.response: The response received from the server.network: The network we are using, Mainnet/Testnet/Devnet or Regtestplatform_version: The platform version that should be used.provider: A callback implementing ContextProvider that provides quorum details required to verify the proof.
§Returns
Ok(object)when the requested object was found in the proof.Err(Error::DocumentMissingInProof)when the requested object was not found in the proof.Err(Error)when either the provided data is invalid or proof validation failed.
Sourcefn from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Self, ResponseMetadata), Error>where
Self: Sized + 'a,
fn from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Self, ResponseMetadata), Error>where
Self: Sized + 'a,
Retrieve the requested object from the proof with metadata.
Runs full verification of the proof and retrieves enclosed objects.
This method uses FromProof::maybe_from_proof_with_metadata() internally and throws an error
if the requested object does not exist in the proof.
§Arguments
request: The request sent to the server.response: The response received from the server.network: The network we are using, Mainnet/Testnet/Devnet or Regtestplatform_version: The platform version that should be used.provider: A callback implementing ContextProvider that provides quorum details required to verify the proof.
§Returns
Ok(Some(object, metadata))when the requested object was found in the proof.Err(Error::DocumentMissingInProof)when the requested object was not found in the proof.Err(Error)when either the provided data is invalid or proof validation failed.
Sourcefn from_proof_with_metadata_and_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Self, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
fn from_proof_with_metadata_and_proof<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Self, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Retrieve the requested object from the proof with metadata.
Runs full verification of the proof and retrieves enclosed objects.
This method uses FromProof::maybe_from_proof_with_metadata() internally and throws an error
if the requested object does not exist in the proof.
§Arguments
request: The request sent to the server.response: The response received from the server.network: The network we are using, Mainnet/Testnet/Devnet or Regtestplatform_version: The platform version that should be used.provider: A callback implementing ContextProvider that provides quorum details required to verify the proof.
§Returns
Ok(Some(object, metadata, proof))when the requested object was found in the proof.Err(Error::DocumentMissingInProof)when the requested object was not found in the proof.Err(Error)when either the provided data is invalid or proof validation failed.
Implementations on Foreign Types§
Source§impl FromProof<BroadcastStateTransitionRequest> for StateTransitionProofResult
impl FromProof<BroadcastStateTransitionRequest> for StateTransitionProofResult
type Request = BroadcastStateTransitionRequest
type Response = WaitForStateTransitionResultResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Source§impl FromProof<GetAddressesTrunkStateRequest> for GroveTrunkQueryResult
impl FromProof<GetAddressesTrunkStateRequest> for GroveTrunkQueryResult
type Request = GetAddressesTrunkStateRequest
type Response = GetAddressesTrunkStateResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
_request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
GroveTrunkQueryResult: 'a,
Source§impl FromProof<GetContestedResourceIdentityVotesRequest> for Vote
impl FromProof<GetContestedResourceIdentityVotesRequest> for Vote
type Request = GetContestedResourceIdentityVotesRequest
type Response = GetContestedResourceIdentityVotesResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Source§impl FromProof<GetDataContractRequest> for (DataContract, Vec<u8>)
impl FromProof<GetDataContractRequest> for (DataContract, Vec<u8>)
type Request = GetDataContractRequest
type Response = GetDataContractResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
DataContract: 'a,
Source§impl FromProof<GetDataContractRequest> for DataContract
impl FromProof<GetDataContractRequest> for DataContract
type Request = GetDataContractRequest
type Response = GetDataContractResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
DataContract: 'a,
Source§impl FromProof<GetEpochsInfoRequest> for ExtendedEpochInfo
impl FromProof<GetEpochsInfoRequest> for ExtendedEpochInfo
type Request = GetEpochsInfoRequest
type Response = GetEpochsInfoResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Source§impl FromProof<GetGroupInfoRequest> for Group
impl FromProof<GetGroupInfoRequest> for Group
type Request = GetGroupInfoRequest
type Response = GetGroupInfoResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Source§impl FromProof<GetIdentitiesContractKeysRequest> for IdentitiesContractKeys
impl FromProof<GetIdentitiesContractKeysRequest> for IdentitiesContractKeys
type Request = GetIdentitiesContractKeysRequest
type Response = GetIdentitiesContractKeysResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: 'a,
Source§impl FromProof<GetIdentityByNonUniquePublicKeyHashRequest> for Identity
impl FromProof<GetIdentityByNonUniquePublicKeyHashRequest> for Identity
type Request = GetIdentityByNonUniquePublicKeyHashRequest
type Response = GetIdentityByNonUniquePublicKeyHashResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Source§impl FromProof<GetIdentityByPublicKeyHashRequest> for Identity
impl FromProof<GetIdentityByPublicKeyHashRequest> for Identity
type Request = GetIdentityByPublicKeyHashRequest
type Response = GetIdentityByPublicKeyHashResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Identity: 'a,
Source§impl FromProof<GetIdentityRequest> for Identity
impl FromProof<GetIdentityRequest> for Identity
type Request = GetIdentityRequest
type Response = GetIdentityResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Identity: Sized + 'a,
Source§impl FromProof<GetTokenContractInfoRequest> for TokenContractInfo
impl FromProof<GetTokenContractInfoRequest> for TokenContractInfo
type Request = GetTokenContractInfoRequest
type Response = GetTokenContractInfoResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Source§impl FromProof<GetTokenPerpetualDistributionLastClaimRequest> for RewardDistributionMoment
impl FromProof<GetTokenPerpetualDistributionLastClaimRequest> for RewardDistributionMoment
Source§fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Parse & verify the last‑claim proof returned by Platform.
type Request = GetTokenPerpetualDistributionLastClaimRequest
type Response = GetTokenPerpetualDistributionLastClaimResponse
Source§impl FromProof<GetTokenTotalSupplyRequest> for TotalSingleTokenBalance
impl FromProof<GetTokenTotalSupplyRequest> for TotalSingleTokenBalance
type Request = GetTokenTotalSupplyRequest
type Response = GetTokenTotalSupplyResponse
fn maybe_from_proof_with_metadata<'a, I: Into<Self::Request>, O: Into<Self::Response>>(
request: I,
response: O,
_network: Network,
platform_version: &PlatformVersion,
provider: &'a dyn ContextProvider,
) -> Result<(Option<Self>, ResponseMetadata, Proof), Error>where
Self: Sized + 'a,
Implementors§
Source§impl FromProof<GetAddressInfoRequest> for AddressInfo
impl FromProof<GetAddressInfoRequest> for AddressInfo
Source§impl FromProof<GetAddressesInfosRequest> for AddressInfos
impl FromProof<GetAddressesInfosRequest> for AddressInfos
Source§impl FromProof<GetAddressesTrunkStateRequest> for PlatformAddressTrunkState
impl FromProof<GetAddressesTrunkStateRequest> for PlatformAddressTrunkState
Source§impl FromProof<GetContestedResourceIdentityVotesRequest> for ResourceVotesByIdentity
impl FromProof<GetContestedResourceIdentityVotesRequest> for ResourceVotesByIdentity
Source§impl FromProof<GetContestedResourceVoteStateRequest> for Contenders
impl FromProof<GetContestedResourceVoteStateRequest> for Contenders
Source§impl FromProof<GetContestedResourcesRequest> for ContestedResources
impl FromProof<GetContestedResourcesRequest> for ContestedResources
Source§impl FromProof<GetDataContractHistoryRequest> for DataContractHistory
impl FromProof<GetDataContractHistoryRequest> for DataContractHistory
Source§impl FromProof<GetDataContractsRequest> for DataContracts
impl FromProof<GetDataContractsRequest> for DataContracts
Source§impl FromProof<GetDocumentHistoryRequest> for DocumentHistory
impl FromProof<GetDocumentHistoryRequest> for DocumentHistory
Source§impl FromProof<GetEpochsInfoRequest> for ExtendedEpochInfos
impl FromProof<GetEpochsInfoRequest> for ExtendedEpochInfos
Source§impl FromProof<GetEvonodesProposedEpochBlocksByIdsRequest> for ProposerBlockCounts
impl FromProof<GetEvonodesProposedEpochBlocksByIdsRequest> for ProposerBlockCounts
Source§impl FromProof<GetEvonodesProposedEpochBlocksByRangeRequest> for ProposerBlockCounts
impl FromProof<GetEvonodesProposedEpochBlocksByRangeRequest> for ProposerBlockCounts
Source§impl FromProof<GetFinalizedEpochInfosRequest> for FinalizedEpochInfos
impl FromProof<GetFinalizedEpochInfosRequest> for FinalizedEpochInfos
Source§impl FromProof<GetGroupActionSignersRequest> for GroupActionSigners
impl FromProof<GetGroupActionSignersRequest> for GroupActionSigners
Source§impl FromProof<GetGroupActionsRequest> for GroupActions
impl FromProof<GetGroupActionsRequest> for GroupActions
Source§impl FromProof<GetIdentitiesBalancesRequest> for IdentityBalances
impl FromProof<GetIdentitiesBalancesRequest> for IdentityBalances
Source§impl FromProof<GetIdentitiesTokenBalancesRequest> for IdentitiesTokenBalances
impl FromProof<GetIdentitiesTokenBalancesRequest> for IdentitiesTokenBalances
Source§impl FromProof<GetIdentitiesTokenInfosRequest> for IdentitiesTokenInfos
impl FromProof<GetIdentitiesTokenInfosRequest> for IdentitiesTokenInfos
Source§impl FromProof<GetIdentityBalanceAndRevisionRequest> for IdentityBalanceAndRevision
impl FromProof<GetIdentityBalanceAndRevisionRequest> for IdentityBalanceAndRevision
Source§impl FromProof<GetIdentityBalanceRequest> for IdentityBalance
impl FromProof<GetIdentityBalanceRequest> for IdentityBalance
Source§impl FromProof<GetIdentityContractNonceRequest> for IdentityContractNonceFetcher
impl FromProof<GetIdentityContractNonceRequest> for IdentityContractNonceFetcher
Source§impl FromProof<GetIdentityKeysRequest> for IdentityPublicKeys
impl FromProof<GetIdentityKeysRequest> for IdentityPublicKeys
Source§impl FromProof<GetIdentityNonceRequest> for IdentityNonceFetcher
impl FromProof<GetIdentityNonceRequest> for IdentityNonceFetcher
Source§impl FromProof<GetIdentityTokenBalancesRequest> for IdentityTokenBalances
impl FromProof<GetIdentityTokenBalancesRequest> for IdentityTokenBalances
Source§impl FromProof<GetIdentityTokenInfosRequest> for IdentityTokenInfos
impl FromProof<GetIdentityTokenInfosRequest> for IdentityTokenInfos
Source§impl FromProof<GetMostRecentShieldedAnchorRequest> for MostRecentShieldedAnchor
impl FromProof<GetMostRecentShieldedAnchorRequest> for MostRecentShieldedAnchor
Source§impl FromProof<GetPrefundedSpecializedBalanceRequest> for PrefundedSpecializedBalance
impl FromProof<GetPrefundedSpecializedBalanceRequest> for PrefundedSpecializedBalance
Source§impl FromProof<GetProtocolVersionUpgradeStateRequest> for ProtocolVersionUpgrades
impl FromProof<GetProtocolVersionUpgradeStateRequest> for ProtocolVersionUpgrades
Source§impl FromProof<GetProtocolVersionUpgradeVoteStatusRequest> for MasternodeProtocolVotes
impl FromProof<GetProtocolVersionUpgradeVoteStatusRequest> for MasternodeProtocolVotes
Source§impl FromProof<GetRecentAddressBalanceChangesRequest> for RecentAddressBalanceChanges
impl FromProof<GetRecentAddressBalanceChangesRequest> for RecentAddressBalanceChanges
Source§impl FromProof<GetRecentCompactedAddressBalanceChangesRequest> for RecentCompactedAddressBalanceChanges
impl FromProof<GetRecentCompactedAddressBalanceChangesRequest> for RecentCompactedAddressBalanceChanges
Source§impl FromProof<GetShieldedAnchorsRequest> for ShieldedAnchors
impl FromProof<GetShieldedAnchorsRequest> for ShieldedAnchors
Source§impl FromProof<GetShieldedEncryptedNotesRequest> for ShieldedEncryptedNotes
impl FromProof<GetShieldedEncryptedNotesRequest> for ShieldedEncryptedNotes
Source§impl FromProof<GetShieldedNotesCountRequest> for ShieldedNotesCount
impl FromProof<GetShieldedNotesCountRequest> for ShieldedNotesCount
Source§impl FromProof<GetShieldedNullifiersRequest> for ShieldedNullifierStatuses
impl FromProof<GetShieldedNullifiersRequest> for ShieldedNullifierStatuses
Source§impl FromProof<GetShieldedPoolStateRequest> for ShieldedPoolState
impl FromProof<GetShieldedPoolStateRequest> for ShieldedPoolState
Source§impl FromProof<GetTokenDirectPurchasePricesRequest> for TokenDirectPurchasePrices
impl FromProof<GetTokenDirectPurchasePricesRequest> for TokenDirectPurchasePrices
Source§impl FromProof<GetTokenPreProgrammedDistributionsRequest> for TokenPreProgrammedDistributions
impl FromProof<GetTokenPreProgrammedDistributionsRequest> for TokenPreProgrammedDistributions
Source§impl FromProof<GetTokenStatusesRequest> for TokenStatuses
impl FromProof<GetTokenStatusesRequest> for TokenStatuses
Source§impl FromProof<GetTotalCreditsInPlatformRequest> for TotalCreditsInPlatform
impl FromProof<GetTotalCreditsInPlatformRequest> for TotalCreditsInPlatform
Source§impl FromProof<GetVotePollsByEndDateRequest> for VotePollsGroupedByTimestamp
impl FromProof<GetVotePollsByEndDateRequest> for VotePollsGroupedByTimestamp
Source§impl<'dq, Q> FromProof<Q> for DocumentCount
impl<'dq, Q> FromProof<Q> for DocumentCount
Source§impl<'dq, Q> FromProof<Q> for DocumentSplitCounts
Reject the generic FromProof entry point for DocumentSplitCounts.
impl<'dq, Q> FromProof<Q> for DocumentSplitCounts
Reject the generic FromProof entry point for DocumentSplitCounts.
DocumentSplitCounts is reached from rs-sdk via the
FromProof<DocumentQuery> impl defined alongside the SDK’s
DocumentQuery type (see
rs-sdk/src/platform/documents/document_count.rs), which
dispatches to the right proof shape (CountTree element /
aggregate-count / distinct-count) based on
(group_by, where_clauses, prove). The generic
FromProof<Q: TryInto<DriveDocumentQuery>> path doesn’t carry
enough information to pick a proof shape, so it errors out
explicitly — calling this impl directly is a programmer mistake.