Index: mojo/public/dart/third_party/stack_trace/lib/src/utils.dart |
diff --git a/mojo/public/dart/third_party/stack_trace/lib/src/utils.dart b/mojo/public/dart/third_party/stack_trace/lib/src/utils.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..62a282085662d84baf6db0b38e3dc669c838f4ea |
--- /dev/null |
+++ b/mojo/public/dart/third_party/stack_trace/lib/src/utils.dart |
@@ -0,0 +1,36 @@ |
+// Copyright (c) 2013, 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 stack_trace.src.utils; |
+ |
+/// Returns [string] with enough spaces added to the end to make it [length] |
+/// characters long. |
+String padRight(String string, int length) { |
+ if (string.length >= length) return string; |
+ |
+ var result = new StringBuffer(); |
+ result.write(string); |
+ for (var i = 0; i < length - string.length; i++) { |
+ result.write(' '); |
+ } |
+ |
+ return result.toString(); |
+} |
+ |
+/// Flattens nested lists inside an iterable into a single list containing only |
+/// non-list elements. |
+List flatten(Iterable nested) { |
+ var result = []; |
+ helper(list) { |
+ for (var element in list) { |
+ if (element is List) { |
+ helper(element); |
+ } else { |
+ result.add(element); |
+ } |
+ } |
+ } |
+ helper(nested); |
+ return result; |
+} |