Coverage Report

Created: 2026-03-12 06:42

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/libetonyek/src/lib/contexts/IWORKNumberElement.h
Line
Count
Source
1
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/*
3
 * This file is part of the libetonyek project.
4
 *
5
 * This Source Code Form is subject to the terms of the Mozilla Public
6
 * License, v. 2.0. If a copy of the MPL was not distributed with this
7
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
 */
9
10
#ifndef IWORKNUMBERELEMENT_H_INCLUDED
11
#define IWORKNUMBERELEMENT_H_INCLUDED
12
13
#include "IWORKNumberConverter.h"
14
#include "IWORKToken.h"
15
#include "IWORKXMLContextBase.h"
16
17
namespace libetonyek
18
{
19
20
template<typename T>
21
class IWORKNumberElement : public IWORKXMLEmptyContextBase
22
{
23
public:
24
  IWORKNumberElement(IWORKXMLParserState &state, boost::optional<T> &value);
25
26
private:
27
  void attribute(int name, const char *value) override;
28
29
private:
30
  boost::optional<T> &m_value;
31
};
32
33
template<typename T>
34
IWORKNumberElement<T>::IWORKNumberElement(IWORKXMLParserState &state, boost::optional<T> &value)
35
0
  : IWORKXMLEmptyContextBase(state)
36
0
  , m_value(value)
37
0
{
38
0
}
Unexecuted instantiation: libetonyek::IWORKNumberElement<bool>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<bool>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<double>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<double>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<int>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<int>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::PAGFootnoteKind>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<libetonyek::PAGFootnoteKind>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKAlignment>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<libetonyek::IWORKAlignment>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKCapitalization>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<libetonyek::IWORKCapitalization>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKBorderType>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<libetonyek::IWORKBorderType>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKBaseline>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<libetonyek::IWORKBaseline>&)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKVerticalAlignment>::IWORKNumberElement(libetonyek::IWORKXMLParserState&, boost::optional<libetonyek::IWORKVerticalAlignment>&)
39
40
template<typename T>
41
void IWORKNumberElement<T>::attribute(const int name, const char *const value)
42
0
{
43
0
  switch (name)
44
0
  {
45
0
  case IWORKToken::NS_URI_SFA | IWORKToken::number :
46
0
    m_value = IWORKNumberConverter<T>::convert(value);
47
0
    break;
48
0
  case IWORKToken::NS_URI_SFA | IWORKToken::sfclass : // with value number
49
0
  case IWORKToken::NS_URI_SFA | IWORKToken::type :
50
0
    break;
51
0
  default:
52
0
    ETONYEK_DEBUG_MSG(("IWORKNumberElement<...>::attribute: found unexpected attribute\n"));
53
0
    break;
54
0
  }
55
0
}
Unexecuted instantiation: libetonyek::IWORKNumberElement<bool>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<double>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<int>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::PAGFootnoteKind>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKAlignment>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKCapitalization>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKBorderType>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKBaseline>::attribute(int, char const*)
Unexecuted instantiation: libetonyek::IWORKNumberElement<libetonyek::IWORKVerticalAlignment>::attribute(int, char const*)
56
57
}
58
59
#endif // IWORKNUMBERELEMENT_H_INCLUDED
60
61
/* vim:set shiftwidth=2 softtabstop=2 expandtab: */