| 
									
										
										
										
											2008-08-26 21:24:14 -04:00
										 |  |  | ! Copyright (C) 2008 Doug Coleman. | 
					
						
							|  |  |  | ! See http://factorcode.org/license.txt for BSD license. | 
					
						
							| 
									
										
										
										
											2008-11-24 13:59:29 -05:00
										 |  |  | USING: accessors hashtables kernel math vectors ;
 | 
					
						
							| 
									
										
										
										
											2008-09-18 15:42:16 -04:00
										 |  |  | IN: regexp.backend | 
					
						
							| 
									
										
										
										
											2008-08-26 21:24:14 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | TUPLE: regexp | 
					
						
							|  |  |  |     raw | 
					
						
							|  |  |  |     { options hashtable } | 
					
						
							| 
									
										
										
										
											2008-11-24 23:17:47 -05:00
										 |  |  |     stack | 
					
						
							|  |  |  |     parse-tree | 
					
						
							| 
									
										
										
										
											2008-08-26 21:24:14 -04:00
										 |  |  |     nfa-table | 
					
						
							|  |  |  |     dfa-table | 
					
						
							|  |  |  |     minimized-table | 
					
						
							| 
									
										
										
										
											2008-11-24 23:17:47 -05:00
										 |  |  |     matchers | 
					
						
							| 
									
										
										
										
											2008-08-28 23:08:54 -04:00
										 |  |  |     { nfa-traversal-flags hashtable } | 
					
						
							|  |  |  |     { dfa-traversal-flags hashtable } | 
					
						
							| 
									
										
										
										
											2008-08-26 21:24:14 -04:00
										 |  |  |     { state integer } | 
					
						
							|  |  |  |     { new-states vector } | 
					
						
							|  |  |  |     { visited-states hashtable } ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | : reset-regexp ( regexp -- regexp )
 | 
					
						
							|  |  |  |     0 >>state | 
					
						
							|  |  |  |     V{ } clone >>stack | 
					
						
							|  |  |  |     V{ } clone >>new-states | 
					
						
							|  |  |  |     H{ } clone >>visited-states ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SYMBOL: current-regexp |