All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] userdiff: support Rust macros
@ 2020-10-06 12:13 Konrad Borowski via GitGitGadget
  2020-10-06 16:44 ` Phillip Wood
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Konrad Borowski via GitGitGadget @ 2020-10-06 12:13 UTC (permalink / raw)
  To: git; +Cc: Konrad Borowski, Konrad Borowski

From: Konrad Borowski <konrad@borowski.pw>

This adds a support for macro_rules! keyword which declares
a macro. It also includes a test case.

Signed-off-by: Konrad Borowski <konrad@borowski.pw>
---
    userdiff: support Rust macros

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-865%2Fxfix%2Fuserdiff-macro-rules-rust-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-865/xfix/userdiff-macro-rules-rust-v1
Pull-Request: https://github.com/git/git/pull/865

 t/t4018/rust-macro-rules | 6 ++++++
 userdiff.c               | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)
 create mode 100644 t/t4018/rust-macro-rules

diff --git a/t/t4018/rust-macro-rules b/t/t4018/rust-macro-rules
new file mode 100644
index 0000000000..ec610c5b62
--- /dev/null
+++ b/t/t4018/rust-macro-rules
@@ -0,0 +1,6 @@
+macro_rules! RIGHT {
+    () => {
+        // a comment
+        let x = ChangeMe;
+    };
+}
diff --git a/userdiff.c b/userdiff.c
index fde02f225b..f13a913697 100644
--- a/userdiff.c
+++ b/userdiff.c
@@ -165,7 +165,7 @@ PATTERNS("ruby", "^[ \t]*((class|module|def)[ \t].*)$",
 	 "|[-+0-9.e]+|0[xXbB]?[0-9a-fA-F]+|\\?(\\\\C-)?(\\\\M-)?."
 	 "|//=?|[-+*/<>%&^|=!]=|<<=?|>>=?|===|\\.{1,3}|::|[!=]~"),
 PATTERNS("rust",
-	 "^[\t ]*((pub(\\([^\\)]+\\))?[\t ]+)?((async|const|unsafe|extern([\t ]+\"[^\"]+\"))[\t ]+)?(struct|enum|union|mod|trait|fn|impl)[< \t]+[^;]*)$",
+	 "^[\t ]*(((pub(\\([^\\)]+\\))?[\t ]+)?((async|const|unsafe|extern([\t ]+\"[^\"]+\"))[\t ]+)?(struct|enum|union|mod|trait|fn|impl)[< \t]+|macro_rules[\t ]*!)[^;]*)$",
 	 /* -- */
 	 "[a-zA-Z_][a-zA-Z0-9_]*"
 	 "|[0-9][0-9_a-fA-Fiosuxz]*(\\.([0-9]*[eE][+-]?)?[0-9_fF]*)?"

base-commit: d98273ba77e1ab9ec755576bc86c716a97bf59d7
-- 
gitgitgadget

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-10-07 13:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-06 12:13 [PATCH] userdiff: support Rust macros Konrad Borowski via GitGitGadget
2020-10-06 16:44 ` Phillip Wood
2020-10-06 18:44 ` Johannes Sixt
2020-10-07  5:27 ` [PATCH v2] userdiff: permit Rust's macro_rules! keyword in hunk headers Konrad Borowski via GitGitGadget
2020-10-07  6:10   ` Junio C Hamano
2020-10-07 13:26   ` [PATCH v3] userdiff: recognize 'macro_rules!' as starting a Rust function block Konrad Borowski via GitGitGadget

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.