Skip to content

Commit e625b62

Browse files
Jsdoc: process since tag.
1 parent 19586ef commit e625b62

File tree

5 files changed

+69
-9
lines changed

5 files changed

+69
-9
lines changed

scripts/whats-new-in-phaser-api.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#!/usr/bin/node
2+
3+
var fs = require("fs");
4+
5+
var jsonPath = "/home/arian/Documents/Phaser/phaser3-docs/json/phaser.json";
6+
7+
8+
fs.readFile(jsonPath, 'utf8', processFile);
9+
10+
function processFile(err, data) {
11+
var json = JSON.parse(data);
12+
13+
for(var entry of json.docs) {
14+
15+
if (entry.since) {
16+
console.log(entry.since + " " + entry.longname);
17+
}
18+
}
19+
}

source/v2/phasereditor/phasereditor.inspect.core/src/phasereditor/inspect/core/jsdoc/IPhaserMember.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@
3131
import phasereditor.ui.ISourceLocation;
3232

3333
public interface IPhaserMember extends ISourceLocation, Serializable {
34+
public String getSince();
35+
3436
public String getName();
3537

3638
public String getHelp();

source/v2/phasereditor/phasereditor.inspect.core/src/phasereditor/inspect/core/jsdoc/JsdocRenderer.java

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ public String render(Object member) {
260260
if (member instanceof PhaserVariable) {
261261
return renderVariable((PhaserVariable) member);
262262
}
263+
263264
if (member instanceof PhaserNamespace) {
264265
return renderNamespace((PhaserNamespace) member);
265266
}
@@ -273,6 +274,8 @@ private String renderNamespace(PhaserNamespace member) {
273274
sb.append("<b>" + renderImageBase64(getImage(member)) + " " + member.getName() + "</b>");
274275

275276
sb.append("<p>" + processHtmlDescription(member.getHelp()) + "</p>");
277+
278+
renderSince(sb, member);
276279

277280
return sb.toString();
278281
}
@@ -295,8 +298,10 @@ private String renderEventConstant(PhaserEventConstant event) {
295298
var qname = container.getName() + "." + event.getName();
296299

297300
sb.append("<b>" + renderImageBase64(getImage(event)) + " event " + qname + "</b>");
298-
301+
299302
sb.append("<p>" + processHtmlDescription(event.getHelp()) + "</p>");
303+
304+
renderSince(sb, event);
300305

301306
sb.append(htmlArgsDoc(event.getArgs()));
302307

@@ -326,8 +331,10 @@ private String renderConstant(PhaserConstant cons) {
326331
String qname = container.getName() + "." + cons.getName();
327332

328333
sb.append("<b>" + renderImageBase64(getImage(cons)) + returnSignature + " " + qname + "</b>");
329-
334+
330335
sb.append("<p>" + processHtmlDescription(cons.getHelp()) + "</p>");
336+
337+
renderSince(sb, cons);
331338

332339
return sb.toString();
333340
}
@@ -342,6 +349,8 @@ private String renderVariable(PhaserVariable var) {
342349
sb.append("<b>" + renderImageBase64(getImage(var)) + returnSignature + " " + qname + "</b>");
343350

344351
sb.append("<p>" + processHtmlDescription(var.getHelp()) + "</p>");
352+
353+
renderSince(sb, var);
345354

346355
if (var instanceof PhaserProperty && ((PhaserProperty) var).isReadOnly()) {
347356
sb.append("<p><b>readonly</b></p>");
@@ -363,6 +372,8 @@ public String renderMethod(PhaserMethod method) {
363372
+ htmlArgsList(method.getArgs()) + "</b>");
364373

365374
sb.append("<p>" + processHtmlDescription(method.getHelp()) + "</p>");
375+
376+
renderSince(sb, method);
366377

367378
renderFires(sb, method);
368379

@@ -401,8 +412,10 @@ public String renderType(PhaserType type) {
401412
sb.append(" <b>extends</b> " + renderExtends(type));
402413
}
403414
sb.append("<br>");
404-
415+
405416
sb.append("<p>" + processHtmlDescription(type.getHelp()) + "</p>");
417+
418+
renderSince(sb, type);
406419

407420
renderFires(sb, type);
408421

@@ -411,6 +424,13 @@ public String renderType(PhaserType type) {
411424
return sb.toString();
412425
}
413426

427+
private void renderSince(StringBuilder sb, IPhaserMember member) {
428+
var since = member.getSince();
429+
if (since != null) {
430+
sb.append("<p><b>Since</b>: " + since + "</p>");
431+
}
432+
}
433+
414434
private String renderExtends(PhaserType type) {
415435
StringBuilder sb = new StringBuilder();
416436
int i = 0;

source/v2/phasereditor/phasereditor.inspect.core/src/phasereditor/inspect/core/jsdoc/PhaserJsdocModel.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public synchronized static PhaserJsdocModel getInstance() {
6767

6868
var size = Files.getLastModifiedTime(docsJsonFile).toMillis();
6969

70-
var cacheFile = InspectCore.getUserCacheFolder().resolve("phaser.json." + size + ".binary");
70+
var cacheFile = InspectCore.getUserCacheFolder().resolve("phaser.json.2." + size + ".binary");
7171

7272
if (Files.exists(cacheFile)) {
7373
try (var input = new ObjectInputStream(Files.newInputStream(cacheFile))) {
@@ -284,11 +284,21 @@ private void buildPhaserJSDoc(Path docsJsonFile) throws IOException {
284284
}
285285

286286
{
287-
// build fires
288287
for (var member : _membersMap.values()) {
289288
buildFiresEventList(member);
289+
buildSince(member);
290290
}
291291
}
292+
293+
}
294+
}
295+
296+
private static void buildSince(IPhaserMember member) {
297+
if (member instanceof PhaserMember) {
298+
var json = member.getJSON();
299+
if (json.has("since")) {
300+
((PhaserMember) member).setSince(json.getString("since"));
301+
}
292302
}
293303
}
294304

@@ -825,9 +835,9 @@ private void buildFiresEventList(IPhaserMember member) {
825835
for (int i = 0; i < firesArray.length(); i++) {
826836
var name = firesArray.getString(i);
827837
name = name.replace("#event:", ".");
828-
838+
829839
var event = (PhaserEventConstant) _membersMap.get(name);
830-
840+
831841
if (event != null) {
832842
member.getFiresEventList().add(event);
833843
}

source/v2/phasereditor/phasereditor.inspect.core/src/phasereditor/inspect/core/jsdoc/PhaserMember.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
public abstract class PhaserMember implements IPhaserMember, IAdaptable {
3131

32-
private static final long serialVersionUID = 2L;
32+
private static final long serialVersionUID = 3L;
3333

3434
private String _name;
3535
private String _help;
@@ -39,15 +39,24 @@ public abstract class PhaserMember implements IPhaserMember, IAdaptable {
3939
private transient JSONObject _json;
4040
private IMemberContainer _container;
4141
private List<PhaserEventConstant> _firesEventList;
42-
4342
private String _filename;
43+
private String _since;
4444

4545
public PhaserMember(JSONObject json) {
4646
_static = false;
4747
_json = json;
4848
_firesEventList = new ArrayList<>();
4949
}
5050

51+
@Override
52+
public String getSince() {
53+
return _since;
54+
}
55+
56+
public void setSince(String since) {
57+
_since = since;
58+
}
59+
5160
@Override
5261
public List<PhaserEventConstant> getFiresEventList() {
5362
return _firesEventList;

0 commit comments

Comments
 (0)