我試圖將Python腳本轉換爲Rust作爲學習體驗,並使工具更快速並縮小代碼/可執行文件的大小。什麼是習慣方法來創建一個方法的參考集合採取自我?
我目前正試圖轉換一個部分,它創建一個對自我方法的引用列表。現在我已經瞭解到,沒有辦法爲一個方法綁定self
變量,必須使用閉包並關閉方法將被調用的對象。然而,當你創建一個閉包時,它會被分配一個唯一的匿名類型,所以我不認爲我可以創建一個Vec
或閉包數組而不用裝箱,這可能是要走的路,但有一些可能並不必要的開銷。
我想知道的是,而不是方法引用列表的Python知情的設計,是否有一個更生鏽的方式來做到這一點,不與戰鬥類型系統?
self.dataProcessors = []
if(self.dataMode) :
self.dataProcessors.append(self._processData_)
if(self.csvOn):
self.dataProcessors.append(self._processData_CSV_)