Class: Cauldron::ExampleSet

Inherits:
Object
  • Object
show all
Defined in:
lib/cauldron/example_set.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(examples) ⇒ ExampleSet

Returns a new instance of ExampleSet.



7
8
9
# File 'lib/cauldron/example_set.rb', line 7

def initialize(examples)
  @examples = examples
end

Instance Attribute Details

#examplesObject (readonly)

Returns the value of attribute examples.



5
6
7
# File 'lib/cauldron/example_set.rb', line 5

def examples
  @examples
end

Instance Method Details

#all?(&block) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/cauldron/example_set.rb', line 16

def all?(&block)
  examples.all?(&block)
end

#collect(&block) ⇒ Object



20
21
22
# File 'lib/cauldron/example_set.rb', line 20

def collect(&block)
  examples.collect(&block)
end

#each_with_index(&block) ⇒ Object

TODO Might drop - limit access



25
26
27
# File 'lib/cauldron/example_set.rb', line 25

def each_with_index(&block)
  examples.each_with_index(&block)
end

#scopeObject



29
30
31
32
# File 'lib/cauldron/example_set.rb', line 29

def scope
  sexp = Ripper::SexpBuilder.new(examples.first.params.to_s).parse
  Cauldron::Scope.new(eval(Sorcerer.source(sexp)))
end

#variablesObject



11
12
13
14
# File 'lib/cauldron/example_set.rb', line 11

def variables
  args = examples.first.arguments
  (0...args.length).collect {|x| 'var'+x.to_s}      
end