original_string: public function addShortPluginAliases()
      {
          $plugins = Plugin::loaded();
  
          $io = new ConsoleIo();
          $task = new CommandTask($io);
          $io->setLoggers(false);
          $list = $task->getShellList() + ['app' => []];
          $fixed = array_flip($list['app']) + array_flip($list['CORE']);
          $aliases = $others = [];
  
          foreach ($plugins as $plugin) {
              if (!isset($list[$plugin])) {
                  continue;
              }
  
              foreach ($list[$plugin] as $shell) {
                  $aliases += [$shell => $plugin];
                  if (!isset($others[$shell])) {
                      $others[$shell] = [$plugin];
                  } else {
                      $others[$shell] = array_merge($others[$shell], [$plugin]);
                  }
              }
          }
  
          foreach ($aliases as $shell => $plugin) {
              if (isset($fixed[$shell])) {
                  Log::write(
                      'debug',
                      "command '$shell' in plugin '$plugin' was not aliased, conflicts with another shell",
                      ['shell-dispatcher']
                  );
                  continue;
              }
  
              $other = static::alias($shell);
              if ($other) {
                  $other = $aliases[$shell];
                  if ($other !== $plugin) {
                      Log::write(
                          'debug',
                          "command '$shell' in plugin '$plugin' was not aliased, conflicts with '$other'",
                          ['shell-dispatcher']
                      );
                  }
                  continue;
              }
  
              if (isset($others[$shell])) {
                  $conflicts = array_diff($others[$shell], [$plugin]);
                  if (count($conflicts) > 0) {
                      $conflictList = implode("', '", $conflicts);
                      Log::write(
                          'debug',
                          "command '$shell' in plugin '$plugin' was not aliased, conflicts with '$conflictList'",
                          ['shell-dispatcher']
                      );
                  }
              }
  
              static::alias($shell, "$plugin.$shell");
          }
  
          return static::$_aliases;
      }
code: public function addShortPluginAliases()
      {
          $plugins = Plugin::loaded();
  
          $io = new ConsoleIo();
          $task = new CommandTask($io);
          $io->setLoggers(false);
          $list = $task->getShellList() + ['app' => []];
          $fixed = array_flip($list['app']) + array_flip($list['CORE']);
          $aliases = $others = [];
  
          foreach ($plugins as $plugin) {
              if (!isset($list[$plugin])) {
                  continue;
              }
  
              foreach ($list[$plugin] as $shell) {
                  $aliases += [$shell => $plugin];
                  if (!isset($others[$shell])) {
                      $others[$shell] = [$plugin];
                  } else {
                      $others[$shell] = array_merge($others[$shell], [$plugin]);
                  }
              }
          }
  
          foreach ($aliases as $shell => $plugin) {
              if (isset($fixed[$shell])) {
                  Log::write(
                      'debug',
                      "command '$shell' in plugin '$plugin' was not aliased, conflicts with another shell",
                      ['shell-dispatcher']
                  );
                  continue;
              }
  
              $other = static::alias($shell);
              if ($other) {
                  $other = $aliases[$shell];
                  if ($other !== $plugin) {
                      Log::write(
                          'debug',
                          "command '$shell' in plugin '$plugin' was not aliased, conflicts with '$other'",
                          ['shell-dispatcher']
                      );
                  }
                  continue;
              }
  
              if (isset($others[$shell])) {
                  $conflicts = array_diff($others[$shell], [$plugin]);
                  if (count($conflicts) > 0) {
                      $conflictList = implode("', '", $conflicts);
                      Log::write(
                          'debug',
                          "command '$shell' in plugin '$plugin' was not aliased, conflicts with '$conflictList'",
                          ['shell-dispatcher']
                      );
                  }
              }
  
              static::alias($shell, "$plugin.$shell");
          }
  
          return static::$_aliases;
      }
code_tokens: public function addShortPluginAliases ( ) { $ plugins = Plugin :: loaded ( ) ; $ io = new ConsoleIo ( ) ; $ task = new CommandTask ( $ io ) ; $ io -> setLoggers ( false ) ; $ list = $ task -> getShellList ( ) + [ 'app' => [ ] ] ; $ fixed = array_flip ( $ list [ 'app' ] ) + array_flip ( $ list [ 'CORE' ] ) ; $ aliases = $ others = [ ] ; foreach ( $ plugins as $ plugin ) { if ( ! isset ( $ list [ $ plugin ] ) ) { continue ; } foreach ( $ list [ $ plugin ] as $ shell ) { $ aliases += [ $ shell => $ plugin ] ; if ( ! isset ( $ others [ $ shell ] ) ) { $ others [ $ shell ] = [ $ plugin ] ; } else { $ others [ $ shell ] = array_merge ( $ others [ $ shell ] , [ $ plugin ] ) ; } } } foreach ( $ aliases as $ shell => $ plugin ) { if ( isset ( $ fixed [ $ shell ] ) ) { Log :: write ( 'debug' , "command '$shell' in plugin '$plugin' was not aliased, conflicts with another shell" , [ 'shell-dispatcher' ] ) ; continue ; } $ other = static :: alias ( $ shell ) ; if ( $ other ) { $ other = $ aliases [ $ shell ] ; if ( $ other !== $ plugin ) { Log :: write ( 'debug' , "command '$shell' in plugin '$plugin' was not aliased, conflicts with '$other'" , [ 'shell-dispatcher' ] ) ; } continue ; } if ( isset ( $ others [ $ shell ] ) ) { $ conflicts = array_diff ( $ others [ $ shell ] , [ $ plugin ] ) ; if ( count ( $ conflicts ) > 0 ) { $ conflictList = implode ( "', '" , $ conflicts ) ; Log :: write ( 'debug' , "command '$shell' in plugin '$plugin' was not aliased, conflicts with '$conflictList'" , [ 'shell-dispatcher' ] ) ; } } static :: alias ( $ shell , "$plugin.$shell" ) ; } return static :: $ _aliases ; }
docstring: For all loaded plugins, add a short alias
  
  This permits a plugin which implements a shell of the same name to be accessed
  Using the shell name alone
  
  @return array the resultant list of aliases
docstring_tokens: For all loaded plugins add a short alias