Commit Graph

115 Commits

Author SHA1 Message Date
3fd48b7963 Improve Gradle build scripts 2020-05-30 12:49:17 +02:00
3c25833122 Create smnp.lang package with basic get() methods for map and list 2020-05-30 12:49:17 +02:00
8ca966b376 Create working example of external module 2020-05-30 12:49:17 +02:00
dcdecee28f [BIG REFACTOR] Create new project structure and prepare scaffolding for external modules system 2020-05-30 12:49:16 +02:00
ae9406cc50 Configure jar task to build fat jar archives 2020-05-30 12:49:16 +02:00
4fea93cdf9 Create stubbed ModuleProvider and add module loading tools to Environment class 2020-05-30 12:49:16 +02:00
a1561c33bb Create module model 2020-05-30 12:49:16 +02:00
815bd29c99 Create method and function invocation exception along with arguments formatter 2020-05-30 12:49:15 +02:00
760270c026 Create method definition tools 2020-05-30 12:49:15 +02:00
d24f1d72c7 Create function definition tools 2020-05-30 12:49:15 +02:00
634ea2711b Extract some fundamental metadata structure to io.smnp.api package 2020-05-30 12:49:14 +02:00
945df28a29 Migrate signatures parsers to Kotlin 2020-05-30 12:49:14 +02:00
e14eb17aa6 Migrate matchers to Kotlin 2020-05-30 12:49:14 +02:00
380b07f065 Migrate condition evaluator to Kotlin 2020-05-30 12:49:14 +02:00
7eb77860e3 Migrate block evaluator to Kotlin 2020-05-30 12:49:13 +02:00
31e194a566 Migrate throw evaluator to Kotlin 2020-05-30 12:49:13 +02:00
c9e612a492 Introduce ExpressionEvaluator 2020-05-30 12:49:13 +02:00
c68d5efe62 Fix operator precedence between relation operators and logic operators 2020-05-30 12:49:13 +02:00
97cb3d3017 Migrate relation operators evaluator to Kotlin 2020-05-30 12:49:12 +02:00
0bf2a98102 Migrate logic operators evaluator to Kotlin 2020-05-30 12:49:12 +02:00
81dfc32f67 Migrate access operator evaluator to Kotlin 2020-05-30 12:49:12 +02:00
f71b59f51e Introduce number unificator for evaluators 2020-05-30 12:49:11 +02:00
a28a98080d Migrate sum operator evaluator to Kotlin 2020-05-30 12:49:11 +02:00
81cd0f25a7 Migrate product operator evaluator to Kotlin 2020-05-30 12:49:11 +02:00
1406a3fa6f Migrate power operator evaluator to Kotlin 2020-05-30 12:49:11 +02:00
5f92cab2bf Refactor evaluators to make use of supportedNodes() method 2020-05-30 12:49:10 +02:00
24eb2194cf Migrate not operator evaluator to Kotlin 2020-05-30 12:49:10 +02:00
2192a22fa5 Migrate minus operator evaluator to Kotlin 2020-05-30 12:49:10 +02:00
26e5153cd3 Compose DefaultEvaluator and RootEvaluator 2020-05-30 12:49:10 +02:00
6ef7d346ff Move all classes to new io.smnp package 2020-05-30 12:49:09 +02:00
fff817b0fd Migrate literal evaluators to Kotlin 2020-05-30 12:49:09 +02:00
f2494aa874 Create base for future evaluators 2020-05-30 12:49:09 +02:00
b01af589d9 Create InvalidSyntaxException 2020-05-30 12:49:08 +02:00
07677cc6c9 Fix ReturnParser to be able to consume loops (handled within ExpressionParser) 2020-05-30 12:49:08 +02:00
a8835a7697 Fix NoteTokenizer for proper consuming @B and @b note literals 2020-05-30 12:49:08 +02:00
43083ee905 Enable running external scripts 2020-05-30 12:49:08 +02:00
e2934ef2b6 Migrate root parser to Kotlin 2020-05-30 12:49:07 +02:00
6c77d02f32 Migrate extend statement parser to Kotlin 2020-05-30 12:49:07 +02:00
74d42588a4 Migrate import parser to Kotlin 2020-05-30 12:49:07 +02:00
df4b923356 Refactor parsers 2020-05-30 12:49:07 +02:00
81b5ccee50 Migrate function definition parser to Kotlin 2020-05-30 12:49:06 +02:00
3be119c353 Migrate function definition argument parser to Kotlin 2020-05-30 12:49:06 +02:00
f46fcdfc6a Migrate type parser to Kotlin 2020-05-30 12:49:06 +02:00
e8d57629e3 Migrate function call and assignment operator parsers to Kotlin 2020-05-30 12:49:06 +02:00
d1da81afd9 Improve AbstractIterableParser to return correct node if empty iterable 2020-05-30 12:49:06 +02:00
984732bf26 Migrate loop parser to Kotlin 2020-05-30 12:49:05 +02:00
52dcaacb58 Migrate identifier and map parsers to Kotlin 2020-05-30 12:49:05 +02:00
6e9d3d06fb Migrate list parser to Kotlin 2020-05-30 12:49:05 +02:00
5cd0b47415 Refactor Node to refer other Nodes instead of Any 2020-05-30 12:49:05 +02:00
e363a2b10b Migrate abstract iterable parser to Kotlin 2020-05-30 12:49:04 +02:00