R.oo (version 1.21.0)

DOLLAR< -.Class: Makes the fields and methods of an Class assignable via the \$<- and the [[<- operator

Description

Makes the fields and methods of an Class assignable via the $<- operator. This method is never called explicitly, but through an indirect usage of the $<- operator, e.g. obj$name <- "foo".

  1. This method will first search for a
    set()
    method, e.g. if name has the value "age", a setAge() will be looked for. If such a method exists it will be called with the Class as the first argument and value as the second, e.g. setAge(this, value). A get() is only looked for if is not a private field. A private field is a name beginning with a . (period). The rational for this naming convention is to be consistent with how ls() works, which will not list such members by default.

  • If no such method exists it will assign the value to a (existing or a non-existing) field named name.
  • Because any

    set()
    is called first, it is possible to encapsulate (hide away) fields with certain names or to put restrictions to what values can be assigned to them.

    Usage

    "$"(this, name) <- value "[["(this, name) <- value

    Arguments

    name
    The name of the
    set()
    method or the name of the field to be assigned the new value.
    value
    The value to be assigned.
    ...
    Not used.

    Value

    Returns itself, i.e. this, as all $<- methods must do.

    See Also

    For more information see Class.