let s:User = {}

function! s:User.New(json) abort
    let s:User.html_url = get(a:json, 'html_url' ,'')
    let s:User.name = get(a:json, 'name', '')
    let s:User.blog = get(a:json, 'blog', '')
    let s:User.email = get(a:json, 'email', '')

endfunction

function! s:User.ToString() abort

    echo 'Name : ' . s:User.name ."\n"
                \. 'github url : ' . s:User.html_url . "\n"
                \. 'blog : ' . s:User.blog . "\n"
                \. 'email : ' . s:User.email 
    
endfunction

let g:github#api#obj#User = copy(s:User)