Size: a a a

2021 January 13

DH

Dark Hole in dlang.ru
Oleg B
в моей реализации знание о структуре остаётся в точке вызова, дальше уходит только разобранная информация о структуре и сами данные (простые, типа чисел, строк)
Ты избавляешься от информации о структуре, а не о типе
источник

DH

Dark Hole in dlang.ru
А
источник

DH

Dark Hole in dlang.ru
Понял о чём ты
источник

OB

Oleg B in dlang.ru
т.е. структура данных не знает куда и как она будет писаться (csv, json, в ней это не заложенно)
сериализаторы csv и json не знают что будут сериализовывать (и в них тип не передаётся)
источник

DH

Dark Hole in dlang.ru
Dark Hole
Понял о чём ты
Ты хочешь избавиться именно от информации о структуре, не о типах
источник

OB

Oleg B in dlang.ru
Dark Hole
Ты хочешь избавиться именно от информации о структуре, не о типах
наоборот
источник

OB

Oleg B in dlang.ru
я избавился от необходимости знать тип, информация о структуре данных (кто в кого вложен) осталась
источник

OB

Oleg B in dlang.ru
опять же, в некоторых кейсах хочется получить именно описание типа, чтобы меньше записывать в файл, чтобы можно было прочитать это описание и восстановить из бинарного формата в json например
источник

DH

Dark Hole in dlang.ru
Oleg B
я избавился от необходимости знать тип, информация о структуре данных (кто в кого вложен) осталась
Необходимости знать структуру данных на самом нижнем уровне, грубо говоря
источник

DH

Dark Hole in dlang.ru
Примитивные типы ты всё равно как есть передаёшь
источник

OB

Oleg B in dlang.ru
Dark Hole
Необходимости знать структуру данных на самом нижнем уровне, грубо говоря
необходимость знать тип в терминах ЯП
источник

OB

Oleg B in dlang.ru
т.е. мне не нужно прокидывать импорт локальной (для какого-то модуля) структуры в точку где это будет печататься в json
источник

OB

Oleg B in dlang.ru
или городить модуль со всеми типами, которые будут использоваться в программе, чтобы каждый из них я мог распечатать
источник

OB

Oleg B in dlang.ru
(какие-то нужны глобально, но они не из-за печати глобальные)
источник

O

Oleg in dlang.ru
типы не преедются.. вот пришли какието данные строки,числа.. ты уже знаешь, к какому типу они относятся, куда их пропихивать?.. или это не твоя задача
источник

O

Oleg in dlang.ru
или T deserialize!T(json) и тупо распихиваем по совпадающим полям
источник

DH

Dark Hole in dlang.ru
Oleg
или T deserialize!T(json) и тупо распихиваем по совпадающим полям
Ему надо это в рантайме подменять
источник

OB

Oleg B in dlang.ru
Oleg
или T deserialize!T(json) и тупо распихиваем по совпадающим полям
у меня десериализации пока нет (задача узкая — писать в разные форматы), а информация о структуре передаётся с данными
источник

OB

Oleg B in dlang.ru
Oleg
типы не преедются.. вот пришли какието данные строки,числа.. ты уже знаешь, к какому типу они относятся, куда их пропихивать?.. или это не твоя задача
как печатать простые типы (числа строки) и что делать в случае "начала объекта" знают конкретные сериализаторы (json ставит скобки, csv добавляет уровень имён в заголовке)
источник

OB

Oleg B in dlang.ru
@JasenPen для более предметного разговора https://github.com/deviator/datasink (это не библиотека, а proof of concept, её нужно обкатывать, а потом ещё оформлять)
источник