James Westman
5f0eef5f2e
Add compilation tests
...
Added a set of test inputs and expected outputs, for regression testing.
2021-10-31 23:36:20 -05:00
James Westman
53ad4ec69d
ast: Separate validation from properties
2021-10-31 22:51:48 -05:00
James Westman
bfd9daf6a9
Reorganize the parser/AST code
...
The code is now organized by syntax: `menu {}` in one file, `style` in
another, etc. This should make it easier to add syntax in the future.
2021-10-31 21:42:41 -05:00
James Westman
dc7c0cabd8
Clean up AST code
2021-10-31 16:44:34 -05:00
James Westman
54237d7976
Preserve child ordering in toplevel
...
The order of elements sometimes matters, so don't sort children by type.
2021-10-30 22:37:06 -05:00
James Westman
c79d8dc396
Better error handling for incomplete syntax
2021-10-30 22:37:05 -05:00
James Westman
c155ba7b15
Add layouts
2021-10-30 22:37:05 -05:00
James Westman
cc3ee76dc2
Add default values to AST constructors
2021-10-30 19:20:19 -05:00
James Westman
408f3ebce5
lsp: Support completions
2021-10-30 17:49:14 -05:00
James Westman
b9068e24ab
Fix type checker errors
2021-10-26 23:13:31 -05:00
James Westman
b387d4114f
Support C class names that ignore GIR
...
By writing `.MyAppComponent` instead of `MyApp.Component`, the compiler
will ignore GIR validation for that class and assume it's
application-defined.
2021-10-26 22:47:54 -05:00
James Westman
55a117a5b7
lsp: Show docs on hover
...
Also:
- Install the script to <prefix>/bin
- Fix a bug in XmlReader that would cause "uninteresting" tags to not be
fully ignored
- Other minor improvements
2021-10-26 10:54:32 -05:00
James Westman
8fc0efb642
lsp: Code cleanup
2021-10-26 10:54:32 -05:00
James Westman
49658c634e
Support property binding flags
2021-10-26 10:54:32 -05:00
James Westman
7cf3c0bfb1
Support menus and object properties
2021-10-26 10:54:32 -05:00
James Westman
bef92f2879
Add support for CSS styles
2021-10-23 00:59:10 -05:00
James Westman
e553e5db29
Add GObject Introspection integration
...
- Parse .gir files
- Validate class, property, and signal names
2021-10-22 21:14:30 -05:00
James Westman
3a4b7c6dc3
Initial commit
2021-10-17 15:26:34 -05:00