Mercurial > vim
diff runtime/doc/eval.txt @ 9407:619a98a67f67
commit https://github.com/vim/vim/commit/e18dbe865d190e74fb5d43ac8bc6ac22507d0223
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jul 2 21:42:23 2016 +0200
Updated runtime files.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 02 Jul 2016 21:45:06 +0200 |
parents | 32e34e574716 |
children | cbf052ccb120 |
line wrap: on
line diff
--- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.4. Last change: 2016 Jul 01 +*eval.txt* For Vim version 7.4. Last change: 2016 Jul 02 VIM REFERENCE MANUAL by Bram Moolenaar @@ -796,13 +796,16 @@ equal" and "is" can be used. This compa recursively. Ignoring case means case is ignored when comparing item values. *E694* -A |Funcref| can only be compared with a |Funcref| and only "equal" and "not -equal" can be used. Case is never ignored. Whether arguments or a Dictionary -are bound (with a partial) is ignored. This is so that when a function is -made a member of a Dictionary it is still considered to be the same function. -To compare partials to see if they bind the same argument and Dictionary -values use string(): > - echo string(Partial1) == string(Partial2) +A |Funcref| can only be compared with a |Funcref| and only "equal", "not +equal", "is" and "isnot" can be used. Case is never ignored. Whether +arguments or a Dictionary are bound (with a partial) matters. The +Dictionaries must also be equal (or the same, in case of "is") and the +arguments must be equal (or the same). + +To compare Funcrefs to see if they refer to the same function, ignoring bound +Dictionary and arguments, use |get()| to get the function name: > + if get(Part1, 'name') == get(Part2, 'name') + " Part1 and Part2 refer to the same function When using "is" or "isnot" with a |List| or a |Dictionary| this checks if the expressions are referring to the same |List| or |Dictionary| instance. A copy