diff trunk/src/main.d @ 334:ca8ad7c34d6a

- Added a name table to getShortClassName(). - Changed 't i' to 't > i' in CSS file.
author aziz
date Wed, 22 Aug 2007 09:45:00 +0000
parents 44fc02d1eae6
children 63c6afb915f7
line wrap: on
line diff
--- a/trunk/src/main.d	Wed Aug 22 08:33:00 2007 +0000
+++ b/trunk/src/main.d	Wed Aug 22 09:45:00 2007 +0000
@@ -101,8 +101,15 @@
 
 char[] getShortClassName(Node n)
 {
+  static char[][] name_table;
+  if (name_table is null)
+    name_table = new char[][NodeKind.max+1];
+  char[] name = name_table[n.kind];
+  if (name !is null)
+    return name;
+
   alias std.string.find find;
-  char[] name = n.classinfo.name;
+  name = n.classinfo.name;
   name = name[find(name, ".")+1 .. $]; // Remove package name
   name = name[find(name, ".")+1 .. $]; // Remove module name
   char[] remove;
@@ -124,6 +131,8 @@
   auto idx = find(name, remove);
   if (idx != -1)
     name = name[0 .. idx];
+  // Store the name.
+  name_table[n.kind] = name;
   return name;
 }