original_string: public final function supported_formats() {
          $basic = $this->base_supported_formats();
          if (empty($this->supportedformats)) {
              $specific = array();
          } else if (!is_array($this->supportedformats)) {
              debugging(get_class($this) . ' has set a non array value of member variable supported formats - working around but should be fixed in code');
              $specific = array($this->supportedformats);
          } else {
              $specific = $this->supportedformats;
          }
          return portfolio_most_specific_formats($specific, $basic);
      }
code: public final function supported_formats() {
          $basic = $this->base_supported_formats();
          if (empty($this->supportedformats)) {
              $specific = array();
          } else if (!is_array($this->supportedformats)) {
              debugging(get_class($this) . ' has set a non array value of member variable supported formats - working around but should be fixed in code');
              $specific = array($this->supportedformats);
          } else {
              $specific = $this->supportedformats;
          }
          return portfolio_most_specific_formats($specific, $basic);
      }
code_tokens: public final function supported_formats ( ) { $ basic = $ this -> base_supported_formats ( ) ; if ( empty ( $ this -> supportedformats ) ) { $ specific = array ( ) ; } else if ( ! is_array ( $ this -> supportedformats ) ) { debugging ( get_class ( $ this ) . ' has set a non array value of member variable supported formats - working around but should be fixed in code' ) ; $ specific = array ( $ this -> supportedformats ) ; } else { $ specific = $ this -> supportedformats ; } return portfolio_most_specific_formats ( $ specific , $ basic ) ; }
docstring: Array of formats this caller supports.
  
  @return array list of formats
docstring_tokens: Array of formats this caller supports .