2016-05-18 53 views
1

如何在R6类定义中获得方法定义的形式?R,R6,Formals for Public Method

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

因此,例如,在上面的,我想获得的甲缩醛为fun定义,以同样的方式一个可以执行,例如,formals(lm)

回答

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)