Rust lib ссылается на имена в ящике для мусора

Можно ли определить ящик библиотеки в Rust, который ссылается на элементы, определенные в ящике корзины? Как ты делаешь это?

Предположим, что они находятся в одном пакете. Я потратил много времени на поиск документации, но не могу ее найти.

Я считаю, что Rusc с этим справится, но Cargo его не поддерживает. Просто поместите общие элементы в библиотеку.

drewtato 29.02.2024 03:21
Почему Python в конце концов умрет
Почему Python в конце концов умрет
Последние 20 лет были действительно хорошими для Python. Он прошел путь от "просто языка сценариев" до основного языка, используемого для написания...
0
1
65
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Нет, это невозможно.

Ни один крейт не может зависеть от двоичного крейта — зависимости могут быть только крейтами библиотек — даже не в одном пакете. Таким образом, вы не можете импортировать предметы из бинарного ящика.

Если вы хотите поделиться кодом между собой, все должно быть наоборот.

Поскольку ОП упоминает «тот же пакет». Тогда я считаю, что следует упомянуть, что, поскольку пакет может создавать двоичные файлы «один ко многим» и библиотеку «ноль или один». Технически это «возможно». Вплоть до того, что они оба могут указать одно и то же mod ...

vallentin 29.02.2024 03:50

@vallentin Только используя очень нестрогую интерпретацию «элементов, определенных в ящике для корзины»… Если оба определяют один и тот же модуль, то библиотека не использует ничего из двоичного файла, библиотека определила свои собственные элементы.

kmdreko 29.02.2024 04:13

Если честно, я с вами полностью согласен. Я просто интерпретировал второй абзац «Предположим, что они находятся в одном пакете», поскольку ОП, возможно, просто свободно сформулировал реальный вопрос.

vallentin 29.02.2024 04:18

Другие вопросы по теме