Class: Sinatra::Application

Inherits:
Base
  • Object
show all
Defined in:
lib/sinatra/base.rb,
lib/sinatra/main.rb

Overview

Execution context for classic style (top-level) applications. All DSL methods executed on main are delegated to this class.

The Application class should not be subclassed, unless you want to inherit all settings, routes, handlers, and error pages from the top-level. Subclassing Sinatra::Base is highly recommended for modular applications.

Constant Summary

Constants inherited from Base

Base::CALLERS_TO_IGNORE, Base::URI_INSTANCE

Constants included from Helpers

Helpers::ETAG_KINDS, Helpers::MULTIPART_FORM_DATA_REPLACEMENT_TABLE

Instance Attribute Summary

Attributes inherited from Base

#app, #env, #params, #request, #response, #template_cache

Class Method Summary collapse

Methods inherited from Base

add_filter, after, before, build, #call, call, #call!, caller_files, callers_to_ignore, condition, configure, delete, development?, disable, enable, error, extensions, #forward, get, #halt, head, helpers, #initialize, inline_templates=, layout, link, middleware, mime_type, mime_types, new, #new!, not_found, on_start, on_stop, options, #pass, patch, post, production?, prototype, public=, public_dir, public_dir=, put, quit!, reset!, run!, running?, set, settings, #settings, template, test?, unlink, use

Methods included from Templates

#asciidoc, #builder, #erb, #find_template, #haml, #initialize, #liquid, #markaby, #markdown, #nokogiri, #rabl, #rdoc, #sass, #scss, #slim, #yajl

Methods included from Helpers

#attachment, #back, #bad_request?, #body, #cache_control, #client_error?, #content_type, #error, #etag, #expires, #headers, #informational?, #last_modified, #logger, #mime_type, #not_found, #not_found?, #redirect, #redirect?, #send_file, #server_error?, #session, #status, #stream, #success?, #time_for, #uri

Constructor Details

This class inherits a constructor from Sinatra::Base

Class Method Details

.register(*extensions, &block) ⇒ Object

:nodoc:



2064
2065
2066
2067
2068
# File 'lib/sinatra/base.rb', line 2064

def self.register(*extensions, &block) # :nodoc:
  added_methods = extensions.flat_map(&:public_instance_methods)
  Delegator.delegate(*added_methods)
  super(*extensions, &block)
end