예제 #1
0
        public static global::haxe.root.Array shuffle(global::haxe.root.Array arr)
        {
            unchecked {
                                #line 60 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                if ((arr != null))
                {
                                        #line 61 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                    int _g = 0;
                                        #line 61 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                    int _g1 = arr.length;
                                        #line 61 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                    while ((_g < _g1))
                    {
                                                #line 61 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                        int i = _g++;
                        int j = ((int)(global::System.Math.Floor(((double)(((((arr.length - 1) + 1)) * global::haxe.root.Math.rand.NextDouble()))))));
                                                #line 63 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                        object a = arr.__get(i);
                        object b = arr.__get(j);
                                                #line 65 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                        arr.__set(i, b);
                        arr.__set(j, a);
                    }
                }

                                #line 69 "C:\\HaxeToolkit\\haxe\\lib\\random\\1,4,1\\src\\Random.hx"
                return(arr);
            }
                        #line default
        }
예제 #2
0
        public static global::haxe.root.Array str2blks(string s)
        {
            unchecked {
                                #line 97 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                global::haxe.io.Bytes s1 = global::haxe.io.Bytes.ofString(s, null);
                                #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int nblk = ((((s1.length + 8) >> 6)) + 1);
                global::haxe.root.Array blks = new global::haxe.root.Array();
                                #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                {
                                        #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g = 0;
                                        #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g1 = (nblk * 16);
                                        #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    while ((_g < _g1))
                    {
                                                #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int i            = _g++;
                        int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(i, 0))));
                    }
                }

                                #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                {
                                        #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g2 = 0;
                                        #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g3 = s1.length;
                                        #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    while ((_g2 < _g3))
                    {
                                                #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int i1 = _g2++;
                        int p  = (i1 >> 2);
                                                #line 106 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int __temp_expr2 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(p, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(p)))) | (((int)(((byte)(s1.b[i1])))) << (24 - ((((i1 & 3)) << 3)))))))));
                    }
                }

                                #line 108 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int i2 = s1.length;
                int p1 = (i2 >> 2);
                                #line 110 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int __temp_expr3 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(p1, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(p1)))) | (128 << (24 - ((((i2 & 3)) << 3)))))))));
                int __temp_expr4 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(((nblk * 16) - 1), (s1.length * 8)))));
                                #line 112 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                return(blks);
            }
                        #line default
        }
예제 #3
0
        public static global::haxe.root.Array bytes2blks(global::haxe.io.Bytes b)
        {
            unchecked {
                                #line 116 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int nblk = ((((b.length + 8) >> 6)) + 1);
                global::haxe.root.Array blks = new global::haxe.root.Array();
                                #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                {
                                        #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g = 0;
                                        #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g1 = (nblk * 16);
                                        #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    while ((_g < _g1))
                    {
                                                #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int i            = _g++;
                        int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(i, 0))));
                    }
                }

                                #line 121 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                {
                                        #line 121 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g2 = 0;
                                        #line 121 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int _g3 = b.length;
                                        #line 121 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    while ((_g2 < _g3))
                    {
                                                #line 121 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int i1 = _g2++;
                        int p  = (i1 >> 2);
                                                #line 123 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int __temp_expr2 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(p, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(p)))) | (((int)(((byte)(b.b[i1])))) << (24 - ((((i1 & 3)) << 3)))))))));
                    }
                }

                                #line 125 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int i2 = b.length;
                int p1 = (i2 >> 2);
                                #line 127 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int __temp_expr3 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(p1, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(p1)))) | (128 << (24 - ((((i2 & 3)) << 3)))))))));
                int __temp_expr4 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(((nblk * 16) - 1), (b.length * 8)))));
                                #line 129 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                return(blks);
            }
                        #line default
        }
예제 #4
0
        public virtual void initTable()
        {
            unchecked {
                                #line 73 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                global::haxe.root.Array tbl = new global::haxe.root.Array();
                {
                                        #line 74 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                    int _g = 0;
                                        #line 74 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                    while ((_g < 256))
                    {
                                                #line 74 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                        int i            = _g++;
                        int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(tbl.__set(i, -1))));
                    }
                }

                                #line 76 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                {
                                        #line 76 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                    int _g1 = 0;
                                        #line 76 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                    int _g2 = [email protected];
                                        #line 76 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                    while ((_g1 < _g2))
                    {
                                                #line 76 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                        int i1           = _g1++;
                        int __temp_expr2 = ((int)(global::haxe.lang.Runtime.toInt(tbl.__set(((int)(((byte)([email protected][i1])))), i1))));
                    }
                }

                                #line 78 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\BaseCode.hx"
                this.tbl = tbl;
            }
                        #line default
        }
예제 #5
0
        public static global::haxe.root.Array str2blks(string str)
        {
            unchecked {
                                #line 134 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                global::haxe.io.Bytes str1 = global::haxe.io.Bytes.ofString(str, null);
                                #line 136 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int nblk = ((((str1.length + 8) >> 6)) + 1);
                global::haxe.root.Array blks = new global::haxe.root.Array();
                                #line 140 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int blksSize = (nblk * 16);
                                #line 142 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set((blksSize - 1), 0))));
                                #line 150 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int i   = 0;
                int max = str1.length;
                                #line 152 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int l = (max * 8);
                while ((i < max))
                {
                                        #line 154 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    {
                                                #line 154 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                        int __temp_index1 = (i >> 2);
                                                #line 154 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                        int __temp_expr2 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(__temp_index1, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(__temp_index1)))) | (((int)(((byte)(str1.b[i])))) << ((((l + i)) % 4) * 8)))))));
                    }

                                        #line 155 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    ++i;
                }

                                #line 157 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                {
                                        #line 157 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    int __temp_index2 = (i >> 2);
                                        #line 157 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    int __temp_expr3 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(__temp_index2, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(__temp_index2)))) | (128 << ((((l + i)) % 4) * 8)))))));
                }

                                #line 158 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int k            = ((nblk * 16) - 2);
                int __temp_expr4 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (l & 255)))));
                                #line 160 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int __temp_expr5 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(k)))) | (((((int)((((uint)(l)) >> 8))) & 255)) << 8))))));
                int __temp_expr6 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(k)))) | (((((int)((((uint)(l)) >> 16))) & 255)) << 16))))));
                                #line 162 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int __temp_expr7 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(k)))) | (((((int)((((uint)(l)) >> 24))) & 255)) << 24))))));
                return(blks);
            }
                        #line default
        }
예제 #6
0
        public static global::haxe.root.Array bytes2blks(global::haxe.io.Bytes b)
        {
            unchecked {
                                #line 103 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int nblk = ((((b.length + 8) >> 6)) + 1);
                global::haxe.root.Array blks = new global::haxe.root.Array();
                                #line 107 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int blksSize = (nblk * 16);
                                #line 109 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set((blksSize - 1), 0))));
                                #line 117 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int i = 0;
                while ((i < b.length))
                {
                                        #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    {
                                                #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                        int __temp_index1 = (i >> 2);
                                                #line 119 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                        int __temp_expr2 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(__temp_index1, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(__temp_index1)))) | (((int)(((byte)(b.b[i])))) << (((((((b.length << 3)) + i) & 3)) << 3))))))));
                    }

                                        #line 120 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    ++i;
                }

                                #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                {
                                        #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    int __temp_index2 = (i >> 2);
                                        #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                    int __temp_expr3 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(__temp_index2, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(__temp_index2)))) | (128 << (((((b.length * 8) + i)) % 4) * 8)))))));
                }

                                #line 123 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int l = (b.length * 8);
                int k = ((nblk * 16) - 2);
                                #line 125 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int __temp_expr4 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (l & 255)))));
                int __temp_expr5 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(k)))) | (((((int)((((uint)(l)) >> 8))) & 255)) << 8))))));
                                #line 127 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                int __temp_expr6 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(k)))) | (((((int)((((uint)(l)) >> 16))) & 255)) << 16))))));
                int __temp_expr7 = ((int)(global::haxe.lang.Runtime.toInt(blks.__set(k, (((int)(global::haxe.lang.Runtime.toInt(blks.__get(k)))) | (((((int)((((uint)(l)) >> 24))) & 255)) << 24))))));
                                #line 129 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Md5.hx"
                return(blks);
            }
                        #line default
        }
예제 #7
0
        public static global::haxe.root.Array toArray <T1>(T1[] this1)
        {
                        #line 202 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
            global::haxe.root.Array a = new global::haxe.root.Array();
            int len = (((T1[])(this1)) as global::System.Array).Length;
                        #line 209 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
            {
                                #line 209 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
                int _g = 0;
                                #line 209 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
                int _g1 = len;
                                #line 209 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
                while ((_g < _g1))
                {
                                        #line 209 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
                    int i            = _g++;
                    T1  __temp_expr1 = ((T1)(a.__set(i, ((T1)(((T1[])(this1))[i])))));
                }
            }

                        #line 211 "C:\\HaxeToolkit\\haxe\\std\\haxe\\ds\\Vector.hx"
            return(a);
        }
예제 #8
0
        public virtual global::haxe.zip.Huffman make(global::haxe.root.Array lengths, int pos, int nlengths, int maxbits)
        {
            unchecked {
                                #line 87 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                global::haxe.root.Array counts = new global::haxe.root.Array();
                global::haxe.root.Array tmp    = new global::haxe.root.Array();
                                #line 89 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                if ((maxbits > 32))
                {
                                        #line 90 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    throw global::haxe.lang.HaxeException.wrap("Invalid huffman");
                }

                                #line 91 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                {
                                        #line 91 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g = 0;
                                        #line 91 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g1 = maxbits;
                                        #line 91 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    while ((_g < _g1))
                    {
                                                #line 91 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        int i = _g++;
                        counts.push(0);
                                                #line 93 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        tmp.push(0);
                    }
                }

                                #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                {
                                        #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g2 = 0;
                                        #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g3 = nlengths;
                                        #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    while ((_g2 < _g3))
                    {
                                                #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        int i1 = _g2++;
                        int p  = ((int)(global::haxe.lang.Runtime.toInt(lengths.__get((i1 + pos)))));
                                                #line 97 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        if ((p >= maxbits))
                        {
                                                        #line 98 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            throw global::haxe.lang.HaxeException.wrap("Invalid huffman");
                        }

                                                #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        {
                                                        #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            int __temp_arrVal1 = ((int)(global::haxe.lang.Runtime.toInt(counts.__get(p))));
                                                        #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            int __temp_arrRet2 = __temp_arrVal1++;
                                                        #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(counts.__set(p, __temp_arrVal1))));
                                                        #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            int __temp_expr2 = __temp_arrRet2;
                        }
                    }
                }

                                #line 101 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                int code = 0;
                {
                                        #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g4 = 1;
                                        #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g5 = (maxbits - 1);
                                        #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    while ((_g4 < _g5))
                    {
                                                #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        int i2 = _g4++;
                        code = ((code + ((int)(global::haxe.lang.Runtime.toInt(counts.__get(i2))))) << 1);
                                                #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        int __temp_expr3 = ((int)(global::haxe.lang.Runtime.toInt(tmp.__set(i2, code))));
                    }
                }

                                #line 106 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                global::haxe.ds.IntMap bits = new global::haxe.ds.IntMap();
                {
                                        #line 107 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g6 = 0;
                                        #line 107 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    int _g7 = nlengths;
                                        #line 107 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                    while ((_g6 < _g7))
                    {
                                                #line 107 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        int i3 = _g6++;
                        int l  = ((int)(global::haxe.lang.Runtime.toInt(lengths.__get((i3 + pos)))));
                                                #line 109 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                        if ((l != 0))
                        {
                                                        #line 110 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            int n            = ((int)(global::haxe.lang.Runtime.toInt(tmp.__get((l - 1)))));
                            int __temp_expr4 = ((int)(global::haxe.lang.Runtime.toInt(tmp.__set((l - 1), (n + 1)))));
                                                        #line 112 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                            bits.@set(((int)(((n << 5) | l))), ((object)(i3)));
                        }
                    }
                }

                                #line 115 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                return(this.treeCompress(global::haxe.zip.Huffman.NeedBit(this.treeMake(bits, maxbits, 0, 1), this.treeMake(bits, maxbits, 1, 1))));
            }
                        #line default
        }
예제 #9
0
 public virtual void treeWalk(global::haxe.root.Array table, int p, int cd, int d, global::haxe.zip.Huffman t)
 {
     unchecked {
                         #line 63 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
         if ((t._hx_index == 1))
         {
                                 #line 64 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
             global::haxe.zip.Huffman b = (t as global::haxe.zip.Huffman_NeedBit).right;
                                 #line 64 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
             global::haxe.zip.Huffman a = (t as global::haxe.zip.Huffman_NeedBit).left;
             if ((d > 0))
             {
                                         #line 66 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                 this.treeWalk(table, p, (cd + 1), (d - 1), a);
                 this.treeWalk(table, (p | (1 << cd)), (cd + 1), (d - 1), b);
             }
             else
             {
                                         #line 69 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
                 global::haxe.zip.Huffman __temp_expr2 = ((global::haxe.zip.Huffman)(table.__set(p, this.treeCompress(t))));
             }
         }
         else
         {
                                 #line 71 "C:\\HaxeToolkit\\haxe\\std\\haxe\\zip\\Huffman.hx"
             global::haxe.zip.Huffman __temp_expr1 = ((global::haxe.zip.Huffman)(table.__set(p, this.treeCompress(t))));
         }
     }
                 #line default
 }
예제 #10
0
        public virtual global::haxe.root.Array doEncode(global::haxe.root.Array x)
        {
            unchecked {
                                #line 51 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                global::haxe.root.Array w = new global::haxe.root.Array();
                                #line 53 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int a = 1732584193;
                int b = -271733879;
                                #line 55 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int c = -1732584194;
                int d = 271733878;
                                #line 57 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int e = -1009589776;
                                #line 59 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                int i = 0;
                while ((i < x.length))
                {
                                        #line 61 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int olda = a;
                    int oldb = b;
                                        #line 63 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int oldc = c;
                    int oldd = d;
                                        #line 65 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int olde = e;
                                        #line 67 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    int j = 0;
                    while ((j < 80))
                    {
                                                #line 69 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        if ((j < 16))
                        {
                                                        #line 70 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                            int __temp_expr2 = ((int)(global::haxe.lang.Runtime.toInt(w.__set(j, ((int)(global::haxe.lang.Runtime.toInt(x.__get((i + j)))))))));
                        }
                        else
                        {
                                                        #line 72 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                            int num = (((((int)(global::haxe.lang.Runtime.toInt(w.__get((j - 3))))) ^ ((int)(global::haxe.lang.Runtime.toInt(w.__get((j - 8)))))) ^ ((int)(global::haxe.lang.Runtime.toInt(w.__get((j - 14)))))) ^ ((int)(global::haxe.lang.Runtime.toInt(w.__get((j - 16))))));
                                                        #line 72 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                            int __temp_expr1 = ((int)(global::haxe.lang.Runtime.toInt(w.__set(j, ((num << 1) | ((int)((((uint)(num)) >> 31))))))));
                        }

                                                #line 73 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        int t = (((((((a << 5) | ((int)((((uint)(a)) >> 27))))) + this.ft(j, b, c, d)) + e) + ((int)(global::haxe.lang.Runtime.toInt(w.__get(j))))) + this.kt(j));
                        e = d;
                                                #line 75 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        d = c;
                        c = ((b << 30) | ((int)((((uint)(b)) >> 2))));
                                                #line 77 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        b = a;
                        a = t;
                                                #line 79 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                        ++j;
                    }

                                        #line 81 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    a += olda;
                    b += oldb;
                                        #line 83 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    c += oldc;
                    d += oldd;
                                        #line 85 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                    e += olde;
                    i += 16;
                }

                                #line 88 "C:\\HaxeToolkit\\haxe\\std\\haxe\\crypto\\Sha1.hx"
                return(new global::haxe.root.Array(new object[] { a, b, c, d, e }));
            }
                        #line default
        }