Commit Graph

7 Commits

Author SHA1 Message Date
Dave Shanley
61a1317ffd Building out extraction and location code.
adding tests to extactraction functions.

Signed-off-by: Dave Shanley <dave@quobix.com>
2022-08-27 13:21:20 -04:00
Dave Shanley
51e1f62b04 Test coverage for v3 model is now at 100%
This should be very easy to duplicate to 2.0 and 3.1, now extraction code needs testing.

Signed-off-by: Dave Shanley <dave@quobix.com>
2022-08-27 12:48:58 -04:00
Dave Shanley
c34c4f668c Massive refactor on how the library handles schemas.
Schemas are now rendered on demand. There is no reasonable way to navigate the mayhem that is circular dependencies through multiple inheritance and polymorphism. So now using a msuch simpler design (and MUCH faster), there is a `SchemaProxy` for every schema reference. This holds a reference to the low model and index, that renders the schema on demand. Once rendered, it's done. Any children can also be rendered on demand, and so down the rabbit hole you do (if you want).

All circular dependencies are know by the index, so you can decide when you want to stop, or just keep going for ever, however it's now a choice, not something decided for you.

Signed-off-by: Dave Shanley <dave@quobix.com>
2022-08-27 09:47:37 -04:00
Dave Shanley
6e0d25776a Bumping test coverage
There are issues with circular references at scale, there may need to be a change after this commit.
2022-08-26 09:49:48 -04:00
Dave Shanley
1a71f449ff Huge performance increase with building.
Using some designs unearthed from building the higher level model, I have brough that design down to the lower level to speed things up. It only took 8 years, but finally, I think I have mastered mult-threading. No more deadlocks, and no more need for waitgroups for everything.
2022-08-22 09:46:44 -04:00
Dave Shanley
0bd119f152 building out high model.
works just great, so happy the design came together!
2022-08-18 18:38:41 -04:00
Dave Shanley
0fd825aef8 High level model build is currently fast as lightning.
little refactoring to keep things all clean and in place.
2022-08-18 10:39:47 -04:00