Commit Graph
126 Commits
Author SHA1 Message Date
Jaime Humberto Macias Bustamante 1bcbce2d5b Property combination check
Also, it parses 'dynamic'.

Still working on getter/setter for variables
2025-05-16 14:10:20 -07:00
Jaime Humberto Macias Bustamante 22d6404799 getter/setter for variables 2025-05-15 01:17:11 -07:00
Jaime Humberto Macias Bustamante 932e643dc9 Better access context (IN PROGRESS)
Also, throws an error if a variable with "(get, set)" doesn't have a type or a default value.
2025-05-15 01:07:29 -07:00
Jaime Humberto Macias Bustamante 8dce40354a "null" access handling + get/set for variables
- It handles "null" allowing access only inside of the class.

- "final" variables can be initialized in the constructor if they doesn't have a default value.

- "var a(get, set):Int" is parsed outside of Custom Class, but for now it doesn't call their accessors.

almost finished :3
2025-05-13 00:38:11 -07:00
Jaime Humberto Macias Bustamante 19b5b2b049 getter, setter and final for Custom Classes
full support for "var a(get, set):Int".
Also, it takes into account final vars

Soon for inline custom classes

[UNTESTED]
2025-05-12 11:27:43 -07:00
Jaime Humberto Macias Bustamante 64ee722124 Allow trailing array commas (https://github.com/HaxeFoundation/hscript/pull/139) 2025-05-11 12:36:55 -07:00
Jaime Humberto Macias Bustamante 77282e3b7b Update Parser.hx 2025-05-11 12:15:45 -07:00
Jaime Humberto Macias Bustamante bf602f758b Typedefs for Custom Classes
Only works as an import method, for example: `typedef OtherShader = funkin.backend.shaders.CustomShader;`.
2025-05-04 20:13:01 -07:00
Jaime Humberto Macias Bustamante 34b07378fd Fix 1e parsing
Fix 1e5, 1e-5 evaluated as Infinity (https://github.com/HaxeFoundation/hscript/pull/132)
2025-04-10 14:51:36 -07:00
Jaime Humberto Macias Bustamante 6622220415 Array parse fix
Do not allow arrays without comma between values (https://github.com/HaxeFoundation/hscript/pull/138)
2025-04-09 11:57:04 -07:00
Jaime Humberto Macias Bustamante e6b5d6af49 ".bind" support + "package;" 2025-03-04 20:26:32 -07:00
Jaime Humberto Macias Bustamante 9833c61f78 Using and Enums
Based on Enums and Using system from hscript-iris, mostly made by ne_eo.
2025-03-03 21:53:02 -07:00
Jaime Humberto Macias Bustamante a1ee770794 oops :3 2025-02-04 00:57:53 -07:00
Jaime Humberto Macias Bustamante 270087fc62 Update Parser.hx
forgot to put the "EIgnore" work
2025-02-03 20:35:10 -07:00
Jaime Humberto Macias Bustamante bd0ae3fbe1 Typedef support
Original Implementation by ne_eo for hscript-iris.

For now only works for normal scripts and making import redirects. Soon for custom classes.
2025-02-03 00:00:15 -07:00
Jaime Humberto Macias Bustamante 241d97aed0 Import aliases for Custom Classes
Import aliases support for Custom Classes. This allows you to import classes and other custom classes with an alias inside of a Custom Class.

This includes some improvements on "parseModuleDecl()"
2025-02-01 21:00:41 -07:00
Ne_Eo e4789d9c40 Fix typo 2024-12-16 03:54:00 +01:00
Ne_Eo 9f0937b5c3 Merge branch 'master' into codename-dev 2024-11-15 15:25:22 +01:00
Redar13andGitHub 3a5c4f2164 Fix ending in with #end in the file (#5)
* Update Parser.hx

* Update Parser.hx
2024-11-06 16:39:09 +01:00
Ne_Eo 9b614421b6 Remove haxe2 support 2024-10-18 01:57:19 +02:00
Ne_Eo 5d2a99d40e More Optimizations 2024-09-03 15:28:33 +02:00
Ne_Eo 1d06905fc5 Optimizations 2024-09-03 14:12:11 +02:00
Ne_Eo 3f98441918 Fixed bugs and ram improvements 2024-09-03 13:42:25 +02:00
Ne_Eo f8e00859cd Inline parses correctly now 2024-09-03 13:10:13 +02:00
Ne_Eo 933c9cb5e3 final function parsing 2024-09-03 05:05:21 +02:00
Ne_Eo 644c75094e Added private syntax sugar, custom class fix 2024-09-03 02:03:31 +02:00
Ne_Eo 13bdf30055 Classes work more reliably + Optimizations 2024-08-20 04:50:20 +02:00
Ne_Eo 123a7de64a Fix Trigraph bug 2024-07-26 04:24:37 +02:00
NeeEoo a8cc0ccc86 Restructuring + KeyValueItherators + is + fixes 2023-09-23 21:23:31 +02:00
NeeEoo 87f2c1b062 Added import as and switch or and def null 2023-06-15 11:08:08 +02:00
NeeEoo ddaa4d1741 Added support for dots in preprocessors 2023-04-10 15:08:16 +02:00
NeeEoo dc5282c32e Added finals 2023-04-10 02:10:46 +02:00
lunarcleint 812abae6e5 ??= op 2023-04-09 16:51:04 -07:00
NeeEoo b3b512d027 Added support for ?. 2023-04-10 00:09:50 +02:00
NeeEoo ed296c4c7f Merge branch 'master' into custom-classes 2023-04-09 23:28:45 +02:00
lunarcleint 595bb47249 ?? and .? syntax (only ?? is functional) 2023-04-09 14:09:58 -07:00
NeeEoo daad1a4fa8 Added underscore support to numbers + binary 2023-04-08 00:08:49 +02:00
Yoshman29 0903718314 removed all unnecessary traces 2023-04-01 22:46:02 +02:00
Yoshman29 17449dd9d5 oopsie 2023-04-01 17:15:01 +02:00
Yoshman29 c5e3ab1162 custom classes 2023-04-01 15:02:36 +02:00
NeeEoo b7b12b6cbb WIP Classes 2023-03-31 20:16:30 +02:00
NeeEoo 5684ca8671 WIP Class Parsing 2023-03-31 18:12:50 +02:00
NeeEoo 4f9b449c6e Added inferred map types and bypassAccessor 2023-03-19 05:26:27 +01:00
Yoshman29 6ba54b0e77 static and public 2022-11-04 19:33:04 +01:00
Yoshman29 4b5baa9b5f Revert "thing that needs to be reverted"
This reverts commit 6dedd87260.
2022-10-13 23:18:54 +02:00
Yoshman29 6dedd87260 thing that needs to be reverted 2022-10-13 23:18:47 +02:00
Yoshman29 0601b8def6 natural import & static access from vars for YCE 2022-06-29 00:53:51 +02:00
YoshiCrafter29 841261f199 Added import support 2022-06-08 20:10:40 +02:00
Nicolas Cannasse cc3c21b7e3 fixed unop priority overriding binop one (close #94) 2020-07-14 12:49:24 +02:00
Nicolas Cannasse ae9560124e fixed () -> e short lambda parsing (close #93) 2020-05-07 10:24:04 +02:00