radiant 0.8.2 → 0.9.0.rc2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of radiant might be problematic. Click here for more details.

Files changed (1212) hide show
  1. data/CHANGELOG +258 -389
  2. data/CONTRIBUTORS +21 -0
  3. data/app/controllers/admin/layouts_controller.rb +2 -8
  4. data/app/controllers/admin/pages_controller.rb +0 -19
  5. data/app/controllers/admin/preferences_controller.rb +3 -4
  6. data/app/controllers/admin/references_controller.rb +1 -1
  7. data/app/controllers/admin/resource_controller.rb +11 -10
  8. data/app/controllers/admin/snippets_controller.rb +5 -6
  9. data/app/controllers/admin/users_controller.rb +15 -1
  10. data/app/controllers/admin/welcome_controller.rb +5 -5
  11. data/app/controllers/application_controller.rb +34 -2
  12. data/app/controllers/site_controller.rb +20 -6
  13. data/app/helpers/admin/layouts_helper.rb +19 -0
  14. data/app/helpers/admin/node_helper.rb +10 -10
  15. data/app/helpers/admin/pages_helper.rb +82 -22
  16. data/app/helpers/admin/references_helper.rb +6 -3
  17. data/app/helpers/admin/snippets_helper.rb +39 -0
  18. data/app/helpers/admin/users_helper.rb +2 -2
  19. data/app/helpers/application_helper.rb +93 -27
  20. data/app/models/layout.rb +3 -4
  21. data/app/models/page.rb +35 -20
  22. data/app/models/page_part.rb +4 -4
  23. data/app/models/radiant/config.rb +11 -7
  24. data/app/models/snippet.rb +5 -5
  25. data/app/models/standard_tags.rb +116 -20
  26. data/app/models/status.rb +3 -1
  27. data/app/models/user.rb +37 -33
  28. data/app/views/admin/extensions/index.html.haml +26 -25
  29. data/app/views/admin/layouts/_form.html.haml +26 -23
  30. data/app/views/admin/layouts/edit.html.haml +5 -3
  31. data/app/views/admin/layouts/index.html.haml +31 -32
  32. data/app/views/admin/layouts/new.html.haml +4 -2
  33. data/app/views/admin/layouts/remove.html.haml +9 -9
  34. data/app/views/admin/page_parts/_page_part.html.haml +11 -10
  35. data/app/views/admin/pages/_fields.html.haml +42 -48
  36. data/app/views/admin/pages/_meta_row.html.haml +2 -4
  37. data/app/views/admin/pages/_node.html.haml +5 -5
  38. data/app/views/admin/pages/_popups.html.haml +12 -29
  39. data/app/views/admin/pages/edit.html.haml +6 -3
  40. data/app/views/admin/pages/index.html.haml +22 -24
  41. data/app/views/admin/pages/new.html.haml +4 -3
  42. data/app/views/admin/pages/remove.html.haml +14 -17
  43. data/app/views/admin/preferences/edit.html.haml +36 -28
  44. data/app/views/admin/references/_tag_reference.haml +2 -2
  45. data/app/views/admin/references/filters.haml +6 -0
  46. data/app/views/admin/references/tags.haml +30 -0
  47. data/app/views/admin/snippets/_form.html.haml +22 -18
  48. data/app/views/admin/snippets/edit.html.haml +6 -2
  49. data/app/views/admin/snippets/index.html.haml +29 -29
  50. data/app/views/admin/snippets/new.html.haml +4 -2
  51. data/app/views/admin/snippets/remove.html.haml +9 -11
  52. data/app/views/admin/users/_avatar.html.haml +3 -0
  53. data/app/views/admin/users/_form.html.haml +47 -67
  54. data/app/views/admin/users/_password_fields.html.haml +18 -0
  55. data/app/views/admin/users/edit.html.haml +5 -1
  56. data/app/views/admin/users/index.html.haml +33 -30
  57. data/app/views/admin/users/new.html.haml +2 -1
  58. data/app/views/admin/users/remove.html.haml +8 -10
  59. data/app/views/admin/welcome/login.html.haml +19 -58
  60. data/app/views/layouts/application.html.haml +30 -29
  61. data/config/boot.rb +1 -1
  62. data/config/cucumber.yml +7 -0
  63. data/config/database.db2.yml +4 -1
  64. data/config/database.mysql.yml +5 -2
  65. data/config/database.postgresql.yml +5 -2
  66. data/config/database.sqlite.yml +4 -1
  67. data/config/database.sqlserver.yml +5 -2
  68. data/config/environment.rb +14 -2
  69. data/config/environments/cucumber.rb +29 -0
  70. data/config/environments/production.rb +6 -1
  71. data/config/environments/test.rb +6 -3
  72. data/config/initializers/haml.rb +2 -0
  73. data/config/initializers/pagination.rb +1 -0
  74. data/config/locales/en.yml +190 -0
  75. data/config/locales/en_available_tags.yml +454 -0
  76. data/config/routes.rb +2 -2
  77. data/db/migrate/20090226140109_add_user_language.rb +9 -0
  78. data/db/migrate/20090929164633_rename_developer_role_to_designer.rb +9 -0
  79. data/db/migrate/20091003095744_change_user_language_to_locale.rb +9 -0
  80. data/db/schema.rb +3 -2
  81. data/features/admin/content_negotiation.feature +4 -4
  82. data/features/admin/layouts_management.feature +2 -2
  83. data/features/admin/pages_management.feature +31 -17
  84. data/features/admin/snippets_management.feature +19 -17
  85. data/features/admin/user_permissions.feature +49 -41
  86. data/features/admin/user_preferences.feature +6 -6
  87. data/features/admin/users_management.feature +8 -9
  88. data/features/page_serving.feature +8 -8
  89. data/features/step_definitions/admin/admin_steps.rb +8 -2
  90. data/features/step_definitions/admin/content_negotiation_steps.rb +14 -5
  91. data/features/step_definitions/admin/pages_management_steps.rb +1 -1
  92. data/features/step_definitions/admin/users_management_steps.rb +3 -0
  93. data/features/step_definitions/page_serving_steps.rb +0 -19
  94. data/features/step_definitions/web_steps.rb +263 -0
  95. data/features/support/dataset.rb +9 -0
  96. data/features/support/env.rb +44 -14
  97. data/features/support/paths.rb +57 -12
  98. data/lib/generators/extension/extension_generator.rb +29 -1
  99. data/lib/generators/extension/templates/RSpecRakefile +14 -1
  100. data/lib/generators/extension/templates/Rakefile +17 -0
  101. data/lib/generators/extension/templates/en.yml +3 -0
  102. data/lib/generators/extension/templates/extension.rb +10 -10
  103. data/lib/generators/extension/templates/routes.rb +5 -0
  104. data/lib/generators/extension/templates/tasks.rake +27 -0
  105. data/lib/generators/extension/templates/test_helper.rb +1 -1
  106. data/lib/generators/instance/instance_generator.rb +3 -2
  107. data/lib/generators/instance/templates/databases/sqlserver.yml +2 -1
  108. data/lib/generators/instance/templates/instance_boot.rb +1 -1
  109. data/lib/generators/instance/templates/instance_environment.rb +8 -1
  110. data/lib/generators/language_extension/USAGE +27 -0
  111. data/lib/generators/language_extension/language_extension_generator.rb +49 -0
  112. data/lib/generators/language_extension/templates/README +3 -0
  113. data/lib/generators/language_extension/templates/RSpecRakefile +123 -0
  114. data/lib/generators/language_extension/templates/Rakefile +25 -0
  115. data/lib/generators/language_extension/templates/available_tags.yml +553 -0
  116. data/lib/generators/language_extension/templates/cucumber.yml +1 -0
  117. data/lib/generators/language_extension/templates/cucumber_env.rb +16 -0
  118. data/lib/generators/language_extension/templates/cucumber_paths.rb +14 -0
  119. data/lib/generators/language_extension/templates/extension.rb +8 -0
  120. data/lib/generators/language_extension/templates/functional_test.rb +15 -0
  121. data/lib/generators/language_extension/templates/lang.yml +181 -0
  122. data/lib/generators/language_extension/templates/spec.opts +6 -0
  123. data/lib/generators/language_extension/templates/spec_helper.rb +36 -0
  124. data/lib/generators/language_extension/templates/tasks.rake +28 -0
  125. data/lib/generators/language_extension/templates/test_helper.rb +26 -0
  126. data/lib/login_system.rb +14 -17
  127. data/lib/radiant.rb +4 -3
  128. data/lib/radiant/admin_ui.rb +114 -58
  129. data/lib/radiant/available_locales.rb +31 -0
  130. data/lib/radiant/cache.rb +12 -0
  131. data/lib/radiant/extension.rb +29 -3
  132. data/lib/radiant/extension/script.rb +44 -13
  133. data/lib/radiant/extension_loader.rb +21 -7
  134. data/lib/radiant/initializer.rb +23 -23
  135. data/lib/radiant/pagination/link_renderer.rb +31 -0
  136. data/lib/radiant/setup.rb +1 -0
  137. data/lib/radiant/taggable.rb +2 -1
  138. data/lib/task_support.rb +21 -1
  139. data/lib/tasks/ci.rake +17 -0
  140. data/lib/tasks/cucumber.rake +39 -13
  141. data/lib/tasks/extensions.rake +12 -1
  142. data/lib/tasks/framework.rake +44 -8
  143. data/lib/tasks/prototype.rake +34 -0
  144. data/lib/tasks/release.rake +6 -4
  145. data/lib/tasks/rspec.rake +7 -7
  146. data/lib/tasks/translate.rake +59 -0
  147. data/lib/tasks/undefine.rake +4 -0
  148. data/lib/translation_support.rb +54 -0
  149. data/public/images/admin/add_tab.png +0 -0
  150. data/public/images/admin/avatar_32x32.png +0 -0
  151. data/public/images/admin/avatar_96x96.png +0 -0
  152. data/public/images/admin/{brown-bottom-line.gif → brown_bottom_line.gif} +0 -0
  153. data/public/images/admin/buttons_background.png +0 -0
  154. data/public/images/admin/calendar_down.gif +0 -0
  155. data/public/images/admin/collapse.png +0 -0
  156. data/public/images/admin/draft_page.png +0 -0
  157. data/public/images/admin/expand.png +0 -0
  158. data/public/images/admin/layout.png +0 -0
  159. data/public/images/admin/login_shadow.png +0 -0
  160. data/public/images/admin/metadata_toggle.png +0 -0
  161. data/public/images/admin/minus_disabled.png +0 -0
  162. data/public/images/admin/minus_grey.png +0 -0
  163. data/public/images/admin/navigation_background.gif +0 -0
  164. data/public/images/admin/navigation_secondary_background.png +0 -0
  165. data/public/images/admin/navigation_secondary_separator.gif +0 -0
  166. data/public/images/admin/navigation_shadow.png +0 -0
  167. data/public/images/admin/navigation_tabs.png +0 -0
  168. data/public/images/admin/{new-homepage.png → new_homepage.png} +0 -0
  169. data/public/images/admin/{new-layout.png → new_layout.png} +0 -0
  170. data/public/images/admin/{new-snippet.png → new_snippet.png} +0 -0
  171. data/public/images/admin/{new-user.png → new_user.png} +0 -0
  172. data/public/images/admin/page.png +0 -0
  173. data/public/images/admin/plus_grey.png +0 -0
  174. data/public/images/admin/popup_border_background.png +0 -0
  175. data/public/images/admin/popup_border_bottom_left.png +0 -0
  176. data/public/images/admin/popup_border_bottom_right.png +0 -0
  177. data/public/images/admin/popup_border_top_left.png +0 -0
  178. data/public/images/admin/popup_border_top_right.png +0 -0
  179. data/public/images/admin/single_form_shadow.png +0 -0
  180. data/public/images/admin/snippet.png +0 -0
  181. data/public/images/admin/spacer.gif +0 -0
  182. data/public/images/admin/status_background.png +0 -0
  183. data/public/images/admin/status_bottom_left.png +0 -0
  184. data/public/images/admin/status_bottom_right.png +0 -0
  185. data/public/images/admin/status_spinner.gif +0 -0
  186. data/public/images/admin/status_top_left.png +0 -0
  187. data/public/images/admin/status_top_right.png +0 -0
  188. data/public/images/admin/tab_close.png +0 -0
  189. data/public/images/admin/vertical_tan_gradient.png +0 -0
  190. data/public/images/admin/view_site.png +0 -0
  191. data/public/images/admin/virtual_page.png +0 -0
  192. data/public/images/radiant-badge-color.png +0 -0
  193. data/public/javascripts/admin/application.js +82 -0
  194. data/public/javascripts/admin/codearea.js +165 -0
  195. data/public/javascripts/{controls.js → admin/controls.js} +78 -76
  196. data/public/javascripts/admin/cookie.js +80 -0
  197. data/public/javascripts/admin/dateinput.js +402 -0
  198. data/public/javascripts/{dragdrop.js → admin/dragdrop.js} +167 -166
  199. data/public/javascripts/{effects.js → admin/effects.js} +168 -174
  200. data/public/javascripts/admin/lowpro.js +340 -0
  201. data/public/javascripts/admin/overrides.js +1 -0
  202. data/public/javascripts/admin/pagestatus.js +17 -0
  203. data/public/javascripts/admin/popup.js +216 -0
  204. data/public/javascripts/{prototype.js → admin/prototype.js} +1574 -1020
  205. data/public/javascripts/admin/ruledtable.js +5 -5
  206. data/public/javascripts/admin/shortcuts.js +27 -0
  207. data/public/javascripts/admin/sitemap.js +37 -20
  208. data/public/javascripts/admin/status.js +233 -0
  209. data/public/javascripts/admin/tabcontrol.js +88 -100
  210. data/public/javascripts/admin/toggle.js +430 -0
  211. data/public/javascripts/admin/utility.js +52 -0
  212. data/public/stylesheets/admin/main.css +1088 -588
  213. data/public/stylesheets/admin/overrides.css +1 -0
  214. data/public/stylesheets/sass/admin/main.sass +26 -0
  215. data/public/stylesheets/sass/admin/modules/_links.sass +15 -0
  216. data/public/stylesheets/sass/admin/modules/_opacity.sass +7 -0
  217. data/public/stylesheets/sass/admin/modules/_rounded.sass +41 -0
  218. data/public/stylesheets/sass/admin/modules/_shadow.sass +9 -0
  219. data/public/stylesheets/sass/admin/overrides.sass +2 -0
  220. data/public/stylesheets/sass/admin/partials/_actions.sass +43 -0
  221. data/public/stylesheets/sass/admin/partials/_avatars.sass +10 -0
  222. data/public/stylesheets/sass/admin/partials/_base.sass +59 -0
  223. data/public/stylesheets/sass/admin/partials/_content.sass +199 -0
  224. data/public/stylesheets/sass/admin/partials/_dateinput.sass +62 -0
  225. data/public/stylesheets/sass/admin/partials/_depreciated.sass +26 -0
  226. data/public/stylesheets/sass/admin/partials/_footer.sass +12 -0
  227. data/public/stylesheets/sass/admin/partials/_forms.sass +309 -0
  228. data/public/stylesheets/sass/admin/partials/_header.sass +112 -0
  229. data/public/stylesheets/sass/admin/partials/_layout.sass +10 -0
  230. data/public/stylesheets/sass/admin/partials/_messages.sass +10 -0
  231. data/public/stylesheets/sass/admin/partials/_popup.sass +117 -0
  232. data/public/stylesheets/sass/admin/partials/_reset.sass +36 -0
  233. data/public/stylesheets/sass/admin/partials/_tabcontrol.sass +70 -0
  234. data/public/stylesheets/sass/admin/partials/_toolbar.sass +31 -0
  235. data/rerun.txt +1 -0
  236. data/script/cucumber +9 -7
  237. data/spec/controllers/admin/export_controller_spec.rb +1 -1
  238. data/spec/controllers/admin/layouts_controller_spec.rb +5 -5
  239. data/spec/controllers/admin/pages_controller_spec.rb +26 -7
  240. data/spec/controllers/admin/preferences_controller_spec.rb +5 -6
  241. data/spec/controllers/admin/references_controller_spec.rb +1 -1
  242. data/spec/controllers/admin/snippets_controller_spec.rb +6 -6
  243. data/spec/controllers/admin/users_controller_spec.rb +10 -1
  244. data/spec/controllers/admin/welcome_controller_spec.rb +3 -3
  245. data/spec/controllers/application_controller_spec.rb +14 -0
  246. data/spec/controllers/site_controller_spec.rb +48 -1
  247. data/spec/datasets/pages_dataset.rb +5 -1
  248. data/spec/datasets/users_dataset.rb +23 -10
  249. data/spec/generators/extension_controller_generator_spec.rb +16 -6
  250. data/spec/generators/extension_generator_spec.rb +49 -18
  251. data/spec/generators/extension_generators_spec_helper.rb +53 -26
  252. data/spec/generators/extension_mailer_generator_spec.rb +3 -3
  253. data/spec/generators/instance_generator_spec.rb +152 -0
  254. data/spec/helpers/admin/node_helper_spec.rb +8 -8
  255. data/spec/helpers/admin/references_helper_spec.rb +4 -4
  256. data/spec/helpers/admin/users_helper_spec.rb +2 -2
  257. data/spec/helpers/application_helper_spec.rb +68 -32
  258. data/spec/lib/login_system_spec.rb +1 -1
  259. data/spec/lib/radiant/admin_ui/nav_tabs_spec.rb +139 -0
  260. data/spec/lib/radiant/admin_ui_spec.rb +30 -131
  261. data/spec/lib/radiant/available_locales_spec.rb +13 -0
  262. data/spec/lib/radiant/extension/script_spec.rb +24 -11
  263. data/spec/lib/radiant/extension_loader_spec.rb +37 -7
  264. data/spec/lib/radiant/extension_spec.rb +32 -1
  265. data/spec/lib/radiant/initializer_spec.rb +32 -2
  266. data/spec/lib/radiant/taggable_spec.rb +10 -8
  267. data/spec/lib/radiant_spec.rb +5 -1
  268. data/spec/lib/task_support_spec.rb +31 -0
  269. data/spec/lib/translation_support_spec.rb +16 -0
  270. data/spec/matchers/generator_matchers.rb +145 -147
  271. data/spec/matchers/render_form_errors_matcher.rb +1 -1
  272. data/spec/models/page_spec.rb +36 -0
  273. data/spec/models/radiant/config_spec.rb +2 -2
  274. data/spec/models/standard_tags_spec.rb +96 -26
  275. data/spec/models/user_spec.rb +32 -8
  276. data/test/fixtures/extensions/{01_basic → basic}/app/controllers/basic_extension_controller.rb +0 -0
  277. data/test/fixtures/extensions/{01_basic → basic}/app/metal/basic_metal.rb +0 -0
  278. data/test/fixtures/extensions/{01_basic → basic}/app/models/basic_extension_mailer.rb +0 -0
  279. data/test/fixtures/extensions/{01_basic → basic}/app/models/basic_extension_model.rb +0 -0
  280. data/test/fixtures/extensions/{01_basic → basic}/app/views/basic_extension/index.html.erb +0 -0
  281. data/test/fixtures/extensions/{01_basic → basic}/app/views/basic_extension/override.html.erb +0 -0
  282. data/test/fixtures/extensions/{01_basic → basic}/app/views/basic_extension_mailer/message.text.html.erb +0 -0
  283. data/test/fixtures/extensions/{01_basic → basic}/basic_extension.rb +3 -4
  284. data/test/fixtures/extensions/{01_basic → basic}/db/migrate/200812131420_create_initial_schema.rb +0 -0
  285. data/test/fixtures/extensions/{01_basic → basic}/db/migrate/200812131421_modify_initial_schema.rb +0 -0
  286. data/test/fixtures/extensions/{01_basic → basic}/lib/new_module.rb +0 -0
  287. data/test/fixtures/extensions/{01_basic → basic}/vendor/plugins/multiple/init.rb +0 -0
  288. data/test/fixtures/extensions/{01_basic → basic}/vendor/plugins/multiple/lib/multiple.rb +0 -0
  289. data/test/fixtures/extensions/{01_basic → basic}/vendor/plugins/plugin_normal/init.rb +0 -0
  290. data/test/fixtures/extensions/{01_basic → basic}/vendor/plugins/plugin_normal/lib/normal_plugin.rb +0 -0
  291. data/test/fixtures/extensions/load_order_blue/load_order_blue_extension.rb +0 -3
  292. data/test/fixtures/extensions/load_order_green/load_order_green_extension.rb +0 -3
  293. data/test/fixtures/extensions/load_order_red/load_order_red_extension.rb +0 -3
  294. data/test/fixtures/extensions/locale/config/locales/en-uk.yml +3 -0
  295. data/test/fixtures/extensions/locale/config/locales/en.yml +3 -0
  296. data/test/fixtures/extensions/locale/locale_extension.rb +5 -0
  297. data/test/fixtures/extensions/{02_overriding → overriding}/app/metal/basic_metal.rb +0 -0
  298. data/test/fixtures/extensions/{02_overriding → overriding}/app/views/basic_extension/override.html.erb +0 -0
  299. data/test/fixtures/extensions/{02_overriding → overriding}/overriding_extension.rb +0 -3
  300. data/test/fixtures/extensions/{02_overriding → overriding}/vendor/plugins/multiple/init.rb +0 -0
  301. data/test/fixtures/extensions/{02_overriding → overriding}/vendor/plugins/multiple/lib/multiple.rb +0 -0
  302. data/test/fixtures/extensions/routed/config/routes.rb +1 -0
  303. data/test/fixtures/extensions/routed/routed_extension.rb +2 -0
  304. data/test/fixtures/extensions/{03_upgrading → upgrading}/db/migrate/01_first.rb +0 -0
  305. data/test/fixtures/extensions/{03_upgrading → upgrading}/db/migrate/02_second.rb +0 -0
  306. data/test/fixtures/extensions/{03_upgrading → upgrading}/db/migrate/03_pending.rb +0 -0
  307. data/test/fixtures/extensions/{03_upgrading → upgrading}/db/migrate/04_dont_run.rb +0 -0
  308. data/test/fixtures/extensions/{03_upgrading → upgrading}/upgrading_extension.rb +0 -0
  309. data/test/fixtures/gems/misnamed_ext-0.0.0/misnamed_ext_extension.rb +2 -0
  310. data/test/fixtures/gems/radiant-gem_ext-extension-0.0.0/gem_ext_extension.rb +2 -0
  311. data/test/fixtures/gems/radiant-gem_ext-extension-0.0.0/lib/gem_ext.rb +3 -0
  312. data/test/test_helper.rb +1 -1
  313. data/vendor/extensions/archive/archive_extension.rb +1 -1
  314. data/vendor/extensions/dutch_language_pack/README +3 -0
  315. data/vendor/extensions/dutch_language_pack/Rakefile +123 -0
  316. data/vendor/extensions/dutch_language_pack/config/locales/nl.yml +187 -0
  317. data/vendor/extensions/dutch_language_pack/config/locales/nl_available_tags.yml +553 -0
  318. data/vendor/extensions/dutch_language_pack/dutch_language_pack_extension.rb +9 -0
  319. data/vendor/extensions/dutch_language_pack/lib/tasks/i18n_nl_extension_tasks.rake +28 -0
  320. data/vendor/extensions/french_language_pack/README +3 -0
  321. data/vendor/extensions/french_language_pack/Rakefile +123 -0
  322. data/vendor/extensions/french_language_pack/config/locales/fr.yml +184 -0
  323. data/vendor/extensions/french_language_pack/config/locales/fr_available_tags.yml +553 -0
  324. data/vendor/extensions/french_language_pack/french_language_pack_extension.rb +9 -0
  325. data/vendor/extensions/french_language_pack/lib/tasks/i18n_fr_extension_tasks.rake +28 -0
  326. data/vendor/extensions/german_language_pack/README +3 -0
  327. data/vendor/extensions/german_language_pack/Rakefile +123 -0
  328. data/vendor/extensions/german_language_pack/config/locales/de.yml +184 -0
  329. data/vendor/extensions/german_language_pack/config/locales/de_available_tags.yml +553 -0
  330. data/vendor/extensions/german_language_pack/german_language_pack_extension.rb +9 -0
  331. data/vendor/extensions/german_language_pack/lib/tasks/i18n_de_extension_tasks.rake +28 -0
  332. data/vendor/extensions/italian_language_pack/README +3 -0
  333. data/vendor/extensions/italian_language_pack/Rakefile +123 -0
  334. data/vendor/extensions/italian_language_pack/config/locales/it.yml +184 -0
  335. data/vendor/extensions/italian_language_pack/config/locales/it_available_tags.yml +553 -0
  336. data/vendor/extensions/italian_language_pack/italian_language_pack_extension.rb +8 -0
  337. data/vendor/extensions/italian_language_pack/lib/tasks/i18n_it_extension_tasks.rake +28 -0
  338. data/vendor/extensions/japanese_language_pack/README +3 -0
  339. data/vendor/extensions/japanese_language_pack/Rakefile +123 -0
  340. data/vendor/extensions/japanese_language_pack/config/locales/ja.yml +184 -0
  341. data/vendor/extensions/japanese_language_pack/config/locales/ja_available_tags.yml +553 -0
  342. data/vendor/extensions/japanese_language_pack/japanese_language_pack_extension.rb +9 -0
  343. data/vendor/extensions/japanese_language_pack/lib/tasks/i18n_ja_extension_tasks.rake +28 -0
  344. data/vendor/extensions/markdown_filter/lib/markdown_filter.rb +5 -1
  345. data/vendor/extensions/markdown_filter/lib/markdown_tags.rb +4 -4
  346. data/vendor/extensions/markdown_filter/markdown.html +122 -122
  347. data/vendor/extensions/markdown_filter/markdown_filter_extension.rb +2 -2
  348. data/vendor/extensions/markdown_filter/smartypants.html +47 -47
  349. data/vendor/extensions/markdown_filter/spec/models/markdown_filter_spec.rb +1 -1
  350. data/vendor/extensions/markdown_filter/vendor/kramdown/AUTHORS +1 -0
  351. data/vendor/extensions/markdown_filter/vendor/kramdown/COPYING +24 -0
  352. data/vendor/extensions/markdown_filter/vendor/kramdown/ChangeLog +2624 -0
  353. data/vendor/extensions/markdown_filter/vendor/kramdown/GPL +674 -0
  354. data/vendor/extensions/markdown_filter/vendor/kramdown/README +20 -0
  355. data/vendor/extensions/markdown_filter/vendor/kramdown/Rakefile +283 -0
  356. data/vendor/extensions/markdown_filter/vendor/kramdown/VERSION +1 -0
  357. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/benchmark.rb +34 -0
  358. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/generate_data.rb +110 -0
  359. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-jruby-1.4.0.dat +7 -0
  360. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.8.6.dat +7 -0
  361. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.8.7.dat +7 -0
  362. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.9.1p243.dat +7 -0
  363. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.9.2dev.dat +7 -0
  364. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/mdbasics.text +306 -0
  365. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/mdsyntax.text +888 -0
  366. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-jruby-1.4.0.dat +7 -0
  367. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.8.6.dat +7 -0
  368. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.8.7.dat +7 -0
  369. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.9.1p243.dat +7 -0
  370. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.9.2dev.dat +7 -0
  371. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/testing.sh +9 -0
  372. data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/timing.sh +10 -0
  373. data/vendor/extensions/markdown_filter/vendor/kramdown/bin/kramdown +71 -0
  374. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.css +293 -0
  375. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.template +78 -0
  376. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/index.page +91 -0
  377. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/installation.page +90 -0
  378. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/news.feed +10 -0
  379. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/news.page +27 -0
  380. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/quickref.page +551 -0
  381. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/syntax.page +1451 -0
  382. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/tests.page +51 -0
  383. data/vendor/extensions/markdown_filter/vendor/kramdown/doc/virtual +2 -0
  384. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown.rb +23 -0
  385. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/compatibility.rb +34 -0
  386. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter.rb +36 -0
  387. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/base.rb +75 -0
  388. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/html.rb +325 -0
  389. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/latex.rb +516 -0
  390. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/document.rb +145 -0
  391. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/error.rb +27 -0
  392. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/options.rb +262 -0
  393. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser.rb +33 -0
  394. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown.rb +292 -0
  395. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/attribute_list.rb +102 -0
  396. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/autolink.rb +42 -0
  397. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/blank_line.rb +43 -0
  398. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/blockquote.rb +42 -0
  399. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/codeblock.rb +58 -0
  400. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/codespan.rb +57 -0
  401. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/emphasis.rb +69 -0
  402. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/eob.rb +39 -0
  403. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/escaped_chars.rb +38 -0
  404. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/extension.rb +109 -0
  405. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/footnote.rb +73 -0
  406. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/header.rb +81 -0
  407. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/horizontal_rule.rb +39 -0
  408. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/html.rb +253 -0
  409. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/html_entity.rb +38 -0
  410. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/line_break.rb +38 -0
  411. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/link.rb +153 -0
  412. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/list.rb +225 -0
  413. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/paragraph.rb +44 -0
  414. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/smart_quotes.rb +213 -0
  415. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/table.rb +125 -0
  416. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/typographic_symbol.rb +48 -0
  417. data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/version.rb +28 -0
  418. data/vendor/extensions/markdown_filter/vendor/kramdown/setup.rb +1585 -0
  419. data/vendor/extensions/markdown_filter/vendor/kramdown/test/run_tests.rb +58 -0
  420. data/vendor/extensions/markdown_filter/vendor/kramdown/test/test_files.rb +39 -0
  421. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/spaces.html +1 -0
  422. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/spaces.text +3 -0
  423. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/tabs.html +1 -0
  424. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/tabs.text +6 -0
  425. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/beginning.html +1 -0
  426. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/beginning.text +3 -0
  427. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/end.html +1 -0
  428. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/end.text +3 -0
  429. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/middle.html +2 -0
  430. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/middle.text +5 -0
  431. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/indented.html +18 -0
  432. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/indented.text +19 -0
  433. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/no_newline_at_end.html +5 -0
  434. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/no_newline_at_end.text +5 -0
  435. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/one_para.html +1 -0
  436. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/one_para.text +1 -0
  437. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/two_para.html +4 -0
  438. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/two_para.text +4 -0
  439. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header.html +34 -0
  440. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header.text +32 -0
  441. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header_no_newline_at_end.html +1 -0
  442. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header_no_newline_at_end.text +1 -0
  443. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header.html +31 -0
  444. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header.text +36 -0
  445. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header_no_newline_at_end.html +1 -0
  446. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header_no_newline_at_end.text +2 -0
  447. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_ids.html +17 -0
  448. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_ids.options +1 -0
  449. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_ids.text +19 -0
  450. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/indented.html +25 -0
  451. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/indented.text +14 -0
  452. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/nested.html +9 -0
  453. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/nested.text +5 -0
  454. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/no_newline_at_end.html +4 -0
  455. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/no_newline_at_end.text +2 -0
  456. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/only_first_quoted.html +8 -0
  457. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/only_first_quoted.text +4 -0
  458. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/with_code_blocks.html +15 -0
  459. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/with_code_blocks.text +11 -0
  460. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/error.html +4 -0
  461. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/error.text +4 -0
  462. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/no_newline_at_end.html +2 -0
  463. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/no_newline_at_end.text +1 -0
  464. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/normal.html +13 -0
  465. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/normal.text +10 -0
  466. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/tilde_syntax.html +7 -0
  467. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/tilde_syntax.text +9 -0
  468. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/whitespace.html +3 -0
  469. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/whitespace.text +3 -0
  470. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_blank_line.html +13 -0
  471. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_blank_line.text +12 -0
  472. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_eob_marker.html +6 -0
  473. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_eob_marker.text +5 -0
  474. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/error.html +7 -0
  475. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/error.text +7 -0
  476. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/normal.html +19 -0
  477. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/normal.text +19 -0
  478. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/sepspaces.html +3 -0
  479. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/sepspaces.text +3 -0
  480. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/septabs.html +3 -0
  481. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/septabs.text +3 -0
  482. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/escaping.html +17 -0
  483. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/escaping.text +17 -0
  484. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_hr.html +9 -0
  485. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_hr.text +5 -0
  486. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_others.html +38 -0
  487. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_others.text +25 -0
  488. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/mixed.html +111 -0
  489. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/mixed.text +66 -0
  490. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/nested.html +17 -0
  491. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/nested.text +7 -0
  492. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/other_first_element.html +39 -0
  493. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/other_first_element.text +18 -0
  494. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ol.html +19 -0
  495. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ol.text +13 -0
  496. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ul.html +61 -0
  497. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ul.text +43 -0
  498. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/single_item.html +3 -0
  499. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/single_item.text +1 -0
  500. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/special_cases.html +29 -0
  501. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/special_cases.text +19 -0
  502. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/comment.html +13 -0
  503. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/comment.text +12 -0
  504. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/deflists.html +6 -0
  505. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/deflists.options +1 -0
  506. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/deflists.text +6 -0
  507. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.html +14 -0
  508. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.options +1 -0
  509. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.text +14 -0
  510. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/filtered_html.html +1 -0
  511. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/filtered_html.options +1 -0
  512. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/filtered_html.text +1 -0
  513. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_and_codeblocks.html +15 -0
  514. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_and_codeblocks.options +1 -0
  515. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_and_codeblocks.text +13 -0
  516. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_1.html +3 -0
  517. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_1.text +5 -0
  518. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_2.html +5 -0
  519. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_2.text +5 -0
  520. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/markdown_attr.html +38 -0
  521. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/markdown_attr.text +38 -0
  522. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/not_parsed.html +24 -0
  523. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/not_parsed.text +24 -0
  524. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.html +32 -0
  525. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.options +1 -0
  526. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.text +30 -0
  527. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_span.html +12 -0
  528. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_span.options +1 -0
  529. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_span.text +9 -0
  530. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_block_html.html +21 -0
  531. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_block_html.options +1 -0
  532. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_block_html.text +17 -0
  533. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/processing_instruction.html +13 -0
  534. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/processing_instruction.text +12 -0
  535. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/simple.html +62 -0
  536. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/simple.options +1 -0
  537. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/simple.text +57 -0
  538. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/10_ald/simple.html +2 -0
  539. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/10_ald/simple.text +8 -0
  540. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.html +1 -0
  541. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.options +1 -0
  542. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.text +2 -0
  543. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/simple.html +20 -0
  544. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/simple.text +27 -0
  545. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/comment.html +5 -0
  546. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/comment.text +11 -0
  547. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/ignored.html +6 -0
  548. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/ignored.text +11 -0
  549. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/nomarkdown.html +6 -0
  550. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/nomarkdown.text +11 -0
  551. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options.html +24 -0
  552. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options.text +28 -0
  553. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options2.html +10 -0
  554. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options2.text +5 -0
  555. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options3.html +7 -0
  556. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options3.text +7 -0
  557. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/definition_at_beginning.html +1 -0
  558. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/definition_at_beginning.text +1 -0
  559. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/multiple_terms.html +13 -0
  560. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/multiple_terms.text +10 -0
  561. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/no_def_list.html +2 -0
  562. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/no_def_list.text +2 -0
  563. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/para_wrapping.html +10 -0
  564. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/para_wrapping.text +6 -0
  565. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/separated_by_eob.html +8 -0
  566. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/separated_by_eob.text +5 -0
  567. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/simple.html +8 -0
  568. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/simple.text +7 -0
  569. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/styled_terms.html +4 -0
  570. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/styled_terms.text +2 -0
  571. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/too_much_space.html +3 -0
  572. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/too_much_space.text +4 -0
  573. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/with_blocks.html +38 -0
  574. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/with_blocks.text +24 -0
  575. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/errors.html +3 -0
  576. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/errors.text +3 -0
  577. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/footer.html +65 -0
  578. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/footer.text +25 -0
  579. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/header.html +103 -0
  580. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/header.text +32 -0
  581. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/no_table.html +3 -0
  582. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/no_table.text +3 -0
  583. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/simple.html +61 -0
  584. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/simple.text +16 -0
  585. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/encoding.html +46 -0
  586. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/encoding.text +28 -0
  587. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/empty.html +3 -0
  588. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/empty.text +3 -0
  589. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/image_in_a.html +5 -0
  590. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/image_in_a.text +5 -0
  591. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/imagelinks.html +12 -0
  592. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/imagelinks.text +14 -0
  593. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/inline.html +40 -0
  594. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/inline.text +42 -0
  595. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/link_defs.html +8 -0
  596. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/link_defs.text +22 -0
  597. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/links_with_angle_brackets.html +3 -0
  598. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/links_with_angle_brackets.text +3 -0
  599. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/reference.html +32 -0
  600. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/reference.text +42 -0
  601. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/empty.html +3 -0
  602. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/empty.text +3 -0
  603. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/errors.html +9 -0
  604. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/errors.text +9 -0
  605. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/nesting.html +34 -0
  606. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/nesting.text +30 -0
  607. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/normal.html +46 -0
  608. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/normal.text +46 -0
  609. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/empty.html +5 -0
  610. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/empty.text +5 -0
  611. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/errors.html +1 -0
  612. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/errors.text +1 -0
  613. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/normal.html +16 -0
  614. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/normal.text +16 -0
  615. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/definitions.html +14 -0
  616. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/definitions.text +18 -0
  617. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.html +12 -0
  618. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.options +1 -0
  619. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.text +4 -0
  620. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/markers.html +46 -0
  621. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/markers.text +26 -0
  622. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/across_lines.html +1 -0
  623. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/across_lines.text +2 -0
  624. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/link_with_mailto.html +1 -0
  625. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/link_with_mailto.text +1 -0
  626. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/markdown_attr.html +6 -0
  627. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/markdown_attr.text +6 -0
  628. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/normal.html +28 -0
  629. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/normal.text +28 -0
  630. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/autolinks/url_links.html +9 -0
  631. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/autolinks/url_links.text +9 -0
  632. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/escaped_chars/normal.html +41 -0
  633. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/escaped_chars/normal.text +41 -0
  634. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/ial/simple.html +5 -0
  635. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/ial/simple.text +5 -0
  636. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/line_breaks/normal.html +11 -0
  637. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/line_breaks/normal.text +11 -0
  638. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/entities.html +4 -0
  639. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/entities.text +4 -0
  640. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/greaterthan.html +1 -0
  641. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/greaterthan.text +1 -0
  642. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/lowerthan.html +1 -0
  643. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/lowerthan.text +1 -0
  644. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/typography.html +15 -0
  645. data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/typography.text +15 -0
  646. data/vendor/extensions/russian_language_pack/README +3 -0
  647. data/vendor/extensions/russian_language_pack/Rakefile +123 -0
  648. data/vendor/extensions/russian_language_pack/config/locales/ru.yml +180 -0
  649. data/vendor/extensions/russian_language_pack/config/locales/ru_available_tags.yml +553 -0
  650. data/vendor/extensions/russian_language_pack/lib/tasks/i18n_ru_extension_tasks.rake +28 -0
  651. data/vendor/extensions/russian_language_pack/russian_language_pack_extension.rb +9 -0
  652. data/vendor/extensions/textile_filter/textile.html +114 -114
  653. data/vendor/plugins/dataset/lib/dataset/extensions/cucumber.rb +5 -4
  654. data/vendor/plugins/dataset/lib/dataset/load.rb +0 -10
  655. data/vendor/plugins/dataset/lib/dataset/session.rb +4 -20
  656. data/vendor/plugins/dataset/lib/dataset/session_binding.rb +5 -15
  657. data/vendor/plugins/haml/CONTRIBUTING +4 -0
  658. data/vendor/plugins/haml/MIT-LICENSE +1 -1
  659. data/vendor/plugins/haml/README.md +357 -0
  660. data/vendor/plugins/haml/Rakefile +233 -26
  661. data/vendor/plugins/haml/TODO +47 -0
  662. data/vendor/plugins/haml/VERSION +1 -1
  663. data/vendor/plugins/haml/VERSION_NAME +1 -0
  664. data/vendor/plugins/haml/doc-src/FAQ.md +175 -0
  665. data/vendor/plugins/haml/doc-src/HAML_CHANGELOG.md +479 -0
  666. data/vendor/plugins/haml/doc-src/HAML_REFERENCE.md +1184 -0
  667. data/vendor/plugins/haml/doc-src/SASS_CHANGELOG.md +695 -0
  668. data/vendor/plugins/haml/doc-src/SASS_REFERENCE.md +1150 -0
  669. data/vendor/plugins/haml/extra/haml-mode.el +514 -97
  670. data/vendor/plugins/haml/extra/sass-mode.el +155 -38
  671. data/vendor/plugins/haml/extra/update_watch.rb +13 -0
  672. data/vendor/plugins/haml/haml.gemspec +51 -0
  673. data/vendor/plugins/haml/init.rb +11 -3
  674. data/vendor/plugins/haml/lib/haml.rb +15 -993
  675. data/vendor/plugins/haml/lib/haml/buffer.rb +147 -85
  676. data/vendor/plugins/haml/lib/haml/engine.rb +137 -103
  677. data/vendor/plugins/haml/lib/haml/error.rb +7 -7
  678. data/vendor/plugins/haml/lib/haml/exec.rb +141 -45
  679. data/vendor/plugins/haml/lib/haml/filters.rb +108 -43
  680. data/vendor/plugins/haml/lib/haml/helpers.rb +267 -168
  681. data/vendor/plugins/haml/lib/haml/helpers/action_view_extensions.rb +48 -38
  682. data/vendor/plugins/haml/lib/haml/helpers/action_view_mods.rb +135 -138
  683. data/vendor/plugins/haml/lib/haml/helpers/xss_mods.rb +125 -0
  684. data/vendor/plugins/haml/lib/haml/html.rb +146 -100
  685. data/vendor/plugins/haml/lib/haml/precompiler.rb +528 -277
  686. data/vendor/plugins/haml/lib/haml/shared.rb +78 -0
  687. data/vendor/plugins/haml/lib/haml/template.rb +49 -15
  688. data/vendor/plugins/haml/lib/haml/template/patch.rb +2 -2
  689. data/vendor/plugins/haml/lib/haml/template/plugin.rb +9 -6
  690. data/vendor/plugins/haml/lib/haml/util.rb +299 -6
  691. data/vendor/plugins/haml/lib/haml/version.rb +30 -13
  692. data/vendor/plugins/haml/lib/sass.rb +7 -856
  693. data/vendor/plugins/haml/lib/sass/css.rb +171 -161
  694. data/vendor/plugins/haml/lib/sass/engine.rb +365 -316
  695. data/vendor/plugins/haml/lib/sass/environment.rb +79 -0
  696. data/vendor/plugins/haml/lib/sass/error.rb +33 -11
  697. data/vendor/plugins/haml/lib/sass/files.rb +147 -0
  698. data/vendor/plugins/haml/lib/sass/plugin.rb +177 -123
  699. data/vendor/plugins/haml/lib/sass/plugin/merb.rb +9 -16
  700. data/vendor/plugins/haml/lib/sass/plugin/rack.rb +65 -0
  701. data/vendor/plugins/haml/lib/sass/plugin/rails.rb +15 -15
  702. data/vendor/plugins/haml/lib/sass/repl.rb +58 -0
  703. data/vendor/plugins/haml/lib/sass/script.rb +62 -0
  704. data/vendor/plugins/haml/lib/sass/script/bool.rb +17 -0
  705. data/vendor/plugins/haml/lib/sass/script/color.rb +222 -0
  706. data/vendor/plugins/haml/lib/sass/script/funcall.rb +50 -0
  707. data/vendor/plugins/haml/lib/sass/script/functions.rb +257 -0
  708. data/vendor/plugins/haml/lib/sass/script/lexer.rb +194 -0
  709. data/vendor/plugins/haml/lib/sass/script/literal.rb +177 -0
  710. data/vendor/plugins/haml/lib/sass/script/node.rb +14 -0
  711. data/vendor/plugins/haml/lib/sass/script/number.rb +383 -0
  712. data/vendor/plugins/haml/lib/sass/script/operation.rb +45 -0
  713. data/vendor/plugins/haml/lib/sass/script/parser.rb +222 -0
  714. data/vendor/plugins/haml/lib/sass/script/string.rb +12 -0
  715. data/vendor/plugins/haml/lib/sass/script/unary_operation.rb +34 -0
  716. data/vendor/plugins/haml/lib/sass/script/variable.rb +31 -0
  717. data/vendor/plugins/haml/lib/sass/tree/comment_node.rb +74 -10
  718. data/vendor/plugins/haml/lib/sass/tree/debug_node.rb +30 -0
  719. data/vendor/plugins/haml/lib/sass/tree/directive_node.rb +39 -17
  720. data/vendor/plugins/haml/lib/sass/tree/for_node.rb +48 -0
  721. data/vendor/plugins/haml/lib/sass/tree/if_node.rb +54 -0
  722. data/vendor/plugins/haml/lib/sass/tree/import_node.rb +65 -0
  723. data/vendor/plugins/haml/lib/sass/tree/mixin_def_node.rb +29 -0
  724. data/vendor/plugins/haml/lib/sass/tree/mixin_node.rb +48 -0
  725. data/vendor/plugins/haml/lib/sass/tree/node.rb +216 -11
  726. data/vendor/plugins/haml/lib/sass/tree/prop_node.rb +121 -0
  727. data/vendor/plugins/haml/lib/sass/tree/rule_node.rb +182 -51
  728. data/vendor/plugins/haml/lib/sass/tree/variable_node.rb +34 -0
  729. data/vendor/plugins/haml/lib/sass/tree/while_node.rb +31 -0
  730. data/vendor/plugins/haml/test/haml/engine_test.rb +659 -44
  731. data/vendor/plugins/haml/test/haml/helper_test.rb +60 -2
  732. data/vendor/plugins/haml/test/haml/html2haml_test.rb +60 -0
  733. data/vendor/plugins/haml/test/haml/results/content_for_layout.xhtml +0 -3
  734. data/vendor/plugins/haml/test/haml/results/filters.xhtml +2 -0
  735. data/vendor/plugins/haml/test/haml/results/just_stuff.xhtml +3 -3
  736. data/vendor/plugins/haml/test/haml/results/list.xhtml +1 -1
  737. data/vendor/plugins/haml/test/haml/results/standard.xhtml +120 -0
  738. data/vendor/plugins/haml/test/haml/rhtml/standard.rhtml +2 -2
  739. data/vendor/plugins/haml/test/haml/template_test.rb +117 -11
  740. data/vendor/plugins/haml/test/haml/templates/content_for_layout.haml +0 -2
  741. data/vendor/plugins/haml/test/haml/templates/list.haml +1 -1
  742. data/vendor/plugins/haml/test/haml/templates/standard.haml +2 -2
  743. data/vendor/plugins/haml/test/haml/templates/standard_ugly.haml +2 -2
  744. data/vendor/plugins/haml/test/haml/util_test.rb +107 -0
  745. data/vendor/plugins/haml/test/linked_rails.rb +11 -2
  746. data/vendor/plugins/haml/test/sass/css2sass_test.rb +83 -24
  747. data/vendor/plugins/haml/test/sass/engine_test.rb +743 -67
  748. data/vendor/plugins/haml/test/sass/functions_test.rb +174 -0
  749. data/vendor/plugins/haml/test/sass/more_results/more1.css +9 -0
  750. data/vendor/plugins/haml/test/sass/more_results/more1_with_line_comments.css +26 -0
  751. data/vendor/plugins/haml/test/sass/more_results/more_import.css +29 -0
  752. data/vendor/plugins/haml/test/sass/more_templates/_more_partial.sass +2 -0
  753. data/vendor/plugins/haml/test/sass/more_templates/more1.sass +23 -0
  754. data/vendor/plugins/haml/test/sass/more_templates/more_import.sass +11 -0
  755. data/vendor/plugins/haml/test/sass/plugin_test.rb +130 -48
  756. data/vendor/plugins/haml/test/sass/results/line_numbers.css +49 -0
  757. data/vendor/plugins/haml/test/sass/results/script.css +16 -0
  758. data/vendor/plugins/haml/test/sass/results/subdir/subdir.css +2 -0
  759. data/vendor/plugins/haml/test/sass/results/units.css +11 -0
  760. data/vendor/plugins/haml/test/sass/script_test.rb +267 -0
  761. data/vendor/plugins/haml/test/sass/templates/complex.sass +0 -3
  762. data/vendor/plugins/haml/test/sass/templates/import.sass +2 -2
  763. data/vendor/plugins/haml/test/sass/templates/importee.sass +7 -2
  764. data/vendor/plugins/haml/test/sass/templates/line_numbers.sass +13 -0
  765. data/vendor/plugins/haml/test/sass/templates/script.sass +101 -0
  766. data/vendor/plugins/haml/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +2 -0
  767. data/vendor/plugins/haml/test/sass/templates/subdir/subdir.sass +2 -2
  768. data/vendor/plugins/haml/test/sass/templates/units.sass +11 -0
  769. data/vendor/plugins/haml/test/test_helper.rb +26 -4
  770. data/vendor/plugins/haml/yard/default/fulldoc/html/css/common.sass +22 -0
  771. data/vendor/plugins/haml/yard/default/layout/html/footer.erb +12 -0
  772. data/vendor/plugins/haml/yard/inherited_hash.rb +41 -0
  773. data/vendor/radius/CHANGELOG +8 -0
  774. data/vendor/radius/Manifest.txt +21 -0
  775. data/vendor/radius/{QUICKSTART → QUICKSTART.rdoc} +11 -12
  776. data/vendor/radius/{README → README.rdoc} +38 -17
  777. data/vendor/radius/Rakefile +31 -86
  778. data/vendor/radius/lib/radius.rb +10 -502
  779. data/vendor/radius/lib/radius/context.rb +139 -0
  780. data/vendor/radius/lib/radius/delegating_open_struct.rb +31 -0
  781. data/vendor/radius/lib/radius/error.rb +43 -0
  782. data/vendor/radius/lib/radius/parse_tag.rb +24 -0
  783. data/vendor/radius/lib/radius/parser.rb +65 -0
  784. data/vendor/radius/lib/radius/parser/scan.rb +1247 -0
  785. data/vendor/radius/lib/radius/parser/scan.rl +123 -0
  786. data/vendor/radius/lib/radius/tag_binding.rb +71 -0
  787. data/vendor/radius/lib/radius/tag_definitions.rb +78 -0
  788. data/vendor/radius/lib/radius/utility.rb +30 -0
  789. data/vendor/radius/lib/radius/version.rb +14 -0
  790. data/vendor/radius/radius.gemspec +38 -0
  791. data/vendor/radius/tasks/scan.rake +27 -0
  792. data/vendor/radius/test/context_test.rb +61 -0
  793. data/vendor/radius/test/{radius_test.rb → parser_test.rb} +45 -82
  794. data/vendor/radius/test/quickstart_test.rb +153 -0
  795. data/vendor/radius/test/test_helper.rb +28 -0
  796. data/vendor/rails/Rakefile +81 -0
  797. data/vendor/rails/actionmailer/CHANGELOG +4 -0
  798. data/vendor/rails/actionmailer/Rakefile +1 -1
  799. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/parser.rb +2 -0
  800. data/vendor/rails/actionmailer/lib/action_mailer/version.rb +1 -1
  801. data/vendor/rails/actionmailer/lib/actionmailer.rb +1 -0
  802. data/vendor/rails/actionmailer/test/fixtures/helpers/example_helper.rb +1 -1
  803. data/vendor/rails/actionmailer/test/mail_service_test.rb +3 -1
  804. data/vendor/rails/actionpack/CHANGELOG +12 -0
  805. data/vendor/rails/actionpack/Rakefile +1 -1
  806. data/vendor/rails/actionpack/lib/action_controller.rb +3 -1
  807. data/vendor/rails/actionpack/lib/action_controller/assertions/dom_assertions.rb +19 -3
  808. data/vendor/rails/actionpack/lib/action_controller/assertions/selector_assertions.rb +16 -10
  809. data/vendor/rails/actionpack/lib/action_controller/base.rb +1 -1
  810. data/vendor/rails/actionpack/lib/action_controller/caching.rb +1 -0
  811. data/vendor/rails/actionpack/lib/action_controller/cookies.rb +2 -1
  812. data/vendor/rails/actionpack/lib/action_controller/http_authentication.rb +3 -2
  813. data/vendor/rails/actionpack/lib/action_controller/integration.rb +15 -3
  814. data/vendor/rails/actionpack/lib/action_controller/layout.rb +6 -1
  815. data/vendor/rails/actionpack/lib/action_controller/middlewares.rb +2 -0
  816. data/vendor/rails/actionpack/lib/action_controller/polymorphic_routes.rb +6 -21
  817. data/vendor/rails/actionpack/lib/action_controller/rack_lint_patch.rb +36 -0
  818. data/vendor/rails/actionpack/lib/action_controller/request_forgery_protection.rb +6 -2
  819. data/vendor/rails/actionpack/lib/action_controller/response.rb +2 -1
  820. data/vendor/rails/actionpack/lib/action_controller/string_coercion.rb +29 -0
  821. data/vendor/rails/actionpack/lib/action_controller/test_case.rb +6 -1
  822. data/vendor/rails/actionpack/lib/action_controller/test_process.rb +1 -1
  823. data/vendor/rails/actionpack/lib/action_controller/translation.rb +2 -2
  824. data/vendor/rails/actionpack/lib/action_controller/uploaded_file.rb +2 -2
  825. data/vendor/rails/actionpack/lib/action_controller/vendor/html-scanner/html/node.rb +1 -1
  826. data/vendor/rails/actionpack/lib/action_pack/version.rb +1 -1
  827. data/vendor/rails/actionpack/lib/action_view.rb +3 -3
  828. data/vendor/rails/actionpack/lib/action_view/base.rb +6 -1
  829. data/vendor/rails/actionpack/lib/action_view/erb/util.rb +6 -0
  830. data/vendor/rails/actionpack/lib/action_view/helpers.rb +2 -0
  831. data/vendor/rails/actionpack/lib/action_view/helpers/active_record_helper.rb +3 -3
  832. data/vendor/rails/actionpack/lib/action_view/helpers/asset_tag_helper.rb +2 -2
  833. data/vendor/rails/actionpack/lib/action_view/helpers/capture_helper.rb +2 -2
  834. data/vendor/rails/actionpack/lib/action_view/helpers/date_helper.rb +27 -15
  835. data/vendor/rails/actionpack/lib/action_view/helpers/form_helper.rb +32 -11
  836. data/vendor/rails/actionpack/lib/action_view/helpers/form_options_helper.rb +1 -1
  837. data/vendor/rails/actionpack/lib/action_view/helpers/form_tag_helper.rb +3 -3
  838. data/vendor/rails/actionpack/lib/action_view/helpers/number_helper.rb +6 -1
  839. data/vendor/rails/actionpack/lib/action_view/helpers/prototype_helper.rb +1 -1
  840. data/vendor/rails/actionpack/lib/action_view/helpers/raw_output_helper.rb +9 -0
  841. data/vendor/rails/actionpack/lib/action_view/helpers/sanitize_helper.rb +10 -2
  842. data/vendor/rails/actionpack/lib/action_view/helpers/tag_helper.rb +4 -4
  843. data/vendor/rails/actionpack/lib/action_view/helpers/translation_helper.rb +1 -1
  844. data/vendor/rails/actionpack/lib/action_view/helpers/url_helper.rb +3 -3
  845. data/vendor/rails/actionpack/lib/action_view/locale/en.yml +3 -0
  846. data/vendor/rails/actionpack/lib/action_view/partials.rb +1 -1
  847. data/vendor/rails/actionpack/lib/action_view/safe_buffer.rb +28 -0
  848. data/vendor/rails/actionpack/lib/action_view/template.rb +8 -2
  849. data/vendor/rails/actionpack/lib/action_view/test_case.rb +102 -27
  850. data/vendor/rails/actionpack/lib/actionpack.rb +1 -0
  851. data/vendor/rails/actionpack/test/controller/cookie_test.rb +7 -0
  852. data/vendor/rails/actionpack/test/controller/dom_assertions_test.rb +53 -0
  853. data/vendor/rails/actionpack/test/controller/filter_params_test.rb +1 -0
  854. data/vendor/rails/actionpack/test/controller/html-scanner/sanitizer_test.rb +1 -0
  855. data/vendor/rails/actionpack/test/controller/http_digest_authentication_test.rb +22 -0
  856. data/vendor/rails/actionpack/test/controller/integration_test.rb +38 -0
  857. data/vendor/rails/actionpack/test/controller/layout_test.rb +11 -0
  858. data/vendor/rails/actionpack/test/controller/polymorphic_routes_test.rb +4 -0
  859. data/vendor/rails/actionpack/test/controller/request_forgery_protection_test.rb +19 -1
  860. data/vendor/rails/actionpack/test/controller/routing_test.rb +23 -15
  861. data/vendor/rails/actionpack/test/controller/session/test_session_test.rb +2 -2
  862. data/vendor/rails/actionpack/test/fixtures/layout_tests/abs_path_layout.rhtml +1 -0
  863. data/vendor/rails/actionpack/test/fixtures/test/_from_helper.erb +1 -0
  864. data/vendor/rails/actionpack/test/template/active_record_helper_test.rb +1 -1
  865. data/vendor/rails/actionpack/test/template/asset_tag_helper_test.rb +12 -0
  866. data/vendor/rails/actionpack/test/template/benchmark_helper_test.rb +6 -6
  867. data/vendor/rails/actionpack/test/template/compiled_templates_test.rb +2 -1
  868. data/vendor/rails/actionpack/test/template/date_helper_i18n_test.rb +10 -9
  869. data/vendor/rails/actionpack/test/template/date_helper_test.rb +29 -13
  870. data/vendor/rails/actionpack/test/template/form_helper_test.rb +90 -10
  871. data/vendor/rails/actionpack/test/template/number_helper_test.rb +4 -0
  872. data/vendor/rails/actionpack/test/template/raw_output_helper_test.rb +21 -0
  873. data/vendor/rails/actionpack/test/template/sanitize_helper_test.rb +10 -1
  874. data/vendor/rails/actionpack/test/template/tag_helper_test.rb +1 -0
  875. data/vendor/rails/actionpack/test/view/safe_buffer_test.rb +36 -0
  876. data/vendor/rails/actionpack/test/view/test_case_test.rb +173 -5
  877. data/vendor/rails/activemodel/CHANGES +12 -0
  878. data/vendor/rails/activemodel/README +21 -0
  879. data/vendor/rails/activemodel/Rakefile +24 -0
  880. data/vendor/rails/activemodel/lib/active_model.rb +5 -0
  881. data/vendor/rails/activemodel/lib/active_model/base.rb +8 -0
  882. data/vendor/rails/activemodel/lib/active_model/callbacks.rb +7 -0
  883. data/vendor/rails/activemodel/lib/active_model/core.rb +7 -0
  884. data/vendor/rails/activemodel/lib/active_model/deprecated_error_methods.rb +38 -0
  885. data/vendor/rails/activemodel/lib/active_model/errors.rb +82 -0
  886. data/vendor/rails/activemodel/lib/active_model/observing.rb +98 -0
  887. data/vendor/rails/activemodel/lib/active_model/state_machine.rb +68 -0
  888. data/vendor/rails/activemodel/lib/active_model/state_machine/event.rb +64 -0
  889. data/vendor/rails/activemodel/lib/active_model/state_machine/machine.rb +78 -0
  890. data/vendor/rails/activemodel/lib/active_model/state_machine/state.rb +47 -0
  891. data/vendor/rails/activemodel/lib/active_model/state_machine/state_transition.rb +40 -0
  892. data/vendor/rails/activemodel/lib/active_model/validations.rb +126 -0
  893. data/vendor/rails/activemodel/lib/active_model/validations/acceptance.rb +45 -0
  894. data/vendor/rails/activemodel/lib/active_model/validations/associated.rb +46 -0
  895. data/vendor/rails/activemodel/lib/active_model/validations/confirmation.rb +44 -0
  896. data/vendor/rails/activemodel/lib/active_model/validations/exclusion.rb +37 -0
  897. data/vendor/rails/activemodel/lib/active_model/validations/format.rb +39 -0
  898. data/vendor/rails/activemodel/lib/active_model/validations/inclusion.rb +37 -0
  899. data/vendor/rails/activemodel/lib/active_model/validations/length.rb +95 -0
  900. data/vendor/rails/activemodel/lib/active_model/validations/numericality.rb +80 -0
  901. data/vendor/rails/activemodel/lib/active_model/validations/presence.rb +42 -0
  902. data/vendor/rails/activemodel/lib/active_model/validations/uniqueness.rb +104 -0
  903. data/vendor/rails/activemodel/test/observing_test.rb +121 -0
  904. data/vendor/rails/activemodel/test/state_machine/event_test.rb +49 -0
  905. data/vendor/rails/activemodel/test/state_machine/machine_test.rb +43 -0
  906. data/vendor/rails/activemodel/test/state_machine/state_test.rb +72 -0
  907. data/vendor/rails/activemodel/test/state_machine/state_transition_test.rb +84 -0
  908. data/vendor/rails/activemodel/test/state_machine_test.rb +312 -0
  909. data/vendor/rails/activemodel/test/test_helper.rb +21 -0
  910. data/vendor/rails/activerecord/CHANGELOG +8 -0
  911. data/vendor/rails/activerecord/MIT-LICENSE +20 -0
  912. data/vendor/rails/activerecord/Rakefile +1 -1
  913. data/vendor/rails/activerecord/lib/active_record/associations.rb +10 -7
  914. data/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb +7 -8
  915. data/vendor/rails/activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb +2 -2
  916. data/vendor/rails/activerecord/lib/active_record/associations/has_one_association.rb +9 -0
  917. data/vendor/rails/activerecord/lib/active_record/autosave_association.rb +32 -23
  918. data/vendor/rails/activerecord/lib/active_record/base.rb +7 -0
  919. data/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb +6 -2
  920. data/vendor/rails/activerecord/lib/active_record/fixtures.rb +1 -1
  921. data/vendor/rails/activerecord/lib/active_record/locking/optimistic.rb +0 -33
  922. data/vendor/rails/activerecord/lib/active_record/locking/pessimistic.rb +0 -22
  923. data/vendor/rails/activerecord/lib/active_record/nested_attributes.rb +101 -38
  924. data/vendor/rails/activerecord/lib/active_record/validations.rb +35 -35
  925. data/vendor/rails/activerecord/lib/active_record/version.rb +1 -1
  926. data/vendor/rails/activerecord/lib/activerecord.rb +1 -0
  927. data/vendor/rails/activerecord/test/cases/associations/has_many_associations_test.rb +12 -0
  928. data/vendor/rails/activerecord/test/cases/associations/has_many_through_associations_test.rb +22 -0
  929. data/vendor/rails/activerecord/test/cases/associations/has_one_associations_test.rb +21 -0
  930. data/vendor/rails/activerecord/test/cases/autosave_association_test.rb +230 -11
  931. data/vendor/rails/activerecord/test/cases/base_test.rb +2 -0
  932. data/vendor/rails/activerecord/test/cases/connection_test_mysql.rb +8 -0
  933. data/vendor/rails/activerecord/test/cases/fixtures_test.rb +2 -2
  934. data/vendor/rails/activerecord/test/cases/locking_test.rb +0 -18
  935. data/vendor/rails/activerecord/test/cases/nested_attributes_test.rb +109 -37
  936. data/vendor/rails/activerecord/test/cases/reflection_test.rb +3 -3
  937. data/vendor/rails/activerecord/test/cases/validations_i18n_test.rb +8 -0
  938. data/vendor/rails/activerecord/test/cases/validations_test.rb +37 -9
  939. data/vendor/rails/activerecord/test/fixtures/accounts.yml +1 -0
  940. data/vendor/rails/activerecord/test/models/company.rb +10 -0
  941. data/vendor/rails/activerecord/test/models/pirate.rb +9 -2
  942. data/vendor/rails/activerecord/test/models/treasure.rb +2 -0
  943. data/vendor/rails/activerecord/test/schema/mysql_specific_schema.rb +12 -0
  944. data/vendor/rails/activerecord/test/schema/schema.rb +1 -0
  945. data/vendor/rails/activeresource/CHANGELOG +9 -0
  946. data/vendor/rails/activeresource/MIT-LICENSE +20 -0
  947. data/vendor/rails/activeresource/Rakefile +1 -1
  948. data/vendor/rails/activeresource/lib/active_resource/validations.rb +2 -2
  949. data/vendor/rails/activeresource/lib/active_resource/version.rb +1 -1
  950. data/vendor/rails/activeresource/lib/activeresource.rb +1 -0
  951. data/vendor/rails/activeresource/test/base_errors_test.rb +2 -2
  952. data/vendor/rails/activesupport/CHANGELOG +8 -0
  953. data/vendor/rails/activesupport/MIT-LICENSE +20 -0
  954. data/vendor/rails/activesupport/Rakefile +175 -0
  955. data/vendor/rails/activesupport/bin/generate_tables +147 -0
  956. data/vendor/rails/activesupport/install.rb +30 -0
  957. data/vendor/rails/activesupport/lib/active_support/cache.rb +7 -0
  958. data/vendor/rails/activesupport/lib/active_support/cache/mem_cache_store.rb +5 -0
  959. data/vendor/rails/activesupport/lib/active_support/cache/strategy/local_cache.rb +5 -5
  960. data/vendor/rails/activesupport/lib/active_support/core_ext.rb +7 -3
  961. data/vendor/rails/activesupport/lib/active_support/core_ext/blank.rb +2 -58
  962. data/vendor/rails/activesupport/lib/active_support/core_ext/kernel/debugger.rb +1 -0
  963. data/vendor/rails/activesupport/lib/active_support/core_ext/name_error.rb +3 -1
  964. data/vendor/rails/activesupport/lib/active_support/core_ext/object.rb +1 -0
  965. data/vendor/rails/activesupport/lib/active_support/core_ext/object/blank.rb +58 -0
  966. data/vendor/rails/activesupport/lib/active_support/core_ext/string.rb +2 -0
  967. data/vendor/rails/activesupport/lib/active_support/core_ext/string/output_safety.rb +48 -0
  968. data/vendor/rails/activesupport/lib/active_support/core_ext/time/calculations.rb +2 -1
  969. data/vendor/rails/activesupport/lib/active_support/deprecation.rb +1 -1
  970. data/vendor/rails/activesupport/lib/active_support/json/backends/jsongem.rb +2 -3
  971. data/vendor/rails/activesupport/lib/active_support/json/backends/yaml.rb +1 -5
  972. data/vendor/rails/activesupport/lib/active_support/json/decoding.rb +2 -0
  973. data/vendor/rails/activesupport/lib/active_support/message_verifier.rb +30 -10
  974. data/vendor/rails/activesupport/lib/active_support/multibyte/chars.rb +1 -1
  975. data/vendor/rails/activesupport/lib/active_support/multibyte/utils.rb +4 -4
  976. data/vendor/rails/activesupport/lib/active_support/ordered_hash.rb +7 -0
  977. data/vendor/rails/activesupport/lib/active_support/vendor.rb +2 -2
  978. data/vendor/rails/activesupport/lib/active_support/version.rb +1 -1
  979. data/vendor/rails/activesupport/lib/active_support/whiny_nil.rb +8 -2
  980. data/vendor/rails/activesupport/lib/active_support/xml_mini/nokogiri.rb +13 -21
  981. data/vendor/rails/activesupport/lib/activesupport.rb +1 -0
  982. data/vendor/rails/activesupport/test/abstract_unit.rb +36 -0
  983. data/vendor/rails/activesupport/test/autoloading_fixtures/a/b.rb +2 -0
  984. data/vendor/rails/activesupport/test/autoloading_fixtures/a/c/d.rb +2 -0
  985. data/vendor/rails/activesupport/test/autoloading_fixtures/a/c/e/f.rb +2 -0
  986. data/vendor/rails/activesupport/test/autoloading_fixtures/application.rb +1 -0
  987. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder.rb +3 -0
  988. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/class_folder_subclass.rb +3 -0
  989. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/inline_class.rb +2 -0
  990. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/nested_class.rb +7 -0
  991. data/vendor/rails/activesupport/test/autoloading_fixtures/conflict.rb +1 -0
  992. data/vendor/rails/activesupport/test/autoloading_fixtures/counting_loader.rb +5 -0
  993. data/vendor/rails/activesupport/test/autoloading_fixtures/cross_site_dependency.rb +2 -0
  994. data/vendor/rails/activesupport/test/autoloading_fixtures/e.rb +2 -0
  995. data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/inline_class.rb +2 -0
  996. data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/nested_class.rb +4 -0
  997. data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/nested_sibling.rb +2 -0
  998. data/vendor/rails/activesupport/test/autoloading_fixtures/module_with_custom_const_missing/a/b.rb +1 -0
  999. data/vendor/rails/activesupport/test/autoloading_fixtures/multiple_constant_file.rb +2 -0
  1000. data/vendor/rails/activesupport/test/autoloading_fixtures/raises_name_error.rb +3 -0
  1001. data/vendor/rails/activesupport/test/autoloading_fixtures/raises_no_method_error.rb +3 -0
  1002. data/vendor/rails/activesupport/test/buffered_logger_test.rb +146 -0
  1003. data/vendor/rails/activesupport/test/caching_test.rb +348 -0
  1004. data/vendor/rails/activesupport/test/callbacks_test.rb +188 -0
  1005. data/vendor/rails/activesupport/test/clean_backtrace_test.rb +47 -0
  1006. data/vendor/rails/activesupport/test/clean_logger_test.rb +57 -0
  1007. data/vendor/rails/activesupport/test/core_ext/array_ext_test.rb +363 -0
  1008. data/vendor/rails/activesupport/test/core_ext/base64_ext_test.rb +8 -0
  1009. data/vendor/rails/activesupport/test/core_ext/bigdecimal.rb +10 -0
  1010. data/vendor/rails/activesupport/test/core_ext/blank_test.rb +24 -0
  1011. data/vendor/rails/activesupport/test/core_ext/cgi_ext_test.rb +14 -0
  1012. data/vendor/rails/activesupport/test/core_ext/class/attribute_accessor_test.rb +31 -0
  1013. data/vendor/rails/activesupport/test/core_ext/class/class_inheritable_attributes_test.rb +224 -0
  1014. data/vendor/rails/activesupport/test/core_ext/class/delegating_attributes_test.rb +115 -0
  1015. data/vendor/rails/activesupport/test/core_ext/class_test.rb +46 -0
  1016. data/vendor/rails/activesupport/test/core_ext/date_ext_test.rb +278 -0
  1017. data/vendor/rails/activesupport/test/core_ext/date_time_ext_test.rb +359 -0
  1018. data/vendor/rails/activesupport/test/core_ext/duplicable_test.rb +22 -0
  1019. data/vendor/rails/activesupport/test/core_ext/duration_test.rb +121 -0
  1020. data/vendor/rails/activesupport/test/core_ext/enumerable_test.rb +97 -0
  1021. data/vendor/rails/activesupport/test/core_ext/exception_test.rb +68 -0
  1022. data/vendor/rails/activesupport/test/core_ext/file_test.rb +67 -0
  1023. data/vendor/rails/activesupport/test/core_ext/float_ext_test.rb +25 -0
  1024. data/vendor/rails/activesupport/test/core_ext/hash_ext_test.rb +1014 -0
  1025. data/vendor/rails/activesupport/test/core_ext/integer_ext_test.rb +37 -0
  1026. data/vendor/rails/activesupport/test/core_ext/kernel_test.rb +43 -0
  1027. data/vendor/rails/activesupport/test/core_ext/load_error_test.rb +16 -0
  1028. data/vendor/rails/activesupport/test/core_ext/module/attr_accessor_with_default_test.rb +30 -0
  1029. data/vendor/rails/activesupport/test/core_ext/module/attr_internal_test.rb +52 -0
  1030. data/vendor/rails/activesupport/test/core_ext/module/attribute_accessor_test.rb +33 -0
  1031. data/vendor/rails/activesupport/test/core_ext/module/attribute_aliasing_test.rb +58 -0
  1032. data/vendor/rails/activesupport/test/core_ext/module/model_naming_test.rb +27 -0
  1033. data/vendor/rails/activesupport/test/core_ext/module/synchronization_test.rb +85 -0
  1034. data/vendor/rails/activesupport/test/core_ext/module_test.rb +363 -0
  1035. data/vendor/rails/activesupport/test/core_ext/name_error_test.rb +20 -0
  1036. data/vendor/rails/activesupport/test/core_ext/numeric_ext_test.rb +162 -0
  1037. data/vendor/rails/activesupport/test/core_ext/object_and_class_ext_test.rb +282 -0
  1038. data/vendor/rails/activesupport/test/core_ext/object_ext_test.rb +8 -0
  1039. data/vendor/rails/activesupport/test/core_ext/pathname_test.rb +9 -0
  1040. data/vendor/rails/activesupport/test/core_ext/proc_test.rb +11 -0
  1041. data/vendor/rails/activesupport/test/core_ext/range_ext_test.rb +63 -0
  1042. data/vendor/rails/activesupport/test/core_ext/string_ext_test.rb +369 -0
  1043. data/vendor/rails/activesupport/test/core_ext/symbol_test.rb +9 -0
  1044. data/vendor/rails/activesupport/test/core_ext/time_ext_test.rb +744 -0
  1045. data/vendor/rails/activesupport/test/core_ext/time_with_zone_test.rb +845 -0
  1046. data/vendor/rails/activesupport/test/core_ext/uri_ext_test.rb +12 -0
  1047. data/vendor/rails/activesupport/test/dependencies/check_warnings.rb +2 -0
  1048. data/vendor/rails/activesupport/test/dependencies/conflict.rb +1 -0
  1049. data/vendor/rails/activesupport/test/dependencies/cross_site_depender.rb +3 -0
  1050. data/vendor/rails/activesupport/test/dependencies/mutual_one.rb +4 -0
  1051. data/vendor/rails/activesupport/test/dependencies/mutual_two.rb +4 -0
  1052. data/vendor/rails/activesupport/test/dependencies/raises_exception.rb +3 -0
  1053. data/vendor/rails/activesupport/test/dependencies/requires_nonexistent0.rb +1 -0
  1054. data/vendor/rails/activesupport/test/dependencies/requires_nonexistent1.rb +1 -0
  1055. data/vendor/rails/activesupport/test/dependencies/service_one.rb +5 -0
  1056. data/vendor/rails/activesupport/test/dependencies/service_two.rb +2 -0
  1057. data/vendor/rails/activesupport/test/dependencies_test.rb +782 -0
  1058. data/vendor/rails/activesupport/test/deprecation_test.rb +167 -0
  1059. data/vendor/rails/activesupport/test/flush_cache_on_private_memoization_test.rb +43 -0
  1060. data/vendor/rails/activesupport/test/gzip_test.rb +7 -0
  1061. data/vendor/rails/activesupport/test/i18n_test.rb +98 -0
  1062. data/vendor/rails/activesupport/test/inflector_test.rb +298 -0
  1063. data/vendor/rails/activesupport/test/inflector_test_cases.rb +252 -0
  1064. data/vendor/rails/activesupport/test/json/decoding_test.rb +73 -0
  1065. data/vendor/rails/activesupport/test/json/encoding_test.rb +160 -0
  1066. data/vendor/rails/activesupport/test/memoizable_test.rb +247 -0
  1067. data/vendor/rails/activesupport/test/message_encryptor_test.rb +46 -0
  1068. data/vendor/rails/activesupport/test/message_verifier_test.rb +31 -0
  1069. data/vendor/rails/activesupport/test/multibyte_chars_test.rb +606 -0
  1070. data/vendor/rails/activesupport/test/multibyte_conformance.rb +129 -0
  1071. data/vendor/rails/activesupport/test/multibyte_test_helpers.rb +19 -0
  1072. data/vendor/rails/activesupport/test/multibyte_unicode_database_test.rb +22 -0
  1073. data/vendor/rails/activesupport/test/multibyte_utils_test.rb +137 -0
  1074. data/vendor/rails/activesupport/test/option_merger_test.rb +85 -0
  1075. data/vendor/rails/activesupport/test/ordered_hash_test.rb +201 -0
  1076. data/vendor/rails/activesupport/test/ordered_options_test.rb +53 -0
  1077. data/vendor/rails/activesupport/test/rescuable_test.rb +75 -0
  1078. data/vendor/rails/activesupport/test/secure_random_test.rb +19 -0
  1079. data/vendor/rails/activesupport/test/string_inquirer_test.rb +15 -0
  1080. data/vendor/rails/activesupport/test/test_test.rb +148 -0
  1081. data/vendor/rails/activesupport/test/time_zone_test.rb +266 -0
  1082. data/vendor/rails/activesupport/test/whiny_nil_test.rb +50 -0
  1083. data/vendor/rails/activesupport/test/xml_mini/jdom_engine_test.rb +153 -0
  1084. data/vendor/rails/activesupport/test/xml_mini/nokogiri_engine_test.rb +168 -0
  1085. data/vendor/rails/activesupport/test/xml_mini/rexml_engine_test.rb +15 -0
  1086. data/vendor/rails/ci/ci_build.rb +119 -0
  1087. data/vendor/rails/ci/ci_setup_notes.txt +131 -0
  1088. data/vendor/rails/ci/cruise_config.rb +9 -0
  1089. data/vendor/rails/ci/geminstaller.yml +24 -0
  1090. data/vendor/rails/ci/site.css +13 -0
  1091. data/vendor/rails/ci/site_config.rb +72 -0
  1092. data/vendor/rails/doc/template/horo.rb +613 -0
  1093. data/vendor/rails/pushgems.rb +14 -0
  1094. data/vendor/rails/railties/CHANGELOG +6 -0
  1095. data/vendor/rails/railties/Rakefile +6 -6
  1096. data/vendor/rails/railties/lib/commands/plugin.rb +1 -1
  1097. data/vendor/rails/railties/lib/rails/rack/debugger.rb +2 -0
  1098. data/vendor/rails/railties/lib/rails/version.rb +1 -1
  1099. data/vendor/rails/railties/lib/rails_generator/options.rb +7 -7
  1100. data/vendor/rails/railties/lib/tasks/rails.rb +2 -1
  1101. data/vendor/rails/railties/test/abstract_unit.rb +27 -0
  1102. data/vendor/rails/railties/test/backtrace_cleaner_test.rb +61 -0
  1103. data/vendor/rails/railties/test/boot_test.rb +178 -0
  1104. data/vendor/rails/railties/test/console_app_test.rb +42 -0
  1105. data/vendor/rails/railties/test/fcgi_dispatcher_test.rb +266 -0
  1106. data/vendor/rails/railties/test/fixtures/about_yml_plugins/bad_about_yml/about.yml +1 -0
  1107. data/vendor/rails/railties/test/fixtures/about_yml_plugins/bad_about_yml/init.rb +1 -0
  1108. data/vendor/rails/railties/test/fixtures/about_yml_plugins/plugin_without_about_yml/init.rb +1 -0
  1109. data/vendor/rails/railties/test/fixtures/eager/zoo.rb +3 -0
  1110. data/vendor/rails/railties/test/fixtures/eager/zoo/reptile_house.rb +2 -0
  1111. data/vendor/rails/railties/test/fixtures/environment_with_constant.rb +1 -0
  1112. data/vendor/{extensions/markdown_filter/lib/tasks/textile_filter_extension_tasks.rake → rails/railties/test/fixtures/lib/generators/missing_class/missing_class_generator.rb} +0 -0
  1113. data/vendor/rails/railties/test/fixtures/lib/generators/working/working_generator.rb +2 -0
  1114. data/vendor/rails/railties/test/fixtures/metal/multiplemetals/app/metal/metal_a.rb +5 -0
  1115. data/vendor/rails/railties/test/fixtures/metal/multiplemetals/app/metal/metal_b.rb +5 -0
  1116. data/vendor/rails/railties/test/fixtures/metal/pluralmetal/app/metal/legacy_routes.rb +5 -0
  1117. data/vendor/rails/railties/test/fixtures/metal/singlemetal/app/metal/foo_metal.rb +5 -0
  1118. data/vendor/rails/railties/test/fixtures/metal/subfolders/app/metal/Folder/metal_a.rb +7 -0
  1119. data/vendor/rails/railties/test/fixtures/metal/subfolders/app/metal/Folder/metal_b.rb +7 -0
  1120. data/vendor/rails/railties/test/fixtures/plugins/alternate/a/generators/a_generator/a_generator.rb +4 -0
  1121. data/vendor/rails/railties/test/fixtures/plugins/default/gemlike/init.rb +1 -0
  1122. data/vendor/rails/railties/test/fixtures/plugins/default/gemlike/lib/gemlike.rb +2 -0
  1123. data/vendor/rails/railties/test/fixtures/plugins/default/gemlike/rails/init.rb +7 -0
  1124. data/vendor/rails/railties/test/fixtures/plugins/default/plugin_with_no_lib_dir/init.rb +0 -0
  1125. data/vendor/rails/railties/test/fixtures/plugins/default/stubby/about.yml +2 -0
  1126. data/vendor/rails/railties/test/fixtures/plugins/default/stubby/generators/stubby_generator/stubby_generator.rb +4 -0
  1127. data/vendor/rails/railties/test/fixtures/plugins/default/stubby/init.rb +7 -0
  1128. data/vendor/rails/railties/test/fixtures/plugins/default/stubby/lib/stubby_mixin.rb +2 -0
  1129. data/vendor/rails/railties/test/fixtures/plugins/engines/engine/app/controllers/engine_controller.rb +2 -0
  1130. data/vendor/rails/railties/test/fixtures/plugins/engines/engine/app/metal/engine_metal.rb +10 -0
  1131. data/vendor/rails/railties/test/fixtures/plugins/engines/engine/app/models/engine_model.rb +2 -0
  1132. data/vendor/rails/railties/test/fixtures/plugins/engines/engine/config/locales/en.yml +2 -0
  1133. data/vendor/rails/railties/test/fixtures/plugins/engines/engine/config/routes.rb +3 -0
  1134. data/vendor/rails/railties/test/fixtures/plugins/engines/engine/init.rb +3 -0
  1135. data/vendor/rails/railties/test/fixtures/public/foo/bar.html +1 -0
  1136. data/vendor/rails/railties/test/fixtures/public/foo/index.html +1 -0
  1137. data/vendor/rails/railties/test/fixtures/public/index.html +1 -0
  1138. data/vendor/rails/railties/test/gem_dependency_test.rb +219 -0
  1139. data/vendor/rails/railties/test/generator_lookup_test.rb +40 -0
  1140. data/vendor/rails/railties/test/generators/generator_test_helper.rb +310 -0
  1141. data/vendor/rails/railties/test/generators/rails_controller_generator_test.rb +44 -0
  1142. data/vendor/rails/railties/test/generators/rails_helper_generator_test.rb +36 -0
  1143. data/vendor/rails/railties/test/generators/rails_mailer_generator_test.rb +29 -0
  1144. data/vendor/rails/railties/test/generators/rails_model_generator_test.rb +96 -0
  1145. data/vendor/rails/railties/test/generators/rails_resource_generator_test.rb +29 -0
  1146. data/vendor/rails/railties/test/generators/rails_scaffold_generator_test.rb +151 -0
  1147. data/vendor/rails/railties/test/generators/rails_template_runner_test.rb +216 -0
  1148. data/vendor/rails/railties/test/initializer_test.rb +416 -0
  1149. data/vendor/rails/railties/test/metal_test.rb +72 -0
  1150. data/vendor/rails/railties/test/mocks/routes.rb +6 -0
  1151. data/vendor/rails/railties/test/plugin_loader_test.rb +172 -0
  1152. data/vendor/rails/railties/test/plugin_locator_test.rb +62 -0
  1153. data/vendor/rails/railties/test/plugin_test.rb +162 -0
  1154. data/vendor/rails/railties/test/plugin_test_helper.rb +29 -0
  1155. data/vendor/rails/railties/test/rack_static_test.rb +46 -0
  1156. data/vendor/rails/railties/test/rails_generator_test.rb +145 -0
  1157. data/vendor/rails/railties/test/rails_info_controller_test.rb +52 -0
  1158. data/vendor/rails/railties/test/rails_info_test.rb +99 -0
  1159. data/vendor/rails/railties/test/secret_key_generation_test.rb +38 -0
  1160. data/vendor/rails/railties/test/vendor/gems/dummy-gem-a-0.4.0/lib/dummy-gem-a.rb +1 -0
  1161. data/vendor/rails/railties/test/vendor/gems/dummy-gem-b-0.4.0/lib/dummy-gem-b.rb +1 -0
  1162. data/vendor/rails/railties/test/vendor/gems/dummy-gem-b-0.6.0/lib/dummy-gem-b.rb +1 -0
  1163. data/vendor/rails/railties/test/vendor/gems/dummy-gem-c-0.4.0/lib/dummy-gem-c.rb +1 -0
  1164. data/vendor/rails/railties/test/vendor/gems/dummy-gem-c-0.6.0/lib/dummy-gem-c.rb +1 -0
  1165. data/vendor/rails/railties/test/vendor/gems/dummy-gem-d-1.0.0/lib/dummy-gem-d.rb +1 -0
  1166. data/vendor/rails/railties/test/vendor/gems/dummy-gem-e-1.0.0/lib/dummy-gem-e.rb +1 -0
  1167. data/vendor/rails/railties/test/vendor/gems/dummy-gem-f-1.0.0/lib/dummy-gem-f.rb +1 -0
  1168. data/vendor/rails/railties/test/vendor/gems/dummy-gem-g-1.0.0/lib/dummy-gem-g.rb +1 -0
  1169. data/vendor/rails/railties/test/vendor/gems/dummy-gem-h-1.0.0/lib/dummy-gem-h.rb +1 -0
  1170. data/vendor/rails/railties/test/vendor/gems/dummy-gem-i-1.0.0/ext/dummy-gem-i/Makefile +0 -0
  1171. data/vendor/rails/railties/test/vendor/gems/dummy-gem-i-1.0.0/lib/dummy-gem-i.rb +1 -0
  1172. data/vendor/rails/railties/test/vendor/gems/dummy-gem-j-1.0.0/lib/dummy-gem-j.rb +1 -0
  1173. data/vendor/rails/railties/test/vendor/gems/dummy-gem-k-1.0.0/lib/dummy-gem-k.rb +1 -0
  1174. data/vendor/rails/release.rb +25 -0
  1175. metadata +814 -84
  1176. data/app/views/admin/pages/_edit_styles.html.haml +0 -15
  1177. data/app/views/admin/references/filters.js.erb +0 -5
  1178. data/app/views/admin/references/tags.js.erb +0 -5
  1179. data/features/step_definitions/webrat_steps.rb +0 -117
  1180. data/public/images/admin/add-child.png +0 -0
  1181. data/public/images/admin/clear-page-cache.png +0 -0
  1182. data/public/images/admin/remove-disabled.png +0 -0
  1183. data/public/images/admin/remove.png +0 -0
  1184. data/public/images/admin/view-site.gif +0 -0
  1185. data/public/images/admin/virtual-page.png +0 -0
  1186. data/public/javascripts/admin/admin.js +0 -149
  1187. data/public/javascripts/application.js +0 -2
  1188. data/public/javascripts/pngfix.js +0 -39
  1189. data/public/javascripts/string.js +0 -17
  1190. data/vendor/extensions/markdown_filter/vendor/bluecloth/CHANGES +0 -366
  1191. data/vendor/extensions/markdown_filter/vendor/bluecloth/LICENSE +0 -340
  1192. data/vendor/extensions/markdown_filter/vendor/bluecloth/README +0 -99
  1193. data/vendor/extensions/markdown_filter/vendor/bluecloth/bin/bluecloth +0 -83
  1194. data/vendor/extensions/markdown_filter/vendor/bluecloth/install.rb +0 -150
  1195. data/vendor/extensions/markdown_filter/vendor/bluecloth/lib/bluecloth.rb +0 -1144
  1196. data/vendor/extensions/markdown_filter/vendor/bluecloth/test.rb +0 -117
  1197. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/00_Class.tests.rb +0 -71
  1198. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/05_Markdown.tests.rb +0 -1527
  1199. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/10_Bug.tests.rb +0 -57
  1200. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/15_Contrib.tests.rb +0 -132
  1201. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/bctestcase.rb +0 -274
  1202. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/data/antsugar.txt +0 -34
  1203. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/data/ml-announce.txt +0 -17
  1204. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/data/re-overflow.txt +0 -67
  1205. data/vendor/extensions/markdown_filter/vendor/bluecloth/tests/data/re-overflow2.txt +0 -281
  1206. data/vendor/extensions/markdown_filter/vendor/bluecloth/utils.rb +0 -553
  1207. data/vendor/radius/ROADMAP +0 -12
  1208. data/vendor/rails/activerecord/test/fixtures/fixture_database.sqlite +0 -0
  1209. data/vendor/rails/activerecord/test/fixtures/fixture_database.sqlite3 +0 -0
  1210. data/vendor/rails/activerecord/test/fixtures/fixture_database_2.sqlite +0 -0
  1211. data/vendor/rails/activerecord/test/fixtures/fixture_database_2.sqlite3 +0 -0
  1212. data/vendor/rails/activeresource/test/debug.log +0 -7974
@@ -0,0 +1,139 @@
1
+ module Radius
2
+ #
3
+ # A context contains the tag definitions which are available for use in a template.
4
+ # See the QUICKSTART for a detailed explaination its
5
+ # usage.
6
+ #
7
+ class Context
8
+ # A hash of tag definition blocks that define tags accessible on a Context.
9
+ attr_accessor :definitions # :nodoc:
10
+ attr_accessor :globals # :nodoc:
11
+
12
+ # Creates a new Context object.
13
+ def initialize(&block)
14
+ @definitions = {}
15
+ @tag_binding_stack = []
16
+ @globals = DelegatingOpenStruct.new
17
+ with(&block) if block_given?
18
+ end
19
+
20
+ # Yeild an instance of self for tag definitions:
21
+ #
22
+ # context.with do |c|
23
+ # c.define_tag 'test' do
24
+ # 'test'
25
+ # end
26
+ # end
27
+ #
28
+ def with
29
+ yield self
30
+ self
31
+ end
32
+
33
+ # Creates a tag definition on a context. Several options are available to you
34
+ # when creating a tag:
35
+ #
36
+ # +for+:: Specifies an object that the tag is in reference to. This is
37
+ # applicable when a block is not passed to the tag, or when the
38
+ # +expose+ option is also used.
39
+ #
40
+ # +expose+:: Specifies that child tags should be set for each of the methods
41
+ # contained in this option. May be either a single symbol/string or
42
+ # an array of symbols/strings.
43
+ #
44
+ # +attributes+:: Specifies whether or not attributes should be exposed
45
+ # automatically. Useful for ActiveRecord objects. Boolean. Defaults
46
+ # to +true+.
47
+ #
48
+ def define_tag(name, options = {}, &block)
49
+ type = Utility.impartial_hash_delete(options, :type).to_s
50
+ klass = Utility.constantize('Radius::TagDefinitions::' + Utility.camelize(type) + 'TagFactory') rescue raise(ArgumentError.new("Undefined type `#{type}' in options hash"))
51
+ klass.new(self).define_tag(name, options, &block)
52
+ end
53
+
54
+ # Returns the value of a rendered tag. Used internally by Parser#parse.
55
+ def render_tag(name, attributes = {}, &block)
56
+ if name =~ /^(.+?):(.+)$/
57
+ render_tag($1) { render_tag($2, attributes, &block) }
58
+ else
59
+ tag_definition_block = @definitions[qualified_tag_name(name.to_s)]
60
+ if tag_definition_block
61
+ stack(name, attributes, block) do |tag|
62
+ tag_definition_block.call(tag).to_s
63
+ end
64
+ else
65
+ tag_missing(name, attributes, &block)
66
+ end
67
+ end
68
+ end
69
+
70
+ # Like method_missing for objects, but fired when a tag is undefined.
71
+ # Override in your own Context to change what happens when a tag is
72
+ # undefined. By default this method raises an UndefinedTagError.
73
+ def tag_missing(name, attributes, &block)
74
+ raise UndefinedTagError.new(name)
75
+ end
76
+
77
+ # Returns the state of the current render stack. Useful from inside
78
+ # a tag definition. Normally just use TagBinding#nesting.
79
+ def current_nesting
80
+ @tag_binding_stack.collect { |tag| tag.name }.join(':')
81
+ end
82
+
83
+ private
84
+
85
+ # A convienence method for managing the various parts of the
86
+ # tag binding stack.
87
+ def stack(name, attributes, block)
88
+ previous = @tag_binding_stack.last
89
+ previous_locals = previous.nil? ? @globals : previous.locals
90
+ locals = DelegatingOpenStruct.new(previous_locals)
91
+ binding = TagBinding.new(self, locals, name, attributes, block)
92
+ @tag_binding_stack.push(binding)
93
+ result = yield(binding)
94
+ @tag_binding_stack.pop
95
+ result
96
+ end
97
+
98
+ # Returns a fully qualified tag name based on state of the
99
+ # tag binding stack.
100
+ def qualified_tag_name(name)
101
+ nesting_parts = @tag_binding_stack.collect { |tag| tag.name }
102
+ nesting_parts << name unless nesting_parts.last == name
103
+ specific_name = nesting_parts.join(':') # specific_name always has the highest specificity
104
+ unless @definitions.has_key? specific_name
105
+ possible_matches = @definitions.keys.grep(/(^|:)#{name}$/)
106
+ specificity = possible_matches.inject({}) { |hash, tag| hash[numeric_specificity(tag, nesting_parts)] = tag; hash }
107
+ max = specificity.keys.max
108
+ if max != 0
109
+ specificity[max]
110
+ else
111
+ name
112
+ end
113
+ else
114
+ specific_name
115
+ end
116
+ end
117
+
118
+ # Returns the specificity for +tag_name+ at nesting defined
119
+ # by +nesting_parts+ as a number.
120
+ def numeric_specificity(tag_name, nesting_parts)
121
+ nesting_parts = nesting_parts.dup
122
+ name_parts = tag_name.split(':')
123
+ specificity = 0
124
+ value = 1
125
+ if nesting_parts.last == name_parts.last
126
+ while nesting_parts.size > 0
127
+ if nesting_parts.last == name_parts.last
128
+ specificity += value
129
+ name_parts.pop
130
+ end
131
+ nesting_parts.pop
132
+ value *= 0.1
133
+ end
134
+ specificity = 0 if (name_parts.size > 0)
135
+ end
136
+ specificity
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,31 @@
1
+ module Radius
2
+ class DelegatingOpenStruct # :nodoc:
3
+ attr_accessor :object
4
+
5
+ def initialize(object = nil)
6
+ @object = object
7
+ @hash = {}
8
+ end
9
+
10
+ def method_missing(method, *args, &block)
11
+ symbol = (method.to_s =~ /^(.*?)=$/) ? $1.intern : method
12
+ if (0..1).include?(args.size)
13
+ if args.size == 1
14
+ @hash[symbol] = args.first
15
+ else
16
+ if @hash.has_key?(symbol)
17
+ @hash[symbol]
18
+ else
19
+ unless object.nil?
20
+ @object.send(method, *args, &block)
21
+ else
22
+ nil
23
+ end
24
+ end
25
+ end
26
+ else
27
+ super
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,43 @@
1
+ module Radius
2
+ # Abstract base class for all parsing errors.
3
+ class ParseError < StandardError
4
+ end
5
+
6
+ # Occurs when the Parser expects an end tag for one tag and finds the end tag for another.
7
+ class WrongEndTagError < ParseError
8
+ def initialize(expected_tag, got_tag, stack)
9
+ stack_message = " with stack #{stack.inspect}" if stack
10
+ super("wrong end tag `#{got_tag}' found for start tag `#{expected_tag}'#{stack_message}")
11
+ end
12
+ end
13
+
14
+ # Occurs when Parser cannot find an end tag for a given tag in a template or when
15
+ # tags are miss-matched in a template.
16
+ class MissingEndTagError < ParseError
17
+ # Create a new MissingEndTagError object for +tag_name+.
18
+ def initialize(tag_name, stack)
19
+ stack_message = " with stack #{stack.inspect}" if stack
20
+ super("end tag not found for start tag `#{tag_name}'#{stack_message}")
21
+ end
22
+ end
23
+
24
+ # Occurs when Context#render_tag cannot find the specified tag on a Context.
25
+ class UndefinedTagError < ParseError
26
+ # Create a new UndefinedTagError object for +tag_name+.
27
+ def initialize(tag_name)
28
+ super("undefined tag `#{tag_name}'")
29
+ end
30
+ end
31
+
32
+ class TastelessTagError < ParseError #:nodoc:
33
+ def initialize(tag, stack)
34
+ super("internal error with tasteless tag #{tag.inspect} and stack #{stack.inspect}")
35
+ end
36
+ end
37
+
38
+ class UndefinedFlavorError < ParseError #:nodoc:
39
+ def initialize(tag, stack)
40
+ super("internal error with unknown flavored tag #{tag.inspect} and stack #{stack.inspect}")
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,24 @@
1
+ module Radius
2
+ class ParseTag # :nodoc:
3
+ def initialize(&b)
4
+ @block = b
5
+ end
6
+
7
+ def on_parse(&b)
8
+ @block = b
9
+ end
10
+
11
+ def to_s
12
+ @block.call(self)
13
+ end
14
+ end
15
+
16
+ class ParseContainerTag < ParseTag # :nodoc:
17
+ attr_accessor :name, :attributes, :contents
18
+
19
+ def initialize(name = "", attributes = {}, contents = [], &b)
20
+ @name, @attributes, @contents = name, attributes, contents
21
+ super(&b)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,65 @@
1
+ module Radius
2
+ #
3
+ # The Radius parser. Initialize a parser with a Context object that
4
+ # defines how tags should be expanded. See the QUICKSTART[link:files/QUICKSTART.html]
5
+ # for a detailed explaination of its usage.
6
+ #
7
+ class Parser
8
+ # The Context object used to expand template tags.
9
+ attr_accessor :context
10
+
11
+ # The string that prefixes all tags that are expanded by a parser
12
+ # (the part in the tag name before the first colon).
13
+ attr_accessor :tag_prefix
14
+
15
+ # Creates a new parser object initialized with a Context.
16
+ def initialize(context = Context.new, options = {})
17
+ if context.kind_of?(Hash) and options.empty?
18
+ options = context
19
+ context = options[:context] || options['context'] || Context.new
20
+ end
21
+ options = Utility.symbolize_keys(options)
22
+ @context = context
23
+ @tag_prefix = options[:tag_prefix] || 'radius'
24
+ end
25
+
26
+ # Parses string for tags, expands them, and returns the result.
27
+ def parse(string)
28
+ @stack = [ParseContainerTag.new { |t| t.contents.to_s }]
29
+ tokenize(string)
30
+ stack_up
31
+ @stack.last.to_s
32
+ end
33
+
34
+ protected
35
+ # Convert the string into a list of text blocks and scanners (tokens)
36
+ def tokenize(string)
37
+ @tokens = Scanner::operate(tag_prefix, string)
38
+ end
39
+
40
+ def stack_up
41
+ @tokens.each do |t|
42
+ if t.is_a? String
43
+ @stack.last.contents << t
44
+ next
45
+ end
46
+ case t[:flavor]
47
+ when :open
48
+ @stack.push(ParseContainerTag.new(t[:name], t[:attrs]))
49
+ when :self
50
+ @stack.last.contents << ParseTag.new {@context.render_tag(t[:name], t[:attrs])}
51
+ when :close
52
+ popped = @stack.pop
53
+ raise WrongEndTagError.new(popped.name, t[:name], @stack) if popped.name != t[:name]
54
+ popped.on_parse { |b| @context.render_tag(popped.name, popped.attributes) { b.contents.to_s } }
55
+ @stack.last.contents << popped
56
+ when :tasteless
57
+ raise TastelessTagError.new(t, @stack)
58
+ else
59
+ raise UndefinedFlavorError.new(t, @stack)
60
+ end
61
+ end
62
+ raise MissingEndTagError.new(@stack.last.name, @stack) if @stack.length != 1
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,1247 @@
1
+ # line 1 "scan.rl"
2
+ # line 83 "scan.rl"
3
+
4
+
5
+ module Radius
6
+ class Scanner
7
+ def self.operate(prefix, data)
8
+ buf = ""
9
+ csel = ""
10
+ @prematch = ''
11
+ @starttag = nil
12
+ @attrs = {}
13
+ @flavor = :tasteless
14
+ @cursor = 0
15
+ @tagstart = 0
16
+ @nodes = ['']
17
+ remainder = data.dup
18
+
19
+ until remainder.length == 0
20
+ p = perform_parse(prefix, remainder)
21
+ remainder = remainder[p..-1]
22
+ end
23
+
24
+ return @nodes
25
+ end
26
+
27
+ private
28
+ def self.perform_parse(prefix, data)
29
+ stack = []
30
+ p = 0
31
+ ts = 0
32
+ te = 0
33
+ act = 0
34
+ eof = data.length
35
+
36
+ @prefix = prefix
37
+
38
+ # line 39 "scan.rb"
39
+ class << self
40
+ attr_accessor :_parser_trans_keys
41
+ private :_parser_trans_keys, :_parser_trans_keys=
42
+ end
43
+ self._parser_trans_keys = [
44
+ 0, 0, 45, 122, 45, 122,
45
+ 9, 122, 9, 122, 9,
46
+ 122, 9, 61, 9, 39,
47
+ 34, 92, 34, 92, 9, 122,
48
+ 9, 122, 62, 62, 34,
49
+ 92, 9, 122, 9, 122,
50
+ 9, 122, 9, 92, 9, 92,
51
+ 9, 122, 34, 92, 34,
52
+ 92, 34, 92, 9, 122,
53
+ 39, 92, 39, 92, 9, 122,
54
+ 9, 122, 9, 92, 9,
55
+ 92, 34, 92, 34, 92,
56
+ 9, 122, 9, 122, 9, 122,
57
+ 9, 92, 9, 92, 9,
58
+ 122, 34, 92, 9, 122,
59
+ 9, 122, 39, 92, 39, 92,
60
+ 45, 122, 45, 122, 45,
61
+ 122, 9, 122, 9, 62,
62
+ 0, 0, 60, 60, 45, 122,
63
+ 0, 0, 0, 0, 34,
64
+ 92, 34, 92, 34, 92,
65
+ 34, 92, 39, 92, 39, 92,
66
+ 0, 0, 0
67
+ ]
68
+
69
+ class << self
70
+ attr_accessor :_parser_key_spans
71
+ private :_parser_key_spans, :_parser_key_spans=
72
+ end
73
+ self._parser_key_spans = [
74
+ 0, 78, 78, 114, 114, 114, 53, 31,
75
+ 59, 59, 114, 114, 1, 59, 114, 114,
76
+ 114, 84, 84, 114, 59, 59, 59, 114,
77
+ 54, 54, 114, 114, 84, 84, 59, 59,
78
+ 114, 114, 114, 84, 84, 114, 59, 114,
79
+ 114, 54, 54, 78, 78, 78, 114, 54,
80
+ 0, 1, 78, 0, 0, 59, 59, 59,
81
+ 59, 54, 54, 0
82
+ ]
83
+
84
+ class << self
85
+ attr_accessor :_parser_index_offsets
86
+ private :_parser_index_offsets, :_parser_index_offsets=
87
+ end
88
+ self._parser_index_offsets = [
89
+ 0, 0, 79, 158, 273, 388, 503, 557,
90
+ 589, 649, 709, 824, 939, 941, 1001, 1116,
91
+ 1231, 1346, 1431, 1516, 1631, 1691, 1751, 1811,
92
+ 1926, 1981, 2036, 2151, 2266, 2351, 2436, 2496,
93
+ 2556, 2671, 2786, 2901, 2986, 3071, 3186, 3246,
94
+ 3361, 3476, 3531, 3586, 3665, 3744, 3823, 3938,
95
+ 3993, 3994, 3996, 4075, 4076, 4077, 4137, 4197,
96
+ 4257, 4317, 4372, 4427
97
+ ]
98
+
99
+ class << self
100
+ attr_accessor :_parser_indicies
101
+ private :_parser_indicies, :_parser_indicies=
102
+ end
103
+ self._parser_indicies = [
104
+ 1, 1, 0, 1, 1, 1, 1, 1,
105
+ 1, 1, 1, 1, 1, 2, 0, 0,
106
+ 0, 0, 1, 0, 1, 1, 1, 1,
107
+ 1, 1, 1, 1, 1, 1, 1, 1,
108
+ 1, 1, 1, 1, 1, 1, 1, 1,
109
+ 1, 1, 1, 1, 1, 1, 0, 0,
110
+ 0, 0, 1, 0, 1, 1, 1, 1,
111
+ 1, 1, 1, 1, 1, 1, 1, 1,
112
+ 1, 1, 1, 1, 1, 1, 1, 1,
113
+ 1, 1, 1, 1, 1, 1, 0, 3,
114
+ 3, 0, 3, 3, 3, 3, 3, 3,
115
+ 3, 3, 3, 3, 3, 0, 0, 0,
116
+ 0, 3, 0, 3, 3, 3, 3, 3,
117
+ 3, 3, 3, 3, 3, 3, 3, 3,
118
+ 3, 3, 3, 3, 3, 3, 3, 3,
119
+ 3, 3, 3, 3, 3, 0, 0, 0,
120
+ 0, 3, 0, 3, 3, 3, 3, 3,
121
+ 3, 3, 3, 3, 3, 3, 3, 3,
122
+ 3, 3, 3, 3, 3, 3, 3, 3,
123
+ 3, 3, 3, 3, 3, 0, 4, 4,
124
+ 4, 4, 4, 0, 0, 0, 0, 0,
125
+ 0, 0, 0, 0, 0, 0, 0, 0,
126
+ 0, 0, 0, 0, 0, 4, 0, 0,
127
+ 0, 0, 0, 0, 0, 0, 0, 0,
128
+ 0, 0, 5, 5, 6, 5, 5, 5,
129
+ 5, 5, 5, 5, 5, 5, 5, 5,
130
+ 0, 0, 0, 7, 5, 0, 5, 5,
131
+ 5, 5, 5, 5, 5, 5, 5, 5,
132
+ 5, 5, 5, 5, 5, 5, 5, 5,
133
+ 5, 5, 5, 5, 5, 5, 5, 5,
134
+ 0, 0, 0, 0, 5, 0, 5, 5,
135
+ 5, 5, 5, 5, 5, 5, 5, 5,
136
+ 5, 5, 5, 5, 5, 5, 5, 5,
137
+ 5, 5, 5, 5, 5, 5, 5, 5,
138
+ 0, 8, 8, 8, 8, 8, 0, 0,
139
+ 0, 0, 0, 0, 0, 0, 0, 0,
140
+ 0, 0, 0, 0, 0, 0, 0, 0,
141
+ 8, 0, 0, 0, 0, 0, 0, 0,
142
+ 0, 0, 0, 0, 0, 9, 9, 10,
143
+ 9, 9, 9, 9, 9, 9, 9, 9,
144
+ 9, 9, 9, 0, 0, 0, 11, 9,
145
+ 0, 9, 9, 9, 9, 9, 9, 9,
146
+ 9, 9, 9, 9, 9, 9, 9, 9,
147
+ 9, 9, 9, 9, 9, 9, 9, 9,
148
+ 9, 9, 9, 0, 0, 0, 0, 9,
149
+ 0, 9, 9, 9, 9, 9, 9, 9,
150
+ 9, 9, 9, 9, 9, 9, 9, 9,
151
+ 9, 9, 9, 9, 9, 9, 9, 9,
152
+ 9, 9, 9, 0, 13, 13, 13, 13,
153
+ 13, 12, 12, 12, 12, 12, 12, 12,
154
+ 12, 12, 12, 12, 12, 12, 12, 12,
155
+ 12, 12, 12, 13, 12, 12, 12, 12,
156
+ 12, 12, 12, 12, 12, 12, 12, 12,
157
+ 14, 14, 12, 14, 14, 14, 14, 14,
158
+ 14, 14, 14, 14, 14, 14, 12, 12,
159
+ 15, 12, 14, 12, 14, 14, 14, 14,
160
+ 14, 14, 14, 14, 14, 14, 14, 14,
161
+ 14, 14, 14, 14, 14, 14, 14, 14,
162
+ 14, 14, 14, 14, 14, 14, 12, 12,
163
+ 12, 12, 14, 12, 14, 14, 14, 14,
164
+ 14, 14, 14, 14, 14, 14, 14, 14,
165
+ 14, 14, 14, 14, 14, 14, 14, 14,
166
+ 14, 14, 14, 14, 14, 14, 12, 16,
167
+ 16, 16, 16, 16, 12, 12, 12, 12,
168
+ 12, 12, 12, 12, 12, 12, 12, 12,
169
+ 12, 12, 12, 12, 12, 12, 16, 12,
170
+ 12, 12, 12, 12, 12, 12, 12, 12,
171
+ 12, 12, 12, 12, 12, 12, 12, 12,
172
+ 12, 12, 12, 12, 12, 12, 12, 12,
173
+ 12, 12, 12, 17, 12, 17, 17, 17,
174
+ 17, 17, 12, 12, 12, 12, 12, 12,
175
+ 12, 12, 12, 12, 12, 12, 12, 12,
176
+ 12, 12, 12, 12, 17, 12, 18, 12,
177
+ 12, 12, 12, 19, 12, 21, 20, 20,
178
+ 20, 20, 20, 20, 20, 20, 20, 20,
179
+ 20, 20, 20, 20, 20, 20, 20, 20,
180
+ 20, 20, 20, 20, 20, 20, 20, 20,
181
+ 20, 20, 20, 20, 20, 20, 20, 20,
182
+ 20, 20, 20, 20, 20, 20, 20, 20,
183
+ 20, 20, 20, 20, 20, 20, 20, 20,
184
+ 20, 20, 20, 20, 20, 20, 20, 22,
185
+ 20, 24, 23, 23, 23, 23, 23, 23,
186
+ 23, 23, 23, 23, 23, 23, 23, 23,
187
+ 23, 23, 23, 23, 23, 23, 23, 23,
188
+ 23, 23, 23, 23, 23, 23, 23, 23,
189
+ 23, 23, 23, 23, 23, 23, 23, 23,
190
+ 23, 23, 23, 23, 23, 23, 23, 23,
191
+ 23, 23, 23, 23, 23, 23, 23, 23,
192
+ 23, 23, 23, 25, 23, 26, 26, 26,
193
+ 26, 26, 12, 12, 12, 12, 12, 12,
194
+ 12, 12, 12, 12, 12, 12, 12, 12,
195
+ 12, 12, 12, 12, 26, 12, 12, 12,
196
+ 12, 12, 12, 12, 12, 12, 12, 12,
197
+ 12, 27, 27, 28, 27, 27, 27, 27,
198
+ 27, 27, 27, 27, 27, 27, 27, 12,
199
+ 12, 12, 29, 27, 12, 27, 27, 27,
200
+ 27, 27, 27, 27, 27, 27, 27, 27,
201
+ 27, 27, 27, 27, 27, 27, 27, 27,
202
+ 27, 27, 27, 27, 27, 27, 27, 12,
203
+ 12, 12, 12, 27, 12, 27, 27, 27,
204
+ 27, 27, 27, 27, 27, 27, 27, 27,
205
+ 27, 27, 27, 27, 27, 27, 27, 27,
206
+ 27, 27, 27, 27, 27, 27, 27, 12,
207
+ 30, 30, 30, 30, 30, 12, 12, 12,
208
+ 12, 12, 12, 12, 12, 12, 12, 12,
209
+ 12, 12, 12, 12, 12, 12, 12, 30,
210
+ 12, 12, 12, 12, 12, 12, 12, 12,
211
+ 12, 12, 12, 12, 31, 31, 32, 31,
212
+ 31, 31, 31, 31, 31, 31, 31, 31,
213
+ 31, 31, 12, 12, 12, 33, 31, 12,
214
+ 31, 31, 31, 31, 31, 31, 31, 31,
215
+ 31, 31, 31, 31, 31, 31, 31, 31,
216
+ 31, 31, 31, 31, 31, 31, 31, 31,
217
+ 31, 31, 12, 12, 12, 12, 31, 12,
218
+ 31, 31, 31, 31, 31, 31, 31, 31,
219
+ 31, 31, 31, 31, 31, 31, 31, 31,
220
+ 31, 31, 31, 31, 31, 31, 31, 31,
221
+ 31, 31, 12, 34, 12, 35, 23, 23,
222
+ 23, 23, 23, 23, 23, 23, 23, 23,
223
+ 23, 23, 23, 23, 23, 23, 23, 23,
224
+ 23, 23, 23, 23, 23, 23, 23, 23,
225
+ 23, 23, 23, 23, 23, 23, 23, 23,
226
+ 23, 23, 23, 23, 23, 23, 23, 23,
227
+ 23, 23, 23, 23, 23, 23, 23, 23,
228
+ 23, 23, 23, 23, 23, 23, 23, 25,
229
+ 23, 36, 36, 36, 36, 36, 23, 23,
230
+ 23, 23, 23, 23, 23, 23, 23, 23,
231
+ 23, 23, 23, 23, 23, 23, 23, 23,
232
+ 36, 23, 24, 23, 23, 23, 23, 23,
233
+ 23, 23, 23, 23, 23, 37, 37, 38,
234
+ 37, 37, 37, 37, 37, 37, 37, 37,
235
+ 37, 37, 37, 23, 23, 23, 39, 37,
236
+ 23, 37, 37, 37, 37, 37, 37, 37,
237
+ 37, 37, 37, 37, 37, 37, 37, 37,
238
+ 37, 37, 37, 37, 37, 37, 37, 37,
239
+ 37, 37, 37, 23, 25, 23, 23, 37,
240
+ 23, 37, 37, 37, 37, 37, 37, 37,
241
+ 37, 37, 37, 37, 37, 37, 37, 37,
242
+ 37, 37, 37, 37, 37, 37, 37, 37,
243
+ 37, 37, 37, 23, 40, 40, 40, 40,
244
+ 40, 23, 23, 23, 23, 23, 23, 23,
245
+ 23, 23, 23, 23, 23, 23, 23, 23,
246
+ 23, 23, 23, 40, 23, 24, 23, 23,
247
+ 23, 23, 23, 23, 23, 23, 23, 23,
248
+ 41, 41, 42, 41, 41, 41, 41, 41,
249
+ 41, 41, 41, 41, 41, 41, 23, 23,
250
+ 23, 43, 41, 23, 41, 41, 41, 41,
251
+ 41, 41, 41, 41, 41, 41, 41, 41,
252
+ 41, 41, 41, 41, 41, 41, 41, 41,
253
+ 41, 41, 41, 41, 41, 41, 23, 25,
254
+ 23, 23, 41, 23, 41, 41, 41, 41,
255
+ 41, 41, 41, 41, 41, 41, 41, 41,
256
+ 41, 41, 41, 41, 41, 41, 41, 41,
257
+ 41, 41, 41, 41, 41, 41, 23, 44,
258
+ 44, 44, 44, 44, 23, 23, 23, 23,
259
+ 23, 23, 23, 23, 23, 23, 23, 23,
260
+ 23, 23, 23, 23, 23, 23, 44, 23,
261
+ 24, 23, 23, 23, 23, 23, 23, 23,
262
+ 23, 23, 23, 45, 45, 23, 45, 45,
263
+ 45, 45, 45, 45, 45, 45, 45, 45,
264
+ 45, 23, 23, 46, 23, 45, 23, 45,
265
+ 45, 45, 45, 45, 45, 45, 45, 45,
266
+ 45, 45, 45, 45, 45, 45, 45, 45,
267
+ 45, 45, 45, 45, 45, 45, 45, 45,
268
+ 45, 23, 25, 23, 23, 45, 23, 45,
269
+ 45, 45, 45, 45, 45, 45, 45, 45,
270
+ 45, 45, 45, 45, 45, 45, 45, 45,
271
+ 45, 45, 45, 45, 45, 45, 45, 45,
272
+ 45, 23, 47, 47, 47, 47, 47, 23,
273
+ 23, 23, 23, 23, 23, 23, 23, 23,
274
+ 23, 23, 23, 23, 23, 23, 23, 23,
275
+ 23, 47, 23, 24, 23, 23, 23, 23,
276
+ 23, 23, 23, 23, 23, 23, 23, 23,
277
+ 23, 23, 23, 23, 23, 23, 23, 23,
278
+ 23, 23, 23, 23, 23, 23, 48, 23,
279
+ 23, 23, 23, 23, 23, 23, 23, 23,
280
+ 23, 23, 23, 23, 23, 23, 23, 23,
281
+ 23, 23, 23, 23, 23, 23, 23, 23,
282
+ 23, 23, 23, 23, 23, 25, 23, 48,
283
+ 48, 48, 48, 48, 23, 23, 23, 23,
284
+ 23, 23, 23, 23, 23, 23, 23, 23,
285
+ 23, 23, 23, 23, 23, 23, 48, 23,
286
+ 49, 23, 23, 23, 23, 50, 23, 23,
287
+ 23, 23, 23, 23, 23, 23, 23, 23,
288
+ 23, 23, 23, 23, 23, 23, 23, 23,
289
+ 23, 23, 23, 23, 23, 23, 23, 23,
290
+ 23, 23, 23, 23, 23, 23, 23, 23,
291
+ 23, 23, 23, 23, 23, 23, 23, 23,
292
+ 23, 23, 23, 23, 23, 23, 23, 23,
293
+ 23, 23, 25, 23, 51, 51, 51, 51,
294
+ 51, 20, 20, 20, 20, 20, 20, 20,
295
+ 20, 20, 20, 20, 20, 20, 20, 20,
296
+ 20, 20, 20, 51, 20, 21, 20, 20,
297
+ 20, 20, 20, 20, 20, 20, 20, 20,
298
+ 52, 52, 53, 52, 52, 52, 52, 52,
299
+ 52, 52, 52, 52, 52, 52, 20, 20,
300
+ 20, 54, 52, 20, 52, 52, 52, 52,
301
+ 52, 52, 52, 52, 52, 52, 52, 52,
302
+ 52, 52, 52, 52, 52, 52, 52, 52,
303
+ 52, 52, 52, 52, 52, 52, 20, 22,
304
+ 20, 20, 52, 20, 52, 52, 52, 52,
305
+ 52, 52, 52, 52, 52, 52, 52, 52,
306
+ 52, 52, 52, 52, 52, 52, 52, 52,
307
+ 52, 52, 52, 52, 52, 52, 20, 24,
308
+ 23, 23, 23, 23, 23, 23, 23, 23,
309
+ 23, 23, 23, 23, 23, 23, 23, 23,
310
+ 23, 23, 23, 23, 23, 23, 23, 23,
311
+ 23, 23, 23, 55, 23, 23, 23, 23,
312
+ 23, 23, 23, 23, 23, 23, 23, 23,
313
+ 23, 23, 23, 23, 23, 23, 23, 23,
314
+ 23, 23, 23, 23, 23, 23, 23, 23,
315
+ 23, 25, 23, 57, 56, 56, 56, 56,
316
+ 58, 56, 56, 56, 56, 56, 56, 56,
317
+ 56, 56, 56, 56, 56, 56, 56, 56,
318
+ 56, 56, 56, 56, 56, 56, 56, 56,
319
+ 56, 56, 56, 56, 56, 56, 56, 56,
320
+ 56, 56, 56, 56, 56, 56, 56, 56,
321
+ 56, 56, 56, 56, 56, 56, 56, 56,
322
+ 56, 56, 56, 56, 56, 59, 56, 61,
323
+ 60, 60, 60, 60, 35, 60, 60, 60,
324
+ 60, 60, 60, 60, 60, 60, 60, 60,
325
+ 60, 60, 60, 60, 60, 60, 60, 60,
326
+ 60, 60, 60, 60, 60, 60, 60, 60,
327
+ 60, 60, 60, 60, 60, 60, 60, 60,
328
+ 60, 60, 60, 60, 60, 60, 60, 60,
329
+ 60, 60, 60, 60, 60, 60, 60, 60,
330
+ 60, 62, 60, 64, 64, 64, 64, 64,
331
+ 63, 63, 63, 63, 63, 63, 63, 63,
332
+ 63, 63, 63, 63, 63, 63, 63, 63,
333
+ 63, 63, 64, 63, 63, 63, 63, 63,
334
+ 63, 24, 63, 63, 63, 63, 63, 65,
335
+ 65, 66, 65, 65, 65, 65, 65, 65,
336
+ 65, 65, 65, 65, 65, 63, 63, 63,
337
+ 67, 65, 63, 65, 65, 65, 65, 65,
338
+ 65, 65, 65, 65, 65, 65, 65, 65,
339
+ 65, 65, 65, 65, 65, 65, 65, 65,
340
+ 65, 65, 65, 65, 65, 63, 68, 63,
341
+ 63, 65, 63, 65, 65, 65, 65, 65,
342
+ 65, 65, 65, 65, 65, 65, 65, 65,
343
+ 65, 65, 65, 65, 65, 65, 65, 65,
344
+ 65, 65, 65, 65, 65, 63, 24, 63,
345
+ 63, 63, 63, 63, 63, 63, 63, 63,
346
+ 63, 63, 63, 63, 63, 63, 63, 63,
347
+ 63, 63, 63, 63, 63, 63, 63, 63,
348
+ 63, 63, 63, 63, 63, 63, 63, 63,
349
+ 63, 63, 63, 63, 63, 63, 63, 63,
350
+ 63, 63, 63, 63, 63, 63, 63, 63,
351
+ 63, 63, 63, 68, 63, 61, 63, 63,
352
+ 63, 63, 63, 63, 63, 63, 63, 63,
353
+ 63, 63, 63, 63, 63, 63, 63, 63,
354
+ 63, 63, 63, 63, 63, 63, 63, 63,
355
+ 63, 63, 63, 63, 63, 63, 63, 63,
356
+ 63, 63, 63, 63, 63, 63, 63, 63,
357
+ 63, 63, 63, 63, 63, 63, 63, 63,
358
+ 63, 63, 68, 63, 69, 69, 69, 69,
359
+ 69, 63, 63, 63, 63, 63, 63, 63,
360
+ 63, 63, 63, 63, 63, 63, 63, 63,
361
+ 63, 63, 63, 69, 63, 63, 63, 63,
362
+ 63, 63, 24, 63, 63, 63, 63, 63,
363
+ 70, 70, 71, 70, 70, 70, 70, 70,
364
+ 70, 70, 70, 70, 70, 70, 63, 63,
365
+ 63, 72, 70, 63, 70, 70, 70, 70,
366
+ 70, 70, 70, 70, 70, 70, 70, 70,
367
+ 70, 70, 70, 70, 70, 70, 70, 70,
368
+ 70, 70, 70, 70, 70, 70, 63, 68,
369
+ 63, 63, 70, 63, 70, 70, 70, 70,
370
+ 70, 70, 70, 70, 70, 70, 70, 70,
371
+ 70, 70, 70, 70, 70, 70, 70, 70,
372
+ 70, 70, 70, 70, 70, 70, 63, 73,
373
+ 73, 73, 73, 73, 63, 63, 63, 63,
374
+ 63, 63, 63, 63, 63, 63, 63, 63,
375
+ 63, 63, 63, 63, 63, 63, 73, 63,
376
+ 63, 63, 63, 63, 63, 24, 63, 63,
377
+ 63, 63, 63, 74, 74, 63, 74, 74,
378
+ 74, 74, 74, 74, 74, 74, 74, 74,
379
+ 74, 63, 63, 75, 63, 74, 63, 74,
380
+ 74, 74, 74, 74, 74, 74, 74, 74,
381
+ 74, 74, 74, 74, 74, 74, 74, 74,
382
+ 74, 74, 74, 74, 74, 74, 74, 74,
383
+ 74, 63, 68, 63, 63, 74, 63, 74,
384
+ 74, 74, 74, 74, 74, 74, 74, 74,
385
+ 74, 74, 74, 74, 74, 74, 74, 74,
386
+ 74, 74, 74, 74, 74, 74, 74, 74,
387
+ 74, 63, 76, 76, 76, 76, 76, 63,
388
+ 63, 63, 63, 63, 63, 63, 63, 63,
389
+ 63, 63, 63, 63, 63, 63, 63, 63,
390
+ 63, 76, 63, 63, 63, 63, 63, 63,
391
+ 24, 63, 63, 63, 63, 63, 63, 63,
392
+ 63, 63, 63, 63, 63, 63, 63, 63,
393
+ 63, 63, 63, 63, 63, 63, 77, 63,
394
+ 63, 63, 63, 63, 63, 63, 63, 63,
395
+ 63, 63, 63, 63, 63, 63, 63, 63,
396
+ 63, 63, 63, 63, 63, 63, 63, 63,
397
+ 63, 63, 63, 63, 63, 68, 63, 77,
398
+ 77, 77, 77, 77, 63, 63, 63, 63,
399
+ 63, 63, 63, 63, 63, 63, 63, 63,
400
+ 63, 63, 63, 63, 63, 63, 77, 63,
401
+ 78, 63, 63, 63, 63, 79, 63, 63,
402
+ 63, 63, 63, 63, 63, 63, 63, 63,
403
+ 63, 63, 63, 63, 63, 63, 63, 63,
404
+ 63, 63, 63, 63, 63, 63, 63, 63,
405
+ 63, 63, 63, 63, 63, 63, 63, 63,
406
+ 63, 63, 63, 63, 63, 63, 63, 63,
407
+ 63, 63, 63, 63, 63, 63, 63, 63,
408
+ 63, 63, 68, 63, 80, 56, 56, 56,
409
+ 56, 58, 56, 56, 56, 56, 56, 56,
410
+ 56, 56, 56, 56, 56, 56, 56, 56,
411
+ 56, 56, 56, 56, 56, 56, 56, 56,
412
+ 56, 56, 56, 56, 56, 56, 56, 56,
413
+ 56, 56, 56, 56, 56, 56, 56, 56,
414
+ 56, 56, 56, 56, 56, 56, 56, 56,
415
+ 56, 56, 56, 56, 56, 56, 59, 56,
416
+ 81, 60, 60, 60, 60, 81, 60, 60,
417
+ 60, 60, 60, 60, 60, 60, 60, 60,
418
+ 60, 60, 60, 60, 60, 60, 60, 60,
419
+ 60, 60, 60, 60, 60, 60, 60, 60,
420
+ 60, 60, 60, 60, 60, 60, 60, 60,
421
+ 60, 60, 60, 60, 60, 60, 60, 60,
422
+ 60, 60, 60, 60, 60, 60, 60, 60,
423
+ 60, 60, 62, 60, 82, 82, 82, 82,
424
+ 82, 60, 60, 60, 60, 60, 60, 60,
425
+ 60, 60, 60, 60, 60, 60, 60, 60,
426
+ 60, 60, 60, 82, 60, 61, 60, 60,
427
+ 60, 60, 35, 60, 60, 60, 60, 60,
428
+ 83, 83, 84, 83, 83, 83, 83, 83,
429
+ 83, 83, 83, 83, 83, 83, 60, 60,
430
+ 60, 85, 83, 60, 83, 83, 83, 83,
431
+ 83, 83, 83, 83, 83, 83, 83, 83,
432
+ 83, 83, 83, 83, 83, 83, 83, 83,
433
+ 83, 83, 83, 83, 83, 83, 60, 62,
434
+ 60, 60, 83, 60, 83, 83, 83, 83,
435
+ 83, 83, 83, 83, 83, 83, 83, 83,
436
+ 83, 83, 83, 83, 83, 83, 83, 83,
437
+ 83, 83, 83, 83, 83, 83, 60, 86,
438
+ 86, 86, 86, 86, 60, 60, 60, 60,
439
+ 60, 60, 60, 60, 60, 60, 60, 60,
440
+ 60, 60, 60, 60, 60, 60, 86, 60,
441
+ 61, 60, 60, 60, 60, 35, 60, 60,
442
+ 60, 60, 60, 87, 87, 88, 87, 87,
443
+ 87, 87, 87, 87, 87, 87, 87, 87,
444
+ 87, 60, 60, 60, 89, 87, 60, 87,
445
+ 87, 87, 87, 87, 87, 87, 87, 87,
446
+ 87, 87, 87, 87, 87, 87, 87, 87,
447
+ 87, 87, 87, 87, 87, 87, 87, 87,
448
+ 87, 60, 62, 60, 60, 87, 60, 87,
449
+ 87, 87, 87, 87, 87, 87, 87, 87,
450
+ 87, 87, 87, 87, 87, 87, 87, 87,
451
+ 87, 87, 87, 87, 87, 87, 87, 87,
452
+ 87, 60, 90, 90, 90, 90, 90, 60,
453
+ 60, 60, 60, 60, 60, 60, 60, 60,
454
+ 60, 60, 60, 60, 60, 60, 60, 60,
455
+ 60, 90, 60, 61, 60, 60, 60, 60,
456
+ 35, 60, 60, 60, 60, 60, 91, 91,
457
+ 60, 91, 91, 91, 91, 91, 91, 91,
458
+ 91, 91, 91, 91, 60, 60, 92, 60,
459
+ 91, 60, 91, 91, 91, 91, 91, 91,
460
+ 91, 91, 91, 91, 91, 91, 91, 91,
461
+ 91, 91, 91, 91, 91, 91, 91, 91,
462
+ 91, 91, 91, 91, 60, 62, 60, 60,
463
+ 91, 60, 91, 91, 91, 91, 91, 91,
464
+ 91, 91, 91, 91, 91, 91, 91, 91,
465
+ 91, 91, 91, 91, 91, 91, 91, 91,
466
+ 91, 91, 91, 91, 60, 93, 93, 93,
467
+ 93, 93, 60, 60, 60, 60, 60, 60,
468
+ 60, 60, 60, 60, 60, 60, 60, 60,
469
+ 60, 60, 60, 60, 93, 60, 61, 60,
470
+ 60, 60, 60, 35, 60, 60, 60, 60,
471
+ 60, 60, 60, 60, 60, 60, 60, 60,
472
+ 60, 60, 60, 60, 60, 60, 60, 60,
473
+ 60, 94, 60, 60, 60, 60, 60, 60,
474
+ 60, 60, 60, 60, 60, 60, 60, 60,
475
+ 60, 60, 60, 60, 60, 60, 60, 60,
476
+ 60, 60, 60, 60, 60, 60, 60, 60,
477
+ 62, 60, 94, 94, 94, 94, 94, 60,
478
+ 60, 60, 60, 60, 60, 60, 60, 60,
479
+ 60, 60, 60, 60, 60, 60, 60, 60,
480
+ 60, 94, 60, 95, 60, 60, 60, 60,
481
+ 96, 60, 60, 60, 60, 60, 60, 60,
482
+ 60, 60, 60, 60, 60, 60, 60, 60,
483
+ 60, 60, 60, 60, 60, 60, 60, 60,
484
+ 60, 60, 60, 60, 60, 60, 60, 60,
485
+ 60, 60, 60, 60, 60, 60, 60, 60,
486
+ 60, 60, 60, 60, 60, 60, 60, 60,
487
+ 60, 60, 60, 60, 60, 62, 60, 97,
488
+ 97, 97, 97, 97, 56, 56, 56, 56,
489
+ 56, 56, 56, 56, 56, 56, 56, 56,
490
+ 56, 56, 56, 56, 56, 56, 97, 56,
491
+ 80, 56, 56, 56, 56, 58, 56, 56,
492
+ 56, 56, 56, 98, 98, 99, 98, 98,
493
+ 98, 98, 98, 98, 98, 98, 98, 98,
494
+ 98, 56, 56, 56, 100, 98, 56, 98,
495
+ 98, 98, 98, 98, 98, 98, 98, 98,
496
+ 98, 98, 98, 98, 98, 98, 98, 98,
497
+ 98, 98, 98, 98, 98, 98, 98, 98,
498
+ 98, 56, 59, 56, 56, 98, 56, 98,
499
+ 98, 98, 98, 98, 98, 98, 98, 98,
500
+ 98, 98, 98, 98, 98, 98, 98, 98,
501
+ 98, 98, 98, 98, 98, 98, 98, 98,
502
+ 98, 56, 61, 60, 60, 60, 60, 35,
503
+ 60, 60, 60, 60, 60, 60, 60, 60,
504
+ 60, 60, 60, 60, 60, 60, 60, 60,
505
+ 60, 60, 60, 60, 60, 60, 101, 60,
506
+ 60, 60, 60, 60, 60, 60, 60, 60,
507
+ 60, 60, 60, 60, 60, 60, 60, 60,
508
+ 60, 60, 60, 60, 60, 60, 60, 60,
509
+ 60, 60, 60, 60, 62, 60, 97, 97,
510
+ 97, 97, 97, 56, 56, 56, 56, 56,
511
+ 56, 56, 56, 56, 56, 56, 56, 56,
512
+ 56, 56, 56, 56, 56, 97, 56, 57,
513
+ 56, 56, 56, 56, 58, 56, 56, 56,
514
+ 56, 56, 98, 98, 99, 98, 98, 98,
515
+ 98, 98, 98, 98, 98, 98, 98, 98,
516
+ 56, 56, 56, 100, 98, 56, 98, 98,
517
+ 98, 98, 98, 98, 98, 98, 98, 98,
518
+ 98, 98, 98, 98, 98, 98, 98, 98,
519
+ 98, 98, 98, 98, 98, 98, 98, 98,
520
+ 56, 59, 56, 56, 98, 56, 98, 98,
521
+ 98, 98, 98, 98, 98, 98, 98, 98,
522
+ 98, 98, 98, 98, 98, 98, 98, 98,
523
+ 98, 98, 98, 98, 98, 98, 98, 98,
524
+ 56, 103, 103, 103, 103, 103, 102, 102,
525
+ 102, 102, 102, 102, 102, 102, 102, 102,
526
+ 102, 102, 102, 102, 102, 102, 102, 102,
527
+ 103, 102, 102, 102, 102, 102, 102, 21,
528
+ 102, 102, 102, 102, 102, 104, 104, 105,
529
+ 104, 104, 104, 104, 104, 104, 104, 104,
530
+ 104, 104, 104, 102, 102, 102, 106, 104,
531
+ 102, 104, 104, 104, 104, 104, 104, 104,
532
+ 104, 104, 104, 104, 104, 104, 104, 104,
533
+ 104, 104, 104, 104, 104, 104, 104, 104,
534
+ 104, 104, 104, 102, 107, 102, 102, 104,
535
+ 102, 104, 104, 104, 104, 104, 104, 104,
536
+ 104, 104, 104, 104, 104, 104, 104, 104,
537
+ 104, 104, 104, 104, 104, 104, 104, 104,
538
+ 104, 104, 104, 102, 24, 63, 63, 63,
539
+ 63, 63, 63, 63, 63, 63, 63, 63,
540
+ 63, 63, 63, 63, 63, 63, 63, 63,
541
+ 63, 63, 63, 108, 63, 63, 63, 63,
542
+ 63, 63, 63, 63, 63, 63, 63, 63,
543
+ 63, 63, 63, 63, 63, 63, 63, 63,
544
+ 63, 63, 63, 63, 63, 63, 63, 63,
545
+ 63, 68, 63, 21, 102, 102, 102, 102,
546
+ 102, 102, 102, 102, 102, 102, 102, 102,
547
+ 102, 102, 102, 102, 102, 102, 102, 102,
548
+ 102, 102, 102, 102, 102, 102, 102, 102,
549
+ 102, 102, 102, 102, 102, 102, 102, 102,
550
+ 102, 102, 102, 102, 102, 102, 102, 102,
551
+ 102, 102, 102, 102, 102, 102, 102, 102,
552
+ 107, 102, 109, 109, 0, 109, 109, 109,
553
+ 109, 109, 109, 109, 109, 109, 109, 0,
554
+ 0, 0, 0, 0, 109, 0, 109, 109,
555
+ 109, 109, 109, 109, 109, 109, 109, 109,
556
+ 109, 109, 109, 109, 109, 109, 109, 109,
557
+ 109, 109, 109, 109, 109, 109, 109, 109,
558
+ 0, 0, 0, 0, 109, 0, 109, 109,
559
+ 109, 109, 109, 109, 109, 109, 109, 109,
560
+ 109, 109, 109, 109, 109, 109, 109, 109,
561
+ 109, 109, 109, 109, 109, 109, 109, 109,
562
+ 0, 110, 110, 0, 110, 110, 110, 110,
563
+ 110, 110, 110, 110, 110, 110, 111, 0,
564
+ 0, 0, 0, 110, 0, 110, 110, 110,
565
+ 110, 110, 110, 110, 110, 110, 110, 110,
566
+ 110, 110, 110, 110, 110, 110, 110, 110,
567
+ 110, 110, 110, 110, 110, 110, 110, 0,
568
+ 0, 0, 0, 110, 0, 110, 110, 110,
569
+ 110, 110, 110, 110, 110, 110, 110, 110,
570
+ 110, 110, 110, 110, 110, 110, 110, 110,
571
+ 110, 110, 110, 110, 110, 110, 110, 0,
572
+ 112, 112, 0, 112, 112, 112, 112, 112,
573
+ 112, 112, 112, 112, 112, 112, 0, 0,
574
+ 0, 0, 112, 0, 112, 112, 112, 112,
575
+ 112, 112, 112, 112, 112, 112, 112, 112,
576
+ 112, 112, 112, 112, 112, 112, 112, 112,
577
+ 112, 112, 112, 112, 112, 112, 0, 0,
578
+ 0, 0, 112, 0, 112, 112, 112, 112,
579
+ 112, 112, 112, 112, 112, 112, 112, 112,
580
+ 112, 112, 112, 112, 112, 112, 112, 112,
581
+ 112, 112, 112, 112, 112, 112, 0, 113,
582
+ 113, 113, 113, 113, 0, 0, 0, 0,
583
+ 0, 0, 0, 0, 0, 0, 0, 0,
584
+ 0, 0, 0, 0, 0, 0, 113, 0,
585
+ 0, 0, 0, 0, 0, 0, 0, 0,
586
+ 0, 0, 0, 114, 114, 0, 114, 114,
587
+ 114, 114, 114, 114, 114, 114, 114, 114,
588
+ 114, 0, 0, 0, 115, 114, 0, 114,
589
+ 114, 114, 114, 114, 114, 114, 114, 114,
590
+ 114, 114, 114, 114, 114, 114, 114, 114,
591
+ 114, 114, 114, 114, 114, 114, 114, 114,
592
+ 114, 0, 0, 0, 0, 114, 0, 114,
593
+ 114, 114, 114, 114, 114, 114, 114, 114,
594
+ 114, 114, 114, 114, 114, 114, 114, 114,
595
+ 114, 114, 114, 114, 114, 114, 114, 114,
596
+ 114, 0, 116, 116, 116, 116, 116, 0,
597
+ 0, 0, 0, 0, 0, 0, 0, 0,
598
+ 0, 0, 0, 0, 0, 0, 0, 0,
599
+ 0, 116, 0, 0, 0, 0, 0, 0,
600
+ 0, 0, 0, 0, 0, 0, 0, 0,
601
+ 0, 0, 0, 0, 0, 0, 0, 0,
602
+ 0, 0, 0, 0, 0, 0, 0, 117,
603
+ 0, 118, 120, 119, 122, 122, 123, 122,
604
+ 122, 122, 122, 122, 122, 122, 122, 122,
605
+ 122, 121, 121, 121, 121, 121, 122, 121,
606
+ 122, 122, 122, 122, 122, 122, 122, 122,
607
+ 122, 122, 122, 122, 122, 122, 122, 122,
608
+ 122, 122, 122, 122, 122, 122, 122, 122,
609
+ 122, 122, 121, 121, 121, 121, 122, 121,
610
+ 122, 122, 122, 122, 122, 122, 122, 122,
611
+ 122, 122, 122, 122, 122, 122, 122, 122,
612
+ 122, 122, 122, 122, 122, 122, 122, 122,
613
+ 122, 122, 121, 124, 125, 24, 23, 23,
614
+ 23, 23, 23, 23, 23, 23, 23, 23,
615
+ 23, 23, 23, 23, 23, 23, 23, 23,
616
+ 23, 23, 23, 23, 23, 23, 23, 23,
617
+ 23, 23, 23, 23, 23, 23, 23, 23,
618
+ 23, 23, 23, 23, 23, 23, 23, 23,
619
+ 23, 23, 23, 23, 23, 23, 23, 23,
620
+ 23, 23, 23, 23, 23, 23, 23, 25,
621
+ 23, 24, 23, 23, 23, 23, 23, 23,
622
+ 23, 23, 23, 23, 23, 23, 23, 23,
623
+ 23, 23, 23, 23, 23, 23, 23, 23,
624
+ 23, 23, 23, 23, 23, 23, 23, 23,
625
+ 23, 23, 23, 23, 23, 23, 23, 23,
626
+ 23, 23, 23, 23, 23, 23, 23, 23,
627
+ 23, 23, 23, 23, 23, 23, 23, 23,
628
+ 23, 23, 23, 25, 23, 61, 60, 60,
629
+ 60, 60, 35, 60, 60, 60, 60, 60,
630
+ 60, 60, 60, 60, 60, 60, 60, 60,
631
+ 60, 60, 60, 60, 60, 60, 60, 60,
632
+ 60, 60, 60, 60, 60, 60, 60, 60,
633
+ 60, 60, 60, 60, 60, 60, 60, 60,
634
+ 60, 60, 60, 60, 60, 60, 60, 60,
635
+ 60, 60, 60, 60, 60, 60, 60, 62,
636
+ 60, 61, 60, 60, 60, 60, 35, 60,
637
+ 60, 60, 60, 60, 60, 60, 60, 60,
638
+ 60, 60, 60, 60, 60, 60, 60, 60,
639
+ 60, 60, 60, 60, 60, 60, 60, 60,
640
+ 60, 60, 60, 60, 60, 60, 60, 60,
641
+ 60, 60, 60, 60, 60, 60, 60, 60,
642
+ 60, 60, 60, 60, 60, 60, 60, 60,
643
+ 60, 60, 60, 62, 60, 24, 63, 63,
644
+ 63, 63, 63, 63, 63, 63, 63, 63,
645
+ 63, 63, 63, 63, 63, 63, 63, 63,
646
+ 63, 63, 63, 63, 63, 63, 63, 63,
647
+ 63, 63, 63, 63, 63, 63, 63, 63,
648
+ 63, 63, 63, 63, 63, 63, 63, 63,
649
+ 63, 63, 63, 63, 63, 63, 63, 63,
650
+ 63, 63, 68, 63, 24, 63, 63, 63,
651
+ 63, 63, 63, 63, 63, 63, 63, 63,
652
+ 63, 63, 63, 63, 63, 63, 63, 63,
653
+ 63, 63, 63, 63, 63, 63, 63, 63,
654
+ 63, 63, 63, 63, 63, 63, 63, 63,
655
+ 63, 63, 63, 63, 63, 63, 63, 63,
656
+ 63, 63, 63, 63, 63, 63, 63, 63,
657
+ 63, 68, 63, 126, 0
658
+ ]
659
+
660
+ class << self
661
+ attr_accessor :_parser_trans_targs
662
+ private :_parser_trans_targs, :_parser_trans_targs=
663
+ end
664
+ self._parser_trans_targs = [
665
+ 49, 1, 2, 3, 4, 3, 12, 52,
666
+ 4, 5, 12, 52, 49, 6, 5, 7,
667
+ 6, 7, 8, 42, 9, 10, 13, 9,
668
+ 10, 13, 11, 5, 12, 52, 11, 5,
669
+ 12, 52, 51, 14, 15, 16, 20, 54,
670
+ 15, 16, 20, 54, 17, 16, 18, 17,
671
+ 18, 19, 21, 15, 16, 20, 54, 53,
672
+ 22, 23, 14, 31, 22, 23, 31, 24,
673
+ 26, 27, 41, 58, 25, 26, 27, 41,
674
+ 58, 28, 27, 29, 28, 29, 30, 40,
675
+ 23, 32, 33, 34, 38, 56, 33, 34,
676
+ 38, 56, 35, 34, 36, 35, 36, 37,
677
+ 39, 33, 34, 38, 56, 55, 24, 26,
678
+ 27, 41, 58, 25, 57, 44, 44, 45,
679
+ 46, 47, 46, 59, 47, 59, 0, 49,
680
+ 50, 49, 1, 43, 49, 49, 49
681
+ ]
682
+
683
+ class << self
684
+ attr_accessor :_parser_trans_actions
685
+ private :_parser_trans_actions, :_parser_trans_actions=
686
+ end
687
+ self._parser_trans_actions = [
688
+ 1, 0, 2, 3, 4, 0, 4, 4,
689
+ 0, 5, 0, 0, 6, 7, 0, 7,
690
+ 0, 0, 0, 0, 8, 9, 8, 0,
691
+ 10, 0, 11, 12, 13, 13, 0, 14,
692
+ 15, 15, 0, 10, 11, 12, 13, 16,
693
+ 0, 14, 15, 17, 7, 0, 7, 0,
694
+ 0, 10, 0, 18, 19, 20, 21, 22,
695
+ 8, 23, 9, 8, 0, 10, 0, 0,
696
+ 11, 12, 13, 16, 0, 0, 14, 15,
697
+ 17, 7, 0, 7, 0, 0, 0, 10,
698
+ 9, 10, 11, 12, 13, 16, 0, 14,
699
+ 15, 17, 7, 0, 7, 0, 0, 10,
700
+ 10, 18, 19, 20, 21, 22, 8, 18,
701
+ 19, 20, 21, 8, 22, 24, 0, 2,
702
+ 3, 4, 0, 4, 0, 0, 0, 27,
703
+ 28, 29, 24, 0, 30, 31, 32
704
+ ]
705
+
706
+ class << self
707
+ attr_accessor :_parser_to_state_actions
708
+ private :_parser_to_state_actions, :_parser_to_state_actions=
709
+ end
710
+ self._parser_to_state_actions = [
711
+ 0, 0, 0, 0, 0, 0, 0, 0,
712
+ 0, 0, 0, 0, 0, 0, 0, 0,
713
+ 0, 0, 0, 0, 0, 0, 0, 0,
714
+ 0, 0, 0, 0, 0, 0, 0, 0,
715
+ 0, 0, 0, 0, 0, 0, 0, 0,
716
+ 0, 0, 0, 0, 0, 0, 0, 0,
717
+ 25, 25, 0, 0, 0, 0, 0, 0,
718
+ 0, 0, 0, 0
719
+ ]
720
+
721
+ class << self
722
+ attr_accessor :_parser_from_state_actions
723
+ private :_parser_from_state_actions, :_parser_from_state_actions=
724
+ end
725
+ self._parser_from_state_actions = [
726
+ 0, 0, 0, 0, 0, 0, 0, 0,
727
+ 0, 0, 0, 0, 0, 0, 0, 0,
728
+ 0, 0, 0, 0, 0, 0, 0, 0,
729
+ 0, 0, 0, 0, 0, 0, 0, 0,
730
+ 0, 0, 0, 0, 0, 0, 0, 0,
731
+ 0, 0, 0, 0, 0, 0, 0, 0,
732
+ 0, 26, 0, 0, 0, 0, 0, 0,
733
+ 0, 0, 0, 0
734
+ ]
735
+
736
+ class << self
737
+ attr_accessor :_parser_eof_trans
738
+ private :_parser_eof_trans, :_parser_eof_trans=
739
+ end
740
+ self._parser_eof_trans = [
741
+ 0, 1, 1, 1, 1, 13, 13, 13,
742
+ 13, 13, 13, 13, 13, 13, 13, 13,
743
+ 13, 13, 13, 13, 13, 13, 13, 13,
744
+ 13, 13, 13, 13, 13, 13, 13, 13,
745
+ 13, 13, 13, 13, 13, 13, 13, 13,
746
+ 13, 13, 13, 1, 1, 1, 1, 1,
747
+ 0, 0, 122, 125, 126, 125, 126, 125,
748
+ 126, 125, 126, 127
749
+ ]
750
+
751
+ class << self
752
+ attr_accessor :parser_start
753
+ end
754
+ self.parser_start = 49;
755
+ class << self
756
+ attr_accessor :parser_first_final
757
+ end
758
+ self.parser_first_final = 49;
759
+ class << self
760
+ attr_accessor :parser_error
761
+ end
762
+ self.parser_error = 0;
763
+
764
+ class << self
765
+ attr_accessor :parser_en_Closeout
766
+ end
767
+ self.parser_en_Closeout = 48;
768
+ class << self
769
+ attr_accessor :parser_en_main
770
+ end
771
+ self.parser_en_main = 49;
772
+
773
+ # line 118 "scan.rl"
774
+
775
+ # line 776 "scan.rb"
776
+ begin
777
+ p ||= 0
778
+ pe ||= data.length
779
+ cs = parser_start
780
+ ts = nil
781
+ te = nil
782
+ act = 0
783
+ end
784
+ # line 119 "scan.rl"
785
+
786
+ # line 787 "scan.rb"
787
+ begin
788
+ testEof = false
789
+ _slen, _trans, _keys, _inds, _acts, _nacts = nil
790
+ _goto_level = 0
791
+ _resume = 10
792
+ _eof_trans = 15
793
+ _again = 20
794
+ _test_eof = 30
795
+ _out = 40
796
+ while true
797
+ if _goto_level <= 0
798
+ if p == pe
799
+ _goto_level = _test_eof
800
+ next
801
+ end
802
+ if cs == 0
803
+ _goto_level = _out
804
+ next
805
+ end
806
+ end
807
+ if _goto_level <= _resume
808
+ case _parser_from_state_actions[cs]
809
+ when 26 then
810
+ # line 1 "scan.rl"
811
+ begin
812
+ ts = p
813
+ end
814
+ # line 1 "scan.rl"
815
+ # line 816 "scan.rb"
816
+ end
817
+ _keys = cs << 1
818
+ _inds = _parser_index_offsets[cs]
819
+ _slen = _parser_key_spans[cs]
820
+ _trans = if ( _slen > 0 &&
821
+ _parser_trans_keys[_keys] <= data[p] &&
822
+ data[p] <= _parser_trans_keys[_keys + 1]
823
+ ) then
824
+ _parser_indicies[ _inds + data[p] - _parser_trans_keys[_keys] ]
825
+ else
826
+ _parser_indicies[ _inds + _slen ]
827
+ end
828
+ end
829
+ if _goto_level <= _eof_trans
830
+ cs = _parser_trans_targs[_trans]
831
+ if _parser_trans_actions[_trans] != 0
832
+ case _parser_trans_actions[_trans]
833
+ when 24 then
834
+ # line 5 "scan.rl"
835
+ begin
836
+ mark_pfx = p end
837
+ # line 5 "scan.rl"
838
+ when 2 then
839
+ # line 6 "scan.rl"
840
+ begin
841
+
842
+ if data[mark_pfx..p-1] != @prefix
843
+ @nodes.last << data[mark_pfx-1..p]
844
+ begin
845
+ p += 1
846
+ _goto_level = _out
847
+ next
848
+ end
849
+
850
+ end
851
+ end
852
+ # line 6 "scan.rl"
853
+ when 3 then
854
+ # line 12 "scan.rl"
855
+ begin
856
+ mark_stg = p end
857
+ # line 12 "scan.rl"
858
+ when 4 then
859
+ # line 13 "scan.rl"
860
+ begin
861
+ @starttag = data[mark_stg..p-1] end
862
+ # line 13 "scan.rl"
863
+ when 11 then
864
+ # line 14 "scan.rl"
865
+ begin
866
+ mark_attr = p end
867
+ # line 14 "scan.rl"
868
+ when 15 then
869
+ # line 15 "scan.rl"
870
+ begin
871
+
872
+ @attrs[@nat] = @vat
873
+ end
874
+ # line 15 "scan.rl"
875
+ when 5 then
876
+ # line 24 "scan.rl"
877
+ begin
878
+ mark_nat = p end
879
+ # line 24 "scan.rl"
880
+ when 7 then
881
+ # line 25 "scan.rl"
882
+ begin
883
+ @nat = data[mark_nat..p-1] end
884
+ # line 25 "scan.rl"
885
+ when 8 then
886
+ # line 26 "scan.rl"
887
+ begin
888
+ mark_vat = p end
889
+ # line 26 "scan.rl"
890
+ when 10 then
891
+ # line 27 "scan.rl"
892
+ begin
893
+ @vat = data[mark_vat..p-1] end
894
+ # line 27 "scan.rl"
895
+ when 27 then
896
+ # line 78 "scan.rl"
897
+ begin
898
+ te = p+1
899
+ begin
900
+ @nodes.last << data[p]
901
+ @tagstart = p
902
+ end
903
+ end
904
+ # line 78 "scan.rl"
905
+ when 29 then
906
+ # line 78 "scan.rl"
907
+ begin
908
+ te = p
909
+ p = p - 1; begin
910
+ @nodes.last << data[p]
911
+ @tagstart = p
912
+ end
913
+ end
914
+ # line 78 "scan.rl"
915
+ when 1 then
916
+ # line 78 "scan.rl"
917
+ begin
918
+ begin p = ((te))-1; end
919
+ begin
920
+ @nodes.last << data[p]
921
+ @tagstart = p
922
+ end
923
+ end
924
+ # line 78 "scan.rl"
925
+ when 6 then
926
+ # line 1 "scan.rl"
927
+ begin
928
+ case act
929
+ when 1 then
930
+ begin begin p = ((te))-1; end
931
+
932
+ tag = {:prefix=>@prefix, :name=>@starttag, :flavor => @flavor, :attrs => @attrs}
933
+ @prefix = nil
934
+ @name = nil
935
+ @flavor = :tasteless
936
+ @attrs = {}
937
+ @nodes << tag << ''
938
+ begin
939
+ p += 1
940
+ _goto_level = _out
941
+ next
942
+ end
943
+
944
+ end
945
+ when 2 then
946
+ begin begin p = ((te))-1; end
947
+
948
+ @nodes.last << data[p]
949
+ @tagstart = p
950
+ end
951
+ end
952
+ end
953
+ # line 1 "scan.rl"
954
+ when 13 then
955
+ # line 14 "scan.rl"
956
+ begin
957
+ mark_attr = p end
958
+ # line 14 "scan.rl"
959
+ # line 15 "scan.rl"
960
+ begin
961
+
962
+ @attrs[@nat] = @vat
963
+ end
964
+ # line 15 "scan.rl"
965
+ when 14 then
966
+ # line 15 "scan.rl"
967
+ begin
968
+
969
+ @attrs[@nat] = @vat
970
+ end
971
+ # line 15 "scan.rl"
972
+ # line 24 "scan.rl"
973
+ begin
974
+ mark_nat = p end
975
+ # line 24 "scan.rl"
976
+ when 18 then
977
+ # line 26 "scan.rl"
978
+ begin
979
+ mark_vat = p end
980
+ # line 26 "scan.rl"
981
+ # line 14 "scan.rl"
982
+ begin
983
+ mark_attr = p end
984
+ # line 14 "scan.rl"
985
+ when 9 then
986
+ # line 26 "scan.rl"
987
+ begin
988
+ mark_vat = p end
989
+ # line 26 "scan.rl"
990
+ # line 27 "scan.rl"
991
+ begin
992
+ @vat = data[mark_vat..p-1] end
993
+ # line 27 "scan.rl"
994
+ when 23 then
995
+ # line 27 "scan.rl"
996
+ begin
997
+ @vat = data[mark_vat..p-1] end
998
+ # line 27 "scan.rl"
999
+ # line 26 "scan.rl"
1000
+ begin
1001
+ mark_vat = p end
1002
+ # line 26 "scan.rl"
1003
+ when 31 then
1004
+ # line 29 "scan.rl"
1005
+ begin
1006
+ @flavor = :open end
1007
+ # line 29 "scan.rl"
1008
+ # line 69 "scan.rl"
1009
+ begin
1010
+ te = p
1011
+ p = p - 1; begin
1012
+ tag = {:prefix=>@prefix, :name=>@starttag, :flavor => @flavor, :attrs => @attrs}
1013
+ @prefix = nil
1014
+ @name = nil
1015
+ @flavor = :tasteless
1016
+ @attrs = {}
1017
+ @nodes << tag << ''
1018
+ begin
1019
+ p += 1
1020
+ _goto_level = _out
1021
+ next
1022
+ end
1023
+
1024
+ end
1025
+ end
1026
+ # line 69 "scan.rl"
1027
+ when 30 then
1028
+ # line 30 "scan.rl"
1029
+ begin
1030
+ @flavor = :self end
1031
+ # line 30 "scan.rl"
1032
+ # line 69 "scan.rl"
1033
+ begin
1034
+ te = p
1035
+ p = p - 1; begin
1036
+ tag = {:prefix=>@prefix, :name=>@starttag, :flavor => @flavor, :attrs => @attrs}
1037
+ @prefix = nil
1038
+ @name = nil
1039
+ @flavor = :tasteless
1040
+ @attrs = {}
1041
+ @nodes << tag << ''
1042
+ begin
1043
+ p += 1
1044
+ _goto_level = _out
1045
+ next
1046
+ end
1047
+
1048
+ end
1049
+ end
1050
+ # line 69 "scan.rl"
1051
+ when 32 then
1052
+ # line 31 "scan.rl"
1053
+ begin
1054
+ @flavor = :close end
1055
+ # line 31 "scan.rl"
1056
+ # line 69 "scan.rl"
1057
+ begin
1058
+ te = p
1059
+ p = p - 1; begin
1060
+ tag = {:prefix=>@prefix, :name=>@starttag, :flavor => @flavor, :attrs => @attrs}
1061
+ @prefix = nil
1062
+ @name = nil
1063
+ @flavor = :tasteless
1064
+ @attrs = {}
1065
+ @nodes << tag << ''
1066
+ begin
1067
+ p += 1
1068
+ _goto_level = _out
1069
+ next
1070
+ end
1071
+
1072
+ end
1073
+ end
1074
+ # line 69 "scan.rl"
1075
+ when 22 then
1076
+ # line 1 "scan.rl"
1077
+ begin
1078
+ te = p+1
1079
+ end
1080
+ # line 1 "scan.rl"
1081
+ # line 69 "scan.rl"
1082
+ begin
1083
+ act = 1; end
1084
+ # line 69 "scan.rl"
1085
+ when 28 then
1086
+ # line 1 "scan.rl"
1087
+ begin
1088
+ te = p+1
1089
+ end
1090
+ # line 1 "scan.rl"
1091
+ # line 78 "scan.rl"
1092
+ begin
1093
+ act = 2; end
1094
+ # line 78 "scan.rl"
1095
+ when 12 then
1096
+ # line 14 "scan.rl"
1097
+ begin
1098
+ mark_attr = p end
1099
+ # line 14 "scan.rl"
1100
+ # line 15 "scan.rl"
1101
+ begin
1102
+
1103
+ @attrs[@nat] = @vat
1104
+ end
1105
+ # line 15 "scan.rl"
1106
+ # line 24 "scan.rl"
1107
+ begin
1108
+ mark_nat = p end
1109
+ # line 24 "scan.rl"
1110
+ when 20 then
1111
+ # line 26 "scan.rl"
1112
+ begin
1113
+ mark_vat = p end
1114
+ # line 26 "scan.rl"
1115
+ # line 14 "scan.rl"
1116
+ begin
1117
+ mark_attr = p end
1118
+ # line 14 "scan.rl"
1119
+ # line 15 "scan.rl"
1120
+ begin
1121
+
1122
+ @attrs[@nat] = @vat
1123
+ end
1124
+ # line 15 "scan.rl"
1125
+ when 17 then
1126
+ # line 1 "scan.rl"
1127
+ begin
1128
+ te = p+1
1129
+ end
1130
+ # line 1 "scan.rl"
1131
+ # line 15 "scan.rl"
1132
+ begin
1133
+
1134
+ @attrs[@nat] = @vat
1135
+ end
1136
+ # line 15 "scan.rl"
1137
+ # line 69 "scan.rl"
1138
+ begin
1139
+ act = 1; end
1140
+ # line 69 "scan.rl"
1141
+ when 19 then
1142
+ # line 26 "scan.rl"
1143
+ begin
1144
+ mark_vat = p end
1145
+ # line 26 "scan.rl"
1146
+ # line 14 "scan.rl"
1147
+ begin
1148
+ mark_attr = p end
1149
+ # line 14 "scan.rl"
1150
+ # line 15 "scan.rl"
1151
+ begin
1152
+
1153
+ @attrs[@nat] = @vat
1154
+ end
1155
+ # line 15 "scan.rl"
1156
+ # line 24 "scan.rl"
1157
+ begin
1158
+ mark_nat = p end
1159
+ # line 24 "scan.rl"
1160
+ when 16 then
1161
+ # line 1 "scan.rl"
1162
+ begin
1163
+ te = p+1
1164
+ end
1165
+ # line 1 "scan.rl"
1166
+ # line 14 "scan.rl"
1167
+ begin
1168
+ mark_attr = p end
1169
+ # line 14 "scan.rl"
1170
+ # line 15 "scan.rl"
1171
+ begin
1172
+
1173
+ @attrs[@nat] = @vat
1174
+ end
1175
+ # line 15 "scan.rl"
1176
+ # line 69 "scan.rl"
1177
+ begin
1178
+ act = 1; end
1179
+ # line 69 "scan.rl"
1180
+ when 21 then
1181
+ # line 1 "scan.rl"
1182
+ begin
1183
+ te = p+1
1184
+ end
1185
+ # line 1 "scan.rl"
1186
+ # line 26 "scan.rl"
1187
+ begin
1188
+ mark_vat = p end
1189
+ # line 26 "scan.rl"
1190
+ # line 14 "scan.rl"
1191
+ begin
1192
+ mark_attr = p end
1193
+ # line 14 "scan.rl"
1194
+ # line 15 "scan.rl"
1195
+ begin
1196
+
1197
+ @attrs[@nat] = @vat
1198
+ end
1199
+ # line 15 "scan.rl"
1200
+ # line 69 "scan.rl"
1201
+ begin
1202
+ act = 1; end
1203
+ # line 69 "scan.rl"
1204
+ # line 1205 "scan.rb"
1205
+ end
1206
+ end
1207
+ end
1208
+ if _goto_level <= _again
1209
+ case _parser_to_state_actions[cs]
1210
+ when 25 then
1211
+ # line 1 "scan.rl"
1212
+ begin
1213
+ ts = nil; end
1214
+ # line 1 "scan.rl"
1215
+ # line 1216 "scan.rb"
1216
+ end
1217
+
1218
+ if cs == 0
1219
+ _goto_level = _out
1220
+ next
1221
+ end
1222
+ p += 1
1223
+ if p != pe
1224
+ _goto_level = _resume
1225
+ next
1226
+ end
1227
+ end
1228
+ if _goto_level <= _test_eof
1229
+ if p == eof
1230
+ if _parser_eof_trans[cs] > 0
1231
+ _trans = _parser_eof_trans[cs] - 1;
1232
+ _goto_level = _eof_trans
1233
+ next;
1234
+ end
1235
+ end
1236
+
1237
+ end
1238
+ if _goto_level <= _out
1239
+ break
1240
+ end
1241
+ end
1242
+ end
1243
+ # line 120 "scan.rl"
1244
+ return p
1245
+ end
1246
+ end
1247
+ end