Add capture support for unconventional result types
#1301
Merged
capture support for unconventional result types
#1301