Sha256: e74a316383d1826c3efc6059f0676f708229fa9ea2a224ce8b778befaf71d95a

Contents?: true

Size: 529 Bytes

Versions: 106

Compression:

Stored size: 529 Bytes

Contents

# Handles 'extend' call to include modules into the class scope of another
# @see MixinHandler
class YARD::Handlers::Ruby::ExtendHandler < YARD::Handlers::Ruby::MixinHandler
  handles method_call(:extend)
  namespace_only

  def scope; :class end

  private

  def process_mixin(mixin)
    if mixin == s(:var_ref, s(:kw, "self"))
      if namespace.is_a?(ClassObject)
        raise UndocumentableError, "extend(self) statement on class"
      end
      namespace.mixins(scope) << namespace
    else
      super
    end
  end
end

Version data entries

106 entries across 86 versions & 10 rubygems

Version Path
yard-0.7.4 lib/yard/handlers/ruby/extend_handler.rb
yard-0.7.3 lib/yard/handlers/ruby/extend_handler.rb
vanity-1.7.1 vendor/ruby/1.9.1/gems/yard-0.7.2/lib/yard/handlers/ruby/extend_handler.rb
yard-0.7.2 lib/yard/handlers/ruby/extend_handler.rb
yard-0.7.1 lib/yard/handlers/ruby/extend_handler.rb
yard-0.7.0 lib/yard/handlers/ruby/extend_handler.rb