blob: 4ef55bce461adb7480857fbc25bc3e2715149fb9 (
plain)
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
|
analyzer:
subst:
"%CLIENT_RELEASE_LABEL%": r0
"%CLIENT_MAJOR_VERSION%": r0
identifiers:
signed: signedData
unsigned: unsignedData
default: isDefault
origin_server_ts: originServerTimestamp # Instead of originServerTs
start: begin # Because start() is a method in BaseJob
types:
# Structure:
# swaggerType: <targetTypeSpec>
# OR
# swaggerType:
# - swaggerFormat: <targetTypeSpec>
# - /swaggerFormatRegEx/: <targetTypeSpec>
# - //: <targetTypeSpec> # default, if the format doesn't mach anything above
# WHERE
# targetTypeSpec = targetType OR
# { type: targetType, imports: <filename OR [ filenames... ]>, <other attributes...> }
integer:
- int64: qint64
- int32: qint32
- //: int
number:
- float: float
- //: double
boolean: { type: bool, initializer: false }
string:
- byte: &ByteStream
type: QIODevice*
#initializer: '"{{defaultValue}}"'
#string?: true
imports: <QtCore/QIODevice>
- binary: *ByteStream
- date:
type: QDate
initializer: QDate::fromString("{{defaultValue}}")
avoidCopy?: true
imports: <QtCore/QDate>
- dateTime:
type: QDateTime
initializer: QDateTime::fromString("{{defaultValue}}")
avoidCopy?: true
imports: <QtCore/QDateTime>
- //:
type: QString
initializer: QStringLiteral("{{defaultValue}}")
string?: true
avoidCopy?: true
file: *ByteStream
object:
- /.+m\.room\.member/: # A stub for EventsBatch<RoomMemberEvent>
type: none
- /.+state_event.yaml/:
type: StateEventPtr
noCopy?: true
imports: '"events/event.h"'
- /.*room_event.yaml/:
type: RoomEventPtr
noCopy?: true
imports: '"events/event.h"'
- /.*event.yaml/:
type: EventPtr
noCopy?: true
imports: '"events/event.h"'
- //:
type: QJsonObject
avoidCopy?: true
imports: <QtCore/QJsonObject>
array:
- /^Notification|Result$/:
type: "std::vector<{{1}}>"
noCopy?: true
imports: '"events/event.h"'
- /.+m\.room\.member/:
type: "EventsArray<RoomMemberEvent>"
noCopy?: true
imports: '"events/roommemberevent.h"'
- /.+state_event.yaml/:
type: StateEvents
noCopy?: true
- /.+room_event.yaml/:
type: RoomEvents
noCopy?: true
- /.+event.yaml/:
type: Events
noCopy?: true
- /.+/:
type: "QVector<{{1}}>"
avoidCopy?: true
imports: <QtCore/QVector>
- //: { type: QJsonArray, "avoidCopy?": true, imports: <QtCore/QJsonArray> }
variant: { type: QVariant, "avoidCopy?": true, imports: <QtCore/QVariant> }
schema:
avoidCopy?: true
#operations:
mustache:
definitions:
_scopeRenderer: "{{scopeCamelCase}}Job::"
_literalQuote: '"'
maybeCrefType: "{{#avoidCopy?}}const {{/avoidCopy?}}{{dataType.name}}{{#avoidCopy?}}&{{/avoidCopy?}}{{#noCopy?}}&&{{/noCopy?}}"
qualifiedMaybeCrefType:
"{{#avoidCopy?}}const {{/avoidCopy?}}{{dataType.qualifiedName}}{{#avoidCopy?}}&{{/avoidCopy?}}{{#noCopy?}}&&{{/noCopy?}}"
initializeDefaultValue: "{{#defaultValue}}{{>initializer}}{{/defaultValue}}{{^defaultValue}}{}{{/defaultValue}}"
joinedParamDecl: '{{>maybeCrefType}} {{paramName}}{{^required?}} = {{>initializeDefaultValue}}{{/required?}}{{#@join}}, {{/@join}}'
joinedParamDef: '{{>maybeCrefType}} {{paramName}}{{#@join}}, {{/@join}}'
passQueryParams: '{{#queryParams}}{{paramName}}{{#@join}}, {{/@join}}{{/queryParams}}'
paramToString: '{{#string?}}{{nameCamelCase}}{{/string?}}{{^string?}}QString("%1").arg({{nameCamelCase}}){{/string?}}'
# preamble: preamble.mustache
copyrightName: Kitsune Ral
copyrightEmail: <kitsune-ral@users.sf.net>
# imports: { set: }
templates:
- "{{base}}.h.mustache"
- "{{base}}.cpp.mustache"
#outFilesList: apifiles.txt
|