Size: a a a

Rust — русскоговорящее сообществo

2020 March 03

P

Pavel in Rust — русскоговорящее сообществo
+ она хочет референс, а если структура не выровнена в памяти, то получение референса с указателя — уб
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
и откуда она узнает, где я храню размер объекта у себя в структуре?
А, ты про кастомные структуры.
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
и откуда она узнает, где я храню размер объекта у себя в структуре?
Так подожди, это же не так работает. Размер unsized структуры хранится в толстом указателе на нее, а не в ней самой.
источник

P

Pavel in Rust — русскоговорящее сообществo
Casual tears
Так подожди, это же не так работает. Размер unsized структуры хранится в толстом указателе на нее, а не в ней самой.
откуда толстый указатель узнает размер этой структуры? Мы ж его создать сами не можем, он pub(crate)
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
откуда толстый указатель узнает размер этой структуры? Мы ж его создать сами не можем, он pub(crate)
Так он же при создании известен, размер то.
источник

P

Pavel in Rust — русскоговорящее сообществo
Casual tears
Так он же при создании известен, размер то.
а я не создаю эти структуры, я их из памяти читаю
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
а я не создаю эти структуры, я их из памяти читаю
Ну тогда это задача не для языка, а для библиотеки с парсерами, не?
источник

P

Pavel in Rust — русскоговорящее сообществo
Casual tears
Ну тогда это задача не для языка, а для библиотеки с парсерами, не?
и как на расте написать такой парсер?
источник

P

Pavel in Rust — русскоговорящее сообществo
или это невыразимая проблема?
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
и как на расте написать такой парсер?
берешь какой-нибудь nom и пишешь, где проблемы?
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Как вы пришли к парсерам?
источник

P

Pavel in Rust — русскоговорящее сообществo
polunin.ai
Как вы пришли к парсерам?
я вот тоже хз
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
Как вы пришли к парсерам?
А как еще из кучки байт получить валидную структуру?
источник

P

Pavel in Rust — русскоговорящее сообществo
Casual tears
А как еще из кучки байт получить валидную структуру?
она и так валидная структура и лежит в памяти
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
она и так валидная структура и лежит в памяти
Что-то не верится.
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Тут проблема в том, что "валидная структура" - сложная штука
источник

P

Pavel in Rust — русскоговорящее сообществo
Casual tears
Что-то не верится.
открываешь UEFI спеку и ищешь DevicePath
источник

P

Pavel in Rust — русскоговорящее сообществo
nom поддерживает no_std?
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Pavel
nom поддерживает no_std?
да
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
А как еще из кучки байт получить валидную структуру?
Ну вообще насколько я знаю из кучки байт получать структуру плохая идея, так как компилятор может расставлять поля по своему усмотрению
источник