aboutsummaryrefslogtreecommitdiff
path: root/jobs/apigen.yaml
blob: 69662a5d18af07f634c47e9074fbb87e0f553c65 (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
preprocess:
  "%CLIENT_RELEASE_LABEL%": r0
  "%CLIENT_MAJOR_VERSION%": r0

# 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...> }
types:
  integer:
  - int64: qint64
  - int32: qint32
  - //: int
  number:
  - float: float
  - //: double
  boolean: bool
  string:
  - byte: &QByteArray { type: QByteArray, imports: <QtCore/QByteArray> }
  - binary: *QByteArray
  - date:
      type: QDate
      avoidCopy?: true
      imports: <QtCore/QDate>
  - dateTime:
      type: QDateTime
      avoidCopy?: true
      imports: <QtCore/QDateTime>
  - //: { type: QString, imports: <QtCore/QString> }
  file:
    type: QByteArray
    imports: <QtCore/QByteArray>
    "returnFile?": true
  object: { type: QJsonObject, "avoidCopy?": true, imports: <QtCore/QJsonObject> }
  array: { type: "QVector<{{1}}>", "avoidCopy?": true, imports: <QtCore/QVector> }

#operations:

env:
#  preamble: preamble.mustache
  copyrightName: Kitsune Ral
  copyrightEmail: <kitsune-ral@users.sf.net>
#  imports: { set: }
#  returnFile?: { bool: false }

templates:
- "{{base}}.h.mustache"
- "{{base}}.cpp.mustache"

#outFilesList: apifiles.txt