LCOV - code coverage report
Current view: top level - json/detail/ryu/detail - digit_table.hpp (source / functions) Coverage Total Hit
Test: coverage_remapped.info Lines: 100.0 % 2 2
Test Date: 2026-05-11 11:16:34 Functions: 100.0 % 1 1

           TLA  Line data    Source code
       1                 : // Copyright 2018 Ulf Adams
       2                 : //
       3                 : // The contents of this file may be used under the terms of the Apache License,
       4                 : // Version 2.0.
       5                 : //
       6                 : //    (See accompanying file LICENSE-Apache or copy at
       7                 : //     http://www.apache.org/licenses/LICENSE-2.0)
       8                 : //
       9                 : // Alternatively, the contents of this file may be used under the terms of
      10                 : // the Boost Software License, Version 1.0.
      11                 : //    (See accompanying file LICENSE-Boost or copy at
      12                 : //     https://www.boost.org/LICENSE_1_0.txt)
      13                 : //
      14                 : // Unless required by applicable law or agreed to in writing, this software
      15                 : // is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
      16                 : // KIND, either express or implied.
      17                 : 
      18                 : /*
      19                 :     This is a derivative work
      20                 : */
      21                 : 
      22                 : #ifndef BOOST_JSON_DETAIL_RYU_DETAIL_DIGIT_TABLE_HPP
      23                 : #define BOOST_JSON_DETAIL_RYU_DETAIL_DIGIT_TABLE_HPP
      24                 : 
      25                 : #include <boost/json/detail/config.hpp>
      26                 : 
      27                 : namespace boost {
      28                 : namespace json {
      29                 : namespace detail {
      30                 : 
      31                 : namespace ryu {
      32                 : namespace detail {
      33                 : 
      34                 : // A table of all two-digit numbers. This is used to speed up decimal digit
      35                 : // generation by copying pairs of digits into the final output.
      36                 : inline
      37                 : char const
      38 HIT         842 : (&DIGIT_TABLE() noexcept)[200]
      39                 : {
      40                 :     static constexpr char arr[200] = {
      41                 :       '0','0','0','1','0','2','0','3','0','4','0','5','0','6','0','7','0','8','0','9',
      42                 :       '1','0','1','1','1','2','1','3','1','4','1','5','1','6','1','7','1','8','1','9',
      43                 :       '2','0','2','1','2','2','2','3','2','4','2','5','2','6','2','7','2','8','2','9',
      44                 :       '3','0','3','1','3','2','3','3','3','4','3','5','3','6','3','7','3','8','3','9',
      45                 :       '4','0','4','1','4','2','4','3','4','4','4','5','4','6','4','7','4','8','4','9',
      46                 :       '5','0','5','1','5','2','5','3','5','4','5','5','5','6','5','7','5','8','5','9',
      47                 :       '6','0','6','1','6','2','6','3','6','4','6','5','6','6','6','7','6','8','6','9',
      48                 :       '7','0','7','1','7','2','7','3','7','4','7','5','7','6','7','7','7','8','7','9',
      49                 :       '8','0','8','1','8','2','8','3','8','4','8','5','8','6','8','7','8','8','8','9',
      50                 :       '9','0','9','1','9','2','9','3','9','4','9','5','9','6','9','7','9','8','9','9' };
      51             842 :     return arr;
      52                 : }
      53                 : 
      54                 : } // detail
      55                 : } // ryu
      56                 : 
      57                 : } // detail
      58                 : } // namespace json
      59                 : } // namespace boost
      60                 : 
      61                 : #endif
        

Generated by: LCOV version 2.3