summary refs log tree commit diff stats
path: root/rod/depends.nim
diff options
context:
space:
mode:
Diffstat (limited to 'rod/depends.nim')
-rwxr-xr-xrod/depends.nim62
1 files changed, 0 insertions, 62 deletions
diff --git a/rod/depends.nim b/rod/depends.nim
deleted file mode 100755
index 4c464f5ec..000000000
--- a/rod/depends.nim
+++ /dev/null
@@ -1,62 +0,0 @@
-#
-#
-#           The Nimrod Compiler
-#        (c) Copyright 2010 Andreas Rumpf
-#
-#    See the file "copying.txt", included in this
-#    distribution, for details about the copyright.
-#
-
-# This module implements a dependency file generator.
-
-import 
-  os, options, ast, astalgo, msgs, ropes, idents, passes, importer
-
-proc genDependPass*(): TPass
-proc generateDot*(project: string)
-
-type 
-  TGen = object of TPassContext
-    module*: PSym
-    filename*: string
-  PGen = ref TGen
-
-var gDotGraph: PRope # the generated DOT file; we need a global variable
-
-proc addDependencyAux(importing, imported: string) = 
-  appf(gDotGraph, "$1 -> $2;$n", [toRope(importing), toRope(imported)]) 
-  # s1 -> s2_4[label="[0-9]"];
-  
-proc addDotDependency(c: PPassContext, n: PNode): PNode = 
-  result = n
-  if n == nil: return 
-  var g = PGen(c)
-  case n.kind
-  of nkImportStmt: 
-    for i in countup(0, sonsLen(n) - 1): 
-      var imported = splitFile(getModuleFile(n.sons[i])).name
-      addDependencyAux(g.module.name.s, imported)
-  of nkFromStmt: 
-    var imported = splitFile(getModuleFile(n.sons[0])).name
-    addDependencyAux(g.module.name.s, imported)
-  of nkStmtList, nkBlockStmt, nkStmtListExpr, nkBlockExpr: 
-    for i in countup(0, sonsLen(n) - 1): discard addDotDependency(c, n.sons[i])
-  else: 
-    nil
-
-proc generateDot(project: string) = 
-  writeRope(ropef("digraph $1 {$n$2}$n", [
-      toRope(changeFileExt(extractFileName(project), "")), gDotGraph]), 
-            changeFileExt(project, "dot"))
-
-proc myOpen(module: PSym, filename: string): PPassContext = 
-  var g: PGen
-  new(g)
-  g.module = module
-  g.filename = filename
-  result = g
-
-proc gendependPass(): TPass = 
-  initPass(result)
-  result.open = myOpen
-  result.process = addDotDependency