class TwirpRails::Configuration
Public Class Methods
config_param(symbol, default_value = nil, &block)
click to toggle source
# File lib/twirp_rails.rb, line 14 def self.config_param(symbol, default_value = nil, &block) raise 'wrong args' if !default_value.nil? && block_given? if block_given? class_variable_set("@@#{symbol}_default", block) class_eval(<<~RUBY, __FILE__, __LINE__ + 1) def #{symbol}_default instance_eval &@@#{symbol}_default end RUBY else class_variable_set("@@#{symbol}_default", default_value) class_eval(<<~RUBY, __FILE__, __LINE__ + 1) def #{symbol}_default @@#{symbol}_default end RUBY end class_eval(<<~RUBY, __FILE__, __LINE__ + 1) def #{symbol} @#{symbol} ||= #{symbol}_default end RUBY class_eval(<<~RUBY, __FILE__, __LINE__ + 1) def #{symbol}? #{symbol} end def #{symbol}=(value) @#{symbol} = value end RUBY end