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