VmService class

Implemented types
Available Extensions

Constructors

VmService(Stream inStream, void writeMessage(String message), {Log? log, DisposeHandler? disposeHandler, Future? streamClosed})

Properties

hashCode int
The hash code for this object.
no setterinherited
onDebugEvent Stream<Event>
no setter
onDone Future
no setter
onExtensionEvent Stream<Event>
no setter
onGCEvent Stream<Event>
no setter
onHeapSnapshotEvent Stream<Event>
no setter
onIsolateEvent Stream<Event>
no setter
onLoggingEvent Stream<Event>
no setter
onProfilerEvent Stream<Event>
no setter
onReceive Stream<String>
no setter
onSend Stream<String>
no setter
onServiceEvent Stream<Event>
no setter
onStderrEvent Stream<Event>
no setter
onStdoutEvent Stream<Event>
no setter
onTimelineEvent Stream<Event>
no setter
onVMEvent Stream<Event>
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

addBreakpoint(String isolateId, String scriptId, int line, {int? column}) Future<Breakpoint>
The addBreakpoint RPC is used to add a breakpoint at a specific line of some script.
override
addBreakpointAtEntry(String isolateId, String functionId) Future<Breakpoint>
The addBreakpointAtEntry RPC is used to add a breakpoint at the entrypoint of some function.
override
addBreakpointWithScriptUri(String isolateId, String scriptUri, int line, {int? column}) Future<Breakpoint>
The addBreakpoint RPC is used to add a breakpoint at a specific line of some script. This RPC is useful when a script has not yet been assigned an id, for example, if a script is in a deferred library which has not yet been loaded.
override
callMethod(String method, {String? isolateId, Map<String, dynamic>? args}) Future<Response>
Call an arbitrary service protocol method. This allows clients to call methods not explicitly exposed by this library.
callServiceExtension(String method, {String? isolateId, Map<String, dynamic>? args}) Future<Response>
Invoke a specific service protocol extension method.
override
clearCpuSamples(String isolateId) Future<Success>
Clears all CPU profiling samples.
override
clearVMTimeline() Future<Success>
Clears all VM timeline events.
override
dispose() Future<void>
evaluate(String isolateId, String targetId, String expression, {Map<String, String>? scope, bool? disableBreakpoints}) Future<Response>
The evaluate RPC is used to evaluate an expression in the context of some target.
override
evaluateInFrame(String isolateId, int frameIndex, String expression, {Map<String, String>? scope, bool? disableBreakpoints}) Future<Response>
The evaluateInFrame RPC is used to evaluate an expression in the context of a particular stack frame. frameIndex is the index of the desired Frame, with an index of 0 indicating the top (most recent) frame.
override
getAllocationProfile(String isolateId, {bool? reset, bool? gc}) Future<AllocationProfile>
The getAllocationProfile RPC is used to retrieve allocation information for a given isolate.
override
getAllocationTraces(String isolateId, {int? timeOriginMicros, int? timeExtentMicros, String? classId}) Future<CpuSamples>
The getAllocationTraces RPC allows for the retrieval of allocation traces for objects of a specific set of types (see setTraceClassAllocation). Only samples collected in the time range [timeOriginMicros, timeOriginMicros + timeExtentMicros] will be reported.
override
getClassList(String isolateId) Future<ClassList>
The getClassList RPC is used to retrieve a ClassList containing all classes for an isolate based on the isolate's isolateId.
override
getCpuSamples(String isolateId, int timeOriginMicros, int timeExtentMicros) Future<CpuSamples>
The getCpuSamples RPC is used to retrieve samples collected by the CPU profiler. Only samples collected in the time range [timeOriginMicros, timeOriginMicros + timeExtentMicros] will be reported.
override
getFlagList() Future<FlagList>
The getFlagList RPC returns a list of all command line flags in the VM along with their current values.
override
getInboundReferences(String isolateId, String targetId, int limit) Future<InboundReferences>
Returns a set of inbound references to the object specified by targetId. Up to limit references will be returned.
override
getInstances(String isolateId, String objectId, int limit, {bool? includeSubclasses, bool? includeImplementers}) Future<InstanceSet>
The getInstances RPC is used to retrieve a set of instances which are of a specific class.
override
getIsolate(String isolateId) Future<Isolate>
The getIsolate RPC is used to lookup an Isolate object by its id.
override
getIsolateGroup(String isolateGroupId) Future<IsolateGroup>
The getIsolateGroup RPC is used to lookup an IsolateGroup object by its id.
override
getIsolateGroupMemoryUsage(String isolateGroupId) Future<MemoryUsage>
The getIsolateGroupMemoryUsage RPC is used to lookup an isolate group's memory usage statistics by its id.
override
getMemoryUsage(String isolateId) Future<MemoryUsage>
The getMemoryUsage RPC is used to lookup an isolate's memory usage statistics by its id.
override
getObject(String isolateId, String objectId, {int? offset, int? count}) Future<Obj>
The getObject RPC is used to lookup an object from some isolate by its id.
override
getPorts(String isolateId) Future<PortList>
The getPorts RPC is used to retrieve the list of ReceivePort instances for a given isolate.
override
getProcessMemoryUsage() Future<ProcessMemoryUsage>
Returns a description of major uses of memory known to the VM.
override
getRetainingPath(String isolateId, String targetId, int limit) Future<RetainingPath>
The getRetainingPath RPC is used to lookup a path from an object specified by targetId to a GC root (i.e., the object which is preventing this object from being garbage collected).
override
getScripts(String isolateId) Future<ScriptList>
The getScripts RPC is used to retrieve a ScriptList containing all scripts for an isolate based on the isolate's isolateId.
override
getSourceReport(String isolateId, List<String> reports, {String? scriptId, int? tokenPos, int? endTokenPos, bool? forceCompile, bool? reportLines, List<String>? libraryFilters}) Future<SourceReport>
The getSourceReport RPC is used to generate a set of reports tied to source locations in an isolate.
override
getStack(String isolateId, {int? limit}) Future<Stack>
The getStack RPC is used to retrieve the current execution stack and message queue for an isolate. The isolate does not need to be paused.
override
getSupportedProtocols() Future<ProtocolList>
The getSupportedProtocols RPC is used to determine which protocols are supported by the current server.
override
getVersion() Future<Version>
The getVersion RPC is used to determine what version of the Service Protocol is served by a VM.
override
getVM() Future<VM>
The getVM RPC returns global information about a Dart virtual machine.
override
getVMTimeline({int? timeOriginMicros, int? timeExtentMicros}) Future<Timeline>
The getVMTimeline RPC is used to retrieve an object which contains VM timeline events.
override
getVMTimelineFlags() Future<TimelineFlags>
The getVMTimelineFlags RPC returns information about the current VM timeline configuration.
override
getVMTimelineMicros() Future<Timestamp>
The getVMTimelineMicros RPC returns the current time stamp from the clock used by the timeline, similar to Timeline.now in dart:developer and Dart_TimelineGetMicros in the VM embedding API.
override
invoke(String isolateId, String targetId, String selector, List<String> argumentIds, {bool? disableBreakpoints}) Future<Response>
The invoke RPC is used to perform regular method invocation on some receiver, as if by dart:mirror's ObjectMirror.invoke. Note this does not provide a way to perform getter, setter or constructor invocation.
override
kill(String isolateId) Future<Success>
The kill RPC is used to kill an isolate as if by dart:isolate's Isolate.kill(IMMEDIATE).
override
lookupPackageUris(String isolateId, List<String> uris) Future<UriList>
The lookupPackageUris RPC is used to convert a list of URIs to their unresolved paths. For example, URIs passed to this RPC are mapped in the following ways:
override
lookupResolvedPackageUris(String isolateId, List<String> uris, {bool? local}) Future<UriList>
The lookupResolvedPackageUris RPC is used to convert a list of URIs to their resolved (or absolute) paths. For example, URIs passed to this RPC are mapped in the following ways:
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onEvent(String streamId) Stream<Event>
Returns the stream for a given stream id.
override
pause(String isolateId) Future<Success>
The pause RPC is used to interrupt a running isolate. The RPC enqueues the interrupt request and potentially returns before the isolate is paused.
override
registerService(String service, String alias) Future<Success>
Registers a service that can be invoked by other VM service clients, where service is the name of the service to advertise and alias is an alternative name for the registered service.
override
registerServiceCallback(String service, ServiceCallback cb) → void
Register a service for invocation.
reloadSources(String isolateId, {bool? force, bool? pause, String? rootLibUri, String? packagesUri}) Future<ReloadReport>
The reloadSources RPC is used to perform a hot reload of an Isolate's sources.
override
removeBreakpoint(String isolateId, String breakpointId) Future<Success>
The removeBreakpoint RPC is used to remove a breakpoint by its id.
override
requestHeapSnapshot(String isolateId) Future<Success>
Requests a dump of the Dart heap of the given isolate.
override
resume(String isolateId, {String? step, int? frameIndex}) Future<Success>
The resume RPC is used to resume execution of a paused isolate.
override
setBreakpointState(String isolateId, String breakpointId, bool enable) Future<Breakpoint>
The setBreakpointState RPC allows for breakpoints to be enabled or disabled, without requiring for the breakpoint to be completely removed.
override
setExceptionPauseMode(String isolateId, String mode) Future<Success>
The setExceptionPauseMode RPC is used to control if an isolate pauses when an exception is thrown.
override
setFlag(String name, String value) Future<Response>
The setFlag RPC is used to set a VM flag at runtime. Returns an error if the named flag does not exist, the flag may not be set at runtime, or the value is of the wrong type for the flag.
override
setIsolatePauseMode(String isolateId, {String? exceptionPauseMode, bool? shouldPauseOnExit}) Future<Success>
The setIsolatePauseMode RPC is used to control if or when an isolate will pause due to a change in execution state.
override
setLibraryDebuggable(String isolateId, String libraryId, bool isDebuggable) Future<Success>
The setLibraryDebuggable RPC is used to enable or disable whether breakpoints and stepping work for a given library.
override
setName(String isolateId, String name) Future<Success>
The setName RPC is used to change the debugging name for an isolate.
override
setTraceClassAllocation(String isolateId, String classId, bool enable) Future<Success>
The setTraceClassAllocation RPC allows for enabling or disabling allocation tracing for a specific type of object. Allocation traces can be retrieved with the getAllocationTraces RPC.
override
setVMName(String name) Future<Success>
The setVMName RPC is used to change the debugging name for the vm.
override
setVMTimelineFlags(List<String> recordedStreams) Future<Success>
The setVMTimelineFlags RPC is used to set which timeline streams are enabled.
override
streamCancel(String streamId) Future<Success>
The streamCancel RPC cancels a stream subscription in the VM.
override
streamCpuSamplesWithUserTag(List<String> userTags) Future<Success>
The streamCpuSamplesWithUserTag RPC allows for clients to specify which CPU samples collected by the profiler should be sent over the Profiler stream. When called, the VM will stream CpuSamples events containing CpuSample's collected while a user tag contained in userTags was active.
override
streamListen(String streamId) Future<Success>
The streamListen RPC subscribes to a stream in the VM. Once subscribed, the client will begin receiving events from the stream.
override
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited