mirror of
				https://github.com/vim/vim.git
				synced 2025-10-29 09:37:35 -04:00 
			
		
		
		
	
		
			
	
	
		
			27 lines
		
	
	
		
			671 B
		
	
	
	
		
			VimL
		
	
	
	
	
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			671 B
		
	
	
	
		
			VimL
		
	
	
	
	
	
|   | vim9script | ||
|  | 
 | ||
|  | # Vim9 tuples | ||
|  | 
 | ||
|  | 
 | ||
|  | # https://github.com/vim/vim/pull/16935#issuecomment-2738310273 | ||
|  | 
 | ||
|  | function LegacyMakeEntry(key, value) abort | ||
|  |     return (a:key, a:value) | ||
|  | endfunction | ||
|  | 
 | ||
|  | def MakeEntry(key: string, value: any): tuple<string, any> | ||
|  |     return (key, value) | ||
|  | enddef | ||
|  | 
 | ||
|  | function LegacyMakeLazyList(e1, e2) abort | ||
|  |     return ({e1_, e2_ -> {-> [e1_, e2_]}}(a:e1, a:e2)) | ||
|  | endfunction | ||
|  | 
 | ||
|  | def MakeLazyList(e1: any, e2: any): func(): list<any> | ||
|  |     return (((e1_: any, e2_: any) => () => [e1_, e2_])(e1, e2)) | ||
|  | enddef | ||
|  | 
 | ||
|  | echo MakeEntry('key', 'value') == list2tuple(MakeLazyList('key', 'value')()) | ||
|  | echo LegacyMakeEntry('key', 'value') == list2tuple(LegacyMakeLazyList('key', 'value')()) | ||
|  | 
 |