part of dart.convert; abstract class Codec {const Codec(); T encode(S input) => encoder.convert(input); S decode(T encoded) => decoder.convert(encoded); Converter get encoder; Converter get decoder; Codec fuse(Codec other) { return new _FusedCodec(this, other); } Codec get inverted => new _InvertedCodec(this); } class _FusedCodec extends Codec {final Codec _first; final Codec _second; Converter get encoder => ((__x2) => DEVC$RT.cast(__x2, DEVC$RT.type((Converter _) { } ), DEVC$RT.type((Converter _) { } ), "CompositeCast", """line 87, column 34 of dart:convert/codec.dart: """, __x2 is Converter, false))(_first.encoder.fuse(_second.encoder)); Converter get decoder => ((__x3) => DEVC$RT.cast(__x3, DEVC$RT.type((Converter _) { } ), DEVC$RT.type((Converter _) { } ), "CompositeCast", """line 88, column 34 of dart:convert/codec.dart: """, __x3 is Converter, false))(_second.decoder.fuse(_first.decoder)); _FusedCodec(this._first, this._second); } class _InvertedCodec extends Codec {final Codec _codec; _InvertedCodec(Codec codec) : _codec = codec; Converter get encoder => _codec.decoder; Converter get decoder => _codec.encoder; Codec get inverted => _codec; }