function(regexp, fn, options) {
			if (_.isString(regexp))
				regexp = new RegExp(regexp);
			
			generators.add(function(node, syntax) {
				var m;
				if ((m = regexp.exec(node.name()))) {
					return fn(m, node, syntax);
				}
				
				return null;
			}, options);
		}
function(regexp, fn, options) {
			if (_.isString(regexp))
				regexp = new RegExp(regexp);
			
			generators.add(function(node, syntax) {
				var m;
				if ((m = regexp.exec(node.name()))) {
					return fn(m, node, syntax);
				}
				
				return null;
			}, options);
		}
function ( regexp , fn , options ) { if ( _ . isString ( regexp ) ) regexp = new RegExp ( regexp ) ; generators . add ( function ( node , syntax ) { var m ; if ( ( m = regexp . exec ( node . name ( ) ) ) ) { return fn ( m , node , syntax ) ; } return null ; } , options ) ; }
Add generator. A generator function <code>fn</code> will be called
only if current abbreviation matches <code>regexp</code> regular
expression and this function should return <code>null</code> if
abbreviation cannot be resolved
@param {RegExp} regexp Regular expression for abbreviation element name
@param {Function} fn Resolver function
@param {Object} options Options list as described in
{@link HandlerList#add()} method
Add generator . A generator function <code > fn< / code > will be called only if current abbreviation matches <code > regexp< / code > regular expression and this function should return <code > null< / code > if abbreviation cannot be resolved