updates
This commit is contained in:
105
.idea/codeStyles/Project.xml
generated
105
.idea/codeStyles/Project.xml
generated
@ -3,10 +3,12 @@
|
|||||||
<option name="LINE_SEPARATOR" value=" " />
|
<option name="LINE_SEPARATOR" value=" " />
|
||||||
<option name="RIGHT_MARGIN" value="100" />
|
<option name="RIGHT_MARGIN" value="100" />
|
||||||
<option name="SOFT_MARGINS" value="100" />
|
<option name="SOFT_MARGINS" value="100" />
|
||||||
<DB2CodeStyleSettings version="2">
|
<DB2CodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -21,10 +23,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</DB2CodeStyleSettings>
|
</DB2CodeStyleSettings>
|
||||||
<DerbyCodeStyleSettings version="2">
|
<DerbyCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -39,10 +43,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</DerbyCodeStyleSettings>
|
</DerbyCodeStyleSettings>
|
||||||
<H2CodeStyleSettings version="2">
|
<H2CodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -57,10 +63,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</H2CodeStyleSettings>
|
</H2CodeStyleSettings>
|
||||||
<HSQLCodeStyleSettings version="2">
|
<HSQLCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -88,28 +96,12 @@
|
|||||||
<option name="JD_ADD_BLANK_AFTER_RETURN" value="true" />
|
<option name="JD_ADD_BLANK_AFTER_RETURN" value="true" />
|
||||||
<option name="JD_KEEP_INVALID_TAGS" value="false" />
|
<option name="JD_KEEP_INVALID_TAGS" value="false" />
|
||||||
</JavaCodeStyleSettings>
|
</JavaCodeStyleSettings>
|
||||||
<JetCodeStyleSettings>
|
<MSSQLCodeStyleSettings version="5">
|
||||||
<option name="PACKAGES_TO_USE_STAR_IMPORTS">
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<value>
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<package name="java.util" alias="false" withSubpackages="false" />
|
|
||||||
<package name="kotlinx.android.synthetic" alias="false" withSubpackages="true" />
|
|
||||||
<package name="io.ktor" alias="false" withSubpackages="true" />
|
|
||||||
</value>
|
|
||||||
</option>
|
|
||||||
<option name="PACKAGES_IMPORT_LAYOUT">
|
|
||||||
<value>
|
|
||||||
<package name="" alias="false" withSubpackages="true" />
|
|
||||||
<package name="java" alias="false" withSubpackages="true" />
|
|
||||||
<package name="javax" alias="false" withSubpackages="true" />
|
|
||||||
<package name="kotlin" alias="false" withSubpackages="true" />
|
|
||||||
<package name="" alias="true" withSubpackages="true" />
|
|
||||||
</value>
|
|
||||||
</option>
|
|
||||||
</JetCodeStyleSettings>
|
|
||||||
<MSSQLCodeStyleSettings version="2">
|
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
|
||||||
<option name="TYPE_CASE" value="0" />
|
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -124,10 +116,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</MSSQLCodeStyleSettings>
|
</MSSQLCodeStyleSettings>
|
||||||
<MySQLCodeStyleSettings version="2">
|
<MySQLCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -142,10 +136,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</MySQLCodeStyleSettings>
|
</MySQLCodeStyleSettings>
|
||||||
<OracleCodeStyleSettings version="2">
|
<OracleCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -160,10 +156,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</OracleCodeStyleSettings>
|
</OracleCodeStyleSettings>
|
||||||
<PostgresCodeStyleSettings version="2">
|
<PostgresCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -182,10 +180,12 @@
|
|||||||
<option name="SPACES_AROUND_KEY_VALUE_DELIMITER" value="true" />
|
<option name="SPACES_AROUND_KEY_VALUE_DELIMITER" value="true" />
|
||||||
<option name="KEEP_BLANK_LINES" value="true" />
|
<option name="KEEP_BLANK_LINES" value="true" />
|
||||||
</Properties>
|
</Properties>
|
||||||
<SQLiteCodeStyleSettings version="2">
|
<SQLiteCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -200,10 +200,11 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</SQLiteCodeStyleSettings>
|
</SQLiteCodeStyleSettings>
|
||||||
<SqlCodeStyleSettings version="2">
|
<SqlCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
@ -218,10 +219,12 @@
|
|||||||
<option name="WHERE_EL_LINE" value="1" />
|
<option name="WHERE_EL_LINE" value="1" />
|
||||||
<option name="ORDER_EL_LINE" value="1" />
|
<option name="ORDER_EL_LINE" value="1" />
|
||||||
</SqlCodeStyleSettings>
|
</SqlCodeStyleSettings>
|
||||||
<SybaseCodeStyleSettings version="2">
|
<SybaseCodeStyleSettings version="5">
|
||||||
<option name="KEYWORD_CASE" value="0" />
|
<option name="USE_GENERAL_STYLE" value="false" />
|
||||||
<option name="TYPE_CASE" value="0" />
|
<option name="KEYWORD_CASE" value="2" />
|
||||||
<option name="IDENTIFIER_CASE" value="1" />
|
<option name="IDENTIFIER_CASE" value="1" />
|
||||||
|
<option name="TYPE_CASE" value="2" />
|
||||||
|
<option name="CUSTOM_TYPE_CASE" value="2" />
|
||||||
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
<option name="QUOTED_IDENTIFIER_CASE" value="1" />
|
||||||
<option name="QUERY_EL_COMMA" value="2" />
|
<option name="QUERY_EL_COMMA" value="2" />
|
||||||
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
<option name="INSERT_TABLE_EL_LINE" value="1" />
|
||||||
|
|||||||
@ -43,7 +43,7 @@ class Demo {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void demoBalance() throws URISyntaxException, IOException {
|
void demoLeftPrecedence() throws URISyntaxException, IOException {
|
||||||
Path path = Paths.get(this.getClass().getClassLoader().getResource("exampleGrammars/Grammar.grammar").toURI());
|
Path path = Paths.get(this.getClass().getClassLoader().getResource("exampleGrammars/Grammar.grammar").toURI());
|
||||||
Grammar grammar = Grammar.fromFile(path);
|
Grammar grammar = Grammar.fromFile(path);
|
||||||
LL1Parser parser = LL1Parser.fromGrammar(grammar);
|
LL1Parser parser = LL1Parser.fromGrammar(grammar);
|
||||||
@ -52,6 +52,26 @@ class Demo {
|
|||||||
AST tree = parser.parse(lex.getAllTokens(), lex.getVocabulary());
|
AST tree = parser.parse(lex.getAllTokens(), lex.getVocabulary());
|
||||||
|
|
||||||
ASTCompacter.clean(tree, grammar);
|
ASTCompacter.clean(tree, grammar);
|
||||||
ExpressionBalancer.balance(tree);
|
ExpressionBalancer.flip(tree);
|
||||||
|
System.out.println("Before left-precedence:\n" + tree);
|
||||||
|
ExpressionBalancer.leftPrecedence(tree);
|
||||||
|
System.out.println("After left-precedence:\n" + tree);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void demoOperatorPrecedence() throws URISyntaxException, IOException {
|
||||||
|
Path path = Paths.get(this.getClass().getClassLoader().getResource("exampleGrammars/Grammar.grammar").toURI());
|
||||||
|
Grammar grammar = Grammar.fromFile(path);
|
||||||
|
LL1Parser parser = LL1Parser.fromGrammar(grammar);
|
||||||
|
|
||||||
|
Lexer lex = this.initLexer("General.stups");
|
||||||
|
AST tree = parser.parse(lex.getAllTokens(), lex.getVocabulary());
|
||||||
|
|
||||||
|
ASTCompacter.clean(tree, grammar);
|
||||||
|
ExpressionBalancer.flip(tree);
|
||||||
|
ExpressionBalancer.leftPrecedence(tree);
|
||||||
|
System.out.println("Before operator-precedence:\n" + tree);
|
||||||
|
ExpressionBalancer.operatorPrecedence(tree);
|
||||||
|
System.out.println("After operator-precedence:\n" + tree);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
class MyClass {
|
class MyClass {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
while (1 < 2)
|
boolean b = true;
|
||||||
i = 1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user