]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/json/impl/parser.ipp
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / boost / json / impl / parser.ipp
index f42f7a9b4394d1cbf41c64a748d4b1f420c83fa2..55b2f4dfc15dcbd7b7a451cd07c9b3991aa6a55e 100644 (file)
@@ -68,6 +68,19 @@ write_some(
     return n;
 }
 
+std::size_t
+parser::
+write_some(
+    char const* data,
+    std::size_t size,
+    std::error_code& ec)
+{
+    error_code jec;
+    std::size_t const result = write_some(data, size, jec);
+    ec = jec;
+    return result;
+}
+
 std::size_t
 parser::
 write_some(
@@ -79,7 +92,7 @@ write_some(
         data, size, ec);
     if(ec)
         detail::throw_system_error(ec,
-            BOOST_CURRENT_LOCATION);
+            BOOST_JSON_SOURCE_POS);
     return n;
 }
 
@@ -94,12 +107,26 @@ write(
         data, size, ec);
     if(! ec && n < size)
     {
-        ec = error::extra_data;
+        BOOST_STATIC_CONSTEXPR source_location loc = BOOST_JSON_SOURCE_POS;
+        BOOST_JSON_ASSIGN_ERROR_CODE(ec, error::extra_data, &loc);
         p_.fail(ec);
     }
     return n;
 }
 
+std::size_t
+parser::
+write(
+    char const* data,
+    std::size_t size,
+    std::error_code& ec)
+{
+    error_code jec;
+    std::size_t const result = write(data, size, jec);
+    ec = jec;
+    return result;
+}
+
 std::size_t
 parser::
 write(
@@ -111,7 +138,7 @@ write(
         data, size, ec);
     if(ec)
         detail::throw_system_error(ec,
-            BOOST_CURRENT_LOCATION);
+            BOOST_JSON_SOURCE_POS);
     return n;
 }
 
@@ -123,10 +150,15 @@ release()
     {
         // prevent undefined behavior
         if(! p_.last_error())
-            p_.fail(error::incomplete);
+        {
+            error_code ec;
+            BOOST_STATIC_CONSTEXPR source_location loc = BOOST_JSON_SOURCE_POS;
+            BOOST_JSON_ASSIGN_ERROR_CODE(ec, error::incomplete, &loc);
+            p_.fail(ec);
+        }
         detail::throw_system_error(
             p_.last_error(),
-            BOOST_CURRENT_LOCATION);
+            BOOST_JSON_SOURCE_POS);
     }
     return p_.handler().st.release();
 }