add IF ELSIF

This commit is contained in:
XudongXie 2024-09-13 23:35:47 +08:00
parent dad5afc2fd
commit 5d49c5bb3d
2 changed files with 25 additions and 18 deletions

View File

@ -4,15 +4,9 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="d8d12963-4777-48e3-9669-309cf5e41d60" name="更改" comment="add if elseif else endif document">
<change afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/IFELSIF/ELSENode.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/IFELSIF/ELSIFConditionNode.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/IFELSIF/ElSIFActionNode.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/IFELSIF/EndIFNode.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/IFELSIF/IFActionNode.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/Parser/AST/IFELSIF/IFConditionNode.java" afterDir="false" />
<list default="true" id="d8d12963-4777-48e3-9669-309cf5e41d60" name="更改" comment="add if elseif else endif ast classes">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/Lexer/OracleLexer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Lexer/OracleLexer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/Parser/OracleParser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/Parser/OracleParser.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -110,13 +104,6 @@
<option name="presentableId" value="Default" />
<updated>1723106789329</updated>
</task>
<task id="LOCAL-00016" summary="add function">
<created>1724487486717</created>
<option name="number" value="00016" />
<option name="presentableId" value="LOCAL-00016" />
<option name="project" value="LOCAL" />
<updated>1724487486717</updated>
</task>
<task id="LOCAL-00017" summary="coding">
<created>1724506701566</created>
<option name="number" value="00017" />
@ -453,7 +440,14 @@
<option name="project" value="LOCAL" />
<updated>1726236869087</updated>
</task>
<option name="localTasksCounter" value="65" />
<task id="LOCAL-00065" summary="add if elseif else endif ast classes">
<created>1726238974056</created>
<option name="number" value="00065" />
<option name="presentableId" value="LOCAL-00065" />
<option name="project" value="LOCAL" />
<updated>1726238974056</updated>
</task>
<option name="localTasksCounter" value="66" />
<servers />
</component>
<component name="Vcs.Log.Tabs.Properties">
@ -468,7 +462,6 @@
</option>
</component>
<component name="VcsManagerConfiguration">
<MESSAGE value="add some comments" />
<MESSAGE value="add parseSelect" />
<MESSAGE value="add join pattern" />
<MESSAGE value="add join class" />
@ -493,7 +486,8 @@
<MESSAGE value="add view generate method" />
<MESSAGE value="revise" />
<MESSAGE value="add if elseif else endif document" />
<option name="LAST_COMMIT_MESSAGE" value="add if elseif else endif document" />
<MESSAGE value="add if elseif else endif ast classes" />
<option name="LAST_COMMIT_MESSAGE" value="add if elseif else endif ast classes" />
</component>
<component name="XDebuggerManager">
<watches-manager>

View File

@ -544,6 +544,19 @@ public class OracleParser {
return root;
}
/**
* IF condition1 THEN ...
* (ELSIF condition2 THEN ...)*
* [ELSE...]
* END IF;
* @param parseTokens should start with IF
*/
public static ASTNode parseIFELSE(List<Token> parseTokens) {
//TODO: implement
return null;
}
/**
* CASE WHEN expr THEN expr [ELSE expr] END
* @param parseTokens should start with CASE