cosmopolitan/libc/mem
Justine Tunney 33e8fc8687 Expose public garbage collector API for C language
You can now do epic things like this:

    puts(_gc(xasprintf("%d", 123)));

The _gc() API is shorthand for _defer() which works like Go's keyword:

    const char *s = xasprintf("%d", 123);
    _defer(free, s);
    puts(s);

Be sure to always use -fno-omit-frame-pointer which makes code fast too.

Enjoy! See also #114
2021-03-08 10:59:34 -08:00
..
cxx Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
hook Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
alloca.h Initial import 2020-06-15 07:18:57 -07:00
asprintf.c Make Cosmopolitan ANSI C89 compatible 2021-02-03 17:48:59 -08:00
balloc.c Change license 2020-12-27 17:18:44 -08:00
bfree.c Change license 2020-12-27 17:18:44 -08:00
calloc.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
defer.greg.c Expose public garbage collector API for C language 2021-03-08 10:59:34 -08:00
fmt.h Make Cosmopolitan ANSI C89 compatible 2021-02-03 17:48:59 -08:00
free.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
gc.c Expose public garbage collector API for C language 2021-03-08 10:59:34 -08:00
internal.h Improve documentation 2020-12-27 07:02:35 -08:00
malloc.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
malloc_trim.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
malloc_usable_size.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
mem.h Implement better hypot function 2021-02-21 11:06:18 -08:00
mem.mk Fix link order in cosmopolitan.a 2021-01-16 12:05:41 -08:00
memalign.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
posix_memalign.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
putenv.c Use unsigned leb128 for magnums 2021-02-24 04:00:38 -08:00
pvalloc.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
realloc.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
realloc_in_place.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
reallocarray.c Change license 2020-12-27 17:18:44 -08:00
setenv.c Change license 2020-12-27 17:18:44 -08:00
strdup.c Change license 2020-12-27 17:18:44 -08:00
strndup.c Change license 2020-12-27 17:18:44 -08:00
unhexstr.c Change license 2020-12-27 17:18:44 -08:00
valloc.S Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
vasprintf.c Change license 2020-12-27 17:18:44 -08:00
wcsdup.c Change license 2020-12-27 17:18:44 -08:00