libghostty-vt 0.0.0
Loading...
Searching...
No Matches
allocator.h
Go to the documentation of this file.
1
6
7#ifndef GHOSTTY_VT_ALLOCATOR_H
8#define GHOSTTY_VT_ALLOCATOR_H
9
10#include <stdbool.h>
11#include <stddef.h>
12#include <stdint.h>
13#include <ghostty/vt/types.h>
14
35
67typedef struct {
81 void* (*alloc)(void *ctx, size_t len, uint8_t alignment, uintptr_t ret_addr);
82
101 bool (*resize)(void *ctx, void *memory, size_t memory_len, uint8_t alignment, size_t new_len, uintptr_t ret_addr);
102
125 void* (*remap)(void *ctx, void *memory, size_t memory_len, uint8_t alignment, size_t new_len, uintptr_t ret_addr);
126
138 void (*free)(void *ctx, void *memory, size_t memory_len, uint8_t alignment, uintptr_t ret_addr);
139
151 void* reserved[4];
153
164typedef struct GhosttyAllocator {
169 void *ctx;
170
176
191GHOSTTY_API uint8_t* ghostty_alloc(const GhosttyAllocator* allocator, size_t len);
192
213GHOSTTY_API void ghostty_free(const GhosttyAllocator* allocator, uint8_t* ptr, size_t len);
214
216
217#endif /* GHOSTTY_VT_ALLOCATOR_H */
GHOSTTY_API uint8_t * ghostty_alloc(const GhosttyAllocator *allocator, size_t len)
GHOSTTY_API void ghostty_free(const GhosttyAllocator *allocator, uint8_t *ptr, size_t len)
const GhosttyAllocatorVtable * vtable
Definition allocator.h:174
bool(* resize)(void *ctx, void *memory, size_t memory_len, uint8_t alignment, size_t new_len, uintptr_t ret_addr)
Definition allocator.h:101
void(* free)(void *ctx, void *memory, size_t memory_len, uint8_t alignment, uintptr_t ret_addr)
Definition allocator.h:138