diff options
author | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2020-06-01 14:53:59 +0200 |
---|---|---|
committer | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2020-06-01 14:54:32 +0200 |
commit | 51d27f3bcaacefda78dc033021b6a85152ab972e (patch) | |
tree | 5e461c9c30bc1e6ee6394e57b325f579336e3eab /lib/csapi/gtad.yaml | |
parent | 7ac93db4553aa624326a8e28b74151c784b937a7 (diff) | |
download | libquotient-51d27f3bcaacefda78dc033021b6a85152ab972e.tar.gz libquotient-51d27f3bcaacefda78dc033021b6a85152ab972e.zip |
GTAD parts: new home and format updates for GTAD 0.7
All GTAD-related files (gtad.yaml and templates) from now live in their
dedicated gtad/ directory - this helps against removing them
accidentally along with the rest of the generated files. The format
to list generated files in gtad.yaml has changed a bit before
GTAD 0.7 beta2; gtad.yaml in this commit conforms to the new structure.
Diffstat (limited to 'lib/csapi/gtad.yaml')
-rw-r--r-- | lib/csapi/gtad.yaml | 165 |
1 files changed, 0 insertions, 165 deletions
diff --git a/lib/csapi/gtad.yaml b/lib/csapi/gtad.yaml deleted file mode 100644 index 086bd4f7..00000000 --- a/lib/csapi/gtad.yaml +++ /dev/null @@ -1,165 +0,0 @@ -analyzer: - subst: - "%CLIENT_RELEASE_LABEL%": r0 - "%CLIENT_MAJOR_VERSION%": r0 - identifiers: - signed: signedData - unsigned: unsignedData - PushRule/default: isDefault - default: defaultVersion # getCapabilities/RoomVersionsCapability - origin_server_ts: originServerTimestamp # Instead of originServerTs - start: begin # Because start() is a method in BaseJob - m.upload.size: uploadSize - m.homeserver: homeserver - m.identity_server: identityServer - m.change_password: changePassword - m.room_versions: roomVersions - AuthenticationData/additionalProperties: authInfo - - # Structure inside `types`: - # - 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...> } - # swaggerType can be +set/+on pair; attributes from the map under +set - # are added to each type from the sequence under +on. - types: - - +set: &UseOmittable - useOmittable: - imports: [ '"converters.h"' ] - omittedValue: 'none' # See `none` in converters.h - +on: - - integer: - - int64: qint64 - - int32: qint32 - - //: int - - number: - - float: float - - //: double - - boolean: bool - - string: - - byte: &ByteStream - type: QIODevice* - imports: <QtCore/QIODevice> - - binary: *ByteStream - - +set: { avoidCopy: } - +on: - - date: - type: QDate - initializer: QDate::fromString("{{defaultValue}}") - imports: <QtCore/QDate> - - dateTime: - type: QDateTime - initializer: QDateTime::fromString("{{defaultValue}}") - imports: <QtCore/QDateTime> - - //: &QString - type: QString - initializer: QStringLiteral("{{defaultValue}}") - isString: - - file: *ByteStream - - +set: { avoidCopy: } - +on: - - object: &QJsonObject { type: QJsonObject, imports: <QtCore/QJsonObject> } - - $ref: - - +set: { moveOnly: } - +on: - - /state_event.yaml$/: - { type: StateEventPtr, imports: '"events/eventloader.h"' } - - /room_event.yaml$/: - { type: RoomEventPtr, imports: '"events/eventloader.h"' } - - /event.yaml$/: - { type: EventPtr, imports: '"events/eventloader.h"' } - - /m\.room\.member$/: pass # This $ref is only used in an array, see below - - //: *UseOmittable # Also apply "avoidCopy" to all other ref'ed types - - schema: # Properties of inline structure definitions - - TurnServerCredentials: *QJsonObject # Because it's used as is - - //: *UseOmittable - - array: - - string: QStringList - - +set: { moveOnly: } - +on: - - /^Notification|Result$/: - type: "std::vector<{{1}}>" - imports: '"events/eventloader.h"' - - /m\.room\.member$/: - type: "EventsArray<RoomMemberEvent>" - imports: '"events/roommemberevent.h"' - - /state_event.yaml$/: StateEvents - - /room_event.yaml$/: RoomEvents - - /event.yaml$/: Events - - //: { type: "QVector<{{1}}>", imports: <QtCore/QVector> } - - map: # `additionalProperties` in OpenAPI - - RoomState: - type: "UnorderedMap<QString, {{1}}>" - moveOnly: - imports: '"util.h"' - - /.+/: - type: "QHash<QString, {{1}}>" - imports: <QtCore/QHash> - - //: - type: QVariantHash - imports: <QtCore/QVariant> - - variant: # A sequence `type` (multitype) in OpenAPI - - /^string,null|null,string$/: *QString - - //: { type: QVariant, imports: <QtCore/QVariant> } - - #operations: - -mustache: - constants: - # Syntax elements used by GTAD -# _quote: '"' # Common quote for left and right -# _leftQuote: '"' -# _rightQuote: '"' -# _joinChar: ',' # The character used by {{_join}} - not working yet - _comment: '//' - copyrightName: Kitsune Ral - copyrightEmail: <kitsune-ral@users.sf.net> - - partials: - _typeRenderer: "{{#scope}}{{scopeCamelCase}}Job::{{/scope}}{{>name}}" - omittedValue: '{}' # default value to initialize omitted parameters with - initializer: '{{defaultValue}}' - cjoin: '{{#hasMore}}, {{/hasMore}}' - - openOmittable: "{{^required?}}{{#useOmittable}}{{^defaultValue}}Omittable<{{/defaultValue}}{{/useOmittable}}{{/required?}}" - closeOmittable: "{{^required?}}{{#useOmittable}}{{^defaultValue}}>{{/defaultValue}}{{/useOmittable}}{{/required?}}" - - maybeOmittableType: "{{>openOmittable}}{{dataType.name}}{{>closeOmittable}}" - qualifiedMaybeOmittableType: "{{>openOmittable}}{{dataType.qualifiedName}}{{>closeOmittable}}" - - maybeCrefType: "{{#avoidCopy}}const {{/avoidCopy}}{{>maybeOmittableType}}{{#avoidCopy}}&{{/avoidCopy}}{{#moveOnly}}&&{{/moveOnly}}" - qualifiedMaybeCrefType: - "{{#avoidCopy}}const {{/avoidCopy}}{{>qualifiedMaybeOmittableType}}{{#avoidCopy}}&{{/avoidCopy}}{{#moveOnly}}&&{{/moveOnly}}" - - maybeCrefJsonObject: "{{^propertyMap}}const QJsonObject&{{/propertyMap}}{{#propertyMap}}QJsonObject{{/propertyMap}}" - takeOrValue: "{{#propertyMap}}take{{/propertyMap}}{{^propertyMap}}value{{/propertyMap}}" - - initializeDefaultValue: "{{#defaultValue}}{{>initializer}}{{/defaultValue}}{{^defaultValue}}{{>omittedValue}}{{/defaultValue}}" - joinedParamDecl: '{{>maybeCrefType}} {{paramName}}{{^required?}} = {{>initializeDefaultValue}}{{/required?}}{{>cjoin}}' - joinedParamDef: '{{>maybeCrefType}} {{paramName}}{{>cjoin}}' - passQueryParams: '{{#queryParams}}{{paramName}}{{>cjoin}}{{/queryParams}}' - - # Doc-comment blocks. Comment indent is managed by clang-format - # (without clang-format there'd have to be a separate partial definition - # for each indent...) - - # For structures that are not supposed to have a summary (e.g., JSON schema) - docCommentShort: |- - {{#description}} - /// {{_}}{{/description}} - docCommentSummary: |- - {{#summary}} \brief {{summary}} - *{{/summary}} - - templates: - - "{{base}}.h.mustache" - - "{{base}}.cpp.mustache" - - #outFilesList: apifiles.txt - |