22 lines
		
	
	
		
			720 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			720 B
		
	
	
	
		
			Factor
		
	
	
| ! Copyright (C) 2009 Slava Pestov.
 | |
| ! See http://factorcode.org/license.txt for BSD license.
 | |
| USING: alien assocs byte-arrays core-foundation
 | |
| core-foundation.arrays core-foundation.data
 | |
| core-foundation.dictionaries core-foundation.numbers
 | |
| core-foundation.strings destructors hashtables kernel math
 | |
| sequences strings ;
 | |
| IN: core-foundation.utilities
 | |
| 
 | |
| GENERIC: (>cf) ( obj -- cf )
 | |
| 
 | |
| M: number (>cf) <CFNumber> ;
 | |
| M: t (>cf) <CFNumber> ;
 | |
| M: f (>cf) <CFNumber> ;
 | |
| M: string (>cf) <CFString> ;
 | |
| M: byte-array (>cf) <CFData> ;
 | |
| M: hashtable (>cf) [ [ (>cf) &CFRelease ] bi@ ] assoc-map <CFDictionary> ;
 | |
| M: sequence (>cf) [ (>cf) &CFRelease ] map <CFArray> ;
 | |
| M: alien (>cf) CFRetain ;
 | |
| 
 | |
| : >cf ( obj -- cf ) [ (>cf) ] with-destructors ;
 |