bigguy345
f3a7f3a0ad
ScriptLine.drawStringHex is now functional
2025-12-31 01:20:59 +02:00
bigguy345
f0b4513105
ExpressionTypeResolver API now checks resolved type against expected type.
...
i.e. in:
String s = true? true : "";
Both true and "" try to match s type String, and if any are incompatible it returns that so the error can be produced
2025-12-30 21:09:39 +02:00
bigguy345
61fb092c82
Non-static method call from static context validation
2025-12-30 20:21:23 +02:00
bigguy345
9c1fadf493
Added missing FieldInfo code to ScriptTypes too
2025-12-30 20:03:12 +02:00
bigguy345
e268a99f26
Added script type assignment errors to proper pool fetch methods
2025-12-30 19:38:37 +02:00
bigguy345
d909e9e44e
Improved field modifier fetching in HoverInfo
2025-12-30 19:38:00 +02:00
bigguy345
8240cbae9e
Small refactor
2025-12-30 19:37:41 +02:00
bigguy345
91140d81be
Fixed class detection patterns only searching for capital case words
2025-12-30 19:17:28 +02:00
bigguy345
b84ada3a30
Fixed class type detection using Character.isUpperCase in most contexts instead of more robust resolution
2025-12-30 19:08:30 +02:00
bigguy345
cd506cbc7a
Improved static access detection logic
2025-12-30 18:54:14 +02:00
bigguy345
5899186445
Code optimization (for erorring static access of non static members)
2025-12-30 18:51:22 +02:00
bigguy345
bd0044a2aa
applyTokenMetadata
2025-12-30 18:34:19 +02:00
bigguy345
d6b25127df
Commented out UNDEFINED_VAR hover info declaration
2025-12-30 18:33:57 +02:00
bigguy345
d6ca60b121
TokenErrorMessage impl
2025-12-30 18:32:59 +02:00
bigguy345
0e2375e7f8
Added error: "Cannot access non-static field from static context"
2025-12-30 18:07:30 +02:00
bigguy345
36e0e114fe
DONT FORGET TO TURN ON!
...
Turned off script error logging
2025-12-30 17:40:33 +02:00
bigguy345
c9e50f2cde
Deprecated CastExpressionResolver as ExpressionResolver API already has all this built in
2025-12-29 17:05:24 +02:00
bigguy345
c46d61b221
Delegated Casting resolution to a helper class
2025-12-29 17:02:25 +02:00
bigguy345
efd7d96ec7
Casting completely functional
2025-12-29 16:46:03 +02:00
bigguy345
bc05164209
Proper numeric promotion between java types for fetching the correct overload.
...
i.ie Math.max(20f,20) checks if the second int can be promoted to the nearest matching overload max(float, float), and fetches it
2025-12-29 16:12:44 +02:00
bigguy345
96d12c360d
MethodInfo now stores it's java Method
2025-12-29 15:16:53 +02:00
bigguy345
790cfae476
resolveExpressionType now accounts for method arg types when resolving a method, to fetch the matching overload
2025-12-29 15:16:40 +02:00
bigguy345
7e25b1c858
Fetched best method overload according to arg types provided
2025-12-29 15:05:39 +02:00
bigguy345
2ab48129b3
"null" is now a valid assignment/argument type
2025-12-29 02:12:12 +02:00
bigguy345
595efb529c
Unified isTypeCompatible across classes
2025-12-29 00:01:54 +02:00
bigguy345
3a2bcd228f
Fixed members of script types being unable to reference their type on creation
2025-12-28 23:03:52 +02:00
bigguy345
574c893f8d
oops
2025-12-28 22:37:37 +02:00
bigguy345
941cc5e3fd
Expression resolving/type resolution framework with operator parsing
2025-12-28 22:36:46 +02:00
bigguy345
c2e0bbedae
Small package refactor
2025-12-28 20:33:39 +02:00
bigguy345
534ec7b2c5
Refactored error curly underline rendering to its own helper class
2025-12-28 19:57:10 +02:00
bigguy345
e2a5d254a9
Added error "method signature already defined in this scope"
2025-12-28 19:41:28 +02:00
bigguy345
6d20f5f52c
Added error "Cannot return a value from a method with void result type"
2025-12-28 19:04:14 +02:00
bigguy345
3e21757d12
Method declaration error validation + helper classes needed for that
2025-12-28 18:54:10 +02:00
bigguy345
b7333bcf6a
Captured full/type/name offsets of method declarations
2025-12-28 18:53:29 +02:00
bigguy345
9aa23ef49d
Added external type constructor validation
2025-12-28 16:32:36 +02:00
bigguy345
c1e4e824ab
Fixed wrapText not splitting at \n
2025-12-28 16:25:07 +02:00
bigguy345
8b95d61e0f
Added constructor error validation
2025-12-28 16:19:15 +02:00
bigguy345
323502aa5e
Removed NewExpressionType for constructor calls, replaced with MethodCallInfo
2025-12-28 16:07:28 +02:00
bigguy345
58e2b4f591
disabled hover state click
2025-12-28 15:49:54 +02:00
bigguy345
a5ab3cb443
Removed the NEW_TYPE token, no longer needed
2025-12-28 15:49:41 +02:00
bigguy345
c398977022
Method declarations skip names after "new" keyword
2025-12-28 15:49:22 +02:00
bigguy345
ce5a67eaa2
Added constructors to script class types and hooked up their hover infos
2025-12-28 01:07:21 +02:00
bigguy345
dfc0232e99
Got classes defined in script fully functional
2025-12-28 00:19:00 +02:00
bigguy345
992aea663b
Aligned spacings for TYPE_MISMATCH errors
2025-12-27 23:26:09 +02:00
bigguy345
643b5e0d70
Fixed hover info being wrapped to the wrong font width
2025-12-27 22:49:40 +02:00
bigguy345
3b2ac768c6
Error "var already defined in scope"
2025-12-27 22:44:41 +02:00
bigguy345
6400c4a4e8
Fixed declaration hover info being not rendered for resolved method calls
2025-12-27 22:06:33 +02:00
bigguy345
a4eb63917f
Proper hover info formatting for declaration
2025-12-27 22:00:03 +02:00
bigguy345
794ff0c9b0
Removed whitespaces from AssingmentInfo's statementStart
2025-12-27 20:52:34 +02:00
bigguy345
17e0782a32
Forgot to check for assignments in method locals
2025-12-27 20:46:40 +02:00