public StatementSyntax Transpile(JassElseIfClauseSyntax elseIfClause, ElseClauseSyntax?elseClause) { return(SyntaxFactory.IfStatement( SyntaxFactory.List <AttributeListSyntax>(), Transpile(elseIfClause.Condition), SyntaxFactory.Block(Transpile(elseIfClause.Body)), elseClause)); }
public LuaElseIfStatementSyntax Transpile(JassElseIfClauseSyntax elseIfClause) { var elseifStatement = new LuaElseIfStatementSyntax(Transpile(elseIfClause.Condition, out _)); elseifStatement.Body.Statements.AddRange(Transpile(elseIfClause.Body)); return(elseifStatement); }
public void Render(JassElseIfClauseSyntax elseIfClause) { Write($"{JassKeyword.ElseIf} "); Render(elseIfClause.Condition); WriteLine($" {JassKeyword.Then}"); Indent(); Render(elseIfClause.Body); Outdent(); }
private bool TryAdaptElseIfClause(JassMapScriptAdapterContext context, JassElseIfClauseSyntax elseIfClause, [NotNullWhen(true)] out JassElseIfClauseSyntax?adaptedElseIfClause) { if (TryAdaptExpression(context, elseIfClause.Condition, out var adaptedCondition) | TryAdaptStatementList(context, elseIfClause.Body, out var adaptedBody)) { adaptedElseIfClause = new JassElseIfClauseSyntax( adaptedCondition ?? elseIfClause.Condition, adaptedBody ?? elseIfClause.Body); return(true); } adaptedElseIfClause = null; return(false); }