14.11 Adding methods after class creation

  • Use $set() to add methods after creation.
  • Keep in mind methods added with $set() are only available with new objects.
Accumulator <- R6Class("Accumulator")
Accumlator$set("public", "sum", 0)
Accumulator$set("public", "add", function(x = 1) {
  self$sum <- self$sum + x
  invisible(self)
})