sbyc 0.1.0

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.
Files changed (59) hide show
  1. data/LICENCE.textile +12 -0
  2. data/README.textile +44 -0
  3. data/lib/sbyc.rb +14 -0
  4. data/lib/sbyc/codetree.rb +82 -0
  5. data/lib/sbyc/codetree/ast_node.rb +101 -0
  6. data/lib/sbyc/codetree/eval.rb +3 -0
  7. data/lib/sbyc/codetree/eval/ast_node_ext.rb +38 -0
  8. data/lib/sbyc/codetree/eval/functional_eval.rb +36 -0
  9. data/lib/sbyc/codetree/eval/object_eval.rb +36 -0
  10. data/lib/sbyc/codetree/matching.rb +3 -0
  11. data/lib/sbyc/codetree/matching/ast_node_ext.rb +14 -0
  12. data/lib/sbyc/codetree/matching/match_data.rb +30 -0
  13. data/lib/sbyc/codetree/matching/matcher.rb +83 -0
  14. data/lib/sbyc/codetree/proc_parser.rb +91 -0
  15. data/lib/sbyc/codetree/producing.rb +1 -0
  16. data/lib/sbyc/codetree/producing/producer.rb +68 -0
  17. data/lib/sbyc/codetree/rewriting.rb +4 -0
  18. data/lib/sbyc/codetree/rewriting/class_methods.rb +15 -0
  19. data/lib/sbyc/codetree/rewriting/compiler.rb +28 -0
  20. data/lib/sbyc/codetree/rewriting/instance_methods.rb +92 -0
  21. data/lib/sbyc/codetree/rewriting/match.rb +59 -0
  22. data/test/spec/documentation/codetree/production.spec +59 -0
  23. data/test/spec/documentation/readme/assumptions.spec +33 -0
  24. data/test/spec/documentation/readme/functional_evaluation.spec +29 -0
  25. data/test/spec/documentation/readme/object_evaluation.spec +17 -0
  26. data/test/spec/documentation/readme/rewriting.spec +60 -0
  27. data/test/spec/documentation/readme/semantics.spec +21 -0
  28. data/test/spec/documentation/readme/synopsis.spec +27 -0
  29. data/test/spec/documentation/readme/syntax.spec +26 -0
  30. data/test/spec/spec_helper.rb +13 -0
  31. data/test/spec/test_all.rb +6 -0
  32. data/test/spec/unit/sbyc/codetree/ast_node/coerce.spec +60 -0
  33. data/test/spec/unit/sbyc/codetree/ast_node/equality.spec +75 -0
  34. data/test/spec/unit/sbyc/codetree/ast_node/inspect.spec +23 -0
  35. data/test/spec/unit/sbyc/codetree/ast_node/literal.spec +15 -0
  36. data/test/spec/unit/sbyc/codetree/ast_node/to_a.spec +27 -0
  37. data/test/spec/unit/sbyc/codetree/ast_node/to_s.spec +23 -0
  38. data/test/spec/unit/sbyc/codetree/ast_node/visit.spec +34 -0
  39. data/test/spec/unit/sbyc/codetree/eval/functional_compile.spec +30 -0
  40. data/test/spec/unit/sbyc/codetree/eval/functional_eval.spec +34 -0
  41. data/test/spec/unit/sbyc/codetree/eval/functional_proc.spec +36 -0
  42. data/test/spec/unit/sbyc/codetree/eval/object_compile.spec +36 -0
  43. data/test/spec/unit/sbyc/codetree/eval/object_eval.spec +38 -0
  44. data/test/spec/unit/sbyc/codetree/eval/object_proc.spec +36 -0
  45. data/test/spec/unit/sbyc/codetree/matching/matcher/args_match.spec +91 -0
  46. data/test/spec/unit/sbyc/codetree/matching/matcher/do_match.spec +39 -0
  47. data/test/spec/unit/sbyc/codetree/matching/matcher/function_match.spec +45 -0
  48. data/test/spec/unit/sbyc/codetree/matching/matcher/match.spec +64 -0
  49. data/test/spec/unit/sbyc/codetree/proc_parser/expr.spec +20 -0
  50. data/test/spec/unit/sbyc/codetree/proc_parser/parse.spec +83 -0
  51. data/test/spec/unit/sbyc/codetree/producing/producer.spec +31 -0
  52. data/test/spec/unit/sbyc/codetree/producing/producer/apply_args_conventions.spec +60 -0
  53. data/test/spec/unit/sbyc/codetree/rewriting/instance_methods/apply_args_conventions.spec +60 -0
  54. data/test/spec/unit/sbyc/codetree/rewriting/instance_methods/node.spec +19 -0
  55. data/test/spec/unit/sbyc/codetree/rewriting/instance_methods/rewrite.spec +76 -0
  56. data/test/spec/unit/sbyc/codetree/rewriting/match/apply.spec +23 -0
  57. data/test/spec/unit/sbyc/codetree/rewriting/match/coerce.spec +48 -0
  58. data/test/spec/unit/sbyc/codetree/rewriting/match/matches.spec +27 -0
  59. metadata +129 -0
metadata ADDED
@@ -0,0 +1,129 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sbyc
3
+ version: !ruby/object:Gem::Version
4
+ hash: 27
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 0
10
+ version: 0.1.0
11
+ platform: ruby
12
+ authors:
13
+ - Bernard Lambeau
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2010-05-20 00:00:00 +02:00
19
+ default_executable:
20
+ dependencies: []
21
+
22
+ description: Tools around Ruby and Types
23
+ email: blambeau@gmail.com
24
+ executables: []
25
+
26
+ extensions: []
27
+
28
+ extra_rdoc_files:
29
+ - README.textile
30
+ - LICENCE.textile
31
+ files:
32
+ - lib/sbyc/codetree/ast_node.rb
33
+ - lib/sbyc/codetree/eval/ast_node_ext.rb
34
+ - lib/sbyc/codetree/eval/functional_eval.rb
35
+ - lib/sbyc/codetree/eval/object_eval.rb
36
+ - lib/sbyc/codetree/eval.rb
37
+ - lib/sbyc/codetree/matching/ast_node_ext.rb
38
+ - lib/sbyc/codetree/matching/match_data.rb
39
+ - lib/sbyc/codetree/matching/matcher.rb
40
+ - lib/sbyc/codetree/matching.rb
41
+ - lib/sbyc/codetree/proc_parser.rb
42
+ - lib/sbyc/codetree/producing/producer.rb
43
+ - lib/sbyc/codetree/producing.rb
44
+ - lib/sbyc/codetree/rewriting/class_methods.rb
45
+ - lib/sbyc/codetree/rewriting/compiler.rb
46
+ - lib/sbyc/codetree/rewriting/instance_methods.rb
47
+ - lib/sbyc/codetree/rewriting/match.rb
48
+ - lib/sbyc/codetree/rewriting.rb
49
+ - lib/sbyc/codetree.rb
50
+ - lib/sbyc.rb
51
+ - test/spec/documentation/codetree/production.spec
52
+ - test/spec/documentation/readme/assumptions.spec
53
+ - test/spec/documentation/readme/functional_evaluation.spec
54
+ - test/spec/documentation/readme/object_evaluation.spec
55
+ - test/spec/documentation/readme/rewriting.spec
56
+ - test/spec/documentation/readme/semantics.spec
57
+ - test/spec/documentation/readme/synopsis.spec
58
+ - test/spec/documentation/readme/syntax.spec
59
+ - test/spec/spec_helper.rb
60
+ - test/spec/test_all.rb
61
+ - test/spec/unit/sbyc/codetree/ast_node/coerce.spec
62
+ - test/spec/unit/sbyc/codetree/ast_node/equality.spec
63
+ - test/spec/unit/sbyc/codetree/ast_node/inspect.spec
64
+ - test/spec/unit/sbyc/codetree/ast_node/literal.spec
65
+ - test/spec/unit/sbyc/codetree/ast_node/to_a.spec
66
+ - test/spec/unit/sbyc/codetree/ast_node/to_s.spec
67
+ - test/spec/unit/sbyc/codetree/ast_node/visit.spec
68
+ - test/spec/unit/sbyc/codetree/eval/functional_compile.spec
69
+ - test/spec/unit/sbyc/codetree/eval/functional_eval.spec
70
+ - test/spec/unit/sbyc/codetree/eval/functional_proc.spec
71
+ - test/spec/unit/sbyc/codetree/eval/object_compile.spec
72
+ - test/spec/unit/sbyc/codetree/eval/object_eval.spec
73
+ - test/spec/unit/sbyc/codetree/eval/object_proc.spec
74
+ - test/spec/unit/sbyc/codetree/matching/matcher/args_match.spec
75
+ - test/spec/unit/sbyc/codetree/matching/matcher/do_match.spec
76
+ - test/spec/unit/sbyc/codetree/matching/matcher/function_match.spec
77
+ - test/spec/unit/sbyc/codetree/matching/matcher/match.spec
78
+ - test/spec/unit/sbyc/codetree/proc_parser/expr.spec
79
+ - test/spec/unit/sbyc/codetree/proc_parser/parse.spec
80
+ - test/spec/unit/sbyc/codetree/producing/producer/apply_args_conventions.spec
81
+ - test/spec/unit/sbyc/codetree/producing/producer.spec
82
+ - test/spec/unit/sbyc/codetree/rewriting/instance_methods/apply_args_conventions.spec
83
+ - test/spec/unit/sbyc/codetree/rewriting/instance_methods/node.spec
84
+ - test/spec/unit/sbyc/codetree/rewriting/instance_methods/rewrite.spec
85
+ - test/spec/unit/sbyc/codetree/rewriting/match/apply.spec
86
+ - test/spec/unit/sbyc/codetree/rewriting/match/coerce.spec
87
+ - test/spec/unit/sbyc/codetree/rewriting/match/matches.spec
88
+ - README.textile
89
+ - LICENCE.textile
90
+ has_rdoc: true
91
+ homepage: http://github.com/blambeau/sbyc
92
+ licenses: []
93
+
94
+ post_install_message:
95
+ rdoc_options:
96
+ - --title
97
+ - SByC - SByC - Specialization By Constraint
98
+ - --main
99
+ - README.textile
100
+ - --line-numbers
101
+ require_paths:
102
+ - lib
103
+ required_ruby_version: !ruby/object:Gem::Requirement
104
+ none: false
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ hash: 3
109
+ segments:
110
+ - 0
111
+ version: "0"
112
+ required_rubygems_version: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ hash: 3
118
+ segments:
119
+ - 0
120
+ version: "0"
121
+ requirements: []
122
+
123
+ rubyforge_project:
124
+ rubygems_version: 1.3.7
125
+ signing_key:
126
+ specification_version: 3
127
+ summary: SByC - Specialization By Constraint
128
+ test_files: []
129
+