// A dummy reference counting GC for testing. export var collect_count = 0; // @ts-ignore: decorator @global @unsafe function __ref_collect(): void { trace("gc.collect"); collect_count++; } export var register_count = 0; export var register_ref: usize = 0; // @ts-ignore: decorator @global @unsafe function __ref_register(ref: usize): void { trace("gc.register", 1, ref); register_count++; register_ref = ref; } export var retain_count = 0; export var retain_ref: usize = 0; // @ts-ignore: decorator @global @unsafe function __ref_retain(ref: usize): void { trace("gc.retain", 1, ref); retain_count++; retain_ref = ref; } export var release_count = 0; export var release_ref: usize = 0; // @ts-ignore: decorator @global @unsafe function __ref_release(ref: usize): void { trace("gc.release", 1, ref); release_count++; release_ref = ref; }