summaryrefslogtreecommitdiff
path: root/src/prelude.rs
AgeCommit message (Collapse)Author
2021-03-19Scheduled maintenance ๐Ÿ”จLaurenz
- New naming scheme - TextNode instead of NodeText - CallExpr instead of ExprCall - ... - Less glob imports - Removes Value::Args variant - Removes prelude - Renames Layouted to Fragment - Moves font into env - Moves shaping into layout - Moves frame into separate module
2021-02-12Rename any template to func template โœLaurenz
2021-02-11Move span directly into diagnostics ๐ŸššLaurenz
2021-02-11Move all pretty printing into one module and pretty print values ๐Ÿฆ‹Laurenz
2021-02-09Add arguments value ๐Ÿ“Laurenz
2021-02-09Split evaluation and execution ๐Ÿ”ชLaurenz
2021-01-10Braced content -> Bracketed templates โœ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
2020-12-21Restructure value conversions ๐ŸงฑLaurenz
2020-10-10Switch back to custom geometry types, unified with layout primitives ๐ŸžLaurenz
2020-10-07Move deco, pass and feedback into diagnostics module โ†ฉLaurenz
2020-10-07Evaluation and node-based layouting ๐Ÿš€Laurenz
2020-10-04Better argument parsing ๐Ÿฅ™Laurenz
2020-10-04Shorten some names โ†”Laurenz
2020-10-04Remove unncessary wrappers and typedefs ๐Ÿ›‘Laurenz
2020-10-04Style nits ๐ŸŽˆLaurenz
2020-10-04Remove Typesetter in favor of typeset function ๐ŸŽฏLaurenz
2020-10-03Small documentation fixes ๐ŸงพLaurenz
2020-10-01Generalize layouting primitives ๐Ÿ›คLaurenz
2020-10-01Rename compute to eval โœLaurenz
2020-10-01Flatten compute moduleLaurenz
2020-09-30Reorganize syntax types into two modules ๐Ÿ“ฆLaurenz
2020-08-30Format everything with rustfmt! ๐Ÿ’šLaurenz
2020-08-19Remove some obsolete stuff โŒLaurenz
2020-08-16Add Value type and replace dyn-nodes with call-exprs ๐Ÿ—Laurenz
- In addition to syntax trees there are now `Value`s, which syntax trees can be evaluated into (e.g. the tree is `5+5` and the value is `10`) - Parsing is completely pure, function calls are not parsed into nodes, but into simple call expressions, which are resolved later - Functions aren't dynamic nodes anymore, but simply functions which receive their arguments as a table and the layouting context - Functions may return any `Value` - Layouting is powered by functions which return the new `Commands` value, which informs the layouting engine what to do - When a function returns a non-`Commands` value, the layouter simply dumps the value into the document in monospace