summaryrefslogtreecommitdiff
path: root/libs/JSystem/src/JKernel/JKRAssertHeap.cpp
blob: 635922d6d87d6bb72919598ac615d5b31afbd1c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "JSystem/JSystem.h" // IWYU pragma: keep

#include "JSystem/JKernel/JKRAssertHeap.h"

JKRAssertHeap::JKRAssertHeap(void* data, u32 size, JKRHeap* parent, bool errorFlag)
    : JKRHeap(data, size, parent, errorFlag) {}

JKRAssertHeap::~JKRAssertHeap() {
    this->dispose();
}

JKRAssertHeap* JKRAssertHeap::create(JKRHeap* parent) {
    if (!parent) {
        parent = sRootHeap;
    }

    u32 size = ALIGN_NEXT(sizeof(JKRAssertHeap), 16);

    void* ptr = JKRAllocFromHeap(parent, size, 16);
    if (!ptr)
        return NULL;

    JKRAssertHeap* heap = new (ptr) JKRAssertHeap(NULL, 0, parent, false);
    return heap;
}

void JKRAssertHeap::do_destroy() {
    this->~JKRAssertHeap();
}

u32 JKRAssertHeap::getHeapType() {
    return 'ASTH';
}

bool JKRAssertHeap::check() {
    return true;
}

bool JKRAssertHeap::dump() {
    return true;
}

bool JKRAssertHeap::dump_sort() {
    return true;
}