List<String> results = new List<string>();
foreach( var assembly in AppDomain.CurrentDomain.GetAssemblies()) {
  foreach( var type in assembly.GetTypes() ) {
    foreach( var method in type.GetMethods()) {
      if (method.IsStatic &&
          method.ReturnType.GetInterface("IEnumerable`1") != null) {
          string fullName = String.Format( "{0}.{1}",
                                  method.DeclaringType.Name,
                                  method.Name );
          if (results.IndexOf( fullName ) < 0) {
            results.Add( fullName );
          }
      }
    }
  }
}
results.Sort();
