Size: a a a

2020 February 26

В

Вафель in rust_offtopic
Вафель
блин. У меня в коде очень большой матч по константе из дженерика не оптимизируется, а на godbolt оптимизируется
Опять какие-то преждевременные птимизации, это же просто Display, вафель, ты чего
источник

В

Вафель in rust_offtopic
а это кто
Асм локального компилятора на компютере Вафли и асм гоодболта наверное хз
Да, cargo asm смотрю как Display у моего типо компилируется и по ощущениям там больше чем .write_str("x") хотя в более простом примере получается именно так
источник

MW

Merlin Wizard in rust_offtopic
подскажите плз, а есть GUI на html-шаблонизаторе для Rust? только без javascript (о тормозах  электрона наслышан)
источник

В

Вафель in rust_offtopic
Вафель
Да, cargo asm смотрю как Display у моего типо компилируется и по ощущениям там больше чем .write_str("x") хотя в более простом примере получается именно так
Там условно

impl<T: Consts> Struct<T> {
   fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
       let s = match T::CONSTS {
           X::CONSTS => {},
           Y::CONSTS => {},
           ... // и так условно 100-200 вариантов
       }
       match s {
           Some(str) => f.write_str(s),
           None => { ... }
       }
   }
}
источник

p

polunin.ai in rust_offtopic
Merlin Wizard
подскажите плз, а есть GUI на html-шаблонизаторе для Rust? только без javascript (о тормозах  электрона наслышан)
Электрон тормозит если неправильно писать на нем
источник

p

polunin.ai in rust_offtopic
VSCode вон нормально работает
источник

В

Вафель in rust_offtopic
Вафель
Там условно

impl<T: Consts> Struct<T> {
   fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
       let s = match T::CONSTS {
           X::CONSTS => {},
           Y::CONSTS => {},
           ... // и так условно 100-200 вариантов
       }
       match s {
           Some(str) => f.write_str(s),
           None => { ... }
       }
   }
}
Вроде фигня полная, но так раздражает это знание >:(
источник

OA

Oleg Andreev in rust_offtopic
polunin.ai
VSCode вон нормально работает
пользовался я этим VSCode-ом. Во-первых, прокрутка не нативная. Во-вторых, лаги все-тки заметны по сравнению с сублаймом
источник

OA

Oleg Andreev in rust_offtopic
хотя в нем тоже не нативная. Где ж, блин, нормальные редакторы.
источник

AZ

Alex Zhukovsky in rust_offtopic
Вафель
Там условно

impl<T: Consts> Struct<T> {
   fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
       let s = match T::CONSTS {
           X::CONSTS => {},
           Y::CONSTS => {},
           ... // и так условно 100-200 вариантов
       }
       match s {
           Some(str) => f.write_str(s),
           None => { ... }
       }
   }
}
А макросами нельзя это сделать?
источник

AZ

Alex Zhukovsky in rust_offtopic
Кстати в скале вроде можно
источник

AZ

Alex Zhukovsky in rust_offtopic
без макрософ, просто сказать "эта функа вот эти 4 варианта обрабатывает, вон та - эти пять"
источник

AZ

Alex Zhukovsky in rust_offtopic
и потом компилятор чекнет что exhaustive не нарушен
источник

В

Вафель in rust_offtopic
Alex Zhukovsky
А макросами нельзя это сделать?
Макросы ast смотрят, а мне надо в типы подглядеть/константы почекать
источник

В

Вафель in rust_offtopic
была бы специализация можно было чисто на типах разрулить
источник

В

Вафель in rust_offtopic
а так — нет :(
источник

В

Вафель in rust_offtopic
Alex Zhukovsky
и потом компилятор чекнет что exhaustive не нарушен
У меня там есть default бранч который делает сложное (ненужное в 90% кейсах) форматирование
источник

AZ

Alex Zhukovsky in rust_offtopic
Вафель
У меня там есть default бранч который делает сложное (ненужное в 90% кейсах) форматирование
никто не запрещает выносить функции
источник

AZ

Alex Zhukovsky in rust_offtopic
даже локальные причем
источник

G

Gymmasssorla in rust_offtopic
Вафель
Макросы ast смотрят, а мне надо в типы подглядеть/константы почекать
В дерево разбора смотрят*
источник