any

Macro any 

Source
any!() { /* proc-macro */ }
Available on crate feature macros only.
Expand description

Like any(), expand into match for better performance (about 5x)

  • ^"..." is exclude pattern
  • !"..." like !any!(...)

§Examples

use char_classes::any;

assert!(any!("ab",      'a'));
assert!(any!("ab",      'b'));
assert!(any!("ab",      'b'));
assert!(any!("a-c",     'a'));
assert!(any!("a-c",     'b'));
assert!(any!("a-c",     'c'));
assert!(any!(b"ab",    b'a'));
assert!(any!(b"ab",    b'b'));

assert!(! any!(^b"ab",   b'b'));
assert!(! any!(^"ab",   ""));
assert!(any!(!"ab",   ""));

predicate mode:

use char_classes::any;

assert!(any!(b"ab")(b"b"));
assert!(any!(!b"ab")(b"c"));
assert!(any!(^b"ab")(b"c"));

assert!(  any!(!b"ab")(b""));
assert!(! any!(^b"ab")(b""));

Like char_classes::any(), expand into match for better performance (about 5x)

  • ^"..." is exclude pattern
  • !"..." like !any!(...)

§Examples

use char_classes::any;

assert!(any!("ab",      'a'));
assert!(any!("ab",      'b'));
assert!(any!("ab",      'b'));
assert!(any!("a-c",     'a'));
assert!(any!("a-c",     'b'));
assert!(any!("a-c",     'c'));
assert!(any!(b"ab",    b'a'));
assert!(any!(b"ab",    b'b'));

assert!(! any!(^b"ab",   b'b'));
assert!(! any!(^"ab",   ""));
assert!(any!(!"ab",   ""));

assert!(any!(b"ab")(b'b'));

predicate mode:

use char_classes::any;

assert!(any!(b"ab")(b"b"));
assert!(any!(!b"ab")(b"c"));
assert!(any!(^b"ab")(b"c"));

assert!(any!(!b"ab")(b""));
assert!(! any!(^b"ab")(b""));