private void Visit(IParameterDefinition parameterDefinition, ParameterBuilder parameterBuilder) {
if (parameterDefinition.HasDefaultValue) {
parameterDefinition.DefaultValue.Dispatch(this);
parameterBuilder.SetConstant(this.value);
}
foreach (var customAttribute in parameterDefinition.Attributes) {
var customAttributeBuilder = this.GetCustomAttributeBuilder(customAttribute);
parameterBuilder.SetCustomAttribute(customAttributeBuilder);
}
if (parameterDefinition.IsMarshalledExplicitly)
parameterBuilder.SetCustomAttribute(GetMarshalAsAttribute(parameterDefinition.MarshallingInformation));
}