210210
211211# 1 argument function
212212map (f, t:: Tuple{} ) = ()
213- map (f, t:: Tuple{Any,} ) = (f (t[1 ]),)
214- map (f, t:: Tuple{Any, Any} ) = (f (t[1 ]), f (t[2 ]))
215- map (f, t:: Tuple{Any, Any, Any} ) = (f (t[1 ]), f (t[2 ]), f (t[3 ]))
213+ map (f, t:: Tuple{Any,} ) = (@_inline_meta ; ( f (t[1 ]),) )
214+ map (f, t:: Tuple{Any, Any} ) = (@_inline_meta ; ( f (t[1 ]), f (t[2 ]) ))
215+ map (f, t:: Tuple{Any, Any, Any} ) = (@_inline_meta ; ( f (t[1 ]), f (t[2 ]), f (t[3 ]) ))
216216map (f, t:: Tuple ) = (@_inline_meta ; (f (t[1 ]), map (f,tail (t))... ))
217217# stop inlining after some number of arguments to avoid code blowup
218218const Any16{N} = Tuple{Any,Any,Any,Any,Any,Any,Any,Any,
@@ -229,8 +229,8 @@ function map(f, t::Any16)
229229end
230230# 2 argument function
231231map (f, t:: Tuple{} , s:: Tuple{} ) = ()
232- map (f, t:: Tuple{Any,} , s:: Tuple{Any,} ) = (f (t[1 ],s[1 ]),)
233- map (f, t:: Tuple{Any,Any} , s:: Tuple{Any,Any} ) = (f (t[1 ],s[1 ]), f (t[2 ],s[2 ]))
232+ map (f, t:: Tuple{Any,} , s:: Tuple{Any,} ) = (@_inline_meta ; ( f (t[1 ],s[1 ]),) )
233+ map (f, t:: Tuple{Any,Any} , s:: Tuple{Any,Any} ) = (@_inline_meta ; ( f (t[1 ],s[1 ]), f (t[2 ],s[2 ]) ))
234234function map (f, t:: Tuple , s:: Tuple )
235235 @_inline_meta
236236 (f (t[1 ],s[1 ]), map (f, tail (t), tail (s))... )
0 commit comments