27 lines
		
	
	
		
			631 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			631 B
		
	
	
	
		
			Factor
		
	
	
! Copyright (C) 2008 Doug Coleman.
 | 
						|
! See http://factorcode.org/license.txt for BSD license.
 | 
						|
USING: accessors hashtables kernel math state-tables vars vectors ;
 | 
						|
IN: regexp.backend
 | 
						|
 | 
						|
TUPLE: regexp
 | 
						|
    raw
 | 
						|
    { stack vector }
 | 
						|
    parse-tree
 | 
						|
    { options hashtable }
 | 
						|
    nfa-table
 | 
						|
    dfa-table
 | 
						|
    minimized-table
 | 
						|
    { nfa-traversal-flags hashtable }
 | 
						|
    { dfa-traversal-flags hashtable }
 | 
						|
    { 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
 |