# will produce lints
lint(
text = "foo <- function(x) return(y <- x + 1)",
linters = function_return_linter()
)
lint(
text = "foo <- function(x) return(x <<- x + 1)",
linters = function_return_linter()
)
writeLines("e <- new.env() \nfoo <- function(x) return(e$val <- x + 1)")
lint(
text = "e <- new.env() \nfoo <- function(x) return(e$val <- x + 1)",
linters = function_return_linter()
)
# okay
lint(
text = "foo <- function(x) return(x + 1)",
linters = function_return_linter()
)
code_lines <- "
foo <- function(x) {
x <<- x + 1
return(x)
}
"
lint(
text = code_lines,
linters = function_return_linter()
)
code_lines <- "
e <- new.env()
foo <- function(x) {
e$val <- x + 1
return(e$val)
}
"
writeLines(code_lines)
lint(
text = code_lines,
linters = function_return_linter()
)
Run the code above in your browser using DataLab