LCOV - code coverage report

Current view
top level - src/_impl/native - _local_worker.dart
Test
lcov.info
Date
2025-11-17
Legend
Lines
hit
not hit
Branches
taken
not taken
# not executed
HitTotalCoverage
Lines101758.8%
Functions00-
Branches00-
Each row represents a line of source code
LineBranchHitsSource code
1import 'dart:async';
2import 'dart:isolate';
3
4import 'package:logger/web.dart';
5import 'package:using/using.dart';
6
7import '../../channel.dart';
8import '../../exceptions/exception_manager.dart';
9import '../../exceptions/task_terminated_exception.dart';
10import '../../local_worker/local_worker.dart';
11import '../../typedefs.dart';
12import '../xplat/_worker_runner.dart';
13import '_worker_runner.dart';
14
15base class _VmLocalWorker<W> with Releasable implements LocalWorker<W> {
161 _VmLocalWorker._(this.service, this.operations, this.exceptionManager) {
171 final runner = WorkerRunner.use(this);
183 _port.listen(runner.handle);
192 _channel = Channel.deserialize(
204 _port.sendPort, runner.internalLogger, exceptionManager)!
212 ..closed.then((_) => _port.close());
22 }
23
24 @override
25 final W service;
26
27 @override
28 final OperationsMap operations;
29
30 @override
31 final ExceptionManager exceptionManager;
32
33 @override
34 Logger? channelLogger;
35
36 final _port = ReceivePort();
37 late Channel? _channel;
38
391 @override
401 Channel? get channel => _channel;
41
420 @override
43 FutureOr<void> start() {}
44
450 @override
46 void stop() {
470 _port.close();
480 _channel?.close();
490 _channel = null;
50 }
51
520 @override
530 void terminate([TaskTerminatedException? ex]) => stop();
54}
55
56/// Creates a [LocalWorker] on a native platform.
571LocalWorker<W> createLocalWorker<W>(W service, OperationsMap operations,
58 ExceptionManager exceptionManager) =>
591 _VmLocalWorker<W>._(service, operations, exceptionManager);
Choose Features