MethodsList
位於 methods
包(package)。 說明
這些函數創建和操作MethodsList
對象,以前使用的對象R存儲調度方法。不推薦使用這些對象,因為R3.2.0,因為這很少是一個好主意。要研究方法調度的地方,請參見selectMethod
。對於迭代方法或方法簽名的計算,請參閱findMethods
,它返回一個線性化方法列表來保存方法定義,通常比遞歸更方便迭代MethodsList
對象。
用法
listFromMlist(mlist, prefix = list(), sigs. = TRUE, methods. = TRUE)
linearizeMlist(mlist, inherited = TRUE)
finalDefaultMethod(method)
loadMethod(method, fname, envir)
##--------- These are all deprecated, since R 3.2.0 ----------
MethodsList(.ArgName, ...)
makeMethodsList(object, level=1)
SignatureMethod(names, signature, definition)
insertMethod(mlist, signature, args, def, cacheOnly)
inheritedSubMethodLists(object, thisClass, mlist, ev)
showMlist(mlist, includeDefs = TRUE, inherited = TRUE,
classes, useArgNames, printTo = stdout() )
## S3 method for class 'MethodsList'
print(x, ...)
mergeMethods(m1, m2, genericLabel)
emptyMethodsList(mlist, thisClass = "ANY", sublist = list())
細節
listFromMlist
:-
撤銷方法列表的遞歸性質,創建函數定義的
list(sigs,methods)
列表,即匹配簽名和方法。prefix
是要附加到此對象中的簽名的部分簽名(類的命名列表)。如果sigs.
或methods.
是FALSE
,則返回值的結果部分將為空。一個實用函數,用於迭代對象中的所有單獨方法,它遞歸地調用自身。
linearizeMlist
:-
撤銷方法列表的遞歸性質,創建函數定義列表,列表的名稱是相應的簽名。
專為印刷而設計;要循環方法,請改用上麵的
listFromMlist
。 finalDefaultMethod
:-
默認方法還是NULL。隨著
"MethodsList"
對象的消亡,此函數僅檢查給定的值是否是方法定義、原始值或 NULL。 loadMethod
:-
如有必要,在幀
envir
中調度對method
的調用之前調用。該函數的存在使得可以為特殊類的對象定義方法。通常重點是分配或修改要用於評估的框架環境中的信息。例如,標準類MethodDefinition
具有在環境中存儲目標和定義的簽名的方法。類MethodWithNext
有一個方法,考慮到存儲在調用callNextMethod
時使用的方法的機製。為
loadMethod
定義的任何方法都必須返回用於此調用的函數定義;通常,這隻是method
參數。
參考
Chambers, John M. (2008) Software for Data Analysis: Programming with R Springer. (For the R version.)
Chambers, John M. (1998) Programming with Data Springer (For the original S4 version.)
相關用法
- R Methods_for_Nongenerics 其他包中非泛型函數的方法
- R MethodSupport 方法的附加(支持)函數
- R as 強製對象屬於某個類
- R language-class 表示未評估語言對象的類
- R className 類名包含對應的包
- R BasicClasses 基本數據類型對應的類
- R callGeneric 從方法調用當前通用函數
- R findClass 查找類定義
- R setOldClass 注冊舊式 (S3) 類和繼承
- R ReferenceClasses 具有按引用處理的字段的對象(OOP 樣式)
- R setGroupGeneric 創建函數的組通用版本
- R StructureClasses 基本結構對應的類
- R showMethods 顯示指定函數或類的所有方法
- R getMethod 獲取或測試方法的定義
- R slot 正式類對象中的槽
- R S4groupGeneric S4組通用函數
- R methodUtilities 用於方法和 S-Plus 兼容性的實用函數
- R getClass 獲取類定義
- R evalSource 使用源文件中的函數定義,無需重新安裝包
- R is 對象是來自類嗎?
- R isSealedMethod 檢查密封方法或類
- R cbind2 按列或行組合兩個對象
- R GenericFunctions 管理通用函數的工具
- R dotsMethods 在方法簽名中使用...
- R S3Part 包含 S3 類的 S4 類
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 MethodsList Objects。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。