Маjко
В формате MetaList
Маjко
И хуй знает как этим пользоваться
Маjко
Нигде никакой инфы нет
պլհկ
https://github.com/dtolnay/reflect
Loo
Нигде никакой инфы нет
https://docs.rs/syn/0.14.0/syn/struct.Field.html
Loo
у стракта FIeld есть вектор аттрибутов
Loo
или ты не про это?
Маjко
https://docs.rs/syn/0.14.0/syn/struct.Field.html
Спасибо, автогенеренную доку то я нашел)
Маjко
Там дальше всё скатывается до MetaList
Маjко
И NestedMeta
Маjко
Которая рекурсивна
Маjко
И без примеров я не очень понимаю как с этим работать
Loo
я чот не вкурил
Маjко
За основу брал derive-newtype
Loo
https://github.com/LooMaclin/derive-accessor/blob/master/src/lib.rs#L82-L99
Loo
я вот так сам обрабатывал аттрибуты
Маjко
Ну вот, у тебя литералы и NaveValue
Маjко
https://docs.rs/syn/0.14.0/syn/struct.MetaList.html
Маjко
Это для attribute(one, two, three, four)
Маjко
Где one, two... — это идентификаторы
Маjко
https://github.com/dtolnay/reflect
К сожалению не умеет аттрибуты
Loo
Таки не понял, у тебя какая вложенность будет?
Loo
Просто проблемы не вижу с рекурсивным металистом
Маjко
У меня проблемы с типами)
Маjко
Я не въезжаю чего хочет quote и что там за разные токенстримы у proc_macro и proc_macro2
Маjко
Короч, неосилил
Маjко
Маjко
Очевидно
Маjко
Да блин, я понимаю, что это чисто неосиляторство, надо просто сесть и плотненько разобраться что там к чему. Я пытался наскоком за пару часов на коленке собрать процедурный макрос, не вышло
Vladislav
Никто не сталкивался с тем, что rls мешает линковке? при запущенном vscode крашится, мотивируюя отсутствием доступа к скомпиленой dll
Vladislav
вру) не vscode крашится, а билд в командной строке
Cuno
скинь что ли саму ошибку
Vladislav
LINK 1104 cannot open file
Vladislav
собирается 14 визуалкой
Sherzod
обнови rls
Sherzod
название dll не derive-***?
Sherzod
https://github.com/rust-lang-nursery/rls/issues/810
Vladislav
он через rustup update обновляется?
Sherzod
я уже не помню, вроде как да
Vladislav
должен быть обновлен
Vladislav
сча еще поколдую
Денис
чё это за сраный варнинг?
Денис
они в будущем хотят убрать возможно установки "текущего" крейта что ли?
Денис
нафига варнинг-то ваще?
Денис
https://github.com/rust-lang/cargo/issues/5327
Денис
(da)
Денис
спасибо
Денис
имхо, идиотизм какой-то
Денис
ну отчасти я с мотивацией согласен
Денис
но выглядит это как будто мы подтираемся к node-коммунити
Денис
ну сделаю я cargo install на либу, ну ругнётся он, что нечего ставить, чё не так-то??
Денис
(Эшли Вильямс, ты тут не при делах?)
Денис
нене
Денис
"error: no packages found with binaries or examples"
Денис
This might be a surprising behavior for people coming from other ecosystems, especially the node one. The confusion here is that, in Cargo, you don't need to "install" a library to actually use it. At the same time, installing local crates seems like a niche use-case, one typically installs crates from crates.io.
Денис
я понимаю
Денис
ну конфьюжен сразу разрушится после первой же попытки "установить" библиотеку
Денис
в "других экосистемах" install обязателен для использования библиотеки
Денис
у меня одного горит от этого?
պլհկ
да
Денис
да нахер это нужно вообще? чем cargo install плох? почему я должен писать лишние символы просто из-за того, что кто-то может не осилить гайдбук и у него из-за этого возникнет желание "установить" библиотеку в систему?
Денис
и это не говоря о том, что --path в контекте install несколько confusing
պլհկ
https://github.com/rust-lang/rfcs/pull/2444
պլհկ
кек
Денис
эээээээ
Денис
нужно создать issue, сделать --to вместо --path
вот ты тоже законфьюзился. --path сейчас значит --from
Денис
=)
Денис
https://github.com/rust-lang/rfcs/pull/2444
так они хотят только из argument position убрать
Денис
это сколько угодно
Денис
и да, устанавливать крейт из текущей директории — это вполне себе ожидамое поведение