microsoft / bond

Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services.
MIT License
2.61k stars 321 forks source link

Merge API support for C#? #1172

Closed DerrikCreates closed 1 year ago

DerrikCreates commented 2 years ago

I've been trying to find if there is a way to use the merge API in C# for the past few hours and haven't had any luck. Is this not supported or is there another C# specific approach to this?

chwarr commented 2 years ago

No, there is no merge API in C# Bond.

Microsoft has no plans to implement such an API (We don't need it for our own use of Bond internally.), but it would fit in to Bond, if you wanted to contribute it.

The C++ Merge API takes a payload and an object and produces a payload. In C#, you could implement a variation on a Serializer that did something like this.

If you just want something for your codebase, I suspect you'd need to duplicate a lot of the "infrastructure" code that Serializer uses that isn't public.

If you are interested in contributing, can you please create a new issue that outlines the API shape, semantics, implementation plan, and test plan?

chwarr commented 1 year ago

I believe this has been answered.