This file is indexed.

/usr/include/dcmtk/ofstd/ofexbl.h is in libdcmtk-dev 3.6.1~20150924-5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
/*
 *
 *  Copyright (C) 2014, OFFIS e.V.
 *  All rights reserved.  See COPYRIGHT file for details.
 *
 *  This software and supporting documentation were developed by
 *
 *    OFFIS e.V.
 *    R&D Division Health
 *    Escherweg 2
 *    D-26121 Oldenburg, Germany
 *
 *
 *  Module:  ofstd
 *
 *  Author:  Jan Schlamelcher
 *
 *  Purpose:
 *      Implementing the explicit boolean type OFExplicitBool.
 *
 */

#ifndef OFEXBL_H
#define OFEXBL_H

#include "dcmtk/config/osconfig.h"    /* make sure OS specific configuration is included first */

#include "dcmtk/ofstd/oftraits.h"

/** Helper class for resolving overloaded functions.
 *  OFExplicitBool can be used to restrict an overloaded function's
 *  parameter to "real" OFBool values, e.g. pointers and numeric values
 *  can NOT be converted to OFExplicitBool implicitly.
 *  @note OFBool falls back to "int" on platforms that don't support
 *   the keyword "bool". Therefore the conversion of int values to
 *   OFExplicitBool can't be prevented on those platforms.
 */
class OFExplicitBool
{
public:
#ifndef DOXYGEN
    // copy constructor
    inline OFExplicitBool( const OFExplicitBool& rhs )
    : m_Value( rhs.m_Value ) {}

    // generic constructor accepting only real OFBool values
    // distinguished via SFINAE
    template<typename Bool>
    inline OFExplicitBool( Bool value,
                           typename OFenable_if
                           <
                               OFis_same
                               <
                                    OFBool,
                                    typename OFdecay<Bool>::type
                               >::value
                           >::type* = OFnullptr )
    : m_Value( value ) {}
#else
    /** Construct an OFExplicitBool object from an explicit OFBool value.
     *  @param value either OFTrue or OFFalse.
     *  @note "explicit OFBool" is not a valid C++ type. It's just a term
     *    to explain the concept of OFExplicitBool, that is realized by
     *    SFINAE mechanisms in reality.
     */
    inline OFExplicitBool( explicit OFBool value );
#endif

    /** Implicit conversion to OFBool.
     *  This allows to use OFExplicitBool like a normal OFBool value,
     *  for example in if-statements.
     */
    inline operator OFBool() const
#ifndef DOXYGEN
    { return m_Value; }
#else
    ;
#endif

    /** Negation operator.
     *  This allows to negate OFExplicitBool like a normal OFBool value,
     *  for example to use the negated value in if-statements.
     */
    inline OFBool operator!() const
#ifndef DOXYGEN
    { return !m_Value; }
#else
    ;
#endif

private:
    /// The underlying boolean value.
    OFBool m_Value;
};

#endif // OFEXBL_H