private void ProcessHookAttribute(BindingSourceMethod bindingSourceMethod, BindingScope[] methodScopes, BindingSourceAttribute hookAttribute) { var scopes = methodScopes.AsEnumerable(); // HACK: Currently on mono to compile we have to pass the optional parameter to TryGetParamsAttributeValue string[] tags = hookAttribute.TryGetParamsAttributeValue<string>(0, null); if (tags != null) scopes = scopes.Concat(tags.Select(t => new BindingScope(t, null, null))); ApplyForScope(scopes.ToArray(), scope => ProcessHookAttribute(bindingSourceMethod, hookAttribute, scope)); }
private void ProcessHookAttribute(BindingSourceMethod bindingSourceMethod, BindingScope[] methodScopes, BindingSourceAttribute hookAttribute) { var scopes = methodScopes.AsEnumerable(); string[] tags = GetTagsDefinedOnBindingAttribute(hookAttribute); if (tags != null) scopes = scopes.Concat(tags.Select(t => new BindingScope(t, null, null))); ApplyForScope(scopes.ToArray(), scope => ProcessHookAttribute(bindingSourceMethod, hookAttribute, scope)); }