public TypeMetadata AddMemberAttributes(MemberKey key, IEnumerable <Attribute> attributes) { IImmutableList <Attribute> list; if (!MemberAttributes.TryGetValue(key, out list)) { list = ImmutableList.CreateRange <Attribute>(attributes); } else { list = list.AddRange(attributes); } return(new TypeMetadata(TypeAttributes, MemberAttributes.SetItem(key, list), MethodAttributes)); }