Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoyee Cheung <joyeec9h3@gmail.com>2021-09-06 21:44:14 +0300
committerMichael Dawson <mdawson@devrus.com>2021-09-16 16:39:15 +0300
commit58b7d47ad2c74f6baa0613392f4fa84acd1ef8f9 (patch)
treee8613262edc82db5093e123f456b6e32b7f495bb /src/node_zlib.cc
parentf182b9b29f6cdf0594498d4bd5b6efe562fc9ea6 (diff)
src: register zlib external references for snapshot
PR-URL: https://github.com/nodejs/node/pull/40050 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Khaidi Chu <i@2333.moe>
Diffstat (limited to 'src/node_zlib.cc')
-rw-r--r--src/node_zlib.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/node_zlib.cc b/src/node_zlib.cc
index b8733229b0b..ec0a8e90f1c 100644
--- a/src/node_zlib.cc
+++ b/src/node_zlib.cc
@@ -25,6 +25,7 @@
#include "async_wrap-inl.h"
#include "env-inl.h"
+#include "node_external_reference.h"
#include "threadpoolwork-inl.h"
#include "util-inl.h"
@@ -1266,6 +1267,16 @@ struct MakeClass {
env->SetConstructorFunction(target, name, z);
}
+
+ static void Make(ExternalReferenceRegistry* registry) {
+ registry->Register(Stream::New);
+ registry->Register(Stream::template Write<true>);
+ registry->Register(Stream::template Write<false>);
+ registry->Register(Stream::Close);
+ registry->Register(Stream::Init);
+ registry->Register(Stream::Params);
+ registry->Register(Stream::Reset);
+ }
};
void Initialize(Local<Object> target,
@@ -1283,6 +1294,12 @@ void Initialize(Local<Object> target,
FIXED_ONE_BYTE_STRING(env->isolate(), ZLIB_VERSION)).Check();
}
+void RegisterExternalReferences(ExternalReferenceRegistry* registry) {
+ MakeClass<ZlibStream>::Make(registry);
+ MakeClass<BrotliEncoderStream>::Make(registry);
+ MakeClass<BrotliDecoderStream>::Make(registry);
+}
+
} // anonymous namespace
void DefineZlibConstants(Local<Object> target) {
@@ -1408,3 +1425,4 @@ void DefineZlibConstants(Local<Object> target) {
} // namespace node
NODE_MODULE_CONTEXT_AWARE_INTERNAL(zlib, node::Initialize)
+NODE_MODULE_EXTERNAL_REFERENCE(zlib, node::RegisterExternalReferences)