Changeset 74
- Timestamp:
- 08/07/06 11:45:09 (2 years ago)
- Files:
-
- trunk/bcd.gen/bcd/gen/bcdgen.d (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/bcd.gen/bcd/gen/bcdgen.d
r71 r74 60 60 char[] cout; 61 61 private { 62 /** The base of the D namespace */ 63 char[] dNamespaceBase; 62 64 /** The class currently being processed */ 63 65 char[] curClass; … … 126 128 writefln(" the count."); 127 129 writefln(" -N<symbol to ignore>"); 130 writefln(" -b"); 131 writefln(" Do not prepend 'bcd.' to the D namespace."); 128 132 return 1; 129 133 } … … 133 137 134 138 // set the globals 139 dNamespaceBase = "bcd."; 135 140 curFile = args[1]; 136 141 baseDir = getDirName(args[1]); … … 190 195 outputReflections = true; 191 196 197 } else if (args[i] == "-b") { 198 dNamespaceBase = ""; 199 192 200 } else { 193 201 writefln("Argument %s not recognized.", args[i]); … … 202 210 // some buffers 203 211 dhead = genhead; // the D header (extern (C)'s) 204 dhead ~= "module bcd."~ dNamespace ~ "." ~ shortName ~ ";\n";212 dhead ~= "module " ~ dNamespaceBase ~ dNamespace ~ "." ~ shortName ~ ";\n"; 205 213 if (!outputC) dhead ~= "import bcd.bind;\n"; 206 214 dhead ~= forcedImport; … … 606 614 607 615 if (baseName != shortName) 608 dhead ~= "import bcd."~ dNamespace ~ "." ~ safeName(baseName) ~ ";\n";616 dhead ~= "import " ~ dNamespaceBase ~ dNamespace ~ "." ~ safeName(baseName) ~ ";\n"; 609 617 } 610 618 … … 620 628 621 629 if (baseName != shortName) 622 dhead ~= "import bcd."~ reqDependencies[req] ~ "." ~ safeName(baseName) ~ ";\n";630 dhead ~= "import " ~ dNamespaceBase ~ reqDependencies[req] ~ "." ~ safeName(baseName) ~ ";\n"; 623 631 } 624 632 } … … 1394 1402 1395 1403 // make sure it's not already defined (particularly problematic for overrides that aren't overrides in D) 1396 static bool[char[]] handledCtors;1397 char[] fid = curClass ~ "(" ~ Deargs ~ ")";1398 if (fid in handledCtors) return;1399 handledCtors[fid] = true;1400 1401 if (reflection) {1404 if (!reflection) { 1405 static bool[char[]] handledCtors; 1406 char[] fid = curClass ~ "(" ~ Deargs ~ ")"; 1407 if (fid in handledCtors) return; 1408 handledCtors[fid] = true; 1409 } else if (reflection) { 1402 1410 // make sure it's not already reflected 1403 1411 char[] sfid = name ~ "(" ~ Deargs ~ ")";
