File indexing completed on 2024-05-26 11:22:04

0001 /*
0002     SPDX-License-Identifier: GPL-2.0-or-later
0003     SPDX-FileCopyrightText: 2019 Nikita Sirgienko <warquark@gmail.com>
0004 */
0005 
0006 #ifndef _JULIAVARIABLEMODEL_H
0007 #define _JULIAVARIABLEMODEL_H
0008 
0009 #include <QStringList>
0010 
0011 #include "defaultvariablemodel.h"
0012 
0013 class JuliaSession;
0014 class QDBusInterface;
0015 
0016 class JuliaVariableModel : public Cantor::DefaultVariableModel
0017 {
0018   Q_OBJECT
0019   public:
0020     JuliaVariableModel( JuliaSession* session);
0021     ~JuliaVariableModel() override = default;
0022 
0023     void update() override;
0024 
0025     void setJuliaServer(QDBusInterface* interface);
0026 
0027   private:
0028     static const QRegularExpression typeVariableInfo;
0029     static const QStringList internalCantorJuliaVariables;
0030 
0031   private:
0032     QDBusInterface* m_interface;
0033     QStringList m_functions;
0034 };
0035 
0036 #endif /* _JULIAVARIABLEMODEL_H */