1mod api_key;
17mod common;
18mod credit_card;
19mod crypto;
20mod date_of_birth;
21mod email;
22mod iban;
23mod ip_address;
24mod mac_address;
25mod phone;
26mod ssn;
27mod url;
28
29pub use api_key::{ApiKeyRecognizer, AwsAccessKeyRecognizer, JwtRecognizer};
30pub use credit_card::{card_brand, luhn_valid, CardBrand, CreditCardRecognizer};
31pub use crypto::CryptoAddressRecognizer;
32pub use date_of_birth::DateOfBirthRecognizer;
33pub use email::EmailRecognizer;
34pub use iban::{iban_country_length, iban_mod97_valid, IbanRecognizer};
35pub use ip_address::IpAddressRecognizer;
36pub use mac_address::MacAddressRecognizer;
37pub use phone::PhoneRecognizer;
38pub use ssn::SsnRecognizer;
39pub use url::UrlRecognizer;
40
41use cloakrs_core::RecognizerRegistry;
42
43#[must_use]
45pub fn version() -> &'static str {
46 env!("CARGO_PKG_VERSION")
47}
48
49#[must_use]
58pub fn default_registry() -> RecognizerRegistry {
59 let mut registry = RecognizerRegistry::new();
60 register_default_recognizers(&mut registry);
61 registry
62}
63
64pub fn register_default_recognizers(registry: &mut RecognizerRegistry) {
66 registry.register(EmailRecognizer);
67 registry.register(PhoneRecognizer);
68 registry.register(CreditCardRecognizer);
69 registry.register(IbanRecognizer);
70 registry.register(IpAddressRecognizer);
71 registry.register(UrlRecognizer);
72 registry.register(AwsAccessKeyRecognizer);
73 registry.register(JwtRecognizer);
74 registry.register(ApiKeyRecognizer);
75 registry.register(MacAddressRecognizer);
76 registry.register(CryptoAddressRecognizer);
77 registry.register(DateOfBirthRecognizer);
78 registry.register(url::UrlQueryEmailRecognizer);
79 registry.register(url::UrlQuerySsnRecognizer);
80 registry.register(SsnRecognizer);
81}