Size: a a a

Rust — русскоговорящее сообществo

2020 October 21

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
но мне не ругаться с ними надо а проблему было решить, в итоге я напишу обертку на 16 ифах
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Эрик
Я вообще не знаю, кто кроме JS может типы нормально кастовать по строке.
Идрис
источник

Э

Эрик in Rust — русскоговорящее сообществo
Nerzh Woodcrust
но мне не ругаться с ними надо а проблему было решить, в итоге я напишу обертку на 16 ифах
Там всего 16 типов?
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
и буду строку в словарь, потом рекурсивно из словаря в свой тип а свой тип стандартным Encodable свифтовым протоколом снова в json
источник

Э

Эрик in Rust — русскоговорящее сообществo
Nerzh Woodcrust
и буду строку в словарь, потом рекурсивно из словаря в свой тип а свой тип стандартным Encodable свифтовым протоколом снова в json
Звучит прямо как куча лишнего кода, лишних аллокаций и просто отвратительная архитектура. Всё, лишь бы не брать protobuf/flatbuffers.
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
Эрик
Звучит прямо как куча лишнего кода, лишних аллокаций и просто отвратительная архитектура. Всё, лишь бы не брать protobuf/flatbuffers.
я люблю grpc
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
Эрик
Звучит прямо как куча лишнего кода, лишних аллокаций и просто отвратительная архитектура. Всё, лишь бы не брать protobuf/flatbuffers.
короче, я буду просто рад, чтобы получилось написать весь этот бред и чтобы не пришлось вообще все время работать с одними словарями типа [String: Any] потому что именно в это парсит свифт json
и надо отак
if let country = dict["country"] as? [String: Any] {
  if let name = country["name"] as? String {
        и так каждое значение и вложенность
ведь там Any
  }    
}
источник

Э

Эрик in Rust — русскоговорящее сообществo
А ссылка на API есть?
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
не, это закрытая dylib библиотека я ее слинковал и втянул через сишный хедер публичные методы
источник

Э

Эрик in Rust — русскоговорящее сообществo
А просто сигнатуру функций показать можешь?
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
тоесть она черный ящик и документация от руки
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
Эрик
А просто сигнатуру функций показать можешь?
могу достать но там два метода один из них принимает 2 параметра название и json строку в ответ json ответ
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
ну понятно что указатель на строку а не строку и тд
источник

Э

Эрик in Rust — русскоговорящее сообществo
"ответ json ответ" — это в каком виде?
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
но суть в том что в этих жсонах может быть поле с типом в котором придет или число или друго жсон
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
Эрик
"ответ json ответ" — это в каком виде?
вот тут то и вся суть постоянно в разном
источник

NW

Nerzh Woodcrust in Rust — русскоговорящее сообществo
и не всегда строго типизированном
источник

Э

Эрик in Rust — русскоговорящее сообществo
Ну, с JSON без кучи if никак, особенно если данные в разном виде приходят.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Есть такая штука как JSON-указатель, но и он не всегда помогает.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Может оказаться так, что функциональность этой либы проще самому написать, чем с ответами в JSON разбираться.
источник