public static SUnit Translate(Statement statement)
{
// Return empty SUnit for empty statement.
if(statement.GetExpressions().Count() == 0)
{
return new SUnit(SUnitType.SingleMethodCall, "", "", "", new List<string>(), "void");
}
if(statement is ReturnStatement)
{
//Console.WriteLine("TRANSLATE RETURN");
return TranslateReturn(statement);
}
//
if (statement.GetExpressions().First() is VariableDeclaration)
{
//Console.WriteLine("TRANSLATE ASSIGNMENT");
return TranslateAssignment(statement);
}
else
{
//Console.WriteLine("TRANSLATE METHODCALL");
return TranslateMethodCall(statement);
}
}