Skip to contents

Checks inherits strictly from S3 class using

is.object(x, class) && !isS4(x) && !inherits(x, "R6") && !inherits(x, "S7_object")

Usage

chk_s3_class_strict(x, class, x_name = NULL)

vld_s3_class_strict(x, class)

Arguments

x

The object to check.

class

A character vector specifying the possible class values.

x_name

A string of the name of object x or NULL.

Value

The chk_ function throws an informative error if the test fails or returns the original object if successful so it can used in pipes.

The vld_ function returns a flag indicating whether the test was met.

Functions

  • vld_s3_class_strict(): Validate Inherits from S3 Class

See also

inherits()

For more details about the use of this function, please read the article vignette("chk-families").

Other id_checkers: chk_class(), chk_data(), chk_is(), chk_s3_class(), chk_s4_class()

Examples

# chk_s3_class_strict
chk_s3_class_strict(factor(1), "factor")
try(chk_s3_class_strict(1, "numeric"))
#> Error in eval(expr, envir) : 
#>   `1` must strictly inherit from an S3 class called 'numeric'.
try(chk_s3_class_strict(getClass("MethodDefinition"), "classRepresentation"))
#> Error in eval(expr, envir) : 
#>   `getClass("MethodDefinition")` must strictly inherit from an S3 class called 'classRepresentation'.
# vld_s3_class_strict
vld_s3_class_strict(numeric(0), "numeric")
#> [1] FALSE
vld_s3_class_strict(getClass("MethodDefinition"), "classRepresentation")
#> [1] FALSE