original_string: protected function compileJsonUpdateColumn($key, JsonExpression $value)
      {
          $path = explode('->', $key);
  
          $field = $this->wrapValue(array_shift($path));
  
          $accessor = '"$.' . implode('.', $path) . '"';
  
          return "{$field} = json_set({$field}, {$accessor}, {$value->getValue()})";
      }
code: protected function compileJsonUpdateColumn($key, JsonExpression $value)
      {
          $path = explode('->', $key);
  
          $field = $this->wrapValue(array_shift($path));
  
          $accessor = '"$.' . implode('.', $path) . '"';
  
          return "{$field} = json_set({$field}, {$accessor}, {$value->getValue()})";
      }
code_tokens: protected function compileJsonUpdateColumn ( $ key , JsonExpression $ value ) { $ path = explode ( '->' , $ key ) ; $ field = $ this -> wrapValue ( array_shift ( $ path ) ) ; $ accessor = '"$.' . implode ( '.' , $ path ) . '"' ; return "{$field} = json_set({$field}, {$accessor}, {$value->getValue()})" ; }
docstring: Prepares a JSON column being updated using the JSON_SET function.
  
  @param string                                   $key
  @param \Mellivora\Database\Query\JsonExpression $value
  
  @return string
docstring_tokens: Prepares a JSON column being updated using the JSON_SET function .