Sha256: 7b7ed2f01bc84ffac39f437919cd3e36061f1c06365ca49fa26a3edf3a8542cf
Contents?: true
Size: 758 Bytes
Versions: 1
Compression:
Stored size: 758 Bytes
Contents
require 'active_support' require 'active_support/all' class Sinclair require 'sinclair/options_parser' autoload :VERSION, 'sinclair/version' autoload :MethodDefinition, 'sinclair/method_definition' autoload :Matchers, 'sinclair/matchers' include OptionsParser attr_reader :clazz def initialize(clazz, options = {}) @clazz = clazz @options = options end def build definitions.each do |definition| definition.build(clazz) end end def add_method(name, code = nil, &block) definitions << MethodDefinition.new(name, code, &block) end def eval_and_add_method(name, &block) add_method(name, instance_eval(&block)) end private def definitions @definitions ||= [] end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sinclair-1.1.0 | lib/sinclair.rb |