original_string: protected function _invokeSet($name, $value)
      {
          if (!self::__isInvokable($name)) {
              return $this;
          }
          $is_static = self::__isStatic($name);
          $property = $this->findPropertyName($name);
          if (!empty($property)) {
              if ($is_static) {
                  $this::${$property} = $value;
              } else {
                  $this->{$property} = $value;
              }
          }
          return $this;
      }
code: protected function _invokeSet($name, $value)
      {
          if (!self::__isInvokable($name)) {
              return $this;
          }
          $is_static = self::__isStatic($name);
          $property = $this->findPropertyName($name);
          if (!empty($property)) {
              if ($is_static) {
                  $this::${$property} = $value;
              } else {
                  $this->{$property} = $value;
              }
          }
          return $this;
      }
code_tokens: protected function _invokeSet ( $ name , $ value ) { if ( ! self :: __isInvokable ( $ name ) ) { return $ this ; } $ is_static = self :: __isStatic ( $ name ) ; $ property = $ this -> findPropertyName ( $ name ) ; if ( ! empty ( $ property ) ) { if ( $ is_static ) { $ this :: $ { $ property } = $ value ; } else { $ this -> { $ property } = $ value ; } } return $ this ; }
docstring: Internal magic setter
  
  Magic method called when `setProp(arg, value)` or `$this->arg = value` are invoked.
  
  @param string $name The name of the property to get
  @param mixed $value The value to set for the property
  @return self Returns `$this` for method chaining
docstring_tokens: Internal magic setter