Class: Evil::Client::Resolver Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/evil/client/resolver.rb

Overview

This class is abstract.

Base class for resolvers of schema definition for a particular settings.

Its every subclass responds for resolving a specific part of schema (request, middleware or response).

Defined Under Namespace

Classes: Body, Format, Headers, HttpMethod, Middleware, Query, Request, Response, Security, Uri

Class Method Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(*args, &block) ⇒ Object (private)



82
83
84
# File 'lib/evil/client/resolver.rb', line 82

def method_missing(*args, &block)
  respond_to_missing?(*args) ? @__settings__.send(*args, &block) : super
end

Class Method Details

.call(*args) ⇒ Object

Builds and calls one-off resolver at once

Parameters:

  • args (Object)

    The arguments of current class’ constructor

Returns:

  • (Object)

    resolved definition



22
23
24
# File 'lib/evil/client/resolver.rb', line 22

def self.call(*args)
  new(*args).send(:__call__)
end

Instance Method Details

#to_sString Also known as: to_str, inspect

Human-friendly representation of the resolver

Returns:

  • (String)


30
31
32
# File 'lib/evil/client/resolver.rb', line 30

def to_s
  "#{@__keys__.join(' ')} from #{@__schema__} for #{@__settings__}"
end