cauldron 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile +6 -0
- data/Gemfile.lock +63 -0
- data/History.md +5 -0
- data/Rakefile +62 -16
- data/VERSION +1 -1
- data/cauldron.gemspec +463 -0
- data/cauldron/lib/cauldron.rb +1 -1
- data/features/cauldron_generates_runtime_method.feature +7 -4
- data/features/cauldron_generates_single_paramter_methods.feature +25 -0
- data/features/cauldron_interactive_start_terminal.feature +17 -0
- data/features/cauldron_quit_terminal.feature +9 -0
- data/features/cauldron_start_terminal.feature +0 -1
- data/features/step_definitions/cauldron_steps.rb +10 -5
- data/features/step_definitions/terminal_steps.rb +27 -0
- data/features/support/env.rb +2 -0
- data/features/support/hooks.rb +15 -0
- data/lib/Chain.rb +3 -3
- data/lib/Mapping.rb +1 -0
- data/lib/PartialChain.rb +253 -0
- data/lib/Theory.rb +28 -4
- data/lib/UnifiedChain.rb +94 -125
- data/lib/cauldron.rb +3 -0
- data/lib/cauldron/demos.rb +4 -4
- data/lib/cauldron/env.rb +1 -0
- data/lib/cauldron/pot.rb +42 -38
- data/lib/cauldron/terminal.rb +19 -3
- data/lib/cauldron/util/home.rb +21 -0
- data/lib/cauldron/util/saver.rb +45 -0
- data/lib/core/Container.rb +1 -1
- data/lib/core/runtime_method/ActsAsRuntimeMethod.rb +28 -28
- data/lib/core/runtime_method/RuntimeMethod.rb +6 -23
- data/lib/core/statement/ActsAsStatement.rb +0 -96
- data/lib/core/statement/BlockStatement.rb +1 -1
- data/lib/core/statement/OpenStatement.rb +1 -1
- data/lib/core/statement/Statement.rb +39 -94
- data/lib/core/statement/TheoryStatement.rb +1 -1
- data/lib/core/syntax/BlockContainer.rb +0 -28
- data/lib/core/variable/MethodParameter.rb +1 -1
- data/lib/required.rb +2 -14
- data/lib/theories.rb +0 -1
- data/lib/theory/ActionImplementation.rb +1 -1
- data/lib/theory/TheoryAction.rb +2 -2
- data/lib/theory/TheoryConnector.rb +11 -14
- data/lib/theory/TheoryImplementation.rb +10 -9
- data/lib/util/MethodWriter.rb +10 -10
- data/sandbox.rb +23 -0
- data/spec/cauldron/pot_spec.rb +62 -10
- data/spec/cauldron/runtime_method_spec.rb +31 -17
- data/spec/cauldron/saver_spec.rb +45 -0
- data/spec/cauldron/terminal_spec.rb +10 -1
- data/spec/cauldron/theory_spec.rb +4 -4
- data/spec/cauldron/unified_chain_spec.rb +38 -0
- data/spec/spec_helper.rb +3 -1
- data/tasks/development_tasks.rake +4 -0
- data/tasks/theory_tasks.rake +16 -20
- data/test/fixtures/theories/0/desc +6 -6
- data/test/fixtures/theories/0/dump +0 -0
- data/test/fixtures/theories/1/desc +7 -7
- data/test/fixtures/theories/1/dump +0 -0
- data/test/fixtures/theories/10/desc +13 -13
- data/test/fixtures/theories/10/dump +0 -0
- data/test/fixtures/theories/11/desc +10 -10
- data/test/fixtures/theories/11/dump +0 -0
- data/test/fixtures/theories/12/desc +9 -9
- data/test/fixtures/theories/12/dump +0 -0
- data/test/fixtures/theories/13/desc +16 -16
- data/test/fixtures/theories/13/dump +0 -0
- data/test/fixtures/theories/14/desc +16 -16
- data/test/fixtures/theories/14/dump +0 -0
- data/test/fixtures/theories/15/desc +10 -10
- data/test/fixtures/theories/15/dump +0 -0
- data/test/fixtures/theories/16/desc +10 -10
- data/test/fixtures/theories/16/dump +0 -0
- data/test/fixtures/theories/17/desc +7 -7
- data/test/fixtures/theories/17/dump +0 -0
- data/test/fixtures/theories/18/desc +7 -7
- data/test/fixtures/theories/18/dump +0 -0
- data/test/fixtures/theories/19/desc +7 -7
- data/test/fixtures/theories/19/dump +0 -0
- data/test/fixtures/theories/2/desc +6 -6
- data/test/fixtures/theories/2/dump +0 -0
- data/test/fixtures/theories/20/desc +13 -13
- data/test/fixtures/theories/20/dump +0 -0
- data/test/fixtures/theories/3/desc +7 -7
- data/test/fixtures/theories/3/dump +0 -0
- data/test/fixtures/theories/4/desc +7 -7
- data/test/fixtures/theories/4/dump +0 -0
- data/test/fixtures/theories/5/desc +6 -6
- data/test/fixtures/theories/5/dump +0 -0
- data/test/fixtures/theories/6/desc +7 -7
- data/test/fixtures/theories/6/dump +0 -0
- data/test/fixtures/theories/7/desc +7 -7
- data/test/fixtures/theories/7/dump +0 -0
- data/test/fixtures/theories/8/desc +7 -7
- data/test/fixtures/theories/8/dump +0 -0
- data/test/fixtures/theories/9/desc +16 -16
- data/test/fixtures/theories/9/dump +0 -0
- data/test/fixtures/theory_implementations/0/dump +0 -0
- data/test/fixtures/theory_implementations/2/dump +0 -0
- data/test/ts_complete.rb +1 -10
- data/test/unit/core/runtime_method/tc_realised_runtime_method.rb +1 -0
- data/test/unit/core/runtime_method/tc_runtime_method.rb +16 -39
- data/test/unit/core/statement/tc_block_statement.rb +3 -3
- data/test/unit/core/statement/tc_open_statement.rb +4 -4
- data/test/unit/core/statement/tc_statement.rb +2 -147
- data/test/unit/core/statement/tc_theory_statement.rb +1 -1
- data/test/unit/theory/tc_theory_dependent.rb +3 -3
- data/test/unit/theory/tc_theory_result.rb +5 -5
- data/test/unit/util/tc_method_validation.rb +45 -45
- data/test/unit/util/tc_parser.rb +1 -1
- data/test/unit/util/tc_string_to_theory.rb +2 -2
- metadata +74 -48
- data/lib/ScopeDependencies.rb +0 -8
- data/lib/core/statement/StatementDependencies.rb +0 -271
- data/lib/core/structure/DeclareNewInstanceStructure.rb +0 -49
- data/lib/core/structure/DeclareRuntimeMethodStructure.rb +0 -34
- data/lib/core/structure/DeclareVariableAsLiteralStructure.rb +0 -31
- data/lib/core/structure/DeclareVariableAsVariableStructure.rb +0 -52
- data/lib/core/structure/FixnumAdditionStructure.rb +0 -56
- data/lib/core/structure/InstanceCallContainerStructure.rb +0 -50
- data/lib/core/structure/InstanceCallStructure.rb +0 -53
- data/lib/core/structure/InstanceMethodCallStructure.rb +0 -21
- data/lib/core/structure/ReturnStructure.rb +0 -20
- data/lib/core/structure/StatementStructure.rb +0 -11
- data/test/unit/core/statement/tc_statement_dependencies.rb +0 -147
- data/test/unit/core/structure/tc_declare_new_instance_structure.rb +0 -41
- data/test/unit/core/structure/tc_declare_variable_as_literal_structure.rb +0 -41
- data/test/unit/core/structure/tc_declare_variable_as_variable_structure.rb +0 -66
- data/test/unit/core/structure/tc_instance_call_container_structure.rb +0 -41
- data/test/unit/core/structure/tc_return_structure.rb +0 -32
- data/test/unit/tc_instance_call_structure.rb +0 -35
- data/test/unit/tc_statement_structure_2.rb +0 -43
@@ -43,7 +43,7 @@ class TestTheoryStatement < Test::Unit::TestCase
|
|
43
43
|
mapping[3] = IntrinsicLiteral.new(0)
|
44
44
|
|
45
45
|
assert_equal(
|
46
|
-
"if((runtime_method.params[0].length == runtime_method) == false)\n
|
46
|
+
"if((runtime_method.params[0].length == runtime_method) == false)\n return true\nend",
|
47
47
|
theory.replace_theory_variables!(mapping).write
|
48
48
|
)
|
49
49
|
|
@@ -125,7 +125,7 @@ class TestTheoryDependent < Test::Unit::TestCase
|
|
125
125
|
dependent_one = TheoryDependent.new(StringToTheory.run("if(var2[var3].kind_of?(CTestCase))\nreturn true\nend"))
|
126
126
|
mapping = {2=>IntrinsicTestCases.new,3=>Literal.new(0)}
|
127
127
|
assert_equal(
|
128
|
-
"if(<test_cases>[0].kind_of?(CTestCase))\n
|
128
|
+
"if(<test_cases>[0].kind_of?(CTestCase))\n return true\nend\n",
|
129
129
|
dependent_one.map_to(mapping).describe
|
130
130
|
)
|
131
131
|
end
|
@@ -134,7 +134,7 @@ class TestTheoryDependent < Test::Unit::TestCase
|
|
134
134
|
dependent_two = TheoryDependent.new(StringToTheory.run("if(var6.kind_of?(Fixnum))\nreturn true\nend"))
|
135
135
|
mapping = {6 => 0.to_literal}
|
136
136
|
assert_equal(
|
137
|
-
"if(0.kind_of?(Fixnum))\n
|
137
|
+
"if(0.kind_of?(Fixnum))\n return true\nend\n",
|
138
138
|
dependent_two.map_to(mapping).describe
|
139
139
|
)
|
140
140
|
end
|
@@ -145,7 +145,7 @@ class TestTheoryDependent < Test::Unit::TestCase
|
|
145
145
|
)
|
146
146
|
mapping = {2=>IntrinsicTestCases.new,3=>Literal.new(0),6=>0.to_literal,4=>1.to_literal}
|
147
147
|
assert_equal(
|
148
|
-
"if((<test_cases>[0][:params][0] == <test_cases>[1][:params][0]) == false)\n
|
148
|
+
"if((<test_cases>[0][:params][0] == <test_cases>[1][:params][0]) == false)\n return true\nend\n",
|
149
149
|
dependent_three.map_to(mapping).describe
|
150
150
|
)
|
151
151
|
end
|
@@ -24,9 +24,9 @@ class TestTheoryResult < Test::Unit::TestCase
|
|
24
24
|
|
25
25
|
def test_intialize_3
|
26
26
|
assert_equal(
|
27
|
-
"if(#{TheoryVariable.variable_colour(1)}var1#{TheoryVariable::NORMAL}.length == #{TheoryVariable.variable_colour(2)}var2#{TheoryVariable::NORMAL})\n
|
27
|
+
"if(#{TheoryVariable.variable_colour(1)}var1#{TheoryVariable::NORMAL}.length == #{TheoryVariable.variable_colour(2)}var2#{TheoryVariable::NORMAL})\n return true\nend\n",
|
28
28
|
TheoryResult.new(
|
29
|
-
StringToTheory.run("if(var1.length == var2)\n
|
29
|
+
StringToTheory.run("if(var1.length == var2)\n return true\nend")
|
30
30
|
).describe
|
31
31
|
)
|
32
32
|
end
|
@@ -44,7 +44,7 @@ class TestTheoryResult < Test::Unit::TestCase
|
|
44
44
|
]
|
45
45
|
evaluation_code = ''
|
46
46
|
evaluation_code += "test_cases = #{test_cases.write}"+"\n"
|
47
|
-
evaluation_code += "runtime_method =
|
47
|
+
evaluation_code += "runtime_method = RuntimeMethod.new(MethodUsage.new(MethodParameter.new))"+"\n"
|
48
48
|
evaluation_code += 'runtime_method.add_statement_at(Statement.new(Return.new, runtime_method.params[0]),runtime_method.statement_id)'+"\n"
|
49
49
|
|
50
50
|
evaluation_code += 'return runtime_method'+"\n"
|
@@ -90,7 +90,7 @@ class TestTheoryResult < Test::Unit::TestCase
|
|
90
90
|
6=>0.to_literal
|
91
91
|
}
|
92
92
|
assert_equal(
|
93
|
-
"if(<runtime_method>.history(<test_cases>[0][:params]).any?{ |x| x.statement_id == <runtime_method>.last.statement_id} )\n
|
93
|
+
"if(<runtime_method>.history(<test_cases>[0][:params]).any?{ |x| x.statement_id == <runtime_method>.last.statement_id} )\n return true\nend\n",
|
94
94
|
result_one.map_to(mapping).describe
|
95
95
|
)
|
96
96
|
end
|
@@ -104,7 +104,7 @@ class TestTheoryResult < Test::Unit::TestCase
|
|
104
104
|
3=>IntrinsicLiteral.new(0)
|
105
105
|
}
|
106
106
|
assert_equal(
|
107
|
-
"if((runtime_method.params[0].length == runtime_method) == false)\n
|
107
|
+
"if((runtime_method.params[0].length == runtime_method) == false)\n return true\nend",
|
108
108
|
result.map_to(mapping).write
|
109
109
|
)
|
110
110
|
end
|
@@ -13,51 +13,51 @@ class TestMethodValidation < Test::Unit::TestCase
|
|
13
13
|
RuntimeMethod.reset_global_id
|
14
14
|
end
|
15
15
|
|
16
|
-
def test_self_generate
|
17
|
-
|
18
|
-
# Check that a simple method to check the class of a runtime method instance can be created
|
19
|
-
validation_test_1 = MethodValidation.generate_attribute_test('.class.to_s == "RuntimeMethod"' )
|
20
|
-
assert(validation_test_1.kind_of?(RuntimeMethod))
|
21
|
-
assert_equal(
|
22
|
-
true,
|
23
|
-
MethodValidation.new.use_runtime_method(
|
24
|
-
validation_test_1,
|
25
|
-
ParametersContainer.new(RuntimeMethod.new(MethodUsage.new).to_declaration)
|
26
|
-
)
|
27
|
-
)
|
28
|
-
|
29
|
-
# Create the method that should be evaluated correctly
|
30
|
-
test_2_method = RuntimeMethod.new(MethodUsage.new)
|
31
|
-
test_2_method.push Statement.new(Return.new,'Lilly'.to_literal)
|
32
|
-
|
33
|
-
# Test that a runtime method returns 'Lilly'
|
34
|
-
validation_test_2 = MethodValidation.generate_response_test(" == 'Lilly'",[])
|
35
|
-
assert(validation_test_2.kind_of?(RuntimeMethod))
|
36
|
-
assert_equal(
|
37
|
-
true,
|
38
|
-
MethodValidation.new.use_runtime_method_2(validation_test_2,test_2_method)
|
39
|
-
)
|
40
|
-
validation_test_3 = MethodValidation.generate_response_test(" != 'Lilly'",[])
|
41
|
-
assert_equal(
|
42
|
-
false,
|
43
|
-
MethodValidation.new.use_runtime_method_2(validation_test_3,test_2_method)
|
44
|
-
)
|
45
|
-
#
|
46
|
-
# # Test that a runtime method returns the value it is passed
|
47
|
-
# test_3_param_1 = MethodParameter.new
|
48
|
-
# test_3_method = RuntimeMethod.new(MethodUsage.new(test_3_param_1))
|
49
|
-
# test_3_method.push(Statement.new(Return.new,test_3_param_1))
|
50
|
-
# test_3_validation = MethodValidation.generate(
|
51
|
-
# {:condition=>' == "Pip"',:target=>'response',:params=>['Pip'.to_literal],:runtime_method=>test_3_method})
|
52
|
-
# assert_equal(
|
53
|
-
# 'Pip',
|
54
|
-
# MethodValidation.new.use_runtime_method(
|
55
|
-
# test_3_validation,ParametersContainer.new(test_3_method.to_declaration)
|
56
|
-
# )
|
57
|
-
# )
|
58
|
-
|
59
|
-
|
60
|
-
end
|
16
|
+
# def test_self_generate
|
17
|
+
#
|
18
|
+
# # Check that a simple method to check the class of a runtime method instance can be created
|
19
|
+
# validation_test_1 = MethodValidation.generate_attribute_test('.class.to_s == "RuntimeMethod"' )
|
20
|
+
# assert(validation_test_1.kind_of?(RuntimeMethod))
|
21
|
+
# assert_equal(
|
22
|
+
# true,
|
23
|
+
# MethodValidation.new.use_runtime_method(
|
24
|
+
# validation_test_1,
|
25
|
+
# ParametersContainer.new(RuntimeMethod.new(MethodUsage.new).to_declaration)
|
26
|
+
# )
|
27
|
+
# )
|
28
|
+
#
|
29
|
+
# # Create the method that should be evaluated correctly
|
30
|
+
# test_2_method = RuntimeMethod.new(MethodUsage.new)
|
31
|
+
# test_2_method.push Statement.new(Return.new,'Lilly'.to_literal)
|
32
|
+
#
|
33
|
+
# # Test that a runtime method returns 'Lilly'
|
34
|
+
# validation_test_2 = MethodValidation.generate_response_test(" == 'Lilly'",[])
|
35
|
+
# assert(validation_test_2.kind_of?(RuntimeMethod))
|
36
|
+
# assert_equal(
|
37
|
+
# true,
|
38
|
+
# MethodValidation.new.use_runtime_method_2(validation_test_2,test_2_method)
|
39
|
+
# )
|
40
|
+
# validation_test_3 = MethodValidation.generate_response_test(" != 'Lilly'",[])
|
41
|
+
# assert_equal(
|
42
|
+
# false,
|
43
|
+
# MethodValidation.new.use_runtime_method_2(validation_test_3,test_2_method)
|
44
|
+
# )
|
45
|
+
# #
|
46
|
+
# # # Test that a runtime method returns the value it is passed
|
47
|
+
# # test_3_param_1 = MethodParameter.new
|
48
|
+
# # test_3_method = RuntimeMethod.new(MethodUsage.new(test_3_param_1))
|
49
|
+
# # test_3_method.push(Statement.new(Return.new,test_3_param_1))
|
50
|
+
# # test_3_validation = MethodValidation.generate(
|
51
|
+
# # {:condition=>' == "Pip"',:target=>'response',:params=>['Pip'.to_literal],:runtime_method=>test_3_method})
|
52
|
+
# # assert_equal(
|
53
|
+
# # 'Pip',
|
54
|
+
# # MethodValidation.new.use_runtime_method(
|
55
|
+
# # test_3_validation,ParametersContainer.new(test_3_method.to_declaration)
|
56
|
+
# # )
|
57
|
+
# # )
|
58
|
+
#
|
59
|
+
#
|
60
|
+
# end
|
61
61
|
|
62
62
|
|
63
63
|
def test_use_runtime_method
|
data/test/unit/util/tc_parser.rb
CHANGED
@@ -95,7 +95,7 @@ class TestParser < Test::Unit::TestCase
|
|
95
95
|
Parser.run("if(runtime_method.all_pass?(test_cases))\nend").write
|
96
96
|
)
|
97
97
|
assert_equal(
|
98
|
-
"if(runtime_method.all_pass?(test_cases))\n
|
98
|
+
"if(runtime_method.all_pass?(test_cases))\n return true\nend",
|
99
99
|
Parser.run("if(runtime_method.all_pass?(test_cases))\nreturn true\nend").write
|
100
100
|
)
|
101
101
|
end
|
@@ -224,7 +224,7 @@ class TestStringToTheory < Test::Unit::TestCase
|
|
224
224
|
|
225
225
|
def test_double_negative
|
226
226
|
assert_equal(
|
227
|
-
"if((var2 == var3) == false)\n
|
227
|
+
"if((var2 == var3) == false)\n return true\nend",
|
228
228
|
StringToTheory.run("if((var2 == var3)== false)\nreturn true\nend").write
|
229
229
|
)
|
230
230
|
assert_equal(
|
@@ -292,7 +292,7 @@ class TestStringToTheory < Test::Unit::TestCase
|
|
292
292
|
StringToTheory.run("if(!var1.pass?(var2[var4]))\nend").write
|
293
293
|
)
|
294
294
|
assert_equal(
|
295
|
-
"if((var2[var3] == var2[var4]) == false)\n
|
295
|
+
"if((var2[var3] == var2[var4]) == false)\n return true\nend",
|
296
296
|
StringToTheory.run("if((var2[var3] == var2[var4])== false)\nreturn true\nend").write
|
297
297
|
)
|
298
298
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cauldron
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 29
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 3
|
10
|
+
version: 0.1.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Warren Sangster
|
@@ -15,12 +15,11 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-10-09 00:00:00 +01:00
|
19
19
|
default_executable: cauldron
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
|
-
|
23
|
-
version_requirements: &id001 !ruby/object:Gem::Requirement
|
22
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
23
|
none: false
|
25
24
|
requirements:
|
26
25
|
- - ~>
|
@@ -31,12 +30,12 @@ dependencies:
|
|
31
30
|
- 2
|
32
31
|
- 5
|
33
32
|
version: 1.2.5
|
34
|
-
requirement: *id001
|
35
|
-
prerelease: false
|
36
33
|
name: ruby2ruby
|
34
|
+
version_requirements: *id001
|
35
|
+
prerelease: false
|
36
|
+
type: :runtime
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
|
-
|
39
|
-
version_requirements: &id002 !ruby/object:Gem::Requirement
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
40
39
|
none: false
|
41
40
|
requirements:
|
42
41
|
- - ">="
|
@@ -45,12 +44,12 @@ dependencies:
|
|
45
44
|
segments:
|
46
45
|
- 0
|
47
46
|
version: "0"
|
48
|
-
requirement: *id002
|
49
|
-
prerelease: false
|
50
47
|
name: shoulda
|
51
|
-
|
48
|
+
version_requirements: *id002
|
49
|
+
prerelease: false
|
52
50
|
type: :development
|
53
|
-
|
51
|
+
- !ruby/object:Gem::Dependency
|
52
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
54
53
|
none: false
|
55
54
|
requirements:
|
56
55
|
- - ~>
|
@@ -61,12 +60,12 @@ dependencies:
|
|
61
60
|
- 0
|
62
61
|
- 15
|
63
62
|
version: 1.0.15
|
64
|
-
requirement: *id003
|
65
|
-
prerelease: false
|
66
63
|
name: bundler
|
67
|
-
|
64
|
+
version_requirements: *id003
|
65
|
+
prerelease: false
|
68
66
|
type: :development
|
69
|
-
|
67
|
+
- !ruby/object:Gem::Dependency
|
68
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
70
69
|
none: false
|
71
70
|
requirements:
|
72
71
|
- - ~>
|
@@ -77,12 +76,28 @@ dependencies:
|
|
77
76
|
- 6
|
78
77
|
- 2
|
79
78
|
version: 1.6.2
|
80
|
-
requirement: *id004
|
81
|
-
prerelease: false
|
82
79
|
name: jeweler
|
80
|
+
version_requirements: *id004
|
81
|
+
prerelease: false
|
82
|
+
type: :development
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
85
|
+
none: false
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
hash: 23
|
90
|
+
segments:
|
91
|
+
- 2
|
92
|
+
- 6
|
93
|
+
- 0
|
94
|
+
version: 2.6.0
|
95
|
+
name: rspec
|
96
|
+
version_requirements: *id005
|
97
|
+
prerelease: false
|
84
98
|
type: :development
|
85
|
-
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
86
101
|
none: false
|
87
102
|
requirements:
|
88
103
|
- - ">="
|
@@ -91,12 +106,12 @@ dependencies:
|
|
91
106
|
segments:
|
92
107
|
- 0
|
93
108
|
version: "0"
|
94
|
-
requirement: *id005
|
95
|
-
prerelease: false
|
96
109
|
name: rcov
|
97
|
-
|
110
|
+
version_requirements: *id006
|
111
|
+
prerelease: false
|
98
112
|
type: :development
|
99
|
-
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
100
115
|
none: false
|
101
116
|
requirements:
|
102
117
|
- - ~>
|
@@ -107,9 +122,26 @@ dependencies:
|
|
107
122
|
- 0
|
108
123
|
- 6
|
109
124
|
version: 2.0.6
|
110
|
-
requirement: *id006
|
111
|
-
prerelease: false
|
112
125
|
name: ruby_parser
|
126
|
+
version_requirements: *id007
|
127
|
+
prerelease: false
|
128
|
+
type: :development
|
129
|
+
- !ruby/object:Gem::Dependency
|
130
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
131
|
+
none: false
|
132
|
+
requirements:
|
133
|
+
- - ~>
|
134
|
+
- !ruby/object:Gem::Version
|
135
|
+
hash: 5
|
136
|
+
segments:
|
137
|
+
- 0
|
138
|
+
- 4
|
139
|
+
- 5
|
140
|
+
version: 0.4.5
|
141
|
+
name: aruba
|
142
|
+
version_requirements: *id008
|
143
|
+
prerelease: false
|
144
|
+
type: :development
|
113
145
|
description: Cauldron generates a methd from a number of examples that describe the input and the expected output. It is still at a very early stage of development right now so you're unlikely to get much practical use out of it.
|
114
146
|
email: warrensangster@yahoo.com
|
115
147
|
executables:
|
@@ -123,12 +155,15 @@ extra_rdoc_files:
|
|
123
155
|
files:
|
124
156
|
- .document
|
125
157
|
- Gemfile
|
158
|
+
- Gemfile.lock
|
159
|
+
- History.md
|
126
160
|
- LICENSE.txt
|
127
161
|
- README
|
128
162
|
- README.rdoc
|
129
163
|
- Rakefile
|
130
164
|
- VERSION
|
131
165
|
- bin/cauldron
|
166
|
+
- cauldron.gemspec
|
132
167
|
- cauldron/.autotest
|
133
168
|
- cauldron/History.txt
|
134
169
|
- cauldron/Manifest.txt
|
@@ -139,10 +174,14 @@ files:
|
|
139
174
|
- cauldron/test/test_cauldron.rb
|
140
175
|
- features/cauldron_example_cases.feature
|
141
176
|
- features/cauldron_generates_runtime_method.feature
|
177
|
+
- features/cauldron_generates_single_paramter_methods.feature
|
178
|
+
- features/cauldron_interactive_start_terminal.feature
|
179
|
+
- features/cauldron_quit_terminal.feature
|
142
180
|
- features/cauldron_start_terminal.feature
|
143
181
|
- features/step_definitions/cauldron_steps.rb
|
144
182
|
- features/step_definitions/terminal_steps.rb
|
145
183
|
- features/support/env.rb
|
184
|
+
- features/support/hooks.rb
|
146
185
|
- features/support/method_1.example
|
147
186
|
- features/support/method_2.example
|
148
187
|
- lib/Chain.rb
|
@@ -150,16 +189,19 @@ files:
|
|
150
189
|
- lib/CodeHandler.rb
|
151
190
|
- lib/Mapping.rb
|
152
191
|
- lib/MappingValues.rb
|
153
|
-
- lib/
|
192
|
+
- lib/PartialChain.rb
|
154
193
|
- lib/Theory.rb
|
155
194
|
- lib/UnifiedChain.rb
|
156
195
|
- lib/cauldron.rb
|
157
196
|
- lib/cauldron/conversion.rb
|
158
197
|
- lib/cauldron/demos.rb
|
198
|
+
- lib/cauldron/env.rb
|
159
199
|
- lib/cauldron/pot.rb
|
160
200
|
- lib/cauldron/sexp2cauldron.rb
|
161
201
|
- lib/cauldron/terminal.rb
|
162
202
|
- lib/cauldron/theory_factory.rb
|
203
|
+
- lib/cauldron/util/home.rb
|
204
|
+
- lib/cauldron/util/saver.rb
|
163
205
|
- lib/core/ActsAsCode.rb
|
164
206
|
- lib/core/BlockToken.rb
|
165
207
|
- lib/core/CCall.rb
|
@@ -247,21 +289,10 @@ files:
|
|
247
289
|
- lib/core/statement/RealisedStatement.rb
|
248
290
|
- lib/core/statement/SingleLineBlockStatement.rb
|
249
291
|
- lib/core/statement/Statement.rb
|
250
|
-
- lib/core/statement/StatementDependencies.rb
|
251
292
|
- lib/core/statement/StatementGroup.rb
|
252
293
|
- lib/core/statement/StatementStructure2.rb
|
253
294
|
- lib/core/statement/TheoryStatement.rb
|
254
295
|
- lib/core/statement/TopologicalStatements.rb
|
255
|
-
- lib/core/structure/DeclareNewInstanceStructure.rb
|
256
|
-
- lib/core/structure/DeclareRuntimeMethodStructure.rb
|
257
|
-
- lib/core/structure/DeclareVariableAsLiteralStructure.rb
|
258
|
-
- lib/core/structure/DeclareVariableAsVariableStructure.rb
|
259
|
-
- lib/core/structure/FixnumAdditionStructure.rb
|
260
|
-
- lib/core/structure/InstanceCallContainerStructure.rb
|
261
|
-
- lib/core/structure/InstanceCallStructure.rb
|
262
|
-
- lib/core/structure/InstanceMethodCallStructure.rb
|
263
|
-
- lib/core/structure/ReturnStructure.rb
|
264
|
-
- lib/core/structure/StatementStructure.rb
|
265
296
|
- lib/core/syntax/Addition.rb
|
266
297
|
- lib/core/syntax/BlockContainer.rb
|
267
298
|
- lib/core/syntax/Boolean.rb
|
@@ -349,10 +380,12 @@ files:
|
|
349
380
|
- lib/util/StatementCheck.rb
|
350
381
|
- lib/util/StringToTheory.rb
|
351
382
|
- lib/util/System.rb
|
383
|
+
- sandbox.rb
|
352
384
|
- spec/cauldron/chain_spec.rb
|
353
385
|
- spec/cauldron/demos_spec.rb
|
354
386
|
- spec/cauldron/pot_spec.rb
|
355
387
|
- spec/cauldron/runtime_method_spec.rb
|
388
|
+
- spec/cauldron/saver_spec.rb
|
356
389
|
- spec/cauldron/sexp_2_cauldron_spec.rb
|
357
390
|
- spec/cauldron/terminal_spec.rb
|
358
391
|
- spec/cauldron/theory_action_spec.rb
|
@@ -360,6 +393,7 @@ files:
|
|
360
393
|
- spec/cauldron/theory_spec.rb
|
361
394
|
- spec/cauldron/unified_chain_spec.rb
|
362
395
|
- spec/spec_helper.rb
|
396
|
+
- tasks/development_tasks.rake
|
363
397
|
- tasks/theory_tasks.rake
|
364
398
|
- test/fixtures/chains/1/declaration.txt
|
365
399
|
- test/fixtures/chains/1/dump
|
@@ -470,15 +504,9 @@ files:
|
|
470
504
|
- test/unit/core/statement/tc_hack_statement.rb
|
471
505
|
- test/unit/core/statement/tc_open_statement.rb
|
472
506
|
- test/unit/core/statement/tc_statement.rb
|
473
|
-
- test/unit/core/statement/tc_statement_dependencies.rb
|
474
507
|
- test/unit/core/statement/tc_statement_group.rb
|
475
508
|
- test/unit/core/statement/tc_statement_replace_variable.rb
|
476
509
|
- test/unit/core/statement/tc_theory_statement.rb
|
477
|
-
- test/unit/core/structure/tc_declare_new_instance_structure.rb
|
478
|
-
- test/unit/core/structure/tc_declare_variable_as_literal_structure.rb
|
479
|
-
- test/unit/core/structure/tc_declare_variable_as_variable_structure.rb
|
480
|
-
- test/unit/core/structure/tc_instance_call_container_structure.rb
|
481
|
-
- test/unit/core/structure/tc_return_structure.rb
|
482
510
|
- test/unit/core/syntax/tc_block_container.rb
|
483
511
|
- test/unit/core/syntax/tc_if_container.rb
|
484
512
|
- test/unit/core/tc_class_method_call.rb
|
@@ -506,11 +534,9 @@ files:
|
|
506
534
|
- test/unit/tc_chain_mapping.rb
|
507
535
|
- test/unit/tc_chain_with_case_1.rb
|
508
536
|
- test/unit/tc_instance_call.rb
|
509
|
-
- test/unit/tc_instance_call_structure.rb
|
510
537
|
- test/unit/tc_method_usage.rb
|
511
538
|
- test/unit/tc_pot.rb
|
512
539
|
- test/unit/tc_runtime_tracking_method.rb
|
513
|
-
- test/unit/tc_statement_structure_2.rb
|
514
540
|
- test/unit/tc_theory.rb
|
515
541
|
- test/unit/tc_variable_declaration.rb
|
516
542
|
- test/unit/theory/tc_theory_action.rb
|
@@ -558,7 +584,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
558
584
|
requirements: []
|
559
585
|
|
560
586
|
rubyforge_project:
|
561
|
-
rubygems_version: 1.4.
|
587
|
+
rubygems_version: 1.4.0
|
562
588
|
signing_key:
|
563
589
|
specification_version: 3
|
564
590
|
summary: Generate simple ruby methods from the input(s) and expected output
|