prop(x, "name") / prop@name get the value of the a property,
erroring if it the property doesn't exist.
prop(x, "name") <- value / prop@name <- value set the value of
a property.
prop(object, name)
prop(object, name, check = TRUE) <- value
object@nameAn object from a S7 class
The name of the parameter as a character. Partial matching is not performed.
If TRUE, check that value is of the correct type and run
validate() on the object before returning.
A new value for the property. The object is automatically checked for validity after the replacement is done.
prop() and @ return the value of the property.
prop<-() and @<- are called for their side-effects and return
the modified object, invisibly.
Horse <- new_class("Horse", properties = list(
name = class_character,
colour = class_character,
height = class_numeric
))
lexington <- Horse(colour = "bay", height = 15, name = "Lex")
lexington@colour
#> [1] "bay"
prop(lexington, "colour")
#> [1] "bay"
lexington@height <- 14
prop(lexington, "height") <- 15