Size: a a a

2021 April 15

EG

Emmanuel Goldstein in rust_offtopic
Про RawWaker
источник

AN

Alex Noname in rust_offtopic
я про dyn_clone черную магию
источник

EG

Emmanuel Goldstein in rust_offtopic
Там и есть dyn Clone чёрная магия
источник

AN

Alex Noname in rust_offtopic
крэйт такой есть. там просто поинтеры кастуются и всё.
источник

AN

Alex Noname in rust_offtopic
никакого стэка.
источник

AN

Alex Noname in rust_offtopic
через *mut (), что равно сишному *void как я понимаю
источник

AN

Alex Noname in rust_offtopic
похоже на какой то аналог решения с CRTP и static_cast если из плюсов идти. Но я что то туплю. как оно гарантирует сейфити хм..
источник

AN

Alex Noname in rust_offtopic
а не там хитрее. там толстый указатель разбирается на две части.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
   /// Wake up the task associated with this `Waker`.
   #[inline]
   #[stable(feature = "futures_api", since = "1.36.0")]
   pub fn wake(self) {
       // The actual wakeup call is delegated through a virtual function call
       // to the implementation which is defined by the executor.
       let wake = self.waker.vtable.wake;
       let data = self.waker.data;

       // Don't call `drop` -- the waker will be consumed by `wake`.
       crate::mem::forget(self);

       // SAFETY: This is safe because `Waker::from_raw` is the only way
       // to initialize `wake` and `data` requiring the user to acknowledge
       // that the contract of `RawWaker` is upheld.
       unsafe { (wake)(data) };
   }
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
мне интеерсно почему мы форгеттим self - разве не утечка? Дроп это же не только деструкторы но и фри
источник

KR

Kai Ren in rust_offtopic
Так он же на стэке, нет?
источник

EG

Emmanuel Goldstein in rust_offtopic
Он на стеке
источник

EG

Emmanuel Goldstein in rust_offtopic
Ради чего и делается вся эта фигота с ad-hoc трейт обджектами
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а, ну да
источник

А

Алексей in rust_offtopic
лол
источник

SP

Stanislav Popov in rust_offtopic
боже что они все несут https://t.me/nikitonsky_chat/6830
источник

KR

Kai Ren in rust_offtopic
И где ты только это находишь 🙈
источник

SP

Stanislav Popov in rust_offtopic
это же ТОНКСКИ
источник

SP

Stanislav Popov in rust_offtopic
там и лев валкин
источник

SP

Stanislav Popov in rust_offtopic
надо конечно отписываться
источник