about summary refs log tree commit diff stats
path: root/tree-sitter-yts/src/tree_sitter/alloc.h
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-12-14 12:29:47 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-12-14 12:29:47 +0100
commita9a4ba60a37eb351d3ed872f1cfcf53e673be9ef (patch)
tree59ab6fe348e7e42c10c33799b5ff51433dc16842 /tree-sitter-yts/src/tree_sitter/alloc.h
parentfix(yt_dlp/wrappers/info_json): Add missing fields to `Subtitle` (diff)
downloadyt-a9a4ba60a37eb351d3ed872f1cfcf53e673be9ef.tar.gz
yt-a9a4ba60a37eb351d3ed872f1cfcf53e673be9ef.zip
feat(tree-sitter-yts): Update to new tree-sitter version & improve parsing
Diffstat (limited to 'tree-sitter-yts/src/tree_sitter/alloc.h')
-rw-r--r--tree-sitter-yts/src/tree_sitter/alloc.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/tree-sitter-yts/src/tree_sitter/alloc.h b/tree-sitter-yts/src/tree_sitter/alloc.h
new file mode 100644
index 0000000..e5e685d
--- /dev/null
+++ b/tree-sitter-yts/src/tree_sitter/alloc.h
@@ -0,0 +1,66 @@
+/*
+ * yt - A fully featured command line YouTube client
+ *
+ * Copyright (C) 2024 Benedikt Peetz <benedikt.peetz@b-peetz.de>
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ *
+ * This file is part of Yt.
+ *
+ * You should have received a copy of the License along with this program.
+ * If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
+ */
+
+#ifndef TREE_SITTER_ALLOC_H_
+#define TREE_SITTER_ALLOC_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+// Allow clients to override allocation functions
+#ifdef TREE_SITTER_REUSE_ALLOCATOR
+
+extern void *(*ts_current_malloc)(size_t size);
+extern void *(*ts_current_calloc)(size_t count, size_t size);
+extern void *(*ts_current_realloc)(void *ptr, size_t size);
+extern void (*ts_current_free)(void *ptr);
+
+#ifndef ts_malloc
+#define ts_malloc  ts_current_malloc
+#endif
+#ifndef ts_calloc
+#define ts_calloc  ts_current_calloc
+#endif
+#ifndef ts_realloc
+#define ts_realloc ts_current_realloc
+#endif
+#ifndef ts_free
+#define ts_free    ts_current_free
+#endif
+
+#else
+
+#ifndef ts_malloc
+#define ts_malloc  malloc
+#endif
+#ifndef ts_calloc
+#define ts_calloc  calloc
+#endif
+#ifndef ts_realloc
+#define ts_realloc realloc
+#endif
+#ifndef ts_free
+#define ts_free    free
+#endif
+
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // TREE_SITTER_ALLOC_H_