| Index: mojo/public/dart/third_party/analyzer/lib/src/util/utilities_timing.dart
|
| diff --git a/mojo/public/dart/third_party/analyzer/lib/src/util/utilities_timing.dart b/mojo/public/dart/third_party/analyzer/lib/src/util/utilities_timing.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..7b8e122e2a97fdc46b4927607fa91f2f28eadd71
|
| --- /dev/null
|
| +++ b/mojo/public/dart/third_party/analyzer/lib/src/util/utilities_timing.dart
|
| @@ -0,0 +1,39 @@
|
| +// Copyright (c) 2014, 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.
|
| +
|
| +library engine.utilities.timing;
|
| +
|
| +/**
|
| + * A `CountedStopwatch` is a [Stopwatch] that counts the number of times the
|
| + * stop method has been invoked.
|
| + */
|
| +class CountedStopwatch extends Stopwatch {
|
| + /**
|
| + * The number of times the [stop] method has been invoked.
|
| + */
|
| + int stopCount = 0;
|
| +
|
| + /**
|
| + * Initialize a newly created stopwatch.
|
| + */
|
| + CountedStopwatch();
|
| +
|
| + /**
|
| + * The average number of millisecond that were recorded each time the [start]
|
| + * and [stop] methods were invoked.
|
| + */
|
| + int get averageMilliseconds => elapsedMilliseconds ~/ stopCount;
|
| +
|
| + @override
|
| + void reset() {
|
| + super.reset();
|
| + stopCount = 0;
|
| + }
|
| +
|
| + @override
|
| + void stop() {
|
| + super.stop();
|
| + stopCount++;
|
| + }
|
| +}
|
|
|