Alastair Robertson
30cd23fa53
TypeGraph: Introduce TypeGraphParser to simplify unit testing
...
TypeGraphParser parses a textual type graph, as emitted by Printer.
It also doubles as a way of ensuring that Printer displays all
information about a type graph, to aid with debugging.
Convert Flattener unit tests over to this new framework as a first step.
2023-07-13 17:38:49 +01:00
Jake Hillion
bd948152b7
add exporters::TypeCheckingWalker
2023-07-13 16:05:24 +01:00
Jake Hillion
032c28c0ea
type checking: add description of data segment type
2023-07-13 16:05:24 +01:00
Alastair Robertson
e7549db949
TypeGraph: Introduce NodeTracker for efficient cycle detection
...
Added to Flattener and TypeIdentifier passes for now as a
proof-of-concept. Other passes can come later.
2023-07-12 14:39:56 +01:00
Alastair Robertson
f676112bbc
AddChildren: Filter out false children
...
Use fully qualified names to determine if a class is really the child of
our type. It may be that it is the child of another type with an
identical name in another namespace.
2023-07-11 13:52:39 +01:00
Alastair Robertson
02b764157d
Tests: Add a CodeGen test
2023-06-23 14:23:53 +01:00
Alastair Robertson
62575a7c3e
TypeGraph: Respect [[codegen.ignore]] config value
2023-06-05 13:38:54 +01:00
Alastair Robertson
e1bc5c7b5e
Tests: Split common code out into type_graph_utils
2023-05-31 15:49:37 +01:00
Alastair Robertson
bd919ae4e4
TypeGraph: Add core code
...
This code mostly works, but is obviously not complete. This commit just
adds the code and tests, but does not enable it in OID or OIL.
2023-05-30 13:27:23 +01:00
Alastair Robertson
a73cab758f
ContainerInfo: Move matcher regex construction to class ctor and add unit tests
2023-05-26 18:21:59 +01:00
Alastair Robertson
60e87735c8
Disable PCH
2023-05-23 10:36:42 +01:00
Jake Hillion
675211aff5
tests: build integration.py targets with cmake
2023-03-27 16:15:37 +01:00
Jon Haslam
db90326c4b
Initial commit
2022-12-19 06:37:51 -08:00