Class: Sinclair
- Inherits:
-
Object
- Object
- Sinclair
- Includes:
- OptionsParser
- Defined in:
- lib/sinclair.rb,
lib/sinclair/version.rb,
lib/sinclair/matchers.rb,
lib/sinclair/matchers/add_method.rb,
lib/sinclair/matchers/add_method_to.rb
Defined Under Namespace
Modules: Matchers, OptionsParser Classes: MethodDefinition
Constant Summary collapse
- VERSION =
'1.1.0'
Instance Attribute Summary collapse
-
#clazz ⇒ Object
readonly
Returns the value of attribute clazz.
Attributes included from OptionsParser
Instance Method Summary collapse
- #add_method(name, code = nil, &block) ⇒ Object
- #build ⇒ Object
- #eval_and_add_method(name, &block) ⇒ Object
-
#initialize(clazz, options = {}) ⇒ Sinclair
constructor
A new instance of Sinclair.
Methods included from OptionsParser
Constructor Details
#initialize(clazz, options = {}) ⇒ Sinclair
Returns a new instance of Sinclair.
15 16 17 18 |
# File 'lib/sinclair.rb', line 15 def initialize(clazz, = {}) @clazz = clazz @options = end |
Instance Attribute Details
#clazz ⇒ Object (readonly)
Returns the value of attribute clazz.
13 14 15 |
# File 'lib/sinclair.rb', line 13 def clazz @clazz end |
Instance Method Details
#add_method(name, code = nil, &block) ⇒ Object
26 27 28 |
# File 'lib/sinclair.rb', line 26 def add_method(name, code = nil, &block) definitions << MethodDefinition.new(name, code, &block) end |
#build ⇒ Object
20 21 22 23 24 |
# File 'lib/sinclair.rb', line 20 def build definitions.each do |definition| definition.build(clazz) end end |
#eval_and_add_method(name, &block) ⇒ Object
30 31 32 |
# File 'lib/sinclair.rb', line 30 def eval_and_add_method(name, &block) add_method(name, instance_eval(&block)) end |