summaryrefslogtreecommitdiff
path: root/graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h')
-rw-r--r--graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h22
1 files changed, 8 insertions, 14 deletions
diff --git a/graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h b/graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h
index 477c822845..1763c84f5f 100644
--- a/graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h
+++ b/graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h
@@ -1,11 +1,6 @@
#pragma once
#include "macro_map.h"
-#ifdef boost
-#include "optional.hpp"
-#else
-#include <boost/optional.hpp>
-#endif
#include <cassert>
#include <memory>
@@ -16,6 +11,7 @@
#include <map>
#include <algorithm>
+#include "optionalVersion.h"
struct AbsolutePath;
@@ -205,9 +201,8 @@ void Reflect(Reader& visitor, SerializeFormat& value);
void Reflect(Writer& visitor, SerializeFormat& value);
//// Type constructors
-
template <typename T>
-void Reflect(Reader& visitor, boost::optional<T>& value) {
+void Reflect(Reader& visitor, optional<T>& value) {
if (visitor.IsNull()) {
visitor.GetNull();
return;
@@ -217,7 +212,7 @@ void Reflect(Reader& visitor, boost::optional<T>& value) {
value = std::move(real_value);
}
template <typename T>
-void Reflect(Writer& visitor, boost::optional<T>& value) {
+void Reflect(Writer& visitor, optional<T>& value) {
if (value)
Reflect(visitor, *value);
else
@@ -226,7 +221,7 @@ void Reflect(Writer& visitor, boost::optional<T>& value) {
template <typename T>
-void ReflectMember(Writer& visitor, const char* name, boost::optional<T>& value) {
+void ReflectMember(Writer& visitor, const char* name, optional<T>& value) {
// For TypeScript optional property key?: value in the spec,
// We omit both key and value if value is std::nullopt (null) for JsonWriter
// to reduce output. But keep it for other serialization formats.
@@ -237,7 +232,6 @@ void ReflectMember(Writer& visitor, const char* name, boost::optional<T>& value)
}
-
template <typename T>
void ReflectMember(Writer& visitor,
const char* name,
@@ -329,7 +323,7 @@ void ReflectMember(Writer& visitor, const char* name, T& value) {
}
template<class _Ty1, class _Ty2>
-void Reflect(Writer& visitor, std::pair< boost::optional<_Ty1>, boost::optional<_Ty2> >& value)
+void Reflect(Writer& visitor, std::pair< optional<_Ty1>, optional<_Ty2> >& value)
{
if (value.first)
{
@@ -341,7 +335,7 @@ void Reflect(Writer& visitor, std::pair< boost::optional<_Ty1>, boost::optional
}
}
template<class _Ty2>
-void Reflect(Reader& visitor, std::pair< boost::optional<bool>, boost::optional<_Ty2> >& value)
+void Reflect(Reader& visitor, std::pair< optional<bool>, optional<_Ty2> >& value)
{
if(visitor.IsBool())
{
@@ -352,7 +346,7 @@ void Reflect(Reader& visitor, std::pair< boost::optional<bool>, boost::optional
Reflect(visitor, value.second);
}
template<class _Ty2>
-void Reflect(Reader& visitor, std::pair< boost::optional<std::string>, boost::optional<_Ty2> >& value)
+void Reflect(Reader& visitor, std::pair< optional<std::string>, optional<_Ty2> >& value)
{
if (visitor.IsString())
{
@@ -365,7 +359,7 @@ void Reflect(Reader& visitor, std::pair< boost::optional<std::string>, boost::o
template<class _Ty1, class _Ty2>
-void Reflect(Reader& visitor, std::pair< boost::optional<_Ty1>, boost::optional<_Ty2> >& value)
+void Reflect(Reader& visitor, std::pair< optional<_Ty1>, optional<_Ty2> >& value)
{
try
{