darkmentat
вынес поле с вектором
darkmentat
аа
darkmentat
=)
darkmentat
не додумался запустить)
darkmentat
да, такое же выводило
Anonymous
cannot borrow `*self` as mutable because `self.strategy` is also borrowed as immutable Вот этой. Ты троллишь что ли?
ну вот видишь, что проблема вызвана отсутствием владения. поэтому получение владения - это никаким образом не воркараунд, тем более если не делать дополнительных подразумеваний
Anton
На этой странице "Search starred repos"
во первых я хер знает что ищу, во вторых описаний у некоторых реп вообще нет, не говоря уже о тегах
Anton
искать репы написанные бомжами годы назад можно только ассоциативно - если для них есть категория
Anonymous
https://play.rust-lang.org/?gist=cdb76df1fb398e437b93bb65a28a5256&version=stable Хм?
а это решается через имплементацию непосредстванно для Box<a>, правда для этого нужен стракт-помощник
Cuno
ну вот видишь, что проблема вызвана отсутствием владения. поэтому получение владения - это никаким образом не воркараунд, тем более если не делать дополнительных подразумеваний
Проблема вызвана не отсутствием владения, а reborrowing'ом, которого в данном случае быть не должно. Платить аллокацию в дань борроучекеру - глупо.
Anonymous
"быть не должно" это тоже подразумевание
Anonymous
по тому коду он очень обоснован
Cuno
Окей, разберемся с подразумеваниями. @DarkMentat одна стратегия должна иметь доступ ко всем остальным в данном Character?
Anonymous
какая разница
darkmentat
не, я уже вынес
Anonymous
я не оспариваю что есть решение лучше
Cuno
какая разница
Именно из за этого борроучекер и ругается
darkmentat
Character { name: String::from_str("Dexter").unwrap(), stats: CharacterStats { strength: 1, dexterity: 5, stamina: 1, athletics: 3, melee: 5, health: 0, }, strategy: vec![Box::new(MeleeAttack)] };
Anonymous
Именно из за этого борроучекер и ругается
а причина тому - отсутствие владения
Anonymous
что за спор
Cuno
а причина тому - отсутствие владения
При чем тут вообще владение?
Cuno
Мы ходим одной части структуры одолжить другую ее часть
Anonymous
и не владеем ей
Anonymous
вот при чем
Cuno
Зачем нам владение если мы имеем заимствование и его достаточно?
Anonymous
с чего ты взял что его достаточно?
Anonymous
посмотри на оригинальный код
Anonymous
он передает заимствованной части владение на своего владельца
darkmentat
ну, в оригинале я разобрался. там в структуре массив, оттуда беру другую штуку и в ней дергаю метод, куда мутабельно передаю саму структуру
darkmentat
тоесть когда брал в массиве елемент, я какбы одолжил весь массив, а значит всю структуру
darkmentat
и попытался ее передать в метод мутабельно
darkmentat
тоесть одновременно одолжил и структуру, и ее часть(елемент массива)
Cuno
он передает заимствованной части владение на своего владельца
Нигде там владение не передается, там везде заимствование.
Anonymous
> perform_at(self, ...
Anonymous
и правда
Cuno
self в данном контексте это &mut Character
Anonymous
а
Anonymous
ну вообще это не важно здесь
Anonymous
то есть исправлено будет "он передает заимствованной части заимствованным своего владельца"
Loo
Looking for maintainers (join us!) · Issue #593 · rusoto/rusoto https://github.com/rusoto/rusoto/issues/593
darkmentat
Да, разбил структуру на части и часть передавал
darkmentat
Немного криво выглядит правда, но работает😅
Vladimir
ну окей, мог еще екшин запихнуть в какой-то Arc, если прям кайне необходимо было б екшены держать в структуре (например если одно из действий может накинуть новые действия, или удалить старые)
darkmentat
ага
Vladimir
и возможное тебе нужно просто заюзать готовую ECS ?
Vladimir
Я ж так понимаю, екшины это какраз компоненты
darkmentat
Что такое ecs?
Vladimir
entity component system
darkmentat
Кул, почитаю
darkmentat
Хотя не думаю, что нужно что-то готовое, просто начал с этой штукой играться чисто что бы в раст повникать понемногу)
Vladimir
ну окей, но по факту это выглядит как не сильно правильное ECS x)
darkmentat
Но про него почитаю
Loo
Выиграй поездку в норвежский офис Vivaldi https://habrahabr.ru/post/345160/
Loo
Надо скинуть поцанам на конкурс видос
Loo
Где я через Вивальди захожу на сайт файрфокса
Loo
Скачиваю и устанавливаю его
Loo
И удаляю Вивальди
Loo
vladislav
Скачиваю и устанавливаю его
Открываешь фаерфокс, скачиваешь хром и удаляешь фаерфокс?
Loo
Хром не на расте
vladislav
Открываешь хром, скачиваешь интернет эксплоер и удаляешь хром
vladislav
Алексей
с 57 версии фирефокса переехал на него... реально ведь быстрым становится. Как когда то давным давным давно
Алексей
это же только CSS движок переписали... дальше за остальной WEB частью дело... жду с нетерпением
Vladimir
Ну он стал быстрее относительно себя самого, лол
Ну жс там медленный, а цсс быстрее относительно асего
Anton
Ну че пацаны? Как ваше утро
Anton
Anton
Я тут уже плачу о котлине
Anton
Точнее из-за него
Anton
Крч посоны никогда не юзайте ни жаву ни то что сделано поверх нее
Anonymous
неужели все так плохо?
Anton
Да пиздец
Anton
То-есть как делать то понятно
Andrew
Даенадцатый час ночи, какое утро
Anton
А вот калечить себя "особенностями" языка и ведра - включая обмазывание идеей которая уже сейчас жрет 3 гига оперативы
Anton
Ваще не весело