Sha256: 20d6eaa5533055622974c9b8cc5e836de128cc1d31c0e2ad7adf5c41fca58c71

Contents?: true

Size: 545 Bytes

Versions: 11

Compression:

Stored size: 545 Bytes

Contents

module Rib; end
module Rib::Rack
  singleton_class.module_eval{ attr_accessor :app }

  module_function
  def load
    load_rack
  rescue LoadError => e
    Rib.abort("Error: #{e}", "Is this a Rack app?")
  end

  def load_rack
    require 'rack'
    Rib.abort("Error: Cannot find config.ru") unless rack?
    app, _ = Rack::Builder.parse_file('config.ru')
    self.app = app
    Rib.shell.eval_binding.eval('def app; Rib::Rack.app; end')
    Rib.say("Access your app via :app method")
  end

  def rack?
    File.exist?('config.ru')
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
rib-1.2.91 lib/rib/app/rack.rb
rib-1.2.9 lib/rib/app/rack.rb
rib-1.2.8 lib/rib/app/rack.rb
rib-1.2.7 lib/rib/app/rack.rb
rib-1.2.6 lib/rib/app/rack.rb
rib-1.2.5 lib/rib/app/rack.rb
rib-1.2.4 lib/rib/app/rack.rb
rib-1.2.3 lib/rib/app/rack.rb
rib-1.2.2 lib/rib/app/rack.rb
rib-1.2.1 lib/rib/app/rack.rb
rib-1.2.0 lib/rib/app/rack.rb