ヤードックのレジスタを反復処理する方法を探しています@macro
。ヤードック@マクロのレジスタを反復する
class Post
include DataMapper::Resource
# @macro dm.property
# @return [$2] the $1 $0 of the post
property :title, String
end
、あなたはレジスタは次のようにあなたのような配列の部分を取っていたかのようにコマスで区切って表した引数を生成することができます:私はあなたが以下のようにのようなものでそれらを使用することができます知っている
# @macro dsl_method
# @method $1(${2--2})
# @return [${-1}] the return value of $0
create_method_with_args :foo, :a, :b, :c, String
生成:foo(a, b, c)
とreturns (String) the return value of create_method_with_args
を私は(${2--1}).each do |$arg|
ような呼び出し何かに興味やドキュメントを行うには、ドキュメントの1行を持つのparamsのそれぞれを言います。
しかし、ここで作成した例(https://gist.github.com/2510343)のように、メソッドの動的な引数を使ってDSLにアプローチする方法はありますか?最終的には、この文の精神で 'def self.property(name、type、(arg_name、default、type、required)*)'というDSLを定義したいと思います。重いCのバックグラウンドから来て、私はそれが構造体に相当する何かの動的な数値を入力したいと思っていると私はそれを記述することができる最善の方法を推測し、それぞれに構造的に含まれる値に応じて '@ param' 。 – rudolph9