Esempio n. 1
0
 public void Append(string str)
 {
     if (IsUnicode)
     {
         UnicodeBuilder.Append(str);
     }
     else
     {
         BinaryBuilder.AddRange(encoding.GetBytes(str));
     }
 }
Esempio n. 2
0
 public void Append(char[] buffer, int start, int length)
 {
     if (IsUnicode)
     {
         UnicodeBuilder.Append(buffer, start, length);
     }
     else
     {
         BinaryBuilder.AddRange(encoding.GetBytes(buffer, start, length));
     }
 }
Esempio n. 3
0
 public PHP.Core.AST.Literal CreateLiteral()
 {
     if (IsBinary)
     {
         return(new PHP.Core.AST.BinaryStringLiteral(span, BinaryBuilder.ToArray()));
     }
     else
     {
         return(new PHP.Core.AST.StringLiteral(span, UnicodeBuilder.ToString()));
     }
 }
Esempio n. 4
0
 public PHP.Core.AST.Literal CreateLiteral(PHP.Core.Parsers.Position position)
 {
     if (IsBinary)
     {
         return(new PHP.Core.AST.BinaryStringLiteral(position, new PhpBytes(BinaryBuilder.ToArray())));
     }
     else
     {
         return(new PHP.Core.AST.StringLiteral(position, UnicodeBuilder.ToString()));
     }
 }
Esempio n. 5
0
 public Literal CreateLiteral()
 {
     if (IsBinary)
     {
         return(new BinaryStringLiteral(span, BinaryBuilder.ToArray()));
     }
     else
     {
         return(new StringLiteral(span, UnicodeBuilder.ToString()));
     }
 }
Esempio n. 6
0
        public void Append(byte b)
        {
            // force binary string

            if (IsUnicode && b <= 0x7f)
            {
                UnicodeBuilder.Append((char)b);
            }
            else
            {
                // we have to store the string as a single-byte array
                BinaryBuilder.Add(b);
            }
        }
Esempio n. 7
0
        public void Append(int c)
        {
            Debug.Assert(c >= 0);

            //if (c <= 0xff)
            if (IsBinary)
            {
                BinaryBuilder.Add((byte)c);
            }
            else
            {
                UnicodeBuilder.Append((char)c);
            }
        }
Esempio n. 8
0
        public void Append(byte b)
        {
            // force binary string

            if (IsUnicode)
            {
                encodeBytes[0] = b;
                UnicodeBuilder.Append(encodeChars, 0, encoding.GetChars(encodeBytes, 0, 1, encodeChars, 0));
            }
            else
            {
                BinaryBuilder.Add(b);
            }
        }
Esempio n. 9
0
 public void Append(char c)
 {
     if (IsUnicode)
     {
         UnicodeBuilder.Append(c);
     }
     else
     {
         encodeChars[0] = c;
         int count = encoding.GetBytes(encodeChars, 0, 1, encodeBytes, 0);
         for (int i = 0; i < count; ++i)
         {
             BinaryBuilder.Add(encodeBytes[i]);
         }
     }
 }
Esempio n. 10
0
 public PhpStringBuilder(Encoding /*!*/ encoding, string /*!*/ value)
     : this(encoding, false, value.Length)
 {
     UnicodeBuilder.Append(value);
 }