| Index: pkg/matcher/lib/src/description.dart
|
| diff --git a/pkg/matcher/lib/src/description.dart b/pkg/matcher/lib/src/description.dart
|
| index f8ebf09d7d0b072ab9e0c4ea761d4689249f70ac..f03934d0bfd494c890291742f3495b34c05f0ba9 100644
|
| --- a/pkg/matcher/lib/src/description.dart
|
| +++ b/pkg/matcher/lib/src/description.dart
|
| @@ -6,44 +6,39 @@ library matcher.description;
|
|
|
| import 'interfaces.dart';
|
| import 'pretty_print.dart';
|
| -import 'utils.dart';
|
|
|
| -/**
|
| - * The default implementation of IDescription. This should rarely need
|
| - * substitution, although conceivably it is a place where other languages
|
| - * could be supported.
|
| - */
|
| +/// The default implementation of [Description]. This should rarely need
|
| +/// substitution, although conceivably it is a place where other languages
|
| +/// could be supported.
|
| class StringDescription implements Description {
|
| - var _out;
|
| + final StringBuffer _out = new StringBuffer();
|
|
|
| - /** Initialize the description with initial contents [init]. */
|
| + /// Initialize the description with initial contents [init].
|
| StringDescription([String init = '']) {
|
| - _out = init;
|
| + _out.write(init);
|
| }
|
|
|
| int get length => _out.length;
|
|
|
| - /** Get the description as a string. */
|
| - String toString() => _out;
|
| + /// Get the description as a string.
|
| + String toString() => _out.toString();
|
|
|
| - /** Append [text] to the description. */
|
| - Description add(text) {
|
| - _out = '${_out}${text}';
|
| + /// Append [text] to the description.
|
| + Description add(String text) {
|
| + _out.write(text);
|
| return this;
|
| }
|
|
|
| - /** Change the value of the description. */
|
| + /// Change the value of the description.
|
| Description replace(String text) {
|
| - _out = text;
|
| - return this;
|
| + _out.clear();
|
| + return add(text);
|
| }
|
|
|
| - /**
|
| - * Appends a description of [value]. If it is an IMatcher use its
|
| - * describe method; if it is a string use its literal value after
|
| - * escaping any embedded control characters; otherwise use its
|
| - * toString() value and wrap it in angular "quotes".
|
| - */
|
| + /// Appends a description of [value]. If it is an IMatcher use its
|
| + /// describe method; if it is a string use its literal value after
|
| + /// escaping any embedded control characters; otherwise use its
|
| + /// toString() value and wrap it in angular "quotes".
|
| Description addDescriptionOf(value) {
|
| if (value is Matcher) {
|
| value.describe(this);
|
| @@ -53,11 +48,9 @@ class StringDescription implements Description {
|
| return this;
|
| }
|
|
|
| - /**
|
| - * Append an [Iterable] [list] of objects to the description, using the
|
| - * specified [separator] and framing the list with [start]
|
| - * and [end].
|
| - */
|
| + /// Append an [Iterable] [list] of objects to the description, using the
|
| + /// specified [separator] and framing the list with [start]
|
| + /// and [end].
|
| Description addAll(String start, String separator, String end,
|
| Iterable list) {
|
| var separate = false;
|
| @@ -72,11 +65,4 @@ class StringDescription implements Description {
|
| add(end);
|
| return this;
|
| }
|
| -
|
| - /** Escape the control characters in [string] so that they are visible. */
|
| - _addEscapedString(String string) {
|
| - add("'");
|
| - add(escapeString(string));
|
| - add("'");
|
| - }
|
| }
|
|
|