metaprogramming

    4熱度

    1回答

    如果這個問題有一個重複的,對不起,我沒有找到它,我會問如果有人這樣的問題。 我有這個簡單的Python類: class NothingSpecial: @classmethod def meth(cls): print("hi!") ,並試圖讓不同的方法,我做的方法: a = (object.__getattribute__(NothingSpecial, '

    -1熱度

    1回答

    向元類添加一個方法在下面的例子中可以很好地工作。 class Test(object): def __init__(self, x): self.x = x def double(self): return self.x*2 # method to add def quadruple(self): return self.x*4

    0熱度

    1回答

    我有一些使用sinon存根的問題,它可能來自我如何在模塊上實現命名空間,我期待存根。直接在原型上定義的方法按我所期望的那樣存在。 ...my module.js const Constructor = require('./constructor') //...just exports a singleton /* Need to namespace some of my functions

    1熱度

    1回答

    我有一個格式爲{:task, function_name, description}的元組列表,我想生成一個調用元組中定義的函數來覆蓋值的函數。 我生成的函數應該是這樣的: def run(val) do val = do_something(val) val = do_something_else(val) ... val end 這裏是我當前的代

    0熱度

    2回答

    快速元編程的問題。在我的rails 5項目中,我想找到代碼中某個gem的安裝位置(即非命令行)。 我開始Bundler.install_path。根據該 看,我看到我已經安裝了這個紅寶石(我用rbenv,但這應該RVM的工作太)的各種寶石的所有版本。 /home/user/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/bundler/gems/mygem-7e

    0熱度

    1回答

    我一直在研究Elixir中的宏,然後我在編程Elixir>第20章>使用綁定注入值中找到這個片段。 defmodule Test do require My [ :fred, :bert ] |> Enum.each(&My.mydef(&1)) end 其中mydef是一個簡單的宏,它爲給定的名稱定義了一個echo方法。因此,我的模塊測試應該有兩個功能fred和bert

    1熱度

    2回答

    爲什麼對於此代碼我有以下錯誤? module ForExtend def print print "ForExtend print method!" end end class A end a = A.new class << a extend ForExtend end a.print 結果: private method `pr

    0熱度

    2回答

    我試圖建立兩個抽象類稱爲SurveyQuestionBase和SurveyResponseBase,將作爲模板來快速確定新的具體型號我們的網站上實施具體的調查。我遇到的問題是強制執行SurveyResponseBase模型,具體時應將ForeignKey定義爲SurveyQuestionBase的具體模型。 Django不允許我們定義ForeignKeys抽象類,所以我沒有,比如,這樣做可以: q

    0熱度

    1回答

    我有一個Rails 5項目,我深入元編程的土地。 其中一個要求是,系統管理員可以隨時修改某些gem依賴項(即Gemfile)。這僅限於可能添加的幾個gem,並且它們都具有類似的:: Rails :: Engine結構。 我一直在玩幾種策略,包括<Module>.autoload :<class_name>, <file path>但它不加載任何依賴關係。 我想要做的就是在rails運行時動態加載更

    4熱度

    2回答

    我想創建一個具有私有類方法的類。我希望可以在實例方法內使用此私有類方法。 以下是我第一次嘗試: class Animal class << self def public_class_greeter(name) private_class_greeter(name) end private def private_class_gree