pproto: Create a new 'pproto' object

View source: R/pproto.R

pprotoR Documentation

Create a new pproto object

Description

Construct a new object with pproto. This object system is inspired from the ggproto system used in the ggplot2 package.

Usage

pproto(`_class` = NULL, `_inherit` = NULL, ...)

Arguments

_class

Class name to assign to the object. This is stored as the class attribute of the object. This is optional: if NULL (the default), no class name will be added to the object.

_inherit

pproto object to inherit from. If NULL, don"t inherit from any object.

...

A list of members to add to the new pproto object.

Examples

Adder <- pproto("Adder",
  x = 0,
  add = function(self, n) {
    self$x <- self$x + n
    self$x
  }
)

Adder$add(10)
Adder$add(10)

Abacus <- pproto("Abacus", Adder,
  subtract = function(self, n) {
    self$x <- self$x - n
    self$x
  }
)
Abacus$add(10)
Abacus$subtract(10)


oppr documentation built on Sept. 8, 2022, 5:07 p.m.