redsnow 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +39 -8
  3. data/Guardfile +7 -0
  4. data/Rakefile +18 -21
  5. data/Vagrantfile +9 -9
  6. data/lib/redsnow.rb +19 -32
  7. data/lib/redsnow/binding.rb +161 -166
  8. data/lib/redsnow/blueprint.rb +95 -103
  9. data/lib/redsnow/object.rb +3 -4
  10. data/lib/redsnow/parseresult.rb +31 -40
  11. data/lib/redsnow/sourcemap.rb +71 -96
  12. data/lib/redsnow/version.rb +2 -1
  13. data/redsnow.gemspec +23 -23
  14. metadata +22 -531
  15. data/doc/RedSnow.html +0 -321
  16. data/doc/RedSnow/Action.html +0 -702
  17. data/doc/RedSnow/Binding.html +0 -135
  18. data/doc/RedSnow/Blueprint.html +0 -657
  19. data/doc/RedSnow/BlueprintNode.html +0 -139
  20. data/doc/RedSnow/ErrorCodes.html +0 -165
  21. data/doc/RedSnow/Headers.html +0 -456
  22. data/doc/RedSnow/KeyValueCollection.html +0 -343
  23. data/doc/RedSnow/Location.html +0 -391
  24. data/doc/RedSnow/Metadata.html +0 -343
  25. data/doc/RedSnow/NamedBlueprintNode.html +0 -444
  26. data/doc/RedSnow/Object.html +0 -295
  27. data/doc/RedSnow/Parameter.html +0 -881
  28. data/doc/RedSnow/Parameters.html +0 -349
  29. data/doc/RedSnow/ParseResult.html +0 -570
  30. data/doc/RedSnow/Payload.html +0 -775
  31. data/doc/RedSnow/Resource.html +0 -790
  32. data/doc/RedSnow/ResourceGroup.html +0 -521
  33. data/doc/RedSnow/TransactionExample.html +0 -700
  34. data/doc/RedSnow/WarningCodes.html +0 -210
  35. data/doc/_index.html +0 -342
  36. data/doc/class_list.html +0 -54
  37. data/doc/css/common.css +0 -1
  38. data/doc/css/full_list.css +0 -57
  39. data/doc/css/style.css +0 -339
  40. data/doc/file.README.html +0 -136
  41. data/doc/file_list.html +0 -56
  42. data/doc/frames.html +0 -26
  43. data/doc/index.html +0 -136
  44. data/doc/js/app.js +0 -219
  45. data/doc/js/full_list.js +0 -178
  46. data/doc/js/jquery.js +0 -4
  47. data/doc/method_list.html +0 -347
  48. data/doc/top-level-namespace.html +0 -112
  49. data/ext/snowcrash/Gemfile +0 -8
  50. data/ext/snowcrash/Gemfile.lock +0 -40
  51. data/ext/snowcrash/LICENSE +0 -22
  52. data/ext/snowcrash/README.md +0 -118
  53. data/ext/snowcrash/bin/test-libsnowcrash +0 -0
  54. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ActionParser.o +0 -0
  55. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-AssetParser.o +0 -0
  56. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-Blueprint.o +0 -0
  57. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-BlueprintParser.o +0 -0
  58. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-HeaderParser.o +0 -0
  59. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-HeadersParser.o +0 -0
  60. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-Indentation.o +0 -0
  61. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ListUtility.o +0 -0
  62. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-MarkdownBlock.o +0 -0
  63. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-MarkdownParser.o +0 -0
  64. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ParameterDefinitonParser.o +0 -0
  65. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ParameterParser.o +0 -0
  66. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ParametersParser.o +0 -0
  67. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-Parser.o +0 -0
  68. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-PayloadParser.o +0 -0
  69. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-RegexMatch.o +0 -0
  70. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ResouceGroupParser.o +0 -0
  71. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ResourceGroupParser.o +0 -0
  72. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ResourceParser.o +0 -0
  73. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-SectionParser.o +0 -0
  74. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-SymbolIdentifier.o +0 -0
  75. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-SymbolTable.o +0 -0
  76. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-UriTemplateParser.o +0 -0
  77. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-ValuesParser.o +0 -0
  78. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-Warnings.o +0 -0
  79. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-csnowcrash.o +0 -0
  80. data/ext/snowcrash/build/out/Release/obj.target/test-libsnowcrash/test/test-snowcrash.o +0 -0
  81. data/ext/snowcrash/build/out/Release/test-libsnowcrash +0 -0
  82. data/ext/snowcrash/build/test-libsnowcrash.target.mk +0 -170
  83. data/ext/snowcrash/ext/cmdline/LICENSE +0 -30
  84. data/ext/snowcrash/ext/cmdline/README.rst +0 -191
  85. data/ext/snowcrash/ext/cmdline/cmdline.h +0 -817
  86. data/ext/snowcrash/ext/cmdline/test.cpp +0 -50
  87. data/ext/snowcrash/ext/cmdline/test2.cpp +0 -61
  88. data/ext/snowcrash/ext/markdown-parser/LICENSE +0 -22
  89. data/ext/snowcrash/ext/markdown-parser/README.md +0 -11
  90. data/ext/snowcrash/ext/markdown-parser/ext/sundown/README.markdown +0 -141
  91. data/ext/snowcrash/ext/markdown-parser/markdownparser.xcodeproj/project.pbxproj +0 -448
  92. data/ext/snowcrash/ext/markdown-parser/msvc/test-markdown/test-markdown.vcproj +0 -195
  93. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/LICENSE_1_0.txt +0 -23
  94. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/README.md +0 -24
  95. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/catch-logo-small.png +0 -0
  96. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/assertions.md +0 -64
  97. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/build-systems.md +0 -36
  98. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/command-line.md +0 -155
  99. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/contributing.md +0 -19
  100. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/logging.md +0 -52
  101. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/own-main.md +0 -68
  102. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/reference-index.md +0 -14
  103. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/test-cases-and-sections.md +0 -60
  104. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/test-fixtures.md +0 -32
  105. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/tutorial.md +0 -228
  106. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/whats-changed.md +0 -24
  107. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/why-catch.md +0 -42
  108. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/catch.hpp +0 -202
  109. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/catch_runner.hpp +0 -224
  110. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/catch_with_main.hpp +0 -15
  111. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/external/clara.h +0 -868
  112. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/external/tbc_text_format.h +0 -153
  113. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_approx.hpp +0 -91
  114. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_assertionresult.h +0 -71
  115. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_assertionresult.hpp +0 -91
  116. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_capture.hpp +0 -179
  117. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_clara.h +0 -32
  118. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_commandline.hpp +0 -145
  119. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_common.h +0 -119
  120. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_common.hpp +0 -86
  121. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_compiler_capabilities.h +0 -123
  122. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_config.hpp +0 -178
  123. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_console_colour.hpp +0 -66
  124. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_console_colour_impl.hpp +0 -166
  125. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_context.h +0 -53
  126. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_context_impl.hpp +0 -112
  127. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_debugger.h +0 -49
  128. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_debugger.hpp +0 -100
  129. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_default_main.hpp +0 -38
  130. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_evaluate.hpp +0 -178
  131. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_exception_translator_registry.hpp +0 -75
  132. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_expression_decomposer.hpp +0 -31
  133. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_expression_lhs.hpp +0 -105
  134. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_expressionresult_builder.h +0 -63
  135. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_expressionresult_builder.hpp +0 -98
  136. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_generators.hpp +0 -190
  137. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_generators_impl.hpp +0 -86
  138. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_impl.hpp +0 -92
  139. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_capture.h +0 -46
  140. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_config.h +0 -54
  141. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_exception.h +0 -66
  142. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_generators.h +0 -32
  143. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_registry_hub.h +0 -44
  144. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_reporter.h +0 -265
  145. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_runner.h +0 -19
  146. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_interfaces_testcase.h +0 -37
  147. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_legacy_reporter_adapter.h +0 -59
  148. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_legacy_reporter_adapter.hpp +0 -82
  149. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_list.hpp +0 -150
  150. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_matchers.hpp +0 -233
  151. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_message.h +0 -65
  152. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_message.hpp +0 -43
  153. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_notimplemented_exception.h +0 -35
  154. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_notimplemented_exception.hpp +0 -30
  155. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_objc.hpp +0 -203
  156. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_objc_arc.hpp +0 -51
  157. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_option.hpp +0 -75
  158. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_platform.h +0 -20
  159. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_ptr.hpp +0 -94
  160. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_registry_hub.hpp +0 -83
  161. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_reporter_registrars.hpp +0 -74
  162. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_reporter_registry.hpp +0 -45
  163. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_result_type.h +0 -66
  164. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_runner_impl.hpp +0 -319
  165. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_section.h +0 -55
  166. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_section.hpp +0 -40
  167. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_section_info.h +0 -31
  168. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_section_info.hpp +0 -113
  169. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_sfinae.hpp +0 -44
  170. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_stream.h +0 -33
  171. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_stream.hpp +0 -83
  172. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_streambuf.h +0 -23
  173. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_tags.h +0 -109
  174. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_tags.hpp +0 -137
  175. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_case_info.h +0 -84
  176. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_case_info.hpp +0 -166
  177. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_case_registry_impl.hpp +0 -146
  178. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_case_tracker.hpp +0 -148
  179. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_registry.hpp +0 -120
  180. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_spec.h +0 -65
  181. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_test_spec.hpp +0 -133
  182. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_text.h +0 -24
  183. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_timer.h +0 -35
  184. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_timer.hpp +0 -63
  185. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_tostring.hpp +0 -276
  186. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_totals.hpp +0 -67
  187. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_version.h +0 -37
  188. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_version.hpp +0 -19
  189. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/internal/catch_xmlwriter.hpp +0 -218
  190. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/reporters/catch_reporter_bases.hpp +0 -203
  191. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/reporters/catch_reporter_console.hpp +0 -411
  192. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/reporters/catch_reporter_junit.hpp +0 -226
  193. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/include/reporters/catch_reporter_xml.hpp +0 -151
  194. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/CMake/CMakeLists.txt +0 -38
  195. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/ApproxTests.cpp +0 -112
  196. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/BDDTests.cpp +0 -68
  197. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/Baselines/console.std.approved.txt +0 -778
  198. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/Baselines/console.sw.approved.txt +0 -6995
  199. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/Baselines/console.swa4.approved.txt +0 -322
  200. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/Baselines/junit.sw.approved.txt +0 -562
  201. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/Baselines/xml.sw.approved.txt +0 -7251
  202. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/ClassTests.cpp +0 -57
  203. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/ConditionTests.cpp +0 -334
  204. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/ExceptionTests.cpp +0 -153
  205. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/GeneratorTests.cpp +0 -42
  206. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/MessageTests.cpp +0 -121
  207. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/MiscTests.cpp +0 -341
  208. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SectionTrackerTests.cpp +0 -164
  209. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_common.cpp +0 -2
  210. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_console_colour.cpp +0 -2
  211. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_debugger.cpp +0 -2
  212. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_capture.cpp +0 -2
  213. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_config.cpp +0 -1
  214. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_exception.cpp +0 -1
  215. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_generators.cpp +0 -1
  216. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_registry_hub.cpp +0 -2
  217. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_reporter.cpp +0 -1
  218. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_runner.cpp +0 -1
  219. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_testcase.cpp +0 -1
  220. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_message.cpp +0 -2
  221. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_option.cpp +0 -2
  222. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_ptr.cpp +0 -2
  223. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_stream.cpp +0 -2
  224. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_streambuf.cpp +0 -2
  225. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_tags.cpp +0 -2
  226. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/SurrogateCpps/catch_xmlwriter.cpp +0 -2
  227. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/TestMain.cpp +0 -541
  228. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/TrickyTests.cpp +0 -396
  229. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/VariadicMacrosTests.cpp +0 -31
  230. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/SelfTest/makefile +0 -21
  231. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/VS2008/TestCatch/TestCatch.sln +0 -20
  232. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/VS2008/TestCatch/TestCatch/TestCatch.cpp +0 -8
  233. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/VS2008/TestCatch/TestCatch/TestCatch.vcproj +0 -394
  234. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/VS2010/TestCatch/TestCatch.sln +0 -20
  235. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/VS2010/TestCatch/TestCatch/TestCatch.vcxproj +0 -148
  236. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTest.xcodeproj/project.pbxproj +0 -685
  237. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  238. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTest.xcodeproj/project.xcworkspace/xcshareddata/CatchSelfTest.xccheckout +0 -41
  239. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTest/CatchSelfTest.1 +0 -79
  240. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTest/catch_text.cpp +0 -2
  241. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTestSingle.xcodeproj/project.pbxproj +0 -258
  242. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTestSingle.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  243. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTestSingle.xcodeproj/project.xcworkspace/xcshareddata/CatchSelfTestSingle.xccheckout +0 -41
  244. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/CatchSelfTest/CatchSelfTestSingle/dummy.txt +0 -0
  245. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest.xcodeproj/project.pbxproj +0 -265
  246. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  247. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest.xcodeproj/project.xcworkspace/xcshareddata/OCTest.xccheckout +0 -41
  248. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/CatchOCTestCase.h +0 -25
  249. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/CatchOCTestCase.mm +0 -83
  250. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/Main.mm +0 -2
  251. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/OCTest.1 +0 -79
  252. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/OCTest.mm +0 -28
  253. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/TestObj.h +0 -28
  254. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/OCTest/OCTest/TestObj.m +0 -25
  255. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest.xcodeproj/project.pbxproj +0 -299
  256. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  257. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest/OCTest.mm +0 -27
  258. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest/TestObj.h +0 -25
  259. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest/TestObj.m +0 -18
  260. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest/en.lproj/InfoPlist.strings +0 -2
  261. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest/iOSTest-Info.plist +0 -47
  262. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/XCode/iOSTest/iOSTest/iOSTest-Prefix.pch +0 -14
  263. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/runners/iTchRunner/internal/iTchRunnerAppDelegate.h +0 -114
  264. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/runners/iTchRunner/internal/iTchRunnerMainView.h +0 -189
  265. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/runners/iTchRunner/internal/iTchRunnerReporter.h +0 -115
  266. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/runners/iTchRunner/itChRunnerMain.mm +0 -27
  267. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/projects/runners/iTchRunner/readme +0 -6
  268. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/scripts/approvalTests.py +0 -99
  269. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/scripts/approve.py +0 -29
  270. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/scripts/generateSingleHeader.py +0 -152
  271. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/scripts/scriptCommon.py +0 -4
  272. data/ext/snowcrash/ext/markdown-parser/test/ext/Catch/single_include/catch.hpp +0 -8544
  273. data/ext/snowcrash/ext/markdown-parser/test/test-ByteBuffer.cc +0 -83
  274. data/ext/snowcrash/ext/markdown-parser/test/test-MarkdownParser.cc +0 -628
  275. data/ext/snowcrash/ext/markdown-parser/test/test-libmarkdownparser.cc +0 -10
  276. data/ext/snowcrash/features/fixtures/ast.json +0 -154
  277. data/ext/snowcrash/features/fixtures/ast.yaml +0 -87
  278. data/ext/snowcrash/features/fixtures/blueprint.apib +0 -84
  279. data/ext/snowcrash/features/fixtures/invalid_blueprint.apib +0 -4
  280. data/ext/snowcrash/features/parse.feature +0 -23
  281. data/ext/snowcrash/features/step_definitions/file_content_step.rb +0 -8
  282. data/ext/snowcrash/features/support/env.rb +0 -7
  283. data/ext/snowcrash/features/support/setup.rb +0 -1
  284. data/ext/snowcrash/features/validate.feature +0 -37
  285. data/ext/snowcrash/features/version.feature +0 -10
  286. data/ext/snowcrash/snowcrash.xcodeproj/project.pbxproj +0 -798
  287. data/ext/snowcrash/test/README.md +0 -7
  288. data/ext/snowcrash/test/performance/fixtures/fixture-1.apib +0 -174
  289. data/ext/snowcrash/test/performance/fixtures/fixture-2.apib +0 -2455
  290. data/ext/snowcrash/test/performance/fixtures/fixture-3.apib +0 -10363
  291. data/ext/snowcrash/test/performance/fixtures/fixture-4.apib +0 -8390
  292. data/ext/snowcrash/test/performance/perf-snowcrash.cc +0 -162
  293. data/ext/snowcrash/test/snowcrashtest.h +0 -88
  294. data/ext/snowcrash/test/test-ActionParser.cc +0 -491
  295. data/ext/snowcrash/test/test-AssetParser.cc +0 -224
  296. data/ext/snowcrash/test/test-Blueprint.cc +0 -32
  297. data/ext/snowcrash/test/test-BlueprintParser.cc +0 -462
  298. data/ext/snowcrash/test/test-HeadersParser.cc +0 -256
  299. data/ext/snowcrash/test/test-Indentation.cc +0 -336
  300. data/ext/snowcrash/test/test-ParameterParser.cc +0 -499
  301. data/ext/snowcrash/test/test-ParametersParser.cc +0 -355
  302. data/ext/snowcrash/test/test-PayloadParser.cc +0 -657
  303. data/ext/snowcrash/test/test-RegexMatch.cc +0 -35
  304. data/ext/snowcrash/test/test-ResourceGroupParser.cc +0 -457
  305. data/ext/snowcrash/test/test-ResourceParser.cc +0 -947
  306. data/ext/snowcrash/test/test-SectionParser.cc +0 -81
  307. data/ext/snowcrash/test/test-StringUtility.cc +0 -65
  308. data/ext/snowcrash/test/test-SymbolIdentifier.cc +0 -53
  309. data/ext/snowcrash/test/test-SymbolTable.cc +0 -31
  310. data/ext/snowcrash/test/test-UriTemplateParser.cc +0 -333
  311. data/ext/snowcrash/test/test-ValuesParser.cc +0 -106
  312. data/ext/snowcrash/test/test-Warnings.cc +0 -94
  313. data/ext/snowcrash/test/test-csnowcrash.cc +0 -404
  314. data/ext/snowcrash/test/test-snowcrash.cc +0 -664
  315. data/ext/snowcrash/test/vendor/Catch/LICENSE_1_0.txt +0 -23
  316. data/ext/snowcrash/test/vendor/Catch/README.md +0 -24
  317. data/ext/snowcrash/test/vendor/Catch/catch-logo-small.png +0 -0
  318. data/ext/snowcrash/test/vendor/Catch/docs/assertions.md +0 -59
  319. data/ext/snowcrash/test/vendor/Catch/docs/command-line.md +0 -137
  320. data/ext/snowcrash/test/vendor/Catch/docs/logging.md +0 -52
  321. data/ext/snowcrash/test/vendor/Catch/docs/own-main.md +0 -68
  322. data/ext/snowcrash/test/vendor/Catch/docs/reference-index.md +0 -13
  323. data/ext/snowcrash/test/vendor/Catch/docs/test-fixtures.md +0 -32
  324. data/ext/snowcrash/test/vendor/Catch/docs/tutorial.md +0 -100
  325. data/ext/snowcrash/test/vendor/Catch/docs/whats-changed.md +0 -24
  326. data/ext/snowcrash/test/vendor/Catch/docs/why-catch.md +0 -42
  327. data/ext/snowcrash/test/vendor/Catch/include/catch.hpp +0 -182
  328. data/ext/snowcrash/test/vendor/Catch/include/catch_runner.hpp +0 -236
  329. data/ext/snowcrash/test/vendor/Catch/include/catch_with_main.hpp +0 -15
  330. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_approx.hpp +0 -91
  331. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_assertionresult.h +0 -65
  332. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_assertionresult.hpp +0 -91
  333. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_capture.hpp +0 -175
  334. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_commandline.hpp +0 -129
  335. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_common.h +0 -148
  336. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_compiler_capabilities.h +0 -85
  337. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_config.hpp +0 -182
  338. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_console_colour.hpp +0 -66
  339. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_console_colour_impl.hpp +0 -153
  340. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_context.h +0 -53
  341. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_context_impl.hpp +0 -112
  342. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_debugger.hpp +0 -116
  343. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_default_main.hpp +0 -38
  344. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_evaluate.hpp +0 -178
  345. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_exception_translator_registry.hpp +0 -74
  346. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_expression_decomposer.hpp +0 -31
  347. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_expression_lhs.hpp +0 -97
  348. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_expressionresult_builder.h +0 -63
  349. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_expressionresult_builder.hpp +0 -98
  350. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_generators.hpp +0 -190
  351. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_generators_impl.hpp +0 -86
  352. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_impl.hpp +0 -97
  353. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_capture.h +0 -46
  354. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_config.h +0 -32
  355. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_exception.h +0 -66
  356. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_generators.h +0 -32
  357. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_registry_hub.h +0 -45
  358. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_reporter.h +0 -339
  359. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_runner.h +0 -23
  360. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_interfaces_testcase.h +0 -34
  361. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_legacy_reporter_adapter.h +0 -39
  362. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_legacy_reporter_adapter.hpp +0 -84
  363. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_list.hpp +0 -198
  364. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_matchers.hpp +0 -233
  365. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_message.h +0 -65
  366. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_message.hpp +0 -43
  367. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_notimplemented_exception.h +0 -35
  368. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_notimplemented_exception.hpp +0 -30
  369. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_objc.hpp +0 -202
  370. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_objc_arc.hpp +0 -51
  371. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_option.hpp +0 -67
  372. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_ptr.hpp +0 -94
  373. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_registry_hub.hpp +0 -83
  374. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_reporter_registrars.hpp +0 -75
  375. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_reporter_registry.hpp +0 -45
  376. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_result_type.h +0 -66
  377. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_runner_impl.hpp +0 -326
  378. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_running_test.hpp +0 -117
  379. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_section.hpp +0 -56
  380. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_section_info.hpp +0 -113
  381. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_sfinae.hpp +0 -44
  382. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_stream.hpp +0 -90
  383. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_streambuf.h +0 -21
  384. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_tags.hpp +0 -193
  385. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_test_case_info.h +0 -82
  386. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_test_case_info.hpp +0 -127
  387. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_test_case_registry_impl.hpp +0 -151
  388. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_test_registry.hpp +0 -120
  389. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_test_spec.h +0 -166
  390. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_text.h +0 -61
  391. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_text.hpp +0 -92
  392. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_tostring.hpp +0 -224
  393. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_totals.hpp +0 -67
  394. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_version.h +0 -37
  395. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_version.hpp +0 -19
  396. data/ext/snowcrash/test/vendor/Catch/include/internal/catch_xmlwriter.hpp +0 -211
  397. data/ext/snowcrash/test/vendor/Catch/include/internal/clara.h +0 -553
  398. data/ext/snowcrash/test/vendor/Catch/include/reporters/catch_reporter_basic.hpp +0 -353
  399. data/ext/snowcrash/test/vendor/Catch/include/reporters/catch_reporter_console.hpp +0 -397
  400. data/ext/snowcrash/test/vendor/Catch/include/reporters/catch_reporter_junit.hpp +0 -252
  401. data/ext/snowcrash/test/vendor/Catch/include/reporters/catch_reporter_xml.hpp +0 -145
  402. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/ApproxTests.cpp +0 -112
  403. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/BDDTests.cpp +0 -68
  404. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/Baselines/approvedResults.txt +0 -14686
  405. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/ClassTests.cpp +0 -57
  406. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/CmdLineTests.cpp +0 -191
  407. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/ConditionTests.cpp +0 -348
  408. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/ExceptionTests.cpp +0 -143
  409. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/GeneratorTests.cpp +0 -42
  410. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/MessageTests.cpp +0 -102
  411. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/MiscTests.cpp +0 -343
  412. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_common.cpp +0 -2
  413. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_console_colour.cpp +0 -2
  414. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_debugger.cpp +0 -2
  415. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_capture.cpp +0 -2
  416. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_config.cpp +0 -1
  417. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_exception.cpp +0 -1
  418. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_generators.cpp +0 -1
  419. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_registry_hub.cpp +0 -2
  420. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_reporter.cpp +0 -1
  421. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_runner.cpp +0 -1
  422. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_interfaces_testcase.cpp +0 -1
  423. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_message.cpp +0 -2
  424. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_option.cpp +0 -2
  425. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_ptr.cpp +0 -2
  426. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_stream.cpp +0 -2
  427. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_streambuf.cpp +0 -2
  428. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_tags.cpp +0 -2
  429. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/SurrogateCpps/catch_xmlwriter.cpp +0 -2
  430. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/TestMain.cpp +0 -561
  431. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/TrickyTests.cpp +0 -382
  432. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/VariadicMacrosTests.cpp +0 -31
  433. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/catch_self_test.cpp +0 -31
  434. data/ext/snowcrash/test/vendor/Catch/projects/SelfTest/catch_self_test.hpp +0 -177
  435. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/TestCatch.sln +0 -20
  436. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/TestCatch/ReadMe.txt +0 -33
  437. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/TestCatch/TestCatch.cpp +0 -8
  438. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/TestCatch/TestCatch.vcproj +0 -398
  439. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/UpgradeLog.XML +0 -12
  440. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/_UpgradeReport_Files/UpgradeReport.css +0 -207
  441. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/_UpgradeReport_Files/UpgradeReport.xslt +0 -232
  442. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/_UpgradeReport_Files/UpgradeReport_Minus.gif +0 -0
  443. data/ext/snowcrash/test/vendor/Catch/projects/VS2008/TestCatch/_UpgradeReport_Files/UpgradeReport_Plus.gif +0 -0
  444. data/ext/snowcrash/test/vendor/Catch/projects/VS2010/TestCatch/TestCatch.sln +0 -20
  445. data/ext/snowcrash/test/vendor/Catch/projects/VS2010/TestCatch/TestCatch/ReadMe.txt +0 -33
  446. data/ext/snowcrash/test/vendor/Catch/projects/VS2010/TestCatch/TestCatch/TestCatch.cpp +0 -8
  447. data/ext/snowcrash/test/vendor/Catch/projects/VS2010/TestCatch/TestCatch/TestCatch.vcxproj +0 -149
  448. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTest.xcodeproj/project.pbxproj +0 -440
  449. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  450. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTest.xcodeproj/xcuserdata/phil.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist +0 -81
  451. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTest.xcodeproj/xcuserdata/phil.xcuserdatad/xcschemes/Test.xcscheme +0 -154
  452. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTest.xcodeproj/xcuserdata/phil.xcuserdatad/xcschemes/xcschememanagement.plist +0 -22
  453. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTestSingle/CatchSelfTestSingle.1 +0 -79
  454. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/CatchSelfTestSingle/CatchSelfTestSingle.xcodeproj/project.pbxproj +0 -246
  455. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/CatchOCTestCase.h +0 -25
  456. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/CatchOCTestCase.mm +0 -45
  457. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/Main.mm +0 -1
  458. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/OCTest.1 +0 -79
  459. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/OCTest.mm +0 -28
  460. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/OCTest.xcodeproj/project.pbxproj +0 -259
  461. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/OCTest_Prefix.pch +0 -7
  462. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/TestObj.h +0 -25
  463. data/ext/snowcrash/test/vendor/Catch/projects/XCode3/OCTest/TestObj.m +0 -18
  464. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTest.xcodeproj/project.pbxproj +0 -667
  465. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  466. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTest.xcodeproj/xcuserdata/Phil.xcuserdatad/xcschemes/xcschememanagement.plist +0 -22
  467. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTest/CatchSelfTest.1 +0 -79
  468. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTest/catch_text.cpp +0 -2
  469. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTestSingle.xcodeproj/project.pbxproj +0 -264
  470. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTestSingle.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  471. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/CatchSelfTest/CatchSelfTestSingle/dummy.txt +0 -0
  472. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest.xcodeproj/project.pbxproj +0 -249
  473. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  474. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/CatchOCTestCase.h +0 -25
  475. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/CatchOCTestCase.mm +0 -82
  476. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/Main.mm +0 -2
  477. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/OCTest.1 +0 -79
  478. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/OCTest.mm +0 -28
  479. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/TestObj.h +0 -28
  480. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/OCTest/OCTest/TestObj.m +0 -25
  481. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest.xcodeproj/project.pbxproj +0 -299
  482. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  483. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest/OCTest.mm +0 -27
  484. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest/TestObj.h +0 -25
  485. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest/TestObj.m +0 -18
  486. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest/en.lproj/InfoPlist.strings +0 -2
  487. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest/iOSTest-Info.plist +0 -47
  488. data/ext/snowcrash/test/vendor/Catch/projects/XCode4/iOSTest/iOSTest/iOSTest-Prefix.pch +0 -14
  489. data/ext/snowcrash/test/vendor/Catch/projects/runners/iTchRunner/internal/iTchRunnerAppDelegate.h +0 -114
  490. data/ext/snowcrash/test/vendor/Catch/projects/runners/iTchRunner/internal/iTchRunnerMainView.h +0 -189
  491. data/ext/snowcrash/test/vendor/Catch/projects/runners/iTchRunner/internal/iTchRunnerReporter.h +0 -115
  492. data/ext/snowcrash/test/vendor/Catch/projects/runners/iTchRunner/itChRunnerMain.mm +0 -27
  493. data/ext/snowcrash/test/vendor/Catch/projects/runners/iTchRunner/readme +0 -6
  494. data/ext/snowcrash/test/vendor/Catch/scripts/approvalTests.py +0 -63
  495. data/ext/snowcrash/test/vendor/Catch/scripts/approve.py +0 -14
  496. data/ext/snowcrash/test/vendor/Catch/scripts/generateSingleHeader.py +0 -117
  497. data/ext/snowcrash/test/vendor/Catch/scripts/scriptCommon.py +0 -4
  498. data/ext/snowcrash/test/vendor/Catch/single_include/catch.hpp +0 -8046
  499. data/ext/snowcrash/tools/README.md +0 -27
  500. data/ext/snowcrash/tools/gyp/LICENSE +0 -27
  501. data/ext/snowcrash/tools/gyp/gyptest.py +0 -274
  502. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSSettings_test.py +0 -1483
  503. data/ext/snowcrash/tools/gyp/pylib/gyp/common_test.py +0 -72
  504. data/ext/snowcrash/tools/gyp/pylib/gyp/easy_xml_test.py +0 -103
  505. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/msvs_test.py +0 -37
  506. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/ninja_test.py +0 -44
  507. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/xcode_test.py +0 -23
  508. data/ext/snowcrash/tools/gyp/pylib/gyp/input_test.py +0 -90
  509. data/ext/snowcrash/tools/gyp/tools/README +0 -15
  510. data/ext/snowcrash/tools/gyp/tools/Xcode/README +0 -5
  511. data/ext/snowcrash/tools/gyp/tools/emacs/README +0 -12
  512. data/ext/snowcrash/tools/gyp/tools/emacs/gyp-tests.el +0 -63
  513. data/ext/snowcrash/tools/gyp/tools/emacs/run-unit-tests.sh +0 -7
  514. data/ext/snowcrash/tools/gyp/tools/emacs/testdata/media.gyp +0 -1105
  515. data/ext/snowcrash/tools/gyp/tools/emacs/testdata/media.gyp.fontified +0 -1107
  516. data/pkg/redsnow-0.1.3.gem +0 -0
  517. data/pkg/redsnow-0.1.4.gem +0 -0
  518. data/pkg/redsnow-0.1.5.gem +0 -0
  519. data/pkg/redsnow-0.1.6.gem +0 -0
  520. data/pkg/redsnow-0.2.0.gem +0 -0
  521. data/pkg/redsnow-0.2.1.gem +0 -0
  522. data/pkg/redsnow-0.3.1.gem +0 -0
  523. data/test/_helper.rb +0 -15
  524. data/test/fixtures/sample-api-ast.json +0 -97
  525. data/test/fixtures/sample-api-sourcemap.json +0 -169
  526. data/test/fixtures/sample-api.apib +0 -20
  527. data/test/redsnow_binding_test.rb +0 -52
  528. data/test/redsnow_options_test.rb +0 -42
  529. data/test/redsnow_parseresult_test.rb +0 -54
  530. data/test/redsnow_test.rb +0 -323
@@ -1,15 +0,0 @@
1
- /*
2
- * Created by Phil on 01/11/2010.
3
- * Copyright 2010 Two Blue Cubes Ltd. All rights reserved.
4
- *
5
- * Distributed under the Boost Software License, Version 1.0. (See accompanying
6
- * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7
- */
8
- #ifndef TWOBLUECUBES_CATCH_WITH_MAIN_HPP_INCLUDED
9
- #define TWOBLUECUBES_CATCH_WITH_MAIN_HPP_INCLUDED
10
-
11
- #include "catch_runner.hpp"
12
- #include "catch.hpp"
13
- #include "internal/catch_default_main.hpp"
14
-
15
- #endif // TWOBLUECUBES_CATCH_WITH_MAIN_HPP_INCLUDED
@@ -1,868 +0,0 @@
1
- /*
2
- * Created by Phil on 25/05/2013.
3
- * Copyright 2013 Two Blue Cubes Ltd. All rights reserved.
4
- *
5
- * Distributed under the Boost Software License, Version 1.0. (See accompanying
6
- * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7
- */
8
-
9
- // Only use header guard if we are not using an outer namespace
10
- #if !defined(TWOBLUECUBES_CLARA_H_INCLUDED) || defined(STITCH_CLARA_OPEN_NAMESPACE)
11
-
12
- #ifndef STITCH_CLARA_OPEN_NAMESPACE
13
- #define TWOBLUECUBES_CLARA_H_INCLUDED
14
- #define STITCH_CLARA_OPEN_NAMESPACE
15
- #define STITCH_CLARA_CLOSE_NAMESPACE
16
- #else
17
- #define STITCH_CLARA_CLOSE_NAMESPACE }
18
- #endif
19
-
20
-
21
- #define STITCH_TBC_TEXT_FORMAT_OPEN_NAMESPACE STITCH_CLARA_OPEN_NAMESPACE
22
-
23
- // ----------- #included from tbc_text_format.h -----------
24
-
25
- /*
26
- * Created by Phil on 18/4/2013.
27
- * Copyright 2013 Two Blue Cubes Ltd. All rights reserved.
28
- *
29
- * Distributed under the Boost Software License, Version 1.0. (See accompanying
30
- * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
31
- */
32
- // Only use header guard if we are not using an outer namespace
33
- #if !defined(TBC_TEXT_FORMAT_H_INCLUDED) || defined(STITCH_TBC_TEXT_FORMAT_OUTER_NAMESPACE)
34
- #ifndef STITCH_TBC_TEXT_FORMAT_OUTER_NAMESPACE
35
- #define TBC_TEXT_FORMAT_H_INCLUDED
36
- #endif
37
-
38
- #include <string>
39
- #include <vector>
40
- #include <sstream>
41
-
42
- // Use optional outer namespace
43
- #ifdef STITCH_TBC_TEXT_FORMAT_OUTER_NAMESPACE
44
- namespace STITCH_TBC_TEXT_FORMAT_OUTER_NAMESPACE {
45
- #endif
46
-
47
- namespace Tbc {
48
-
49
- #ifdef TBC_TEXT_FORMAT_CONSOLE_WIDTH
50
- const unsigned int consoleWidth = TBC_TEXT_FORMAT_CONSOLE_WIDTH;
51
- #else
52
- const unsigned int consoleWidth = 80;
53
- #endif
54
-
55
- struct TextAttributes {
56
- TextAttributes()
57
- : initialIndent( std::string::npos ),
58
- indent( 0 ),
59
- width( consoleWidth-1 ),
60
- tabChar( '\t' )
61
- {}
62
-
63
- TextAttributes& setInitialIndent( std::size_t _value ) { initialIndent = _value; return *this; }
64
- TextAttributes& setIndent( std::size_t _value ) { indent = _value; return *this; }
65
- TextAttributes& setWidth( std::size_t _value ) { width = _value; return *this; }
66
- TextAttributes& setTabChar( char _value ) { tabChar = _value; return *this; }
67
-
68
- std::size_t initialIndent; // indent of first line, or npos
69
- std::size_t indent; // indent of subsequent lines, or all if initialIndent is npos
70
- std::size_t width; // maximum width of text, including indent. Longer text will wrap
71
- char tabChar; // If this char is seen the indent is changed to current pos
72
- };
73
-
74
- class Text {
75
- public:
76
- Text( std::string const& _str, TextAttributes const& _attr = TextAttributes() )
77
- : attr( _attr )
78
- {
79
- std::string wrappableChars = " [({.,/|\\-";
80
- std::size_t indent = _attr.initialIndent != std::string::npos
81
- ? _attr.initialIndent
82
- : _attr.indent;
83
- std::string remainder = _str;
84
-
85
- while( !remainder.empty() ) {
86
- if( lines.size() >= 1000 ) {
87
- lines.push_back( "... message truncated due to excessive size" );
88
- return;
89
- }
90
- std::size_t tabPos = std::string::npos;
91
- std::size_t width = (std::min)( remainder.size(), _attr.width - indent );
92
- std::size_t pos = remainder.find_first_of( '\n' );
93
- if( pos <= width ) {
94
- width = pos;
95
- }
96
- pos = remainder.find_last_of( _attr.tabChar, width );
97
- if( pos != std::string::npos ) {
98
- tabPos = pos;
99
- if( remainder[width] == '\n' )
100
- width--;
101
- remainder = remainder.substr( 0, tabPos ) + remainder.substr( tabPos+1 );
102
- }
103
-
104
- if( width == remainder.size() ) {
105
- spliceLine( indent, remainder, width );
106
- }
107
- else if( remainder[width] == '\n' ) {
108
- spliceLine( indent, remainder, width );
109
- if( width <= 1 || remainder.size() != 1 )
110
- remainder = remainder.substr( 1 );
111
- indent = _attr.indent;
112
- }
113
- else {
114
- pos = remainder.find_last_of( wrappableChars, width );
115
- if( pos != std::string::npos && pos > 0 ) {
116
- spliceLine( indent, remainder, pos );
117
- if( remainder[0] == ' ' )
118
- remainder = remainder.substr( 1 );
119
- }
120
- else {
121
- spliceLine( indent, remainder, width-1 );
122
- lines.back() += "-";
123
- }
124
- if( lines.size() == 1 )
125
- indent = _attr.indent;
126
- if( tabPos != std::string::npos )
127
- indent += tabPos;
128
- }
129
- }
130
- }
131
-
132
- void spliceLine( std::size_t _indent, std::string& _remainder, std::size_t _pos ) {
133
- lines.push_back( std::string( _indent, ' ' ) + _remainder.substr( 0, _pos ) );
134
- _remainder = _remainder.substr( _pos );
135
- }
136
-
137
- typedef std::vector<std::string>::const_iterator const_iterator;
138
-
139
- const_iterator begin() const { return lines.begin(); }
140
- const_iterator end() const { return lines.end(); }
141
- std::string const& last() const { return lines.back(); }
142
- std::size_t size() const { return lines.size(); }
143
- std::string const& operator[]( std::size_t _index ) const { return lines[_index]; }
144
- std::string toString() const {
145
- std::ostringstream oss;
146
- oss << *this;
147
- return oss.str();
148
- }
149
-
150
- inline friend std::ostream& operator << ( std::ostream& _stream, Text const& _text ) {
151
- for( Text::const_iterator it = _text.begin(), itEnd = _text.end();
152
- it != itEnd; ++it ) {
153
- if( it != _text.begin() )
154
- _stream << "\n";
155
- _stream << *it;
156
- }
157
- return _stream;
158
- }
159
-
160
- private:
161
- std::string str;
162
- TextAttributes attr;
163
- std::vector<std::string> lines;
164
- };
165
-
166
- } // end namespace Tbc
167
-
168
- #ifdef STITCH_TBC_TEXT_FORMAT_OUTER_NAMESPACE
169
- } // end outer namespace
170
- #endif
171
-
172
- #endif // TBC_TEXT_FORMAT_H_INCLUDED
173
-
174
- // ----------- end of #include from tbc_text_format.h -----------
175
- // ........... back in /Users/philnash/Dev/OSS/Clara/srcs/clara.h
176
-
177
- #undef STITCH_TBC_TEXT_FORMAT_OPEN_NAMESPACE
178
-
179
-
180
- #include <map>
181
- #include <algorithm>
182
- #include <stdexcept>
183
- #include <memory>
184
-
185
- // Use optional outer namespace
186
- #ifdef STITCH_CLARA_OPEN_NAMESPACE
187
- STITCH_CLARA_OPEN_NAMESPACE
188
- #endif
189
-
190
- namespace Clara {
191
-
192
- struct UnpositionalTag {};
193
-
194
- extern UnpositionalTag _;
195
-
196
- #ifdef CLARA_CONFIG_MAIN
197
- UnpositionalTag _;
198
- #endif
199
-
200
- namespace Detail {
201
-
202
- #ifdef CLARA_CONSOLE_WIDTH
203
- const unsigned int consoleWidth = CLARA_CONFIG_CONSOLE_WIDTH;
204
- #else
205
- const unsigned int consoleWidth = 80;
206
- #endif
207
-
208
- using namespace Tbc;
209
-
210
- inline bool startsWith( std::string const& str, std::string const& prefix ) {
211
- return str.size() >= prefix.size() && str.substr( 0, prefix.size() ) == prefix;
212
- }
213
-
214
- template<typename T> struct RemoveConstRef{ typedef T type; };
215
- template<typename T> struct RemoveConstRef<T&>{ typedef T type; };
216
- template<typename T> struct RemoveConstRef<T const&>{ typedef T type; };
217
- template<typename T> struct RemoveConstRef<T const>{ typedef T type; };
218
-
219
- template<typename T> struct IsBool { static const bool value = false; };
220
- template<> struct IsBool<bool> { static const bool value = true; };
221
-
222
- template<typename T>
223
- void convertInto( std::string const& _source, T& _dest ) {
224
- std::stringstream ss;
225
- ss << _source;
226
- ss >> _dest;
227
- if( ss.fail() )
228
- throw std::runtime_error( "Unable to convert " + _source + " to destination type" );
229
- }
230
- inline void convertInto( std::string const& _source, std::string& _dest ) {
231
- _dest = _source;
232
- }
233
- inline void convertInto( std::string const& _source, bool& _dest ) {
234
- std::string sourceLC = _source;
235
- std::transform( sourceLC.begin(), sourceLC.end(), sourceLC.begin(), ::tolower );
236
- if( sourceLC == "y" || sourceLC == "1" || sourceLC == "true" || sourceLC == "yes" || sourceLC == "on" )
237
- _dest = true;
238
- else if( sourceLC == "n" || sourceLC == "0" || sourceLC == "false" || sourceLC == "no" || sourceLC == "off" )
239
- _dest = false;
240
- else
241
- throw std::runtime_error( "Expected a boolean value but did not recognise:\n '" + _source + "'" );
242
- }
243
- inline void convertInto( bool _source, bool& _dest ) {
244
- _dest = _source;
245
- }
246
- template<typename T>
247
- inline void convertInto( bool, T& ) {
248
- throw std::runtime_error( "Invalid conversion" );
249
- }
250
-
251
- template<typename ConfigT>
252
- struct IArgFunction {
253
- virtual ~IArgFunction() {}
254
- # ifdef CATCH_CPP11_OR_GREATER
255
- IArgFunction() = default;
256
- IArgFunction( IArgFunction const& ) = default;
257
- # endif
258
- virtual void set( ConfigT& config, std::string const& value ) const = 0;
259
- virtual void setFlag( ConfigT& config ) const = 0;
260
- virtual bool takesArg() const = 0;
261
- virtual IArgFunction* clone() const = 0;
262
- };
263
-
264
- template<typename ConfigT>
265
- class BoundArgFunction {
266
- public:
267
- BoundArgFunction() : functionObj( NULL ) {}
268
- BoundArgFunction( IArgFunction<ConfigT>* _functionObj ) : functionObj( _functionObj ) {}
269
- BoundArgFunction( BoundArgFunction const& other ) : functionObj( other.functionObj ? other.functionObj->clone() : NULL ) {}
270
- BoundArgFunction& operator = ( BoundArgFunction const& other ) {
271
- IArgFunction<ConfigT>* newFunctionObj = other.functionObj ? other.functionObj->clone() : NULL;
272
- delete functionObj;
273
- functionObj = newFunctionObj;
274
- return *this;
275
- }
276
- ~BoundArgFunction() { delete functionObj; }
277
-
278
- void set( ConfigT& config, std::string const& value ) const {
279
- functionObj->set( config, value );
280
- }
281
- void setFlag( ConfigT& config ) const {
282
- functionObj->setFlag( config );
283
- }
284
- bool takesArg() const { return functionObj->takesArg(); }
285
-
286
- bool isSet() const {
287
- return functionObj != NULL;
288
- }
289
- private:
290
- IArgFunction<ConfigT>* functionObj;
291
- };
292
-
293
-
294
- template<typename C>
295
- struct NullBinder : IArgFunction<C>{
296
- virtual void set( C&, std::string const& ) const {}
297
- virtual void setFlag( C& ) const {}
298
- virtual bool takesArg() const { return true; }
299
- virtual IArgFunction<C>* clone() const { return new NullBinder( *this ); }
300
- };
301
-
302
- template<typename C, typename M>
303
- struct BoundDataMember : IArgFunction<C>{
304
- BoundDataMember( M C::* _member ) : member( _member ) {}
305
- virtual void set( C& p, std::string const& stringValue ) const {
306
- convertInto( stringValue, p.*member );
307
- }
308
- virtual void setFlag( C& p ) const {
309
- convertInto( true, p.*member );
310
- }
311
- virtual bool takesArg() const { return !IsBool<M>::value; }
312
- virtual IArgFunction<C>* clone() const { return new BoundDataMember( *this ); }
313
- M C::* member;
314
- };
315
- template<typename C, typename M>
316
- struct BoundUnaryMethod : IArgFunction<C>{
317
- BoundUnaryMethod( void (C::*_member)( M ) ) : member( _member ) {}
318
- virtual void set( C& p, std::string const& stringValue ) const {
319
- typename RemoveConstRef<M>::type value;
320
- convertInto( stringValue, value );
321
- (p.*member)( value );
322
- }
323
- virtual void setFlag( C& p ) const {
324
- typename RemoveConstRef<M>::type value;
325
- convertInto( true, value );
326
- (p.*member)( value );
327
- }
328
- virtual bool takesArg() const { return !IsBool<M>::value; }
329
- virtual IArgFunction<C>* clone() const { return new BoundUnaryMethod( *this ); }
330
- void (C::*member)( M );
331
- };
332
- template<typename C>
333
- struct BoundNullaryMethod : IArgFunction<C>{
334
- BoundNullaryMethod( void (C::*_member)() ) : member( _member ) {}
335
- virtual void set( C& p, std::string const& stringValue ) const {
336
- bool value;
337
- convertInto( stringValue, value );
338
- if( value )
339
- (p.*member)();
340
- }
341
- virtual void setFlag( C& p ) const {
342
- (p.*member)();
343
- }
344
- virtual bool takesArg() const { return false; }
345
- virtual IArgFunction<C>* clone() const { return new BoundNullaryMethod( *this ); }
346
- void (C::*member)();
347
- };
348
-
349
- template<typename C>
350
- struct BoundUnaryFunction : IArgFunction<C>{
351
- BoundUnaryFunction( void (*_function)( C& ) ) : function( _function ) {}
352
- virtual void set( C& obj, std::string const& stringValue ) const {
353
- bool value;
354
- convertInto( stringValue, value );
355
- if( value )
356
- function( obj );
357
- }
358
- virtual void setFlag( C& p ) const {
359
- function( p );
360
- }
361
- virtual bool takesArg() const { return false; }
362
- virtual IArgFunction<C>* clone() const { return new BoundUnaryFunction( *this ); }
363
- void (*function)( C& );
364
- };
365
-
366
- template<typename C, typename T>
367
- struct BoundBinaryFunction : IArgFunction<C>{
368
- BoundBinaryFunction( void (*_function)( C&, T ) ) : function( _function ) {}
369
- virtual void set( C& obj, std::string const& stringValue ) const {
370
- typename RemoveConstRef<T>::type value;
371
- convertInto( stringValue, value );
372
- function( obj, value );
373
- }
374
- virtual void setFlag( C& obj ) const {
375
- typename RemoveConstRef<T>::type value;
376
- convertInto( true, value );
377
- function( obj, value );
378
- }
379
- virtual bool takesArg() const { return !IsBool<T>::value; }
380
- virtual IArgFunction<C>* clone() const { return new BoundBinaryFunction( *this ); }
381
- void (*function)( C&, T );
382
- };
383
-
384
- } // namespace Detail
385
-
386
- struct Parser {
387
- Parser() : separators( " \t=:" ) {}
388
-
389
- struct Token {
390
- enum Type { Positional, ShortOpt, LongOpt };
391
- Token( Type _type, std::string const& _data ) : type( _type ), data( _data ) {}
392
- Type type;
393
- std::string data;
394
- };
395
-
396
- void parseIntoTokens( int argc, char const * const * argv, std::vector<Parser::Token>& tokens ) const {
397
- const std::string doubleDash = "--";
398
- for( int i = 1; i < argc && argv[i] != doubleDash; ++i )
399
- parseIntoTokens( argv[i] , tokens);
400
- }
401
- void parseIntoTokens( std::string arg, std::vector<Parser::Token>& tokens ) const {
402
- while( !arg.empty() ) {
403
- Parser::Token token( Parser::Token::Positional, arg );
404
- arg = "";
405
- if( token.data[0] == '-' ) {
406
- if( token.data.size() > 1 && token.data[1] == '-' ) {
407
- token = Parser::Token( Parser::Token::LongOpt, token.data.substr( 2 ) );
408
- }
409
- else {
410
- token = Parser::Token( Parser::Token::ShortOpt, token.data.substr( 1 ) );
411
- if( token.data.size() > 1 && separators.find( token.data[1] ) == std::string::npos ) {
412
- arg = "-" + token.data.substr( 1 );
413
- token.data = token.data.substr( 0, 1 );
414
- }
415
- }
416
- }
417
- if( token.type != Parser::Token::Positional ) {
418
- std::size_t pos = token.data.find_first_of( separators );
419
- if( pos != std::string::npos ) {
420
- arg = token.data.substr( pos+1 );
421
- token.data = token.data.substr( 0, pos );
422
- }
423
- }
424
- tokens.push_back( token );
425
- }
426
- }
427
- std::string separators;
428
- };
429
-
430
- template<typename ConfigT>
431
- struct CommonArgProperties {
432
- CommonArgProperties() {}
433
- CommonArgProperties( Detail::BoundArgFunction<ConfigT> const& _boundField ) : boundField( _boundField ) {}
434
-
435
- Detail::BoundArgFunction<ConfigT> boundField;
436
- std::string description;
437
- std::string detail;
438
- std::string placeholder; // Only value if boundField takes an arg
439
-
440
- bool takesArg() const {
441
- return !placeholder.empty();
442
- }
443
- void validate() const {
444
- if( !boundField.isSet() )
445
- throw std::logic_error( "option not bound" );
446
- }
447
- };
448
- struct OptionArgProperties {
449
- std::vector<std::string> shortNames;
450
- std::string longName;
451
-
452
- bool hasShortName( std::string const& shortName ) const {
453
- return std::find( shortNames.begin(), shortNames.end(), shortName ) != shortNames.end();
454
- }
455
- bool hasLongName( std::string const& _longName ) const {
456
- return _longName == longName;
457
- }
458
- };
459
- struct PositionalArgProperties {
460
- PositionalArgProperties() : position( -1 ) {}
461
- int position; // -1 means non-positional (floating)
462
-
463
- bool isFixedPositional() const {
464
- return position != -1;
465
- }
466
- };
467
-
468
- template<typename ConfigT>
469
- class CommandLine {
470
-
471
- struct Arg : CommonArgProperties<ConfigT>, OptionArgProperties, PositionalArgProperties {
472
- Arg() {}
473
- Arg( Detail::BoundArgFunction<ConfigT> const& _boundField ) : CommonArgProperties<ConfigT>( _boundField ) {}
474
-
475
- using CommonArgProperties<ConfigT>::placeholder; // !TBD
476
-
477
- std::string dbgName() const {
478
- if( !longName.empty() )
479
- return "--" + longName;
480
- if( !shortNames.empty() )
481
- return "-" + shortNames[0];
482
- return "positional args";
483
- }
484
- std::string commands() const {
485
- std::ostringstream oss;
486
- bool first = true;
487
- std::vector<std::string>::const_iterator it = shortNames.begin(), itEnd = shortNames.end();
488
- for(; it != itEnd; ++it ) {
489
- if( first )
490
- first = false;
491
- else
492
- oss << ", ";
493
- oss << "-" << *it;
494
- }
495
- if( !longName.empty() ) {
496
- if( !first )
497
- oss << ", ";
498
- oss << "--" << longName;
499
- }
500
- if( !placeholder.empty() )
501
- oss << " <" << placeholder << ">";
502
- return oss.str();
503
- }
504
- };
505
-
506
- // NOTE: std::auto_ptr is deprecated in c++11/c++0x
507
- #if defined(__cplusplus) && __cplusplus > 199711L
508
- typedef std::unique_ptr<Arg> ArgAutoPtr;
509
- #else
510
- typedef std::auto_ptr<Arg> ArgAutoPtr;
511
- #endif
512
-
513
- friend void addOptName( Arg& arg, std::string const& optName )
514
- {
515
- if( optName.empty() )
516
- return;
517
- if( Detail::startsWith( optName, "--" ) ) {
518
- if( !arg.longName.empty() )
519
- throw std::logic_error( "Only one long opt may be specified. '"
520
- + arg.longName
521
- + "' already specified, now attempting to add '"
522
- + optName + "'" );
523
- arg.longName = optName.substr( 2 );
524
- }
525
- else if( Detail::startsWith( optName, "-" ) )
526
- arg.shortNames.push_back( optName.substr( 1 ) );
527
- else
528
- throw std::logic_error( "option must begin with - or --. Option was: '" + optName + "'" );
529
- }
530
- friend void setPositionalArg( Arg& arg, int position )
531
- {
532
- arg.position = position;
533
- }
534
-
535
-
536
- class ArgBuilder {
537
- public:
538
- ArgBuilder( Arg* arg ) : m_arg( arg ) {}
539
-
540
- // Bind a non-boolean data member (requires placeholder string)
541
- template<typename C, typename M>
542
- void bind( M C::* field, std::string const& placeholder ) {
543
- m_arg->boundField = new Detail::BoundDataMember<C,M>( field );
544
- m_arg->placeholder = placeholder;
545
- }
546
- // Bind a boolean data member (no placeholder required)
547
- template<typename C>
548
- void bind( bool C::* field ) {
549
- m_arg->boundField = new Detail::BoundDataMember<C,bool>( field );
550
- }
551
-
552
- // Bind a method taking a single, non-boolean argument (requires a placeholder string)
553
- template<typename C, typename M>
554
- void bind( void (C::* unaryMethod)( M ), std::string const& placeholder ) {
555
- m_arg->boundField = new Detail::BoundUnaryMethod<C,M>( unaryMethod );
556
- m_arg->placeholder = placeholder;
557
- }
558
-
559
- // Bind a method taking a single, boolean argument (no placeholder string required)
560
- template<typename C>
561
- void bind( void (C::* unaryMethod)( bool ) ) {
562
- m_arg->boundField = new Detail::BoundUnaryMethod<C,bool>( unaryMethod );
563
- }
564
-
565
- // Bind a method that takes no arguments (will be called if opt is present)
566
- template<typename C>
567
- void bind( void (C::* nullaryMethod)() ) {
568
- m_arg->boundField = new Detail::BoundNullaryMethod<C>( nullaryMethod );
569
- }
570
-
571
- // Bind a free function taking a single argument - the object to operate on (no placeholder string required)
572
- template<typename C>
573
- void bind( void (* unaryFunction)( C& ) ) {
574
- m_arg->boundField = new Detail::BoundUnaryFunction<C>( unaryFunction );
575
- }
576
-
577
- // Bind a free function taking a single argument - the object to operate on (requires a placeholder string)
578
- template<typename C, typename T>
579
- void bind( void (* binaryFunction)( C&, T ), std::string const& placeholder ) {
580
- m_arg->boundField = new Detail::BoundBinaryFunction<C, T>( binaryFunction );
581
- m_arg->placeholder = placeholder;
582
- }
583
-
584
- ArgBuilder& describe( std::string const& description ) {
585
- m_arg->description = description;
586
- return *this;
587
- }
588
- ArgBuilder& detail( std::string const& detail ) {
589
- m_arg->detail = detail;
590
- return *this;
591
- }
592
-
593
- protected:
594
- Arg* m_arg;
595
- };
596
-
597
- class OptBuilder : public ArgBuilder {
598
- public:
599
- OptBuilder( Arg* arg ) : ArgBuilder( arg ) {}
600
- OptBuilder( OptBuilder& other ) : ArgBuilder( other ) {}
601
-
602
- OptBuilder& operator[]( std::string const& optName ) {
603
- addOptName( *ArgBuilder::m_arg, optName );
604
- return *this;
605
- }
606
- };
607
-
608
- public:
609
-
610
- CommandLine()
611
- : m_boundProcessName( new Detail::NullBinder<ConfigT>() ),
612
- m_highestSpecifiedArgPosition( 0 ),
613
- m_throwOnUnrecognisedTokens( false )
614
- {}
615
- CommandLine( CommandLine const& other )
616
- : m_boundProcessName( other.m_boundProcessName ),
617
- m_options ( other.m_options ),
618
- m_positionalArgs( other.m_positionalArgs ),
619
- m_highestSpecifiedArgPosition( other.m_highestSpecifiedArgPosition ),
620
- m_throwOnUnrecognisedTokens( other.m_throwOnUnrecognisedTokens )
621
- {
622
- if( other.m_floatingArg.get() )
623
- m_floatingArg = ArgAutoPtr( new Arg( *other.m_floatingArg ) );
624
- }
625
-
626
- CommandLine& setThrowOnUnrecognisedTokens( bool shouldThrow = true ) {
627
- m_throwOnUnrecognisedTokens = shouldThrow;
628
- return *this;
629
- }
630
-
631
-
632
- OptBuilder operator[]( std::string const& optName ) {
633
- m_options.push_back( Arg() );
634
- addOptName( m_options.back(), optName );
635
- OptBuilder builder( &m_options.back() );
636
- return builder;
637
- }
638
-
639
- ArgBuilder operator[]( int position ) {
640
- m_positionalArgs.insert( std::make_pair( position, Arg() ) );
641
- if( position > m_highestSpecifiedArgPosition )
642
- m_highestSpecifiedArgPosition = position;
643
- setPositionalArg( m_positionalArgs[position], position );
644
- ArgBuilder builder( &m_positionalArgs[position] );
645
- return builder;
646
- }
647
-
648
- // Invoke this with the _ instance
649
- ArgBuilder operator[]( UnpositionalTag ) {
650
- if( m_floatingArg.get() )
651
- throw std::logic_error( "Only one unpositional argument can be added" );
652
- m_floatingArg = ArgAutoPtr( new Arg() );
653
- ArgBuilder builder( m_floatingArg.get() );
654
- return builder;
655
- }
656
-
657
- template<typename C, typename M>
658
- void bindProcessName( M C::* field ) {
659
- m_boundProcessName = new Detail::BoundDataMember<C,M>( field );
660
- }
661
- template<typename C, typename M>
662
- void bindProcessName( void (C::*_unaryMethod)( M ) ) {
663
- m_boundProcessName = new Detail::BoundUnaryMethod<C,M>( _unaryMethod );
664
- }
665
-
666
- void optUsage( std::ostream& os, std::size_t indent = 0, std::size_t width = Detail::consoleWidth ) const {
667
- typename std::vector<Arg>::const_iterator itBegin = m_options.begin(), itEnd = m_options.end(), it;
668
- std::size_t maxWidth = 0;
669
- for( it = itBegin; it != itEnd; ++it )
670
- maxWidth = (std::max)( maxWidth, it->commands().size() );
671
-
672
- for( it = itBegin; it != itEnd; ++it ) {
673
- Detail::Text usage( it->commands(), Detail::TextAttributes()
674
- .setWidth( maxWidth+indent )
675
- .setIndent( indent ) );
676
- Detail::Text desc( it->description, Detail::TextAttributes()
677
- .setWidth( width - maxWidth - 3 ) );
678
-
679
- for( std::size_t i = 0; i < (std::max)( usage.size(), desc.size() ); ++i ) {
680
- std::string usageCol = i < usage.size() ? usage[i] : "";
681
- os << usageCol;
682
-
683
- if( i < desc.size() && !desc[i].empty() )
684
- os << std::string( indent + 2 + maxWidth - usageCol.size(), ' ' )
685
- << desc[i];
686
- os << "\n";
687
- }
688
- }
689
- }
690
- std::string optUsage() const {
691
- std::ostringstream oss;
692
- optUsage( oss );
693
- return oss.str();
694
- }
695
-
696
- void argSynopsis( std::ostream& os ) const {
697
- for( int i = 1; i <= m_highestSpecifiedArgPosition; ++i ) {
698
- if( i > 1 )
699
- os << " ";
700
- typename std::map<int, Arg>::const_iterator it = m_positionalArgs.find( i );
701
- if( it != m_positionalArgs.end() )
702
- os << "<" << it->second.placeholder << ">";
703
- else if( m_floatingArg.get() )
704
- os << "<" << m_floatingArg->placeholder << ">";
705
- else
706
- throw std::logic_error( "non consecutive positional arguments with no floating args" );
707
- }
708
- // !TBD No indication of mandatory args
709
- if( m_floatingArg.get() ) {
710
- if( m_highestSpecifiedArgPosition > 1 )
711
- os << " ";
712
- os << "[<" << m_floatingArg->placeholder << "> ...]";
713
- }
714
- }
715
- std::string argSynopsis() const {
716
- std::ostringstream oss;
717
- argSynopsis( oss );
718
- return oss.str();
719
- }
720
-
721
- void usage( std::ostream& os, std::string const& procName ) const {
722
- validate();
723
- os << "usage:\n " << procName << " ";
724
- argSynopsis( os );
725
- if( !m_options.empty() ) {
726
- os << " [options]\n\nwhere options are: \n";
727
- optUsage( os, 2 );
728
- }
729
- os << "\n";
730
- }
731
- std::string usage( std::string const& procName ) const {
732
- std::ostringstream oss;
733
- usage( oss, procName );
734
- return oss.str();
735
- }
736
-
737
- ConfigT parse( int argc, char const * const * argv ) const {
738
- ConfigT config;
739
- parseInto( argc, argv, config );
740
- return config;
741
- }
742
-
743
- std::vector<Parser::Token> parseInto( int argc, char const * const * argv, ConfigT& config ) const {
744
- std::string processName = argv[0];
745
- std::size_t lastSlash = processName.find_last_of( "/\\" );
746
- if( lastSlash != std::string::npos )
747
- processName = processName.substr( lastSlash+1 );
748
- m_boundProcessName.set( config, processName );
749
- std::vector<Parser::Token> tokens;
750
- Parser parser;
751
- parser.parseIntoTokens( argc, argv, tokens );
752
- return populate( tokens, config );
753
- }
754
-
755
- std::vector<Parser::Token> populate( std::vector<Parser::Token> const& tokens, ConfigT& config ) const {
756
- validate();
757
- std::vector<Parser::Token> unusedTokens = populateOptions( tokens, config );
758
- unusedTokens = populateFixedArgs( unusedTokens, config );
759
- unusedTokens = populateFloatingArgs( unusedTokens, config );
760
- return unusedTokens;
761
- }
762
-
763
- std::vector<Parser::Token> populateOptions( std::vector<Parser::Token> const& tokens, ConfigT& config ) const {
764
- std::vector<Parser::Token> unusedTokens;
765
- std::vector<std::string> errors;
766
- for( std::size_t i = 0; i < tokens.size(); ++i ) {
767
- Parser::Token const& token = tokens[i];
768
- typename std::vector<Arg>::const_iterator it = m_options.begin(), itEnd = m_options.end();
769
- for(; it != itEnd; ++it ) {
770
- Arg const& arg = *it;
771
-
772
- try {
773
- if( ( token.type == Parser::Token::ShortOpt && arg.hasShortName( token.data ) ) ||
774
- ( token.type == Parser::Token::LongOpt && arg.hasLongName( token.data ) ) ) {
775
- if( arg.takesArg() ) {
776
- if( i == tokens.size()-1 || tokens[i+1].type != Parser::Token::Positional )
777
- errors.push_back( "Expected argument to option: " + token.data );
778
- else
779
- arg.boundField.set( config, tokens[++i].data );
780
- }
781
- else {
782
- arg.boundField.setFlag( config );
783
- }
784
- break;
785
- }
786
- }
787
- catch( std::exception& ex ) {
788
- errors.push_back( std::string( ex.what() ) + "\n- while parsing: (" + arg.commands() + ")" );
789
- }
790
- }
791
- if( it == itEnd ) {
792
- if( token.type == Parser::Token::Positional || !m_throwOnUnrecognisedTokens )
793
- unusedTokens.push_back( token );
794
- else if( m_throwOnUnrecognisedTokens )
795
- errors.push_back( "unrecognised option: " + token.data );
796
- }
797
- }
798
- if( !errors.empty() ) {
799
- std::ostringstream oss;
800
- for( std::vector<std::string>::const_iterator it = errors.begin(), itEnd = errors.end();
801
- it != itEnd;
802
- ++it ) {
803
- if( it != errors.begin() )
804
- oss << "\n";
805
- oss << *it;
806
- }
807
- throw std::runtime_error( oss.str() );
808
- }
809
- return unusedTokens;
810
- }
811
- std::vector<Parser::Token> populateFixedArgs( std::vector<Parser::Token> const& tokens, ConfigT& config ) const {
812
- std::vector<Parser::Token> unusedTokens;
813
- int position = 1;
814
- for( std::size_t i = 0; i < tokens.size(); ++i ) {
815
- Parser::Token const& token = tokens[i];
816
- typename std::map<int, Arg>::const_iterator it = m_positionalArgs.find( position );
817
- if( it != m_positionalArgs.end() )
818
- it->second.boundField.set( config, token.data );
819
- else
820
- unusedTokens.push_back( token );
821
- if( token.type == Parser::Token::Positional )
822
- position++;
823
- }
824
- return unusedTokens;
825
- }
826
- std::vector<Parser::Token> populateFloatingArgs( std::vector<Parser::Token> const& tokens, ConfigT& config ) const {
827
- if( !m_floatingArg.get() )
828
- return tokens;
829
- std::vector<Parser::Token> unusedTokens;
830
- for( std::size_t i = 0; i < tokens.size(); ++i ) {
831
- Parser::Token const& token = tokens[i];
832
- if( token.type == Parser::Token::Positional )
833
- m_floatingArg->boundField.set( config, token.data );
834
- else
835
- unusedTokens.push_back( token );
836
- }
837
- return unusedTokens;
838
- }
839
-
840
- void validate() const
841
- {
842
- if( m_options.empty() && m_positionalArgs.empty() && !m_floatingArg.get() )
843
- throw std::logic_error( "No options or arguments specified" );
844
-
845
- for( typename std::vector<Arg>::const_iterator it = m_options.begin(),
846
- itEnd = m_options.end();
847
- it != itEnd; ++it )
848
- it->validate();
849
- }
850
-
851
- private:
852
- Detail::BoundArgFunction<ConfigT> m_boundProcessName;
853
- std::vector<Arg> m_options;
854
- std::map<int, Arg> m_positionalArgs;
855
- ArgAutoPtr m_floatingArg;
856
- int m_highestSpecifiedArgPosition;
857
- bool m_throwOnUnrecognisedTokens;
858
- };
859
-
860
- } // end namespace Clara
861
-
862
-
863
- STITCH_CLARA_CLOSE_NAMESPACE
864
- #undef STITCH_CLARA_OPEN_NAMESPACE
865
- #undef STITCH_CLARA_CLOSE_NAMESPACE
866
-
867
-
868
- #endif // TWOBLUECUBES_CLARA_H_INCLUDED