feat: add the semantic version to TSLanguage, and expose an API for retrieving it
This commit is contained in:
parent
f0222107b8
commit
8bb1448a6f
24 changed files with 371 additions and 77 deletions
|
|
@ -110,6 +110,17 @@ static TSInputEdit unmarshal_edit() {
|
|||
return edit;
|
||||
}
|
||||
|
||||
static void marshal_language_metadata(const TSLanguageMetadata *metadata) {
|
||||
if (metadata == NULL) {
|
||||
TRANSFER_BUFFER[0] = 0;
|
||||
return;
|
||||
}
|
||||
TRANSFER_BUFFER[0] = (const void*)3;
|
||||
TRANSFER_BUFFER[1] = (const void*)(uint32_t)metadata->major_version;
|
||||
TRANSFER_BUFFER[2] = (const void*)(uint32_t)metadata->minor_version;
|
||||
TRANSFER_BUFFER[3] = (const void*)(uint32_t)metadata->patch_version;
|
||||
}
|
||||
|
||||
/********************/
|
||||
/* Section - Parser */
|
||||
/********************/
|
||||
|
|
@ -242,6 +253,11 @@ int ts_language_type_is_visible_wasm(const TSLanguage *self, TSSymbol typeId) {
|
|||
return symbolType <= TSSymbolTypeAnonymous;
|
||||
}
|
||||
|
||||
void ts_language_metadata_wasm(const TSLanguage *self) {
|
||||
const TSLanguageMetadata *metadata = ts_language_metadata(self);
|
||||
marshal_language_metadata(metadata);
|
||||
}
|
||||
|
||||
void ts_language_supertypes_wasm(const TSLanguage *self) {
|
||||
uint32_t length;
|
||||
const TSSymbol *supertypes = ts_language_supertypes(self, &length);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue