Method: Cucumber::Runtime::SupportCode#load_programming_language

Defined in:
lib/cucumber/runtime/support_code.rb

#load_programming_language(ext) ⇒ Object

Loads and registers programming language implementation. Instances are cached, so calling with the same argument twice will return the same instance.



71
72
73
74
75
76
77
78
# File 'lib/cucumber/runtime/support_code.rb', line 71

def load_programming_language(ext)
  return @language_map[ext] if @language_map[ext]
  programming_language_class = constantize("Cucumber::#{ext.capitalize}Support::#{ext.capitalize}Language")
  programming_language = programming_language_class.new(@runtime_facade)
  @programming_languages << programming_language
  @language_map[ext] = programming_language
  programming_language
end