TNN56XYKX4QRHA4FWCF5F3JVG52FIAC76EEYYANDKEE4IAWQKPEQC
FYUDBQ3C5GWIFKITBAKEXTK4AFZXZOH7DHI7QFXQOQ3HYUIYDEVAC
4DNDMC7IUZNYLDEQQYYF5K3G2QWWXGQENTEWPNTM6XKQEFPW7L3QC
SGXOEWHUET7RVS5HANSYE7QRQAG56NIKTC56MLPZ5XBCXODEWUXQC
NYOF5766GLBTWQV2KTVRAJMGVJNJ37Z5BLJMFPZA3HG7X2Q2RXPAC
246V5TYIUL7CFN7G5Y7A35EEM6IJPN532ROEYVSM7Q4HCQSWPDBQC
Q3GU26WDEYE2HXMM4WWNEGVMSXLQAKRJBSB2EJZA6JTHPKQHXCXQC
SXEYMYF7P4RZMZ46WPL4IZUTSQ2ATBWYZX7QNVMS3SGOYXYOHAGQC
QL6K2ZM35B3NIXEMMCJWUSFXOBQHAGXRDMO7ID5DCKTJH4QJVY7QC
HW5Q7GGYDMCQQYDBFLDAWCTNQQMIQHJ77UOSPN5BHMSD3KMO2O3AC
JRENVH5DF2F4SOV7UNJENFA7VDI3H63XK76R3LFZK6QCW7JIBLSQC
QJXNUQFJOAPQT3GUXRDTVKMJZCKFONSXUZMAZB7VC7OHDCGAVCOQC
6CZYYOG7C7ULY5Q4WSRVVC3QVSYACV3KFEYXDCH63OXXX2QFFFBAC
[package]
name = "chardetng"
description = "A character encoding detector for legacy Web content"
version = "0.1.13"
authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"]
edition = "2018"
license = "Apache-2.0 OR MIT"
readme = "README.md"
documentation = "https://docs.rs/chardetng/"
homepage = "https://docs.rs/chardetng/"
repository = "https://github.com/hsivonen/chardetng"
keywords = ["encoding", "web", "unicode", "charset"]
categories = ["text-processing", "encoding", "web-programming", "internationalization"]
[dependencies]
encoding_rs = "0.8.17"
memchr = "2.2.0"
cfg-if = "0.1.10"
rayon = { version = "1.3.0", optional = true }
arrayvec = { version = "0.5.1", optional = true }
[dev-dependencies]
detone = "1.0.0"
[features]
testing-only-no-semver-guarantees-do-not-use = []
multithreading = ["rayon", "arrayvec"]
}
/// Guess the encoding given the bytes pushed to the detector so far
/// (via `feed()`), the top-level domain name from which the bytes were
/// loaded, and an indication of whether to consider UTF-8 as a permissible
/// guess.
///
/// The `tld` argument takes the rightmost DNS label of the hostname of the
/// host the stream was loaded from in lower-case ASCII form. That is, if
/// the label is an internationalized top-level domain name, it must be
/// provided in its Punycode form. If the TLD that the stream was loaded
/// from is unavalable, `None` may be passed instead, which is equivalent
/// to passing `Some(b"com")`.
///
/// If the `allow_utf8` argument is set to `false`, the return value of
/// this method won't be `encoding_rs::UTF_8`. When performing detection
/// on `text/html` on non-`file:` URLs, Web browsers must pass `false`,
/// unless the user has taken a specific contextual action to request an
/// override. This way, Web developers cannot start depending on UTF-8
/// detection. Such reliance would make the Web Platform more brittle.
///
/// Returns the guessed encoding.
///
/// # Panics
///
/// If `tld` contains non-ASCII, period, or upper-case letters. (The panic
/// condition is intentionally limited to signs of failing to extract the
/// label correctly, failing to provide it in its Punycode form, and failure
/// to lower-case it. Full DNS label validation is intentionally not performed
/// to avoid panics when the reality doesn't match the specs.)
pub fn guess(&self, tld: Option<&[u8]>, allow_utf8: bool) -> &'static Encoding {
self.guess_assess(tld, allow_utf8).0
name = "chardetng"
version = "0.1.13"
dependencies = [
"arrayvec",
"cfg-if 0.1.10",
"detone",
"encoding_rs",
"memchr",
"rayon",
]
[[package]]
name = "rayon"
version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90"
dependencies = [
"autocfg",
"crossbeam-deque",
"either",
"rayon-core",
]
[[package]]
name = "rayon-core"
version = "1.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e"
dependencies = [
"crossbeam-channel",
"crossbeam-deque",
"crossbeam-utils",
"lazy_static",
"num_cpus",
]
[[package]]