Alternative S4 Constructor
An alternative version of new
to create objects based on a list
of values.
new2(class, ...)
class |
Class name to instanciate |
... |
extra arguments from which slot values are extracted by exact matching of names. |
setClass('A', contain='character', representation(x='numeric', y='character')) # identical behaviour with standard calls identical(new('A'), new2('A')) identical(new('A', x=1), new2('A', x=1)) # but if passing that are names not slots identical(new('A'), new2('A', b=1)) identical(new('A', x=1), new2('A', x=1, b=3)) identical(new('A', x=1), new2('A', x=1, b=3)) # standard `new` would coerce first unnamed argument into parent of 'A' (i.e. 'character') new('A', list(x=1)) new('A', list(x=1, y='other')) # `new2` rather use it to initialise the slots it can find in the list identical(new('A', x=1), new2('A', list(x=1))) identical(new('A', x=1, y='other'), new2('A', list(x=1, y='other')))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.