tripper 0.0.3d

Sign up to get free protection for your applications and to get access to all the features.
Files changed (210) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +1 -0
  7. data/TODO +26 -0
  8. data/lib/generators/USAGE +8 -0
  9. data/lib/generators/tripper.rb +51 -0
  10. data/lib/generators/tripper/commonalities/commonalities.rb +226 -0
  11. data/lib/generators/tripper/detect_changes/detect_changes_generator.rb +173 -0
  12. data/lib/generators/tripper/detect_changes/model.rb +226 -0
  13. data/lib/generators/tripper/detect_changes/templates/migration.rb +7 -0
  14. data/lib/generators/tripper/detect_changes/templates/model/belongs_to.rb +1 -0
  15. data/lib/generators/tripper/detect_changes/templates/model/has_one.rb +1 -0
  16. data/lib/generators/tripper/detect_changes/templates/model/validates.rb +2 -0
  17. data/lib/generators/tripper/from_community/from_community_generator.rb +95 -0
  18. data/lib/generators/tripper/from_community/templates/actions/create.rb +8 -0
  19. data/lib/generators/tripper/from_community/templates/actions/destroy.rb +5 -0
  20. data/lib/generators/tripper/from_community/templates/actions/edit.rb +3 -0
  21. data/lib/generators/tripper/from_community/templates/actions/index.rb +3 -0
  22. data/lib/generators/tripper/from_community/templates/actions/new.rb +3 -0
  23. data/lib/generators/tripper/from_community/templates/actions/show.rb +3 -0
  24. data/lib/generators/tripper/from_community/templates/actions/update.rb +8 -0
  25. data/lib/generators/tripper/from_community/templates/controller.rb +3 -0
  26. data/lib/generators/tripper/from_community/templates/fixtures.yml +9 -0
  27. data/lib/generators/tripper/from_community/templates/helper.rb +2 -0
  28. data/lib/generators/tripper/from_community/templates/migration.rb +30 -0
  29. data/lib/generators/tripper/from_community/templates/model.rb +54 -0
  30. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/create.rb +11 -0
  31. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/destroy.rb +6 -0
  32. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/edit.rb +4 -0
  33. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/index.rb +4 -0
  34. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/new.rb +4 -0
  35. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/show.rb +4 -0
  36. data/lib/generators/tripper/from_community/templates/tests/rspec/actions/update.rb +11 -0
  37. data/lib/generators/tripper/from_community/templates/tests/rspec/controller.rb +8 -0
  38. data/lib/generators/tripper/from_community/templates/tests/rspec/model.rb +7 -0
  39. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/create.rb +13 -0
  40. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/destroy.rb +8 -0
  41. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/edit.rb +6 -0
  42. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/index.rb +6 -0
  43. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/new.rb +6 -0
  44. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/show.rb +6 -0
  45. data/lib/generators/tripper/from_community/templates/tests/shoulda/actions/update.rb +13 -0
  46. data/lib/generators/tripper/from_community/templates/tests/shoulda/controller.rb +5 -0
  47. data/lib/generators/tripper/from_community/templates/tests/shoulda/model.rb +7 -0
  48. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/create.rb +11 -0
  49. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/destroy.rb +6 -0
  50. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/edit.rb +4 -0
  51. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/index.rb +4 -0
  52. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/new.rb +4 -0
  53. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/show.rb +4 -0
  54. data/lib/generators/tripper/from_community/templates/tests/testunit/actions/update.rb +11 -0
  55. data/lib/generators/tripper/from_community/templates/tests/testunit/controller.rb +5 -0
  56. data/lib/generators/tripper/from_community/templates/tests/testunit/model.rb +7 -0
  57. data/lib/generators/tripper/from_community/templates/views/erb/_form.html.erb +16 -0
  58. data/lib/generators/tripper/from_community/templates/views/erb/edit.html.erb +14 -0
  59. data/lib/generators/tripper/from_community/templates/views/erb/index.html.erb +29 -0
  60. data/lib/generators/tripper/from_community/templates/views/erb/new.html.erb +7 -0
  61. data/lib/generators/tripper/from_community/templates/views/erb/show.html.erb +25 -0
  62. data/lib/generators/tripper/from_community/templates/views/haml/_form.html.haml +9 -0
  63. data/lib/generators/tripper/from_community/templates/views/haml/edit.html.haml +14 -0
  64. data/lib/generators/tripper/from_community/templates/views/haml/index.html.haml +25 -0
  65. data/lib/generators/tripper/from_community/templates/views/haml/new.html.haml +7 -0
  66. data/lib/generators/tripper/from_community/templates/views/haml/show.html.haml +20 -0
  67. data/lib/generators/tripper/layout/USAGE +18 -0
  68. data/lib/generators/tripper/layout/layout_generator.rb +29 -0
  69. data/lib/generators/tripper/layout/templates/error_messages_helper.rb +23 -0
  70. data/lib/generators/tripper/layout/templates/layout.html.erb +19 -0
  71. data/lib/generators/tripper/layout/templates/layout.html.haml +21 -0
  72. data/lib/generators/tripper/layout/templates/layout_helper.rb +22 -0
  73. data/lib/generators/tripper/layout/templates/stylesheet.css +83 -0
  74. data/lib/generators/tripper/layout/templates/stylesheet.sass +73 -0
  75. data/lib/generators/tripper/obj_constraint.rb +23 -0
  76. data/lib/generators/tripper/predicate.rb +12 -0
  77. data/lib/generators/tripper/sync_with_community/model.rb +260 -0
  78. data/lib/generators/tripper/sync_with_community/sync_with_community_generator.rb +310 -0
  79. data/lib/generators/tripper/sync_with_community/templates/migration.rb +7 -0
  80. data/lib/generators/tripper/sync_with_community/templates/model/belongs_to.rb +1 -0
  81. data/lib/generators/tripper/sync_with_community/templates/model/has_one.rb +1 -0
  82. data/lib/generators/tripper/sync_with_community/templates/model/validates.rb +2 -0
  83. data/lib/generators/tripper/templates/actions/create.rb +8 -0
  84. data/lib/generators/tripper/templates/actions/destroy.rb +5 -0
  85. data/lib/generators/tripper/templates/actions/edit.rb +3 -0
  86. data/lib/generators/tripper/templates/actions/index.rb +3 -0
  87. data/lib/generators/tripper/templates/actions/new.rb +3 -0
  88. data/lib/generators/tripper/templates/actions/show.rb +3 -0
  89. data/lib/generators/tripper/templates/actions/update.rb +8 -0
  90. data/lib/generators/tripper/templates/controller.rb +3 -0
  91. data/lib/generators/tripper/templates/fixtures.yml +9 -0
  92. data/lib/generators/tripper/templates/helper.rb +2 -0
  93. data/lib/generators/tripper/templates/migration.rb +30 -0
  94. data/lib/generators/tripper/templates/model.rb +54 -0
  95. data/lib/generators/tripper/templates/tests/rspec/actions/create.rb +11 -0
  96. data/lib/generators/tripper/templates/tests/rspec/actions/destroy.rb +6 -0
  97. data/lib/generators/tripper/templates/tests/rspec/actions/edit.rb +4 -0
  98. data/lib/generators/tripper/templates/tests/rspec/actions/index.rb +4 -0
  99. data/lib/generators/tripper/templates/tests/rspec/actions/new.rb +4 -0
  100. data/lib/generators/tripper/templates/tests/rspec/actions/show.rb +4 -0
  101. data/lib/generators/tripper/templates/tests/rspec/actions/update.rb +11 -0
  102. data/lib/generators/tripper/templates/tests/rspec/controller.rb +8 -0
  103. data/lib/generators/tripper/templates/tests/rspec/model.rb +7 -0
  104. data/lib/generators/tripper/templates/tests/shoulda/actions/create.rb +13 -0
  105. data/lib/generators/tripper/templates/tests/shoulda/actions/destroy.rb +8 -0
  106. data/lib/generators/tripper/templates/tests/shoulda/actions/edit.rb +6 -0
  107. data/lib/generators/tripper/templates/tests/shoulda/actions/index.rb +6 -0
  108. data/lib/generators/tripper/templates/tests/shoulda/actions/new.rb +6 -0
  109. data/lib/generators/tripper/templates/tests/shoulda/actions/show.rb +6 -0
  110. data/lib/generators/tripper/templates/tests/shoulda/actions/update.rb +13 -0
  111. data/lib/generators/tripper/templates/tests/shoulda/controller.rb +5 -0
  112. data/lib/generators/tripper/templates/tests/shoulda/model.rb +7 -0
  113. data/lib/generators/tripper/templates/tests/testunit/actions/create.rb +11 -0
  114. data/lib/generators/tripper/templates/tests/testunit/actions/destroy.rb +6 -0
  115. data/lib/generators/tripper/templates/tests/testunit/actions/edit.rb +4 -0
  116. data/lib/generators/tripper/templates/tests/testunit/actions/index.rb +4 -0
  117. data/lib/generators/tripper/templates/tests/testunit/actions/new.rb +4 -0
  118. data/lib/generators/tripper/templates/tests/testunit/actions/show.rb +4 -0
  119. data/lib/generators/tripper/templates/tests/testunit/actions/update.rb +11 -0
  120. data/lib/generators/tripper/templates/tests/testunit/controller.rb +5 -0
  121. data/lib/generators/tripper/templates/tests/testunit/model.rb +7 -0
  122. data/lib/generators/tripper/templates/views/erb/_form.html.erb +16 -0
  123. data/lib/generators/tripper/templates/views/erb/edit.html.erb +14 -0
  124. data/lib/generators/tripper/templates/views/erb/index.html.erb +29 -0
  125. data/lib/generators/tripper/templates/views/erb/new.html.erb +7 -0
  126. data/lib/generators/tripper/templates/views/erb/show.html.erb +25 -0
  127. data/lib/generators/tripper/templates/views/haml/_form.html.haml +9 -0
  128. data/lib/generators/tripper/templates/views/haml/edit.html.haml +14 -0
  129. data/lib/generators/tripper/templates/views/haml/index.html.haml +25 -0
  130. data/lib/generators/tripper/templates/views/haml/new.html.haml +7 -0
  131. data/lib/generators/tripper/templates/views/haml/show.html.haml +20 -0
  132. data/lib/tripper.rb +1 -0
  133. data/lib/tripper/GOSPLDB/config/database.yml +6 -0
  134. data/lib/tripper/GOSPLDB/config_db.rb +9 -0
  135. data/lib/tripper/GOSPLDB/console +2 -0
  136. data/lib/tripper/GOSPLDB/gospl_db_classes.rb +343 -0
  137. data/lib/tripper/GOSPLDB/play_around.rb +4 -0
  138. data/lib/tripper/GOSPLDB/rakefile.rb +88 -0
  139. data/lib/tripper/GOSPLDBToORMDB/gospl_db_to_orm_db.rb +88 -0
  140. data/lib/tripper/ORMDB/config/database.yml +6 -0
  141. data/lib/tripper/ORMDB/config_db.rb +9 -0
  142. data/lib/tripper/ORMDB/console +2 -0
  143. data/lib/tripper/ORMDB/db/migrations/0_create_orm_object_table.rb +17 -0
  144. data/lib/tripper/ORMDB/db/migrations/10_create_no_lot_constraint_table.rb +17 -0
  145. data/lib/tripper/ORMDB/db/migrations/11_create_value_constraint_table.rb +14 -0
  146. data/lib/tripper/ORMDB/db/migrations/12_create_value_constraint_value_table.rb +16 -0
  147. data/lib/tripper/ORMDB/db/migrations/13_create_value_range_table.rb +15 -0
  148. data/lib/tripper/ORMDB/db/migrations/14_create_frequency_constraint_table.rb +16 -0
  149. data/lib/tripper/ORMDB/db/migrations/15_create_value_table.rb +15 -0
  150. data/lib/tripper/ORMDB/db/migrations/16_create_ring_constraint_table.rb +14 -0
  151. data/lib/tripper/ORMDB/db/migrations/17_create_orm_schema_table.rb +21 -0
  152. data/lib/tripper/ORMDB/db/migrations/18_create_uniqueness_constraint_table.rb +15 -0
  153. data/lib/tripper/ORMDB/db/migrations/1_create_no_lot_table.rb +18 -0
  154. data/lib/tripper/ORMDB/db/migrations/2_create_lot_table.rb +18 -0
  155. data/lib/tripper/ORMDB/db/migrations/3_create_object_role_table.rb +18 -0
  156. data/lib/tripper/ORMDB/db/migrations/4_create_reference_table.rb +17 -0
  157. data/lib/tripper/ORMDB/db/migrations/5_create_predicate_table.rb +18 -0
  158. data/lib/tripper/ORMDB/db/migrations/6_create_object_role_constraint_table.rb +18 -0
  159. data/lib/tripper/ORMDB/db/migrations/7_create_subtype_table.rb +17 -0
  160. data/lib/tripper/ORMDB/db/migrations/8_create_mandatory_constraint_table.rb +15 -0
  161. data/lib/tripper/ORMDB/db/migrations/9_create_constraint_table.rb +15 -0
  162. data/lib/tripper/ORMDB/db/orm_ml.sqlite3 +0 -0
  163. data/lib/tripper/ORMDB/db/orm_ml.sqlite3.backup +0 -0
  164. data/lib/tripper/ORMDB/db/orm_ml.sqlite3.juli28-2013 +0 -0
  165. data/lib/tripper/ORMDB/db/orm_ml.sqlite3.old +0 -0
  166. data/lib/tripper/ORMDB/db/schema.rb +58 -0
  167. data/lib/tripper/ORMDB/erd.pdf +0 -0
  168. data/lib/tripper/ORMDB/migrate_db.rb +21 -0
  169. data/lib/tripper/ORMDB/orm_db_classes.rb +423 -0
  170. data/lib/tripper/ORMDB/populate.rb +4 -0
  171. data/lib/tripper/ORMDB/rakefile.rb +88 -0
  172. data/lib/tripper/model_parsers/attribute_parser/AttributeParser.g +50 -0
  173. data/lib/tripper/model_parsers/attribute_parser/AttributeParser.tokens +13 -0
  174. data/lib/tripper/model_parsers/attribute_parser/AttributeParserLexer.rb +538 -0
  175. data/lib/tripper/model_parsers/attribute_parser/AttributeParserParser.rb +412 -0
  176. data/lib/tripper/model_parsers/attribute_parser/playing_around.rb +14 -0
  177. data/lib/tripper/model_parsers/belongs_to/BelongsToParser.g +63 -0
  178. data/lib/tripper/model_parsers/belongs_to/BelongsToParser.tokens +21 -0
  179. data/lib/tripper/model_parsers/belongs_to/BelongsToParserLexer.rb +667 -0
  180. data/lib/tripper/model_parsers/belongs_to/BelongsToParserParser.rb +552 -0
  181. data/lib/tripper/model_parsers/belongs_to/playing_around.rb +9 -0
  182. data/lib/tripper/model_parsers/database_fields_parser/DatabaseFieldsParser.g +47 -0
  183. data/lib/tripper/model_parsers/database_fields_parser/DatabaseFieldsParser.tokens +14 -0
  184. data/lib/tripper/model_parsers/database_fields_parser/DatabaseFieldsParserLexer.rb +513 -0
  185. data/lib/tripper/model_parsers/database_fields_parser/DatabaseFieldsParserParser.rb +279 -0
  186. data/lib/tripper/model_parsers/database_fields_parser/playing_around.rb +14 -0
  187. data/lib/tripper/model_parsers/has_and_belongs_to_many/HasAndBelongsToManyParser.g +92 -0
  188. data/lib/tripper/model_parsers/has_and_belongs_to_many/HasAndBelongsToManyParser.tokens +25 -0
  189. data/lib/tripper/model_parsers/has_and_belongs_to_many/HasAndBelongsToManyParserLexer.rb +787 -0
  190. data/lib/tripper/model_parsers/has_and_belongs_to_many/HasAndBelongsToManyParserParser.rb +1024 -0
  191. data/lib/tripper/model_parsers/has_and_belongs_to_many/playing_around.rb +9 -0
  192. data/lib/tripper/model_parsers/has_many/HasManyParser.g +77 -0
  193. data/lib/tripper/model_parsers/has_many/HasManyParser.tokens +23 -0
  194. data/lib/tripper/model_parsers/has_many/HasManyParserLexer.rb +710 -0
  195. data/lib/tripper/model_parsers/has_many/HasManyParserParser.rb +788 -0
  196. data/lib/tripper/model_parsers/has_many/playing_around.rb +9 -0
  197. data/lib/tripper/model_parsers/has_one/HasOneParser.g +63 -0
  198. data/lib/tripper/model_parsers/has_one/HasOneParser.tokens +21 -0
  199. data/lib/tripper/model_parsers/has_one/HasOneParserLexer.rb +664 -0
  200. data/lib/tripper/model_parsers/has_one/HasOneParserParser.rb +552 -0
  201. data/lib/tripper/model_parsers/has_one/playing_around.rb +9 -0
  202. data/lib/tripper/model_parsers/validates/ValidatesParser.g +68 -0
  203. data/lib/tripper/model_parsers/validates/ValidatesParser.tokens +35 -0
  204. data/lib/tripper/model_parsers/validates/ValidatesParserLexer.rb +899 -0
  205. data/lib/tripper/model_parsers/validates/ValidatesParserParser.rb +869 -0
  206. data/lib/tripper/model_parsers/validates/playing_around.rb +9 -0
  207. data/lib/tripper/rails.rb +8 -0
  208. data/lib/tripper/version.rb +3 -0
  209. data/tripper.gemspec +33 -0
  210. metadata +408 -0
@@ -0,0 +1,50 @@
1
+ grammar AttributeParser;
2
+
3
+ options { language = Ruby; }
4
+
5
+ @header {
6
+ def strip_quotes str
7
+ return str[1,(str.length)-2]
8
+ end
9
+ }
10
+
11
+ @members {
12
+ attr_accessor :attributes
13
+ }
14
+
15
+ comment: COMMENT;
16
+
17
+ attr_accessible returns [expr]: ((c=COMMENT)* | 'attr_accessible' attributes* attribute? comment?)
18
+ {
19
+ @attributes = [] unless @attributes
20
+ $expr = @attributes unless $c
21
+ }
22
+ ;
23
+
24
+ attributes: attribute ','
25
+ ;
26
+
27
+ attribute
28
+ : (':')+ a=ATTRIBUTE
29
+ {
30
+ @attributes = [] unless @attributes
31
+ @attributes << $a.text
32
+ }
33
+ ;
34
+
35
+ //string: STRING;
36
+
37
+ /*------------------------------------------------------------------
38
+ * LEXER RULES
39
+ *------------------------------------------------------------------*/
40
+ //LITERAL: (HC|LC)(HC|LC|'_')*;
41
+ ATTRIBUTE: (HC|LC)(HC|LC|DIGIT|'_')*;
42
+ //LITERAL: (HC|LC)(HC|LC|DIGIT|'_'|'-')*;
43
+ //NUMERICCONSTANT: ('-')? DIGIT+ ('.' DIGIT+)?;
44
+ //STRING: '\'' ACTUALSTRING '\'';
45
+ WHITESPACE: ( '\t' | ' ' | '\r' | '\n'| '\u000C' )+ { $channel = HIDDEN; };
46
+ COMMENT: '#' ~('\n'|'\r')*;
47
+ fragment ACTUALSTRING: ~('\\'|'\'')*;
48
+ fragment DIGIT: '0'..'9';
49
+ fragment HC: 'A'..'Z';
50
+ fragment LC: 'a'..'z';
@@ -0,0 +1,13 @@
1
+ ACTUALSTRING=10
2
+ HC=6
3
+ T__12=12
4
+ T__11=11
5
+ T__13=13
6
+ ATTRIBUTE=5
7
+ WHITESPACE=9
8
+ LC=7
9
+ DIGIT=8
10
+ COMMENT=4
11
+ 'attr_accessible'=11
12
+ ':'=13
13
+ ','=12
@@ -0,0 +1,538 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g
4
+ # --
5
+ # Generated using ANTLR version: 3.2.1-SNAPSHOT Jul 31, 2010 19:34:52
6
+ # Ruby runtime library version: 1.8.11
7
+ # Input grammar file: /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g
8
+ # Generated at: 2013-05-05 11:42:33
9
+ #
10
+
11
+ # ~~~> start load path setup
12
+ this_directory = File.expand_path( File.dirname( __FILE__ ) )
13
+ $LOAD_PATH.unshift( this_directory ) unless $LOAD_PATH.include?( this_directory )
14
+
15
+ antlr_load_failed = proc do
16
+ load_path = $LOAD_PATH.map { |dir| ' - ' << dir }.join( $/ )
17
+ raise LoadError, <<-END.strip!
18
+
19
+ Failed to load the ANTLR3 runtime library (version 1.8.11):
20
+
21
+ Ensure the library has been installed on your system and is available
22
+ on the load path. If rubygems is available on your system, this can
23
+ be done with the command:
24
+
25
+ gem install antlr3
26
+
27
+ Current load path:
28
+ #{ load_path }
29
+
30
+ END
31
+ end
32
+
33
+ defined?( ANTLR3 ) or begin
34
+
35
+ # 1: try to load the ruby antlr3 runtime library from the system path
36
+ require 'antlr3'
37
+
38
+ rescue LoadError
39
+
40
+ # 2: try to load rubygems if it isn't already loaded
41
+ defined?( Gem ) or begin
42
+ require 'rubygems'
43
+ rescue LoadError
44
+ antlr_load_failed.call
45
+ end
46
+
47
+ # 3: try to activate the antlr3 gem
48
+ begin
49
+ Gem.activate( 'antlr3', '~> 1.8.11' )
50
+ rescue Gem::LoadError
51
+ antlr_load_failed.call
52
+ end
53
+
54
+ require 'antlr3'
55
+
56
+ end
57
+ # <~~~ end load path setup
58
+
59
+
60
+ module AttributeParser
61
+ # TokenData defines all of the token type integer values
62
+ # as constants, which will be included in all
63
+ # ANTLR-generated recognizers.
64
+ const_defined?( :TokenData ) or TokenData = ANTLR3::TokenScheme.new
65
+
66
+ module TokenData
67
+
68
+ # define the token constants
69
+ define_tokens( :ACTUALSTRING => 10, :HC => 6, :T__12 => 12, :T__11 => 11,
70
+ :T__13 => 13, :ATTRIBUTE => 5, :LC => 7, :WHITESPACE => 9,
71
+ :DIGIT => 8, :COMMENT => 4, :EOF => -1 )
72
+
73
+ end
74
+
75
+
76
+ class Lexer < ANTLR3::Lexer
77
+ @grammar_home = AttributeParser
78
+ include TokenData
79
+
80
+
81
+ begin
82
+ generated_using( "/Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g", "3.2.1-SNAPSHOT Jul 31, 2010 19:34:52", "1.8.11" )
83
+ rescue NoMethodError => error
84
+ # ignore
85
+ end
86
+
87
+ RULE_NAMES = [ "T__11", "T__12", "T__13", "ATTRIBUTE", "WHITESPACE",
88
+ "COMMENT", "ACTUALSTRING", "DIGIT", "HC", "LC" ].freeze
89
+ RULE_METHODS = [ :t__11!, :t__12!, :t__13!, :attribute!, :whitespace!,
90
+ :comment!, :actualstring!, :digit!, :hc!, :lc! ].freeze
91
+
92
+
93
+ def initialize( input=nil, options = {} )
94
+ super( input, options )
95
+
96
+ end
97
+
98
+
99
+ # - - - - - - - - - - - lexer rules - - - - - - - - - - - -
100
+ # lexer rule t__11! (T__11)
101
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
102
+ def t__11!
103
+ # -> uncomment the next line to manually enable rule tracing
104
+ # trace_in( __method__, 1 )
105
+
106
+ type = T__11
107
+ channel = ANTLR3::DEFAULT_CHANNEL
108
+
109
+
110
+ # - - - - main rule block - - - -
111
+ # at line 7:9: 'attr_accessible'
112
+ match( "attr_accessible" )
113
+
114
+
115
+ @state.type = type
116
+ @state.channel = channel
117
+
118
+ ensure
119
+ # -> uncomment the next line to manually enable rule tracing
120
+ # trace_out( __method__, 1 )
121
+
122
+ end
123
+
124
+ # lexer rule t__12! (T__12)
125
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
126
+ def t__12!
127
+ # -> uncomment the next line to manually enable rule tracing
128
+ # trace_in( __method__, 2 )
129
+
130
+ type = T__12
131
+ channel = ANTLR3::DEFAULT_CHANNEL
132
+
133
+
134
+ # - - - - main rule block - - - -
135
+ # at line 8:9: ','
136
+ match( 0x2c )
137
+
138
+
139
+ @state.type = type
140
+ @state.channel = channel
141
+
142
+ ensure
143
+ # -> uncomment the next line to manually enable rule tracing
144
+ # trace_out( __method__, 2 )
145
+
146
+ end
147
+
148
+ # lexer rule t__13! (T__13)
149
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
150
+ def t__13!
151
+ # -> uncomment the next line to manually enable rule tracing
152
+ # trace_in( __method__, 3 )
153
+
154
+ type = T__13
155
+ channel = ANTLR3::DEFAULT_CHANNEL
156
+
157
+
158
+ # - - - - main rule block - - - -
159
+ # at line 9:9: ':'
160
+ match( 0x3a )
161
+
162
+
163
+ @state.type = type
164
+ @state.channel = channel
165
+
166
+ ensure
167
+ # -> uncomment the next line to manually enable rule tracing
168
+ # trace_out( __method__, 3 )
169
+
170
+ end
171
+
172
+ # lexer rule attribute! (ATTRIBUTE)
173
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
174
+ def attribute!
175
+ # -> uncomment the next line to manually enable rule tracing
176
+ # trace_in( __method__, 4 )
177
+
178
+ type = ATTRIBUTE
179
+ channel = ANTLR3::DEFAULT_CHANNEL
180
+
181
+
182
+ # - - - - main rule block - - - -
183
+ # at line 41:12: ( HC | LC ) ( HC | LC | DIGIT | '_' )*
184
+ if @input.peek( 1 ).between?( 0x41, 0x5a ) || @input.peek( 1 ).between?( 0x61, 0x7a )
185
+ @input.consume
186
+ else
187
+ mse = MismatchedSet( nil )
188
+ recover mse
189
+ raise mse
190
+ end
191
+
192
+
193
+ # at line 41:19: ( HC | LC | DIGIT | '_' )*
194
+ while true # decision 1
195
+ alt_1 = 2
196
+ look_1_0 = @input.peek( 1 )
197
+
198
+ if ( look_1_0.between?( 0x30, 0x39 ) || look_1_0.between?( 0x41, 0x5a ) || look_1_0 == 0x5f || look_1_0.between?( 0x61, 0x7a ) )
199
+ alt_1 = 1
200
+
201
+ end
202
+ case alt_1
203
+ when 1
204
+ # at line
205
+ if @input.peek( 1 ).between?( 0x30, 0x39 ) || @input.peek( 1 ).between?( 0x41, 0x5a ) || @input.peek(1) == 0x5f || @input.peek( 1 ).between?( 0x61, 0x7a )
206
+ @input.consume
207
+ else
208
+ mse = MismatchedSet( nil )
209
+ recover mse
210
+ raise mse
211
+ end
212
+
213
+
214
+
215
+ else
216
+ break # out of loop for decision 1
217
+ end
218
+ end # loop for decision 1
219
+
220
+
221
+ @state.type = type
222
+ @state.channel = channel
223
+
224
+ ensure
225
+ # -> uncomment the next line to manually enable rule tracing
226
+ # trace_out( __method__, 4 )
227
+
228
+ end
229
+
230
+ # lexer rule whitespace! (WHITESPACE)
231
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
232
+ def whitespace!
233
+ # -> uncomment the next line to manually enable rule tracing
234
+ # trace_in( __method__, 5 )
235
+
236
+ type = WHITESPACE
237
+ channel = ANTLR3::DEFAULT_CHANNEL
238
+
239
+
240
+ # - - - - main rule block - - - -
241
+ # at line 45:13: ( '\\t' | ' ' | '\\r' | '\\n' | '\\u000C' )+
242
+ # at file 45:13: ( '\\t' | ' ' | '\\r' | '\\n' | '\\u000C' )+
243
+ match_count_2 = 0
244
+ while true
245
+ alt_2 = 2
246
+ look_2_0 = @input.peek( 1 )
247
+
248
+ if ( look_2_0.between?( 0x9, 0xa ) || look_2_0.between?( 0xc, 0xd ) || look_2_0 == 0x20 )
249
+ alt_2 = 1
250
+
251
+ end
252
+ case alt_2
253
+ when 1
254
+ # at line
255
+ if @input.peek( 1 ).between?( 0x9, 0xa ) || @input.peek( 1 ).between?( 0xc, 0xd ) || @input.peek(1) == 0x20
256
+ @input.consume
257
+ else
258
+ mse = MismatchedSet( nil )
259
+ recover mse
260
+ raise mse
261
+ end
262
+
263
+
264
+
265
+ else
266
+ match_count_2 > 0 and break
267
+ eee = EarlyExit(2)
268
+
269
+
270
+ raise eee
271
+ end
272
+ match_count_2 += 1
273
+ end
274
+
275
+ # --> action
276
+ channel = HIDDEN;
277
+ # <-- action
278
+
279
+
280
+ @state.type = type
281
+ @state.channel = channel
282
+
283
+ ensure
284
+ # -> uncomment the next line to manually enable rule tracing
285
+ # trace_out( __method__, 5 )
286
+
287
+ end
288
+
289
+ # lexer rule comment! (COMMENT)
290
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
291
+ def comment!
292
+ # -> uncomment the next line to manually enable rule tracing
293
+ # trace_in( __method__, 6 )
294
+
295
+ type = COMMENT
296
+ channel = ANTLR3::DEFAULT_CHANNEL
297
+
298
+
299
+ # - - - - main rule block - - - -
300
+ # at line 46:10: '#' (~ ( '\\n' | '\\r' ) )*
301
+ match( 0x23 )
302
+ # at line 46:14: (~ ( '\\n' | '\\r' ) )*
303
+ while true # decision 3
304
+ alt_3 = 2
305
+ look_3_0 = @input.peek( 1 )
306
+
307
+ if ( look_3_0.between?( 0x0, 0x9 ) || look_3_0.between?( 0xb, 0xc ) || look_3_0.between?( 0xe, 0xffff ) )
308
+ alt_3 = 1
309
+
310
+ end
311
+ case alt_3
312
+ when 1
313
+ # at line 46:14: ~ ( '\\n' | '\\r' )
314
+ if @input.peek( 1 ).between?( 0x0, 0x9 ) || @input.peek( 1 ).between?( 0xb, 0xc ) || @input.peek( 1 ).between?( 0xe, 0xff )
315
+ @input.consume
316
+ else
317
+ mse = MismatchedSet( nil )
318
+ recover mse
319
+ raise mse
320
+ end
321
+
322
+
323
+
324
+ else
325
+ break # out of loop for decision 3
326
+ end
327
+ end # loop for decision 3
328
+
329
+
330
+ @state.type = type
331
+ @state.channel = channel
332
+
333
+ ensure
334
+ # -> uncomment the next line to manually enable rule tracing
335
+ # trace_out( __method__, 6 )
336
+
337
+ end
338
+
339
+ # lexer rule actualstring! (ACTUALSTRING)
340
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
341
+ def actualstring!
342
+ # -> uncomment the next line to manually enable rule tracing
343
+ # trace_in( __method__, 7 )
344
+
345
+
346
+ # - - - - main rule block - - - -
347
+ # at line 47:24: (~ ( '\\\\' | '\\'' ) )*
348
+ # at line 47:24: (~ ( '\\\\' | '\\'' ) )*
349
+ while true # decision 4
350
+ alt_4 = 2
351
+ look_4_0 = @input.peek( 1 )
352
+
353
+ if ( look_4_0.between?( 0x0, 0x26 ) || look_4_0.between?( 0x28, 0x5b ) || look_4_0.between?( 0x5d, 0xffff ) )
354
+ alt_4 = 1
355
+
356
+ end
357
+ case alt_4
358
+ when 1
359
+ # at line 47:24: ~ ( '\\\\' | '\\'' )
360
+ if @input.peek( 1 ).between?( 0x0, 0x26 ) || @input.peek( 1 ).between?( 0x28, 0x5b ) || @input.peek( 1 ).between?( 0x5d, 0xff )
361
+ @input.consume
362
+ else
363
+ mse = MismatchedSet( nil )
364
+ recover mse
365
+ raise mse
366
+ end
367
+
368
+
369
+
370
+ else
371
+ break # out of loop for decision 4
372
+ end
373
+ end # loop for decision 4
374
+
375
+ ensure
376
+ # -> uncomment the next line to manually enable rule tracing
377
+ # trace_out( __method__, 7 )
378
+
379
+ end
380
+
381
+ # lexer rule digit! (DIGIT)
382
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
383
+ def digit!
384
+ # -> uncomment the next line to manually enable rule tracing
385
+ # trace_in( __method__, 8 )
386
+
387
+
388
+ # - - - - main rule block - - - -
389
+ # at line 48:17: '0' .. '9'
390
+ match_range( 0x30, 0x39 )
391
+
392
+ ensure
393
+ # -> uncomment the next line to manually enable rule tracing
394
+ # trace_out( __method__, 8 )
395
+
396
+ end
397
+
398
+ # lexer rule hc! (HC)
399
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
400
+ def hc!
401
+ # -> uncomment the next line to manually enable rule tracing
402
+ # trace_in( __method__, 9 )
403
+
404
+
405
+ # - - - - main rule block - - - -
406
+ # at line 49:14: 'A' .. 'Z'
407
+ match_range( 0x41, 0x5a )
408
+
409
+ ensure
410
+ # -> uncomment the next line to manually enable rule tracing
411
+ # trace_out( __method__, 9 )
412
+
413
+ end
414
+
415
+ # lexer rule lc! (LC)
416
+ # (in /Users/rivmeche/Google Drive/vub/_Thesis/code/tripper/lib/tripper/model_parsers/attribute_parser/AttributeParser.g)
417
+ def lc!
418
+ # -> uncomment the next line to manually enable rule tracing
419
+ # trace_in( __method__, 10 )
420
+
421
+
422
+ # - - - - main rule block - - - -
423
+ # at line 50:14: 'a' .. 'z'
424
+ match_range( 0x61, 0x7a )
425
+
426
+ ensure
427
+ # -> uncomment the next line to manually enable rule tracing
428
+ # trace_out( __method__, 10 )
429
+
430
+ end
431
+
432
+ # main rule used to study the input at the current position,
433
+ # and choose the proper lexer rule to call in order to
434
+ # fetch the next token
435
+ #
436
+ # usually, you don't make direct calls to this method,
437
+ # but instead use the next_token method, which will
438
+ # build and emit the actual next token
439
+ def token!
440
+ # at line 1:8: ( T__11 | T__12 | T__13 | ATTRIBUTE | WHITESPACE | COMMENT )
441
+ alt_5 = 6
442
+ alt_5 = @dfa5.predict( @input )
443
+ case alt_5
444
+ when 1
445
+ # at line 1:10: T__11
446
+ t__11!
447
+
448
+ when 2
449
+ # at line 1:16: T__12
450
+ t__12!
451
+
452
+ when 3
453
+ # at line 1:22: T__13
454
+ t__13!
455
+
456
+ when 4
457
+ # at line 1:28: ATTRIBUTE
458
+ attribute!
459
+
460
+ when 5
461
+ # at line 1:38: WHITESPACE
462
+ whitespace!
463
+
464
+ when 6
465
+ # at line 1:49: COMMENT
466
+ comment!
467
+
468
+ end
469
+ end
470
+
471
+
472
+ # - - - - - - - - - - DFA definitions - - - - - - - - - - -
473
+ class DFA5 < ANTLR3::DFA
474
+ EOT = unpack( 1, -1, 1, 4, 5, -1, 13, 4, 1, 21, 1, -1 )
475
+ EOF = unpack( 22, -1 )
476
+ MIN = unpack( 1, 9, 1, 116, 5, -1, 1, 116, 1, 114, 1, 95, 1, 97, 2,
477
+ 99, 1, 101, 2, 115, 1, 105, 1, 98, 1, 108, 1, 101, 1,
478
+ 48, 1, -1 )
479
+ MAX = unpack( 1, 122, 1, 116, 5, -1, 1, 116, 1, 114, 1, 95, 1, 97,
480
+ 2, 99, 1, 101, 2, 115, 1, 105, 1, 98, 1, 108, 1, 101,
481
+ 1, 122, 1, -1 )
482
+ ACCEPT = unpack( 2, -1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 14, -1, 1, 1 )
483
+ SPECIAL = unpack( 22, -1 )
484
+ TRANSITION = [
485
+ unpack( 2, 5, 1, -1, 2, 5, 18, -1, 1, 5, 2, -1, 1, 6, 8, -1, 1,
486
+ 2, 13, -1, 1, 3, 6, -1, 26, 4, 6, -1, 1, 1, 25, 4 ),
487
+ unpack( 1, 7 ),
488
+ unpack( ),
489
+ unpack( ),
490
+ unpack( ),
491
+ unpack( ),
492
+ unpack( ),
493
+ unpack( 1, 8 ),
494
+ unpack( 1, 9 ),
495
+ unpack( 1, 10 ),
496
+ unpack( 1, 11 ),
497
+ unpack( 1, 12 ),
498
+ unpack( 1, 13 ),
499
+ unpack( 1, 14 ),
500
+ unpack( 1, 15 ),
501
+ unpack( 1, 16 ),
502
+ unpack( 1, 17 ),
503
+ unpack( 1, 18 ),
504
+ unpack( 1, 19 ),
505
+ unpack( 1, 20 ),
506
+ unpack( 10, 4, 7, -1, 26, 4, 4, -1, 1, 4, 1, -1, 26, 4 ),
507
+ unpack( )
508
+ ].freeze
509
+
510
+ ( 0 ... MIN.length ).zip( MIN, MAX ) do | i, a, z |
511
+ if a > 0 and z < 0
512
+ MAX[ i ] %= 0x10000
513
+ end
514
+ end
515
+
516
+ @decision = 5
517
+
518
+
519
+ def description
520
+ <<-'__dfa_description__'.strip!
521
+ 1:1: Tokens : ( T__11 | T__12 | T__13 | ATTRIBUTE | WHITESPACE | COMMENT );
522
+ __dfa_description__
523
+ end
524
+ end
525
+
526
+
527
+ private
528
+
529
+ def initialize_dfas
530
+ super rescue nil
531
+ @dfa5 = DFA5.new( self, 5 )
532
+
533
+ end
534
+ end # class Lexer < ANTLR3::Lexer
535
+
536
+ at_exit { Lexer.main( ARGV ) } if __FILE__ == $0
537
+ end
538
+