Template: Don't assume mapping is enumerable

this allows template expansions with lambdas or anything else
that responds to `[]`