private void WriteCustomAttribute(ICustomAttribute attr) { IMethodReference meth_ref = attr.Constructor; TypeRef decltype = new TypeRef(meth_ref.DeclaringType); string name = decltype.Name; // 参照付きで名前を指定 writer.WriteReference( name.EndsWith("Attribute")?name.Substring(0, name.Length - 9):name, string.Format("/* 属性 コンストラクタ */\r\n{0}::{1}({2});", decltype.FullName, decltype.Name, LanguageWriter.GetDesc(meth_ref.Parameters) ), meth_ref ); if (attr.Arguments.Count != 0) { writer.Write("("); writer.WriteExpressionCollection(attr.Arguments); writer.Write(")"); } }