LCOV - code coverage report
Current view: top level - json/detail/impl - array.hpp (source / functions) Coverage Total Hit
Test: coverage_remapped.info Lines: 100.0 % 15 15
Test Date: 2026-02-25 20:43:10 Functions: 100.0 % 2 2

           TLA  Line data    Source code
       1                 : //
       2                 : // Copyright (c) 2019 Vinnie Falco (vinnie.falco@gmail.com)
       3                 : //
       4                 : // Distributed under the Boost Software License, Version 1.0. (See accompanying
       5                 : // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       6                 : //
       7                 : // Official repository: https://github.com/boostorg/json
       8                 : //
       9                 : 
      10                 : #ifndef BOOST_JSON_DETAIL_IMPL_ARRAY_HPP
      11                 : #define BOOST_JSON_DETAIL_IMPL_ARRAY_HPP
      12                 : 
      13                 : namespace boost {
      14                 : namespace json {
      15                 : namespace detail {
      16                 : 
      17 HIT        2120 : unchecked_array::
      18             854 : ~unchecked_array()
      19                 : {
      20            2977 :     if(! data_ ||
      21             857 :         sp_.is_not_shared_and_deallocate_is_trivial())
      22            1266 :         return;
      23             919 :     for(unsigned long i = 0;
      24             919 :         i < size_; ++i)
      25              65 :         data_[i].~value();
      26            2120 : }
      27                 : 
      28                 : void
      29            1263 : unchecked_array::
      30                 : relocate(value* dest) noexcept
      31                 : {
      32            1263 :     if(size_ > 0)
      33            1263 :         std::memcpy(
      34                 :             static_cast<void*>(dest),
      35            1263 :             data_, size_ * sizeof(value));
      36            1263 :     data_ = nullptr;
      37            1263 : }
      38                 : 
      39                 : } // detail
      40                 : } // namespace json
      41                 : } // namespace boost
      42                 : 
      43                 : #endif
        

Generated by: LCOV version 2.3