विफल रहता है मुझे check
Roxygen के साथ असाइनमेंट फ़ंक्शन के साथ समस्या हो रही है।असाइनमेंट फ़ंक्शन प्रलेखन आरएमडी चेक
यहाँ एक काफी कम से कम उदाहरण है:
#' Get sp feature IDs
#' @aliases IDs IDs.default IDs.SpatialPolygonsDataFrame IDs<- IDs<-.SpatialPolygonsDataFrame
#' @param x The object to get the IDs from or assign to
#' @param value The character vector to assign to the IDs
#' @param \dots Pass-alongs
#' @author Ari B. Friedman
#' @rdname IDs
IDs <- function(x,...) {
UseMethod("IDs",x)
}
#' @method IDs default
#' @S3method IDs default
#' @rdname IDs
IDs.default <- function(x,...) {
stop("Currently only SpatialPolygonsDataFrames are supported.")
}
#' @method IDs SpatialPolygonsDataFrame
#' @S3method IDs SpatialPolygonsDataFrame
#' @rdname IDs
IDs.SpatialPolygonsDataFrame <- function(x,...) {
vapply(slot(x, "polygons"), function(x) slot(x, "ID"), "")
}
#' Assign sp feature IDs
#' @rdname IDs
"IDs<-" <- function(x, value) {
UseMethod("IDs<-",x)
}
#' @method IDs<- SpatialPolygonsDataFrame
#' @S3method IDs<- SpatialPolygonsDataFrame
#' @rdname IDs
"IDs<-.SpatialPolygonsDataFrame" <- function(x, value) {
spChFIDs(x,value)
}
और जब मैं check
चलाएँ:
* checking for code/documentation mismatches ... WARNING
Codoc mismatches from documentation object 'IDs':
IDs<-
Code: function(x, value)
Docs: function(x, value, value)
IDs<-.SpatialPolygonsDataFrame
Code: function(x, value)
Docs: function(x, value, value)
मुझे समझ नहीं आता जहां दूसरी value
से आ रही है। मैंने इस सिद्धांत पर @param value
को समाप्त करने का प्रयास किया है कि शायद Roxygen स्वचालित रूप से असाइनमेंट फ़ंक्शंस के लिए एक प्रविष्टि बनाता है, लेकिन यह (x,value,value)
परिभाषा को समाप्त नहीं करता है और शिकायत करता है कि मैंने value
परिभाषित नहीं किया है।
यहाँ .Rd
उत्पन्न के संबंधित भाग है:
\usage{
IDs(x, ...)
\method{IDs}{default} (x, ...)
\method{IDs}{SpatialPolygonsDataFrame} (x, ...)
IDs(x, value) <- value
\method{IDs}{SpatialPolygonsDataFrame} (x, value) <-
value
}
मैं (x, value, value)
हस्ताक्षर नहीं दिख रहा है कि check
दावों है।
यह एक एस 3 फ़ंक्शन है लेकिन यह एस 4 ऑब्जेक्ट पर चल रहा है। मुझे लगता है कि यह अभी भी एस 3 बनाना चाहिए, मुझे लगता है। लेकिन अगर ऐसा नहीं हो सकता है कि @S3method
का मेरा उपयोग समस्या है।
मदद?
यह शायद इसलिए है क्योंकि roxygen2 में एस 4 समर्थन बेकार है :(आप कोशिश कर सकते हैं प्रयोगात्मक [roxygen3] (http://github.com/hadley/roxygen3/) जो में कुछ बिंदु पर roxygen2 में वापस विलय हो जाएगा भविष्य। – hadley
यह संबंधित प्रतीत होता है: http://stackoverflow.com/questions/8873514/documenting-setter-functions-with-roxygen – Dason