Class: ActionParamsContract::DryExtensions::SchemaDsl

Inherits:
Dry::Schema::DSL
  • Object
show all
Includes:
ControllerActionDsl
Defined in:
lib/action_params_contract/dry_extensions/schema_dsl.rb

Instance Method Summary collapse

Methods included from ControllerActionDsl

#current_action?, #on_action, #on_actions, #on_create, #on_destroy, #on_index, #on_update

Instance Method Details

#root(key) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/action_params_contract/dry_extensions/schema_dsl.rb', line 8

def root(key)
  controller = ActionParamsContract::RequestContext.current_controller
  return unless controller

  existing = controller.instance_variable_get(:@params_object_root)
  raise ActionParamsContract::ConflictingRootError.new(existing, key) if existing && existing != key

  controller.instance_variable_set(:@params_object_root, key)
end