Size: a a a

2021 May 05

EG

Emmanuel Goldstein in rust_offtopic
Это кажется. Там толстенный слой костылей, который работает чисто случайно.
источник

EG

Emmanuel Goldstein in rust_offtopic
Например, если переключить консоль в UTF-8 режим, то Rust сломается.
источник

ИЛ

Иван Лещенко... in rust_offtopic
А, понял. Интересная возможность
источник

AN

Alex Noname in rust_offtopic
Не ломается
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
не только раст. Поэтому я не переключаю
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
источник

AN

Alex Noname in rust_offtopic
Повершелл консоль не ломается
источник

EG

Emmanuel Goldstein in rust_offtopic
Должен. Rust на вендовую консоль умеет выдавать только UTF-16.
источник

r

red75prime in rust_offtopic
Если выкинуть совместимость с win 8 и ниже, то всё намного упростится. Но... народ хочет win 7
источник

/

/bin/cat in rust_offtopic
До этого коммита раст создавал сразу два Box и еще копировал данные из &'static str в String
источник

EG

Emmanuel Goldstein in rust_offtopic
Тут не хватает типа «str константного размера»
источник

EG

Emmanuel Goldstein in rust_offtopic
Как [u8; 5] только с допгарантией UTF-8
источник

EG

Emmanuel Goldstein in rust_offtopic
Технически, это можно было бы реализовать на уровне библиотеки с констдженериками
источник

EG

Emmanuel Goldstein in rust_offtopic
И тогда &Str<5> будет тонким указателем
источник

r

red75prime in rust_offtopic
Угу. В свое время удивило, что b"foo" - это [u8; 3], а "foo" - &'static str
источник

EG

Emmanuel Goldstein in rust_offtopic
Потому что байтслайсы это подвид обычных слайсов, а строки это специальный хитровыдуманный тип
источник

EG

Emmanuel Goldstein in rust_offtopic
И непонятно, как вообще записать строку константного размера
источник

EG

Emmanuel Goldstein in rust_offtopic
Без констдженериков, по крайней мере
источник

EG

Emmanuel Goldstein in rust_offtopic
А всё потому, что нефиг было делать str специальным типом
источник

EG

Emmanuel Goldstein in rust_offtopic
Utf8<[u8; 5]>, &Utf8<[u8]>, Utf8<Vec<u8>>
источник