1#![doc = include_str!("../readme.md")]
2#![cfg(windows)]
3#![debugger_visualizer(natvis_file = "../windows-strings.natvis")]
4#![cfg_attr(all(not(feature = "std")), no_std)]
5
6extern crate alloc;
7use alloc::string::String;
8
9mod bstr;
10pub use bstr::*;
11
12mod hstring;
13pub use hstring::*;
14
15mod hstring_builder;
16pub use hstring_builder::*;
17
18mod hstring_header;
19use hstring_header::*;
20
21mod bindings;
22
23mod decode;
24use decode::*;
25
26mod ref_count;
27use ref_count::*;
28
29mod literals;
30pub use literals::*;
31
32mod pcstr;
33pub use pcstr::*;
34
35mod pcwstr;
36pub use pcwstr::*;
37
38mod pstr;
39pub use pstr::*;
40
41mod pwstr;
42pub use pwstr::*;
43
44unsafe extern "C" {
45 fn strlen(s: PCSTR) -> usize;
46}