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-08-01 04:45:05 -04:00
|
|
|
TUPLE: check-ptr ;
|
|
|
|
: check-ptr [ <check-ptr> throw ] unless* ;
|
2006-07-04 17:24:15 -04:00
|
|
|
|
2006-08-15 16:29:35 -04:00
|
|
|
: with-malloc ( size quot -- )
|
2006-07-04 18:10:42 -04:00
|
|
|
swap 1 calloc check-ptr [ swap call ] keep free ; inline
|