var sig = (Signal) ea.container.symbol_reference;
right.target_type = new DelegateType (sig.get_delegate (ma.inner.value_type, this));
} else if (ea.container.value_type.get_member ("set") is Method) {
- var set_call = new MethodCall (new MemberAccess (ea.container, "set"));
+ var set_call = new MethodCall (new MemberAccess (ea.container, "set", source_reference), source_reference);
foreach (Expression e in ea.get_indices ()) {
set_call.add_argument (e);
}
return false;
}
- var contains_call = new MethodCall (new MemberAccess (right, "contains"));
+ var contains_call = new MethodCall (new MemberAccess (right, "contains", source_reference), source_reference);
contains_call.add_argument (left);
parent_node.replace_expression (this, contains_call);
return contains_call.check (analyzer);
value_type = container.value_type.get_type_arguments ().get (i);
// replace element access by call to generic get method
- var ma = new MemberAccess (container, "get");
+ var ma = new MemberAccess (container, "get", source_reference);
ma.add_type_argument (value_type);
- var get_call = new MethodCall (ma);
+ var get_call = new MethodCall (ma, source_reference);
get_call.add_argument (index);
get_call.target_type = this.target_type;
parent_node.replace_expression (this, get_call);
} else {
var get_method = container.value_type.get_member ("get") as Method;
if (get_method != null) {
- var get_call = new MethodCall (new MemberAccess (container, "get"));
+ var get_call = new MethodCall (new MemberAccess (container, "get", source_reference), source_reference);
foreach (Expression e in get_indices ()) {
get_call.add_argument (e);
}