#include #include #include #include #include #include #include #include #include #include namespace JS { GlobalObject::GlobalObject() { put("console", heap().allocate()); put_native_function("gc", [](Object* this_object, Vector) -> Value { dbg() << "Forced garbage collection requested!"; this_object->heap().collect_garbage(); return js_undefined(); }); put_native_function("isNaN", [](Object*, Vector arguments) -> Value { if (arguments.size() < 1) return js_undefined(); return Value(arguments[0].to_number().is_nan()); }); put("Math", heap().allocate()); put("Object", heap().allocate()); } GlobalObject::~GlobalObject() { } }