aboutsummaryrefslogtreecommitdiffstats
path: root/docs/checks/README-qstring-left.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/checks/README-qstring-left.md')
-rw-r--r--docs/checks/README-qstring-left.md9
1 files changed, 9 insertions, 0 deletions
diff --git a/docs/checks/README-qstring-left.md b/docs/checks/README-qstring-left.md
new file mode 100644
index 00000000..b4b53a98
--- /dev/null
+++ b/docs/checks/README-qstring-left.md
@@ -0,0 +1,9 @@
+# qstring-left
+
+Finds places where you're using `QString::left(1)` instead of `QString::at(0)`.
+The later form is cheaper, as it doesn't deep-copy the string.
+
+There's however another difference between the two: `left(1)` will return an empty
+string if the string is empty, while `QString::at(0)` will assert. So be sure
+that the string can't be empty, or add a `if (!str.isEmpty()` guard, which is still
+faster than calling `left()` for the cases which deep-copy.