Files
AVSDevR.DBClient/R/DBConnection.R

44 lines
1.0 KiB
R

class_env <- new.env(parent = baseenv())
res <- lapply(list.files("R/DBConnectionClass", pattern = ".R"), function(fn) {
eval(
parse(paste0("R/DBConnectionClass/", fn)),
envir = class_env,
enclos = emptyenv()
)
})
fn_names <- names(which(vapply(class_env, is.function, logical(1))))
fn_list <- lapply(fn_names, function(fn_name) {
class_env[[fn_name]]
})
names(fn_list) <- fn_names
priv_fn_names <- ls(class_env, pattern = "^\\..*", all.names = TRUE)
priv_fn_list <- lapply(priv_fn_names, function(fn_name) {
class_env[[fn_name]]
})
names(priv_fn_list) <- gsub("^\\.", "", priv_fn_names)
member_names <- names(which(!vapply(class_env, is.function, logical(1))))
member_list <- lapply(member_names, function(member_name) {
class_env[[member_name]]
})
names(member_list) <- member_names
#' @name DBConnection
#' @title DBConnection
#' @description Database Connection class
NULL
#' @export
DBConnection <- R6::R6Class(
"DBConnection",
public = fn_list,
private = c(member_list, priv_fn_list),
lock_class = TRUE,
parent_env = class_env
)