module Roda::RodaPlugins::Monads::ClassMethods

Extends `Roda` class interface with {ClassMethods#either_matcher} method

Public Instance Methods

either_matcher(name = :either, aliases: [], &matcher) click to toggle source

@param name [Symbol] name @param aliases [<Symbol>] aliases @param matcher [Proc] matcher @return [Proc]

# File lib/roda/plugins/monads.rb, line 60
def either_matcher(name = :either, aliases: [], &matcher)
  @matchers ||= {}
  @matchers[name] = matcher if block_given?
  aliases.each { |alt| @matchers[alt] = @matchers[name] }
  @matchers[name]
end