This file is indexed.

/usr/share/sip/PyQt4/Qwt5/QwtMap.sip is in python-qwt5-qt4 5.2.1~cvs20091107+dfsg-7build1.

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
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
// The SIP interface specification for:
//      QMap<double, QString>.
//
// Copyright (C) 2001-2009 Gerard Vermeulen
// Copyright (C) 2000 Mark Colclough
//
// This file is part of PyQwt.
//
// PyQwt is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// PyQwt is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with PyQwt; if not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
//
// In addition, as a special exception, Gerard Vermeulen gives permission
// to link PyQwt dynamically with non-free versions of Qt and PyQt,
// and to distribute PyQwt in this form, provided that equally powerful
// versions of Qt and PyQt have been released under the terms of the GNU
// General Public License.
//
// If PyQwt is dynamically linked with non-free versions of Qt and PyQt,
// PyQwt becomes a free plug-in for a non-free program.


%MappedType QMap<double, QString>
{
%TypeHeaderCode
#include <qwt_compass.h>
%End

%ConvertFromTypeCode
    PyObject *d = PyDict_New();

    if (!d)
        return 0;

    QMap<double, QString>::const_iterator i = sipCpp->constBegin();

    while (i != sipCpp->constEnd()) {
        QString *t = new QString(i.value());

        PyObject *kobj = PyFloat_FromDouble(i.key());

#if SIP_VERSION < 0x040800
        PyObject *tobj = sipConvertFromNewInstance(
            t, sipClass_QString, sipTransferObj);
#else
        PyObject *tobj = sipConvertFromNewType(
            t, sipType_QString, sipTransferObj);
#endif

        if ((0 == kobj) || (0 == tobj) || (0 > PyDict_SetItem(d, kobj, tobj))) {
            Py_DECREF(d);

            if (kobj)
                Py_DECREF(kobj);

            if (tobj)
                Py_DECREF(tobj);
            else
                delete t;

            return 0;
        }

        Py_DECREF(kobj);
        Py_DECREF(tobj);

        ++i;
    }

    return d;
%End // ConvertFromTypeCode

%ConvertToTypeCode
    PyObject *kobj, *tobj;
    SIP_SSIZE_T i = 0;

    if (0 == sipIsErr) {
        if (!PyDict_Check(sipPy))
            return 0;

        while (PyDict_Next(sipPy, &i, &kobj, &tobj))
#if SIP_VERSION < 0x040800
            if (!sipCanConvertToInstance(tobj, sipClass_QString, SIP_NOT_NONE))
#else
            if (!sipCanConvertToType(tobj, sipType_QString, SIP_NOT_NONE))
#endif
                return 0;

        return 1;
    }

    QMap<double, QString> *qm = new QMap<double, QString>;

    while (PyDict_Next(sipPy, &i, &kobj, &tobj)) {
        int state;
        double k = PyFloat_AS_DOUBLE(kobj);
#if SIP_VERSION < 0x040800
        QString *t = reinterpret_cast<QString *>(
            sipConvertToInstance(tobj, sipClass_QString, sipTransferObj,
                                 SIP_NOT_NONE, &state, sipIsErr));
#else
        QString *t = reinterpret_cast<QString *>(
            sipConvertToType(tobj, sipType_QString, sipTransferObj,
                             SIP_NOT_NONE, &state, sipIsErr));
#endif

        if (*sipIsErr) {
#if SIP_VERSION < 0x040800
            sipReleaseInstance(t, sipClass_QString, state);
#else
            sipReleaseType(t, sipType_QString, state);
#endif

            delete qm;
            return 0;
        }

        qm->insert(k, *t);

#if SIP_VERSION < 0x040800
        sipReleaseInstance(t, sipClass_QString, state);
#else
        sipReleaseType(t, sipType_QString, state);
#endif
    }

    *sipCppPtr = qm;

    return sipGetState(sipTransferObj);
%End // ConvertToTypeCode

}; // QMap<double, QString>


// Local Variables:
// mode: C++
// c-file-style: "stroustrup"
// indent-tabs-mode: nil
// End: