> Or is there an alternate method to accessing dictionary  when the key
> is not found
> , instead of showing error directly?

You can use get() -- see :help get()

I have once created a simple prototype-like library that provides for
defining a method that returns default values: 
http://github.com/tomtom/prototype_vim

Example (fib with memoization):

let x = prototype#New()
let ncalls = 0
function! x.__Default(n) dict
    let g:ncalls += 1
    if a:n <= 1
        let self[a:n] = a:n
    else
        let self[a:n] = self.__Get(a:n - 2) + self.__Get(a:n - 1)
    endif
endfunction
Should be equal map(range(0, 10), 'x.__Get(v:val)'),
            \ [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
Should be equal x.__Get(10), 55
Should be equal ncalls, 11

If that was, what you were asking for.

-- 
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Reply via email to