 ! Copyright (C) 2009 Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
-USING: alien.c-types alien.data alien.syntax kernel math
-core-foundation ;
+USING: alien.c-types alien.data alien.syntax combinators
+core-foundation kernel math ;
+QUALIFIED-WITH: alien.c-types c
 FROM: math => float ;
 IN: core-foundation.numbers
 

M: f <CFNumber>
    drop f kCFNumberIntType 0 int <ref> CFNumberCreate ;



FUNCTION: CFNumberRef CFNumberCreate ( CFAllocatorRef allocator, CFNumberType theType, void* valuePtr ) ;

FUNCTION: CFNumberType CFNumberGetType ( CFNumberRef number ) ;

FUNCTION: Boolean CFNumberGetValue ( CFNumberRef number, CFNumberType theType, void* valuePtr ) ;

GENERIC: <CFNumber> ( number -- alien )

M: integer <CFNumber>
