>>209
特殊化されるかどうかとか関係なくて、
問題はIEnumerable<T>.GetEnumeratorの戻り値が結局IEnumerator<T>であること
IEnumerable<T>を通す以上、GetEnumeratorから列挙子が戻る時点で必ずボックス化される
君の言うように個別にメソッドを用意するしかない