prop(x, "name")/prop@nameget the value of the a property, erroring if it the property doesn't exist.prop(x, "name") <- value/prop@name <- valueset the value of a property.
Arguments
- object
An object from a S7 class
- name
The name of the parameter as a character. Partial matching is not performed.
- check
If
TRUE, check thatvalueis of the correct type and runvalidate()on the object before returning.- value
A new value for the property. The object is automatically checked for validity after the replacement is done.
Value
prop() and @ return the value of the property.
prop<-() and @<- are called for their side-effects and return
the modified object, invisibly.
Examples
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