static void Def(string name, params string[] aliasesList) { Years y = new Years(); y.name = name; copyrights.Add(name, y); aliases.Add(name, name); foreach (string s in aliasesList) { aliases.Add(s, name); } }
static int Main(string[] args) { Def("Free Software Foundation", "Free Software Foundation", "Free Software Foundation", "Free Software Fonudation, Inc."); Def("Sun Microsystems, Inc.", "Sun Microsystems Inc"); Def("Jeroen Frijters"); Def("Thai Open Source Software Center Ltd"); Def("World Wide Web Consortium"); Def("International Business Machines, Inc.", "IBM Corp.", "IBM Corporation", "International Business Machines", "International Business Machines Corporation"); Def("Wily Technology, Inc."); Def("Unicode, Inc."); Def("Colin Plumb"); Def("Taligent, Inc."); Def("Red Hat, Inc."); Def("The Open Group Research Institute"); Def("FundsXpress, INC."); Def("AT&T"); Def("The Apache Software Foundation"); Def("freebxml.org"); Def("The Cryptix Foundation Limited"); Def("Visual Numerics Inc."); Def("INRIA, France Telecom"); Def("Oracle and/or its affiliates", "Oracle Corporation"); Def("i-net software"); Def("Google Inc."); Def("Stephen Colebourne & Michael Nascimento Santos"); Def("Attila Szegedi"); // these are false positives copyrights.Add("dummy", Years.Dummy); aliases.Add("icSigCopyrightTag", "dummy"); aliases.Add("Copyright notice to stick into built-in-profile files.", "dummy"); aliases.Add("AssemblyCopyrightAttribute", "dummy"); aliases.Add("getVersionAndCopyrightInfo()", "dummy"); aliases.Add("Copyright by IBM and others and distributed under the * distributed under MIT/X", "dummy"); aliases.Add("* Copyright Office. *", "dummy"); aliases.Add("* Copyright office. *", "dummy"); aliases.Add("Your Corporation", "dummy"); aliases.Add("but I wrote that code so I co-own the copyright", "dummy"); aliases.Add("identifying information: \"Portions Copyrighted [year] * [name of copyright owner]\"", "dummy"); aliases.Add("* \"Portions Copyright [year] [name of copyright owner]\" *", "dummy"); using (StreamReader rdr = new StreamReader("allsources.gen.lst")) { string file; while ((file = rdr.ReadLine()) != null) { if (file != "AssemblyInfo.java") { ProcessFile(file); } } } Years[] years = new Years[copyrights.Count]; copyrights.Values.CopyTo(years, 0); Array.Sort(years, delegate(Years x, Years y) { return x.name == null ? 0 : x.name.CompareTo(y.name); }); bool first = true; foreach (Years y in years) { if (y != Years.Dummy) { if (!first) { Console.WriteLine("\\r\\n\" +"); } first = false; Console.Write(" \""); if (y.min != y.max) { Console.Write("{0}-{1} {2}", y.min, y.max, y.name); } else { Console.Write("{0} {1}", y.min, y.name); } } } Console.WriteLine("\""); return errorCount; }