module Syro::Container

Constants

VERSION

Public Class Methods

included(deck) click to toggle source
# File lib/syro/container.rb, line 8
def self.included(deck)
  deck.extend ClassMethods
end
new(before) click to toggle source
Calls superclass method
# File lib/syro/container.rb, line 12
def initialize(before)
  code = Proc.new do
    instance_eval(&before) if before
    resolve!
  end

  super(code)
end

Public Instance Methods

resolve!() click to toggle source
# File lib/syro/container.rb, line 21
def resolve!
  return if @resolved
  @resolved = true

  segment = self.path.curr.split('/')[1]
  app = self.class.container.resolve(segment)
  self.path.consume(segment)
  run(app)
rescue Dry::Container::Error
end