Example #1
0
        public bool TryGetValue(out double value)
        {
            switch (m_Value)
            {
            case "false": value = 0; return(true);

            case "true": value = 1; return(true);

            default: return(SLJsonConvert.TryParse(m_Value, out value));
            }
        }
Example #2
0
 void WriteDateTime(DateTime value)
 {
     m_Target.Append('"');
     m_Target.Append(SLJsonConvert.ToString(value.Year, "0000")).Append('-');
     m_Target.Append(SLJsonConvert.ToString(value.Month, "00")).Append('-');
     m_Target.Append(SLJsonConvert.ToString(value.Day, "00")).Append(' ');
     m_Target.Append(SLJsonConvert.ToString(value.Hour, "00")).Append(':');
     m_Target.Append(SLJsonConvert.ToString(value.Minute, "00")).Append(':');
     m_Target.Append(SLJsonConvert.ToString(value.Second, "00"));
     m_Target.Append('"');
 }
Example #3
0
        void WriteQuoted(string value)
        {
            if (value == null)
            {
                m_Target.Append("null"); // See also WriteValueNull
                return;
            }

            m_Target.Append('"');
            int len = value.Length;

            for (int i = 0; i < len; i++)
            {
                char c = value[i];
                switch (c)
                {
                case '\b': m_Target.Append("\\b"); break; // Backspace      : \u0008

                case '\t': m_Target.Append("\\t"); break; // Horizontal tab : \u0009

                case '\n': m_Target.Append("\\n"); break; // Line feed      : \u000A

                case '\f': m_Target.Append("\\f"); break; // Form feed      : \u000C

                case '\r': m_Target.Append("\\r"); break; // Carriage return: \u000D

                case '"': m_Target.Append("\\\""); break;

                case '/': m_Target.Append("\\/"); break;

                case '\\': m_Target.Append("\\\\"); break;

                default:
                    if (!IsControl(c))
                    {
                        m_Target.Append(c);
                    }
                    else
                    {
                        m_Target.Append("\\u");
                        m_Target.Append(SLJsonConvert.ToString((int)c, "X4"));
                    }
                    break;
                }
            }
            m_Target.Append('"');
        }
Example #4
0
        void WriteDateTime(DateTime value)
        {
            m_Target.Append('"');
            m_Target.Append(SLJsonConvert.ToString(value.Year, "0000")).Append('-');
            m_Target.Append(SLJsonConvert.ToString(value.Month, "00")).Append('-');
            m_Target.Append(SLJsonConvert.ToString(value.Day, "00")).Append(' ');
            m_Target.Append(SLJsonConvert.ToString(value.Hour, "00")).Append(':');
            m_Target.Append(SLJsonConvert.ToString(value.Minute, "00")).Append(':');
            m_Target.Append(SLJsonConvert.ToString(value.Second, "00"));
            m_Target.Append('"');

            /*
             * sb.Append('"');
             * sb.Append(value.ToString(@"yyyy\-MM\-dd HH\:mm\:ss", CultureInfo.InvariantCulture));
             * sb.Append('"');
             */
        }
Example #5
0
        public override string ToString()
        {
            if (m_Array != null)
            {
                return("Array: [" + SLJsonConvert.ToString(m_Array.Count) + "]");
            }

            if (m_Object != null)
            {
                var sb = new StringBuilder();
                sb.Append("Object: {");
                bool needSep = false;
                foreach (string n in m_Object.Keys)
                {
                    if (needSep)
                    {
                        sb.Append(", ");
                    }
                    else
                    {
                        needSep = true;
                    }
                    sb.Append(n);
                }
                sb.Append('}');
                return(sb.ToString());
            }

            if (IsValue)
            {
                return(m_Value != null ? "Value: " + m_Value : "Value: (null)");
            }

            switch (m_NodeType)
            {
            case SLJsonNodeType.Missing: return("Missing");

            case SLJsonNodeType.Null: return("Null");

            default: return("???");
            }
        }
Example #6
0
 public void WriteValue(double value)
 {
     CheckVS(); m_Target.Append(SLJsonConvert.ToString(value));
 }
Example #7
0
 public override string ToString()
 {
     return("Row: " + SLJsonConvert.ToString(CurrentRow) +
            "; Column: " + SLJsonConvert.ToString(CurrentColumn));
 }
Example #8
0
 public bool TryGetValue(out double value)
 {
     return(SLJsonConvert.TryParse(m_Value, out value));
 }