src: reorganize ContextifyFunction methods · nodejs/node@63f643e
@@ -365,13 +365,11 @@ void ContextifyContext::CreatePerIsolateProperties(
365365 IsolateData* isolate_data, Local<ObjectTemplate> target) {
366366 Isolate* isolate = isolate_data->isolate();
367367SetMethod(isolate, target, "makeContext", MakeContext);
368-SetMethod(isolate, target, "compileFunction", CompileFunction);
369368}
370369371370void ContextifyContext::RegisterExternalReferences(
372371 ExternalReferenceRegistry* registry) {
373372 registry->Register(MakeContext);
374- registry->Register(CompileFunction);
375373 registry->Register(PropertyQueryCallback);
376374 registry->Register(PropertyGetterCallback);
377375 registry->Register(PropertySetterCallback);
@@ -1163,22 +1161,6 @@ Maybe<void> StoreCodeCacheResult(
11631161return JustVoid();
11641162}
116511631166-// TODO(RaisinTen): Reuse in ContextifyContext::CompileFunction().
1167-MaybeLocal<Function> CompileFunction(Local<Context> context,
1168- Local<String> filename,
1169- Local<String> content,
1170- LocalVector<String>* parameters) {
1171- ScriptOrigin script_origin(filename, 0, 0, true);
1172- ScriptCompiler::Source script_source(content, script_origin);
1173-1174-return ScriptCompiler::CompileFunction(context,
1175-&script_source,
1176- parameters->size(),
1177- parameters->data(),
1178-0,
1179-nullptr);
1180-}
1181-11821164bool ContextifyScript::InstanceOf(Environment* env,
11831165const Local<Value>& value) {
11841166return !value.IsEmpty() &&
@@ -1392,7 +1374,19 @@ ContextifyScript::ContextifyScript(Environment* env, Local<Object> object) {
1392137413931375ContextifyScript::~ContextifyScript() {}
139413761395-void ContextifyContext::CompileFunction(
1377+void ContextifyFunction::RegisterExternalReferences(
1378+ ExternalReferenceRegistry* registry) {
1379+ registry->Register(CompileFunction);
1380+}
1381+1382+void ContextifyFunction::CreatePerIsolateProperties(
1383+ IsolateData* isolate_data, Local<ObjectTemplate> target) {
1384+ Isolate* isolate = isolate_data->isolate();
1385+1386+SetMethod(isolate, target, "compileFunction", CompileFunction);
1387+}
1388+1389+void ContextifyFunction::CompileFunction(
13961390const FunctionCallbackInfo<Value>& args) {
13971391 Environment* env = Environment::GetCurrent(args);
13981392 Isolate* isolate = env->isolate();
@@ -1542,7 +1536,7 @@ static LocalVector<String> GetCJSParameters(IsolateData* data) {
15421536return result;
15431537}
154415381545-MaybeLocal<Object> ContextifyContext::CompileFunctionAndCacheResult(
1539+MaybeLocal<Object> ContextifyFunction::CompileFunctionAndCacheResult(
15461540 Environment* env,
15471541 Local<Context> parsing_context,
15481542 ScriptCompiler::Source* source,
@@ -1973,6 +1967,7 @@ void CreatePerIsolateProperties(IsolateData* isolate_data,
1973196719741968ContextifyContext::CreatePerIsolateProperties(isolate_data, target);
19751969ContextifyScript::CreatePerIsolateProperties(isolate_data, target);
1970+ContextifyFunction::CreatePerIsolateProperties(isolate_data, target);
1976197119771972SetMethod(isolate, target, "startSigintWatchdog", StartSigintWatchdog);
19781973SetMethod(isolate, target, "stopSigintWatchdog", StopSigintWatchdog);
@@ -2025,6 +2020,7 @@ static void CreatePerContextProperties(Local<Object> target,
20252020void RegisterExternalReferences(ExternalReferenceRegistry* registry) {
20262021ContextifyContext::RegisterExternalReferences(registry);
20272022ContextifyScript::RegisterExternalReferences(registry);
2023+ContextifyFunction::RegisterExternalReferences(registry);
2028202420292025 registry->Register(CompileFunctionForCJSLoader);
20302026 registry->Register(StartSigintWatchdog);