public override void CaseAStringConstExp(AStringConstExp node)
        {
            List<string> strings = new List<string>();
            StringBuilder name = new StringBuilder("");
            bool previousWasUnicode = false;
            foreach (char c in node.GetStringLiteral().Text)
            {
                if (c > 0xFF)
                {
                    byte[] utf8Bytes = Encoding.UTF8.GetBytes(c.ToString());
                    foreach (byte b in utf8Bytes)
                    {
                        name.Append("\\x");
                        name.AppendFormat("{0:x2}", b);
                    }
                    previousWasUnicode = true;
                }
                else
                {
                    if (previousWasUnicode && ((c >= '0' && c <= '9') || (char.ToLower(c) >= 'a' && char.ToLower(c) <= 'f')))
                    {
                        strings.Add(name.ToString());
                        name.Clear();
                    }

                    name.Append(c);

                    previousWasUnicode = false;
                }
            }
            strings.Add(name.ToString());

            if (strings.Count == 1)
                node.GetStringLiteral().Text = name.ToString();
            else
            {
                strings[0] = strings[0].Remove(0, 1);
                strings[strings.Count - 1] = strings[strings.Count - 1].Substring(0, strings[strings.Count - 1].Length - 1);
                AStringConstExp left = new AStringConstExp(new TStringLiteral("\"" + strings[0] + "\""));
                strings.RemoveAt(0);
                data.StringsDontJoinRight.Add(left);
                data.ExpTypes[left] = new ANamedType(new TIdentifier("string"), null);
                node.ReplaceBy(Combine(left, strings));
            }
        }
 public override void CaseAStringConstExp(AStringConstExp node)
 {
     Write(node.GetStringLiteral().Text);
 }
 public override void CaseAStringConstExp(AStringConstExp node)
 {
     InAStringConstExp(node);
     if (node.GetStringLiteral() != null)
     {
         node.GetStringLiteral().Apply(this);
     }
     OutAStringConstExp(node);
 }
 public override void CaseAStringConstExp(AStringConstExp node)
 {
     Value += node.GetStringLiteral().Text;
 }