This file is indexed.

/usr/include/JAGS/function/VectorFunction.h is in jags 4.2.0-2.

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
#ifndef VECTOR_FUNCTION_H_
#define VECTOR_FUNCTION_H_

#include <function/Function.h>

namespace jags {

/**
 * @short Vector-valued function with vector arguments
 *
 * VectorFunction represents vector-valued functions whose parameters are
 * also vectors.
 */
class VectorFunction : public Function
{
public:
    VectorFunction(std::string const &name, unsigned int npar);
    /**
     * Evaluates the function and writes the result into the given
     * array
     *
     * @param value Array of doubles which will contain the result on exit.
     * @param args Vector of arguments
     * @param lengths Vector of argument lengths: the length of the array
     * of doubles pointed to by args[i] is lengths[i]. 
     */
    virtual void evaluate(double *value, 
			  std::vector <double const *> const &args,
			  std::vector <unsigned int> const &lengths) const = 0;
    /**
     * Calculates the length of the return value based on the arguments.
     *
     * @param arglengths Vector of argument lengths. This must return
     * true when passed to checkParameterLength
     *
     * @param argvalues Vector of pointers to argument values. 
     *
     */
    virtual unsigned int 
	length(std::vector <unsigned int> const &arglengths,
	       std::vector <double const *> const &argvalues) const = 0;
    /**
     * Checks that the lengths of all the arguments are consistent. 
     * The default implementation returns true if all the arguments
     * have non-zero length.
     *
     * This should be overridden by any sub-class that either has
     * additional restrictions on the lengths of the arguments, or may
     * allow zero-length arguments.
     */
    virtual bool 
	checkParameterLength(std::vector<unsigned int> const &args) const;
    /**
     * Checks that the values of the arguments are in the domain of
     * the function. The default implementation always returns true
     * (i.e. assumes there are no restrictions on parameters).
     */
    virtual bool 
	checkParameterValue(std::vector<double const *> const &args,
			    std::vector<unsigned int> const &lengths) const;  
};

} /* namespace jags */

#endif /* VECTOR_FUNCTION_H_ */