Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/torch/nn.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Leonard <nick@nikopia.org>2015-02-06 21:22:01 +0300
committerNicholas Leonard <nick@nikopia.org>2015-02-06 21:22:01 +0300
commit87ad85bc6ff3e1505ccbd505c6ccb0c0f1b9a112 (patch)
tree77f8e9fc2597d8846cae03191e42411cbffedef5 /Module.lua
parent307532ab58a46c5b560a723418a1ab8ede9167fd (diff)
Module:listModules()
Diffstat (limited to 'Module.lua')
-rw-r--r--Module.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/Module.lua b/Module.lua
index c9b73cc..bc5a7fb 100644
--- a/Module.lua
+++ b/Module.lua
@@ -287,3 +287,27 @@ function Module:findModules(typename, container)
return nodes, containers
end
+-- returns a list of modules
+function Module:listModules()
+ local function tinsert(to, from)
+ if torch.type(from) == 'table' then
+ for i=1,#from do
+ tinsert(to,from[i])
+ end
+ else
+ table.insert(to,from)
+ end
+ end
+ -- include self first
+ local modules = {self}
+ if self.modules then
+ for i=1,#self.modules do
+ local modulas = self.modules[i]:listModules()
+ if modulas then
+ tinsert(modules,modulas)
+ end
+ end
+ end
+ return modules
+end
+