whole_func_string: function asyncStartLoadPartwayThrough(stepState) {
        return function(resolve, reject) {
          var loader = stepState.loader;
          var name = stepState.moduleName;
          var step = stepState.step;
  
          if (loader.modules[name]) 
            throw new TypeError('"' + name + '" already exists in the module table');
  
          // NB this still seems wrong for LoadModule as we may load a dependency
          // of another module directly before it has finished loading.
          for (var i = 0, l = loader.loads.length; i < l; i++)
            if (loader.loads[i].name == name)
              throw new TypeError('"' + name + '" already loading');
  
          var load = createLoad(name);
          
          load.metadata = stepState.moduleMetadata;
  
          var linkSet = createLinkSet(loader, load);
  
          loader.loads.push(load);
  
          resolve(linkSet.done);
  
          if (step == 'locate')
            proceedToLocate(loader, load);
  
          else if (step == 'fetch')
            proceedToFetch(loader, load, Promise.resolve(stepState.moduleAddress));
  
          else {
            console.assert(step == 'translate', 'translate step');
            load.address = stepState.moduleAddress;
            proceedToTranslate(loader, load, Promise.resolve(stepState.moduleSource));
          }
        }
      }
func_code_string: function asyncStartLoadPartwayThrough(stepState) {
        return function(resolve, reject) {
          var loader = stepState.loader;
          var name = stepState.moduleName;
          var step = stepState.step;
  
          if (loader.modules[name]) 
            throw new TypeError('"' + name + '" already exists in the module table');
  
          // NB this still seems wrong for LoadModule as we may load a dependency
          // of another module directly before it has finished loading.
          for (var i = 0, l = loader.loads.length; i < l; i++)
            if (loader.loads[i].name == name)
              throw new TypeError('"' + name + '" already loading');
  
          var load = createLoad(name);
          
          load.metadata = stepState.moduleMetadata;
  
          var linkSet = createLinkSet(loader, load);
  
          loader.loads.push(load);
  
          resolve(linkSet.done);
  
          if (step == 'locate')
            proceedToLocate(loader, load);
  
          else if (step == 'fetch')
            proceedToFetch(loader, load, Promise.resolve(stepState.moduleAddress));
  
          else {
            console.assert(step == 'translate', 'translate step');
            load.address = stepState.moduleAddress;
            proceedToTranslate(loader, load, Promise.resolve(stepState.moduleSource));
          }
        }
      }
func_documentation_string: 15.2.4.7 PromiseOfStartLoadPartwayThrough absorbed into calling functions 15.2.4.7.1