First page Back Continue Last page Overview Text

Notes:


All method calls in the block are handled by method_missing, which passes the outer self and the method name, specifying an attribute, along with the block, to a new DSL class.

method_missing is used here because potentially any method name could be used. In general, you should only use method_missing if any possible method name is valid.