summaryrefslogtreecommitdiff
path: root/queries
diff options
context:
space:
mode:
authorMitja Felicijan <mitja.felicijan@gmail.com>2026-01-22 01:59:17 +0100
committerMitja Felicijan <mitja.felicijan@gmail.com>2026-01-22 01:59:17 +0100
commit4c3e1ce7822a9acd3444b954d0bdbccade603c38 (patch)
treefdf349078d54a5ff10676fbd7d20edafe868a082 /queries
parentc7239b2906abb48110e3d41a18e94810af8ab915 (diff)
downloadcrep-4c3e1ce7822a9acd3444b954d0bdbccade603c38.tar.gz
Add C++ grammar
Diffstat (limited to 'queries')
-rw-r--r--queries/cpp.h37
-rw-r--r--queries/cpp.scm20
2 files changed, 57 insertions, 0 deletions
diff --git a/queries/cpp.h b/queries/cpp.h
new file mode 100644
index 0000000..28aa5f9
--- /dev/null
+++ b/queries/cpp.h
@@ -0,0 +1,37 @@
+unsigned char query_cpp[] = {
+ 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65,
+ 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x74,
+ 0x79, 0x70, 0x65, 0x3a, 0x20, 0x28, 0x5f, 0x29, 0x20, 0x40, 0x66, 0x74,
+ 0x79, 0x70, 0x65, 0x0a, 0x20, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72,
+ 0x61, 0x74, 0x6f, 0x72, 0x3a, 0x20, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74,
+ 0x6f, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61,
+ 0x72, 0x61, 0x74, 0x6f, 0x72, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x28, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
+ 0x65, 0x72, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x66,
+ 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66,
+ 0x69, 0x65, 0x72, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x20, 0x40,
+ 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61,
+ 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x3a, 0x20, 0x28, 0x70,
+ 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x6c, 0x69, 0x73,
+ 0x74, 0x29, 0x20, 0x40, 0x66, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29,
+ 0x29, 0x0a, 0x0a, 0x28, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x73, 0x70,
+ 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x22, 0x63,
+ 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x40, 0x66, 0x74, 0x79, 0x70, 0x65,
+ 0x0a, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x28, 0x74, 0x79,
+ 0x70, 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65,
+ 0x72, 0x29, 0x20, 0x40, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x0a,
+ 0x28, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63,
+ 0x69, 0x66, 0x69, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x22, 0x73, 0x74, 0x72,
+ 0x75, 0x63, 0x74, 0x22, 0x20, 0x40, 0x66, 0x74, 0x79, 0x70, 0x65, 0x0a,
+ 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x28, 0x74, 0x79, 0x70,
+ 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72,
+ 0x29, 0x20, 0x40, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x0a, 0x28,
+ 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x64, 0x65,
+ 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x22,
+ 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x20, 0x40,
+ 0x66, 0x74, 0x79, 0x70, 0x65, 0x0a, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3a, 0x20, 0x28, 0x5f, 0x29, 0x20, 0x40, 0x66, 0x6e, 0x61, 0x6d, 0x65,
+ 0x29, 0x0a
+};
+unsigned int query_cpp_len = 398;
diff --git a/queries/cpp.scm b/queries/cpp.scm
new file mode 100644
index 0000000..d2865be
--- /dev/null
+++ b/queries/cpp.scm
@@ -0,0 +1,20 @@
+(function_definition
+ type: (_) @ftype
+ declarator: (function_declarator
+ declarator: [
+ (identifier)
+ (field_identifier)
+ ] @fname
+ parameters: (parameter_list) @fparams))
+
+(class_specifier
+ "class" @ftype
+ name: (type_identifier) @fname)
+
+(struct_specifier
+ "struct" @ftype
+ name: (type_identifier) @fname)
+
+(namespace_definition
+ "namespace" @ftype
+ name: (_) @fname)