R6Class
(Package: R6) :
Create an R6 reference object generator
R6 objects are essentially environments, structured in a way that makes them look like an object in a more typical object-oriented language than R. They support public and private members, as well as inheritance across different packages.