private Func<DynamicOperations, CallSiteBinder, object, object[], object> GetInvoker(int paramCount) {
Func<DynamicOperations, CallSiteBinder, object, object[], object> invoker;
lock (_invokers) {
if (!_invokers.TryGetValue(paramCount, out invoker)) {
_invokers[paramCount] = invoker = GetPregeneratedInvoker(paramCount) ?? EmitInvoker(paramCount);
}
}
return invoker;
}