idealvin / coost

A tiny boost library in C++11.
Other
3.91k stars 558 forks source link

json模块功能增强 #334

Closed mankouzhuya closed 10 months ago

mankouzhuya commented 12 months ago

作者可以考虑一下把现有的json功能增强一下嘛,比如json字符串转struct,struct转json字符串这些功能,这些功能非常实用。参考: https://github.com/xyz347/xpack

idealvin commented 12 months ago

有更好的实现方法吗?

mankouzhuya commented 11 months ago

https://github.com/qicosmos/iguana 也实现了类似的序列化和反序列化功能

momooy commented 11 months ago

xpack巨好用

idealvin commented 10 months ago

@mankouzhuya

coost 中 JSON RPC 框架中的 gen 工具,可以顺便支持所需功能。

xx.proto 文件中像如下定义 JSON 结构:

// supported base types:
//   bool, int, int32, uint32, int64, uint64, double, string
object X {
    string api
    data {  // anonymous object, field name can be put ahead
        bool b
        int i
        double d
        [int] ai   // array of int
        ao [{      // array of anonymous object
            int v
            string s
        }]
    }
}

直接 gen xx.proto 就可以生成所需要的代码,可以用 master 最新代码试试。

idealvin commented 10 months ago

参考示例 j2sgen j2s.proto 即可生成所需代码

mankouzhuya commented 2 days ago

OK,我现在用的xpack ,我后面有机会试试里面自带的json工具