()
| 20570 | |
| 20571 | |
| 20572 | function InflateState() { |
| 20573 | this.mode = 0; /* current inflate mode */ |
| 20574 | this.last = false; /* true if processing last block */ |
| 20575 | this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */ |
| 20576 | this.havedict = false; /* true if dictionary provided */ |
| 20577 | this.flags = 0; /* gzip header method and flags (0 if zlib) */ |
| 20578 | this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */ |
| 20579 | this.check = 0; /* protected copy of check value */ |
| 20580 | this.total = 0; /* protected copy of output count */ |
| 20581 | // TODO: may be {} |
| 20582 | this.head = null; /* where to save gzip header information */ |
| 20583 | |
| 20584 | /* sliding window */ |
| 20585 | this.wbits = 0; /* log base 2 of requested window size */ |
| 20586 | this.wsize = 0; /* window size or zero if not using window */ |
| 20587 | this.whave = 0; /* valid bytes in the window */ |
| 20588 | this.wnext = 0; /* window write index */ |
| 20589 | this.window = null; /* allocated sliding window, if needed */ |
| 20590 | |
| 20591 | /* bit accumulator */ |
| 20592 | this.hold = 0; /* input bit accumulator */ |
| 20593 | this.bits = 0; /* number of bits in "in" */ |
| 20594 | |
| 20595 | /* for string and stored block copying */ |
| 20596 | this.length = 0; /* literal or length of data to copy */ |
| 20597 | this.offset = 0; /* distance back to copy string from */ |
| 20598 | |
| 20599 | /* for table and code decoding */ |
| 20600 | this.extra = 0; /* extra bits needed */ |
| 20601 | |
| 20602 | /* fixed and dynamic code tables */ |
| 20603 | this.lencode = null; /* starting table for length/literal codes */ |
| 20604 | this.distcode = null; /* starting table for distance codes */ |
| 20605 | this.lenbits = 0; /* index bits for lencode */ |
| 20606 | this.distbits = 0; /* index bits for distcode */ |
| 20607 | |
| 20608 | /* dynamic table building */ |
| 20609 | this.ncode = 0; /* number of code length code lengths */ |
| 20610 | this.nlen = 0; /* number of length code lengths */ |
| 20611 | this.ndist = 0; /* number of distance code lengths */ |
| 20612 | this.have = 0; /* number of code lengths in lens[] */ |
| 20613 | this.next = null; /* next available space in codes[] */ |
| 20614 | |
| 20615 | this.lens = new utils.Buf16(320); /* temporary storage for code lengths */ |
| 20616 | this.work = new utils.Buf16(288); /* work area for code table building */ |
| 20617 | |
| 20618 | /* |
| 20619 | because we don't have pointers in js, we use lencode and distcode directly |
| 20620 | as buffers so we don't need codes |
| 20621 | */ |
| 20622 | //this.codes = new utils.Buf32(ENOUGH); /* space for code tables */ |
| 20623 | this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */ |
| 20624 | this.distdyn = null; /* dynamic table for distance codes (JS specific) */ |
| 20625 | this.sane = 0; /* if false, allow invalid distance too far */ |
| 20626 | this.back = 0; /* bits back of last unprocessed length/lit */ |
| 20627 | this.was = 0; /* initial length of match */ |
| 20628 | } |
| 20629 |
nothing calls this directly
no outgoing calls
no test coverage detected