Ejemplo n.º 1
0
        public static MapData LoadFrom(TextReader reader)
        {
            var lexer  = new UdmfLexer(reader);
            var result = UdmfParser.Parse(lexer.Scan());

            return(UdmfSemanticAnalyzer.Process(result));
        }
 private static Token[] Scan(string input)
 {
     using (var stringReader = new StringReader(input))
     {
         var lexer = new UdmfLexer(stringReader);
         return(lexer.Scan().ToArray());
     }
 }
Ejemplo n.º 3
0
        public void ShouldHandleParsingMapWithSingleLineComment()
        {
            var map    = @" // Here is a comment
namespace = ""Doom"";";
            var lexer  = new UdmfLexer(map);
            var parser = new UdmfParser(lexer);

            ParseResult result = parser.Parse();

            Assert.That(result.IsSuccess, Is.True);
        }
Ejemplo n.º 4
0
        public void ShouldHandleLexingDemoMap()
        {
            var map = DemoMap.Create();

            using (var stream = new MemoryStream())
            {
                map.WriteTo(stream);

                stream.Position = 0;

                using (var textReader = new StreamReader(stream, Encoding.ASCII))
                {
                    var lexer  = new UdmfLexer(textReader);
                    var result = lexer.Scan().ToArray();
                }
            }
        }
Ejemplo n.º 5
0
        public void ShouldHandleParsingDemoMap()
        {
            var map = DemoMap.Create();

            using (var stream = new MemoryStream())
            {
                map.WriteTo(stream);

                stream.Position = 0;

                using (var textReader = new StreamReader(stream, Encoding.ASCII))
                {
                    var lexer  = new UdmfLexer(textReader);
                    var parser = new UdmfParser(lexer);

                    ParseResult result = parser.Parse();
                    Assert.That(result.IsSuccess, Is.True);
                }
            }
        }
        public void ShouldHandleParsingDemoMap()
        {
            var map = DemoMap.Create();

            using (var fs = File.OpenWrite("text.udmf"))
            {
                map.WriteTo(fs);
            }

            using (var stream = new MemoryStream())
            {
                map.WriteTo(stream);

                stream.Position = 0;

                using (var textReader = new StreamReader(stream, Encoding.ASCII))
                {
                    var lexer  = new UdmfLexer(textReader);
                    var result = UdmfParser.TranslationUnit.ParseOrThrow(lexer.Scan());
                }
            }
        }
        public void ShouldHandleParsingDemoMap()
        {
            var map = DemoMap.Create();

            using (var fs = File.OpenWrite(Path.Combine(TestContext.CurrentContext.TestDirectory, "text.udmf")))
            {
                map.WriteTo(fs);
            }

            using (var stream = new MemoryStream())
            {
                map.WriteTo(stream);

                stream.Position = 0;

                using (var textReader = new StreamReader(stream, Encoding.ASCII))
                {
                    var lexer  = new UdmfLexer(textReader);
                    var result = UdmfParser.Parse(lexer.Scan()).ToArray();
                }
            }
        }