blob: e305c142f7b9fba647e70ee1093229fed742367a (
plain)
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
|
# filters
A library crate to build predicates and filter.
[_Documentation_](https://matthiasbeyer.github.io/filters/).
[![Build Status](https://travis-ci.org/matthiasbeyer/filters.svg?branch=master)](https://travis-ci.org/matthiasbeyer/filters)
[![GitHub tag](https://img.shields.io/github/tag/matthiasbeyer/filters.svg?maxAge=2592000)]()
[![Crates.io](https://img.shields.io/crates/v/filters.svg?maxAge=2592000)]()
[![Crates.io](https://img.shields.io/crates/d/filters.svg?maxAge=2592000)]()
[![Crates.io](https://img.shields.io/crates/dv/filters.svg?maxAge=2592000)]()
[![Crates.io](https://img.shields.io/crates/l/filters.svg?maxAge=2592000)]()
Examples explain it best:
```rust
use filters::filter::Filter;
let not_eq_to_one = |&a: &usize| { a != 1 };
let not_eq_to_two = |&a: &usize| { a != 2 };
let not_eq_to_three = |&a: &usize| { a != 3 };
let a = not_eq_to_one.and(not_eq_to_two).and(not_eq_to_three);
assert_eq!(a.filter(&21), true);
```
For more examples have a look at the tests in `./src/filters.rs`.
# Vacation notice
**Notice:** I, the author of filters, will be on vacation from mid-May 2018
until early 2019. I hope I can continue develop filters during that time, but I
cannot guarantee that. I hope I can continue development of filters after that
and I certainly plan to do so.
@TheNeikos as commit rights to this repository and will respond to issues and
PRs.
# License
filters - A crate to build predicates/filters with the builder pattern
Copyright (C) 2016 Matthias Beyer
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
For more information and the full license text, see
[the LICENSE file](./LICENSE).
|