Skip to content

Commit

Permalink
Add .package_code_using_R_4.1_syntax().
Browse files Browse the repository at this point in the history
Based on R-devel post by Ivan Krylov.

git-svn-id: https://svn.r-project.org/R/trunk@87612 00db46b3-68df-0310-9c12-caf00c1e9a41
  • Loading branch information
hornik committed Jan 22, 2025
1 parent 9854b13 commit 342369e
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions src/library/tools/R/utils.R
Original file line number Diff line number Diff line change
Expand Up @@ -2112,6 +2112,48 @@ function(packages = NULL, FUN, ..., pattern = "*", verbose = TRUE,
out
}

### ** .package_code_using_R_4.1_syntax

.package_code_using_R_4.1_syntax <-
function(dir)
{
dir <- file_path_as_absolute(dir)
wrk <- function(f) {
x <- utils::getParseData(parse(f, keep.source = TRUE))
i <- x$token %in% c("PIPE", "'\\\\'")
utils::getParseText(x, x[i, "parent"])
}
one <- function(f)
tryCatch(wrk(file.path(dir, "R", f)), error = identity)

files <- list_files_with_type(file.path(dir, "R"), "code",
full.names = FALSE,
OS_subdirs = c("unix", "windows"))
out <- lapply(files, one)
names(out) <- files
Filter(length, out)
}

## ** .package_depends_on_R_at_least

.package_depends_on_R_at_least <-
function(dir, v)
{
.package_metadata_has_depends_on_R_at_least(.get_package_metadata(dir),
v)
}

### ** .package_metadata_has_depends_on_R_at_least

.package_metadata_has_depends_on_R_at_least <-
function(meta, v)
{
for(dep in .split_description(meta)$Rdepends2) {
if((dep$op == '>=') && (dep$version >= v)) return(TRUE)
}
FALSE
}

### ** .package_vignettes_via_call_to_R

.package_vignettes_via_call_to_R <-
Expand Down

0 comments on commit 342369e

Please sign in to comment.