Size: a a a

2021 April 21

CD

Constantine Drozdov in rust_offtopic
я к тому, что в 2021 году передавать длину за счёт null terminator это сверлить дыру себе в ноге
источник

NL

Nick Linker in rust_offtopic
вот и это тоже
источник

CD

Constantine Drozdov in rust_offtopic
телега вроде смешным способом пошла, они, кажись, схемы данных при передаче описывают :)
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Это FFI, привыкай.

C API единственное стабильное аби рабочее
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а других строк в си и нет
источник

CD

Constantine Drozdov in rust_offtopic
есть, конечно, никто не требует от тебя использовать null terminated строки в C :)
источник

EG

Emmanuel Goldstein in rust_offtopic
cxx умеет в rust::String и rust::Str
источник

NL

Nick Linker in rust_offtopic
Но только по ссылке.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а какие строки ещё есть? такие чтобы все их понимали
источник

EG

Emmanuel Goldstein in rust_offtopic
Ноп. CxxString только по ссылке, а rust::String можно и по значению.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а не 1.5 инвалида
источник

Т8

Т-34 85 in rust_offtopic
ну можно слепить свой тип, никто же не запрещает
источник

CD

Constantine Drozdov in rust_offtopic
там, strn функции есть
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
который будет оберткой над тем же CString как я и сделал собственно
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
короче каккой-то холивар ей-богу
источник

NL

Nick Linker in rust_offtopic
Да, точно, СxxString только по ссылке.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
передать нулл-терминейтед через FFI boundary, скопировать в любой std::String и забыть как страшный сон - в чем трабл-то?
источник

EG

Emmanuel Goldstein in rust_offtopic
Дополнительный проход по строке для определения размера
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
ну и хер с ним
источник

Т8

Т-34 85 in rust_offtopic
если ты хочешь обёртку над сишной строкой, то да. Но можно вообще свой тип сделать в рамках сишного аби
источник