Walk a directory/Recursively: Difference between revisions
Content added Content deleted
m (Added the Sidef language) |
|||
Line 1,691: | Line 1,691: | ||
walkDir(".", ".sd7"); |
walkDir(".", ".sd7"); |
||
end func;</lang> |
end func;</lang> |
||
=={{header|Sidef}}== |
|||
<lang ruby>func traverse(callback is Block, dir is Dir) { |
|||
dir.open(\var dir_h) || return; |
|||
dir_h.entries.each { |entry| |
|||
if (entry.is_a(Dir)) { |
|||
traverse(callback, entry); |
|||
}; |
|||
callback(entry); |
|||
} |
|||
} |
|||
var dir = Dir.cwd; |
|||
var pattern = /\.mp3\z/; |
|||
traverse( |
|||
{ |file| |
|||
if (file ~~ pattern) { |
|||
say file; |
|||
} |
|||
} => dir |
|||
);</lang> |
|||
=={{header|Smalltalk}}== |
=={{header|Smalltalk}}== |