This file is indexed.

/usr/include/JAGS/graph/LogicalNode.h is in jags 3.4.0-1.

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

#include <graph/DeterministicNode.h>
#include <vector>

class Function;

/**
 * @short Node defined by the BUGS-language operator <-
 *
 * A LogicalNode is a type of DeterministicNode that is defined by a
 * function, and a vector of parents as parameters. In the BUGS
 * language the function may be represented as an operator.
 */
class LogicalNode : public DeterministicNode {
    Function const * const _func;
    bool _discrete;
protected:
    const std::vector<std::vector<double const*> > _parameters;
public:
    /**
     * A logical node is defined by a function (which may be an inline
     * operator in the BUGS language) and its parameters.
     */
    LogicalNode(std::vector<unsigned int> const &dim, 
                std::vector<Node const*> const &parameters,
		Function const *func);
    /**
     * A LogicalNode may be discrete valued if its parents are. 
     * @see Function##isDiscreteValued
     */
    bool isDiscreteValued() const;
    /**
     * A LogicalNode belongs to a closed class if its function
     * preserves that class.
     *
     * @see Function#isLinear, Function#isScale, Function#isPower
     */
    bool isClosed(std::set<Node const *> const &ancestors, 
		  ClosedFuncClass fc, bool fixed) const;
    std::string deparse(std::vector<std::string> const &) const;
};

#endif /* LOGICAL_NODE_H_ */