Simple DSL is implemented using anlr, and dsl is implemented by anlr.
Why use DSL?
DSL is a specialized language in the field. Common DSL include SQL, CSS, Shell, etc. These DSL languages are different from other general languages such as C ++, Java, C #, DSL is often used in special scenarios or fields. For example:
Class Program {static void Main (string [] args) {TestISL (); Console. readLine ();} private static void TestISL () {string text = string. empty; ParseISL ("");} private static void ParseISL (string input) {input = "return ([speed] * 10 + 3)> (200 )) & ([enterprise ID] ==\ "123 \") & ([time]> 1200 & [time] <1700 );"; antlrInputStream inputStream = new second (input); ISLLexer lexer = new ISLLexer (inputStream); CommonTokenStream tokens = new CommonTokenStream (lexer); ISLParser parser = new ISLParser (tokens ); IParseTree tree = parser. return_statement (); // ISLVisitor visitor = new ISLVisitor (); // object ret = visitor. visit (tree); ISLVisitor2 visitor = new ISLVisitor2 (); Result ret = visitor. visit (tree); // Console. writeLine (ret); Console. writeLine (ret. value); Console. writeLine (ret. text); Console. readLine ();}}
Finally, click here to download the example.