Vim script の is 演算子
はじめて見たんですが、Vim script にインスタンスの参照を比較する is 演算子があります。
使い方はこんな感じ。
[ソース]
function! s:main() let l1 = [1, 2, 3] let l2 = l1 " 同じインスタンスを参照しているか if l1 is l2 echo "homu" endif let l1[0] = -1 " 値は関係ない if l1 is l2 echo "mami" endif if l1 isnot [1, 2, 3] echo "saya" endif " dict も同様 let d1 = { "mado" : 14, "list" : l1 } let d2 = d1 if d1 is d2 echo "mado" endif if d1.list is l1 echo "an" endif endfunction call s:main()