Sha256: 64f542b82bd79502462c76d8d53f423511b5e9d505808c095cb6fd1a3e2daf27
Contents?: true
Size: 808 Bytes
Versions: 3
Compression:
Stored size: 808 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.7.11 | lib/quandl/pattern.rb |
quandl_client-2.7.5 | lib/quandl/pattern.rb |
quandl_client-2.7.4 | lib/quandl/pattern.rb |