Skip to content

Latest commit

 

History

History
56 lines (39 loc) · 834 Bytes

File metadata and controls

56 lines (39 loc) · 834 Bytes

procto

Method objects. CoverHound wanted to specify method names sometimes, so we spun this off.

Usage

require 'procto'

class Greeter
  include Procto.call

  def initialize(text)
    @text = text
  end

  def call
    "Hello #{text}"
  end
  
  private
  attr_reader :text
end

Greeter.call('world') # => "Hello world"

class Printer
  include Procto.call(:print)

  def initialize(text)
    @text = text
  end

  def print
    "Hello #{text}"
  end

  private
  attr_reader :text
end

# Both methods are available:
Printer.call('world')  # => "Hello world"
Printer.print('world') # => "Hello world"

Credits

Copyright

Copyright © 2026 CoverHound. See LICENSE for details.