whole_func_string: function addFileExtnameAssociatedProcessor(extnames, processorName, existedMap) {
      if (!extnames) {
          return;
      }
  
      if (!Array.isArray(extnames)) {
          extnames = [extnames];
      }
  
      extnames.forEach(k => {
          k = k.toLowerCase();
  
          let processors = existedMap[k];
          if (Array.isArray(processors)) {
              processors.push(processorName);
          }
          else if (processors) {
              existedMap[k] = [processors, processorName];
          }
          else {
              existedMap[k] = processorName;
          }
      });
  }
func_code_string: function addFileExtnameAssociatedProcessor(extnames, processorName, existedMap) {
      if (!extnames) {
          return;
      }
  
      if (!Array.isArray(extnames)) {
          extnames = [extnames];
      }
  
      extnames.forEach(k => {
          k = k.toLowerCase();
  
          let processors = existedMap[k];
          if (Array.isArray(processors)) {
              processors.push(processorName);
          }
          else if (processors) {
              existedMap[k] = [processors, processorName];
          }
          else {
              existedMap[k] = processorName;
          }
      });
  }
func_documentation_string: Add the file extname associated processors.
  
  @inner
  @param {string|Array.<string>} extnames the file extnames
  @param {string} processorName the processor name
  @param {Object} existedMap the existed file extname associated processors map