Skip to content

Add support for Evaluatable Expression #2414

Open
@zobo

Description

@zobo

This service helps a vscode (php) debugger to better understand what part of the code can be evaluated - usually in a "hover" context.

If there is code like $this->arr['foo'][$xx['bar']]->buz[777] hovering over different parts should tell the debugger what par of the code to evaluate. For example:

  • $xx if hovering over $xx
  • $xx['bar'] if hovering over bar`
  • $this->arr if hovering over arr
  • $this->arr['foo'][$xx['bar']]->buz if hovering over buz
  • ...

The implementation consists of two parts - registering a provider in VSCode extension and handing the processing of to LS over a non standard LSP call.
https://github.com/zobo/vscode-php-intellisense/pull/64/files#diff-04bba6a35cad1c794cbbe677678a51de13441b7a6ee8592b7b50be1f05c6f626R146

https://github.com/zobo/php-language-server/pull/58/files

Functionality wise it's very similar to the textDocument/hover action.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions