1/****************************************************************************
2**
3** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4** Contact: http://www.qt-project.org/legal
5**
6** This file is part of the QtScript module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL-ONLY$
9** GNU Lesser General Public License Usage
10** This file may be used under the terms of the GNU Lesser
11** General Public License version 2.1 as published by the Free Software
12** Foundation and appearing in the file LICENSE.LGPL included in the
13** packaging of this file. Please review the following information to
14** ensure the GNU Lesser General Public License version 2.1 requirements
15** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
16**
17** If you have questions regarding the use of this file, please contact
18** us via http://www.qt-project.org/.
19**
20** $QT_END_LICENSE$
21**
22****************************************************************************/
23
24#ifndef QSCRIPTPROGRAM_H
25#define QSCRIPTPROGRAM_H
26
27#include <QtCore/qsharedpointer.h>
28
29#include <QtCore/qstring.h>
30
31QT_BEGIN_HEADER
32
33QT_BEGIN_NAMESPACE
34
35QT_MODULE(Script)
36
37class QScriptProgramPrivate;
38class Q_SCRIPT_EXPORT QScriptProgram
39{
40public:
41 QScriptProgram();
42 QScriptProgram(const QString &sourceCode,
43 const QString fileName = QString(),
44 int firstLineNumber = 1);
45 QScriptProgram(const QScriptProgram &other);
46 ~QScriptProgram();
47
48 QScriptProgram &operator=(const QScriptProgram &other);
49
50 bool isNull() const;
51
52 QString sourceCode() const;
53 QString fileName() const;
54 int firstLineNumber() const;
55
56 bool operator==(const QScriptProgram &other) const;
57 bool operator!=(const QScriptProgram &other) const;
58
59private:
60 QExplicitlySharedDataPointer<QScriptProgramPrivate> d_ptr;
61 Q_DECLARE_PRIVATE(QScriptProgram)
62};
63
64QT_END_NAMESPACE
65
66QT_END_HEADER
67
68#endif // QSCRIPTPROGRAM_H
69