Does the S4 input have a slot?

Share:

Description

Checks to see if the object is an S4 object with a particular slot.

Usage

1
2
3
assert_has_slot(x, severity = getOption("assertive.severity", "stop"))

has_slot(x, slotname, .xname = get_name_in_parent(x))

Arguments

x

Input to check. Intended to be an S4 object.

severity

How severe should the consequences of the assertion be? Either "stop", "warning", "message", or "none".

slotname

A string naming a slot to check for.

.xname

Not intended to be used directly.

Value

has_names returns TRUE if names is non-null.

See Also

slot

Examples

1
2
3
4
5
setClass("numbers", representation(foo = "numeric"))
x <- new("numbers", foo = 1:10)
has_slot(x, "foo")
has_slot(x, "bar")
has_slot(1:10, "foo")