case "&&":
return this.left.is_defined(compressor) && this.right.is_defined(compressor);
case "||":
- return this.left.is_defined(compressor) || this.right.is_defined(compressor);
+ return this.left.is_truthy() || this.right.is_defined(compressor);
default:
return true;
}
if (this.is_immutable()) return true;
var fixed = this.fixed_value();
if (!fixed) return false;
- this.is_defined = return_true;
+ this.is_defined = return_false;
var result = fixed.is_defined(compressor);
delete this.is_defined;
return result;