Exemple #1
0
 public virtual ICodeNode VisitMethodReferenceExpression(MethodReferenceExpression node)
 {
     node.Target = (Expression)Visit(node.Target);
     return(node);
 }
Exemple #2
0
		public virtual void VisitMethodReferenceExpression (MethodReferenceExpression node)
		{
			Visit (node.Target);
		}
		public override void VisitMethodReferenceExpression (MethodReferenceExpression node)
		{
			if (node.Target != null) {
				Visit (node.Target);
				WriteToken (".");
			}

			if (!node.Method.HasThis) {
				WriteReference (node.Method.DeclaringType);
				WriteToken (".");
			}

			Write (node.Method.Name);
		}
			bool IsCallOnEnumerator (MethodReferenceExpression method_reference_expression, string method_name)
			{
				if (method_reference_expression.Method.Name != method_name)
					return false;
				if (!IsEnumerator (method_reference_expression.Target))
					return false;
				return true;
			}
		static PropertyReferenceExpression CreatePropertyReferenceFromMethod (MethodReferenceExpression method_ref, MethodDefinition method)
		{
			return new PropertyReferenceExpression (method_ref.Target, GetProperty (method));
		}
		static AssignExpression ProcessSetter (MethodInvocationExpression invoke, MethodReferenceExpression method_ref, MethodDefinition method)
		{
			return new AssignExpression (
				CreatePropertyReferenceFromMethod (method_ref, method),
				invoke.Arguments [0]);
		}
		static PropertyReferenceExpression ProcessGetter (MethodReferenceExpression method_ref, MethodDefinition method)
		{
			return CreatePropertyReferenceFromMethod (method_ref, method);
		}
 public virtual void VisitMethodReferenceExpression(MethodReferenceExpression node)
 {
     Visit(node.Target);
 }