original_string: final public function autoLogin(Request $request): ?TokenInterface
      {
          if (null === $cookie = $request->cookies->get($this->options['name'])) {
              return null;
          }
  
          if (null !== $this->logger) {
              $this->logger->debug('Remember-me cookie detected.');
          }
  
          $cookieParts = $this->decodeCookie($cookie);
  
          try {
              $user = $this->processAutoLoginCookie($cookieParts, $request);
  
              if (!$user instanceof UserInterface) {
                  throw new \RuntimeException('processAutoLoginCookie() must return a UserInterface implementation.');
              }
  
              if (null !== $this->logger) {
                  $this->logger->info('Remember-me cookie accepted.');
              }
  
              return new RememberMeToken($user, $this->providerKey, $this->secret);
          } catch (CookieTheftException $e) {
              $this->loginFail($request, $e);
  
              throw $e;
          } catch (UsernameNotFoundException $e) {
              if (null !== $this->logger) {
                  $this->logger->info('User for remember-me cookie not found.', ['exception' => $e]);
              }
  
              $this->loginFail($request, $e);
          } catch (UnsupportedUserException $e) {
              if (null !== $this->logger) {
                  $this->logger->warning('User class for remember-me cookie not supported.', ['exception' => $e]);
              }
  
              $this->loginFail($request, $e);
          } catch (AuthenticationException $e) {
              if (null !== $this->logger) {
                  $this->logger->debug('Remember-Me authentication failed.', ['exception' => $e]);
              }
  
              $this->loginFail($request, $e);
          } catch (\Exception $e) {
              $this->loginFail($request, $e);
  
              throw $e;
          }
  
          return null;
      }
code: final public function autoLogin(Request $request): ?TokenInterface
      {
          if (null === $cookie = $request->cookies->get($this->options['name'])) {
              return null;
          }
  
          if (null !== $this->logger) {
              $this->logger->debug('Remember-me cookie detected.');
          }
  
          $cookieParts = $this->decodeCookie($cookie);
  
          try {
              $user = $this->processAutoLoginCookie($cookieParts, $request);
  
              if (!$user instanceof UserInterface) {
                  throw new \RuntimeException('processAutoLoginCookie() must return a UserInterface implementation.');
              }
  
              if (null !== $this->logger) {
                  $this->logger->info('Remember-me cookie accepted.');
              }
  
              return new RememberMeToken($user, $this->providerKey, $this->secret);
          } catch (CookieTheftException $e) {
              $this->loginFail($request, $e);
  
              throw $e;
          } catch (UsernameNotFoundException $e) {
              if (null !== $this->logger) {
                  $this->logger->info('User for remember-me cookie not found.', ['exception' => $e]);
              }
  
              $this->loginFail($request, $e);
          } catch (UnsupportedUserException $e) {
              if (null !== $this->logger) {
                  $this->logger->warning('User class for remember-me cookie not supported.', ['exception' => $e]);
              }
  
              $this->loginFail($request, $e);
          } catch (AuthenticationException $e) {
              if (null !== $this->logger) {
                  $this->logger->debug('Remember-Me authentication failed.', ['exception' => $e]);
              }
  
              $this->loginFail($request, $e);
          } catch (\Exception $e) {
              $this->loginFail($request, $e);
  
              throw $e;
          }
  
          return null;
      }
code_tokens: final public function autoLogin ( Request $ request ) : ? TokenInterface { if ( null === $ cookie = $ request -> cookies -> get ( $ this -> options [ 'name' ] ) ) { return null ; } if ( null !== $ this -> logger ) { $ this -> logger -> debug ( 'Remember-me cookie detected.' ) ; } $ cookieParts = $ this -> decodeCookie ( $ cookie ) ; try { $ user = $ this -> processAutoLoginCookie ( $ cookieParts , $ request ) ; if ( ! $ user instanceof UserInterface ) { throw new \ RuntimeException ( 'processAutoLoginCookie() must return a UserInterface implementation.' ) ; } if ( null !== $ this -> logger ) { $ this -> logger -> info ( 'Remember-me cookie accepted.' ) ; } return new RememberMeToken ( $ user , $ this -> providerKey , $ this -> secret ) ; } catch ( CookieTheftException $ e ) { $ this -> loginFail ( $ request , $ e ) ; throw $ e ; } catch ( UsernameNotFoundException $ e ) { if ( null !== $ this -> logger ) { $ this -> logger -> info ( 'User for remember-me cookie not found.' , [ 'exception' => $ e ] ) ; } $ this -> loginFail ( $ request , $ e ) ; } catch ( UnsupportedUserException $ e ) { if ( null !== $ this -> logger ) { $ this -> logger -> warning ( 'User class for remember-me cookie not supported.' , [ 'exception' => $ e ] ) ; } $ this -> loginFail ( $ request , $ e ) ; } catch ( AuthenticationException $ e ) { if ( null !== $ this -> logger ) { $ this -> logger -> debug ( 'Remember-Me authentication failed.' , [ 'exception' => $ e ] ) ; } $ this -> loginFail ( $ request , $ e ) ; } catch ( \ Exception $ e ) { $ this -> loginFail ( $ request , $ e ) ; throw $ e ; } return null ; }
docstring: Implementation of RememberMeServicesInterface. Detects whether a remember-me
  cookie was set, decodes it, and hands it to subclasses for further processing.
  
  @throws CookieTheftException
  @throws \RuntimeException
docstring_tokens: Implementation of RememberMeServicesInterface . Detects whether a remember - me cookie was set decodes it and hands it to subclasses for further processing .