Size: a a a

2020 November 04

SS

Slava Sokolovsky in Rust Beginners
Как быть с &'a [T<'a>]? Можно ли как-то уменьшить объем лайфтаймов? Конструкции получаются больно громоздкими. Вообще, как принято - хранить ссылки или данные внутри структур? Могу, в принципе, и то, и то.
источник

AZ

Alexander Zaitsev in Rust Beginners
Slava Sokolovsky
Как быть с &'a [T<'a>]? Можно ли как-то уменьшить объем лайфтаймов? Конструкции получаются больно громоздкими. Вообще, как принято - хранить ссылки или данные внутри структур? Могу, в принципе, и то, и то.
ну а по логике как оно должно быть - хранить референс на данные или сами данные?
источник

SS

Slava Sokolovsky in Rust Beginners
Alexander Zaitsev
ну а по логике как оно должно быть - хранить референс на данные или сами данные?
Смотря по чьей логике. По моей логике, я не хочу хранить String, а по чьей-то логике String будет более эргономичным
источник

AZ

Alexander Zaitsev in Rust Beginners
Slava Sokolovsky
Смотря по чьей логике. По моей логике, я не хочу хранить String, а по чьей-то логике String будет более эргономичным
по твоей логике, конечно же
источник

SS

Slava Sokolovsky in Rust Beginners
Alexander Zaitsev
по твоей логике, конечно же
Да я вот и не знаю, структура должна хранить значение или ссылку. У меня в голове неопределенность, поэтому я взял ссылку (мне кажется, что так будет меньше памяти)
источник

E

Eugene in Rust Beginners
Slava Sokolovsky
Да я вот и не знаю, структура должна хранить значение или ссылку. У меня в голове неопределенность, поэтому я взял ссылку (мне кажется, что так будет меньше памяти)
если хранить ссылки, тогда надо следить, чтобы эти ссылки были валидными
источник

AZ

Alexander Zaitsev in Rust Beginners
Eugene
если хранить ссылки, тогда надо следить, чтобы эти ссылки были валидными
мы же в расте - пусть он за нас следит :)
источник

SS

Slava Sokolovsky in Rust Beginners
Alexander Zaitsev
мы же в расте - пусть он за нас следит :)
А он и будет следить. Единственное, что от этого страдает эргономика (куча лайфтаймов)
источник

E

Eugene in Rust Beginners
Alexander Zaitsev
мы же в расте - пусть он за нас следит :)
а метки лайфтаймов тоже rust расставит?
источник

AZ

Alexander Zaitsev in Rust Beginners
Eugene
а метки лайфтаймов тоже rust расставит?
нет :)
источник

E

Eugene in Rust Beginners
а как правильно расставлять метки лайфтаймов без правильного понимания валидности ссылок?
источник

E

Eugene in Rust Beginners
иначе говоря, rust-разработчик всё равно должен правильно понимать, валидные ссылки или нет, хотя бы для того, чтобы метки лайфтаймов расставить, или rust-разраб этого не должен делать?
источник

EG

Emmanuel Goldstein in Rust Beginners
Eugene
иначе говоря, rust-разработчик всё равно должен правильно понимать, валидные ссылки или нет, хотя бы для того, чтобы метки лайфтаймов расставить, или rust-разраб этого не должен делать?
Раст даёт возможность думать о лайфтаймах локально
Тебе всё равно нужно понимать, что и сколько живёт, но чтобы расставить метки лайфтаймов на аргументах этой функции достаточно понимать, что делает эта функция
источник

E

Eugene in Rust Beginners
расставлять метки лайфтаймов не нужно только в тех простых слуаях, которые rust-компилятор понимает
источник

SS

Slava Sokolovsky in Rust Beginners
Так ребят, речь не об этом. У меня вопрос в том, стоит ли везде тащить лайфтайм от ссылки на строку, либо же при создании завладевать данными
источник

E

Eugene in Rust Beginners
есть сомнения, что rust-компилятор на текущем этапе развития не такой умный, чтобы автоматически понимать всевозможные лайфтаймы
источник

AZ

Alexander Zaitsev in Rust Beginners
Slava Sokolovsky
Так ребят, речь не об этом. У меня вопрос в том, стоит ли везде тащить лайфтайм от ссылки на строку, либо же при создании завладевать данными
так сказали же - зависит от логики твоей программы
источник

SS

Slava Sokolovsky in Rust Beginners
Alexander Zaitsev
так сказали же - зависит от логики твоей программы
А какая логика должна быть у каждого из варианта? Я, вроде как, особо память не экономлю, но и тратить особо не хочется.
источник

AZ

Alexander Zaitsev in Rust Beginners
Slava Sokolovsky
А какая логика должна быть у каждого из варианта? Я, вроде как, особо память не экономлю, но и тратить особо не хочется.
является ли структура по своей семантике владеющей по отношению к этой строке или нет
источник

AZ

Alexander Zaitsev in Rust Beginners
кажется, что в твоём случае надо просто завладеть и не париться
источник