Coverage Report

Created: 2026-05-30 06:57

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/logging-log4cxx/src/main/cpp/patternconverter.cpp
Line
Count
Source
1
/*
2
 * Licensed to the Apache Software Foundation (ASF) under one or more
3
 * contributor license agreements.  See the NOTICE file distributed with
4
 * this work for additional information regarding copyright ownership.
5
 * The ASF licenses this file to You under the Apache License, Version 2.0
6
 * (the "License"); you may not use this file except in compliance with
7
 * the License.  You may obtain a copy of the License at
8
 *
9
 *      http://www.apache.org/licenses/LICENSE-2.0
10
 *
11
 * Unless required by applicable law or agreed to in writing, software
12
 * distributed under the License is distributed on an "AS IS" BASIS,
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 * See the License for the specific language governing permissions and
15
 * limitations under the License.
16
 */
17
18
#include <log4cxx/logstring.h>
19
#include <log4cxx/pattern/patternconverter.h>
20
#include <log4cxx/helpers/pool.h>
21
#include <log4cxx/helpers/transcoder.h>
22
#include <log4cxx/private/patternconverter_priv.h>
23
24
using namespace LOG4CXX_NS;
25
using namespace LOG4CXX_NS::pattern;
26
27
IMPLEMENT_LOG4CXX_OBJECT(PatternConverter)
28
29
PatternConverter::PatternConverter(
30
  std::unique_ptr<PatternConverterPrivate> priv) :
31
0
  m_priv(std::move(priv))
32
0
{
33
0
}
34
35
PatternConverter::PatternConverter(const LogString& name,
36
  const LogString& style) :
37
0
  m_priv(std::make_unique<PatternConverterPrivate>(name, style))
38
0
{
39
40
0
}
41
42
PatternConverter::~PatternConverter()
43
0
{
44
0
}
45
46
LogString PatternConverter::getName() const
47
0
{
48
0
  return m_priv->name;
49
0
}
50
51
LogString PatternConverter::getStyleClass(const LOG4CXX_NS::helpers::ObjectPtr& /* e */) const
52
0
{
53
0
  return m_priv->style;
54
0
}
55
56
void PatternConverter::append(LogString& toAppendTo, const std::string& src)
57
0
{
58
0
  LOG4CXX_DECODE_CHAR(decoded, src);
59
0
  toAppendTo.append(decoded);
60
0
}
61
62
const FormattingInfo& PatternConverter::getFormattingInfo() const
63
0
{
64
0
  return *m_priv->info;
65
0
}
66
67
void PatternConverter::setFormattingInfo(const FormattingInfoPtr& newValue)
68
0
{
69
0
  m_priv->info = newValue;
70
0
}
71
72
#if LOG4CXX_ABI_VERSION <= 15
73
void PatternConverter::format(const helpers::ObjectPtr& obj, LogString& toAppendTo) const
74
0
{
75
0
  helpers::Pool p;
76
0
  format(obj, toAppendTo, p);
77
0
}
78
#else
79
void PatternConverter::format(const helpers::ObjectPtr& obj, LogString& toAppendTo, helpers::Pool&) const
80
{
81
  format(obj, toAppendTo);
82
}
83
#endif