## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----------------------------------------------------------------------------- library(featureflag) create_odd_feature_flag <- function(number) { flag <- create_feature_flag() flag$number <- number class(flag) <- c("odd_feature_flag", class(flag)) flag } ## ----------------------------------------------------------------------------- is_odd_feature_flag <- function(feature_flag) { inherits(feature_flag, "odd_feature_flag") } ## ----------------------------------------------------------------------------- is_enabled.odd_feature_flag <- function(feature_flag) { stopifnot(is_odd_feature_flag(feature_flag)) (feature_flag$number %% 2) != 0 } ## ----------------------------------------------------------------------------- my_odd_feature_flag <- create_odd_feature_flag(number = 3) if (is_enabled(my_odd_feature_flag)) { print("The feature flag is on!") }