Kerrigan
на деле я не думаю, что оно дальше 32битного числа может вылезти
պլհկ
там же нет 128
Kerrigan
там есть 64битный унсигнед
Kerrigan
которому потом не хватает бита, чтобы стать отрицательным
Kerrigan
по идее можно забить на спеку сразу после 64битного числа, потому что этим варинтом только длина кодируется
Tim
вообще как бы не нужно, но для полноценной реализации varint будет нужно
аа, это похоже на leb/uleb из далвика вроде
signed LEB128, variable-length (see below)
uleb128 unsigned LEB128, variable-length (see below)
uleb128p1 unsigned LEB128 plus 1, variable-length (see below)
https://source.android.com/devices/tech/dalvik/dex-format
UPD: ток чутка по-другому закодировано - тут через префикс, а там через флаг в каждом байте
Anton
И как же
Когда все время твоих запросов с ростом в контексте языка он потом сам его в приоритет ставит
Anton
Anton
Гугле тоже
でゲソ
Mikhail
Tim
это не то же самое что и long long?
long long - он обычно 64-битный. и вообще платформозависимый. я давно уже ушёл на типы из cstdint вроде uint64_t - после того как оказалось что long под виндой и под линуксом на 64 битах разного размера. гори оно в аду те кто это придумал.
Kerrigan
Kerrigan
вообще редко где 128бит юзают, да
kitsu
kitsu
никто в аи капе мейловском не участвует?
Mikhail
мне казалось что long long как минимум 64 битный
Tim
Kerrigan
Kerrigan
в смысле я не помню никаких бесплатных футболок
kitsu
ужс, а ты точно разработчик?
у меня бОльшая половина вещей - халявные футболки и толстовки
Kerrigan
по-моему один раз подарили поло и кружку
Kerrigan
Kerrigan
ладно, лучше в rustjerk с таким
Kerrigan
параллельная вселенная
Anton
кроме стикеров с конф ничего не получал
Anton
хех
Kerrigan
https://github.com/barzamin/nom-reader какая полезная либа всего 1 файлик
Kerrigan
Loo
Денис
nom::IResult::Done(_, parsed) => return Ok(parsed),
Денис
все лишние байты выкидываем, правильно
Денис
зачем они нужны
Денис
и вот бы по одному байту читать))
Kerrigan
там не будет лишних байтов по идее
Денис
можно придумать кейс, когда будут) то есть когда парсер понимает, что данные готовы только прочитав лишку
Kerrigan
мда
Денис
например, читая cvs-файл ты теряешь запятые) ну это плохой пример, потому что они тебе и не нужны
Kerrigan
получается тут нужен какой-то буфер, в который можно данные возвращать
Денис
но можно извратиться))
Денис
ну не зря у нома функции всегда возвращают "остаток"
Денис
и тут бы так же по-хорошему надо делать
Anton
Anton
но XL размера там не было
Anton
:(
Evgeniy
Filipp
Денис
kitsu
есть какие-нибудь няшные либы для FSA?
kitsu
или все делают просто через енам+матч?
Kerrigan
ты хотел сказать FSM?
Evgεny
валидны оба
Kerrigan
мне кажется FSA это калька с русского
Kerrigan
а, переводится как finite-state automation
Kerrigan
не видел такого раньше, сорь
Evgεny
Kerrigan
ragel с растом не работает?
պլհկ
все делают через type state
<trollface>
պլհկ
>enum
>не session types
>2018
Marat
Marat
Вот такая есть
kitsu
о, отлично, пошел придумывать
Tuntz
Коллеги, объясните пожалуйста: почему данный пример собирается?
#[derive(Debug)]
struct A {
s: String,
}
fn main() {
let a = &A{s: "Hello world".into()};
println!("{:?}", a);
}
Tuntz
экземпляр A должен сдохнуть после инициализации, в конце выражения, разве нет?
Денис
почему он должен сдохнуть?
Денис
он живёт до конца скоупа
Денис
и?
Evgεny
а скоуп разве не let a = { }
Денис
взял ссылку — убил объект, так что ли?)
Evgεny
и он не кончится там?
Kerrigan
я не вижу, чтобы область видимости закончилась
Ilya
это эквивалентно let a =... ; let a =&a;
Kerrigan
область видимости это { /* какой-то код */ }
Денис
так вот и перемежаются вопросы про конечные автоматы и области видимости))