Size: a a a

2020 October 28

EG

Emmanuel Goldstein in Rust Beginners
Adatan
почему *может* и зачем тут дереф?
«Может» потому, что трейт Deref реализован не для всех типов
источник

EG

Emmanuel Goldstein in Rust Beginners
https://doc.rust-lang.org/alloc/string/struct.String.html#impl-Deref
Но для строки реализован, вот он
источник

AM

Anton Motin in Rust Beginners
Алексей Герасимов
то есть когда ты создаешь mut ссылку, ты замораживаешь значение
Но при этом затенять переменную позволяет:

fn main() {
   let s = String::from("hello");
   let r = &s;
   let s = String::from("world");
   println!("{}, {}", r, s);
}
источник

АГ

Алексей Герасимов... in Rust Beginners
Anton Motin
Но при этом затенять переменную позволяет:

fn main() {
   let s = String::from("hello");
   let r = &s;
   let s = String::from("world");
   println!("{}, {}", r, s);
}
так r здесь на другое значение указывает, это 2 разных строки
источник

АГ

Алексей Герасимов... in Rust Beginners
ты затенил имя s
источник

АГ

Алексей Герасимов... in Rust Beginners
r ссылается на значеение «hello», а перед принтом в новую переменную с именем s кладется world. страря продолжает жить, но получить к ней доступ ты уже не сможешь, потому что имя s переопределено
источник

АГ

Алексей Герасимов... in Rust Beginners
это называется name shadowing
источник

EG

Emmanuel Goldstein in Rust Beginners
Anton Motin
Но при этом затенять переменную позволяет:

fn main() {
   let s = String::from("hello");
   let r = &s;
   let s = String::from("world");
   println!("{}, {}", r, s);
}
Имена переменных не имеют значения
источник

EG

Emmanuel Goldstein in Rust Beginners
А если заменить второе s на s2, становится очевидно, почему это работает
источник

AM

Anton Motin in Rust Beginners
Спасибо🙏
источник

АК

Алексей Кравченко... in Rust Beginners
Ребята, где-то натыкался, мне казалось что в Rust by example, создаем прокси сервер.

Но теперь найти не могу, может кто-то помнит? Или видел недавно?
источник

AM

Anton Motin in Rust Beginners
Ушёл читать растбук дальше и не задавать пока тупых вопросов)
источник

D

Dmitry. in Rust Beginners
Anton Motin
Ушёл читать растбук дальше и не задавать пока тупых вопросов)
Нет уж задавай

Иначе это придется делать мне
источник

w

whoami in Rust Beginners
похоже автор берёт не ту строку, либо нужно пропустить одну строку, либо наоборот не пропускать, тыкался по всякому, нифига не понятно

https://github.com/epilys/bb/blob/6de5d6ddc75dd92aad9102192cefa73debe939d1/src/components/kernel.rs#L537

нужно взять MemAvailable... но по тому что пишет программа, похоже что он берёт либо 2-ую, либо 4-ую строку

$ head -n4 /proc/meminfo
MemTotal:       16348392 kB
MemFree:          156956 kB
MemAvailable:   11690380 kB
Buffers:          108468 kB
источник

АГ

Алексей Герасимов... in Rust Beginners
whoami
похоже автор берёт не ту строку, либо нужно пропустить одну строку, либо наоборот не пропускать, тыкался по всякому, нифига не понятно

https://github.com/epilys/bb/blob/6de5d6ddc75dd92aad9102192cefa73debe939d1/src/components/kernel.rs#L537

нужно взять MemAvailable... но по тому что пишет программа, похоже что он берёт либо 2-ую, либо 4-ую строку

$ head -n4 /proc/meminfo
MemTotal:       16348392 kB
MemFree:          156956 kB
MemAvailable:   11690380 kB
Buffers:          108468 kB
если перед этой строкой вставить lines_iter.next().unwrap()?
источник

АГ

Алексей Герасимов... in Rust Beginners
он видимо наличие строки с memfree не учел
источник

АГ

Алексей Герасимов... in Rust Beginners
либо у него сортировка строк другая (хз возможно ли это). надо по-нормальному парсить а не на порядок закладываться
источник

w

whoami in Rust Beginners
я делал подобные вещи, показывает всё равно не то
источник

w

whoami in Rust Beginners
на ? кстати ругается
источник

w

whoami in Rust Beginners
источник