summaryrefslogtreecommitdiff
path: root/coccinelle/strempty.cocci
diff options
context:
space:
mode:
Diffstat (limited to 'coccinelle/strempty.cocci')
-rw-r--r--coccinelle/strempty.cocci48
1 files changed, 30 insertions, 18 deletions
diff --git a/coccinelle/strempty.cocci b/coccinelle/strempty.cocci
index 13ceb338f1..7901da3652 100644
--- a/coccinelle/strempty.cocci
+++ b/coccinelle/strempty.cocci
@@ -1,48 +1,60 @@
@@
+/* Avoid running this transformation on the strempty function itself */
+position p : script:python() { p[0].current_element != "strempty" };
expression s;
@@
-- s ?: ""
+(
+- s@p ?: ""
+ strempty(s)
-@@
-expression s;
-@@
-- s ? s : ""
+|
+- s@p ? s : ""
+ strempty(s)
+)
+
@@
+position p : script:python() { p[0].current_element != "strempty" };
expression s;
@@
-- if (!s)
+- if (!s@p)
- s = "";
+ s = strempty(s);
+
@@
+position p : script:python() { p[0].current_element != "strnull" };
expression s;
@@
-- s ?: "(null)"
+(
+- s@p ?: "(null)"
+ strnull(s)
-@@
-expression s;
-@@
-- s ? s : "(null)"
+|
+- s@p ? s : "(null)"
+ strnull(s)
+)
+
@@
+position p : script:python() { p[0].current_element != "strnull" };
expression s;
@@
-- if (!s)
+- if (!s@p)
- s = "(null)";
+ s = strnull(s);
+
@@
+position p : script:python() { p[0].current_element != "strna" };
expression s;
@@
-- s ?: "n/a"
+(
+- s@p ?: "n/a"
+ strna(s)
-@@
-expression s;
-@@
-- s ? s : "n/a"
+|
+- s@p ? s : "n/a"
+ strna(s)
+)
+
@@
+position p : script:python() { p[0].current_element != "strna" };
expression s;
@@
-- if (!s)
+- if (!s@p)
- s = "n/a";
+ s = strna(s);