James Westman
aafebf0dfb
ci: Use libadwaita from git
2023-05-06 21:38:16 -05:00
Sonny Piers
fc0358ef01
cli: Ignore hidden folders in interactive port
...
Resolves #112 and resolves #57
2023-05-07 03:01:25 +02:00
James Westman
d4c2bb34eb
Remove trailing commas in Translated
2023-05-06 15:30:18 -05:00
James Westman
b08a0c0665
Remove .vscode
2023-05-06 15:30:18 -05:00
James Westman
5b50090b65
Minor code cleanup
2023-05-06 15:30:18 -05:00
James Westman
4d62df0068
docs: Remove the examples page
...
It has been replaced with the new syntax reference, and it was out of
date anyway.
2023-05-06 15:30:18 -05:00
James Westman
a9f6bf8d89
Remove unused imports and code
2023-05-06 15:30:18 -05:00
James Westman
10806bce1e
language: Rename extension classes
...
Rename extension classes to match the syntax reference.
2023-05-06 15:30:18 -05:00
James Westman
9e82a2fb2a
language: Rename expression classes
...
Rename the expression classes to match the documentation.
2023-05-06 15:30:18 -05:00
James Westman
ef39b5d7db
docs: Add syntax specification
...
Formally document the language syntax and provide examples and detailed
descriptions of how things work.
2023-05-06 15:30:18 -05:00
James Westman
3c1941a17e
Simplify Translated
...
Remove the TranslatedWithContext and TranslatedWithoutContext rules and
just use Translated.
2023-04-29 21:57:33 -05:00
James Westman
779e27d7ac
menus: Simplify grammar a bit
...
Again no syntax changes, just refactoring the rules.
2023-04-29 21:52:20 -05:00
James Westman
71f52d350a
Refactor child types
...
Didn't change the actual syntax, but changed the rules around to be less
confusing.
2023-04-29 21:52:20 -05:00
James Westman
9dcd06de51
Make builder template factories use a subscope
2023-04-28 20:49:22 -05:00
James Westman
a2eaaa26fe
Rename property to avoid conflict
...
TranslatedWithContext.context conflicted with AstNode.context
2023-04-28 20:49:22 -05:00
James Westman
ec844b10ca
Add ScopeCtx instead of root.objects_by_id
...
This allows us to introduce new scopes, such as in
GtkBuilderListItemFactory templates.
2023-04-28 20:49:22 -05:00
James Westman
ff5fff7f4b
Fix crash
2023-04-13 17:43:44 -05:00
James Westman
dd3c75d2c7
Update menu syntax
...
Sections and submenus can have IDs. Also, change the code to better
reflect the documented grammar.
2023-04-12 21:44:07 -05:00
James Westman
75055ac967
Move bindings out of the Value syntax
...
They're only valid in properties, so they should just be there. Same
with object values.
2023-04-12 21:44:07 -05:00
James Westman
ac2a7d9282
Add StringValue
...
Makes the grammar more specific in a few places that take only a string
literal or translated string.
2023-04-12 21:44:07 -05:00
James Westman
5bfed72674
Update regression tests
2023-04-12 21:24:18 -05:00
James Westman
02796fd830
Use <> instead of () for casts & typeof
...
This makes it clearer that they aren't functions, and it eliminates
syntactic ambiguity with closure expressions.
2023-04-10 09:39:34 -05:00
James Westman
d6bd282e58
errors: Report version in compiler bug message
2023-04-09 16:51:14 -05:00
James Westman
88f5b4f1c7
Fix template types
2023-04-08 20:10:16 -05:00
James Westman
64879491a1
Fix mypy error
2023-04-07 20:35:14 -05:00
Cameron Dehning
a2fb86bc31
Builder list factory
2023-04-08 01:34:47 +00:00
James Westman
0cf9a8e4fc
Add Adw.MessageDialog responses extension
2023-03-28 12:43:53 -05:00
James Westman
749ee03e86
Fix misleading error message for missing semicolon
...
Fixes #105 .
2023-03-28 10:10:37 -05:00
Cameron Dehning
7e20983b44
Lsp hotfix
2023-03-24 16:27:22 +00:00
James Westman
bc605c5df8
Reduce errors when a namespace is not found
...
When the typelib for a namespace is not found, don't emit "namespace not
imported" errors. Just emit the one error on the import statement.
2023-03-21 11:31:02 -05:00
James Westman
402677f687
performance: Cache some properties
2023-03-20 13:34:17 -05:00
James Westman
3f27e92eb0
Remove unnecessary list() call
2023-03-20 13:27:21 -05:00
Sonny Piers
6f4806bfb3
lsp: Add compile an decompile commands
2023-03-19 22:14:42 +00:00
James Westman
8c3c43a34a
Add --typelib-path command line argument
...
Allows adding directories to search for typelib files.
2023-03-16 18:21:56 -05:00
James Westman
90001bd885
Fix mypy errors & other bugs
2023-03-12 21:49:36 -05:00
James Westman
98ba7d467a
Improve expression type checking
2023-03-12 16:12:16 -05:00
James Westman
b636d9ed71
Fix bugs in number literals
2023-03-12 14:58:35 -05:00
James Westman
fad3b35531
types: Remove g* type names
...
They aren't used in GIR parsing anymore since we use typelibs, and
blueprint files should use the non-prefixed names.
2023-03-11 21:37:26 -06:00
James Westman
0f5f08ade9
Fix flag syntax
...
Unlike commas, no trailing "|" is allowed.
2023-03-11 21:24:52 -06:00
James Westman
8874cf60b3
parse_tree: Remove Pratt parser
...
It isn't actually needed; the way we parse expressions as a prefix
followed by zero or more suffixes is enough.
2023-03-11 21:05:27 -06:00
James Westman
9fcb63a013
typelib: Fix crash when handling array types
2023-02-16 20:43:17 -06:00
James Westman
1df46b5a06
Change the way values work
...
Change the parsing for values to make them more reusable, in particular
for when I implement extensions.
2023-01-12 15:49:19 -06:00
James Westman
6938267952
Add properties to AST types
...
I want to have a cleaner API that relies less on the specifics of the
grammar and parser.
2023-01-12 15:49:19 -06:00
James Westman
0b7dbaf90d
Add some type hints
2023-01-12 15:49:19 -06:00
James Westman
b6ee649458
Simplify error & warning handling
2023-01-12 15:49:19 -06:00
James Westman
122b049ce9
language: Use new extern syntax in signal handlers
2023-01-12 15:49:19 -06:00
James Westman
0b402db4d5
language: Change extern type syntax
...
Use a '$' instead of a '.' to indicate a type provided in application
code.
The reason for the change is to have a consistent "extern" symbol that
isn't widely used elsewhere and isn't ambiguous in expressions.
2023-01-12 15:49:19 -06:00
James Westman
be284de879
parse_tree: Fix Warning node
2023-01-12 15:49:18 -06:00
James Westman
7ef314ff94
Fix diagnostic location reporting
...
Text positions at the beginning of a line were being shown on the
previous line.
2023-01-12 15:49:15 -06:00
Sonny Piers
40f493b378
cli: Print compile errors to stderr
2023-01-05 12:30:26 +01:00