view src/proto/alloc.pro @ 27022:eebbcc83fb75 v8.2.4040

patch 8.2.4040: keeping track of allocated lines is too complicated Commit: https://github.com/vim/vim/commit/9f1a39a5d1cd7989ada2d1cb32f97d84360e050f Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jan 8 15:39:39 2022 +0000 patch 8.2.4040: keeping track of allocated lines is too complicated Problem: Keeping track of allocated lines in user functions is too complicated. Solution: Instead of freeing individual lines keep them all until the end.
author Bram Moolenaar <Bram@vim.org>
date Sat, 08 Jan 2022 16:45:02 +0100
parents bb1097899693
children f24d4826e6bf
line wrap: on
line source

/* alloc.c */
void vim_mem_profile_dump(void);
int alloc_does_fail(size_t size);
void *alloc(size_t size);
void *alloc_id(size_t size, alloc_id_T id);
void *alloc_clear(size_t size);
void *alloc_clear_id(size_t size, alloc_id_T id);
void *lalloc_clear(size_t size, int message);
void *lalloc(size_t size, int message);
void *lalloc_id(size_t size, int message, alloc_id_T id);
void *mem_realloc(void *ptr, size_t size);
void do_outofmem_msg(size_t size);
void free_all_mem(void);
char_u *vim_memsave(char_u *p, size_t len);
void vim_free(void *x);
void ga_clear(garray_T *gap);
void ga_clear_strings(garray_T *gap);
int ga_copy_strings(garray_T *from, garray_T *to);
void ga_init(garray_T *gap);
void ga_init2(garray_T *gap, size_t itemsize, int growsize);
int ga_grow(garray_T *gap, int n);
int ga_grow_inner(garray_T *gap, int n);
char_u *ga_concat_strings(garray_T *gap, char *sep);
int ga_copy_string(garray_T *gap, char_u *p);
int ga_add_string(garray_T *gap, char_u *p);
void ga_concat(garray_T *gap, char_u *s);
void ga_concat_len(garray_T *gap, char_u *s, size_t len);
void ga_append(garray_T *gap, int c);
void append_ga_line(garray_T *gap);
/* vim: set ft=c : */