DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAPyModule.h
1#ifndef DAPYMODULE_H
2#define DAPYMODULE_H
3#include "DAPyBindQtGlobal.h"
4#include "DAPybind11InQt.h"
5#include "DAPyObjectWrapper.h"
6namespace DA
7{
8
12class DAPYBINDQT_API DAPyModule : public DAPyObjectWrapper
13{
14public:
15 DAPyModule();
16 DAPyModule(const char* moduleName);
17 DAPyModule(const pybind11::object& obj);
18 DAPyModule(pybind11::object&& obj);
19 virtual ~DAPyModule();
20 DAPyModule& operator=(const DAPyObjectWrapper& obj);
21 DAPyModule& operator=(const pybind11::object& obj);
22
23public:
24 // 判断模块是否导入
25 bool isImport() const;
26 // 获取module的名字
27 QString moduleName() const;
28 // 重新加载模块
29 void reload();
30 // 导入模块
31 bool import(const char* module_n) noexcept;
32 // 异常信息
33 QString lastError() const;
34 bool hasError() const;
35 void clearError();
36
37public:
38 static DAPyModule importModule(const char* module_n);
39
40public:
41 // 常用类型的判断
42 static bool isInstanceTime(const pybind11::handle& obj);
43 static bool isInstanceDate(const pybind11::handle& obj);
44 static bool isInstanceDateTime(const pybind11::handle& obj);
45 static bool isInstancePandasDateTime(const pybind11::handle& obj);
46 static bool isInstanceNumpyDateTime(const pybind11::handle& obj);
47 static bool isInstanceTimedelta(const pybind11::handle& obj);
48};
49} // namespace DA
50#endif // DAPYMODULE_H
模块的基类
Definition DAPyModule.h:13
这是针对pubind11::object的封装
Definition DAPyObjectWrapper.h:15
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44