libghostty
Toggle main menu visibility
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
71
106
typedef
struct
{
124
void
* (*alloc)(
void
*ctx,
size_t
len, uint8_t alignment, uintptr_t ret_addr);
125
144
bool (*
resize
)(
void
*ctx,
void
*memory,
size_t
memory_len, uint8_t alignment,
size_t
new_len, uintptr_t ret_addr);
145
171
void
* (*remap)(
void
*ctx,
void
*memory,
size_t
memory_len, uint8_t alignment,
size_t
new_len, uintptr_t ret_addr);
172
187
void (*
free
)(
void
*ctx,
void
*memory,
size_t
memory_len, uint8_t alignment, uintptr_t ret_addr);
188
}
GhosttyAllocatorVtable
;
189
209
typedef
struct
GhosttyAllocator
{
215
void
*
ctx
;
216
221
const
GhosttyAllocatorVtable
*
vtable
;
222
}
GhosttyAllocator
;
223
238
GHOSTTY_API uint8_t*
ghostty_alloc
(
const
GhosttyAllocator
* allocator,
size_t
len);
239
263
GHOSTTY_API
void
ghostty_free
(
const
GhosttyAllocator
* allocator, uint8_t* ptr,
size_t
len);
264
266
267
#endif
/* GHOSTTY_VT_ALLOCATOR_H */
ghostty_alloc
GHOSTTY_API uint8_t * ghostty_alloc(const GhosttyAllocator *allocator, size_t len)
ghostty_free
GHOSTTY_API void ghostty_free(const GhosttyAllocator *allocator, uint8_t *ptr, size_t len)
GhosttyAllocatorVtable
Definition
allocator.h:106
GhosttyAllocatorVtable::free
void(*) free(void *ctx, void *memory, size_t memory_len, uint8_t alignment, uintptr_t ret_addr)
Definition
allocator.h:187
GhosttyAllocatorVtable::resize
bool(*) resize(void *ctx, void *memory, size_t memory_len, uint8_t alignment, size_t new_len, uintptr_t ret_addr)
Definition
allocator.h:144
GhosttyAllocator
Definition
allocator.h:209
GhosttyAllocator::ctx
void * ctx
Definition
allocator.h:215
GhosttyAllocator::vtable
const GhosttyAllocatorVtable * vtable
Definition
allocator.h:221
types.h
include
ghostty
vt
allocator.h
Generated by
1.18.0