Expand description
POSIX C library, implemented in Rust.
This crate exists to provide a standard libc as its public API. This is
largely provided by automatically generated bindings to the functions and
data structures in the header module.
Currently, Linux and Redox syscall backends are supported.
Modules§
- byte_
literal - c_str
- Nul-terminated byte strings.
- c_vec
- Equivalent of Rust’s
Vec<T>, but using relibc’s own allocator. - cxa
- db
- error
- fs
- header
- POSIX header implementations.
- io
- Traits, helpers, and type definitions for core I/O functionality.
- iter
- Utilities to help use Rust iterators on C strings.
- ld_so
- Dynamic loading and linking.
- out
- Wrapper for the “out pointer” pattern.
- platform
- Platform abstractions and environment.
- pthread
- Relibc Threads, or RLCT.
- raw_
cell - start
- Startup code.
- sync
- Synchronization primitives.
Macros§
- eprint
- Print to stderr
- eprintln
- Print with new line to stderr. Deprecated, consider using log::info instead
- out_
project - Project an
Out<struct X { field: Type }>tostruct X { field: Out<Type> }. - Print to stdout
- println
- Print with new line to stdout. Deprecated, consider using log::info instead
- skipws
- strto_
float_ impl - strto_
impl - todo_
error - todo_
panic - todo_
skip - trace_
expr - wcsto_
impl
Functions§
Derive Macros§
- Check
VsLibc Crate - Derive macro which checks that structs here are defined the same as in the libc crate. Perhaps not sufficiently rigorous to soundly cast between the types, but should catch most mistakes.
- OutProject