Module: Metasploit::Concern
- Extended by:
- ActiveSupport::Autoload
- Defined in:
- lib/metasploit/concern.rb,
lib/metasploit/concern/engine.rb,
lib/metasploit/concern/version.rb
Overview
Automates the inclusion of concerns into classes and models from other ‘Rail::Engine`s by use of an app/concerns directory in the Rails::Engine that declares the concerns.
The Class or Module must support the use of concerns by calling Concern.run.
To include concerns from a Rails::Application add ‘app/concerns’ to paths and then declare concerns under app/concerns.
To include concerns from a Rails::Engine add ‘app/concerns’ to the paths and then declare concerns under app/concerns.
Defined Under Namespace
Modules: Error Classes: Engine, Loader
Constant Summary collapse
- VERSION =
VERSION is managed by GemRelease
'2.0.2'
Class Method Summary collapse
-
.root ⇒ Pathname
The root of the
metasploit-concerngem’s file tree. -
.run(klass) ⇒ void
initializer registering all the load hooks as any late load hooks will run as they are registered.
-
.version ⇒ String
returns the VERSION.
Class Method Details
.root ⇒ Pathname
If Rails is loaded and Engine is defined, just use Metasploit::Concern::Engine.root.
The root of the metasploit-concern gem’s file tree.
97 98 99 |
# File 'lib/metasploit/concern.rb', line 97 def self.root @root ||= Pathname.new(__FILE__).parent.parent.parent end |
.run(klass) ⇒ void
As ActiveSupport.run_load_hooks is used, it is safe to call run prior to Metasploit::Concern‘s
klass must have a ‘Module#name` so that the load hook symbol can be derived.
This method returns an undefined value.
initializer registering all the load hooks as any late load hooks will run as they are registered.
Runs the load hooks setup to include app/concerns concerns this klass.
111 112 113 114 |
# File 'lib/metasploit/concern.rb', line 111 def self.run(klass) load_hook_name = klass.name.underscore.gsub('/', '_').to_sym ActiveSupport.run_load_hooks(load_hook_name, klass) end |
.version ⇒ String
returns the VERSION
11 12 13 |
# File 'lib/metasploit/concern/version.rb', line 11 def self.version VERSION end |