Files
sdk/runtime/lib/stacktrace.h
T
Ben Konyi 5bf9163e1b [ Service / dart:isolate ] Added getPorts RPC and 'debugName' optional
parameter for ReceivePort and RawReceivePort

This change collects additional information related to ReceivePort
allocation locations and an optional debug name that will be displayed
by tooling. ReceivePort is now a special InstanceKind and a ReceivePort
@Instance will include the port ID, allocation stack trace, and debug
name.

Change-Id: I003cfff2b7649218e37d9b653c0e953df5d992e7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/167902
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2020-10-26 23:09:47 +00:00

30 lines
845 B
C++

// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
#ifndef RUNTIME_LIB_STACKTRACE_H_
#define RUNTIME_LIB_STACKTRACE_H_
#include "vm/tagged_pointer.h"
namespace dart {
class StackTrace;
// Creates a StackTrace object from the current stack. Skips the
// first skip_frames Dart frames.
//
// This function is exposed to provide stack trace printing in
// assertion failures, etc.
const StackTrace& GetCurrentStackTrace(int skip_frames);
// Creates a StackTrace object to be attached to an exception.
StackTracePtr GetStackTraceForException();
// Returns false if there is no Dart stack available.
bool HasStack();
} // namespace dart
#endif // RUNTIME_LIB_STACKTRACE_H_