summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--librepology/Cargo.toml8
-rw-r--r--librepology/src/lib.rs9
-rw-r--r--librepology/src/packagefilters.rs81
3 files changed, 2 insertions, 96 deletions
diff --git a/librepology/Cargo.toml b/librepology/Cargo.toml
index 7dadd2f..3dccff0 100644
--- a/librepology/Cargo.toml
+++ b/librepology/Cargo.toml
@@ -25,12 +25,6 @@ url_serde = "0.2"
failure = "0.1"
log = "0.4"
derive_more = "0.14"
+derive-new = "0.5"
curl = "0.4"
-filters = { version = "0.3", optional = true }
-derive-new = { version = "0.5", optional = true }
-
-[features]
-# By default, we include the filters functionality
-default = [ "packagefilters" ]
-packagefilters = ["filters", "derive-new"]
diff --git a/librepology/src/lib.rs b/librepology/src/lib.rs
index 76992fd..d0904a4 100644
--- a/librepology/src/lib.rs
+++ b/librepology/src/lib.rs
@@ -5,16 +5,9 @@ extern crate url;
extern crate url_serde;
extern crate curl;
-#[cfg(feature = "packagefilters")]
-extern crate filters;
-#[cfg(feature = "packagefilters")]
-#[macro_use] extern crate derive_new;
-
#[macro_use] extern crate serde_derive;
#[macro_use] extern crate log;
#[macro_use] extern crate derive_more;
+#[macro_use] extern crate derive_new;
pub mod v1;
-
-#[cfg(feature = "packagefilters")]
-pub mod packagefilters;
diff --git a/librepology/src/packagefilters.rs b/librepology/src/packagefilters.rs
deleted file mode 100644
index d1293d4..0000000
--- a/librepology/src/packagefilters.rs
+++ /dev/null
@@ -1,81 +0,0 @@
-use filters::filter::Filter;
-
-use crate::v1::types::{Package, Repo, Name, Status, Version, License, Maintainer};
-
-
-#[derive(new, Debug)]
-pub struct PackageRepoNameFilter(Repo);
-
-/// Filter implementation for PackageRepoNameFilter
-///
-/// filters based on _equality_!
-impl Filter<Package> for PackageRepoNameFilter {
- fn filter(&self, package: &Package) -> bool {
- self.0 == *package.repo()
- }
-}
-
-
-#[derive(new, Debug)]
-pub struct PackageNameFilter(Name);
-
-/// Filter implementation for PackageNameFilter
-///
-/// filters based on _equality_!
-impl Filter<Package> for PackageNameFilter {
- fn filter(&self, package: &Package) -> bool {
- self.0 == *package.name()
- }
-}
-
-
-#[derive(new, Debug)]
-pub struct PackageVersionFilter(Version);
-
-/// Filter implementation for PackageVersionFilter
-///
-/// filters based on _equality_!
-impl Filter<Package> for PackageVersionFilter {
- fn filter(&self, package: &Package) -> bool {
- self.0 == *package.version()
- }
-}
-
-
-#[derive(new, Debug)]
-pub struct PackageStatusFilter(Status);
-
-/// Filter implementation for PackageStatusFilter
-///
-/// filters based on _equality_!
-impl Filter<Package> for PackageStatusFilter {
- fn filter(&self, package: &Package) -> bool {
- package.status().map(|s| self.0 == *s).unwrap_or(false)
- }
-}
-
-
-#[derive(new, Debug)]
-pub struct PackageLicenseFilter(License);
-
-/// Filter implementation for PackageLicenseFilter
-///
-/// filters based on _equality_!
-impl Filter<Package> for PackageLicenseFilter {
- fn filter(&self, package: &Package) -> bool {
- package.licenses().map(|lcs| lcs.iter().any(|l| self.0 == *l)).unwrap_or(false)
- }
-}
-
-
-#[derive(new, Debug)]
-pub struct PackageMaintainerFilter(Maintainer);
-
-/// Filter implementation for PackageMaintainerFilter
-///
-/// filters based on _equality_!
-impl Filter<Package> for PackageMaintainerFilter {
- fn filter(&self, package: &Package) -> bool {
- package.maintainers().map(|mts| mts.iter().any(|m| self.0 == *m)).unwrap_or(false)
- }
-}