Rd başka bir paket S4 bir yöntem uzanan zaman adı çatışma dosya
Gerçek soru
Nasıl Rd dosya çakışmaları önlemek zaman
- S4 genel ve Yöntem(ler)değilmutlaka aynı paketteki tüm tanımlı (paket içeren (bazıları) özel yöntem(ler) paketi genel içeren bağlıdır)ve
- paketi
roxygenize()
39 ** gerçek Rd dosyalarını oluşturmak için?
Emin değilim eğer bu bir roxygen2
sorunu veya genel bir sorun olduğunda genel ve Yöntem(ler) yayılmış paketleri (hangi IMHO genel kesinlikle gerçekçi bir kullanım senaryo eğer takip ettiğin bir modüler programlama tarzı).
Bu durumu ele almak için önerilen yol nedir?
Resimde
pkga
paket
8* *genel bir yöntem tanımlanmış ve ilgili roxygen kodu sağladıktan roxygenize()
Rd dosyası oluşturmak için alır o pakette sanırım pkga
:
#' Test function
#'
#' Test function.
#'
#' @param ... Further arguments.
#' @author Janko Thyson \email{janko.thyson@@rappster.de}
#' @example inst/examples/foo.R
#' @docType methods
#' @rdname foo-methods
#' @export
setGeneric(
name="foo",
signature=c("x"),
def=function(
x,
...
) {
standardGeneric("xFoo")
}
)
roxygenizing()
zaman paketiniz, bir dosya foo-methods.Rd
denilen bu genel yöntem için oluşturulan tüm yöntemleri için referans Rd dosyası olarak hizmet veren man
alt dizininde oluşturulur. Şimdiye kadar çok iyi. Eğer bu genel için tüm yöntemleri de paketinin bir parçası olursa, her şey iyi. Örneğin, bu roxygen kod belgeleri foo
ANY
yöntemi foo-methods.Rd
eklenir emin olun:
#' @param x \code{ANY}.
#' @return \code{TRUE}.
#' @rdname foo-methods
#' @aliases foo,ANY-method
#' @export
setMethod(
f="foo",
signature=signature(x="ANY"),
definition=cmpfun(function(
x,
...
) {
return(TRUE)
}, options=list(suppressAll=TRUE))
)
Ancak, eğer paket pkga
sağlar genel foo
ve karar başka bir paketin (pkgb
) eklemek için foo
-yöntem x
varlık sınıfı character
R CMD check
seni söyleyecek bir adı çatışma ile saygı Rd dosya isimleri ve/veya diğer adlar (orada zaten bir dosya Rd foo-methods.Rd
pkga
):
pkgb
paket
#' @param x \code{character}.
#' @return \code{character}.
#' @rdname foo-methods
#' @aliases foo,character-method
#' @export
setMethod(
f="foo",
signature=signature(x="character"),
definition=cmpfun(function(
x,
...
) {
return(x)
}, options=list(suppressAll=TRUE))
)
Daha net olmak gerekirse, bu/00install.out
dosyaya yazılı atılmış olan bir hata
Error : Q:/pkgb/man/foo-methods.Rd: Sections \title, and \name must exist and be unique in Rd files
ERROR: installing Rd objects failed for package 'pkgb'
Due dilligence
Denedim değerleri değiştirmek için @rdname
@aliases
foo_pkgb*
(yerine foo*
), ama \title
\name
hala ayarlamak için foo
zaman roxygenizing ve böylece hata devam ediyor. Herhangi bir fikirel ile Rd dosyalarını düzenleme dışındaroxygenize()
? tarafından üretilen
2012-12-01 DÜZENLEYİN
Bounty başlayan ışığında, gerçek soru biraz daha geniş bir fikir sahibi olabilir:
Nasıl uygulamak bir çeşit "ınter-paketi" çekle saygı Rd dosya ve/veya nasıl yapabiliriz pekiştirmek S4 yöntem yardım dosyaları her tarafına yayılmış bir paket halinde tek bir dosya Rd amacıyla mevcut tek kaynak başvuru için son kullanıcı?
CEVAP
Uzlaşma böyle dönmeler genelleştirilmiş kullanarak gerçekleştirmek gerekir gibi görünüyor.
Apı için bkz: http://www.blender.org/documentation/249PythonDoc/Mathutils.Quaternion-class.html
Matematik bir giriş için bkz: http://en.wikipedia.org/wiki/Rotation_formalisms_in_three_dimensions#Quaternions
Başka bir zaman uyumsuz yöntem yerine ...
Neden önemli GetHashCode yöntem geçers...
Bir CSS başka bir dosya eklemek mümkün...
Nasıl bir yöntem zaman'Java yürüt...
Ne zaman uyumsuz bir Görev<T> yö...