original_string: public function getAttribute($key)
      {
          if (isset($this->mutations[$key]))
          {
              return $this->mutations[$key];
          }
  
          if (array_key_exists($key, $mutatables = static::getMutatables()))
          {
              return $this->mutateExtensionAttribute($key, $mutatables[$key]);
          }
  
          return parent::getAttribute($key);
      }
code: public function getAttribute($key)
      {
          if (isset($this->mutations[$key]))
          {
              return $this->mutations[$key];
          }
  
          if (array_key_exists($key, $mutatables = static::getMutatables()))
          {
              return $this->mutateExtensionAttribute($key, $mutatables[$key]);
          }
  
          return parent::getAttribute($key);
      }
code_tokens: public function getAttribute ( $ key ) { if ( isset ( $ this -> mutations [ $ key ] ) ) { return $ this -> mutations [ $ key ] ; } if ( array_key_exists ( $ key , $ mutatables = static :: getMutatables ( ) ) ) { return $ this -> mutateExtensionAttribute ( $ key , $ mutatables [ $ key ] ) ; } return parent :: getAttribute ( $ key ) ; }
docstring: Get an attribute from the model with custom accessor.
  
  @param  string $key
  @return mixed
docstring_tokens: Get an attribute from the model with custom accessor .