code: function (runtime, name, fn, config) {
              name = indexMapStr(name);
  
              var mods = runtime.Env.mods,
                  mod = mods[name];
  
              if (mod && mod.fn) {
                  S.log(name + ' is defined more than once', 'warn');
                  return;
              }
  
              // 没有 use，静态载入的 add 可能执行
              Utils.createModuleInfo(runtime, name);
  
              mod = mods[name];
  
              // 注意：通过 S.add(name[, fn[, config]]) 注册的代码，无论是页面中的代码，
              // 还是 js 文件里的代码，add 执行时，都意味着该模块已经 LOADED
              S.mix(mod, {
                  name: name,
                  status: LOADED,
                  fn: fn
              });
  
              S.mix(mod, config);
          }
docs: register module with factory
  @param runtime Module container, such as KISSY
  @param {String} name module name
  @param {Function|*} fn module's factory or value
  @param [config] module config, such as dependency