# TileDB Storage Platform API
#
# TileDB Storage Platform REST API
#
# The version of the OpenAPI document: 2.2.19
#
# Generated by: https://openapi-generator.tech
#' @docType class
#' @title UDFSubarrayRange
#'
#' @description UDFSubarrayRange Class
#'
#' @format An \code{R6Class} generator object
#'
#' @field dimension_id integer [optional]
#'
#' @field range_start \link{DimensionCoordinate} [optional]
#'
#' @field range_end \link{DimensionCoordinate} [optional]
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
UDFSubarrayRange <- R6::R6Class(
'UDFSubarrayRange',
public = list(
`dimension_id` = NULL,
`range_start` = NULL,
`range_end` = NULL,
initialize = function(
`dimension_id`=NULL, `range_start`=NULL, `range_end`=NULL, ...
) {
local.optional.var <- list(...)
if (!is.null(`dimension_id`)) {
stopifnot(is.numeric(`dimension_id`), length(`dimension_id`) == 1)
self$`dimension_id` <- `dimension_id`
}
if (!is.null(`range_start`)) {
stopifnot(R6::is.R6(`range_start`))
self$`range_start` <- `range_start`
}
if (!is.null(`range_end`)) {
stopifnot(R6::is.R6(`range_end`))
self$`range_end` <- `range_end`
}
},
toJSON = function() {
UDFSubarrayRangeObject <- list()
if (!is.null(self$`dimension_id`)) {
UDFSubarrayRangeObject[['dimension_id']] <-
self$`dimension_id`
}
if (!is.null(self$`range_start`)) {
UDFSubarrayRangeObject[['range_start']] <-
self$`range_start`$toJSON()
}
if (!is.null(self$`range_end`)) {
UDFSubarrayRangeObject[['range_end']] <-
self$`range_end`$toJSON()
}
UDFSubarrayRangeObject
},
fromJSON = function(UDFSubarrayRangeJson) {
UDFSubarrayRangeObject <- jsonlite::fromJSON(UDFSubarrayRangeJson)
if (!is.null(UDFSubarrayRangeObject$`dimension_id`)) {
self$`dimension_id` <- UDFSubarrayRangeObject$`dimension_id`
}
if (!is.null(UDFSubarrayRangeObject$`range_start`)) {
range_startObject <- DimensionCoordinate$new()
range_startObject$fromJSON(jsonlite::toJSON(UDFSubarrayRangeObject$range_start, auto_unbox = TRUE, digits = NA))
self$`range_start` <- range_startObject
}
if (!is.null(UDFSubarrayRangeObject$`range_end`)) {
range_endObject <- DimensionCoordinate$new()
range_endObject$fromJSON(jsonlite::toJSON(UDFSubarrayRangeObject$range_end, auto_unbox = TRUE, digits = NA))
self$`range_end` <- range_endObject
}
self
},
toJSONString = function() {
jsoncontent <- c(
if (!is.null(self$`dimension_id`)) {
sprintf(
'"dimension_id":
%d
',
self$`dimension_id`
)},
if (!is.null(self$`range_start`)) {
sprintf(
'"range_start":
%s
',
jsonlite::toJSON(self$`range_start`$toJSON(), auto_unbox=TRUE, digits = NA)
)},
if (!is.null(self$`range_end`)) {
sprintf(
'"range_end":
%s
',
jsonlite::toJSON(self$`range_end`$toJSON(), auto_unbox=TRUE, digits = NA)
)}
)
jsoncontent <- paste(jsoncontent, collapse = ",")
paste('{', jsoncontent, '}', sep = "")
},
fromJSONString = function(UDFSubarrayRangeJson) {
UDFSubarrayRangeObject <- jsonlite::fromJSON(UDFSubarrayRangeJson)
self$`dimension_id` <- UDFSubarrayRangeObject$`dimension_id`
self$`range_start` <- DimensionCoordinate$new()$fromJSON(jsonlite::toJSON(UDFSubarrayRangeObject$range_start, auto_unbox = TRUE, digits = NA))
self$`range_end` <- DimensionCoordinate$new()$fromJSON(jsonlite::toJSON(UDFSubarrayRangeObject$range_end, auto_unbox = TRUE, digits = NA))
self
}
)
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.