Method CreateMethodAccessor(IMethod member) { BooCodeBuilder builder = _context.CodeBuilder; Method method = builder.CreateMethodFromPrototype(LexicalInfo.Empty, member, TypeMemberModifiers.None); method.Name = "___" + member.Name; MethodInvocationExpression mie = builder.CreateMethodInvocation(member); foreach (ParameterDeclaration p in method.Parameters) { mie.Arguments.Add(builder.CreateReference(p)); } if (member.ReturnType == _context.TypeSystemServices.VoidType) { method.Body.Add(mie); } else { method.Body.Add(new ReturnStatement(mie)); } return(method); }