ICustomAttributeProvider GetTarget (TargetKind kind, string target) { switch (kind) { case TargetKind.Type: return GetType (target); case TargetKind.Method: return GetMethod (target); default: throw new ArgumentException (); } }