R,R6,公共方法的正式法

时间:2016-05-18 05:49:09

标签: r methods r6

如何在R6类定义中获取方法定义的形式?

A = R6Class("MyClass",inherit=NULL,
    public = list(
        fun = function(a,b,c){
            # Do Something
        }
    )
)

例如,在上文中,我想获得fun定义的形式,与人们可以执行的方式相同,例如formals(lm)

1 个答案:

答案 0 :(得分:2)

您可以通过创建类的实例来完成此操作:

A = R6Class("MyClass",
        inherit=NULL,
        public = list(
            a = NA,
            initialize = function(a){
                self$a <- a
            },
            fun = function(a,b,c){
                # Do Something
            }
        )
)
B <- A$new(5)
formals(B$fun)

或访问该类的公共方法

formals(A$public_methods$fun)