public void Visit(MethodContext parserRule)
        {
            var methodName = parserRule.methodName.Text;
            var typeReturn = globalContext.GetType(parserRule.TypeReturn.Text);
            var formals    = (from f in parserRule._formals select Visit(f)).ToArray();

            if (!type.IfDefineInTheCurrentType(methodName))
            {   //Si no esta definida en la clase actual hay que verificar si se puede refinir de un ancestro
                if (!type.Define(methodName, typeReturn, formals))
                {
                    errorLogger.LogError($"No se puede redefinir el metodo con nombre {parserRule.idText}, linea {parserRule.methodName.Line} y la columna {parserRule.methodName.Column}");
                }
            }
            else
            {
                errorLogger.LogError($"El tipo {type.Name} ya tiene un metodo con nombre {parserRule.idText}, linea {parserRule.methodName.Line} y la columna {parserRule.methodName.Column}");
            }
            //if ( !type.Define(methodName, type, formals))
            //     errorLogger.LogError($"El tipo {type.Name} ya tiene un metodo con nombre {parserRule.idText}, linea {parserRule.methodName.Line} y la columna {parserRule.methodName.Column}");
        }