gganimintproto {animint2}R Documentation

Create a new gganimintproto object

Description

gganimintproto is inspired by the proto package, but it has some important differences. Notably, it cleanly supports cross-package inheritance, and has faster performance.

Usage

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

gganimintproto_parent(parent, self)

Arguments

_class

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

_inherit

gganimintproto object to inherit from. If NULL, don't inherit from any object.

...

A list of members in the gganimintproto object.

parent, self

Access parent class parent of object self.

Calling gganimintproto methods

gganimintproto methods can take an optional self argument: if it is present, it is a regular method; if it's absent, it's a "static" method (i.e. it doesn't use any fields).

Imagine you have a gganimintproto object Adder, which has a method addx = function(self, n) n + self$x. Then, to call this function, you would use Adder$addx(10) – the self is passed in automatically by the wrapper function. self be located anywhere in the function signature, although customarily it comes first.

Calling methods in a parent

To explicitly call a methods in a parent, use gganimintproto_parent(Parent, self).


[Package animint2 version 2024.1.24 Index]