Inheritance: AstExpression
        public Expression Update(Identifier Expression, ParameterExpression directionExpression) {
            if (IdentifierParameter.Equals(Expression) && OutParameter.Equals(directionExpression)) {
                return this;
            }

            return AstExpression.Direction(_directionExpression, ParentScope, Visitor);
        }
        private void BuildAnonymousMethodInvocation(Identifier identifier) {
            MethodInfo methodInfo = null;
            var arguments = _invocationExpression.Arguments;
            Type methodType = identifier.Expression.Type;

            Member = methodInfo = methodType.GetMethod("Invoke");
            Instance = identifier.Expression;
            InternalType = methodInfo.ReturnType;
            MethodArguments = GetArguments(Member);
        }
 protected internal Expression VisitIdentifier(Identifier identifer) {
     return identifer.Update(identifer.Expression);
 }