Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[wasm][debugger] A draft of doc for describing debugger behavior. #62015

Merged
merged 2 commits into from
Nov 30, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions docs/design/mono/debugger.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# WebAssembly Debugger

## Overview

The details of launching a Debugger session for a Blazor WebAssembly application is described [here](https://docs.microsoft.com/en-us/aspnet/core/blazor/debug?view=aspnetcore-6.0&tabs=visual-studio).

## Debugger Attributes
Web Assembly Debugger supports usage of following attributes:
- __System.Diagnostics.DebuggerHidden__

Decorating a method - results:
- Visual Studio Breakpoints: results in disabling all existing breakpoints in the method and no possibility to set new,enabled ones.
- Stepping In/Over: results in stepping over the line with method call.
- Call stack: method does not appear on the call stack, no access to method local variables is provided.

Decorating a method with a Debugger.Break() call inside:
- Running in the Debug mode: results in pausing the program on the line with the method call.
- Stepping In/Over: results in an additional stepping need to proceed to the next line.<br><br>
- __System.Diagnostics.DebuggerDisplay__
- __System.Diagnostics.DebuggerTypeProxy__
- ...