This file is indexed.

/usr/include/bobcat/tablebuf is in libbobcat-dev 2.20.01-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
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
#ifndef INCLUDED_BOBCAT_TABLEBUF_
#define INCLUDED_BOBCAT_TABLEBUF_

#include <streambuf>
#include <bobcat/tablebase>

namespace FBB
{

class TableBuf: public TableBase, public std::streambuf
{
    friend std::ostream &operator<<(std::ostream &str, TableBuf &table); 

    friend std::ostream &fs(std::ostream &out);
    friend std::ostream &rs(std::ostream &out);

    int d_fs;
    int d_rs;
    std::string d_str;
    bool d_buffered;
    bool d_insertEmptyRow;

    public:
        TableBuf(size_t nColumns, FillDirection direction,          // 0
                                WidthType widthType = COLUMNWIDTH); 

        TableBuf(TableSupport &tableSupport,                        // 1
                size_t nColumns, FillDirection direction,             
                WidthType widthType = COLUMNWIDTH);

        TableBuf &def();                    // fillup an incomplete table
        TableBuf &setAlign(Align const &align);    // set an alignment

        void setFieldSeparator(char fs);
        void setRowSeparator(char rs);
        void setFieldSeparator();
        void setRowSeparator();

    protected:
        virtual int pSync();

    private:
        virtual int sync();
        virtual int overflow(int ch);

        void nextField();
        void endRow();

};

std::ostream &fs(std::ostream &out);
std::ostream &rs(std::ostream &out);

inline void TableBuf::setFieldSeparator()
{
    d_fs = -1;
}

inline void TableBuf::setFieldSeparator(char fs)
{
    d_fs = fs;
}

inline void TableBuf::setRowSeparator()
{
    d_rs = -1;
}

inline void TableBuf::setRowSeparator(char rs)
{
    d_rs = rs;
}

inline TableBuf &TableBuf::setAlign(Align const &align)
{
    TableBase::setAlign(align);
    return *this;
}
                        // Insert column or element alignments
inline TableBuf &operator<<(TableBuf &tab, Align const &align)
{
    return tab.setAlign(align);
}

inline TableBuf &TableBuf::def()
{
    TableBase::def();
    return *this;
}

inline TableBuf &def(TableBuf &table)
{
    return table.def();
}

} // FBB
        
#endif