summaryrefslogtreecommitdiff
path: root/src/parse
AgeCommit message (Collapse)Author
2021-01-10Add angle value ๐Ÿ“Laurenz
2021-01-10Add lots of new tokens ๐ŸชLaurenz
2021-01-09Add angle data type ๐Ÿ“Laurenz
2021-01-07Remove star-slash token โŒLaurenz
2021-01-06Inline literal enum into expression enum ๐Ÿ”€Laurenz
2021-01-06Pretty printing ๐Ÿฆ‹Laurenz
- Syntax tree and value pretty printing - Better value evaluation (top-level strings and content are evaluated plainly, everything else is pretty printed)
2021-01-04None literal ๐Ÿ•ณLaurenz
2021-01-03Move and rename many things ๐Ÿš›Laurenz
2021-01-02Dynamic values, Types, Arrays, and Dictionaries ๐Ÿš€Laurenz
- Identifiers are now evaluated as variables instead of being plain values - Constants like `left` or `bold` are stored as dynamic values containing the respective rust types - We now distinguish between arrays and dictionaries to make things more intuitive (at the cost of a bit more complex parsing) - Spans were removed from collections (arrays, dictionaries), function arguments still have spans for the top-level values to enable good diagnostics
2021-01-01A few small improvements โ™ปLaurenz
2021-01-01Better parser testing โœ…Laurenz
2020-12-31Parsing improvements ๐ŸงฝLaurenz
- Simplified scanner code - Peek eagerly - Skip whitespace and comments automatically in header mode - Parse simple block expressions - Move literal definitions into expression module - Raw resolving tests
2020-12-27Refresh function call and dictionary syntaxLaurenz
- No colon between function name and arguments, just whitespace - "Named" arguments (previously "keyword" arguments) use colon instead of equals sign
2020-12-27Add color enum ๐ŸŽจLaurenz
2020-12-17Test [rgb] ๐ŸŽจLaurenz
2020-12-16Tweak parser error messages ๐Ÿ”ฎLaurenz
2020-12-16Better tokenization testing ๐ŸŒ‹Laurenz
- Better tokenization test coverage. - Suffix testing: Each test case is tested with many different suffixes to ensure correct token ends. - Improves expression parsing (fixes #3).
2020-12-10Refine test infrastructure โœ…Laurenz
- Tests diagnostics - More and better separated image tests
2020-11-27Fix headings that are separated by only one newline ๐ŸšงLaurenz
Previously the following lead to only one line with both heading and body: ``` # Heading Body ```
2020-10-12Naming and grammar โœ”Laurenz
2020-10-10Flatten ast module back into syntax module ๐ŸŒชLaurenz
2020-10-10Switch back to custom geometry types, unified with layout primitives ๐ŸžLaurenz
2020-10-07Fix some clippy warnings โœ”Laurenz
2020-10-07Move deco, pass and feedback into diagnostics module โ†ฉLaurenz
2020-10-05Streamline generic layouting primitives ๐Ÿ›ซLaurenz
2020-10-04Small improvements ๐ŸชLaurenz
2020-10-04Better argument parsing ๐Ÿฅ™Laurenz
2020-10-04Shorten some names โ†”Laurenz
2020-10-03Small documentation fixes ๐ŸงพLaurenz
2020-10-03Evaluate expressions ๐ŸงฎLaurenz
2020-10-03Int, Float, Relative and Linear values ๐Ÿ‰Laurenz
2020-10-03Rename bold/italic to strong/emph โœLaurenz
2020-10-02Small improvements ๐ŸงบLaurenz
2020-10-02Remove spans from token iterator ๐ŸงฝLaurenz
2020-10-02Optimize parser by remembering peeked token โšกLaurenz
2020-10-02Refactor parser ๐ŸžLaurenz
2020-10-01Rename compute to eval โœLaurenz
2020-10-01Flatten compute moduleLaurenz
2020-10-01Reorganize ast types ๐Ÿ•Laurenz
2020-10-01Rename table to dict โœLaurenz
2020-10-01Make syntax not depend on parse ๐Ÿ“ฉLaurenz
This would make it possible to split them into two separate crates.
2020-10-01Rename CharParser to Scanner โœLaurenz
2020-10-01Simplify tokenizer a bit ๐Ÿ”„Laurenz
2020-10-01Implement low-level char parser ๐ŸฅœLaurenz
2020-09-30Restructure parser files ๐Ÿ”Laurenz
2020-09-30Flatten unescape_string a bit ๐ŸฅžLaurenz
2020-09-30Refactor raw blocks ๐Ÿ’ฑLaurenz
2020-09-30Replace line/column with byte positions ๐Ÿ”ขLaurenz
2020-09-30SpanWith trait โ†”Laurenz
2020-09-30Reorganize syntax types into two modules ๐Ÿ“ฆLaurenz