UNPKG

igniteui-react-core

Version:
366 lines (365 loc) 11.9 kB
// // System.IO.StreamWriter.cs // // Authors: // Dietmar Maurer (dietmar@ximian.com) // Paolo Molaro (lupus@ximian.com) // // (C) Ximian, Inc. http://www.ximian.com // import { __extends } from "tslib"; // // Copyright (C) 2004 Novell, Inc (http://www.novell.com) // // Permission is hereby granted, free of charge, to any person obtaining // a copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // import { TextWriter } from "./TextWriter"; import { markType } from "./type"; import { Encoding } from "./Encoding"; import { ArgumentNullException } from "./ArgumentNullException"; import { ArgumentOutOfRangeException } from "./ArgumentOutOfRangeException"; import { ArgumentException } from "./ArgumentException"; import { ObjectDisposedException } from "./ObjectDisposedException"; import { NullStream } from "./NullStream"; import { arrayCopy1 } from "./arrayExtended"; /** * @hidden */ var StreamWriter = /** @class */ /*@__PURE__*/ (function (_super) { __extends(StreamWriter, _super); function StreamWriter(a) { var _rest = []; for (var _i = 1; _i < arguments.length; _i++) { _rest[_i - 1] = arguments[_i]; } var _this = this; a = (a == void 0) ? 0 : a; switch (a) { case 0: { var c = _rest[0]; var d = [c, Encoding.uTF8Unmarked, 1024]; { var f = d[0]; var g = d[1]; var h = d[2]; _this = _super.call(this, 0) || this; _this.a8 = null; _this.a6 = null; _this.ay = false; _this.au = null; _this.a0 = 0; _this.av = null; _this.a1 = 0; _this.ax = false; _this.az = false; if (null == f) { throw new ArgumentNullException(0, "stream"); } if (null == g) { throw new ArgumentNullException(0, "encoding"); } if (h <= 0) { throw new ArgumentOutOfRangeException(1, "bufferSize"); } if (!f.canWrite) { throw new ArgumentException(1, "Can not write to stream"); } _this.a6 = f; _this.bb(g, h); } } break; case 1: { var c = _rest[0]; var d = _rest[1]; var e = [c, d, 1024]; { var g = e[0]; var h = e[1]; var i = e[2]; _this = _super.call(this, 0) || this; _this.a8 = null; _this.a6 = null; _this.ay = false; _this.au = null; _this.a0 = 0; _this.av = null; _this.a1 = 0; _this.ax = false; _this.az = false; if (null == g) { throw new ArgumentNullException(0, "stream"); } if (null == h) { throw new ArgumentNullException(0, "encoding"); } if (i <= 0) { throw new ArgumentOutOfRangeException(1, "bufferSize"); } if (!g.canWrite) { throw new ArgumentException(1, "Can not write to stream"); } _this.a6 = g; _this.bb(h, i); } } break; case 2: { var c = _rest[0]; var d = _rest[1]; var e = _rest[2]; _this = _super.call(this, 0) || this; _this.a8 = null; _this.a6 = null; _this.ay = false; _this.au = null; _this.a0 = 0; _this.av = null; _this.a1 = 0; _this.ax = false; _this.az = false; if (null == c) { throw new ArgumentNullException(0, "stream"); } if (null == d) { throw new ArgumentNullException(0, "encoding"); } if (e <= 0) { throw new ArgumentOutOfRangeException(1, "bufferSize"); } if (!c.canWrite) { throw new ArgumentException(1, "Can not write to stream"); } _this.a6 = c; _this.bb(d, e); } break; } return _this; } StreamWriter.prototype.bb = function (a, b) { this.a8 = a; this.a1 = this.a0 = 0; var c = Math.max(b, 256); this.av = new Array(c); this.au = new Array(a.getMaxByteCount(c)); if (this.a6.canSeek && this.a6.position > 0) { this.az = true; } }; StreamWriter.prototype.get_aw = function () { return this.ay; }; StreamWriter.prototype.set_aw = function (a) { this.ay = a; if (this.ay) { this.k(); } }; Object.defineProperty(StreamWriter.prototype, "aw", { get: function () { return this.get_aw(); }, set: function (a) { this.set_aw(a); }, enumerable: false, configurable: true }); StreamWriter.prototype.get_a5 = function () { return this.a6; }; Object.defineProperty(StreamWriter.prototype, "a5", { get: function () { return this.get_a5(); }, enumerable: false, configurable: true }); StreamWriter.prototype.get_h = function () { return this.a8; }; Object.defineProperty(StreamWriter.prototype, "h", { get: function () { return this.get_h(); }, enumerable: false, configurable: true }); StreamWriter.prototype.dispose1 = function (a) { var b = null; if (!this.ax && a && this.a6 != null) { try { this.k(); } catch (c) { b = c; } this.ax = true; try { this.a6.close(); } catch (d) { if (b == null) { b = d; } } } this.a6 = null; this.au = null; this.a8 = null; this.av = null; if (b != null) { throw b; } }; StreamWriter.prototype.k = function () { if (this.ax) { throw new ObjectDisposedException(0, "StreamWriter"); } this.a9(); if (this.a0 > 0) { this.ba(); this.a6.flush(); } }; StreamWriter.prototype.ba = function () { if (!this.az && this.a0 > 0) { var a = this.a8.getPreamble(); if (a.length > 0) { this.a6.write(a, 0, a.length); } this.az = true; } this.a6.write(this.au, 0, this.a0); this.a0 = 0; }; StreamWriter.prototype.a9 = function () { if (this.a0 > 0) { this.ba(); } if (this.a1 > 0) { var a = this.a8.getBytes2(this.av, 0, this.a1, this.au, this.a0); this.a0 += a; this.a1 = 0; } }; StreamWriter.prototype.m = function (a, b, c) { if (this.ax) { throw new ObjectDisposedException(0, "StreamWriter"); } if (a == null) { throw new ArgumentNullException(0, "buffer"); } if (b < 0) { throw new ArgumentOutOfRangeException(2, "index", "< 0"); } if (c < 0) { throw new ArgumentOutOfRangeException(2, "count", "< 0"); } if (b > a.length - c) { throw new ArgumentException(1, "index + count > buffer.Length"); } this.bc(a, b, c); if (this.ay) { this.k(); } }; StreamWriter.prototype.bc = function (a, b, c) { while (c > 0) { var d = this.av.length - this.a1; if (d == 0) { this.a9(); d = this.av.length; } if (d > c) { d = c; } arrayCopy1(a, b, this.av, this.a1, d); c -= d; b += d; this.a1 += d; } }; StreamWriter.prototype.bd = function (a) { var b = a.length; var c = 0; while (b > 0) { var d = this.av.length - this.a1; if (d == 0) { this.a9(); d = this.av.length; } if (d > b) { d = b; } for (var e = 0; e < d; e++) { this.av[e + this.a1] = a.charAt(e + c); } b -= d; c += d; this.a1 += d; } }; StreamWriter.prototype.o = function (a) { if (this.ax) { throw new ObjectDisposedException(0, "StreamWriter"); } if (this.a1 >= this.av.length) { this.a9(); } this.av[this.a1++] = a; if (this.ay) { this.k(); } }; StreamWriter.prototype.l = function (a) { if (this.ax) { throw new ObjectDisposedException(0, "StreamWriter"); } if (a != null) { this.bc(a, 0, a.length); } if (this.ay) { this.k(); } }; StreamWriter.prototype.v = function (a) { if (this.ax) { throw new ObjectDisposedException(0, "StreamWriter"); } if (a != null) { this.bd(a); } if (this.ay) { this.k(); } }; StreamWriter.prototype.i = function () { this.dispose1(true); }; StreamWriter.$t = markType(StreamWriter, 'StreamWriter', TextWriter.$); StreamWriter.a7 = new StreamWriter(2, new NullStream(), Encoding.uTF8Unmarked, 1); return StreamWriter; }(TextWriter)); export { StreamWriter };