2005-05-05 03:12:37 -04:00
|
|
|
! Copyright (C) 2004, 2005 Mackenzie Straight.
|
2006-01-28 15:49:31 -05:00
|
|
|
! See http://factorcode.org/license.txt for BSD license.
|
2006-03-08 16:06:13 -05:00
|
|
|
IN: libc
|
2006-01-28 15:49:31 -05:00
|
|
|
USING: alien errors kernel math ;
|
2005-05-05 03:12:37 -04:00
|
|
|
|
2005-06-12 03:38:57 -04:00
|
|
|
LIBRARY: libc
|
2006-03-08 16:06:13 -05:00
|
|
|
FUNCTION: void* malloc ( ulong size ) ;
|
|
|
|
FUNCTION: void* calloc ( ulong count, ulong size ) ;
|
|
|
|
FUNCTION: void free ( void* ptr ) ;
|
|
|
|
FUNCTION: void* realloc ( void* ptr, ulong size ) ;
|
|
|
|
FUNCTION: void memcpy ( void* dst, void* src, ulong size ) ;
|
2005-05-05 03:12:37 -04:00
|
|
|
|
2006-03-08 16:06:13 -05:00
|
|
|
: check-ptr [ "Out of memory" throw ] unless* ;
|
2006-07-04 17:24:15 -04:00
|
|
|
|
|
|
|
: with-malloc ( size quot -- | quot: alien -- )
|
|
|
|
swap 1 calloc dup check-ptr
|
|
|
|
[ swap call ] keep free ; inline
|