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));
            }