public void AddMethod(RubyContext/*!*/ callerContext, string/*!*/ name, RubyMemberInfo/*!*/ method) { Assert.NotNull(name, method); Mutate(); SetMethodNoEvent(callerContext, name, method); MethodAdded(name); }
public static Proc /*!*/ DefineMethod(RubyScope /*!*/ scope, RubyModule /*!*/ self, [DefaultProtocol, NotNull] string /*!*/ methodName, [NotNull] Proc /*!*/ block) { var visibility = GetDefinedMethodVisibility(scope, self, methodName); var info = Proc.ToLambdaMethodInfo(block, methodName, visibility, self); self.AddMethod(scope.RubyContext, methodName, info); return(info.Lambda); }