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