All,
I am considering creating an S4 class whose slots (2) are both S4 classes. ?Since an S4 slot can be an S3 class I figure this can be done. ?However, the correct syntax of which I am unsure. ?Reviewing the docs I have come to the following conclusion:
SetClass('myfoo',
? ? ? ? ? ? ? ? ? slots = (foo1, foo2))
Without a type I believe each slot is .Data. ?A get method on the above class slots would return say foo1 which will have all methods and generics belonging to foo1 class. ?Is this the correct approach?
Best,
Glenn
S4 class slot type S4 class
2 messages · Glenn Schultz, Martin Morgan
On 05/21/2018 12:06 AM, Glenn Schultz wrote:
All,
I am considering creating an S4 class whose slots (2) are both S4
classes. ?Since an S4 slot can be an S3 class I figure this can be done.
?However, the correct syntax of which I am unsure. ?Reviewing the docs
I have come to the following conclusion:
SetClass('myfoo',
? ? ? ? ? ? ? ? ? slots = (foo1, foo2))
Without a type I believe each slot is .Data. ?A get method on the above
class slots would return say foo1 which will have all methods and
generics belonging to foo1 class. ?Is this the correct approach?
Suppose you have two classes
.A = setClass("A", slots = c(x = "numeric"))
.B = setClass("B", slots = c(y = "numeric", z = "numeric"))
A third class containing these would be
.C = setClass("C", slots = c(a = "A", b = "B"))
where names of the slot argument are the slot names, and the character
strings "A", "B" are the type of object the slot will store.
> .C()
An object of class "C"
Slot "a":
An object of class "A"
Slot "x":
numeric(0)
Slot "b":
An object of class "B"
Slot "y":
numeric(0)
Slot "z":
numeric(0)
> .C(a = .A(x = 1:2), b = .B(y = 2:1, z = 1:2))
An object of class "C"
Slot "a":
An object of class "A"
Slot "x":
[1] 1 2
Slot "b":
An object of class "B"
Slot "y":
[1] 2 1
Slot "z":
[1] 1 2
Martin Morgan
Best, Glenn
______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
This email message may contain legally privileged and/or...{{dropped:2}}