Мне известно, что библиотека libc в Rust содержит большую часть стандартных макросов C и функций для использования в Rust, но в ней также говорится, что она не связана с переносимостью между системами. Я портирую некоторый код, который чрезвычайно интенсивно использует макросы препроцессора C, с C на Rust и включает в себя некоторый код, только если определен данный макрос: в данном случае O_BINARY
. Можно ли проверить, определен ли в моей системе макрос O_BINARY
в Rust, и если да, то как это выглядит?
Я ищу конструкцию, которая может довольно близко копировать этот синтаксис C:
#ifdef O_BINARY
// Some extra code here
#endif
// Regular code