Size: a a a

2020 February 07

AZ

Alex Zhukovsky in rust_offtopic
так жить
источник

r

red75prime in rust_offtopic
С одной стороны for<T: ?Sized> <T as Object>::Output: 'static , так как есть blanket implementation. С другой стороны <dyn Object<Output=&'a u64> as Object>::Output == 'a, потому что так сказали. То, что конкретных типов, подходящих под dyn Object<Output=&'a u64> быть не может, не учитывается.
источник

Ct

Casual tears in rust_offtopic
Alex Zhukovsky
схера ли &'a u64 становится &'static
это давний баг в компиляторе
источник

Ct

Casual tears in rust_offtopic
На crates.io есть крейт с этим transmute_lifetime
источник

r

red75prime in rust_offtopic
Хм. Работает даже если сделать
trait Object {
   type Output: 'static;
}

Well-formedness для dyn Object<Output = ...> вообще не проверяется, что-ли?
источник

Ct

Casual tears in rust_offtopic
https://github.com/rust-lang/rust/issues/57893
Хм, похоже таки что-то новое. Я думал это дупликат https://github.com/rust-lang/rust/issues/25860
источник

P

Pavel in rust_offtopic
λоλторт
S.repeatM (T.hGetLine iHandle)
 >>= splitColumns
 & S.fold (SF.drainBy $ T.hPutStr oHandle)
 & serially
 & S.drain
 & handleEof
where
 splitColumns = S.fromList . fmap (<> "\n") . T.split (== ',')

вот нетормозящий вариант
оно превращает неэкранированный csv в строку из все значений?
источник

λ

λоλторт in rust_offtopic
Pavel
оно превращает неэкранированный csv в строку из все значений?
входной файл — неэкранированный цсв, выходной файл — то, что было в цсв, только каждая колонка в отдельной строке
источник

P

Pavel in rust_offtopic
λоλторт
входной файл — неэкранированный цсв, выходной файл — то, что было в цсв, только каждая колонка в отдельной строке
transpose, короче
источник

λ

λоλторт in rust_offtopic
Pavel
transpose, короче
не, не транспоуз
источник

λ

λоλторт in rust_offtopic
a,b,c
d,e,f
->
a
b
c
d
e
f
источник

λ

λоλторт in rust_offtopic
для транспоуза надо либо в память всё прочитать, либо обходить файл множество раз
источник

λ

λоλторт in rust_offtopic
тут проход один
источник

P

Pavel in rust_offtopic
а, я изначально так и подумал, но потом не увидел где б ньюлайны взялись
источник

λ

λоλторт in rust_offtopic
Pavel
а, я изначально так и подумал, но потом не увидел где б ньюлайны взялись
fmap (<> "\n")
источник

λ

λоλторт in rust_offtopic
хотя можно и map (<> "\n"), ибо там обычный список
источник

AZ

Alex Zhukovsky in rust_offtopic
λоλторт
fmap (<> "\n")
а ты ++ не используешь чтобы красивее было или нет?
источник

P

Pavel in rust_offtopic
λоλторт
fmap (<> "\n")
ну это я вижу, но я не понял, что оно должно сделать
источник

λ

λоλторт in rust_offtopic
Alex Zhukovsky
а ты ++ не используешь чтобы красивее было или нет?
(++) имеет тип String -> String -> String, а String тормозной, его никто не использует
источник

AZ

Alex Zhukovsky in rust_offtopic
λоλторт
(++) имеет тип String -> String -> String, а String тормозной, его никто не использует
а у тебя что за тип?
источник