Merge pull request #5569 from krotovic/feat/tsgen-this-function

Add support for `this` in function definitions
This commit is contained in:
Richard Davey 2021-03-24 16:06:25 +00:00 committed by GitHub
commit c863a59223
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 26 additions and 2 deletions

View file

@ -333,6 +333,12 @@ class Parser {
}
setParams(doclet, obj) {
let parameters = [];
if (doclet.this) {
let typeName = this.prepareTypeName(doclet.this);
let type = dom.create.namedTypeReference(this.processTypeName(typeName));
let param = dom.create.parameter(dom.type.this, type);
parameters.push(param);
}
if (doclet.params) {
let optional = false;
obj.jsDocComment = '';

File diff suppressed because one or more lines are too long

View file

@ -449,6 +449,14 @@ export class Parser {
private setParams(doclet: any, obj: dom.FunctionDeclaration | dom.ConstructorDeclaration): void {
let parameters: dom.Parameter[] = [];
if (doclet.this) {
let typeName = this.prepareTypeName(doclet.this);
let type = dom.create.namedTypeReference(this.processTypeName(typeName));
let param = dom.create.parameter(dom.type.this, type);
parameters.push(param);
}
if (doclet.params) {
let optional = false;

View file

@ -5,7 +5,7 @@
* @property {Phaser.Types.Scenes.SceneInitCallback} [init] - The scene's init callback.
* @property {Phaser.Types.Scenes.ScenePreloadCallback} [preload] - The scene's preload callback.
* @property {Phaser.Types.Scenes.SceneCreateCallback} [create] - The scene's create callback.
* @property {function} [update] - The scene's update callback. See {@link Phaser.Scene#update}.
* @property {Phaser.Types.Scenes.SceneUpdateCallback} [update] - The scene's update callback. See {@link Phaser.Scene#update}.
* @property {any} [extend] - Any additional properties, which will be copied to the Scene after it's created (except `data` or `sys`).
* @property {any} [extend.data] - Any values, which will be merged into the Scene's Data Manager store.
*/

View file

@ -6,5 +6,6 @@
* @callback Phaser.Types.Scenes.SceneCreateCallback
* @since 3.0.0
*
* @this Phaser.Scene
* @param {object} data - Any data passed via `ScenePlugin.add()` or `ScenePlugin.start()`. Same as Scene.settings.data.
*/

View file

@ -5,5 +5,6 @@
* @callback Phaser.Types.Scenes.SceneInitCallback
* @since 3.0.0
*
* @this Phaser.Scene
* @param {object} data - Any data passed via `ScenePlugin.add()` or `ScenePlugin.start()`. Same as Scene.settings.data.
*/

View file

@ -5,4 +5,6 @@
*
* @callback Phaser.Types.Scenes.ScenePreloadCallback
* @since 3.0.0
*
* @this Phaser.Scene
*/

View file

@ -0,0 +1,6 @@
/**
* @callback Phaser.Types.Scenes.SceneUpdateCallback
* @since 3.0.0
*
* @this Phaser.Scene
*/