Changeset 20939

Show
Ignore:
Timestamp:
10/08/08 02:39:11 (2 months ago)
Author:
drry
Message:
  • Array に対する for each 文を回避しました。
  • ほか。
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/vimperator-plugins/trunk/plugin_loader.js

    r20938 r20939  
    2121function toArray (obj) { 
    2222  return obj instanceof Array ? obj 
    23                               : obj.toString().split(/[,|\s]/); 
     23                              : obj.toString().split(/[,| \t\r\n]+/); 
    2424} 
    2525 
    2626let roots = toArray(globalVariables.plugin_loader_roots); 
    2727let plugins = toArray(globalVariables.plugin_loader_plugins); 
    28 let filter = new RegExp('[\\\\/](' + plugins.join('|') + ')\\.(js|vimp)$'); 
     28let filter = new RegExp('[\\\\/](?:' + 
     29                        plugins.map(function (plugin) plugin.replace(/(?=[\\^$.+*?|(){}\[\]])/g, '\\')) 
     30                               .join('|') + 
     31                        ')\\.(?:js|vimp)$'); 
    2932 
    3033log('plugin_loader: loading'); 
    3134 
    32 for each (let root in roots) { 
     35roots.forEach(function (root) { 
    3336  let files = io.readDirectory(io.getFile(root), true); 
    34   for each (let file in files) { 
    35     if (!filter.test(file.path)) 
    36       continue; 
    37     liberator.io.source(file.path, false); 
    38   } 
    39 } 
     37  files.forEach(function (file) { 
     38    if (filter.test(file.path)) 
     39      liberator.io.source(file.path, false); 
     40  }); 
     41}); 
    4042 
    4143log('plugin_loader: loaded');