public sealed class Breakpoint : IMessage<Breakpoint>, IEquatable<Breakpoint>, IDeepCloneable<Breakpoint>, IBufferMessage, IMessage
Represents the breakpoint specification, status and results.
Implements
IMessage<Breakpoint>, IEquatable<Breakpoint>, IDeepCloneable<Breakpoint>, IBufferMessage, IMessageNamespace
Google.Cloud.Debugger.V2Assembly
Google.Cloud.Debugger.V2.dll
Constructors
Breakpoint()
public Breakpoint()
Breakpoint(Breakpoint)
public Breakpoint(Breakpoint other)
Parameter | |
---|---|
Name | Description |
other | Breakpoint |
Properties
Action
public Breakpoint.Types.Action Action { get; set; }
Action that the agent should perform when the code at the breakpoint location is hit.
Property Value | |
---|---|
Type | Description |
Breakpoint.Types.Action |
Condition
public string Condition { get; set; }
Condition that triggers the breakpoint. The condition is a compound boolean expression composed using expressions in a programming language at the source location.
Property Value | |
---|---|
Type | Description |
String |
CreateTime
public Timestamp CreateTime { get; set; }
Time this breakpoint was created by the server in seconds resolution.
Property Value | |
---|---|
Type | Description |
Timestamp |
EvaluatedExpressions
public RepeatedField<Variable> EvaluatedExpressions { get; }
Values of evaluated expressions at breakpoint time.
The evaluated expressions appear in exactly the same order they
are listed in the expressions
field.
The name
field holds the original expression text, the value
or
members
field holds the result of the evaluated expression.
If the expression cannot be evaluated, the status
inside the Variable
will indicate an error and contain the error text.
Property Value | |
---|---|
Type | Description |
RepeatedField<Variable> |
Expressions
public RepeatedField<string> Expressions { get; }
List of read-only expressions to evaluate at the breakpoint location.
The expressions are composed using expressions in the programming language
at the source location. If the breakpoint action is LOG
, the evaluated
expressions are included in log statements.
Property Value | |
---|---|
Type | Description |
RepeatedField<String> |
FinalTime
public Timestamp FinalTime { get; set; }
Time this breakpoint was finalized as seen by the server in seconds resolution.
Property Value | |
---|---|
Type | Description |
Timestamp |
Id
public string Id { get; set; }
Breakpoint identifier, unique in the scope of the debuggee.
Property Value | |
---|---|
Type | Description |
String |
IsFinalState
public bool IsFinalState { get; set; }
When true, indicates that this is a final result and the breakpoint state will not change from here on.
Property Value | |
---|---|
Type | Description |
Boolean |
Labels
public MapField<string, string> Labels { get; }
A set of custom breakpoint properties, populated by the agent, to be displayed to the user.
Property Value | |
---|---|
Type | Description |
MapField<String, String> |
Location
public SourceLocation Location { get; set; }
Breakpoint source location.
Property Value | |
---|---|
Type | Description |
SourceLocation |
LogLevel
public Breakpoint.Types.LogLevel LogLevel { get; set; }
Indicates the severity of the log. Only relevant when action is LOG
.
Property Value | |
---|---|
Type | Description |
Breakpoint.Types.LogLevel |
LogMessageFormat
public string LogMessageFormat { get; set; }
Only relevant when action is LOG
. Defines the message to log when
the breakpoint hits. The message may include parameter placeholders $0
,
$1
, etc. These placeholders are replaced with the evaluated value
of the appropriate expression. Expressions not referenced in
log_message_format
are not logged.
Example: Message received, id = $0, count = $1
with
expressions
= [ message.id, message.count ]
.
Property Value | |
---|---|
Type | Description |
String |
StackFrames
public RepeatedField<StackFrame> StackFrames { get; }
The stack at breakpoint time, where stack_frames[0] represents the most recently entered function.
Property Value | |
---|---|
Type | Description |
RepeatedField<StackFrame> |
Status
public StatusMessage Status { get; set; }
Breakpoint status.
The status includes an error flag and a human readable message. This field is usually unset. The message can be either informational or an error message. Regardless, clients should always display the text message back to the user.
Error status indicates complete failure of the breakpoint.
Example (non-final state): Still loading symbols...
Examples (final state):
Invalid line number
referring to locationField f not found in class C
referring to condition
Property Value | |
---|---|
Type | Description |
StatusMessage |
UserEmail
public string UserEmail { get; set; }
E-mail address of the user that created this breakpoint
Property Value | |
---|---|
Type | Description |
String |
VariableTable
public RepeatedField<Variable> VariableTable { get; }
The variable_table
exists to aid with computation, memory and network
traffic optimization. It enables storing a variable once and reference
it from multiple variables, including variables stored in the
variable_table
itself.
For example, the same this
object, which may appear at many levels of
the stack, can have all of its data stored once in this table. The
stack frame variables then would hold only a reference to it.
The variable var_table_index
field is an index into this repeated field.
The stored objects are nameless and get their name from the referencing
variable. The effective variable is a merge of the referencing variable
and the referenced variable.
Property Value | |
---|---|
Type | Description |
RepeatedField<Variable> |