feat(node): type tag the language

Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
This commit is contained in:
Segev Finer 2024-03-03 03:59:20 +02:00 committed by GitHub
parent 924c2b4425
commit 1dd35fe0e0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -4,9 +4,16 @@ typedef struct TSLanguage TSLanguage;
extern "C" TSLanguage *tree_sitter_PARSER_NAME();
// "tree-sitter", "language" hashed with BLAKE2
const napi_type_tag LANGUAGE_TYPE_TAG = {
0x8AF2E5212AD58ABF, 0xD5006CAD83ABBA16
};
Napi::Object Init(Napi::Env env, Napi::Object exports) {
exports["name"] = Napi::String::New(env, "PARSER_NAME");
exports["language"] = Napi::External<TSLanguage>::New(env, tree_sitter_PARSER_NAME());
auto language = Napi::External<TSLanguage>::New(env, tree_sitter_PARSER_NAME());
language.TypeTag(&LANGUAGE_TYPE_TAG);
exports["language"] = language;
return exports;
}