44 lines
1.0 KiB
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
|
|
)
|