| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | ! Copyright (C) 2007 Doug Coleman. | 
					
						
							|  |  |  | ! See http://factorcode.org/license.txt for BSD license. | 
					
						
							| 
									
										
										
										
											2008-03-27 06:13:52 -04:00
										 |  |  | USING: kernel macros sequences slots words mirrors ;
 | 
					
						
							| 
									
										
										
										
											2008-03-29 04:34:48 -04:00
										 |  |  | IN: classes.tuple.lib | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | : reader-slots ( seq -- quot )
 | 
					
						
							|  |  |  |     [ slot-spec-reader ] map [ get-slots ] curry ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | MACRO: >tuple< ( class -- )
 | 
					
						
							| 
									
										
										
										
											2008-04-26 03:01:43 -04:00
										 |  |  |     all-slots rest-slice reader-slots ;
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | MACRO: >tuple*< ( class -- )
 | 
					
						
							| 
									
										
										
										
											2008-03-27 06:13:52 -04:00
										 |  |  |     all-slots | 
					
						
							| 
									
										
										
										
											2008-04-26 00:17:08 -04:00
										 |  |  |     [ slot-spec-name "*" tail? ] filter
 | 
					
						
							| 
									
										
										
										
											2007-09-20 18:09:08 -04:00
										 |  |  |     reader-slots ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 |