-
b7d50f8222
allow escaping of $ in macro string
feature/variables
Moritz Hölting
2025-08-26 21:15:41 +0200
-
183d3e85c6
implement new tokenizer & parser for TemplateStringLiteral
Moritz Hölting
2025-08-25 19:12:20 +0200
-
08ed56b673
rename MacroString to TemplateString
Moritz Hölting
2025-08-25 15:51:21 +0200
-
3bc3ca180f
implement compile-time function arguments
Moritz Hölting
2025-08-19 15:14:12 +0200
-
bd8270bd5d
fix semantic analysis to allow assignment to indexed identifier
Moritz Hölting
2025-08-13 18:55:47 +0200
-
e0c3253ab6
fix comptime variable errors
Moritz Hölting
2025-08-13 18:24:48 +0200
-
15dde037b7
only use function arg storage if required
Moritz Hölting
2025-08-13 18:05:15 +0200
-
0ee456756a
apply clippy lints from version 0.1.89
Moritz Hölting
2025-08-13 15:26:36 +0200
-
d9ae985282
change syntax of array declaration: move brackets from after name to after type
Moritz Hölting
2025-08-13 12:58:35 +0200
-
3271ca514c
add script for extracting EBNF grammar from doccomments
Moritz Hölting
2025-08-13 09:37:18 +0200
-
6e27474da4
implement rest of member access transpilation
Moritz Hölting
2025-08-06 15:28:03 +0200
-
927b0f52c1
implement first parts of member access
Moritz Hölting
2025-06-18 11:44:26 +0200
-
dd97937feb
run as expression, implement return statement
Moritz Hölting
2025-04-07 18:01:35 +0200
-
68149d9ddf
implement uninstall annotation
Moritz Hölting
2025-04-07 14:05:54 +0200
-
1e82d2321f
allow importing global variables, get rid of functions and aliases field of transpiler
Moritz Hölting
2025-04-07 01:09:34 +0200
-
0a8bf37e40
implement global variables (without imports)
Moritz Hölting
2025-04-01 15:19:22 +0200
-
469b8d3875
implement first version of compiler variables
Moritz Hölting
2025-04-01 01:00:36 +0200
-
ab76b1d43e
change the syntax to set the type of tags
Moritz Hölting
2025-03-31 22:59:29 +0200
-
f808fef3f1
fix compile errors without shulkerbox feature
Moritz Hölting
2025-03-31 22:47:16 +0200
-
32d453ebef
reimplement semantic checking
Moritz Hölting
2025-03-31 21:40:59 +0200
-
f3b3d5d3b6
implement integer and boolean function arguments
Moritz Hölting
2025-03-30 19:38:08 +0200
-
ca0edfc5bc
improve compiler-internal function print
Moritz Hölting
2025-03-28 13:54:25 +0100
-
0fd9dc432e
first version of print internal function for easier displaying variable values
Moritz Hölting
2025-03-16 23:26:20 +0100
-
237207a447
implement tag and array variables
Moritz Hölting
2025-03-16 20:46:18 +0100
-
b119ca33c7
implement todos in scoreboard variable
Moritz Hölting
2025-03-16 19:25:25 +0100
-
0885665baf
implement score variable declarations
Moritz Hölting
2025-03-15 20:28:26 +0100
-
055de5c4ea
introduce shulkerscript module in lua
Moritz Hölting
2025-03-15 17:53:20 +0100
-
d988a10d9d
path other variable types to lua (except functions)
Moritz Hölting
2025-03-15 15:55:57 +0100
-
713977390d
fix error in macro string parsing from string
Moritz Hölting
2025-03-15 09:31:08 +0100
-
6dde4b41c1
allow marking return value from lua as containing macro
Moritz Hölting
2025-03-15 00:22:33 +0100
-
8a9db43424
fix recursive function calls leading to stack overflow
Moritz Hölting
2025-03-15 00:20:40 +0100
-
7290806a2b
fix compile error when compiling without shulkerbox feature
Moritz Hölting
2025-03-14 13:20:24 +0100
-
e4c06e56ee
allow passing some variables into lua
Moritz Hölting
2025-03-14 12:51:17 +0100
-
863bc784cc
remove duplicate function, optimize function calls with mixed static and dynamic parameters
Moritz Hölting
2025-03-13 14:35:59 +0100
-
cebe3e9cb0
implement dynamic (scoreboard, storages) values passed in as macro parameters
Moritz Hölting
2025-03-12 23:37:23 +0100
-
5740172ddb
implement more missing functionality marked with todo!
Moritz Hölting
2025-03-12 13:38:27 +0100
-
f6dadf881a
shortcut when using literal booleans
Moritz Hölting
2025-03-11 21:27:57 +0100
-
9c54dee454
remove possibility of using same transpiler twice
Moritz Hölting
2025-03-11 21:00:50 +0100
-
09dd19508d
change conditional to use expression instead of individual condition
Moritz Hölting
2025-03-11 19:43:26 +0100
-
79a6455d8f
implement expressions as conditions
Moritz Hölting
2025-03-11 18:54:29 +0100
-
2a41796405
implement scoreboard operations for variables
Moritz Hölting
2025-03-11 13:38:21 +0100
-
58998b4246
implement more primary expressions (identifier, parenthesized, prefixed)
Moritz Hölting
2025-03-10 15:57:38 +0100
-
14b371b3b6
implement binary expression parsing and transpiling if possible at compile time
Moritz Hölting
2025-03-08 13:23:59 +0100
-
e772c4b2c2
implement variable assignments
Moritz Hölting
2025-03-07 17:36:25 +0100
-
94693cce6c
fix generating same data location for shadowed variables
Moritz Hölting
2025-03-07 17:05:58 +0100
-
c72fbfd148
implement boolean storage variable
Moritz Hölting
2025-03-07 16:47:48 +0100
-
8ae065f582
implement basic assignment transpilation
Moritz Hölting
2025-03-06 14:40:26 +0100
-
3d4ad4bdf4
update shulkerbox dependency
develop
Moritz Hölting
2025-03-05 17:00:53 +0100
-
2185206f1b
improve debug formatting for Scope and FunctionData
Moritz Hölting
2025-03-05 14:43:10 +0100
-
68da1f4e12
rework annotations & transpile single int declarations without assignment
Moritz Hölting
2025-02-27 22:03:45 +0100
-
9279e52c00
change function transpilation to use scope instead of separate map
Moritz Hölting
2025-02-26 13:05:59 +0100
-
a07f16f283
prepare transpiling variables
Moritz Hölting
2025-02-25 22:52:39 +0100
-
38f90e6491
fix variable declaration parsing
Moritz Hölting
2025-02-25 20:40:54 +0100
-
0d0df920ee
implement variable declaration parsing
Moritz Hölting
2025-02-24 23:02:07 +0100
-
-
b8303689db
make serialization of source file thread local
Moritz Hölting
2025-02-19 09:32:00 +0100
-
a6a5e42b6b
Change development branch name in github action workflow
Moritz Hölting
2025-02-18 10:18:16 +0100
-
19c55b78f4
add example compiler to demonstrate basic functionality and usage
Moritz Hölting
2025-02-17 23:05:51 +0100
-
96fe865ac1
Merge branch 'feature/macro-functions' into develop
Moritz Hölting
2025-02-17 13:58:58 +0100
-
-
f962f5c36b
remove dependency on feature "rc" of serde
Moritz Hölting
2025-02-15 15:23:25 +0100
-
e1fb8c2a8e
change back to derive (de-)serialize for Span
Moritz Hölting
2025-02-15 15:21:16 +0100
-
23aa3a58fe
update changelog and make flexbuffers dependency optional
Moritz Hölting
2025-02-15 10:36:16 +0100
-
5b5465488f
change order of serialization of Span by serializing to temporary buffer
Moritz Hölting
2025-02-12 15:18:05 +0100
-
116a15e8ea
implement custom deserialize
Moritz Hölting
2025-02-12 14:37:52 +0100
-
124d3383e8
implement custom serialize for Span
Moritz Hölting
2025-02-12 14:09:02 +0100
-
a91b6f82f5
update dependencies
Moritz Hölting
2025-02-15 14:40:58 +0100
-
8223dccc24
fix compilation errors depending on feature selection and update dependency version
Moritz Hölting
2025-01-17 12:27:25 +0100
-
6179bebbf0
remove unnecessary RwLocks in Transpiler
Moritz Hölting
2024-11-15 10:42:52 +0100
-
5154531083
unescape macro string contents
Moritz Hölting
2024-11-15 10:33:55 +0100
-
03973bbac1
allow passing in parameters to functions that will be used as macros
Moritz Hölting
2024-11-12 14:17:08 +0100
-
7e96a43e5f
show multiple errors and mark tick/load annotation incompatible with parameters
Moritz Hölting
2024-11-11 23:19:36 +0100
-
eb595bc28b
require macros to be present in function parameters
Moritz Hölting
2024-11-11 22:54:24 +0100
-
b2cc3bb4c7
implement first version of macros
Moritz Hölting
2024-11-10 16:04:10 +0100
-
-
cd350c538e
remove debug statement in lua handling
main
Moritz Hölting
2024-11-09 15:24:58 +0100
-
8d359f9969
update mlua to 0.10.0
Moritz Hölting
2024-10-30 20:44:05 +0100
-
aed758101c
prepare release of version 0.1.0
v0.1.0
Moritz Hölting
2024-10-01 12:01:20 +0200
-
a9a8aff13b
change to dual license, add code of conduct, contributing
Moritz Hölting
2024-09-30 16:55:43 +0200
-
804f314df7
use full hash length as name, improve docs
Moritz Hölting
2024-09-27 16:13:13 +0200
-
c1a8bc8577
update shulkerbox dependency for VFolder fix
Moritz Hölting
2024-09-22 22:48:49 +0200
-
a3e0bd95bc
update shulkerbox dependency
Moritz Hölting
2024-09-22 13:33:00 +0200
-
6abe437c70
implement tag declaration
Moritz Hölting
2024-09-21 22:45:05 +0200
-
0133661ad4
implement error on conflicting function names and deterministic function generation order
Moritz Hölting
2024-09-20 16:50:40 +0200
-
61b8f1ffb9
improve lua integration by allowing more flexible return types and introducing globals
Moritz Hölting
2024-09-20 14:55:48 +0200
-
0cccee936e
change return type of parse_* functions from Option to Result
Moritz Hölting
2024-09-19 20:54:39 +0200
-
2bc8281f19
improve error display
Moritz Hölting
2024-09-19 00:12:24 +0200
-
6f3c152e73
add source code display to UnexpectedExpression, LuaRuntimeError errors
Moritz Hölting
2024-09-03 22:21:03 +0200
-
6e019fb3ac
extend file provider with read_bytes method and return cow
Moritz Hölting
2024-09-01 22:41:43 +0200
-
3332511290
suggest similarly named functions if invoked function does not exist
Moritz Hölting
2024-08-29 00:57:11 +0200
-
6422737cf3
fix error on literal command directly after comment
Hölting, Moritz (Intern)
2024-08-28 13:09:19 +0200
-
659683bd39
add SourceCodeDisplay to MissingFunctionDeclaration error
Moritz Hölting
2024-08-27 22:55:26 +0200
-
4505def6c0
fix code error message not being displayed
Moritz Hölting
2024-08-24 00:46:37 +0200
-
8953b347c5
fix different function signature of eval_string when lua is disabled
Moritz Hölting
2024-08-23 23:56:10 +0200
-
f73665d265
add code example to top level functions
Moritz Hölting
2024-08-23 00:20:30 +0200
-
83d5f329f9
allow custom handlers instead of only printer
Moritz Hölting
2024-08-23 00:06:58 +0200
-
bc25da6f2c
cleanup and correct string literal content implementation
Moritz Hölting
2024-07-08 15:03:09 +0200
-
a0a27cda96
add argument for transpiling pack_format
Moritz Hölting
2024-06-24 21:48:40 +0200
-
398fce2bd6
add some integration tests
Moritz Hölting
2024-06-24 21:37:02 +0200
-
af544ac79e
implement file provider for working without file systems
Moritz Hölting
2024-06-21 19:22:24 +0200
-
b428c64f89
more ergonomic receive function of handler
Moritz Hölting
2024-06-21 10:09:30 +0200
-
dd79541ae9
add tracing crate for logging
Moritz Hölting
2024-06-15 21:34:14 +0200
-
5336ffb91e
change project name from shulkerscript-lang to shulkerscript
Moritz Hölting
2024-06-12 18:25:59 +0200