This file is indexed.

/usr/include/BALL/KERNEL/predicate.h is in libball1.4-dev 1.4.1+20111206-3.

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
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
// $Id: predicate.h,v 1.24 2005/10/23 12:02:19 oliver Exp $
//

#ifndef BALL_KERNEL_PREDICATE_H
#define BALL_KERNEL_PREDICATE_H

#ifndef BALL_COMMON_RTTI_H
#	include <BALL/COMMON/rtti.h>
#endif

#ifndef BALL_CONCEPT_PREDICATE_H
#	include <BALL/CONCEPT/predicate.h>
#endif

#ifndef BALL_CONCEPT_COMPOSITE_H
#	include <BALL/CONCEPT/composite.h>
#endif

namespace BALL 
{
	/**	@name	KernelPredicates Kernel predicates
			This chapter describes a set of unary predicates acting on  \link Composite \endlink instances, that
			can be used to identify the class type of a composite at runtime. \par
			This predicates are functionally similar to the  \link RTTI:isKindOf RTTI:isKindOf \endlink  function.
			They decide whether a given composite is an instance of a certain class (or of
			a class derived thereof). For instance, the application of a  \link MoleculePredicate MoleculePredicate \endlink 
			to a composite will yield <b>true</b>, if the given composite was an instance of  \link Molecule Molecule \endlink 
			(or  \link Protein Protein \endlink , as Protein is derived from Molecule). Otherwise false is returned. \par
			Each KernelPredicate possesses three methods:

				-<b>operator (const Composite&)</b>
				-<b>operator (const Composite&) const</b>
			
			The two operators are functionally identical (two methods are needed, because the class
			is derived from TUnaryPredicate and we want to make sure both methods are overwritten).
			<b>operator()</b> returns true, if the given composite is a kind of the class corresponding 
			to the respective predicate, false otherwise. \par
			
			@see	UnaryPredicate
			@see	RTTI	
    
			\ingroup  Predicates
	*/
	//@{
	

#ifndef BALL_KERNEL_PREDICATE_TYPE
#define BALL_KERNEL_PREDICATE_TYPE
	typedef UnaryPredicate<Composite>	KernelPredicateType;
#endif

	/// Kernel predicate class
	template <class T>
	class KernelPredicate
		: public UnaryPredicate<Composite>
	{
		public:

		/// Constant virtual RTTI evaluation operator
		virtual bool operator () (const Composite& composite) const;
		virtual ~KernelPredicate() {}
	};

	template <class T>
	bool KernelPredicate<T>::operator () (const Composite& composite) const
	{
		return RTTI::isKindOf<T>(composite);
	}

	//@}

} // namespace BALL


#endif // BALL_KERNEL_PREDICATE_H