From: Mihai Bazon Date: Tue, 9 Oct 2012 15:35:53 +0000 (+0300) Subject: add AST_Infinity node X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=a84d07e31298fc1f8825b0047629634920667707;p=UglifyJS.git add AST_Infinity node --- diff --git a/lib/ast.js b/lib/ast.js index 7324e696..afbd775f 100644 --- a/lib/ast.js +++ b/lib/ast.js @@ -845,6 +845,11 @@ var AST_Undefined = DEFNODE("Undefined", null, { value: (function(){}()) }, AST_Atom); +var AST_Infinity = DEFNODE("Infinity", null, { + $documentation: "The `Infinity` value", + value: 1/0 +}, AST_Atom); + var AST_Boolean = DEFNODE("Boolean", null, { $documentation: "Base class for booleans", }, AST_Atom); diff --git a/lib/compress.js b/lib/compress.js index 48a67d41..48f87e6a 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -1464,6 +1464,8 @@ merge(Compressor.prototype, { return make_node(AST_Undefined, self); case "NaN": return make_node(AST_NaN, self); + case "Infinity": + return make_node(AST_Infinity, self); } } return self; diff --git a/lib/output.js b/lib/output.js index 571dd106..25b601ef 100644 --- a/lib/output.js +++ b/lib/output.js @@ -963,9 +963,10 @@ function OutputStream(options) { output.print_name(def ? def.mangled_name || def.name : self.name); }); DEFPRINT(AST_Undefined, function(self, output){ - // XXX: should add more options for this output.print("void 0"); - //output.print("[][0]"); + }); + DEFPRINT(AST_Infinity, function(self, output){ + output.print("1/0"); }); DEFPRINT(AST_NaN, function(self, output){ output.print("0/0");