Options that we don’t handle are yielded. If the
block returns false the directive is restored to the text. If the block
returns nil or no block was given the directive is handled according to the
registered
directives. If a String was returned the
directive is replaced with the string.

If no matching directive was registered the
directive is restored to the text.

If code_object is given and the param is set as metadata on the
code_object. See RDoc::CodeObject#metadata