protected IshtarTestBase() { if (VM.watcher is DefaultWatchDog) { VM.watcher = new TestWatchDog(); } AppVault.CurrentVault ??= new AppVault("<test-app>"); lock (guarder) { if (!isInited) { VeinCore.Init(); IshtarGC.INIT(); FFI.INIT(); _corlib = LoadCorLib(); IshtarCore.INIT_ADDITIONAL_MAPPING(); foreach (var @class in VeinCore.All.OfType <RuntimeIshtarClass>()) { @class.init_vtable(); } // ReSharper disable once VirtualMemberCallInConstructor StartUp(); isInited = true; } } }
#pragma warning restore CA2255 // The 'ModuleInitializer' attribute should not be used in libraries public static void Init() => VeinCore.Init();