Class Breakpoint (2.4.0)

public sealed class Breakpoint : IMessage<Breakpoint>, IEquatable<Breakpoint>, IDeepCloneable<Breakpoint>, IBufferMessage, IMessage

Represents the breakpoint specification, status and results.

Inheritance

Object > Breakpoint

Namespace

Google.Cloud.Debugger.V2

Assembly

Google.Cloud.Debugger.V2.dll

Constructors

Breakpoint()

public Breakpoint()

Breakpoint(Breakpoint)

public Breakpoint(Breakpoint other)
Parameter
NameDescription
otherBreakpoint

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
TypeDescription
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
TypeDescription
String

CreateTime

public Timestamp CreateTime { get; set; }

Time this breakpoint was created by the server in seconds resolution.

Property Value
TypeDescription
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
TypeDescription
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
TypeDescription
RepeatedField<String>

FinalTime

public Timestamp FinalTime { get; set; }

Time this breakpoint was finalized as seen by the server in seconds resolution.

Property Value
TypeDescription
Timestamp

Id

public string Id { get; set; }

Breakpoint identifier, unique in the scope of the debuggee.

Property Value
TypeDescription
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
TypeDescription
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
TypeDescription
MapField<String, String>

Location

public SourceLocation Location { get; set; }

Breakpoint source location.

Property Value
TypeDescription
SourceLocation

LogLevel

public Breakpoint.Types.LogLevel LogLevel { get; set; }

Indicates the severity of the log. Only relevant when action is LOG.

Property Value
TypeDescription
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
TypeDescription
String

StackFrames

public RepeatedField<StackFrame> StackFrames { get; }

The stack at breakpoint time, where stack_frames[0] represents the most recently entered function.

Property Value
TypeDescription
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 location
  • Field f not found in class C referring to condition
Property Value
TypeDescription
StatusMessage

UserEmail

public string UserEmail { get; set; }

E-mail address of the user that created this breakpoint

Property Value
TypeDescription
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
TypeDescription
RepeatedField<Variable>