SUnitTranslator.Translate C# (CSharp) Method

Translate() public static method

public static Translate ( Statement, statement ) : SUnit
statement Statement,
return Swummary.SUnit
    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);
        }
    }

Usage Example

Ejemplo n.º 1
0
    public void TranslateAssignmentSUnit()
    {
        var assignmentStatement = methodDef.GetDescendants <Statement>().OfType <DeclarationStatement>().First();

        Console.WriteLine("Assignment statement: {0}", assignmentStatement.ToString());

        var translated = SUnitTranslator.Translate(assignmentStatement);

        Console.WriteLine("Action: {0}\nTheme: {1}", translated.action, translated.theme);
    }
All Usage Examples Of SUnitTranslator::Translate