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
{
"cppFile": "Bindings.cpp",
"rust": {
"dir": "",
"interfaceModule": "interface",
"implementationModule": "implementation"
},
"objects": {
"MailModel": {
"properties": {
"folders": {
"type": "MailFolders"
},
"folder_threads": {
"type": "FolderTreeListing"
},
"currentFolder": {
"type": "QString",
"write": true
},
"email": {
"type": "Email"
},
"configFile": {
"type": "QString",
"write": true,
"optional": true
}
},
"functions": {
"setEmail": {
"return": "void",
"mut": true,
"arguments": [{
"name": "uid",
"type": "quint64"
}]
}
}
},
"MailFolders": {
"type": "Tree",
"itemProperties": {
"name": {
"type": "QString"
},
"delimiter": {
"type": "QString"
}
}
},
"FolderTreeListing": {
"type": "Tree",
"itemProperties": {
"uid": {
"type": "quint64"
},
"date": {
"type": "QString",
"optional": true,
"rustByValue": true
},
"section": {
"type": "QString",
"rustByValue": true
},
"from": {
"type": "QString",
"optional": true
},
"subject": {
"type": "QString",
"optional": true
},
"seen": {
"type": "bool"
}
},
"functions": {
"setFilter": {
"return": "void",
"mut": true,
"arguments": [{
"name": "filter",
"type": "QString"
}]
}
}
},
"Email": {
"type": "Object",
"properties": {
"date": {
"type": "QString",
"rustByFunction": true
},
"from": {
"type": "QString",
"rustByFunction": true
},
"subject": {
"type": "QString",
"rustByFunction": true
},
"body": {
"type": "QString",
"rustByFunction": true
},
"html": {
"type": "QString",
"rustByFunction": true
},
"attachments": {
"type": "Attachments"
}
}
},
"Attachments": {
"type": "List",
"itemProperties": {
"name": {
"type": "QString"
},
"bytes": {
"type": "QByteArray"
}
},
"functions": {
"saveToFolder": {
"return": "QString",
"arguments": [{
"name": "index",
"type": "quint32"
}, {
"name": "folder",
"type": "QString"
}]
}
}
}
}
}