GithubHelp home page GithubHelp logo

Comments (4)

gregg-miskelly avatar gregg-miskelly commented on July 29, 2024

LGTM

from debug-adapter-protocol.

weinand avatar weinand commented on July 29, 2024

Since the DAP already has a notion of a breakpoint condition, I would like to align exception conditions to breakpoint conditions (and other similar constructs).

Neither for breakpoint conditions, nor for the eval request did we specify the concrete syntax of those conditions and/or expressions (since the syntax would be language specific).

Would it be possible to just use a string typed attribute condition in the ExceptionOptions?
A language agnostic debugger like VS Code would offer a text input box to specify the condition and the DA would return an error in case of a syntax error?

from debug-adapter-protocol.

andrewcrawley avatar andrewcrawley commented on July 29, 2024

Breakpoint conditions and evaluations are language-specific, as you noted, so it makes sense to have a free-form experience. Exception conditions (at least in VS) are a bit different, though - the only exception condition VS supports is "Only break if the exception is/is not in this module", and it's exposed through a query-builder sort of UI:

image

We don't have any way to expose a free-form text field to users. We could potentially convert the conditions designed using the UI into a language-specific string, but that would require adapter authors to write a component on the VS side that would do the translation, which we've tried to avoid.

from debug-adapter-protocol.

weinand avatar weinand commented on July 29, 2024

@richardstanton fyi:
With #137 we have added condition support for exceptions in a way that is aligned with conditional breakpoints. VS Code already supports the new DAP feature and it would be possible to have conditions like "moduleName == foo && moduleName == bar".

from debug-adapter-protocol.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.