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
{
118
void
* (*alloc)(
void
*ctx,
size_t
len, uint8_t alignment, uintptr_t ret_addr);
119
138
bool (*
resize
)(
void
*ctx,
void
*memory,
size_t
memory_len, uint8_t alignment,
size_t
new_len, uintptr_t ret_addr);
139
165
void
* (*remap)(
void
*ctx,
void
*memory,
size_t
memory_len, uint8_t alignment,
size_t
new_len, uintptr_t ret_addr);
166
181
void (*
free
)(
void
*ctx,
void
*memory,
size_t
memory_len, uint8_t alignment, uintptr_t ret_addr);
182
}
GhosttyAllocatorVtable
;
183
203
typedef
struct
GhosttyAllocator
{
209
void
*
ctx
;
210
215
const
GhosttyAllocatorVtable
*
vtable
;
216
}
GhosttyAllocator
;
217
231
GHOSTTY_API uint8_t*
ghostty_alloc
(
const
GhosttyAllocator
* allocator,
size_t
len);
232
256
GHOSTTY_API
void
ghostty_free
(
const
GhosttyAllocator
* allocator, uint8_t* ptr,
size_t
len);
257
259
260
#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:181
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:138
GhosttyAllocator
Definition
allocator.h:203
GhosttyAllocator::ctx
void * ctx
Definition
allocator.h:209
GhosttyAllocator::vtable
const GhosttyAllocatorVtable * vtable
Definition
allocator.h:215
types.h
include
ghostty
vt
allocator.h
Generated by
1.18.0