Commit graph

13 commits

Author SHA1 Message Date
James Westman
3b6dcf072d
typelib: Fix field offsets for attributes
This fixes a bug where the decompiler could not recognize enums by their
C identifiers because it could not correctly read attributes.

Fixes #177.
2024-10-19 10:21:13 -05:00
James Westman
057c767fbb typelib: Fix byte order issue 2023-09-14 10:19:49 -05:00
Jerry James
0c02195510
Handle big endian bitfields correctly 2023-09-13 08:43:54 -06:00
James Westman
94db929f74 Emit deprecation warnings 2023-07-23 18:09:29 -05:00
James Westman
4eaf735732 gir: Fix signatures for properties and signals
Add arguments to signal signatures and fix property signatures
2023-07-16 16:52:51 -05:00
gregorni
3730e2e726 Add isort to CI and run on files 2023-07-09 14:26:37 +00:00
James Westman
4e02c34a5b
Minor performance optimizations 2023-06-13 19:01:33 -05:00
James Westman
9fcb63a013
typelib: Fix crash when handling array types 2023-02-16 20:43:17 -06:00
James Westman
0b7dbaf90d
Add some type hints 2023-01-12 15:49:19 -06:00
James Westman
8fee46ec68
Format using black 2022-12-19 11:52:59 -06:00
James Westman
a8a209550b
typelib: Fix big-endian architectures 2022-10-18 15:04:55 -05:00
James Westman
c0c40b1577
language: Support boxed types and GType
- Add support for type checking boxed types
- Remove support for converting string and number literals
- Add the `typeof()` operator for GType literals
2022-10-06 13:03:33 -05:00
James Westman
06f54c8ff8
Use typelib instead of XML
For normal compilation, use .typelib files rather than .gir XML files.
This is much faster.

Rather than using libgirepository, which would try to actually load the
libraries, we use a custom parser.

The language server will still read XML because it needs to access
documentation, which is not in the typelib, but that's generally fine
because it's a long lived process and only has to do that once.
2022-06-25 00:15:20 -05:00