fn select_impl_inner<R>(
    ecx: &ExprContext<'_>,
    impls: &[FuncImpl<R>],
    cexprs: Vec<CoercibleScalarExpr>,
    types: &[Option<ScalarType>],
    order_by: Vec<ColumnOrder>
) -> Result<R, PlanError>where
    R: Debug,