Esempio n. 1
0
        /// <summary>
        /// Обеспечивает запись одного из специальных маркеров
        /// </summary>
        /// <param name="ch">Маркер, который нужно записать</param>
        /// <returns>
        /// <b>true</b>, если запись прошла успешно, <b>false</b> в противном случае
        /// </returns>
        public override bool InOut(SpecialChars ch)
        {
            switch (ch)
            {
            case SpecialChars.Delimiter:
                Writer.Write(EncodeTo64(","));
                break;

            case SpecialChars.ArrayStart:
                Writer.Write(EncodeTo64("["));
                break;

            case SpecialChars.ArrayEnd:
                Writer.Write(EncodeTo64("]"));
                break;

            case SpecialChars.ObjectStart:
                Writer.Write(EncodeTo64("{"));
                break;

            case SpecialChars.ObjectEnd:
                Writer.Write(EncodeTo64("}"));
                break;

            case SpecialChars.Null:
                break;
            }
            return(true);
        }
Esempio n. 2
0
        /// <summary>
        /// Обеспечивает запись одного из специальных маркеров
        /// </summary>
        /// <param name="ch">Маркер, который нужно записать</param>
        /// <returns>
        /// <b>true</b>, если запись прошла успешно, <b>false</b> в противном случае
        /// </returns>
        public override bool InOut(SpecialChars ch)
        {
            switch (ch)
            {
            case SpecialChars.Delimiter:
                Writer.Write(",{1}{0}", _indent, Environment.NewLine);
                break;

            case SpecialChars.ArrayStart:
                _indent += "   ";
                Writer.Write("[{1}{0}", _indent, Environment.NewLine);
                break;

            case SpecialChars.ArrayEnd:
                _indent = _indent.Substring(3);
                Writer.Write("{1}{0}]", _indent, Environment.NewLine);
                break;

            case SpecialChars.ObjectStart:
                _indent += "   ";
                Writer.Write("{1}{2}{0}", _indent, "{", Environment.NewLine);
                break;

            case SpecialChars.ObjectEnd:
                _indent = _indent.Substring(3);
                Writer.Write("{2}{0}{1}", _indent, "}", Environment.NewLine);
                break;

            case SpecialChars.Null:
                break;
            }
            return(true);
        }
Esempio n. 3
0
            internal string NextNamePart()
            {
                SkipWhiteSpace();
                int start = pos;

                for (; pos < typeName.Length; pos++)
                {
                    char c = typeName[pos];
                    if (c == '\\')
                    {
                        pos++;
                        Check(pos < typeName.Length && SpecialChars.IndexOf(typeName[pos]) != -1);
                    }
                    else if (SpecialChars.IndexOf(c) != -1)
                    {
                        break;
                    }
                }
                Check(pos - start != 0);
                if (start == 0 && pos == typeName.Length)
                {
                    return(typeName);
                }
                else
                {
                    return(typeName.Substring(start, pos - start));
                }
            }
        /// <summary>
        /// Проверяет, является ли текущая строка представлением специального маркера
        /// </summary>
        /// <param name="ch">Специальный маркер, на соответствие которому необходимо
        /// проверить текущую строку</param>
        /// <param name="delete">Если <b>true</b>, удаляет маркер, иначе оставляет его для
        /// последующего чтения</param>
        /// <returns>
        /// <para><b>true</b>, если маркеры совпадают, и <b>false</b>, если достигнут конец
        /// файла либо маркеры не совпадают</para>
        /// </returns>
        public override bool InOut(SpecialChars ch, bool delete = true)
        {
            if (_queue.Count == 0)
            {
                return(false);
            }
            var s = delete ? _queue.Dequeue() : _queue.Peek();

            return(ch == ParseSpecialChar(s));
        }
Esempio n. 5
0
        private LexerState SelectState()
        {
            char cs = _iterator.CurrentSymbol;

            if (Char.IsLetter(cs) || cs == SpecialChars.Underscore)
            {
                _state = _wordState;
            }
            else if (Char.IsDigit(cs))
            {
                _state = _numberState;
            }
            else if (cs == SpecialChars.DateQuote)
            {
                _state = _dateState;
            }
            else if (cs == SpecialChars.StringQuote)
            {
                _state = _stringState;
            }
            else if (SpecialChars.IsOperatorChar(cs))
            {
                _state = CommentOrOperatorState(cs);
            }
            else if (cs == SpecialChars.EndOperator)
            {
                SetFixedState(LexemType.EndOperator, Token.Semicolon);
            }
            else if (cs == SpecialChars.QuestionMark)
            {
                SetFixedState(LexemType.Operator, Token.Question);
            }
            else if (cs == SpecialChars.Preprocessor)
            {
                _state = _directiveState;
            }
            else if (cs == SpecialChars.Annotation)
            {
                _iterator.GetContents();
                _iterator.MoveNext();
                _state = _annotationState;
            }
            else
            {
                var cp  = _iterator.GetPositionInfo();
                var exc = new SyntaxErrorException(cp, string.Format("Неизвестный символ {0}", cs));
                if (!HandleError(exc))
                {
                    throw exc;
                }
            }

            return(_state);
        }
Esempio n. 6
0
        public override Lexem ReadNextLexem(SourceCodeIterator iterator)
        {
            bool hasDecimalPoint = false;

            while (true)
            {
                if (Char.IsDigit(iterator.CurrentSymbol))
                {
                    if (!iterator.MoveNext())
                    {
                        var lex = new Lexem()
                        {
                            Type    = LexemType.NumberLiteral,
                            Content = iterator.GetContents()
                        };

                        return(lex);
                    }
                }
                else if (SpecialChars.IsDelimiter(iterator.CurrentSymbol))
                {
                    if (iterator.CurrentSymbol == '.')
                    {
                        if (!hasDecimalPoint)
                        {
                            hasDecimalPoint = true;
                            iterator.MoveNext();
                            continue;
                        }
                        else
                        {
                            throw CreateExceptionOnCurrentLine("Некорректно указана десятичная точка в числе", iterator);
                        }
                    }

                    var lex = new Lexem()
                    {
                        Type    = LexemType.NumberLiteral,
                        Content = iterator.GetContents()
                    };

                    return(lex);
                }
                else
                {
                    throw CreateExceptionOnCurrentLine("Некорректный символ", iterator);
                }
            }
        }
Esempio n. 7
0
        public async Task <IActionResult> Index(string name, int id)
        {
            var style = (await this.masterService.GetPackageTravelStyleListAsync(string.Empty, 1, id)).ToSelectList();

            if (style != null && style.Count > 0 && SpecialChars.Remove(style[0].Text) == name)
            {
                this.ViewBag.PageType  = Enums.SeoPageType.Style;
                this.ViewBag.StyleName = style[0].Text;
                this.ViewBag.StyleId   = id;
                return(this.View());
            }
            else
            {
                return(this.RedirectToRoute("default"));
            }
        }
Esempio n. 8
0
        void AddProperty()
        {
            int start = _index;
            int level = 0;

            // include leading dots in the path (for XLinq)
            while (_index < _n && _path[_index] == '.')
            {
                ++_index;
            }

            while (_index < _n && (level > 0 || SpecialChars.IndexOf(_path[_index]) < 0))
            {
                if (_path[_index] == '(')
                {
                    ++level;
                }
                else if (_path[_index] == ')')
                {
                    --level;
                }

                ++_index;
            }

            if (level > 0)
            {
                SetError(SRID.UnmatchedParen, _path.Substring(start));
                return;
            }

            if (level < 0)
            {
                SetError(SRID.UnmatchedParen, _path.Substring(0, _index));
                return;
            }

            string name = _path.Substring(start, _index - start).Trim();

            SourceValueInfo info = (name.Length > 0)
                ? new SourceValueInfo(SourceValueType.Property, _drillIn, name)
                : new SourceValueInfo(SourceValueType.Direct, _drillIn, (string)null);

            _al.Add(info);

            StartNewLevel();
        }
 public void Special_Characters()
 {
     Assert.True(SpecialChars.IsOperatorChar('+'));
     Assert.True(SpecialChars.IsOperatorChar('-'));
     Assert.True(SpecialChars.IsOperatorChar('*'));
     Assert.True(SpecialChars.IsOperatorChar('/'));
     Assert.True(SpecialChars.IsOperatorChar('<'));
     Assert.True(SpecialChars.IsOperatorChar('>'));
     Assert.True(SpecialChars.IsOperatorChar('='));
     Assert.True(SpecialChars.IsOperatorChar('%'));
     Assert.True(SpecialChars.IsOperatorChar('('));
     Assert.True(SpecialChars.IsOperatorChar(')'));
     Assert.True(SpecialChars.IsOperatorChar('.'));
     Assert.True(SpecialChars.IsOperatorChar(','));
     Assert.True(SpecialChars.IsOperatorChar('['));
     Assert.True(SpecialChars.IsOperatorChar(']'));
 }
Esempio n. 10
0
        public override void WriteString(string text)
        {
            if (String.IsNullOrEmpty(text))
            {
                return;
            }

            const string SpecialChars = @"<>&";

            if (text.IndexOfAny(SpecialChars.ToCharArray()) != -1)
            {
                WriteCData(text);
            }
            else
            {
                base.WriteString(text);
            }
        }
Esempio n. 11
0
    public override void WriteString(string text)
    {
        if (String.IsNullOrEmpty(text))
        {
            return;
        }

        // WriteString will happily escape any XML markup characters. However,
        // for legibility we write content that contains certain special
        // characters as CDATA
        const string SpecialChars = @"<>&";

        if (text.IndexOfAny(SpecialChars.ToCharArray()) != -1)
        {
            WriteCData(text);
        }
        else
        {
            base.WriteString(text);
        }
    }
Esempio n. 12
0
 /// <summary>
 /// Write the special char to current destination stream.
 /// </summary>
 /// <param name="type">The special char.</param>
 public void Write(SpecialChars type)
 {
     WriteEntity(Convert.ToChar(type).ToString());
 }
Esempio n. 13
0
        static void Main()
        {
            ShapesDemo();

            RenderUtils.Echo("Stand by...\n\n");
            SpecialChars.TestChars();

            RenderUtils.ResizeConsole(100, 50);
            RenderUtils.ResizeConsole(50, 25);
            RenderUtils.ResizeConsole(Console.LargestWindowWidth, Console.LargestWindowHeight);
            RenderUtils.ResizeConsole(30, 15);
            RenderUtils.ResizeConsole(80, 25);


            //Draw the splash
            BasicRenderSplash();
            //RenderUtils.Sleep(2000);
            RenderUtils.Pause();

            Window      WelcomeSplash    = new Window(false, true, "Welcome", 47, 10);
            CloseButton SplashWelcomeBTN = new CloseButton(WelcomeSplash, "[   OK   ]", ConsoleColor.DarkGray, ConsoleColor.White, ConsoleColor.DarkBlue, 19, 8);

            WindowElement[] SplashElements =
            {
                new BasicFontLabel(WelcomeSplash, "WELCOME", BasicFont.DefaultFont, ConsoleColor.Black, 3, 1),
                SplashWelcomeBTN
            };

            WelcomeSplash.AddElements(SplashElements);

            WelcomeSplash.HighlightedElement = SplashWelcomeBTN;
            SplashWelcomeBTN.Highlighted     = true;
            WelcomeSplash.Execute();

            //5x6

            //Clear the screen, set up for the "window Environment"
            RenderUtils.Color(ConsoleColor.DarkCyan, ConsoleColor.White);
            Console.Clear();

            //Time to test the tickable timer window and a new label.
            TickableWindow LoadWindow = new TickableWindow(true, true, "Please Wait", 42, 7);

            WindowElement[] Elements =
            {
                new Icon(LoadWindow,    Icon.IconType.INFORMATION,                                      1,                 2),
                new Label(LoadWindow,   "Please Wait, BasicRender is loading", ConsoleColor.Gray,          ConsoleColor.Black,  5, 2),
                new Spinner(LoadWindow, ConsoleColor.Gray,                     ConsoleColor.Black,                          5, 4),
                new Timer(LoadWindow,                                       5, new Progressbar(LoadWindow,                 33,  7, 4))
                {
                    BackToFront = true
                }
            };

            LoadWindow.AddElements(Elements);

            //Test Tickable Window
            LoadWindow.Execute();

            //Test DialogBox
            DialogBox.ShowDialogBox(Icon.IconType.INFORMATION, DialogBox.DialogBoxButtons.OK, "Test I hope this works.");

            //More Extensively test Dialogbox
            Quiz();

            //Test HelloWorld
            //new HelloWorldWindow().Execute(); //We no longer really need to test HelloWorld. Windows are just windows now

            //Show the welcome window
            new WelcomeWindow().Execute();

            //
            DialogBox.ShowDialogBox(Icon.IconType.INFORMATION, DialogBox.DialogBoxButtons.OK, "The system will now attempt to divide by 0 to showcase error screens.");
            try { GenerateStackedError(7); } catch (Exception E) {
                ErrorWindow.ShowErrorWindow(E.Message);
                DialogBox.ShowExceptionError(E);
                GuruMeditationErrorScreen.Show(E, true);
            }
        }
Esempio n. 14
0
 /// <summary>
 /// Обеспечивает ввод специальных маркеров в  объект сериализатора
 /// </summary>
 /// <param name="ch">Маркер, являющийся элементом перечесления <see cref="SpecialChars"/>, значение которого будет считано при сериализации</param>
 /// <returns>
 /// true
 /// </returns>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Boolean@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Double@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Single@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.String@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Int32@)"/>
 public abstract bool InOut(SpecialChars ch);
Esempio n. 15
0
 /// <summary>
 /// ������������ ����� ����������� �������� ���������
 /// ���������������
 /// </summary>
 /// <param name="ch">������, ���������� ��������� ������������ <see
 /// cref="SpecialChars"/>, �������� � ������� ����� 
 /// �������� ��� ��������������</param>
 /// <param name="delete">���� <b>true </b>(�� ���������), �� ������� ����� ������
 /// ����� ������. ����� �� ��� ��������� ��������� �� ������ � ���������� �������
 /// ������ ����� ����� ��� �� ����� �������</param>
 /// <returns>
 /// <para><b>true</b>, ���� ������� ��������� � ���������������
 /// �������� ��������� (� �� �����) ������, � <b>false</b> � ��������� ������</para>
 /// </returns>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Boolean@)">Boolean@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Double@)">Double@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Single@)">Single@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.String@)">String@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Int32@)">Int32@)</seealso>
 public abstract bool InOut(SpecialChars ch, bool delete = true);
Esempio n. 16
0
 /// <summary>
 /// Обеспечивает вывод специальных маркеров из объекта
 /// десериализатора
 /// </summary>
 /// <param name="ch">Маркер, являющийся элементом перечесления <see
 /// cref="SpecialChars"/>, значение в которое будет
 /// записано при десериализации</param>
 /// <param name="delete">Если <b>true </b>(по умолчанию), то объекта будет удален
 /// после чтения. Иначе же при следующем обращении на чтение к экземпляру данного
 /// класса будет выдан тот же самый объекта</param>
 /// <returns>
 /// <para><b>true</b>, если текущим элементом в десереализаторе
 /// является указанный (а не любой) маркер, и <b>false</b> в противном случае</para>
 /// </returns>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Boolean@)">Boolean@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Double@)">Double@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Single@)">Single@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.String@)">String@)</seealso>
 /// <seealso
 /// cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Int32@)">Int32@)</seealso>
 public abstract bool InOut(SpecialChars ch, bool delete = true);
Esempio n. 17
0
        /// <summary>
        /// Проверяет, является ли текущая строка представлением специального маркера
        /// </summary>
        /// <param name="ch">Специальный маркер, на соответствие которому необходимо
        /// проверить текущую строку</param>
        /// <param name="delete">Если <b>true</b>, удаляет маркер, иначе оставляет его для
        /// последующего чтения</param>
        /// <returns>
        /// <para><b>true</b>, если маркеры совпадают, и <b>false</b>, если достигнут конец
        /// файла либо маркеры не совпадают</para>
        /// </returns>
        public override bool InOut(SpecialChars ch, bool delete = true)
        {
            var s = delete ? _queue.Dequeue() : _queue.Peek();

            return(ch == ParseSpecialChar(s));
        }
Esempio n. 18
0
 /// <summary>
 /// Write start of an object or array using the first argument as its name.
 /// </summary>
 /// <param name="name">The name of the object or array.</param>
 /// <param name="type">The special char (StartObject or StartArray).</param>
 public void Write(string name, SpecialChars type)
 {
     WriteEntity(name + " = " + Convert.ToChar(type));
 }
Esempio n. 19
0
 /// <summary>
 /// Проверяет, является ли текущая строка представлением специального маркера
 /// </summary>
 /// <param name="ch">Специальный маркер, на соответствие которому необходимо
 /// проверить текущую строку</param>
 /// <param name="delete">Если <b>true</b>, удаляет маркер, иначе оставляет его для
 /// последующего чтения</param>
 /// <returns>
 /// <para><b>true</b>, если маркеры совпадают, и <b>false</b>, если достигнут конец
 /// файла либо маркеры не совпадают</para>
 /// </returns>
 public override bool InOut(SpecialChars ch, bool delete = true)
 {
     if (_queue.Count == 0) return false;
     var s = delete ? _queue.Dequeue() : _queue.Peek();
     return ch == ParseSpecialChar(s);
 }
Esempio n. 20
0
        private void AnalyseString(T text, TextAnalyzeMode mode)
        {
            // character strings
            const string SpecialChars = @"""!?%&/()=?@€<>|?.;:-_#'*+~껙 ";
            const string Numbers      = "0123456789";

            // Adding the entries according to mode
            switch (mode)
            {
            case TextAnalyzeMode.AllCharacters:
                foreach (char v in text.ToString())
                {
                    Add((T)Convert.ChangeType(v, text.GetType(), null));
                }
                break;

            case TextAnalyzeMode.LettersOnly:
                foreach (var v in text.ToString())
                {
                    if ((SpecialChars.IndexOf(v) == -1) & (Numbers.IndexOf(v) == -1))
                    {
                        Add((T)Convert.ChangeType(v, text.GetType(), null));
                    }
                }
                break;

            case TextAnalyzeMode.NoNumerals:
                foreach (var v in text.ToString())
                {
                    if (Numbers.IndexOf(v) == -1)
                    {
                        Add((T)Convert.ChangeType(v, text.GetType(), null));
                    }
                }
                break;

            case TextAnalyzeMode.NoSpecialCharacters:
                foreach (var v in text.ToString())
                {
                    if (SpecialChars.IndexOf(v) == -1)
                    {
                        Add((T)Convert.ChangeType(v, text.GetType(), null));
                    }
                }
                break;

            case TextAnalyzeMode.NumeralsOnly:
                foreach (var v in text.ToString())
                {
                    if (Numbers.IndexOf(v) != -1)
                    {
                        Add((T)Convert.ChangeType(v, text.GetType(), null));
                    }
                }
                break;

            case TextAnalyzeMode.SpecialCharactersOnly:
                foreach (var v in text.ToString())
                {
                    if (SpecialChars.IndexOf(v) != -1)
                    {
                        Add((T)Convert.ChangeType(v, text.GetType(), null));
                    }
                }
                break;
            }
        }
Esempio n. 21
0
        public override Lexem ReadNextLexem(SourceCodeIterator iterator)
        {
            bool isEndOfText = false;
            char cs          = '\0';
            int  currentLine = iterator.CurrentLine;

            while (true)
            {
                if (!isEndOfText)
                {
                    cs = iterator.CurrentSymbol;
                }
                if (SpecialChars.IsDelimiter(cs) || isEndOfText)
                {
                    var content = iterator.GetContents();

                    Lexem lex;

                    if (LanguageDef.IsLogicalOperatorString(content))
                    {
                        lex = new Lexem()
                        {
                            Type       = LexemType.Operator,
                            Token      = LanguageDef.GetToken(content),
                            Content    = content,
                            LineNumber = currentLine
                        };
                    }
                    else if (LanguageDef.IsBooleanLiteralString(content))
                    {
                        lex = new Lexem()
                        {
                            Type       = LexemType.BooleanLiteral,
                            Content    = content,
                            LineNumber = currentLine
                        };
                    }
                    else if (LanguageDef.IsUndefinedString(content))
                    {
                        lex = new Lexem()
                        {
                            Type       = LexemType.UndefinedLiteral,
                            Content    = content,
                            LineNumber = currentLine
                        };
                    }
                    else if (LanguageDef.IsNullString(content))
                    {
                        lex = new Lexem()
                        {
                            Type       = LexemType.NullLiteral,
                            Content    = content,
                            LineNumber = currentLine
                        };
                    }
                    else
                    {
                        lex = new Lexem()
                        {
                            Type       = LexemType.Identifier,
                            Content    = content,
                            Token      = LanguageDef.GetToken(content),
                            LineNumber = currentLine
                        };

                        if (LanguageDef.IsBuiltInFunction(lex.Token))
                        {
                            iterator.SkipSpaces();
                            if (iterator.CurrentSymbol != '(')
                            {
                                lex.Token = Token.NotAToken;
                            }
                        }
                    }

                    return(lex);
                }

                if (!iterator.MoveNext())
                {
                    isEndOfText = true;
                }
            }
        }
Esempio n. 22
0
 public static string GetEncoding(this SpecialChars sc)
 {
     return($"#{(int) sc:x8}");
 }
Esempio n. 23
0
 /// <summary>
 /// Проверяет, является ли текущая строка представлением специального маркера
 /// </summary>
 /// <param name="ch">Специальный маркер, на соответствие которому необходимо
 /// проверить текущую строку</param>
 /// <param name="delete">Если <b>true</b>, удаляет маркер, иначе оставляет его для
 /// последующего чтения</param>
 /// <returns>
 /// <para><b>true</b>, если маркеры совпадают, и <b>false</b>, если достигнут конец
 /// файла либо маркеры не совпадают</para>
 /// </returns>
 public override bool InOut(SpecialChars ch, bool delete = true)
 {
     var s = delete ? _queue.Dequeue() : _queue.Peek();
     return ch == ParseSpecialChar(s);
 }
Esempio n. 24
0
 /// <summary>
 /// Обеспечивает запись одного из специальных маркеров
 /// </summary>
 /// <param name="ch">Маркер, который нужно записать</param>
 /// <returns>
 /// <b>true</b>, если запись прошла успешно, <b>false</b> в противном случае
 /// </returns>
 public override bool InOut(SpecialChars ch)
 {
     switch (ch)
     {
         case SpecialChars.Delimiter:
             Writer.Write(EncodeTo64(","));
             break;
         case SpecialChars.ArrayStart:
             Writer.Write(EncodeTo64("["));
             break;
         case SpecialChars.ArrayEnd:
             Writer.Write(EncodeTo64("]"));
             break;
         case SpecialChars.ObjectStart:
             Writer.Write(EncodeTo64("{"));
             break;
         case SpecialChars.ObjectEnd:
             Writer.Write(EncodeTo64("}"));
             break;
         case SpecialChars.Null:
             break;
     }
     return true;
 }
Esempio n. 25
0
 /// <summary>
 /// Обеспечивает запись одного из специальных маркеров
 /// </summary>
 /// <param name="ch">Маркер, который нужно записать</param>
 /// <returns>
 /// <b>true</b>, если запись прошла успешно, <b>false</b> в противном случае
 /// </returns>
 public override bool InOut(SpecialChars ch)
 {
     switch (ch)
     {
         case SpecialChars.Delimiter:
             Writer.Write(",{1}{0}", _indent, Environment.NewLine);
             break;
         case SpecialChars.ArrayStart:
             _indent += "   ";
             Writer.Write("[{1}{0}", _indent, Environment.NewLine);
             break;
         case SpecialChars.ArrayEnd:
             _indent = _indent.Substring(3);
             Writer.Write("{1}{0}]", _indent, Environment.NewLine);
             break;
         case SpecialChars.ObjectStart:
             _indent += "   ";
             Writer.Write("{1}{2}{0}", _indent, "{", Environment.NewLine);
             break;
         case SpecialChars.ObjectEnd:
             _indent = _indent.Substring(3);
             Writer.Write("{2}{0}{1}", _indent, "}", Environment.NewLine);
             break;
         case SpecialChars.Null:
             break;
     }
     return true;
 }
Esempio n. 26
0
 /// <summary>
 /// ������������ ����� ����������� �������� ��������� ���������������
 /// </summary>
 /// <param name="ch">������, ���������� ��������� ������������ <see cref="SpecialChars"/>, �������� � ������� ����� 
 /// �������� ��� ��������������</param>
 /// <returns>
 /// <para><b>true</b>, ���� ������� ��������� � ��������������� �������� ��������� (� �� �����) ������, �
 /// <b>false</b> � ��������� ������</para>
 /// </returns>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Boolean@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Double@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Single@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.String@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Int32@)"/>
 public bool InOut(SpecialChars ch)
 {
     return InOut(ch, true);
 }
Esempio n. 27
0
 /// <summary>
 /// Обеспечивает ввод специальных маркеров в  объект сериализатора
 /// </summary>
 /// <param name="ch">Маркер, являющийся элементом перечесления <see cref="SpecialChars"/>, значение которого будет считано при сериализации</param>
 /// <returns>
 /// true
 /// </returns>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Boolean@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Double@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Single@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.String@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Int32@)"/>
 public abstract bool InOut(SpecialChars ch);
Esempio n. 28
0
 /// <summary>
 /// Обеспечивает вывод специальных маркеров из объекта десериализатора
 /// </summary>
 /// <param name="ch">Маркер, являющийся элементом перечесления <see cref="SpecialChars"/>, значение в которое будет
 /// записано при десериализации</param>
 /// <returns>
 /// <para><b>true</b>, если текущим элементом в десереализаторе является указанный (а не любой) маркер, и
 /// <b>false</b> в противном случае</para>
 /// </returns>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Boolean@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Double@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Single@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.String@)"/>
 /// <seealso cref="M:TerrainGen.Serialization.ISerializer.InOut(System.Int32@)"/>
 public bool InOut(SpecialChars ch)
 {
     return(InOut(ch, true));
 }