Пример #1
0
        private static Node Parse(string input)
        {
            var lexer  = new Lexer(input);
            var tokens = lexer.Lex();
            var parser = new Nett.Parser.Parser(new ParseInput(tokens), TomlSettings.DefaultInstance);

            return(parser.Parse().NodeOrDefault());
        }
Пример #2
0
        private static TomlTable CreatTable(string input)
        {
            var lexer  = new Lexer(input);
            var tokens = lexer.Lex();
            var parser = new Nett.Parser.Parser(new ParseInput(tokens));

            return(parser.Parse().SyntaxNodeOrDefault().CreateTable());
        }
Пример #3
0
        public static TomlTable Deserialize(Stream s, TomlSettings settings)
        {
            var reader  = new StreamReader(s);
            var content = reader.ReadToEnd();
            var lexer   = new Lexer(content);
            var tokens  = lexer.Lex();
            var parser  = new Parser.Parser(new ParseInput(tokens), settings);
            var ast     = parser.Parse();

#if DEBUG
            var tree = ast.SyntaxNodeOrDefault()?.PrintTree();
#endif
            var table = TableBuilder.Build(ast.SyntaxNodeOrDefault(), settings);
            return(table);
        }
Пример #4
0
        public static TomlTable Deserialize(Stream s, TomlSettings settings)
        {
            var parser = new Parser.Parser(s, settings);

            return(parser.Parse());
        }