public IArgumentBinding TryCreate()

in src/Microsoft.Azure.WebJobs.Extensions.Kafka/Output/AsyncCollectorArgumentBindingProvider.cs [15:40]


        public IArgumentBinding<KafkaProducerEntity> TryCreate(ParameterInfo parameter)
        {
            Type parameterType = parameter.ParameterType;

            if (!parameterType.IsGenericType)
            {
                return null;
            }

            Type genericTypeDefinition = parameterType.GetGenericTypeDefinition();

            if (genericTypeDefinition != typeof(IAsyncCollector<>))
            {
                return null;
            }
            
            var genericArguments = parameterType.GetGenericArguments();
            if (genericArguments.Length == 1)
            {
                var valueType = genericArguments[0];
                
                return CreateBinding(valueType);
            }

            throw new Exception($"Could not create IAsyncCollector binding for {parameterType.Name}");
        }