This file is indexed.

/usr/include/polybori/BooleSetSequence.h is in libpolybori-dev 0.8.3-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
// -*- c++ -*-
//*****************************************************************************
/** @file BooleSetSequence.h 
 *
 * @author Alexander Dreyer
 * @date 2012-01-19
 *
 * This file includes the definition of the class @c BooleSetSequence.
 *
 * @par Copyright:
 *   (c) 2012 by The PolyBoRi Team
 *
**/
//*****************************************************************************

#ifndef polybori_BooleSetSequence_h_
#define polybori_BooleSetSequence_h_

// include basic definitions
#include <polybori/pbori_defs.h>

#include <vector>
#include <algorithm>

#include <polybori/BooleSet.h>

BEGIN_NAMESPACE_PBORI

/** @class BooleSetSequence
 * @brief This class converts a @c BooleSet to a sequence-like structure.
 *
 **/
class BooleSetSequence {

public:
  typedef std::vector<BooleSet> vector_type;
  typedef vector_type::const_iterator const_iterator;
  typedef vector_type::const_reverse_iterator const_reverse_iterator;

  /// Standard constructor yields an empty set
  BooleSetSequence():  m_termsets() { }


  /// Construct sequence from a set of terms and an unary conversion function
  template <class SetType, class Operator>
  BooleSetSequence(const SetType& terms, const Operator& func):
    m_termsets(terms.size(), terms.ring()) {
    std::transform(terms.begin(), terms.end(), m_termsets.begin(), func);
  }
  
  /// Sequence-like interface
  //@{
  const_iterator begin() const { return m_termsets.begin(); }
  const_iterator end() const { return m_termsets.end(); }
  const_reverse_iterator rbegin() const { return m_termsets.rbegin(); }
  const_reverse_iterator rend() const { return m_termsets.rend(); }
  bool empty() const { return m_termsets.empty(); }
  //@}

private:
  vector_type m_termsets;
};


END_NAMESPACE_PBORI

#endif /* polybori_BooleSetSequence_h_ */