LibJS: Expose JSON.parse as an intrinsic value of the global object

This will allow us to safely call it if we need to parse JSON within
LibJS.
This commit is contained in:
davidot 2022-01-27 14:49:55 +01:00 committed by Linus Groh
commit 202de6ed25
Notes: sideshowbarker 2024-07-17 19:59:12 +09:00
2 changed files with 4 additions and 0 deletions

View file

@ -304,6 +304,7 @@ void GlobalObject::initialize_global_object()
m_array_prototype_values_function = &m_array_prototype->get_without_side_effects(vm.names.values).as_function();
m_date_constructor_now_function = &m_date_constructor->get_without_side_effects(vm.names.now).as_function();
m_eval_function = &get_without_side_effects(vm.names.eval).as_function();
m_json_parse_function = &get_without_side_effects(vm.names.JSON).as_object().get_without_side_effects(vm.names.parse).as_function();
}
GlobalObject::~GlobalObject()
@ -324,6 +325,7 @@ void GlobalObject::visit_edges(Visitor& visitor)
visitor.visit(m_date_constructor_now_function);
visitor.visit(m_eval_function);
visitor.visit(m_throw_type_error_function);
visitor.visit(m_json_parse_function);
#define __JS_ENUMERATE(ClassName, snake_name, PrototypeName, ConstructorName, ArrayType) \
visitor.visit(m_##snake_name##_constructor); \