Size: a a a

2020 October 19

$

$@ in Rust Beginners
Slava Sokolovsky
так не стирай, а демангли, в чем проблема?
Каким образом?
источник

SS

Slava Sokolovsky in Rust Beginners
$@
Каким образом?
собери имена и отрежь от них кусок, они же по алгоритму составлены [имена]
источник

$

$@ in Rust Beginners
Ну так это вручную писать что-то, если я правильно понял. Легче уж реально #[no_mangle] просто вставлять везде
источник

Э

Эрик in Rust Beginners
$@
Если пишу что-то, что буду вызвать из С, например
macro_rules! ffi {
($($(#[$attr:tt])* $pub:vis fn $name:ident $args:tt $body:tt)*) => { $( #[no_mangle] $(#[$attr])* $pub fn $name $args $body )* }
}
источник

/

/bin/cat in Rust Beginners
$@
Ну так это вручную писать что-то, если я правильно понял. Легче уж реально #[no_mangle] просто вставлять везде
Какая разница сколько там no mangle?
источник

/

/bin/cat in Rust Beginners
Можно использовать какой-нибудь cbindgen, который выплюнет на выходе готовый h файл
источник

MB

Mikail Bagishov in Rust Beginners
$@
Ну так это вручную писать что-то, если я правильно понял. Легче уж реально #[no_mangle] просто вставлять везде
Глобальный #[no_mangle] это ногострел, потому что это ансейфный атрибут на самом деле: можно нарушить ODR и словить UB.
источник
2020 October 20

MB

Mikail Bagishov in Rust Beginners
/bin/cat
Какая разница сколько там no mangle?
Если no_mangle не стоит, то cbindgen по-моему проскипает такую функцию.
источник

/

/bin/cat in Rust Beginners
Вроде нет ничего плохого в атрибутах для ffi
источник

MB

Mikail Bagishov in Rust Beginners
Кроме того, что no_mangle ансейфный - ничего плохого нет.
источник

/

/bin/cat in Rust Beginners
Если очень хочется, то можно сделать модуль ffi и поставить над ним no mangle
источник

MB

Mikail Bagishov in Rust Beginners
Ну это примерно как атрибут "включи неявный unsafe во всех функциях модуля"
источник

ŹR

Źmićer Rubinštejn in Rust Beginners
Кто-нибудь пробовал собирать open-blas на маке? У меня не находится lgfortran, а как починить - не гуглится особо
источник

ŹR

Źmićer Rubinštejn in Rust Beginners
Типа через brew устанавливается gcc вместе с gfortran, но либа пытается собраться через cc, а на маке он по дефолту clang от apple
источник

IB

Ilya Bogdanov in Rust Beginners
источник

ИЛ

Иван Лещенко... in Rust Beginners
Можете подсказать как сделать так, чтобы первые два вызова next вернули None? В данный момент как я понимаю next проходит до конца слайса в поиске подходящего элемента, но я хочу проверить только первый
источник

ИЛ

Иван Лещенко... in Rust Beginners
Иван Лещенко
Можете подсказать как сделать так, чтобы первые два вызова next вернули None? В данный момент как я понимаю next проходит до конца слайса в поиске подходящего элемента, но я хочу проверить только первый
Есть как вариант методы самого Option, но возможно итератор что-то такое умеет?
источник

АГ

Алексей Герасимов... in Rust Beginners
Иван Лещенко
Есть как вариант методы самого Option, но возможно итератор что-то такое умеет?
зачем такое нужно? возможно тебе это не надо, опиши задачу
источник

ИЛ

Иван Лещенко... in Rust Beginners
Алексей Герасимов
зачем такое нужно? возможно тебе это не надо, опиши задачу
Взять первый элемент итератора при условии что он прошёл через фильтр, иначе вернуть None
источник

ИЛ

Иван Лещенко... in Rust Beginners
Можно конечно взять первый элемент слайса, на Option выполнить filter, но возможно у итератора есть что-то похожее
источник