Sha256: 93c27cc509f6a8b8535ce605ee4ce5f4bd64f702ef3a1e70053104205db3202c
Contents?: true
Size: 802 Bytes
Versions: 3
Compression:
Stored size: 802 Bytes
Contents
module Quandl class Pattern < Regexp class << self def define_pattern(name, pattern, options={}) assert_unique_pattern!(name, pattern) patterns << name define_singleton_method(name){ Quandl::Pattern.new( pattern, options ) } end def assert_unique_pattern!(name, pattern) return false unless self.respond_to?(name) message = "Attempted to redefine previously defined pattern! '#{name}', /#{pattern}/" raise ArgumentError.new(name), message end def patterns @patterns ||= [] end end def initialize(*args) @options = args.pop if args.last.is_a?(Hash) super(*args) end def to_example options[:example] end def options @options ||= {} end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
quandl_client-2.13.0 | lib/quandl/pattern.rb |
quandl_client-2.12.0 | lib/quandl/pattern.rb |
quandl_client-2.11.0 | lib/quandl/pattern.rb |