24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
# File 'lib/mud/context.rb', line 24
def reload
dirs = dirs(@dir)
removed = @available_modules.dup
dirs.each do |dir|
Dir.glob(File.join(dir, '*.js')) do |mod_path|
name = Mud::Module.parse_name(mod_path)
mod = @available_modules[name]
removed.delete(name)
unless mod and mod.modified == File.mtime(mod_path) and mod.path == mod_path
@available_modules[name] = Mud::InstalledModule.new(mod_path, self)
end
end
end
@available_modules.delete_if { |key, _| removed.key?(key) }
end
|