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