[−][src]Struct crev_wot::ProofDB
In memory database tracking information from proofs
After population, used for calculating the effective trust set, etc.
Right now, for every invocation of crev, we just load it up with all known proofs, and then query. If it ever becomes too slow, all the logic here will have to be moved to a real embedded db of some kind.
Implementations
impl ProofDB
[src]
pub fn new() -> Self
[src]
pub fn get_pkg_alternatives_by_author<'s, 'a>(
&'s self,
from: &'a Id,
pkg_id: &'a PackageId
) -> HashSet<PackageId>
[src]
&'s self,
from: &'a Id,
pkg_id: &'a PackageId
) -> HashSet<PackageId>
pub fn get_pkg_alternatives<'s, 'a>(
&'s self,
pkg_id: &'a PackageId
) -> HashSet<(Id, PackageId)>
[src]
&'s self,
pkg_id: &'a PackageId
) -> HashSet<(Id, PackageId)>
pub fn get_pkg_flags_by_author<'s, 'a>(
&'s self,
from: &'a Id,
pkg_id: &'a PackageId
) -> Option<&'s Flags>
[src]
&'s self,
from: &'a Id,
pkg_id: &'a PackageId
) -> Option<&'s Flags>
pub fn get_pkg_flags<'s, 'a>(
&'s self,
pkg_id: &'a PackageId
) -> impl Iterator<Item = (&Id, &'s Flags)>
[src]
&'s self,
pkg_id: &'a PackageId
) -> impl Iterator<Item = (&Id, &'s Flags)>
pub fn get_pkg_reviews_for_source<'a, 'b>(
&'a self,
source: &'b str
) -> impl Iterator<Item = &'a Package>
[src]
&'a self,
source: &'b str
) -> impl Iterator<Item = &'a Package>
pub fn get_pkg_reviews_for_name<'a, 'b, 'c: 'a>(
&'a self,
source: &'b str,
name: &'c str
) -> impl Iterator<Item = &'a Package>
[src]
&'a self,
source: &'b str,
name: &'c str
) -> impl Iterator<Item = &'a Package>
pub fn get_pkg_reviews_for_version<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &'a Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &'a Package>
pub fn get_pkg_reviews_gte_version<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &'a Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &'a Package>
pub fn get_pkg_reviews_lte_version<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &'a Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &'a Package>
pub fn get_pkg_review_by_pkg_review_id(
&self,
uniq: &PkgVersionReviewId
) -> Option<&Package>
[src]
&self,
uniq: &PkgVersionReviewId
) -> Option<&Package>
pub fn get_pkg_review<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version,
id: &Id
) -> Option<&Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version,
id: &Id
) -> Option<&Package>
pub fn get_advisories<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'d Version>
) -> impl Iterator<Item = &'a Package> + 'a
[src]
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'d Version>
) -> impl Iterator<Item = &'a Package> + 'a
pub fn get_pkg_reviews_with_issues_for<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'c Version>,
trust_set: &'d TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
[src]
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'c Version>,
trust_set: &'d TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
pub fn get_advisories_for_version<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
version: &'d Version
) -> impl Iterator<Item = &Package>
pub fn get_advisories_for_package<'a, 'b, 'c: 'a>(
&'a self,
source: &'b str,
name: &'c str
) -> impl Iterator<Item = &Package>
[src]
&'a self,
source: &'b str,
name: &'c str
) -> impl Iterator<Item = &Package>
pub fn get_advisories_for_source(
&self,
source: &str
) -> impl Iterator<Item = &Package>
[src]
&self,
source: &str
) -> impl Iterator<Item = &Package>
pub fn get_open_issues_for_version(
&self,
source: &str,
name: &str,
queried_version: &Version,
trust_set: &TrustSet,
trust_level_required: TrustLevel
) -> HashMap<String, IssueDetails>
[src]
&self,
source: &str,
name: &str,
queried_version: &Version,
trust_set: &TrustSet,
trust_level_required: TrustLevel
) -> HashMap<String, IssueDetails>
Get all issues affecting a given package version
Collect a map of Issue ID -> IssueReports
, listing
all issues known to affect a given package version.
These are calculated from advisories
and issues
fields
of the package reviews of reviewers intside a given trust_set
of at least given trust_level_required
.
pub fn get_pkg_reviews_with_issues_for_version<'a, 'b, 'c: 'a>(
&'a self,
source: &'b str,
name: &'c str,
queried_version: &'c Version,
trust_set: &'c TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
queried_version: &'c Version,
trust_set: &'c TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
pub fn get_pkg_reviews_with_issues_for_name<'a, 'b, 'c: 'a>(
&'a self,
source: &'b str,
name: &'c str,
trust_set: &'c TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
[src]
&'a self,
source: &'b str,
name: &'c str,
trust_set: &'c TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
pub fn get_pkg_reviews_with_issues_for_source<'a, 'b, 'c: 'a>(
&'a self,
source: &'b str,
trust_set: &'c TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
[src]
&'a self,
source: &'b str,
trust_set: &'c TrustSet,
trust_level_required: TrustLevel
) -> impl Iterator<Item = &Package>
pub fn unique_package_review_proof_count(&self) -> usize
[src]
pub fn unique_trust_proof_count(&self) -> usize
[src]
pub fn get_package_review_count(
&self,
source: &str,
name: Option<&str>,
version: Option<&Version>
) -> usize
[src]
&self,
source: &str,
name: Option<&str>,
version: Option<&Version>
) -> usize
pub fn get_package_reviews_for_package<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'d Version>
) -> impl Iterator<Item = &'a Package> + 'a
[src]
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'d Version>
) -> impl Iterator<Item = &'a Package> + 'a
pub fn get_package_reviews_for_package_sorted<'a, 'b, 'c: 'a, 'd: 'a>(
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'d Version>
) -> Vec<Package>
[src]
&'a self,
source: &'b str,
name: Option<&'c str>,
version: Option<&'d Version>
) -> Vec<Package>
pub fn all_known_ids(&self) -> BTreeSet<Id>
[src]
pub fn all_author_ids(&self) -> BTreeMap<Id, usize>
[src]
Get all Ids that authored a proof (with total count)
pub fn get_package_review_by_signature<'a>(
&'a self,
signature: &str
) -> Option<&'a Package>
[src]
&'a self,
signature: &str
) -> Option<&'a Package>
pub fn get_package_reviews_by_digest<'a>(
&'a self,
digest: &Digest
) -> impl Iterator<Item = Package> + 'a
[src]
&'a self,
digest: &Digest
) -> impl Iterator<Item = Package> + 'a
pub fn import_from_iter(
&mut self,
i: impl Iterator<Item = (Proof, FetchSource)>
)
[src]
&mut self,
i: impl Iterator<Item = (Proof, FetchSource)>
)
pub fn calculate_trust_set(
&self,
for_id: &Id,
params: &TrustDistanceParams
) -> TrustSet
[src]
&self,
for_id: &Id,
params: &TrustDistanceParams
) -> TrustSet
pub fn lookup_url(&self, id: &Id) -> UrlOfId<'_>
[src]
Finds which URL is the latest and claimed to belong to the given Id. The result indicates how reliable information this is.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ProofDB
impl Send for ProofDB
impl Sync for ProofDB
impl Unpin for ProofDB
impl UnwindSafe for ProofDB
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,