metaprogramming

    3热度

    4回答

    我是新来的Ruby,所以我有一些无法理解我在这个奇怪的异常问题。我正在使用ruby-aaws gem访问Amazon ECS:http://www.caliban.org/ruby/ruby-aws/。这定义一个类亚马逊的AWS :::错误: module Amazon module AWS # All dynamically generated exceptions occu

    5热度

    3回答

    我有几个模型需要在其上放置自定义查找条件。例如,如果我有一个联系人模型,每次调用Contact.find时,我想限制只属于正在使用的帐户返回的联系人。 我发现这个通过谷歌(我已经定制了一点): def self.find(*args) with_scope(:find => { :conditions => "account_id = #{$account.id}" }) do

    7热度

    5回答

    给定一个适度复杂的XML结构(数十个元素,数百个属性),没有XSD并且希望创建对象模型,那么避免编写样板from_xml()和to_xml()方法的优雅方法是什么? 例如,给定: <Foo bar="1"><Bat baz="blah"/></Foo> 如何避免写作的无尽的序列: class Foo attr_reader :bar, :bat def from_xml(

    104热度

    8回答

    静态元编程(又名“模板元编程”)是一种很棒的C++技术,它允许在编译时执行程序。一个灯泡,当我读到这个规范的元编程例子在我的头上,一旦去了: #include <iostream> using namespace std; template< int n > struct factorial { enum { ret = factorial< n - 1 >::ret * n }; };

    3热度

    2回答

    我想通过从“测试驱动开发:通过示例”编写Kent Beck的xUnit Python示例来改进我的Ruby。我有相当远的距离,但现在当我跑步的时候,我得到了下面的错误,我不理睬。 C:\Documents and Settings\aharmel\My Documents\My Workspace\TDD_Book\TDDBook_xUnit_RubyVersion\lib\main.rb:21:

    23热度

    3回答

    在Ruby: for i in A do # some code end 是一样的: A.each do |i| # some code end for不是核方法: 到底是“for什么“在红宝石 有没有办法使用其他关键字做类似的事情? 是这样的: total = sum i in I {x[i]} 映射到: total = I.sum {|i] x[i]}

    63热度

    3回答

    作为编程练习,我编写了一个创建类的Ruby片段,实例化该类中的两个对象,monkeypatches一个对象,并依靠method_missing来修改另一个对象。 这是交易。这按预期工作: class Monkey def chatter puts "I am a chattering monkey!" end def method_missing(m)

    5热度

    1回答

    我一直在寻找在Ruby日志库Logging.logger方法,并有从source at github有关这段代码的一个问题: logger = ::Logging::Logger.new(name) logger.add_appenders appender logger.additive = false class << logger def close

    1热度

    2回答

    定义操作我正在寻找移动我的一些较轻的重量从Nemerle元编程来嘘,我试图找出如何定义运营商定制。例如,我可以做Nemerle如下: macro @<-(func, v) { <[ $func($v) ]> } 那么这两个是相同的: foo <- 5; foo(5); 我找不到嘘这样做的方式 - 任何想法?