diff options
author | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-05-18 16:35:01 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-05-25 06:19:11 +0000 |
commit | e70330f99e53bd34a518879a0a4c68bc7cb03949 (patch) | |
tree | c6dd095348a79677e87f201649b48c590268a740 /qmake/doc | |
parent | ba38926bbfe433344435f2a2cd08bd7e4b157153 (diff) |
add $$str_member() function
just like $$member(), but operates on a string value rather than a list
variable. it is the swiss army knife of cutting, providing equivalents
of left(), right(), mid() and reverse() all in one.
[ChangeLog][qmake] Added $$str_member() function.
Change-Id: I7c7c6c971db402fff41b428d32a4451f45400728
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Diffstat (limited to 'qmake/doc')
-rw-r--r-- | qmake/doc/src/qmake-manual.qdoc | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/qmake/doc/src/qmake-manual.qdoc b/qmake/doc/src/qmake-manual.qdoc index 70210b7342..5828d515e5 100644 --- a/qmake/doc/src/qmake-manual.qdoc +++ b/qmake/doc/src/qmake-manual.qdoc @@ -2934,6 +2934,7 @@ See also \l{upper(arg1 [, arg2 ..., argn])}{upper()}. + \target member() \section2 member(variablename [, start [, end]]) Returns the slice of the list value of \c variablename with the @@ -2960,6 +2961,9 @@ that an empty list will be returned only when an index is invalid (which is implied by the input variable being empty). + See also \l{str_member()}. + + \target num_add() \section2 num_add(arg1 [, arg2 ..., argn]) Takes an arbitrary number of numeric arguments and adds them up, @@ -3079,6 +3083,38 @@ \snippet code/doc_src_qmake-manual.pro 168 + \target str_member() + \section2 str_member(arg [, start [, end]]) + + This function is identical to \l{member()}, except that it operates + on a string value instead of a list variable, and consequently the + indices refer to character positions. + + This function can be used to implement many common string slicing + operations: + + \code + # $$left(VAR, len) + left = $$str_member(VAR, 0, $$num_add($$len, -1)) + + # $$right(VAR, len) + right = $$str_member(VAR, -$$num, -1) + + # $$mid(VAR, off, len) + mid = $$str_member(VAR, $$off, $$num_add($$off, $$len, -1)) + + # $$mid(VAR, off) + mid = $$str_member(VAR, $$off, -1) + + # $$reverse(VAR) + reverse = $$str_member(VAR, -1, 0) + \endcode + + \note In these implementations, a zero \c len argument needs to be + handled separately. + + See also \l{member()}, \l{num_add()}. + \target str_size() \section2 str_size(arg) |