This file is indexed.

/usr/include/diagnostics/test_data_source.hpp is in libdiagnostics-dev 0.3.3-12build1.

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
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
/*
 * Diagnostics - a unified framework for code annotation, logging,
 * program monitoring, and unit-testing.
 *
 * Copyright (C) 2009 Christian Schallhart <christian@schallhart.net>,
 *                    Michael Tautschnig <tautschnig@forsyte.de>
 *               2008 model.in.tum.de group, FORSYTE group
 *               2006-2007 model.in.tum.de group
 *               2002-2005 Christian Schallhart
 *  
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 * 
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 */


/**
 * @file diagnostics/unittest/test_system/test_data_source.hpp
 *
 * @brief [LEVEL: beta] @ref diagnostics::unittest::Test_Data_Source
 * interface
 *
 * $Id: test_data_source.hpp,v 1.12 2005/06/23 09:54:26 esdentem Exp $
 * 
 * @author Christian Schallhart
 *
 * @test Interface Compliance Test-Suite: diagnostics/unittest/test_system/test_data_source.ts.hpp
 */

#ifndef DIAGNOSTICS__UNITTEST__TEST_SYSTEM__TEST_DATA_SOURCE_HPP__INCLUDE_GUARD
#define DIAGNOSTICS__UNITTEST__TEST_SYSTEM__TEST_DATA_SOURCE_HPP__INCLUDE_GUARD

#include <diagnostics/frame/namespace.hpp>
#include <diagnostics/unittest/namespace.hpp>

// used in the interface by reference
#include <string>

DIAGNOSTICS_NAMESPACE_BEGIN;
UNITTEST_NAMESPACE_BEGIN;

/**
 * @class Test_Data_Source diagnostics/unittest/test_system/test_data_source.hpp
 *
 * @brief a Test_Data_Source allows to maintain a map
 * ::std::string->::std::string as underlying database for a @ref
 * Test_Data implementation. However, the implementation details are
 * hidden and access is limited. 
 *
 * There are only three access methods: @ref exists_entry checks
 * whether an entry exists, @ref get_entry returns an existing entry
 * and @ref set_entry sets a new entry or modifies an existing one.
 *
 * @nosubgrouping
 */
class Test_Data_Source 
{
public:
    /**
     * @throw never
     */
    virtual ~Test_Data_Source();

    ////////////////////////////////////////////////////////////////////////////////
    /**
     * @name Accessors
     * @{
     */
public:
    /**
     * @brief returns true if the contained set of entries is in a
     * defined state. 
     *
     * @throw never
     */
    virtual bool is_initialized() const=0;

    /**
     * @brief true iff an entry with @a id exists.
     *
     * @pre is_initialized()==true
     *
     * @throw Test_System_Exception if is_initialized()==false
     */
    virtual bool exists_entry(::std::string const & id) const =0;

    /**
     * @brief retuns the entry with @a id 
     *
     * @pre is_initialized()==true
     * @pre exists_entry(@a id)==true
     *
     * @throw Test_System_Exception if a precondition is not met OR
     * the implementation is not able to serve the request for
     * whatever implementation-dependent reason (such as disk full)
     */
    virtual ::std::string const & get_entry(::std::string const & id) const =0;
    // @}

    ////////////////////////////////////////////////////////////////////////////////
    /**
     * @name Modifiers
     * @{
     */
public:
    /**
     * @brief sets the string with @a id to @a value
     *
     * @pre is_initialized()==true
     *
     * @throw Test_System_Exception if the precondition is not met OR
     * the implementation is not able to serve the request for whatever
     * implementation-dependent reason (such as disk full)
     */
    virtual void set_entry(::std::string const & id, ::std::string const & value) =0;
    //@}
};

UNITTEST_NAMESPACE_END;
DIAGNOSTICS_NAMESPACE_END;


#endif
// vim:ts=4:sw=4