Αλεχ
короч, чтобы заработало в хроме:
1. идем в chrome://net-internals/#hsts
2. в нижней части страницы в Delete domain security policies вбиваем docs.rs, жмем delete
3. заходим на docs.rs
4. advances -> proceed (unsafe)
Ivan
уже и без этого починили же
Ivan
вообще забавно, что такой меганужный проект пилит в одно лицо чувак, не имеющий отношения к официальной команде разработки раста и его инфраструктуры
Ivan
но вроде там есть какие-то подвижки в правильном направлении
Evgεny
официальная команда гендеры сортирует
Ivan
Vladimir
700+
Vladimir
Скриньте
Vladimir
Рано заскринил
Денис
почему рано?..
Vladimir
Я не исправил сообщение
Денис
Vladimir
Anton
только все равно и 50% не общается 🙂
Alexey
Cat
Там подъехало сравнение идиом в разных ЯП с растовыми аналогами
http://willcrichton.net/notes/idioms-of-dynamic-languages/
Денис
> Idioms of Dynamic Languages
> Dynamic
Cat
хз при чём там вообще dynamic
Αλεχ
Cat
да камон, это ещё одна возможность петоновчанам переехать на руст, чего плохого
Berkus
stringly typed shit
Cat
Денис
stringly typed :))
Cat
и ocaml
Berkus
> hardware (Perl),
TTTTTTIGGERED
Max
> 5. Partial programs
> return panic!(...)
unimplemented! же
Дмитрий
всем привет, есть вопрос один. что могло тут пойти не так?
fn append(&mut self, val: Box<Node<T>>) {
unsafe {
let mut next : *mut Option<Box<Node<T>>> = &mut self.next;
while (*next).is_some() {
next = &mut (*next).as_mut().unwrap().next;
}
*next = Some(val);
}
}
хотел сделать односвязный список и проблема в том, что при добавлении первого числа всё ок. когда добавляем второе, оно перезаписывает первое и добавляется в конец, когда 3, то оно перезаписывает предпоследнее и добавляется в конец и так далее. я абсолютно не понимаю, где косяк.
Max
YOU ARE NOT SPECIAL
Дмитрий
согласен.
Cat
Дмитрий
нет, я посмотрел в стандартной библиотеке, как ее реализовывали.
Дмитрий
есть ссылка?
Cat
Дмитрий
буду очень благодарен.
Дмитрий
не так как я это делал.
Cat
должно быть здесь, но у меня не открывается cglab.ca/%7Eabeinges/blah/too-many-lists/book/
Дмитрий
но суть в том, что я не совсем понял, как они получают последний элемент.
Дмитрий
чтобы добавить в конец.
Дмитрий
есть у них метод push_back
Дмитрий
который добавляет к текущему ноду в конец.
Cat
и в чём проблема?
Cat
кажется это стандартный подход в листах
anyway, сейчас найду другую ссылку
Cat
для вставки в конец
1. создают новую ноду
2. используют push_back_node чтобы вставить её в конец: https://doc.rust-lang.org/src/alloc/linked_list.rs.html#190
Дмитрий
да, но почему такой способ выдёт подобный результат?
я же просто нахожу последнюю ноду и кладу туда новое значение.
Дмитрий
Дмитрий
просто не хотелось бы хранить ссылку на последний элемент.
Roma
Cat
Дмитрий
и тебе привет.
Дмитрий
да, я так и делаю, но дело в том, что когда нахожу последний нод, который None и записываю в него значение, выходит такой результат.
Дмитрий
я думал, что что-то упустил.
Cat
Дмитрий
естественно.)
Дмитрий
всё бы было хорошо.
Дмитрий
ладно, спасибо.)
Cat
хотя бы потому, что много unsafe кода
Дмитрий
да, я понимаю. ничего. ну 1 метод. я написал таким образом, чтобы убрать рекурсию. с рекурсией будет точно такая же история. просто отладка с помощью принтов - то еще удовольствие.
Cat
предлагаю выложить код на play.rust-lang.org
Cat
там же есть и полная реализация в несколько заходов
Дмитрий
господи. я нашёл ошибку.
Дмитрий
)
Дмитрий
вообщем, всё у меня было отлично. я ошибся в методе преобразования листа в строку.
Дмитрий
спасибо. можно пойти спать.)
Cat
Cat
они за вас вызовут нужный метод при println!("{}", list);
Денис
... а в какой момент в этом чате стали общаться на "вы"?....
Дмитрий
да, я ставил аннотация над структурой(если они так называются), видимо это осталось еще когда смотрел какой-то пример. спасибо за помощь.
Cat
Cat
Cat
պլհկ
https://en.m.wikipedia.org/wiki/Soundness