Class: Rivulet::Step
- Inherits:
-
Object
show all
- Defined in:
- lib/rivulet/step.rb
Direct Known Subclasses
Rivulet::Steps::BuildConfig, Rivulet::Steps::BuildContext, Rivulet::Steps::CompileResponse, Rivulet::Steps::Dispatch, Rivulet::Steps::LoadApp, Rivulet::Steps::LoadDb, Rivulet::Steps::LoadRoutes, Rivulet::Steps::LoadSettings, Rivulet::Steps::PrintRoutes, Rivulet::Steps::RunConsole, Rivulet::Steps::RunMigrations, Rivulet::Steps::ValidateResponse
Class Method Summary
collapse
Class Method Details
.container_class_path ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/rivulet/step.rb', line 5
def self.container_class_path
self
.name
.split('::')
.then { |path| path[0...path.index('Steps')] }
.push('Container')
.inject(Object) { |mod, name| mod.const_get(name) }
end
|
.inherited(subclass) ⇒ Object
14
15
16
17
18
19
20
|
# File 'lib/rivulet/step.rb', line 14
def self.inherited(subclass)
super
subclass.prepend(Rivulet::Telemetry::TimingWrapper)
subclass.const_set(
:Import, Dry::AutoInject(subclass.container_class_path)
)
end
|