|  | // 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. | 
|  |  | 
|  | part of dart.core; | 
|  |  | 
|  | // Examples can assume: | 
|  | // late StringSink sink; | 
|  |  | 
|  | abstract interface class StringSink { | 
|  | /// Writes the string representation of [object]. | 
|  | /// | 
|  | /// Converts [object] to a string using `object.toString()`. | 
|  | /// | 
|  | /// Notice that calling `sink.write(null)` will will write the `"null"` | 
|  | /// string. | 
|  | void write(Object? object); | 
|  |  | 
|  | /// Writes the elements of [objects] separated by [separator]. | 
|  | /// | 
|  | /// Writes the string representation of every element of [objects], | 
|  | /// in iteration order, and writes [separator] between any two elements. | 
|  | /// | 
|  | /// ```dart | 
|  | /// sink.writeAll(["Hello", "World"], " Beautiful "); | 
|  | /// ``` | 
|  | /// is equivalent to: | 
|  | /// ```dart | 
|  | /// sink | 
|  | ///   ..write("Hello"); | 
|  | ///   ..write(" Beautiful "); | 
|  | ///   ..write("World"); | 
|  | /// ``` | 
|  | void writeAll(Iterable<dynamic> objects, [String separator = ""]); | 
|  |  | 
|  | /// Writes the string representation of [object] followed by a newline. | 
|  | /// | 
|  | /// Equivalent to `buffer.write(object)` followed by `buffer.write("\n")`. | 
|  | /// | 
|  | /// Notice that calling `buffer.writeln(null)` will write the `"null"` string | 
|  | /// before the newline. Omitting the argument, or explicitly passing an empty | 
|  | /// string, is the recommended way to emit just the newline. | 
|  | void writeln([Object? object = ""]); | 
|  |  | 
|  | /// Writes a string containing the character with code point [charCode]. | 
|  | /// | 
|  | /// Equivalent to `write(String.fromCharCode(charCode))`. | 
|  | void writeCharCode(int charCode); | 
|  | } |