@@ -143,9 +143,19 @@ value_seq_dbl <- function(object, n, original = TRUE) {
143
143
n_safely <- min(length(object $ values ), n )
144
144
res <- object $ values [seq_len(n_safely )]
145
145
} else {
146
+ range_lower <- min(unlist(object $ range ))
147
+ if (! object $ inclusive [" lower" ]) {
148
+ range_lower <- range_lower + .Machine $ double.eps
149
+ }
150
+
151
+ range_upper <- max(unlist(object $ range ))
152
+ if (! object $ inclusive [" upper" ]) {
153
+ range_upper <- range_upper - .Machine $ double.eps
154
+ }
155
+
146
156
res <- seq(
147
- from = min(unlist( object $ range )) ,
148
- to = max(unlist( object $ range )) ,
157
+ from = range_lower ,
158
+ to = range_upper ,
149
159
length.out = n
150
160
)
151
161
}
@@ -161,9 +171,19 @@ value_seq_int <- function(object, n, original = TRUE) {
161
171
n_safely <- min(length(object $ values ), n )
162
172
res <- object $ values [seq_len(n_safely )]
163
173
} else {
174
+ range_lower <- min(unlist(object $ range ))
175
+ if (! object $ inclusive [" lower" ]) {
176
+ range_lower <- range_lower + 1L
177
+ }
178
+
179
+ range_upper <- max(unlist(object $ range ))
180
+ if (! object $ inclusive [" upper" ]) {
181
+ range_upper <- range_upper - 1L
182
+ }
183
+
164
184
res <- seq(
165
- from = min(unlist( object $ range )) ,
166
- to = max(unlist( object $ range )) ,
185
+ from = range_lower ,
186
+ to = range_upper ,
167
187
length.out = n
168
188
)
169
189
}
@@ -202,10 +222,20 @@ value_sample <- function(object, n, original = TRUE) {
202
222
203
223
value_samp_dbl <- function (object , n , original = TRUE ) {
204
224
if (is.null(object $ values )) {
225
+ range_lower <- min(unlist(object $ range ))
226
+ if (! object $ inclusive [" lower" ]) {
227
+ range_lower <- range_lower + .Machine $ double.eps
228
+ }
229
+
230
+ range_upper <- max(unlist(object $ range ))
231
+ if (! object $ inclusive [" upper" ]) {
232
+ range_upper <- range_upper - .Machine $ double.eps
233
+ }
234
+
205
235
res <- runif(
206
236
n ,
207
- min = min(unlist( object $ range )) ,
208
- max = max(unlist( object $ range ))
237
+ min = range_lower ,
238
+ max = range_upper
209
239
)
210
240
} else {
211
241
res <- sample(
@@ -223,11 +253,22 @@ value_samp_dbl <- function(object, n, original = TRUE) {
223
253
value_samp_int <- function (object , n , original = TRUE ) {
224
254
if (is.null(object $ trans )) {
225
255
if (is.null(object $ values )) {
256
+ range_lower <- min(unlist(object $ range ))
257
+ if (! object $ inclusive [" lower" ]) {
258
+ range_lower <- range_lower + 1L
259
+ }
260
+
261
+ range_upper <- max(unlist(object $ range ))
262
+ if (! object $ inclusive [" upper" ]) {
263
+ range_upper <- range_upper - 1L
264
+ }
265
+
226
266
res <- sample(
227
- min(unlist( object $ range )) : max(unlist( object $ range ) ),
267
+ seq( from = range_lower , to = range_upper ),
228
268
size = n ,
229
269
replace = TRUE
230
270
)
271
+ res <- as.integer(res )
231
272
} else {
232
273
res <- sample(
233
274
object $ values ,
@@ -237,10 +278,20 @@ value_samp_int <- function(object, n, original = TRUE) {
237
278
}
238
279
} else {
239
280
if (is.null(object $ values )) {
281
+ range_lower <- min(unlist(object $ range ))
282
+ if (! object $ inclusive [" lower" ]) {
283
+ range_lower <- range_lower + .Machine $ double.eps
284
+ }
285
+
286
+ range_upper <- max(unlist(object $ range ))
287
+ if (! object $ inclusive [" upper" ]) {
288
+ range_upper <- range_upper - .Machine $ double.eps
289
+ }
290
+
240
291
res <- runif(
241
292
n ,
242
- min = min(unlist( object $ range )) ,
243
- max = max(unlist( object $ range ))
293
+ min = range_lower ,
294
+ max = range_upper
244
295
)
245
296
} else {
246
297
res <- sample(
0 commit comments