view src/testdir/test60.vim @ 9735:8037eb704e93 v7.4.2143

commit https://github.com/vim/vim/commit/bc7ce675b2d1c9fb58c067eff3edd59abc30aba4 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Aug 1 22:49:22 2016 +0200 patch 7.4.2143 Problem: A funccal is garbage collected while it can still be used. Solution: Set copyID in all referenced functions. Do not list lambda functions with ":function".
author Christian Brabandt <cb@256bit.org>
date Mon, 01 Aug 2016 23:00:07 +0200
parents b63792dadc23
children
line wrap: on
line source

" Vim script for exists() function test
" Script-local variables are checked here

" Existing script-local variable
let s:script_var = 1
echo 's:script_var: 1'
if exists('s:script_var')
    echo "OK"
else
    echo "FAILED"
endif

" Non-existing script-local variable
unlet s:script_var
echo 's:script_var: 0'
if !exists('s:script_var')
    echo "OK"
else
    echo "FAILED"
endif

" Existing script-local list
let s:script_list = ["blue", "orange"]
echo 's:script_list: 1'
if exists('s:script_list')
    echo "OK"
else
    echo "FAILED"
endif

" Non-existing script-local list
unlet s:script_list
echo 's:script_list: 0'
if !exists('s:script_list')
    echo "OK"
else
    echo "FAILED"
endif

" Existing script-local dictionary
let s:script_dict = {"xcord":100, "ycord":2}
echo 's:script_dict: 1'
if exists('s:script_dict')
    echo "OK"
else
    echo "FAILED"
endif

" Non-existing script-local dictionary
unlet s:script_dict
echo 's:script_dict: 0'
if !exists('s:script_dict')
    echo "OK"
else
    echo "FAILED"
endif

" Existing script curly-brace variable
let str = "script"
let s:curly_{str}_var = 1
echo 's:curly_' . str . '_var: 1'
if exists('s:curly_{str}_var')
    echo "OK"
else
    echo "FAILED"
endif

" Non-existing script-local curly-brace variable
unlet s:curly_{str}_var
echo 's:curly_' . str . '_var: 0'
if !exists('s:curly_{str}_var')
    echo "OK"
else
    echo "FAILED"
endif

" Existing script-local function
function! s:my_script_func()
endfunction

echo '*s:my_script_func: 1'
if exists('*s:my_script_func')
    echo "OK"
else
    echo "FAILED"
endif

" Non-existing script-local function
delfunction s:my_script_func

echo '*s:my_script_func: 0'
if !exists('*s:my_script_func')
    echo "OK"
else
    echo "FAILED"
endif
unlet str