Module: Braintrust::Task::Callable
- Defined in:
- lib/braintrust/task.rb
Overview
Included into classes that include Task. Prepends KeywordFilter so #call receives only its declared kwargs, and provides a default #name.
Class Method Summary collapse
Instance Method Summary collapse
-
#name ⇒ String
Default name derived from the class name (e.g. MyTask -> “my_task”).
Class Method Details
.included(base) ⇒ Object
46 47 48 |
# File 'lib/braintrust/task.rb', line 46 def self.included(base) base.prepend(Internal::Callable::KeywordFilter) end |
Instance Method Details
#name ⇒ String
Default name derived from the class name (e.g. MyTask -> “my_task”).
52 53 54 55 56 |
# File 'lib/braintrust/task.rb', line 52 def name klass = self.class.name&.split("::")&.last return Task::DEFAULT_NAME unless klass klass.gsub(/([a-z])([A-Z])/, '\1_\2').downcase end |