mirror of
https://github.com/KAMKEEL/CustomNPC-Plus.git
synced 2026-11-12 21:17:32 +00:00
Stored JSDocInfo in FieldInfo and MethodInfo
This commit is contained in:
1 parent
ce3700b820
commit
830f2a3d8f
3 files changed
+18
-1
No files matched your search
@@ -738,6 +738,10 @@ public class ScriptDocument {
|
||||
m.start(), nameStart, nameStart,
|
||||
bodyStart, bodyEnd, 0, documentation
|
||||
);
|
||||
|
||||
if(jsDoc!=null)
|
||||
methodInfo.setJSDocInfo(jsDoc);
|
||||
|
||||
methods.add(methodInfo);
|
||||
}
|
||||
} else {
|
||||
@@ -1032,6 +1036,8 @@ public class ScriptDocument {
|
||||
|
||||
FieldInfo fieldInfo = FieldInfo.localField(varName, typeInfo, absPos, method, initStart, initEnd, 0);
|
||||
|
||||
if(jsDoc != null)
|
||||
fieldInfo.setJSDocInfo(jsDoc);
|
||||
// Check for duplicate
|
||||
if (locals.containsKey(varName) || globalFields.containsKey(varName)) {
|
||||
AssignmentInfo dupError = AssignmentInfo.duplicateDeclaration(
|
||||
@@ -1349,6 +1355,9 @@ public class ScriptDocument {
|
||||
|
||||
FieldInfo fieldInfo = FieldInfo.globalField(varName, typeInfo, position, documentation, initStart, initEnd, 0);
|
||||
|
||||
if(jsDoc != null)
|
||||
fieldInfo.setJSDocInfo(jsDoc);
|
||||
|
||||
if (globalFields.containsKey(varName)) {
|
||||
AssignmentInfo dupError = AssignmentInfo.duplicateDeclaration(
|
||||
varName, position, position + varName.length(),
|
||||
|
||||
@@ -3,6 +3,7 @@ package noppes.npcs.client.gui.util.script.interpreter.field;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.JSFieldInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.JSTypeInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.JSTypeRegistry;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.jsdoc.JSDocInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.token.TokenType;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.type.TypeInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.method.MethodCallInfo;
|
||||
@@ -34,7 +35,8 @@ public final class FieldInfo {
|
||||
private final int declarationOffset; // Where this field was declared in the source
|
||||
private final boolean resolved;
|
||||
private final String documentation; // Javadoc/comment documentation for this field
|
||||
|
||||
private JSDocInfo jsDocInfo; // Parsed JSDoc info for this method (may be null)
|
||||
|
||||
// Initialization value range (for displaying "= value" in hover info)
|
||||
private final int initStart; // Position of '=' or -1 if no initializer
|
||||
private final int initEnd; // Position after initializer (before ';') or -1
|
||||
@@ -467,6 +469,8 @@ public final class FieldInfo {
|
||||
public boolean isResolved() { return resolved; }
|
||||
public MethodInfo getContainingMethod() { return containingMethod; }
|
||||
public String getDocumentation() { return documentation; }
|
||||
public JSDocInfo getJSDocInfo() { return jsDocInfo; }
|
||||
public void setJSDocInfo(JSDocInfo jsDocInfo) { this.jsDocInfo = jsDocInfo; }
|
||||
public int getInitStart() { return initStart; }
|
||||
public int getInitEnd() { return initEnd; }
|
||||
public boolean hasInitializer() { return initStart >= 0 && initEnd > initStart; }
|
||||
|
||||
@@ -2,6 +2,7 @@ package noppes.npcs.client.gui.util.script.interpreter.method;
|
||||
|
||||
import noppes.npcs.client.gui.util.script.interpreter.*;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.field.FieldInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.jsdoc.JSDocInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.JSMethodInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.JSTypeInfo;
|
||||
import noppes.npcs.client.gui.util.script.interpreter.js_parser.JSTypeRegistry;
|
||||
@@ -59,6 +60,7 @@ public final class MethodInfo {
|
||||
private final boolean isDeclaration; // true if this is a declaration, false if it's a call
|
||||
private final int modifiers; // Java Modifier flags (e.g., Modifier.PUBLIC | Modifier.STATIC)
|
||||
private final String documentation; // Javadoc/comment documentation for this method
|
||||
private JSDocInfo jsDocInfo; // Parsed JSDoc info for this method (may be null)
|
||||
private final java.lang.reflect.Method javaMethod; // The Java reflection Method, if this was created from reflection
|
||||
|
||||
// Error tracking for method declarations
|
||||
@@ -269,6 +271,8 @@ public final class MethodInfo {
|
||||
public boolean isPrivate() { return Modifier.isPrivate(modifiers); }
|
||||
public boolean isProtected() { return Modifier.isProtected(modifiers); }
|
||||
public String getDocumentation() { return documentation; }
|
||||
public JSDocInfo getJSDocInfo() { return jsDocInfo; }
|
||||
public void setJSDocInfo(JSDocInfo jsDocInfo) { this.jsDocInfo = jsDocInfo; }
|
||||
|
||||
// ==================== OVERRIDE/IMPLEMENTS GETTERS/SETTERS ====================
|
||||
|
||||
|
||||
Reference in new issue
Block a user