/
private-variables.R
87 lines (72 loc) · 2 KB
/
private-variables.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#' @rdname hide
#' @export
setMethod("privateFolder", "CrunchDataset", function(x) .firstLevelFolder(x, "private"))
#' @rdname hide
#' @export
setMethod("privateFolder", "VariableCatalog", function(x) .firstLevelFolder(x, "private"))
#' @rdname hide
#' @export
setMethod("privateFolder", "VariableFolder", function(x) .firstLevelFolder(x, "private"))
#' @rdname hide
#' @export
setMethod("privatize", "CrunchVariable", .firstLevelFolderMover("private"))
#' @rdname hide
#' @export
setMethod("privatize", "VariableCatalog", .firstLevelFolderMover("private"))
#' @rdname hide
#' @export
setMethod("deprivatize", "CrunchVariable", .firstLevelFolderMover("public"))
#' @rdname hide
#' @export
setMethod("deprivatize", "VariableCatalog", .firstLevelFolderMover("public"))
#' @rdname hide
#' @export
privatise <- function(x) {
privatize(x)
}
#' @rdname hide
#' @export
deprivatise <- function(x) {
deprivatize(x)
}
#' @rdname hide
#' @export
privatizeVariables <- function(dataset, variables) {
dataset <- mv(dataset, variables, privateFolder(dataset))
return(invisible(refresh(dataset)))
}
#' @rdname hide
#' @export
privatiseVariables <- function(dataset, variables) {
privatizeVariables(dataset, variables)
}
#' @rdname hide
#' @export
`privateVariables<-` <- function(x, value) privatizeVariables(x, value)
#' @rdname hide
#' @export
deprivatizeVariables <- function(dataset, variables) {
dataset <- mv(dataset, variables, publicFolder(dataset))
return(invisible(refresh(dataset)))
}
#' @rdname hide
#' @export
deprivatiseVariables <- function(dataset, variables) {
deprivatizeVariables(dataset, variables)
}
#' @rdname hide
#' @export
privateVariables <- function(dataset, key = namekey(dataset)) {
if (is.unforcedVariableCatalog(dataset@privateVariables)) {
pv <- getDatasetPrivateVariables(dataset)
} else {
pv <- dataset@privateVariables
}
if (length(pv)) {
return(sort(vapply(index(pv), vget(key), character(1),
USE.NAMES = FALSE
)))
} else {
return(c())
}
}