1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// Safety macro which ensures a buffer is not null and not empty.
#[macro_export]
macro_rules! check_buffer {
    ($buffer:expr) => {
        if $buffer.is_null() {
            return Err(FfiError::InvalidParam.into());
        }
    };
    ($buffer:expr, $length:expr) => {
        if $buffer.is_null() || $length == 0 {
            return Err(FfiError::InvalidParam.into());
        }
    };
}