возник такой вопрос, а можно ли написать макрос который будет создавать функции? или же это уже сборщик надо писать, который год генерировать будет и уже include!() его делать?
у меня есть много функций типа extern "C" fn abc() -> *const c_char/bool/u32/f32 итп, содержимое их довольно однотипное, вот интересно, можно было бы создать какой то макрос, чтобы можно было объявлять это в одну строку, цель? приведение кода к более приятному виду
можно и макросом, можно и когогеном, зависит что удобнее в том или ином случае пример макросов - cxx пример кодогена - bindgen
https://github.com/rustgd/cgmath/blob/master/src/macros.rs в таком духе?
это т.н. процедурные макросы
почему обязательно процмакрос? декларативные, вроде, тоже вполне должны для удаления базового дублирования сойти
хотя да, даже с декларативным макросом https://docs.rs/paste наверняка понадобится для склейки идентификаторов - что бы целиком названия не приходилось аргументом передавать в макро
главное не злоупотреблять
Обсуждают сегодня