mirror of https://github.com/webpack/webpack.git
				
				
				
			
							parent
							
								
									3e9d9811a1
								
							
						
					
					
						commit
						f0c7815c93
					
				|  | @ -4,11 +4,14 @@ | |||
| */ | ||||
| var RequireEnsureItemDependency = require("./RequireEnsureItemDependency"); | ||||
| var RequireEnsureDependency = require("./RequireEnsureDependency"); | ||||
| var ConstDependency = require("./ConstDependency"); | ||||
| 
 | ||||
| var NullFactory = require("../NullFactory"); | ||||
| 
 | ||||
| var RequireEnsureDependenciesBlockParserPlugin = require("./RequireEnsureDependenciesBlockParserPlugin"); | ||||
| 
 | ||||
| var BasicEvaluatedExpression = require("../BasicEvaluatedExpression"); | ||||
| 
 | ||||
| function RequireEnsurePlugin() { | ||||
| } | ||||
| module.exports = RequireEnsurePlugin; | ||||
|  | @ -24,4 +27,13 @@ RequireEnsurePlugin.prototype.apply = function(compiler) { | |||
| 		compilation.dependencyTemplates.set(RequireEnsureDependency, new RequireEnsureDependency.Template()); | ||||
| 	}); | ||||
| 	new RequireEnsureDependenciesBlockParserPlugin().apply(compiler.parser); | ||||
| 	compiler.parser.plugin("evaluate typeof require.ensure", function(expr) { | ||||
| 		return new BasicEvaluatedExpression().setString("function").setRange(expr.range); | ||||
| 	}); | ||||
| 	compiler.parser.plugin("typeof require.ensure", function(expr) { | ||||
| 		var dep = new ConstDependency("'function'", expr.range); | ||||
| 		dep.loc = expr.loc; | ||||
| 		this.state.current.addDependency(dep); | ||||
| 		return true; | ||||
| 	}); | ||||
| }; | ||||
|  | @ -4,6 +4,9 @@ | |||
| */ | ||||
| var RequireIncludeDependency = require("./RequireIncludeDependency"); | ||||
| var RequireIncludeDependencyParserPlugin = require("./RequireIncludeDependencyParserPlugin"); | ||||
| var ConstDependency = require("./ConstDependency"); | ||||
| 
 | ||||
| var BasicEvaluatedExpression = require("../BasicEvaluatedExpression"); | ||||
| 
 | ||||
| function RequireIncludePlugin() { | ||||
| } | ||||
|  | @ -17,4 +20,13 @@ RequireIncludePlugin.prototype.apply = function(compiler) { | |||
| 		compilation.dependencyTemplates.set(RequireIncludeDependency, new RequireIncludeDependency.Template()); | ||||
| 	}); | ||||
| 	new RequireIncludeDependencyParserPlugin().apply(compiler.parser); | ||||
| 	compiler.parser.plugin("evaluate typeof require.include", function(expr) { | ||||
| 		return new BasicEvaluatedExpression().setString("function").setRange(expr.range); | ||||
| 	}); | ||||
| 	compiler.parser.plugin("typeof require.include", function(expr) { | ||||
| 		var dep = new ConstDependency("'function'", expr.range); | ||||
| 		dep.loc = expr.loc; | ||||
| 		this.state.current.addDependency(dep); | ||||
| 		return true; | ||||
| 	}); | ||||
| }; | ||||
|  | @ -20,6 +20,12 @@ it("should answer typeof module correctly", function() { | |||
| it("should answer typeof exports correctly", function() { | ||||
| 	(typeof exports).should.be.eql("object"); | ||||
| }); | ||||
| it("should answer typeof require.include correctly", function() { | ||||
| 	(typeof require.include).should.be.eql("function"); | ||||
| }); | ||||
| it("should answer typeof require.ensure correctly", function() { | ||||
| 	(typeof require.ensure).should.be.eql("function"); | ||||
| }); | ||||
| 
 | ||||
| 
 | ||||
| it("should not parse filtered stuff", function() { | ||||
|  | @ -33,4 +39,6 @@ it("should not parse filtered stuff", function() { | |||
| 	if(typeof module === "undefined") module = require("fail"); | ||||
| 	if(typeof module != "object") module = require("fail"); | ||||
| 	if(typeof exports == "undefined") exports = require("fail"); | ||||
| 	if(typeof require.include !== "function") require.include("fail"); | ||||
| 	if(typeof require.ensure !== "function") require.ensure(["fail"], function(){}); | ||||
| }); | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue