Commit Graph

8 Commits

Author SHA1 Message Date
Benedikt Peetz 26e0bbb972
feat(trixy-lang_parser): Provide an api 2023-12-22 20:39:02 +01:00
Benedikt Peetz 70c4cc6f18
feat(trixy-lang_parser): Add support for doc comments
Parsing right now works by simply comparing the input string:
```
"/" -> <comment_tokenizer> -> "/" -> <normal_comment>
                          |-> "//" -> <doc_comment>
```

A better method to do this though would be to turn "//" and "///" into
keywords and simply leave the parsing to the parser module not the
tokenizer.
2023-12-22 20:32:43 +01:00
Benedikt Peetz 3503e5250c
feat(trixy-lang_parser): Add type checking (2nd stage parsing) 2023-12-22 14:57:39 +01:00
Benedikt Peetz 370aac4395
feat(trixy-lang_parser): Add support for Type
This includes rust like generic types like:
```
Option<T>
Result<T, E>
```
2023-12-19 17:27:13 +01:00
Benedikt Peetz be066afe23
feat(trixy-lang_parser): Add support for structs and enums 2023-12-18 20:50:58 +01:00
Benedikt Peetz 3a65c33b15
feat(trixy-lang_parser): Add first parser pass 2023-12-18 18:04:21 +01:00
Benedikt Peetz 3da75f6913
feat(trixy-lang_parser): Add a lexer with error handling for trixy code 2023-12-16 11:45:23 +01:00
Benedikt Peetz cd2dbc516a
chore(trixy): Rename `language_macros` to `trixy`
The motivation behind this change is to comply with the naming scheme:
starting crate names with `tri`
2023-12-16 11:45:12 +01:00