代码解析,自定义分析规则。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Antlr.Runtime;
using EntMapping.Utility;
namespace EntMapping
{
public partial class FormTest : Form
{
public FormTest()
{
InitializeComponent();
}
private void FormTest_Load(object sender, EventArgs e)
{
textBoxInput.Text = new Sampler().GetSample();
pictureBox1.Size = new Size(1207, 388);
}
private void buttonParse_Click(object sender, EventArgs e)
{
string inputString = textBoxInput.Text;
var input = new ANTLRStringStream(inputString);
var lexer = new EntityMappingLexer(input);
var tokens = new CommonTokenStream(lexer);
var parser = new EntityMappingParser(tokens);
var result = parser.prog();
var tree = result.Tree;
textBoxStringTree.Text = tree.ToStringTree();
var treeNodeDrawable = new ASTTreeNode(tree);
int center;
if (pictureBox1.Image != null)
{
pictureBox1.Image.Dispose();
pictureBox1.Image = null;
}
Image image = new VisualAST(treeNodeDrawable).Draw();
pictureBox1.Image = image;
}
}
}
资源文件列表
EntityMapping/.vs/EntMapping/v15/.suo , 67072
EntityMapping/.vs/EntMapping/v15/Server/sqlite3/db.lock , 0
EntityMapping/.vs/EntMapping/v15/Server/sqlite3/storage.ide , 4096
EntityMapping/.vs/EntMapping/v15/Server/sqlite3/storage.ide-shm , 32768
EntityMapping/.vs/EntMapping/v15/Server/sqlite3/storage.ide-wal , 688072
EntityMapping/.vs/EntMapping/v16/.suo , 89600
EntityMapping/binaries/Antlr3.Runtime.dll , 102912
EntityMapping/binaries/Antlr3.Runtime.pdb , 431616
EntityMapping/EntityMapping.g , 2702
EntityMapping/EntMapping/bin/Debug/Antlr3.Runtime.dll , 102912
EntityMapping/EntMapping/bin/Debug/Antlr3.Runtime.pdb , 431616
EntityMapping/EntMapping/bin/Debug/EntMapping.exe , 56832
EntityMapping/EntMapping/bin/Debug/EntMapping.pdb , 122368
EntityMapping/EntMapping/EntityMappingParser.Extend.cs , 255
EntityMapping/EntMapping/EntMapping.csproj , 4503
EntityMapping/EntMapping/EntMapping.csproj.user , 227
EntityMapping/EntMapping/FormTest.cs , 1490
EntityMapping/EntMapping/FormTest.Designer.cs , 7554
EntityMapping/EntMapping/FormTest.resx , 5817
EntityMapping/EntMapping/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache , 5165
EntityMapping/EntMapping/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache , 7261
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.csproj.CopyComplete , 0
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.csproj.CoreCompileInputs.cache , 42
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.csproj.FileListAbsolute.txt , 1353
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.csproj.GenerateResource.cache , 1015
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.csprojAssemblyReference.cache , 432
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.exe , 56832
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.FormTest.resources , 180
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.pdb , 122368
EntityMapping/EntMapping/obj/x86/Debug/EntMapping.Properties.Resources.resources , 180
EntityMapping/EntMapping/Program.cs , 505
EntityMapping/EntMapping/Properties/AssemblyInfo.cs , 1522
EntityMapping/EntMapping/Properties/Resources.Designer.cs , 2848
EntityMapping/EntMapping/Properties/Resources.resx , 5612
EntityMapping/EntMapping/Properties/Settings.Designer.cs , 1095
EntityMapping/EntMapping/Properties/Settings.settings , 249
EntityMapping/EntMapping/Sampler.cs , 829
EntityMapping/EntMapping/Utility/ASTTreeNode.cs , 897
EntityMapping/EntMapping/Utility/IASTTreeNode.cs , 314
EntityMapping/EntMapping/Utility/TextMeasurer.cs , 596
EntityMapping/EntMapping/Utility/VisualAST.cs , 6395
EntityMapping/EntMapping.sln , 1482
EntityMapping/EntMapping.suo , 31232
EntityMapping/output/EntityMapping.tokens , 501
EntityMapping/output/EntityMappingLexer.cs , 65832
EntityMapping/output/EntityMappingParser.cs , 79536
EntityMapping/output/EntMapping.suo , 24576
