Sha256: 352357fccf675b66a82339c36e615488592a1e7754d1bd31939bf27b2b709956
Contents?: true
Size: 871 Bytes
Versions: 2
Compression:
Stored size: 871 Bytes
Contents
require 'rack' require 'happy/version' require 'happy/context' require 'happy/controller' module Happy module Errors class Base < StandardError ; end class NotFound < Base ; end end def self.env ActiveSupport::StringInquirer.new(ENV['RACK_ENV'] || 'development') end # Creates a new Happy::Controller class, using the provided block as # its routing block. # def self.route(&blk) @last_controller_class_created = Class.new(Happy::Controller).tap do |klass| klass.send(:define_method, :route, &blk) end end # Run the provided block against Happy::Context. Use this to add new # methods to the request context class. # def self.context(&blk) Context.class_exec(&blk) end def self.call(env) @last_controller_class_created.try(:call, env) or raise "Please use Happy.route to define some routes." end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
happy-0.1.0.pre16 | lib/happy.rb |
happy-0.1.0.pre15 | lib/happy.rb |