Size: a a a

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

2020 April 07

L

Lain-dono in RU Rust GameDev — русскоговорящее сообщество
Ещё скриншотик приложил
источник

L

Lain-dono in RU Rust GameDev — русскоговорящее сообщество
Или ты о чём?
источник

AL

Andrey @ozkriff Lesnikov in RU Rust GameDev — русскоговорящее сообщество
источник

L

Lain-dono in RU Rust GameDev — русскоговорящее сообщество
Кстати мои недавние хаки вокруг лайфтаймов были из-за этой штуки как раз. Но я уже доделал и убрал.
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
У меня идиотский вопрос, если я избавлюсь от метода репорт и сделаю эту же функциональность в дропе, гарантированно ли что мой стопвотч доживёт до самого конца скоупа?
use std::time::Instant;

pub struct StopWatch {
   associated_name: &'static str,
   time_started: Instant
}

impl StopWatch {
   pub fn start(associated_name: &'static str) -> Self {
       StopWatch {
           associated_name,
           time_started: Instant::now()
       }
   }
   pub fn report(&mut self) {
       println!("\"{}\"\t{}", self.associated_name, self.time_started.elapsed().as_nanos());
   }
}
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
Тому що закрадывается сомнение
источник

L

Lain-dono in RU Rust GameDev — русскоговорящее сообщество
Виталий Медоваров
У меня идиотский вопрос, если я избавлюсь от метода репорт и сделаю эту же функциональность в дропе, гарантированно ли что мой стопвотч доживёт до самого конца скоупа?
use std::time::Instant;

pub struct StopWatch {
   associated_name: &'static str,
   time_started: Instant
}

impl StopWatch {
   pub fn start(associated_name: &'static str) -> Self {
       StopWatch {
           associated_name,
           time_started: Instant::now()
       }
   }
   pub fn report(&mut self) {
       println!("\"{}\"\t{}", self.associated_name, self.time_started.elapsed().as_nanos());
   }
}
Можно руками вызвать drop
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
он получается может не дожить если мы его мувнули либо пересвязали имя
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
при ручном вызове дроп тоже может умереть раньше, но это по сути и есть "мувнули"
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
во всех других случаях доживёт до конца скоупа и дропнется там где я хочу, верно?
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Эмм, у тебя есть гарантия что дроп "всегда" вызовется по завершению жизни конкретного значения.
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
ну вот я и думаю когда эта жизнь закончится
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
в момент когда значение перестало использоваться в скоупе или же в момент когда оно вышло из скоупа?
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Когда скоуп закончился а значение из него никто не мувнул.
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Ты из плюсов свичишься, чтоб я понимал?
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
Окей. Отлично. значит можно выкинуть нахер метод репорт
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
и полагаться на дроп
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
Ну, я вообще мультиязычник
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
шарп, котлин, плюсы
источник

ВМ

Виталий Медоваров in RU Rust GameDev — русскоговорящее сообщество
теперь вот раст)
источник