You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					49 lines
				
				1.3 KiB
			
		
		
			
		
	
	
					49 lines
				
				1.3 KiB
			| 
											3 years ago
										 | "use strict"; | ||
|  | 
 | ||
|  | exports.__esModule = true; | ||
|  | exports.getTypes = getTypes; | ||
|  | exports.isReference = isReference; | ||
|  | exports.replaceWithOrRemove = replaceWithOrRemove; | ||
|  | exports.runtimeProperty = runtimeProperty; | ||
|  | exports.wrapWithTypes = wrapWithTypes; | ||
|  | /** | ||
|  |  * Copyright (c) 2014-present, Facebook, Inc. | ||
|  |  * | ||
|  |  * This source code is licensed under the MIT license found in the | ||
|  |  * LICENSE file in the root directory of this source tree. | ||
|  |  */ | ||
|  | 
 | ||
|  | var currentTypes = null; | ||
|  | function wrapWithTypes(types, fn) { | ||
|  |   return function () { | ||
|  |     var oldTypes = currentTypes; | ||
|  |     currentTypes = types; | ||
|  |     try { | ||
|  |       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { | ||
|  |         args[_key] = arguments[_key]; | ||
|  |       } | ||
|  |       return fn.apply(this, args); | ||
|  |     } finally { | ||
|  |       currentTypes = oldTypes; | ||
|  |     } | ||
|  |   }; | ||
|  | } | ||
|  | function getTypes() { | ||
|  |   return currentTypes; | ||
|  | } | ||
|  | function runtimeProperty(name) { | ||
|  |   var t = getTypes(); | ||
|  |   return t.memberExpression(t.identifier("regeneratorRuntime"), t.identifier(name), false); | ||
|  | } | ||
|  | function isReference(path) { | ||
|  |   return path.isReferenced() || path.parentPath.isAssignmentExpression({ | ||
|  |     left: path.node | ||
|  |   }); | ||
|  | } | ||
|  | function replaceWithOrRemove(path, replacement) { | ||
|  |   if (replacement) { | ||
|  |     path.replaceWith(replacement); | ||
|  |   } else { | ||
|  |     path.remove(); | ||
|  |   } | ||
|  | } |