chronoxor / FastBinaryEncoding

Fast Binary Encoding is ultra fast and universal serialization solution for C++, C#, Go, Java, JavaScript, Kotlin, Python, Ruby, Swift
https://chronoxor.github.io/FastBinaryEncoding
MIT License
827 stars 86 forks source link

Switch out std::optional with tl::optional #82

Closed adrianduke closed 1 year ago

adrianduke commented 1 year ago

According to the docs: https://github.com/TartanLlama/optional - tl::optional is API compatible with std::optional however it supports c++11 onwards. According to your docs, this is the only dependency preventing this project compiling with an older c++ version.

To your knowledge would switching this dependency make this project at least c++14 compatible?

chronoxor commented 1 year ago

I think it's easy to check - just search & replace "std::optional" -> "tl::optional" in generated FBE C++ code and include "tl/optional.hpp" in fbe.h

As I remember no other C++17 features are used in FBE