Rosetta.AST.Factories.MethodDeclarationTranslationUnitFactory.Create C# (CSharp) Method

Create() public method

Creates a MethodDeclarationTranslationUnit.
public Create ( ) : ITranslationUnit
return ITranslationUnit
        public ITranslationUnit Create()
        {
            if (this.DoNotCreateTranslationUnit)
            {
                return null;
            }

            MethodDeclaration helper = this.CreateHelper(this.Node as MethodDeclarationSyntax, this.SemanticModel);

            var methodDeclaration = this.CreateTranslationUnit(
                helper.Visibility,
                TypeIdentifierTranslationUnit.Create(helper.ReturnType.FullName.MapType()),
                IdentifierTranslationUnit.Create(helper.Name)) as MethodSignatureDeclarationTranslationUnit;

            foreach (Parameter parameter in helper.Parameters)
            {
                methodDeclaration.AddArgument(ArgumentDefinitionTranslationUnit.Create(
                    TypeIdentifierTranslationUnit.Create(parameter.Type.FullName.MapType()),
                    IdentifierTranslationUnit.Create(parameter.IdentifierName)));
            }

            return methodDeclaration;
        }