Module: RubyLLM::MCP::Handlers::Concerns::Options::ClassMethods
- Defined in:
- lib/ruby_llm/mcp/handlers/concerns/options.rb
Instance Method Summary collapse
-
#inherited(subclass) ⇒ Object
Inherit options from parent classes.
-
#option(name, default: nil, required: false) ⇒ Object
Define a handler option with optional default value.
-
#options_config ⇒ Object
Store option configurations.
Instance Method Details
#inherited(subclass) ⇒ Object
Inherit options from parent classes
33 34 35 36 |
# File 'lib/ruby_llm/mcp/handlers/concerns/options.rb', line 33 def inherited(subclass) super subclass.instance_variable_set(:@options_config, .dup) end |
#option(name, default: nil, required: false) ⇒ Object
Define a handler option with optional default value
18 19 20 21 22 23 24 25 |
# File 'lib/ruby_llm/mcp/handlers/concerns/options.rb', line 18 def option(name, default: nil, required: false) [name] = { default: default, required: required } # Create accessor for this option in instances define_method(name) do @options[name] end end |
#options_config ⇒ Object
Store option configurations
28 29 30 |
# File 'lib/ruby_llm/mcp/handlers/concerns/options.rb', line 28 def @options_config ||= {} end |