original_string: public function addInfo($key, $val = null)
      {
          if (is_array($key)) {
              foreach ($key as $a => $b) {
                  $this->addInfo($a, $b);
              }
  
              return $this;
          }
  
          $this->debug("Gathered info: $key=$val");
          $this->info[$key] = $val;
  
          return $this;
      }
code: public function addInfo($key, $val = null)
      {
          if (is_array($key)) {
              foreach ($key as $a => $b) {
                  $this->addInfo($a, $b);
              }
  
              return $this;
          }
  
          $this->debug("Gathered info: $key=$val");
          $this->info[$key] = $val;
  
          return $this;
      }
code_tokens: public function addInfo ( $ key , $ val = null ) { if ( is_array ( $ key ) ) { foreach ( $ key as $ a => $ b ) { $ this -> addInfo ( $ a , $ b ) ; } return $ this ; } $ this -> debug ( "Gathered info: $key=$val" ) ; $ this -> info [ $ key ] = $ val ; return $ this ; }
docstring: Add additional info to be stored in user session.
  
  @param string|array $key
  @param mixed $val
  
  @return $this
docstring_tokens: Add additional info to be stored in user session .