rockit 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/BUGS +13 -0
  2. data/LICENSE +280 -0
  3. data/README +172 -0
  4. data/TODO +53 -0
  5. data/VERSION +1 -0
  6. data/lib/packrat/grammar.rb +537 -0
  7. data/lib/rockit/prettyprint/box.rb +60 -0
  8. data/lib/rockit/prettyprint/renderer.rb +41 -0
  9. data/lib/rockit/prettyprint/text_renderer.rb +47 -0
  10. data/lib/rockit/tree/base.rb +223 -0
  11. data/lib/rockit/tree/enter_leave_visitor.rb +12 -0
  12. data/lib/rockit/tree/graphviz.rb +69 -0
  13. data/lib/rockit/tree/visitor.rb +12 -0
  14. data/lib/util/array_alternatives.rb +20 -0
  15. data/lib/util/enter_leave_visitor.rb +69 -0
  16. data/lib/util/graphviz_dot.rb +182 -0
  17. data/lib/util/string_location.rb +42 -0
  18. data/lib/util/visitor.rb +49 -0
  19. data/lib/util/visitor_combinators.rb +14 -0
  20. data/rakefile +200 -0
  21. data/tests/acceptance/packrat/minibasic/atest_minibasic.rb +45 -0
  22. data/tests/acceptance/packrat/minibasic/minibasic.rb +137 -0
  23. data/tests/acceptance/rockit/dparser/atest_any_operator.rb +33 -0
  24. data/tests/acceptance/rockit/dparser/atest_arithmetic_grammar.rb +30 -0
  25. data/tests/acceptance/rockit/dparser/atest_list_operator.rb +57 -0
  26. data/tests/acceptance/rockit/dparser/atest_mult_operator.rb +60 -0
  27. data/tests/acceptance/rockit/dparser/atest_operator_grammar.rb +61 -0
  28. data/tests/acceptance/rockit/dparser/atest_plus_operator.rb +55 -0
  29. data/tests/acceptance/rockit/dparser/atest_samples_calculator.rb +14 -0
  30. data/tests/acceptance/rockit/dparser/atest_samples_minibasic.rb +20 -0
  31. data/tests/acceptance/rockit/dparser/atest_samples_multifunccalculator.rb +36 -0
  32. data/tests/acceptance/rockit/dparser/atest_simple_grammar.rb +34 -0
  33. data/tests/acceptance/rockit/dparser/atest_speculative_code_action.rb +128 -0
  34. data/tests/acceptance/rockit/dparser/calc_tests_common.rb +103 -0
  35. data/tests/unit/packrat/test_interpreting_parser.rb +296 -0
  36. data/tests/unit/parse/utest_ebnf_grammar.rb +50 -0
  37. data/tests/unit/parse/utest_expand_grammar.rb +23 -0
  38. data/tests/unit/parse/utest_grammar.rb +160 -0
  39. data/tests/unit/rockit/assembler/llvm/utest_instructions.rb +41 -0
  40. data/tests/unit/rockit/assembler/llvm/utest_module.rb +19 -0
  41. data/tests/unit/rockit/prettyprint/utest_box.rb +44 -0
  42. data/tests/unit/rockit/tree/utest_tree_base.rb +301 -0
  43. data/tests/unit/rockit/tree/utest_tree_enter_leave_visitor.rb +69 -0
  44. data/tests/unit/rockit/tree/utest_tree_visitor.rb +63 -0
  45. data/tests/unit/rockit/utest_grammar.rb +145 -0
  46. data/tests/unit/rockit/utest_grammar_symbol.rb +11 -0
  47. data/tests/unit/rockit/utest_maybe_operator.rb +12 -0
  48. data/tests/unit/rockit/utest_regexp_terminal.rb +45 -0
  49. data/tests/unit/rockit/utest_repetition_operators.rb +35 -0
  50. data/tests/unit/rockit/utest_rule.rb +23 -0
  51. data/tests/unit/rockit/utest_string_terminal.rb +40 -0
  52. data/tests/unit/util/utest_array_alternatives.rb +23 -0
  53. data/tests/unit/util/utest_enter_leave_visitor.rb +89 -0
  54. data/tests/unit/util/utest_string_location.rb +42 -0
  55. data/tests/unit/util/utest_visitor.rb +92 -0
  56. data/tests/unit/util/utest_visitor_combinators.rb +64 -0
  57. metadata +112 -0
metadata ADDED
@@ -0,0 +1,112 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.11
3
+ specification_version: 1
4
+ name: rockit
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.7.1
7
+ date: 2006-03-23 00:00:00 +01:00
8
+ summary: Rockit is the Ruby Object-oriented Compiler construction toolKIT
9
+ require_paths:
10
+ - lib
11
+ email: Robert.Feldt@gmail.com
12
+ homepage: http://www.pronovomundo.com/projects/ruby/rockit
13
+ rubyforge_project:
14
+ description: Rockit is a potent parser generator and gives you AST's (Abstract Syntax Tree's) which you can pattern match and pretty-print. Rockit does not distinghuish between lexing and parsing so the generated parsers are scanner-/lexer-less. The vision is to extend Rockit with more advanced compiler-related abilities including back-ends and code generation. However, currently the focus is on parsing and AST-related tasks such as transformation.
15
+ autorequire:
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: false
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
25
+ platform: ruby
26
+ signing_key:
27
+ cert_chain:
28
+ authors:
29
+ - Robert Feldt
30
+ files:
31
+ - README
32
+ - TODO
33
+ - BUGS
34
+ - LICENSE
35
+ - VERSION
36
+ - rakefile
37
+ - lib/packrat/grammar.rb
38
+ - lib/rockit/prettyprint/text_renderer.rb
39
+ - lib/rockit/prettyprint/renderer.rb
40
+ - lib/rockit/prettyprint/box.rb
41
+ - lib/rockit/tree/visitor.rb
42
+ - lib/rockit/tree/base.rb
43
+ - lib/rockit/tree/graphviz.rb
44
+ - lib/rockit/tree/enter_leave_visitor.rb
45
+ - lib/util/array_alternatives.rb
46
+ - lib/util/string_location.rb
47
+ - lib/util/graphviz_dot.rb
48
+ - lib/util/visitor.rb
49
+ - lib/util/visitor_combinators.rb
50
+ - lib/util/enter_leave_visitor.rb
51
+ - tests/acceptance/rockit
52
+ - tests/acceptance/packrat
53
+ - tests/acceptance/rockit/dparser
54
+ - tests/acceptance/rockit/dparser/atest_speculative_code_action.rb
55
+ - tests/acceptance/rockit/dparser/atest_samples_calculator.rb
56
+ - tests/acceptance/rockit/dparser/atest_plus_operator.rb
57
+ - tests/acceptance/rockit/dparser/atest_arithmetic_grammar.rb
58
+ - tests/acceptance/rockit/dparser/atest_simple_grammar.rb
59
+ - tests/acceptance/rockit/dparser/atest_operator_grammar.rb
60
+ - tests/acceptance/rockit/dparser/atest_any_operator.rb
61
+ - tests/acceptance/rockit/dparser/atest_samples_minibasic.rb
62
+ - tests/acceptance/rockit/dparser/atest_list_operator.rb
63
+ - tests/acceptance/rockit/dparser/atest_samples_multifunccalculator.rb
64
+ - tests/acceptance/rockit/dparser/atest_mult_operator.rb
65
+ - tests/acceptance/rockit/dparser/calc_tests_common.rb
66
+ - tests/acceptance/packrat/minibasic
67
+ - tests/acceptance/packrat/minibasic/minibasic.rb
68
+ - tests/acceptance/packrat/minibasic/atest_minibasic.rb
69
+ - tests/unit/rockit
70
+ - tests/unit/util
71
+ - tests/unit/parse
72
+ - tests/unit/packrat
73
+ - tests/unit/rockit/tree
74
+ - tests/unit/rockit/prettyprint
75
+ - tests/unit/rockit/utest_grammar_symbol.rb
76
+ - tests/unit/rockit/utest_string_terminal.rb
77
+ - tests/unit/rockit/utest_repetition_operators.rb
78
+ - tests/unit/rockit/utest_regexp_terminal.rb
79
+ - tests/unit/rockit/utest_grammar.rb
80
+ - tests/unit/rockit/utest_rule.rb
81
+ - tests/unit/rockit/utest_maybe_operator.rb
82
+ - tests/unit/rockit/assembler
83
+ - tests/unit/rockit/tree/utest_tree_visitor.rb
84
+ - tests/unit/rockit/tree/utest_tree_base.rb
85
+ - tests/unit/rockit/tree/utest_tree_enter_leave_visitor.rb
86
+ - tests/unit/rockit/prettyprint/utest_box.rb
87
+ - tests/unit/rockit/assembler/llvm
88
+ - tests/unit/rockit/assembler/llvm/utest_instructions.rb
89
+ - tests/unit/rockit/assembler/llvm/utest_module.rb
90
+ - tests/unit/util/utest_array_alternatives.rb
91
+ - tests/unit/util/utest_string_location.rb
92
+ - tests/unit/util/utest_visitor.rb
93
+ - tests/unit/util/utest_visitor_combinators.rb
94
+ - tests/unit/util/utest_enter_leave_visitor.rb
95
+ - tests/unit/parse/utest_grammar.rb
96
+ - tests/unit/parse/utest_expand_grammar.rb
97
+ - tests/unit/parse/utest_ebnf_grammar.rb
98
+ - tests/unit/packrat/test_interpreting_parser.rb
99
+ test_files: []
100
+
101
+ rdoc_options: []
102
+
103
+ extra_rdoc_files: []
104
+
105
+ executables: []
106
+
107
+ extensions: []
108
+
109
+ requirements:
110
+ - none
111
+ dependencies: []
112
+