static void F(int m) { // 作られるインスタンスは1つだけ var anonymous = new AnonymousClass(); anonymous.m = m; Action <int> a = anonymous.A; Action <int> b = anonymous.B; Action <int> c = anonymous.C; Invoke(a, b, c); }
void NewWay() { var graph = new Graph <IVertice>(); var allItems = ReadDatabase.Instance.FindAll(); var groupedByClass = allItems.GroupBy( x => new { x.ClassName, x.Name }, (key, group) => { var @class = new AnonymousClass(); @class.ClassName = key.ClassName; @class.Name = key.Name; @class.Items = @group.ToList(); return(@class); }); HashSet <ClassRelationship> classRelSet = new HashSet <ClassRelationship>(); Random rnd = new Random(); foreach (var item in groupedByClass) { var verticeName = item.ClassName + ":" + item.Name; var color = Color.FromArgb((byte)rnd.Next(255), (byte)rnd.Next(255), (byte)rnd.Next(255), (byte)rnd.Next(255)); SolidColorBrush solid = new SolidColorBrush(color); var el = new LogItemVetice(graph) { ClassName = item.ClassName, MethodName = item.Name, ItemColor = solid }; graph.AddVertex(el); foreach (var logItem in item.Items) { var classRel = new ClassRelationship(logItem); if (!classRelSet.Contains(classRel)) { } else { } } } this.Graph = graph; this.Graph.Changed += GraphChanged; }
public ulong GetHash() { ulong hashCode = 0uL; unchecked { if (NewArguments != null) { for (int i = NewArguments.Length; i != 0;) { hashCode += 1000000007 * (ulong)i * NewArguments[--i].GetHash(); } } if (AnonymousClass != null) { hashCode += 1000000009 * (ulong)AnonymousClass.GetHashCode(); } for (int i = ClassArguments.Length; i != 0;) { hashCode += 1000000021 * (ulong)i * ClassArguments[--i].GetHash(); } } return(hashCode); }