Sha256: 21fd72ed44f17247b27755a207956aeca23948cf80a384c52f170ec81eb2fb16
Contents?: true
Size: 645 Bytes
Versions: 20
Compression:
Stored size: 645 Bytes
Contents
module Distil class Interpolated def initialize(value, owner=nil) @value=value @owner=owner end def self.from_options(set, owner) self.new(set, owner) end def self.value_of(value, owner) return value if !owner value.gsub(/\$\((\w+)\)/) { |match| v= case when owner.respond_to?($1) owner.send $1 when owner.is_a?(Configurable) owner.get_option($1) end v || "$(#{$1})" } end def value_of(owner=nil) owner||=@owner self.class.value_of(@value, owner) end end end
Version data entries
20 entries across 20 versions & 1 rubygems