Exemplo n.º 1
0
    public SValue Serialize()
    {
        SValue value = SValue.NewHash();

        value["regex"]      = SValue.NewBool(regex);
        value["ignoreCase"] = SValue.NewBool(ignoreCase);
        value["escape"]     = SValue.NewBool(escape);
        return(value);
    }
Exemplo n.º 2
0
        public void Values()
        {
            SValue value;

            value = SValue.NewString("text");
            Assert.AreEqual("text", value.String);
            Assert.AreEqual(true, value.IsString);
            Assert.AreEqual(false, value.IsNone);
            Assert.AreEqual(false, value.IsInt);
            Assert.AreEqual(0, value.Int);
            Assert.AreEqual(0, value.Double);
            Assert.AreEqual(false, value.Bool);
            Assert.AreEqual(false, value.IsFloat);
            Assert.AreEqual(false, value.IsLong);

            value = SValue.NewInt(10);
            Assert.AreEqual(10, value.Int);
            Assert.AreEqual(true, value.IsInt);
            Assert.AreEqual(false, value.IsString);
            Assert.AreEqual(false, value.IsNone);

            value = SValue.NewDouble(10.2);
            Assert.AreEqual(10.2, value.Double);
            Assert.AreEqual(0, value.Int);
            Assert.AreEqual(true, value.IsDouble);
            Assert.AreEqual(false, value.IsInt);
            Assert.AreEqual(false, value.IsString);
            Assert.AreEqual(false, value.IsNone);

            value = SValue.NewBool(true);
            Assert.AreEqual(true, value.Bool);
            Assert.AreEqual(0, value.Int);
            Assert.AreEqual(true, value.IsBool);
            Assert.AreEqual(false, value.IsInt);
            Assert.AreEqual(false, value.IsString);
            Assert.AreEqual(false, value.IsNone);

            value = SValue.NewBool(false);
            Assert.AreEqual(false, value.Bool);
            Assert.AreEqual(true, value.IsBool);

            value = SValue.NewFloat(10.5f);
            Assert.AreEqual(10.5f, value.Float);
            Assert.AreEqual(true, value.IsFloat);

            value = SValue.NewLong(10000L);
            Assert.AreEqual(10000L, value.Long);
            Assert.AreEqual(true, value.IsLong);
        }
Exemplo n.º 3
0
 public void SerializeAndDeserialize_Simple()
 {
     Assert.AreEqual("'some text'", SValue.Unserialize(SValue.Serialize(SValue.NewString("some text"))).ToString());
     Assert.AreEqual("''", SValue.Unserialize(SValue.Serialize(SValue.NewString(""))).ToString());
     Assert.AreEqual("''", SValue.Unserialize(SValue.Serialize(SValue.NewString(null))).ToString());
     Assert.AreEqual("10", SValue.Unserialize(SValue.Serialize(SValue.NewInt(10))).ToString());
     Assert.AreEqual("-150", SValue.Unserialize(SValue.Serialize(SValue.NewInt(-150))).ToString());
     Assert.AreEqual("10.1d", SValue.Unserialize(SValue.Serialize(SValue.NewDouble(10.1))).ToString());
     Assert.AreEqual("-0.1d", SValue.Unserialize(SValue.Serialize(SValue.NewDouble(-0.1))).ToString());
     Assert.AreEqual("True", SValue.Unserialize(SValue.Serialize(SValue.NewBool(true))).ToString());
     Assert.AreEqual("False", SValue.Unserialize(SValue.Serialize(SValue.NewBool(false))).ToString());
     Assert.AreEqual("1.5f", SValue.Unserialize(SValue.Serialize(SValue.NewFloat(1.5f))).ToString());
     Assert.AreEqual("2000L", SValue.Unserialize(SValue.Serialize(SValue.NewLong(2000L))).ToString());
     Assert.AreEqual("None", SValue.Unserialize(SValue.Serialize(SValue.None)).ToString());
 }
Exemplo n.º 4
0
        public void StringCantBeNull()
        {
            SValue value;

            value = SValue.NewString("abcd");
            Assert.AreEqual("abcd", value.String);

            value = SValue.NewString("");
            Assert.AreEqual("", value.String);

            value = SValue.NewString(null);
            Assert.AreEqual("", value.String);

            value = SValue.NewBool(true);
            Assert.AreEqual("", value.String);
        }
Exemplo n.º 5
0
        public void ToStringTest()
        {
            SValue value;

            value = SValue.NewBool(false);
            Assert.AreEqual("False", value.ToString());

            value          = SValue.NewHash();
            value["field"] = SValue.NewString("value");
            Assert.AreEqual("{'field': 'value'}", value.ToString());

            value           = SValue.NewHash();
            value["field1"] = SValue.NewString("value1");
            value["field2"] = SValue.NewString("value2");
            Assert.AreEqual("{'field1': 'value1', 'field2': 'value2'}", value.ToString());

            value    = SValue.NewList();
            value[0] = SValue.NewDouble(1.5);
            value[2] = SValue.NewString("value");
            Assert.AreEqual(3, value.ListCount);
            Assert.AreEqual("[1.5d, None, 'value']", value.ToString());
        }
Exemplo n.º 6
0
    public void Save(string postfix, bool rememberOpenedFiles)
    {
        SValue state = SValue.NewHash();

        if (mainForm.WindowState == FormWindowState.Maximized)
        {
            state["width"]  = SValue.NewInt(mainForm.RestoreBounds.Width);
            state["height"] = SValue.NewInt(mainForm.RestoreBounds.Height);
            state["x"]      = SValue.NewInt(mainForm.RestoreBounds.X);
            state["y"]      = SValue.NewInt(mainForm.RestoreBounds.Y);
        }
        else
        {
            state["width"]  = SValue.NewInt(mainForm.Width);
            state["height"] = SValue.NewInt(mainForm.Height);
            state["x"]      = SValue.NewInt(mainForm.Location.X);
            state["y"]      = SValue.NewInt(mainForm.Location.Y);
        }
        state["maximized"] = SValue.NewBool(mainForm.WindowState == FormWindowState.Maximized);
        if (rememberOpenedFiles)
        {
            {
                SValue openedTabs = state.SetNewList("openedTabs");
                foreach (Buffer buffer in mainForm.MainNest.buffers.list)
                {
                    SValue valueI = SValue.NewHash().With("fullPath", SValue.NewString(buffer.FullPath));
                    openedTabs.Add(valueI);
                    if (buffer == mainForm.MainNest.buffers.list.Selected)
                    {
                        state["selectedTab"] = valueI;
                    }
                }
            }
            if (mainForm.MainNest2 != null)
            {
                SValue openedTabs = state.SetNewList("openedTabs2");
                foreach (Buffer buffer in mainForm.MainNest2.buffers.list)
                {
                    SValue valueI = SValue.NewHash().With("fullPath", SValue.NewString(buffer.FullPath));
                    openedTabs.Add(valueI);
                    if (buffer == mainForm.MainNest2.buffers.list.Selected)
                    {
                        state["selectedTab2"] = valueI;
                    }
                }
            }
        }
        state["storage"]      = storage.Serialize();
        state["recently"]     = recently.Serialize();
        state["recentlyDirs"] = recentlyDirs.Serialize();
        state["bm"]           = EncodeGlobalBookmakrs();
        ValuesSerialize(state);
        state["commandHistory"]               = commandHistory.Serialize();
        state["findHistory"]                  = findHistory.Serialize();
        state["findInFilesHistory"]           = findInFilesHistory.Serialize();
        state["findInFilesTempFilter"]        = findInFilesTempFilter.Serialize();
        state["findInFilesTempCurrentFilter"] = SValue.NewString(findInFilesTempCurrentFilter.value);
        state["moveHistory"]                  = moveHistory.Serialize();
        state["replacePatternHistory"]        = replacePatternHistory.Serialize();
        state["replaceHistory"]               = replaceHistory.Serialize();
        state["goToLineHistory"]              = goToLineHistory.Serialize();
        state["findParams"] = findParams.Serialize();
        if (!string.IsNullOrEmpty(NullableCurrentDir))
        {
            state["currentDir"] = SValue.NewString(NullableCurrentDir);
        }
        state["showFileTree"]     = SValue.NewBool(mainForm.FileTreeOpened);
        state["fileTreeExpanded"] = mainForm.FileTree.GetExpandedTemp();
        state["helpPosition"]     = SValue.NewInt(helpPosition);
        state["viHelpPosition"]   = SValue.NewInt(viHelpPosition);
        SerializeSettings(ref state);
        File.WriteAllBytes(GetTempSettingsPath(postfix, AppPath.StartupDir), SValue.Serialize(state));
    }
Exemplo n.º 7
0
 override public SValue GetTemp()
 {
     return(SValue.NewBool(value));
 }