13 releases
0.0.11 | Feb 22, 2020 |
---|---|
0.0.10 | Feb 22, 2020 |
0.0.9 | Jan 31, 2020 |
0.0.3 | Aug 18, 2019 |
0.0.2 | Jul 22, 2019 |
#119 in Windows APIs
24 downloads per month
Used in vanadium
89KB
2K
SLoC
fenestroj
Easier to use wrappers for winapi stuff.
All wrappers are kept in feature gated modules the same as how winapi
works.
Conventions
- Names:
- Snake case function names:
GetLastError
becomesget_last_error
- If there's an
A
andW
variant of awinapi
function, theW
variant is used without "_w" on the end:GetMessageW
becomesget_message
- Some functions are new utilities to this crate, they just have names that
don't conflict with any
winapi
name.
- Snake case function names:
- Arguments:
- Enums are used when possible.
- If there's some "obvious" default for the user to calculate then
Option
is sometimes used and it will do the calculation for you. - Functions with a large number of arguments are converted to take a single struct with a field for each argument so you don't have to remember the ordering perfectly.
- Return Values:
- Usage of
bool
,Option
, orResult
is done whenever possible. - Numeric codes are given newtype wrappers as often as possible:
u32
error values become wrapped inpub struct ErrorCode(pub u32)
for example.
- Usage of
- Safety:
- Things are all still left as
unsafe
until a careful investigation of the safety involved can be done. - The investigation process is generally "ask WinBun and hope they're not too busy to answer".
- Things are all still left as
Dependencies
~235KB