add AST_Infinity node

This commit is contained in:
Mihai Bazon
2012-10-09 18:35:53 +03:00
parent 88beddfa91
commit a84d07e312
3 changed files with 10 additions and 2 deletions

View File

@@ -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);

View File

@@ -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;

View File

@@ -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");