macro_rules! yaml_malloc {
($t:ty, $size:expr) => { ... };
}Expand description
Allocates memory using the system’s malloc function.
This macro wraps the yaml_malloc function, providing a more Rust-like interface.
§Arguments
size- The number of bytes to allocate.
§Returns
Returns a *mut T pointer to the allocated memory, or None if the allocation failed.
§Safety
While this macro provides a safer interface than direct use of yaml_malloc,
it is still unsafe because:
- It allocates uninitialized memory.
- The caller is responsible for properly freeing the allocated memory using
yaml_free!. - The caller must ensure the allocated memory is properly initialized before use.
§Examples
use libyml::{yaml_malloc,yaml_free};
let size = 1024;
unsafe {
if let Some(ptr) = yaml_malloc!(u8, size) {
// Use the allocated memory
// ...
yaml_free!(ptr);
}
}