Beispiel #1
0
        public virtual string toHex()
        {
            unchecked {
                                #line 525 "/opt/haxe/std/haxe/io/Bytes.hx"
                global::StringBuf      s     = new global::StringBuf();
                global::Array <object> chars = new global::Array <object>(new object[] {});
                                #line 527 "/opt/haxe/std/haxe/io/Bytes.hx"
                string str = "0123456789abcdef";
                {
                                        #line 528 "/opt/haxe/std/haxe/io/Bytes.hx"
                    int _g = 0;
                                        #line 528 "/opt/haxe/std/haxe/io/Bytes.hx"
                    int _g1 = str.Length;
                                        #line 528 "/opt/haxe/std/haxe/io/Bytes.hx"
                    while ((_g < _g1))
                    {
                                                #line 528 "/opt/haxe/std/haxe/io/Bytes.hx"
                        int i = _g++;
                        chars.push((global::haxe.lang.StringExt.charCodeAt(str, i)).toDynamic());
                    }
                }

                                #line 530 "/opt/haxe/std/haxe/io/Bytes.hx"
                {
                                        #line 530 "/opt/haxe/std/haxe/io/Bytes.hx"
                    int _g2 = 0;
                                        #line 530 "/opt/haxe/std/haxe/io/Bytes.hx"
                    int _g3 = this.length;
                                        #line 530 "/opt/haxe/std/haxe/io/Bytes.hx"
                    while ((_g2 < _g3))
                    {
                                                #line 530 "/opt/haxe/std/haxe/io/Bytes.hx"
                        int i1 = _g2++;
                        int c  = ((int)(this.b[i1]));
                                                #line 532 "/opt/haxe/std/haxe/io/Bytes.hx"
                        s.addChar(((int)(global::haxe.lang.Runtime.toInt(chars[(c >> 4)]))));
                        s.addChar(((int)(global::haxe.lang.Runtime.toInt(chars[(c & 15)]))));
                    }
                }

                                #line 535 "/opt/haxe/std/haxe/io/Bytes.hx"
                return(s.b.ToString());
            }
                        #line default
        }
Beispiel #2
0
        public static string buildArgumentsString(global::Array <string> args)
        {
            unchecked {
                                #line 80 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                if ((global::Sys.systemName() == "Windows"))
                {
                                        #line 82 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                    global::Array <string> _g = new global::Array <string>(new string[] {});
                    {
                                                #line 83 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                        int _g1 = 0;
                                                #line 83 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                        while ((_g1 < args.length))
                        {
                                                        #line 83 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                            string a = args[_g1];
                                                        #line 83 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                            ++_g1;
                            _g.push(global::haxe.SysTools.quoteWinArg(a, false));
                        }
                    }

                                        #line 82 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                    return(_g.@join(" "));
                }
                else
                {
                                        #line 89 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                    global::Array <string> _g2 = new global::Array <string>(new string[] {});
                    {
                                                #line 90 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                        int _g3 = 0;
                                                #line 90 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                        while ((_g3 < args.length))
                        {
                                                        #line 90 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                            string arg = args[_g3];
                                                        #line 90 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                            ++_g3;
                            global::StringBuf b = new global::StringBuf();
                                                        #line 92 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                            b.b.Append(((string)("\"")));
                            {
                                                                #line 93 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                int _g4 = 0;
                                                                #line 93 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                int _g5 = arg.Length;
                                                                #line 93 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                while ((_g4 < _g5))
                                {
                                                                        #line 93 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                    int i = _g4++;
                                    global::haxe.lang.Null <int> c = global::haxe.lang.StringExt.charCodeAt(arg, i);
                                                                        #line 95 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                    if (!(c.hasValue))
                                    {
                                    }
                                    else
                                    {
                                                                                #line 95 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                        switch (((c)).@value)
                                        {
                                        case 34:
                                        case 92:
                                        {
                                                                                                #line 97 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                            b.addChar(92);
                                                                                                #line 97 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                            break;
                                        }


                                        default:
                                        {
                                                                                                #line 98 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                            break;
                                        }
                                        }
                                    }

                                                                        #line 100 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                                    b.addChar((c).@value);
                                }
                            }

                                                        #line 102 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                            b.b.Append(((string)("\"")));
                            _g2.push(b.b.ToString());
                        }
                    }

                                        #line 89 "/opt/haxe/std/cs/_std/sys/io/Process.hx"
                    return(_g2.@join(" "));
                }
            }
                        #line default
        }
    public static string quoteWinArg(string argument, bool escapeMetaCharacters)
    {
        unchecked {
                        #line 578 "/opt/haxe/std/StringTools.hx"
            string argument1 = argument;
                        #line 578 "/opt/haxe/std/StringTools.hx"
            if (!(new global::EReg("^[^ \t\\\\\"]+$", "").match(argument1)))
            {
                                #line 578 "/opt/haxe/std/StringTools.hx"
                global::StringBuf result = new global::StringBuf();
                                #line 578 "/opt/haxe/std/StringTools.hx"
                bool needquote = (((global::haxe.lang.StringExt.indexOf(argument1, " ", default(global::haxe.lang.Null <int>)) != -1) || (global::haxe.lang.StringExt.indexOf(argument1, "\t", default(global::haxe.lang.Null <int>)) != -1)) || (argument1 == ""));
                                #line 578 "/opt/haxe/std/StringTools.hx"
                if (needquote)
                {
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    result.b.Append(((string)("\"")));
                }

                                #line 578 "/opt/haxe/std/StringTools.hx"
                global::StringBuf bs_buf = new global::StringBuf();
                                #line 578 "/opt/haxe/std/StringTools.hx"
                {
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    int _g = 0;
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    int _g1 = argument1.Length;
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    while ((_g < _g1))
                    {
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        int i = _g++;
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        {
                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                            global::haxe.lang.Null <int> _g2 = global::haxe.lang.StringExt.charCodeAt(argument1, i);
                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                            if (!(_g2.hasValue))
                            {
                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                global::haxe.lang.Null <int> c = _g2;
                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                {
                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                    if ((bs_buf.b.Length > 0))
                                    {
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                        {
                                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                            string x = bs_buf.b.ToString();
                                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                            result.b.Append(((string)(global::Std.@string(x))));
                                        }

                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                        bs_buf = new global::StringBuf();
                                    }

                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                    result.addChar((c).@value);
                                }
                            }
                            else
                            {
                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                switch (((_g2)).@value)
                                {
                                case 34:
                                {
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    string bs = bs_buf.b.ToString();
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    result.b.Append(((string)(global::Std.@string(bs))));
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    result.b.Append(((string)(global::Std.@string(bs))));
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    bs_buf = new global::StringBuf();
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    result.b.Append(((string)("\\\"")));
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    break;
                                }


                                case 92:
                                {
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    bs_buf.b.Append(((string)("\\")));
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    break;
                                }


                                default:
                                {
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    global::haxe.lang.Null <int> c1 = _g2;
                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    {
                                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                        if ((bs_buf.b.Length > 0))
                                        {
                                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                            {
                                                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                                string x1 = bs_buf.b.ToString();
                                                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                                result.b.Append(((string)(global::Std.@string(x1))));
                                            }

                                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                            bs_buf = new global::StringBuf();
                                        }

                                                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                                        result.addChar((c1).@value);
                                    }

                                                                                #line 578 "/opt/haxe/std/StringTools.hx"
                                    break;
                                }
                                }
                            }
                        }
                    }
                }

                                #line 578 "/opt/haxe/std/StringTools.hx"
                {
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    string x2 = bs_buf.b.ToString();
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    result.b.Append(((string)(global::Std.@string(x2))));
                }

                                #line 578 "/opt/haxe/std/StringTools.hx"
                if (needquote)
                {
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    {
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        string x3 = bs_buf.b.ToString();
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        result.b.Append(((string)(global::Std.@string(x3))));
                    }

                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    result.b.Append(((string)("\"")));
                }

                                #line 578 "/opt/haxe/std/StringTools.hx"
                argument1 = result.b.ToString();
            }

                        #line 578 "/opt/haxe/std/StringTools.hx"
            if (escapeMetaCharacters)
            {
                                #line 578 "/opt/haxe/std/StringTools.hx"
                global::StringBuf result1 = new global::StringBuf();
                                #line 578 "/opt/haxe/std/StringTools.hx"
                {
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    int _g3 = 0;
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    int _g4 = argument1.Length;
                                        #line 578 "/opt/haxe/std/StringTools.hx"
                    while ((_g3 < _g4))
                    {
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        int i1 = _g3++;
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        global::haxe.lang.Null <int> c2 = global::haxe.lang.StringExt.charCodeAt(argument1, i1);
                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        if ((global::haxe.SysTools.winMetaCharacters.indexOf((c2).@value, default(global::haxe.lang.Null <int>)) >= 0))
                        {
                                                        #line 578 "/opt/haxe/std/StringTools.hx"
                            result1.addChar(94);
                        }

                                                #line 578 "/opt/haxe/std/StringTools.hx"
                        result1.addChar((c2).@value);
                    }
                }

                                #line 578 "/opt/haxe/std/StringTools.hx"
                return(result1.b.ToString());
            }
            else
            {
                                #line 578 "/opt/haxe/std/StringTools.hx"
                return(argument1);
            }
        }
                #line default
    }
    public static string htmlEscape(string s, global::haxe.lang.Null <bool> quotes)
    {
        unchecked {
                        #line 159 "/opt/haxe/std/StringTools.hx"
            global::StringBuf buf = new global::StringBuf();
            {
                                #line 160 "/opt/haxe/std/StringTools.hx"
                int _g_offset = 0;
                                #line 160 "/opt/haxe/std/StringTools.hx"
                string _g_s = s;
                                #line 160 "/opt/haxe/std/StringTools.hx"
                while ((_g_offset < _g_s.Length))
                {
                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    string s1 = _g_s;
                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    int index = _g_offset++;
                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    int c = (((((uint)(index)) < s1.Length)) ? (((int)(s1[index]))) : (-1));
                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    if (((c >= 55296) && (c <= 56319)))
                    {
                                                #line 160 "/opt/haxe/std/StringTools.hx"
                        int index1 = (index + 1);
                                                #line 597 "/opt/haxe/std/StringTools.hx"
                        c = (((c - 55232) << 10) | (((((((uint)(index1)) < s1.Length)) ? (((int)(s1[index1]))) : (-1))) & 1023));
                    }

                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    int c1 = c;
                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    if ((c1 >= 65536))
                    {
                                                #line 160 "/opt/haxe/std/StringTools.hx"
                        ++_g_offset;
                    }

                                        #line 160 "/opt/haxe/std/StringTools.hx"
                    int code = c1;
                    switch (code)
                    {
                    case 34:
                    {
                                                        #line 168 "/opt/haxe/std/StringTools.hx"
                        if (((quotes)).@value)
                        {
                                                                #line 169 "/opt/haxe/std/StringTools.hx"
                            buf.b.Append(((string)("&quot;")));
                        }
                        else
                        {
                                                                #line 173 "/opt/haxe/std/StringTools.hx"
                            buf.addChar(code);
                        }

                                                        #line 168 "/opt/haxe/std/StringTools.hx"
                        break;
                    }


                    case 38:
                    {
                                                        #line 163 "/opt/haxe/std/StringTools.hx"
                        buf.b.Append(((string)("&amp;")));
                                                        #line 163 "/opt/haxe/std/StringTools.hx"
                        break;
                    }


                    case 39:
                    {
                                                        #line 170 "/opt/haxe/std/StringTools.hx"
                        if (((quotes)).@value)
                        {
                                                                #line 171 "/opt/haxe/std/StringTools.hx"
                            buf.b.Append(((string)("&#039;")));
                        }
                        else
                        {
                                                                #line 173 "/opt/haxe/std/StringTools.hx"
                            buf.addChar(code);
                        }

                                                        #line 170 "/opt/haxe/std/StringTools.hx"
                        break;
                    }


                    case 60:
                    {
                                                        #line 165 "/opt/haxe/std/StringTools.hx"
                        buf.b.Append(((string)("&lt;")));
                                                        #line 165 "/opt/haxe/std/StringTools.hx"
                        break;
                    }


                    case 62:
                    {
                                                        #line 167 "/opt/haxe/std/StringTools.hx"
                        buf.b.Append(((string)("&gt;")));
                                                        #line 167 "/opt/haxe/std/StringTools.hx"
                        break;
                    }


                    default:
                    {
                                                        #line 173 "/opt/haxe/std/StringTools.hx"
                        buf.addChar(code);
                                                        #line 173 "/opt/haxe/std/StringTools.hx"
                        break;
                    }
                    }
                }
            }

                        #line 176 "/opt/haxe/std/StringTools.hx"
            return(buf.b.ToString());
        }
                #line default
    }
Beispiel #5
0
        public static string normalize(string path)
        {
            unchecked {
                                #line 211 "/opt/haxe/std/haxe/io/Path.hx"
                string slash = "/";
                path = global::haxe.lang.StringExt.split(path, "\\").@join(slash);
                                #line 213 "/opt/haxe/std/haxe/io/Path.hx"
                if ((path == slash))
                {
                                        #line 214 "/opt/haxe/std/haxe/io/Path.hx"
                    return(slash);
                }

                                #line 216 "/opt/haxe/std/haxe/io/Path.hx"
                global::Array <string> target = new global::Array <string>(new string[] {});
                                #line 218 "/opt/haxe/std/haxe/io/Path.hx"
                {
                                        #line 218 "/opt/haxe/std/haxe/io/Path.hx"
                    int _g = 0;
                                        #line 218 "/opt/haxe/std/haxe/io/Path.hx"
                    global::Array <string> _g1 = global::haxe.lang.StringExt.split(path, slash);
                                        #line 218 "/opt/haxe/std/haxe/io/Path.hx"
                    while ((_g < _g1.length))
                    {
                                                #line 218 "/opt/haxe/std/haxe/io/Path.hx"
                        string token = _g1[_g];
                                                #line 218 "/opt/haxe/std/haxe/io/Path.hx"
                        ++_g;
                        if ((((token == "..") && (target.length > 0)) && (target[(target.length - 1)] != "..")))
                        {
                                                        #line 220 "/opt/haxe/std/haxe/io/Path.hx"
                            string __temp_expr1 = global::haxe.lang.Runtime.toString((target.pop()).toDynamic());
                        }
                        else if ((token == ""))
                        {
                                                        #line 222 "/opt/haxe/std/haxe/io/Path.hx"
                            if (((target.length > 0) || global::haxe.lang.Runtime.eq((global::haxe.lang.StringExt.charCodeAt(path, 0)).toDynamic(), 47)))
                            {
                                                                #line 223 "/opt/haxe/std/haxe/io/Path.hx"
                                target.push(token);
                            }
                        }
                        else if ((token != "."))
                        {
                                                        #line 226 "/opt/haxe/std/haxe/io/Path.hx"
                            target.push(token);
                        }
                    }
                }

                                #line 230 "/opt/haxe/std/haxe/io/Path.hx"
                string            tmp = target.@join(slash);
                global::StringBuf acc = new global::StringBuf();
                                #line 232 "/opt/haxe/std/haxe/io/Path.hx"
                bool colon   = false;
                bool slashes = false;
                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                {
                                        #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                    int _g2_offset = 0;
                                        #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                    string _g2_s = tmp;
                                        #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                    while ((_g2_offset < _g2_s.Length))
                    {
                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        string s = _g2_s;
                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        int index = _g2_offset++;
                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        int c = (((((uint)(index)) < s.Length)) ? (((int)(s[index]))) : (-1));
                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        if (((c >= 55296) && (c <= 56319)))
                        {
                                                        #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                            int index1 = (index + 1);
                                                        #line 597 "/opt/haxe/std/StringTools.hx"
                            c = (((c - 55232) << 10) | (((((((uint)(index1)) < s.Length)) ? (((int)(s[index1]))) : (-1))) & 1023));
                        }

                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        int c1 = c;
                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        if ((c1 >= 65536))
                        {
                                                        #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                            ++_g2_offset;
                        }

                                                #line 235 "/opt/haxe/std/haxe/io/Path.hx"
                        int c2 = c1;
                        switch (c2)
                        {
                        case 47:
                        {
                                                                #line 244 "/opt/haxe/std/haxe/io/Path.hx"
                            if (!(colon))
                            {
                                                                        #line 245 "/opt/haxe/std/haxe/io/Path.hx"
                                slashes = true;
                            }
                            else
                            {
                                                                        #line 246 "/opt/haxe/std/haxe/io/Path.hx"
                                int i = c2;
                                                                        #line 246 "/opt/haxe/std/haxe/io/Path.hx"
                                {
                                                                                #line 247 "/opt/haxe/std/haxe/io/Path.hx"
                                    colon = false;
                                    if (slashes)
                                    {
                                                                                        #line 249 "/opt/haxe/std/haxe/io/Path.hx"
                                        acc.b.Append(((string)("/")));
                                        slashes = false;
                                    }

                                                                                #line 252 "/opt/haxe/std/haxe/io/Path.hx"
                                    acc.addChar(i);
                                }
                            }

                                                                #line 244 "/opt/haxe/std/haxe/io/Path.hx"
                            break;
                        }


                        case 58:
                        {
                                                                #line 242 "/opt/haxe/std/haxe/io/Path.hx"
                            acc.b.Append(((string)(":")));
                            colon = true;
                                                                #line 241 "/opt/haxe/std/haxe/io/Path.hx"
                            break;
                        }


                        default:
                        {
                                                                #line 246 "/opt/haxe/std/haxe/io/Path.hx"
                            int i1 = c2;
                                                                #line 246 "/opt/haxe/std/haxe/io/Path.hx"
                            {
                                                                        #line 247 "/opt/haxe/std/haxe/io/Path.hx"
                                colon = false;
                                if (slashes)
                                {
                                                                                #line 249 "/opt/haxe/std/haxe/io/Path.hx"
                                    acc.b.Append(((string)("/")));
                                    slashes = false;
                                }

                                                                        #line 252 "/opt/haxe/std/haxe/io/Path.hx"
                                acc.addChar(i1);
                            }

                                                                #line 246 "/opt/haxe/std/haxe/io/Path.hx"
                            break;
                        }
                        }
                    }
                }

                                #line 256 "/opt/haxe/std/haxe/io/Path.hx"
                return(acc.b.ToString());
            }
                        #line default
        }